summaryrefslogtreecommitdiff
path: root/mysql-test/r
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/r')
-rw-r--r--mysql-test/r/1st.result31
-rw-r--r--mysql-test/r/almost_full.result1
-rw-r--r--mysql-test/r/alter_table-big.result41
-rw-r--r--mysql-test/r/alter_table.result530
-rw-r--r--mysql-test/r/analyse.result60
-rw-r--r--mysql-test/r/ansi.result14
-rw-r--r--mysql-test/r/archive.result421
-rw-r--r--mysql-test/r/archive_bitfield.result (renamed from mysql-test/r/ndb_bitfield.result)83
-rw-r--r--mysql-test/r/archive_gis.result88
-rw-r--r--mysql-test/r/auto_increment.result48
-rw-r--r--mysql-test/r/backup.result51
-rw-r--r--mysql-test/r/bdb-alter-table-1.result11
-rw-r--r--mysql-test/r/bdb-alter-table-2.result6
-rw-r--r--mysql-test/r/bdb-crash.result39
-rw-r--r--mysql-test/r/bdb-deadlock.result31
-rw-r--r--mysql-test/r/bdb.result1931
-rw-r--r--mysql-test/r/bdb_cache.result99
-rw-r--r--mysql-test/r/bdb_gis.result583
-rw-r--r--mysql-test/r/bdb_notembedded.result41
-rw-r--r--mysql-test/r/bench_count_distinct.result4
-rw-r--r--mysql-test/r/bigint.result28
-rw-r--r--mysql-test/r/binary.result2
-rw-r--r--mysql-test/r/binlog.result656
-rw-r--r--mysql-test/r/binlog_index.result40
-rw-r--r--mysql-test/r/binlog_innodb.result39
-rw-r--r--mysql-test/r/binlog_killed.result56
-rw-r--r--mysql-test/r/binlog_killed_simulate.result33
-rw-r--r--mysql-test/r/binlog_start_comment.result15
-rw-r--r--mysql-test/r/binlog_tx_isolation.result48
-rw-r--r--mysql-test/r/blackhole.result157
-rw-r--r--mysql-test/r/bug46080.result2
-rw-r--r--mysql-test/r/bug46760.result43
-rw-r--r--mysql-test/r/cache_innodb.result (renamed from mysql-test/r/innodb_cache.result)113
-rw-r--r--mysql-test/r/case.result54
-rw-r--r--mysql-test/r/case_insensitive_file_system.require2
-rw-r--r--mysql-test/r/cast.result41
-rw-r--r--mysql-test/r/change_user.result48
-rw-r--r--mysql-test/r/client_xml.result3
-rw-r--r--mysql-test/r/comments.result12
-rw-r--r--mysql-test/r/commit_1innodb.result891
-rw-r--r--mysql-test/r/compare.result14
-rw-r--r--mysql-test/r/compress.result19
-rw-r--r--mysql-test/r/concurrent_innodb_safelog.result792
-rw-r--r--mysql-test/r/concurrent_innodb_unsafelog.result788
-rw-r--r--mysql-test/r/connect.result121
-rw-r--r--mysql-test/r/consistent_snapshot.result19
-rw-r--r--mysql-test/r/constraints.result2
-rw-r--r--mysql-test/r/contributors.result5
-rw-r--r--mysql-test/r/crash_commit_before.result14
-rw-r--r--mysql-test/r/create-big.result247
-rw-r--r--mysql-test/r/create.result627
-rw-r--r--mysql-test/r/create_not_windows.result23
-rw-r--r--mysql-test/r/create_select_tmp.result8
-rw-r--r--mysql-test/r/csv.result385
-rw-r--r--mysql-test/r/csv_alter_table.result40
-rw-r--r--mysql-test/r/csv_not_null.result54
-rw-r--r--mysql-test/r/ctype_big5.result8
-rw-r--r--mysql-test/r/ctype_collate.result12
-rw-r--r--mysql-test/r/ctype_cp1250_ch.result9
-rwxr-xr-xmysql-test/r/ctype_cp932.result11520
-rw-r--r--mysql-test/r/ctype_cp932_binlog_row.result19
-rw-r--r--mysql-test/r/ctype_cp932_binlog_stm.result (renamed from mysql-test/r/ctype_cp932_binlog.result)30
-rw-r--r--mysql-test/r/ctype_create.result16
-rw-r--r--mysql-test/r/ctype_euckr.result23983
-rw-r--r--mysql-test/r/ctype_filename.result13
-rw-r--r--mysql-test/r/ctype_gb2312.result4
-rw-r--r--mysql-test/r/ctype_gbk.result4
-rw-r--r--mysql-test/r/ctype_gbk_binlog.result27
-rw-r--r--mysql-test/r/ctype_latin1.result14
-rw-r--r--mysql-test/r/ctype_latin1_de.result41
-rw-r--r--mysql-test/r/ctype_ldml.result43
-rw-r--r--mysql-test/r/ctype_many.result18
-rw-r--r--mysql-test/r/ctype_mb.result16
-rw-r--r--mysql-test/r/ctype_recoding.result24
-rw-r--r--mysql-test/r/ctype_sjis.result12
-rw-r--r--mysql-test/r/ctype_tis620.result4
-rw-r--r--mysql-test/r/ctype_uca.result43
-rw-r--r--mysql-test/r/ctype_ucs.result70
-rw-r--r--mysql-test/r/ctype_ucs2_def.result2
-rw-r--r--mysql-test/r/ctype_ucs_binlog.result27
-rw-r--r--mysql-test/r/ctype_ujis.result8
-rw-r--r--mysql-test/r/ctype_ujis_ucs2.result19159
-rw-r--r--mysql-test/r/ctype_utf8.result165
-rw-r--r--mysql-test/r/date_formats.result118
-rw-r--r--mysql-test/r/ddl_i18n_koi8r.result2839
-rw-r--r--mysql-test/r/ddl_i18n_utf8.result2839
-rw-r--r--mysql-test/r/deadlock_innodb.result (renamed from mysql-test/r/innodb-deadlock.result)28
-rw-r--r--mysql-test/r/debug_sync.result277
-rw-r--r--mysql-test/r/default.result24
-rw-r--r--mysql-test/r/delayed.result63
-rw-r--r--mysql-test/r/delete.result82
-rw-r--r--mysql-test/r/derived.result28
-rw-r--r--mysql-test/r/disabled_partition.require2
-rw-r--r--mysql-test/r/distinct.result81
-rw-r--r--mysql-test/r/drop.result36
-rw-r--r--mysql-test/r/drop_temp_table.result22
-rw-r--r--mysql-test/r/endspace.result17
-rw-r--r--mysql-test/r/error_simulation.result3
-rw-r--r--mysql-test/r/events_1.result428
-rw-r--r--mysql-test/r/events_2.result408
-rw-r--r--mysql-test/r/events_bugs.result752
-rw-r--r--mysql-test/r/events_embedded.result2
-rw-r--r--mysql-test/r/events_grant.result121
-rw-r--r--mysql-test/r/events_logs_tests.result72
-rw-r--r--mysql-test/r/events_microsec.result13
-rw-r--r--mysql-test/r/events_restart.result64
-rw-r--r--mysql-test/r/events_scheduling.result86
-rw-r--r--mysql-test/r/events_stress.result66
-rw-r--r--mysql-test/r/events_time_zone.result152
-rw-r--r--mysql-test/r/events_trans.result118
-rw-r--r--mysql-test/r/events_trans_notembedded.result45
-rw-r--r--mysql-test/r/exampledb.result2
-rw-r--r--mysql-test/r/explain.result94
-rw-r--r--mysql-test/r/federated.result2123
-rw-r--r--mysql-test/r/federated_archive.result48
-rw-r--r--mysql-test/r/federated_bug_13118.result39
-rw-r--r--mysql-test/r/federated_bug_25714.result62
-rw-r--r--mysql-test/r/federated_debug.result37
-rw-r--r--mysql-test/r/federated_disabled.result0
-rw-r--r--mysql-test/r/federated_innodb.result34
-rw-r--r--mysql-test/r/flush.result16
-rw-r--r--mysql-test/r/flush2.result2
-rw-r--r--mysql-test/r/flush_block_commit_notembedded.result4
-rw-r--r--mysql-test/r/flush_table.result31
-rw-r--r--mysql-test/r/fulltext.result59
-rw-r--r--mysql-test/r/fulltext2.result8
-rw-r--r--mysql-test/r/fulltext3.result4
-rw-r--r--mysql-test/r/fulltext_plugin.result5
-rw-r--r--mysql-test/r/func_compress.result9
-rw-r--r--mysql-test/r/func_concat.result31
-rw-r--r--mysql-test/r/func_crypt.result6
-rw-r--r--mysql-test/r/func_default.result4
-rw-r--r--mysql-test/r/func_encrypt.result13
-rw-r--r--mysql-test/r/func_gconcat.result20
-rw-r--r--mysql-test/r/func_group.result125
-rw-r--r--mysql-test/r/func_group_innodb.result147
-rw-r--r--mysql-test/r/func_if.result10
-rw-r--r--mysql-test/r/func_in.result295
-rw-r--r--mysql-test/r/func_like.result16
-rw-r--r--mysql-test/r/func_math.result149
-rw-r--r--mysql-test/r/func_misc.result17
-rw-r--r--mysql-test/r/func_op.result8
-rw-r--r--mysql-test/r/func_regexp.result28
-rw-r--r--mysql-test/r/func_rollback.result461
-rw-r--r--mysql-test/r/func_sapdb.result6
-rw-r--r--mysql-test/r/func_set.result62
-rw-r--r--mysql-test/r/func_str.result484
-rw-r--r--mysql-test/r/func_system.result16
-rw-r--r--mysql-test/r/func_test.result24
-rw-r--r--mysql-test/r/func_time.result134
-rw-r--r--mysql-test/r/gis-rtree.result16
-rw-r--r--mysql-test/r/gis.result125
-rw-r--r--mysql-test/r/grant.result312
-rw-r--r--mysql-test/r/grant2.result20
-rw-r--r--mysql-test/r/grant_cache_no_prot.result219
-rw-r--r--mysql-test/r/grant_cache_ps_prot.result (renamed from mysql-test/r/grant_cache.result)25
-rw-r--r--mysql-test/r/greedy_optimizer.result252
-rw-r--r--mysql-test/r/group_by.result491
-rw-r--r--mysql-test/r/group_min_max.result117
-rw-r--r--mysql-test/r/group_min_max_innodb.result96
-rw-r--r--mysql-test/r/handler_innodb.result (renamed from mysql-test/r/handler.result)253
-rw-r--r--mysql-test/r/handler_myisam.result759
-rw-r--r--mysql-test/r/have_binlog_format_mixed.require (renamed from mysql-test/r/have_innodb.require)2
-rw-r--r--mysql-test/r/have_binlog_format_row.require (renamed from mysql-test/r/have_archive.require)2
-rw-r--r--mysql-test/r/have_binlog_format_statement.require2
-rw-r--r--mysql-test/r/have_blackhole.require2
-rw-r--r--mysql-test/r/have_bug25714.require2
-rw-r--r--mysql-test/r/have_cp1251.require2
-rw-r--r--mysql-test/r/have_cp866.require2
-rw-r--r--mysql-test/r/have_csv.require2
-rw-r--r--mysql-test/r/have_debug_sync.require2
-rw-r--r--mysql-test/r/have_dynamic_loading.require (renamed from mysql-test/r/have_udf.require)0
-rw-r--r--mysql-test/r/have_example_plugin.require2
-rw-r--r--mysql-test/r/have_exampledb.require2
-rw-r--r--mysql-test/r/have_federated_db.require2
-rw-r--r--mysql-test/r/have_koi8r.require2
-rw-r--r--mysql-test/r/have_ndb.require2
-rw-r--r--mysql-test/r/have_ndb_extra.require3
-rw-r--r--mysql-test/r/have_ndb_status_ok.require2
-rw-r--r--mysql-test/r/have_ndbapi_examples.require2
-rw-r--r--mysql-test/r/have_outfile.require2
-rw-r--r--mysql-test/r/have_partition.require2
-rw-r--r--mysql-test/r/have_profiling.require2
-rw-r--r--mysql-test/r/have_raid.require2
-rw-r--r--mysql-test/r/have_simple_parser.require2
-rw-r--r--mysql-test/r/have_utf8.require2
-rw-r--r--mysql-test/r/having.result4
-rw-r--r--mysql-test/r/heap.result99
-rw-r--r--mysql-test/r/heap_btree.result2
-rw-r--r--mysql-test/r/heap_hash.result8
-rw-r--r--mysql-test/r/help.result9
-rw-r--r--mysql-test/r/im_daemon_life_cycle.result26
-rw-r--r--mysql-test/r/im_life_cycle.result73
-rw-r--r--mysql-test/r/im_options_set.result22
-rw-r--r--mysql-test/r/im_options_unset.result17
-rw-r--r--mysql-test/r/im_utils.result96
-rw-r--r--mysql-test/r/index_merge.result582
-rw-r--r--mysql-test/r/index_merge_bdb.result136
-rw-r--r--mysql-test/r/index_merge_innodb.result375
-rw-r--r--mysql-test/r/index_merge_innodb2.result136
-rw-r--r--mysql-test/r/index_merge_myisam.result1588
-rw-r--r--mysql-test/r/index_merge_ror.result207
-rw-r--r--mysql-test/r/index_merge_ror_cpk.result120
-rw-r--r--mysql-test/r/information_schema.result539
-rw-r--r--mysql-test/r/information_schema_db.result60
-rw-r--r--mysql-test/r/information_schema_inno.result64
-rw-r--r--mysql-test/r/information_schema_part.result153
-rw-r--r--mysql-test/r/init_file.result1
-rw-r--r--mysql-test/r/innodb-autoinc-optimize.result1
-rw-r--r--mysql-test/r/innodb-autoinc.result891
-rw-r--r--mysql-test/r/innodb-replace.result4
-rw-r--r--mysql-test/r/innodb-semi-consistent.result47
-rw-r--r--mysql-test/r/innodb-ucs2.result1
-rw-r--r--mysql-test/r/innodb.result668
-rw-r--r--mysql-test/r/innodb_autoinc_lock_mode_zero.result39
-rw-r--r--mysql-test/r/innodb_bug21704.result55
-rw-r--r--mysql-test/r/innodb_bug30919.result1043
-rw-r--r--mysql-test/r/innodb_bug34053.result1
-rw-r--r--mysql-test/r/innodb_bug34300.result9
-rw-r--r--mysql-test/r/innodb_bug38231.result11
-rw-r--r--mysql-test/r/innodb_bug39438.result1
-rw-r--r--mysql-test/r/innodb_bug42101-nonzero.result26
-rw-r--r--mysql-test/r/innodb_bug42101.result22
-rw-r--r--mysql-test/r/innodb_bug44369.result14
-rw-r--r--mysql-test/r/innodb_bug45357.result7
-rw-r--r--mysql-test/r/innodb_bug46000.result17
-rw-r--r--mysql-test/r/innodb_gis.result90
-rw-r--r--mysql-test/r/innodb_handler.result167
-rw-r--r--mysql-test/r/innodb_ignore_builtin.result9
-rw-r--r--mysql-test/r/innodb_mysql.result1214
-rw-r--r--mysql-test/r/innodb_mysql_rbk.result21
-rw-r--r--mysql-test/r/innodb_notembedded.result3
-rw-r--r--mysql-test/r/innodb_timeout_rollback.result1
-rw-r--r--mysql-test/r/innodb_trx_weight.result1
-rw-r--r--mysql-test/r/innodb_unsafe_binlog.result48
-rw-r--r--mysql-test/r/insert.result134
-rw-r--r--mysql-test/r/insert_notembedded.result19
-rw-r--r--mysql-test/r/insert_select-binlog.result25
-rw-r--r--mysql-test/r/insert_select.result26
-rw-r--r--mysql-test/r/insert_update.result14
-rw-r--r--mysql-test/r/is_embedded.require2
-rw-r--r--mysql-test/r/join.result216
-rw-r--r--mysql-test/r/join_nested.result186
-rw-r--r--mysql-test/r/join_outer.result2
-rw-r--r--mysql-test/r/join_outer_innodb.result19
-rw-r--r--mysql-test/r/key.result139
-rw-r--r--mysql-test/r/key_cache.result2
-rw-r--r--mysql-test/r/key_diff.result2
-rw-r--r--mysql-test/r/keywords.result16
-rw-r--r--mysql-test/r/kill.result16
-rw-r--r--mysql-test/r/loaddata.result77
-rw-r--r--mysql-test/r/loaddata_autocom_innodb.result6
-rw-r--r--mysql-test/r/loaddata_autocom_ndb.result23
-rw-r--r--mysql-test/r/locale.result29
-rw-r--r--mysql-test/r/lock.result125
-rw-r--r--mysql-test/r/lock_multi.result133
-rw-r--r--mysql-test/r/lock_multi_bug38499.result3
-rw-r--r--mysql-test/r/lock_multi_bug38691.result3
-rw-r--r--mysql-test/r/log_state.result316
-rw-r--r--mysql-test/r/log_tables-big.result29
-rw-r--r--mysql-test/r/log_tables.result905
-rw-r--r--mysql-test/r/log_tables_debug.result24
-rw-r--r--mysql-test/r/lowercase0.require1
-rwxr-xr-xmysql-test/r/lowercase_mixed_tmpdir_innodb.result6
-rw-r--r--mysql-test/r/lowercase_table.result4
-rw-r--r--mysql-test/r/lowercase_table2.result4
-rw-r--r--mysql-test/r/lowercase_table3.result17
-rw-r--r--mysql-test/r/lowercase_table_grant.result8
-rw-r--r--mysql-test/r/lowercase_utf8.result16
-rw-r--r--mysql-test/r/lowercase_view.result16
-rw-r--r--mysql-test/r/merge-big.result26
-rw-r--r--mysql-test/r/merge.result1314
-rw-r--r--mysql-test/r/merge_innodb.result37
-rw-r--r--mysql-test/r/metadata.result2
-rw-r--r--mysql-test/r/mix2_myisam.result2163
-rw-r--r--mysql-test/r/mix2_myisam_ucs2.result312
-rw-r--r--mysql-test/r/mix_innodb_myisam_binlog.result517
-rw-r--r--mysql-test/r/multi_update.result98
-rw-r--r--mysql-test/r/myisam-system.result13
-rw-r--r--mysql-test/r/myisam.result545
-rw-r--r--mysql-test/r/myisam_crash_before_flush_keys.result27
-rw-r--r--mysql-test/r/myisam_debug.result39
-rw-r--r--mysql-test/r/myisampack.result27
-rw-r--r--mysql-test/r/mysql-bug41486.result3
-rw-r--r--mysql-test/r/mysql.result69
-rw-r--r--mysql-test/r/mysql_client_test.result2
-rw-r--r--mysql-test/r/mysql_comments.result52
-rw-r--r--mysql-test/r/mysql_cp932.result10
-rw-r--r--mysql-test/r/mysql_protocols.result1
-rw-r--r--mysql-test/r/mysql_upgrade.result48
-rw-r--r--mysql-test/r/mysqlbinlog-cp932.result2
-rw-r--r--mysql-test/r/mysqlbinlog.result174
-rw-r--r--mysql-test/r/mysqlbinlog2.result216
-rw-r--r--mysql-test/r/mysqlbinlog_base64.result111
-rw-r--r--mysql-test/r/mysqlbinlog_row.result4137
-rw-r--r--mysql-test/r/mysqlbinlog_row_big.result102
-rw-r--r--mysql-test/r/mysqlbinlog_row_innodb.result4859
-rw-r--r--mysql-test/r/mysqlbinlog_row_myisam.result4899
-rw-r--r--mysql-test/r/mysqlbinlog_row_trans.result500
-rw-r--r--mysql-test/r/mysqlcheck.result132
-rw-r--r--mysql-test/r/mysqldump-max.result61
-rw-r--r--mysql-test/r/mysqldump.result1923
-rw-r--r--mysql-test/r/mysqlshow.result22
-rw-r--r--mysql-test/r/mysqlslap.result227
-rw-r--r--mysql-test/r/mysqltest.result63
-rw-r--r--mysql-test/r/named_pipe.result16
-rw-r--r--mysql-test/r/ndb_alter_table.result338
-rw-r--r--mysql-test/r/ndb_alter_table2.result61
-rw-r--r--mysql-test/r/ndb_auto_increment.result445
-rw-r--r--mysql-test/r/ndb_autodiscover.result397
-rw-r--r--mysql-test/r/ndb_autodiscover2.result13
-rw-r--r--mysql-test/r/ndb_autodiscover3.result45
-rw-r--r--mysql-test/r/ndb_backup_print.result64
-rw-r--r--mysql-test/r/ndb_basic.result868
-rw-r--r--mysql-test/r/ndb_blob.result570
-rw-r--r--mysql-test/r/ndb_bug26793.result8
-rw-r--r--mysql-test/r/ndb_bug31477.result98
-rw-r--r--mysql-test/r/ndb_cache.result191
-rw-r--r--mysql-test/r/ndb_cache2.result623
-rw-r--r--mysql-test/r/ndb_cache_multi.result72
-rw-r--r--mysql-test/r/ndb_cache_multi2.result75
-rw-r--r--mysql-test/r/ndb_charset.result326
-rw-r--r--mysql-test/r/ndb_condition_pushdown.result1920
-rw-r--r--mysql-test/r/ndb_config.result14
-rw-r--r--mysql-test/r/ndb_database.result27
-rw-r--r--mysql-test/r/ndb_gis.result1088
-rw-r--r--mysql-test/r/ndb_grant.result444
-rw-r--r--mysql-test/r/ndb_index.result154
-rw-r--r--mysql-test/r/ndb_index_ordered.result668
-rw-r--r--mysql-test/r/ndb_index_unique.result685
-rw-r--r--mysql-test/r/ndb_insert.result659
-rw-r--r--mysql-test/r/ndb_limit.result72
-rw-r--r--mysql-test/r/ndb_load.result80
-rw-r--r--mysql-test/r/ndb_loaddatalocal.result46
-rw-r--r--mysql-test/r/ndb_lock.result189
-rw-r--r--mysql-test/r/ndb_minmax.result120
-rw-r--r--mysql-test/r/ndb_multi.result101
-rw-r--r--mysql-test/r/ndb_read_multi_range.result426
-rw-r--r--mysql-test/r/ndb_rename.result14
-rw-r--r--mysql-test/r/ndb_replace.result99
-rw-r--r--mysql-test/r/ndb_restore.result308
-rw-r--r--mysql-test/r/ndb_restore_different_endian_data.result200
-rw-r--r--mysql-test/r/ndb_restore_print.result327
-rw-r--r--mysql-test/r/ndb_single_user.result60
-rw-r--r--mysql-test/r/ndb_subquery.result61
-rw-r--r--mysql-test/r/ndb_transaction.result257
-rw-r--r--mysql-test/r/ndb_trigger.result290
-rw-r--r--mysql-test/r/ndb_truncate.result23
-rw-r--r--mysql-test/r/ndb_types.result76
-rw-r--r--mysql-test/r/ndb_update.result50
-rw-r--r--mysql-test/r/negation_elimination.result6
-rw-r--r--mysql-test/r/no-threads.result13
-rw-r--r--mysql-test/r/not_as_root.require2
-rw-r--r--mysql-test/r/not_embedded_server.result13
-rw-r--r--mysql-test/r/not_ndb.require (renamed from mysql-test/r/have_bdb.require)2
-rw-r--r--mysql-test/r/not_ndb_default.require2
-rw-r--r--mysql-test/r/not_partition.require2
-rw-r--r--mysql-test/r/not_partition.result93
-rw-r--r--mysql-test/r/not_true.require2
-rw-r--r--mysql-test/r/not_valgrind.require2
-rw-r--r--mysql-test/r/not_windows.require2
-rw-r--r--mysql-test/r/null.result110
-rw-r--r--mysql-test/r/olap.result4
-rw-r--r--mysql-test/r/one_thread_per_connection.require2
-rw-r--r--mysql-test/r/openssl_1.result45
-rw-r--r--mysql-test/r/openssl_2.result25
-rw-r--r--mysql-test/r/order_by.result504
-rw-r--r--mysql-test/r/outfile.resultbin2134 -> 2149 bytes
-rw-r--r--mysql-test/r/outfile_loaddata.result139
-rw-r--r--mysql-test/r/parser.result552
-rw-r--r--mysql-test/r/parser_bug21114_innodb.result867
-rw-r--r--mysql-test/r/parser_not_embedded.result49
-rw-r--r--mysql-test/r/partition.result2073
-rw-r--r--mysql-test/r/partition_archive.result106
-rw-r--r--mysql-test/r/partition_blackhole.result7
-rw-r--r--mysql-test/r/partition_bug18198.result173
-rw-r--r--mysql-test/r/partition_charset.result22
-rw-r--r--mysql-test/r/partition_csv.result55
-rw-r--r--mysql-test/r/partition_datatype.result338
-rw-r--r--mysql-test/r/partition_disabled.result93
-rw-r--r--mysql-test/r/partition_error.result653
-rw-r--r--mysql-test/r/partition_federated.result6
-rw-r--r--mysql-test/r/partition_grant.result34
-rw-r--r--mysql-test/r/partition_hash.result200
-rw-r--r--mysql-test/r/partition_innodb.result276
-rw-r--r--mysql-test/r/partition_innodb_builtin.result39
-rw-r--r--mysql-test/r/partition_innodb_plugin.result50
-rw-r--r--mysql-test/r/partition_innodb_semi_consistent.result129
-rw-r--r--mysql-test/r/partition_innodb_stmt.result48
-rw-r--r--mysql-test/r/partition_list.result301
-rw-r--r--mysql-test/r/partition_mgm.result95
-rw-r--r--mysql-test/r/partition_mgm_err.result160
-rw-r--r--mysql-test/r/partition_mgm_err2.result2
-rw-r--r--mysql-test/r/partition_not_embedded.result81
-rw-r--r--mysql-test/r/partition_not_windows.result97
-rw-r--r--mysql-test/r/partition_open_files_limit.result22
-rw-r--r--mysql-test/r/partition_order.result785
-rw-r--r--mysql-test/r/partition_pruning.result2230
-rw-r--r--mysql-test/r/partition_range.result796
-rw-r--r--mysql-test/r/partition_rename_longfilename.result66
-rw-r--r--mysql-test/r/partition_symlink.result123
-rw-r--r--mysql-test/r/partition_windows.result30
-rw-r--r--mysql-test/r/plugin.result56
-rw-r--r--mysql-test/r/plugin_load.result3
-rw-r--r--mysql-test/r/profiling.result2
-rw-r--r--mysql-test/r/ps.result1125
-rw-r--r--mysql-test/r/ps_11bugs.result28
-rw-r--r--mysql-test/r/ps_1general.result48
-rw-r--r--mysql-test/r/ps_2myisam.result716
-rw-r--r--mysql-test/r/ps_3innodb.result716
-rw-r--r--mysql-test/r/ps_4heap.result716
-rw-r--r--mysql-test/r/ps_5merge.result1432
-rw-r--r--mysql-test/r/ps_6bdb.result3128
-rw-r--r--mysql-test/r/ps_7ndb.result3128
-rw-r--r--mysql-test/r/ps_ddl.result2259
-rw-r--r--mysql-test/r/ps_ddl1.result482
-rw-r--r--mysql-test/r/ps_grant.result3
-rw-r--r--mysql-test/r/ps_not_windows.result14
-rw-r--r--mysql-test/r/query_cache.result129
-rw-r--r--mysql-test/r/query_cache_28249.result62
-rw-r--r--mysql-test/r/query_cache_debug.result181
-rw-r--r--mysql-test/r/query_cache_merge.result5
-rw-r--r--mysql-test/r/query_cache_notembedded.result37
-rw-r--r--mysql-test/r/query_cache_ps_no_prot.result533
-rw-r--r--mysql-test/r/query_cache_ps_ps_prot.result533
-rw-r--r--mysql-test/r/range.result222
-rw-r--r--mysql-test/r/read_many_rows_innodb.result (renamed from mysql-test/r/innodb-big.result)19
-rw-r--r--mysql-test/r/read_only.result88
-rw-r--r--mysql-test/r/read_only_innodb.result48
-rw-r--r--mysql-test/r/renamedb.result12
-rw-r--r--mysql-test/r/repair.result10
-rw-r--r--mysql-test/r/replace.result4
-rw-r--r--mysql-test/r/round.result32
-rw-r--r--mysql-test/r/row.result32
-rw-r--r--mysql-test/r/rowid_order_bdb.result186
-rw-r--r--mysql-test/r/rowid_order_innodb.result19
-rw-r--r--mysql-test/r/rpl000001.a.result3
-rw-r--r--mysql-test/r/rpl000001.b.result2
-rw-r--r--mysql-test/r/rpl000001.result82
-rw-r--r--mysql-test/r/rpl000002.result46
-rw-r--r--mysql-test/r/rpl000004.a.result2
-rw-r--r--mysql-test/r/rpl000004.b.result2
-rw-r--r--mysql-test/r/rpl000004.result28
-rw-r--r--mysql-test/r/rpl000005.result25
-rw-r--r--mysql-test/r/rpl000006.result29
-rw-r--r--mysql-test/r/rpl000008.result23
-rw-r--r--mysql-test/r/rpl000009.result139
-rw-r--r--mysql-test/r/rpl000010.result14
-rw-r--r--mysql-test/r/rpl000011.result16
-rw-r--r--mysql-test/r/rpl000012.result37
-rw-r--r--mysql-test/r/rpl000013.result28
-rw-r--r--mysql-test/r/rpl000015.result29
-rw-r--r--mysql-test/r/rpl000017.result12
-rw-r--r--mysql-test/r/rpl_EE_error.result18
-rw-r--r--mysql-test/r/rpl_alter.result21
-rw-r--r--mysql-test/r/rpl_auto_increment.result229
-rw-r--r--mysql-test/r/rpl_auto_increment_11932.result47
-rw-r--r--mysql-test/r/rpl_auto_increment_bug33029.result165
-rw-r--r--mysql-test/r/rpl_begin_commit_rollback.result109
-rw-r--r--mysql-test/r/rpl_bug33931.result38
-rw-r--r--mysql-test/r/rpl_bug38694.result6
-rw-r--r--mysql-test/r/rpl_change_master.result88
-rw-r--r--mysql-test/r/rpl_charset.result292
-rw-r--r--mysql-test/r/rpl_charset_sjis.result26
-rw-r--r--mysql-test/r/rpl_colSize.result179
-rw-r--r--mysql-test/r/rpl_commit_after_flush.result13
-rw-r--r--mysql-test/r/rpl_create_database.result87
-rw-r--r--mysql-test/r/rpl_critical_errors.result1
-rw-r--r--mysql-test/r/rpl_critical_errors.result.txt56
-rw-r--r--mysql-test/r/rpl_ddl.result1693
-rw-r--r--mysql-test/r/rpl_deadlock.result190
-rw-r--r--mysql-test/r/rpl_delete_all.result31
-rw-r--r--mysql-test/r/rpl_do_grant.result37
-rw-r--r--mysql-test/r/rpl_drop.result10
-rw-r--r--mysql-test/r/rpl_drop_db.result37
-rw-r--r--mysql-test/r/rpl_drop_if_exists.result80
-rw-r--r--mysql-test/r/rpl_drop_temp.result20
-rw-r--r--mysql-test/r/rpl_drop_view.result27
-rw-r--r--mysql-test/r/rpl_dual_pos_advance.result60
-rw-r--r--mysql-test/r/rpl_empty_master_crash.result12
-rw-r--r--mysql-test/r/rpl_error_ignored_table.result39
-rw-r--r--mysql-test/r/rpl_extraColmaster_innodb.resultbin0 -> 24418 bytes
-rw-r--r--mysql-test/r/rpl_extraColmaster_myisam.resultbin0 -> 24418 bytes
-rw-r--r--mysql-test/r/rpl_failed_optimize.result20
-rw-r--r--mysql-test/r/rpl_filter_tables_not_exist.result151
-rw-r--r--mysql-test/r/rpl_flush_log_loop.result55
-rw-r--r--mysql-test/r/rpl_flush_tables.result47
-rw-r--r--mysql-test/r/rpl_free_items.result10
-rw-r--r--mysql-test/r/rpl_get_lock.result35
-rw-r--r--mysql-test/r/rpl_grant.result77
-rw-r--r--mysql-test/r/rpl_ignore_grant.result37
-rw-r--r--mysql-test/r/rpl_ignore_revoke.result30
-rw-r--r--mysql-test/r/rpl_ignore_table.result139
-rw-r--r--mysql-test/r/rpl_init_slave.result27
-rw-r--r--mysql-test/r/rpl_innodb.result37
-rw-r--r--mysql-test/r/rpl_insert_delayed.result54
-rw-r--r--mysql-test/r/rpl_insert_id.result444
-rw-r--r--mysql-test/r/rpl_insert_ignore.result70
-rw-r--r--mysql-test/r/rpl_insert_select.result17
-rw-r--r--mysql-test/r/rpl_killed_ddl.result146
-rw-r--r--mysql-test/r/rpl_known_bugs_detection.result133
-rw-r--r--mysql-test/r/rpl_loaddata.result87
-rw-r--r--mysql-test/r/rpl_loaddata_charset.result78
-rw-r--r--mysql-test/r/rpl_loaddata_map.result26
-rw-r--r--mysql-test/r/rpl_loaddata_rule_m.result21
-rw-r--r--mysql-test/r/rpl_loaddata_rule_s.result15
-rw-r--r--mysql-test/r/rpl_loaddatalocal.result31
-rw-r--r--mysql-test/r/rpl_locale.result20
-rw-r--r--mysql-test/r/rpl_log.result119
-rw-r--r--mysql-test/r/rpl_log_pos.result97
-rw-r--r--mysql-test/r/rpl_many_optimize.result9
-rw-r--r--mysql-test/r/rpl_master_pos_wait.result24
-rw-r--r--mysql-test/r/rpl_max_relay_size.result273
-rw-r--r--mysql-test/r/rpl_misc_functions.result55
-rw-r--r--mysql-test/r/rpl_multi_delete.result31
-rw-r--r--mysql-test/r/rpl_multi_delete2.result44
-rw-r--r--mysql-test/r/rpl_multi_query.result32
-rw-r--r--mysql-test/r/rpl_multi_update.result39
-rw-r--r--mysql-test/r/rpl_multi_update2.result55
-rw-r--r--mysql-test/r/rpl_multi_update3.result197
-rw-r--r--mysql-test/r/rpl_multi_update4.result25
-rw-r--r--mysql-test/r/rpl_mystery22.result23
-rw-r--r--mysql-test/r/rpl_name_const.result28
-rw-r--r--mysql-test/r/rpl_ndb_innodb_trans.result103
-rw-r--r--mysql-test/r/rpl_openssl.result31
-rw-r--r--mysql-test/r/rpl_optimize.result27
-rw-r--r--mysql-test/r/rpl_packet.result31
-rw-r--r--mysql-test/r/rpl_ps.result28
-rw-r--r--mysql-test/r/rpl_redirect.result42
-rw-r--r--mysql-test/r/rpl_relayrotate.result16
-rw-r--r--mysql-test/r/rpl_relayspace.result19
-rw-r--r--mysql-test/r/rpl_replicate_do.result77
-rw-r--r--mysql-test/r/rpl_reset_slave.result32
-rw-r--r--mysql-test/r/rpl_rewrite_db.result221
-rw-r--r--mysql-test/r/rpl_rotate_logs.result105
-rw-r--r--mysql-test/r/rpl_server_id.result34
-rw-r--r--mysql-test/r/rpl_server_id1.result19
-rw-r--r--mysql-test/r/rpl_server_id2.result21
-rw-r--r--mysql-test/r/rpl_session_var.result53
-rw-r--r--mysql-test/r/rpl_set_charset.result48
-rw-r--r--mysql-test/r/rpl_skip_error.result35
-rw-r--r--mysql-test/r/rpl_slave_skip.result242
-rw-r--r--mysql-test/r/rpl_slave_status.result56
-rw-r--r--mysql-test/r/rpl_sp.result952
-rw-r--r--mysql-test/r/rpl_sp_effects.result256
-rw-r--r--mysql-test/r/rpl_sporadic_master.result26
-rw-r--r--mysql-test/r/rpl_ssl.result95
-rw-r--r--mysql-test/r/rpl_start_stop_slave.result12
-rw-r--r--mysql-test/r/rpl_temporary.result154
-rw-r--r--mysql-test/r/rpl_timezone.result175
-rw-r--r--mysql-test/r/rpl_transaction.result95
-rw-r--r--mysql-test/r/rpl_trigger_not_windows.result974
-rw-r--r--mysql-test/r/rpl_trigger_windows.result932
-rw-r--r--mysql-test/r/rpl_trunc_temp.result22
-rw-r--r--mysql-test/r/rpl_until.result196
-rw-r--r--mysql-test/r/rpl_user.result45
-rw-r--r--mysql-test/r/rpl_user_variables.result337
-rw-r--r--mysql-test/r/rpl_variables.result19
-rw-r--r--mysql-test/r/rpl_view.result129
-rw-r--r--mysql-test/r/schema.result1
-rw-r--r--mysql-test/r/select.result247
-rw-r--r--mysql-test/r/select_found.result2
-rw-r--r--mysql-test/r/shm.result16
-rw-r--r--mysql-test/r/show_check.result623
-rw-r--r--mysql-test/r/skip_grants.result21
-rw-r--r--mysql-test/r/skip_log_bin.result6
-rw-r--r--mysql-test/r/skip_name_resolve.result3
-rw-r--r--mysql-test/r/sp-code.result123
-rw-r--r--mysql-test/r/sp-destruct.result23
-rw-r--r--mysql-test/r/sp-dynamic.result4
-rw-r--r--mysql-test/r/sp-error.result178
-rw-r--r--mysql-test/r/sp-security.result59
-rw-r--r--mysql-test/r/sp-vars.result180
-rw-r--r--mysql-test/r/sp.result832
-rw-r--r--mysql-test/r/sp_gis.result30
-rw-r--r--mysql-test/r/sp_notembedded.result79
-rw-r--r--mysql-test/r/sp_trans.result28
-rw-r--r--mysql-test/r/sp_trans_log.result8
-rw-r--r--mysql-test/r/sql_mode.result176
-rw-r--r--mysql-test/r/ssl.result16
-rw-r--r--mysql-test/r/ssl_compress.result16
-rw-r--r--mysql-test/r/status.result130
-rw-r--r--mysql-test/r/status2.result53
-rw-r--r--mysql-test/r/strict.result399
-rw-r--r--mysql-test/r/strict_autoinc_1myisam.result6
-rw-r--r--mysql-test/r/strict_autoinc_2innodb.result6
-rw-r--r--mysql-test/r/strict_autoinc_3heap.result6
-rw-r--r--mysql-test/r/strict_autoinc_4bdb.result28
-rw-r--r--mysql-test/r/strict_autoinc_5ndb.result28
-rw-r--r--mysql-test/r/subselect.result699
-rw-r--r--mysql-test/r/subselect3.result108
-rw-r--r--mysql-test/r/subselect4.result2
-rw-r--r--mysql-test/r/subselect_debug.result12
-rw-r--r--mysql-test/r/subselect_notembedded.result36
-rw-r--r--mysql-test/r/symlink.result90
-rw-r--r--mysql-test/r/synchronization.result40
-rw-r--r--mysql-test/r/system_mysql_db.result324
-rw-r--r--mysql-test/r/temp_table.result48
-rw-r--r--mysql-test/r/timezone2.result42
-rw-r--r--mysql-test/r/timezone_grant.result2
-rw-r--r--mysql-test/r/trigger-compat.result9
-rw-r--r--mysql-test/r/trigger-trans.result30
-rw-r--r--mysql-test/r/trigger.result136
-rw-r--r--mysql-test/r/trigger_notembedded.result (renamed from mysql-test/r/trigger-grant.result)121
-rw-r--r--mysql-test/r/type_binary.result6
-rw-r--r--mysql-test/r/type_bit.result44
-rw-r--r--mysql-test/r/type_bit_innodb.result20
-rw-r--r--mysql-test/r/type_blob.result44
-rw-r--r--mysql-test/r/type_date.result59
-rw-r--r--mysql-test/r/type_datetime.result140
-rw-r--r--mysql-test/r/type_decimal.result116
-rw-r--r--mysql-test/r/type_enum.result21
-rw-r--r--mysql-test/r/type_float.result48
-rw-r--r--mysql-test/r/type_nchar.result14
-rw-r--r--mysql-test/r/type_newdecimal.result444
-rw-r--r--mysql-test/r/type_ranges.result48
-rw-r--r--mysql-test/r/type_set.result16
-rw-r--r--mysql-test/r/type_time.result6
-rw-r--r--mysql-test/r/type_timestamp.result76
-rw-r--r--mysql-test/r/type_uint.result4
-rw-r--r--mysql-test/r/type_varchar.result26
-rw-r--r--mysql-test/r/udf.result102
-rw-r--r--mysql-test/r/union.result242
-rw-r--r--mysql-test/r/unsafe_binlog_innodb.result123
-rw-r--r--mysql-test/r/update.result28
-rw-r--r--mysql-test/r/upgrade.result114
-rw-r--r--mysql-test/r/user_var-binlog.result19
-rw-r--r--mysql-test/r/user_var.result62
-rw-r--r--mysql-test/r/varbinary.result30
-rw-r--r--mysql-test/r/variables+c.result (renamed from mysql-test/r/information_schema_community.result)1
-rw-r--r--mysql-test/r/variables-notembedded.result110
-rw-r--r--mysql-test/r/variables.result702
-rw-r--r--mysql-test/r/variables_debug.result12
-rw-r--r--mysql-test/r/view.result542
-rw-r--r--mysql-test/r/view_grant.result383
-rw-r--r--mysql-test/r/wait_timeout.result33
-rw-r--r--mysql-test/r/warnings.result40
-rw-r--r--mysql-test/r/warnings_engine_disabled.result15
-rw-r--r--mysql-test/r/windows.require2
-rw-r--r--mysql-test/r/windows.result26
-rw-r--r--mysql-test/r/xa.result14
-rw-r--r--mysql-test/r/xml.result1096
642 files changed, 118385 insertions, 59336 deletions
diff --git a/mysql-test/r/1st.result b/mysql-test/r/1st.result
new file mode 100644
index 00000000000..4a82f8c66e9
--- /dev/null
+++ b/mysql-test/r/1st.result
@@ -0,0 +1,31 @@
+show databases;
+Database
+information_schema
+mtr
+mysql
+test
+show tables in mysql;
+Tables_in_mysql
+columns_priv
+db
+event
+func
+general_log
+help_category
+help_keyword
+help_relation
+help_topic
+host
+ndb_binlog_index
+plugin
+proc
+procs_priv
+servers
+slow_log
+tables_priv
+time_zone
+time_zone_leap_second
+time_zone_name
+time_zone_transition
+time_zone_transition_type
+user
diff --git a/mysql-test/r/almost_full.result b/mysql-test/r/almost_full.result
index eb28f12fa51..b2d7092aa51 100644
--- a/mysql-test/r/almost_full.result
+++ b/mysql-test/r/almost_full.result
@@ -1,3 +1,4 @@
+call mtr.add_suppression("The table 't1' is full");
drop table if exists t1;
set global myisam_data_pointer_size=2;
CREATE TABLE t1 (a int auto_increment primary key not null, b longtext) ENGINE=MyISAM;
diff --git a/mysql-test/r/alter_table-big.result b/mysql-test/r/alter_table-big.result
index 873978c60de..9761754a02f 100644
--- a/mysql-test/r/alter_table-big.result
+++ b/mysql-test/r/alter_table-big.result
@@ -5,14 +5,53 @@ key (n2, n3, n1),
key (n3, n1, n2));
create table t2 (i int);
alter table t1 disable keys;
+insert into t1 values (RAND()*1000, RAND()*1000, RAND()*1000);
reset master;
+set session debug="+d,sleep_alter_enable_indexes";
alter table t1 enable keys;;
insert into t2 values (1);
insert into t1 values (1, 1, 1);
-show binlog events in 'master-bin.000001' from 98;
+set session debug="-d,sleep_alter_enable_indexes";
+show binlog events in 'master-bin.000001' from 106;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query 1 # use `test`; insert into t2 values (1)
master-bin.000001 # Query 1 # use `test`; alter table t1 enable keys
master-bin.000001 # Query 1 # use `test`; insert into t1 values (1, 1, 1)
drop tables t1, t2;
End of 5.0 tests
+drop table if exists t1, t2, t3;
+create table t1 (i int);
+reset master;
+set session debug="+d,sleep_alter_before_main_binlog";
+alter table t1 change i c char(10) default 'Test1';;
+insert into t1 values ();
+select * from t1;
+c
+Test1
+alter table t1 change c vc varchar(100) default 'Test2';;
+rename table t1 to t2;
+drop table t2;
+create table t1 (i int);
+alter table t1 change i c char(10) default 'Test3', rename to t2;;
+insert into t2 values ();
+select * from t2;
+c
+Test3
+alter table t2 change c vc varchar(100) default 'Test2', rename to t1;;
+rename table t1 to t3;
+drop table t3;
+set session debug="-d,sleep_alter_before_main_binlog";
+show binlog events in 'master-bin.000001' from 106;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query 1 # use `test`; alter table t1 change i c char(10) default 'Test1'
+master-bin.000001 # Query 1 # use `test`; insert into t1 values ()
+master-bin.000001 # Query 1 # use `test`; alter table t1 change c vc varchar(100) default 'Test2'
+master-bin.000001 # Query 1 # use `test`; rename table t1 to t2
+master-bin.000001 # Query 1 # use `test`; drop table t2
+master-bin.000001 # Query 1 # use `test`; create table t1 (i int)
+master-bin.000001 # Query 1 # use `test`; alter table t1 change i c char(10) default 'Test3', rename to t2
+master-bin.000001 # Query 1 # use `test`; insert into t2 values ()
+master-bin.000001 # Query 1 # use `test`; alter table t2 change c vc varchar(100) default 'Test2', rename to t1
+master-bin.000001 # Query 1 # use `test`; rename table t1 to t3
+master-bin.000001 # Query 1 # use `test`; drop table t3
+End of 5.1 tests
diff --git a/mysql-test/r/alter_table.result b/mysql-test/r/alter_table.result
index d81086682f1..db7173d0b47 100644
--- a/mysql-test/r/alter_table.result
+++ b/mysql-test/r/alter_table.result
@@ -373,10 +373,10 @@ t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
DROP TABLE t1;
create table t1 (a int);
-alter table t1 rename to `t1\\`;
-ERROR 42000: Incorrect table name 't1\\'
-rename table t1 to `t1\\`;
-ERROR 42000: Incorrect table name 't1\\'
+alter table t1 rename to ``;
+ERROR 42000: Incorrect table name ''
+rename table t1 to ``;
+ERROR 42000: Incorrect table name ''
drop table t1;
drop table if exists t1, t2;
Warnings:
@@ -390,7 +390,7 @@ show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
`a` varchar(10) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`)
flush tables;
alter table t1 modify a varchar(10) not null;
@@ -398,7 +398,7 @@ show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
`a` varchar(10) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`)
drop table if exists t1, t2;
create table t1 (a int, b int, c int, d int, e int, f int, g int, h int,i int, primary key (a,b,c,d,e,f,g,i,h)) engine=MyISAM;
@@ -468,25 +468,25 @@ delete from t1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) character set koi8r default NULL
+ `a` char(10) CHARACTER SET koi8r DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 DEFAULT CHARACTER SET latin1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) character set koi8r default NULL
+ `a` char(10) CHARACTER SET koi8r DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 CONVERT TO CHARACTER SET latin1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 DEFAULT CHARACTER SET cp1251;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) character set latin1 default NULL
+ `a` char(10) CHARACTER SET latin1 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1251
drop table t1;
create table t1 (myblob longblob,mytext longtext)
@@ -495,14 +495,14 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`myblob` longblob,
- `mytext` longtext collate latin1_general_cs
+ `mytext` longtext COLLATE latin1_general_cs
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_cs
alter table t1 character set latin2;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`myblob` longblob,
- `mytext` longtext character set latin1 collate latin1_general_cs
+ `mytext` longtext CHARACTER SET latin1 COLLATE latin1_general_cs
) ENGINE=MyISAM DEFAULT CHARSET=latin2
drop table t1;
CREATE TABLE t1 (a int PRIMARY KEY, b INT UNIQUE);
@@ -511,7 +511,7 @@ SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` int(11) default NULL,
+ `b` int(11) DEFAULT NULL,
UNIQUE KEY `b` (`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 DROP PRIMARY KEY;
@@ -539,7 +539,7 @@ F2E5F1F2
drop table t1;
create table t1 ( a timestamp );
alter table t1 add unique ( a(1) );
-ERROR HY000: Incorrect sub part key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique sub keys
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
drop table t1;
drop table if exists t1;
create table t1 (a int, key(a));
@@ -682,14 +682,14 @@ CREATE INDEX i1 ON t1(a);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) default NULL,
+ `a` int(11) DEFAULT NULL,
KEY `i1` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
DROP INDEX i1 ON t1;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
DROP TABLE t1;
DROP TABLE IF EXISTS bug24219;
@@ -810,7 +810,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
alter table table_24562 order by (section + 12);
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(section + 12)' at line 1
alter table table_24562 order by length(title);
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'length(title)' at line 1
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(title)' at line 1
alter table table_24562 order by (select 12 from dual);
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(select 12 from dual)' at line 1
alter table table_24562 order by no_such_col;
@@ -822,44 +822,6 @@ desc t1;
Field Type Null Key Default Extra
mycol int(10) NO 0
drop table t1;
-create table t1 (t varchar(255) default null, key t (t(80)))
-engine=myisam default charset=latin1;
-alter table t1 change t t text;
-drop table t1;
-CREATE TABLE t1 (a varchar(500));
-ALTER TABLE t1 ADD b GEOMETRY NOT NULL, ADD SPATIAL INDEX(b);
-SHOW CREATE TABLE t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` varchar(500) default NULL,
- `b` geometry NOT NULL,
- SPATIAL KEY `b` (`b`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-ALTER TABLE t1 ADD KEY(b(50));
-SHOW CREATE TABLE t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` varchar(500) default NULL,
- `b` geometry NOT NULL,
- SPATIAL KEY `b` (`b`),
- KEY `b_2` (`b`(50))
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-ALTER TABLE t1 ADD c POINT;
-SHOW CREATE TABLE t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` varchar(500) default NULL,
- `b` geometry NOT NULL,
- `c` point default NULL,
- SPATIAL KEY `b` (`b`),
- KEY `b_2` (`b`(50))
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-CREATE TABLE t2 (a INT, KEY (a(20)));
-ERROR HY000: Incorrect sub part key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique sub keys
-ALTER TABLE t1 ADD d INT;
-ALTER TABLE t1 ADD KEY (d(20));
-ERROR HY000: Incorrect sub part key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique sub keys
-DROP TABLE t1;
create table t1(id int(8) primary key auto_increment) engine=heap;
insert into t1 values (null);
insert into t1 values (null);
@@ -903,18 +865,137 @@ f1 f2 f21 f4 f41
1 2000-01-01 00:00:00 2000-01-01 2002-02-02 00:00:00 2002-02-02
drop table t1;
set sql_mode= @orig_sql_mode;
-create table t1 (c char(10) default "Two");
-lock table t1 write;
-insert into t1 values ();
-alter table t1 modify c char(10) default "Three";
-unlock tables;
+create table t1 (v varchar(32));
+insert into t1 values ('def'),('abc'),('hij'),('3r4f');
select * from t1;
-c
-Two
-check table t1;
-Table Op Msg_type Msg_text
-test.t1 check status OK
+v
+def
+abc
+hij
+3r4f
+alter table t1 change v v2 varchar(32);
+select * from t1;
+v2
+def
+abc
+hij
+3r4f
+alter table t1 change v2 v varchar(64);
+select * from t1;
+v
+def
+abc
+hij
+3r4f
+update t1 set v = 'lmn' where v = 'hij';
+select * from t1;
+v
+def
+abc
+lmn
+3r4f
+alter table t1 add i int auto_increment not null primary key first;
+select * from t1;
+i v
+1 def
+2 abc
+3 lmn
+4 3r4f
+update t1 set i=5 where i=3;
+select * from t1;
+i v
+1 def
+2 abc
+5 lmn
+4 3r4f
+alter table t1 change i i bigint;
+select * from t1;
+i v
+1 def
+2 abc
+5 lmn
+4 3r4f
+alter table t1 add unique key (i, v);
+select * from t1 where i between 2 and 4 and v in ('def','3r4f','lmn');
+i v
+4 3r4f
drop table t1;
+create table t1 (t varchar(255) default null, key t (t(80)))
+engine=myisam default charset=latin1;
+alter table t1 change t t text;
+drop table t1;
+CREATE TABLE t1 (a varchar(500));
+ALTER TABLE t1 ADD b GEOMETRY NOT NULL, ADD SPATIAL INDEX(b);
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(500) DEFAULT NULL,
+ `b` geometry NOT NULL,
+ SPATIAL KEY `b` (`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+ALTER TABLE t1 ADD KEY(b(50));
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(500) DEFAULT NULL,
+ `b` geometry NOT NULL,
+ SPATIAL KEY `b` (`b`),
+ KEY `b_2` (`b`(50))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+ALTER TABLE t1 ADD c POINT;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(500) DEFAULT NULL,
+ `b` geometry NOT NULL,
+ `c` point DEFAULT NULL,
+ SPATIAL KEY `b` (`b`),
+ KEY `b_2` (`b`(50))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+CREATE TABLE t2 (a INT, KEY (a(20)));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+ALTER TABLE t1 ADD d INT;
+ALTER TABLE t1 ADD KEY (d(20));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+ALTER TABLE t1 ADD e GEOMETRY NOT NULL, ADD SPATIAL KEY (e(30));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+DROP TABLE t1;
+CREATE TABLE t1 (s CHAR(8) BINARY);
+INSERT INTO t1 VALUES ('test');
+SELECT LENGTH(s) FROM t1;
+LENGTH(s)
+4
+ALTER TABLE t1 MODIFY s CHAR(10) BINARY;
+SELECT LENGTH(s) FROM t1;
+LENGTH(s)
+4
+DROP TABLE t1;
+CREATE TABLE t1 (s BINARY(8));
+INSERT INTO t1 VALUES ('test');
+SELECT LENGTH(s) FROM t1;
+LENGTH(s)
+8
+SELECT HEX(s) FROM t1;
+HEX(s)
+7465737400000000
+ALTER TABLE t1 MODIFY s BINARY(10);
+SELECT HEX(s) FROM t1;
+HEX(s)
+74657374000000000000
+SELECT LENGTH(s) FROM t1;
+LENGTH(s)
+10
+DROP TABLE t1;
+CREATE TABLE t1 (v VARCHAR(3), b INT);
+INSERT INTO t1 VALUES ('abc', 5);
+SELECT * FROM t1;
+v b
+abc 5
+ALTER TABLE t1 MODIFY COLUMN v VARCHAR(4);
+SELECT * FROM t1;
+v b
+abc 5
+DROP TABLE t1;
create table t1 (a tinytext character set latin1);
alter table t1 convert to character set utf8;
show create table t1;
@@ -931,3 +1012,322 @@ t1 CREATE TABLE `t1` (
`a` longtext
) ENGINE=MyISAM DEFAULT CHARSET=utf8
drop table t1;
+End of 5.0 tests
+drop table if exists t1, t2, t3;
+create table t1 (i int);
+create table t3 (j int);
+insert into t1 values ();
+insert into t3 values ();
+lock table t1 write, t3 read;
+alter table t1 modify i int default 1;
+insert into t1 values ();
+select * from t1;
+i
+NULL
+1
+alter table t1 change i c char(10) default "Two";
+insert into t1 values ();
+select * from t1;
+c
+NULL
+1
+Two
+alter table t1 modify c char(10) default "Three", rename to t2;
+select * from t1;
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
+select * from t2;
+ERROR HY000: Table 't2' was not locked with LOCK TABLES
+select * from t3;
+j
+NULL
+unlock tables;
+insert into t2 values ();
+select * from t2;
+c
+NULL
+1
+Two
+Three
+lock table t2 write, t3 read;
+alter table t2 change c vc varchar(100) default "Four", rename to t1;
+select * from t1;
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
+select * from t2;
+ERROR HY000: Table 't2' was not locked with LOCK TABLES
+select * from t3;
+j
+NULL
+unlock tables;
+insert into t1 values ();
+select * from t1;
+vc
+NULL
+1
+Two
+Three
+Four
+drop tables t1, t3;
+DROP TABLE IF EXISTS `t+1`, `t+2`;
+CREATE TABLE `t+1` (c1 INT);
+ALTER TABLE `t+1` RENAME `t+2`;
+CREATE TABLE `t+1` (c1 INT);
+ALTER TABLE `t+1` RENAME `t+2`;
+ERROR 42S01: Table 't+2' already exists
+DROP TABLE `t+1`, `t+2`;
+CREATE TEMPORARY TABLE `tt+1` (c1 INT);
+ALTER TABLE `tt+1` RENAME `tt+2`;
+CREATE TEMPORARY TABLE `tt+1` (c1 INT);
+ALTER TABLE `tt+1` RENAME `tt+2`;
+ERROR 42S01: Table 'tt+2' already exists
+SHOW CREATE TABLE `tt+1`;
+Table Create Table
+tt+1 CREATE TEMPORARY TABLE `tt+1` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+SHOW CREATE TABLE `tt+2`;
+Table Create Table
+tt+2 CREATE TEMPORARY TABLE `tt+2` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE `tt+1`, `tt+2`;
+CREATE TABLE `#sql1` (c1 INT);
+CREATE TABLE `@0023sql2` (c1 INT);
+SHOW TABLES;
+Tables_in_test
+#sql1
+@0023sql2
+RENAME TABLE `#sql1` TO `@0023sql1`;
+RENAME TABLE `@0023sql2` TO `#sql2`;
+SHOW TABLES;
+Tables_in_test
+#sql2
+@0023sql1
+ALTER TABLE `@0023sql1` RENAME `#sql-1`;
+ALTER TABLE `#sql2` RENAME `@0023sql-2`;
+SHOW TABLES;
+Tables_in_test
+#sql-1
+@0023sql-2
+INSERT INTO `#sql-1` VALUES (1);
+INSERT INTO `@0023sql-2` VALUES (2);
+DROP TABLE `#sql-1`, `@0023sql-2`;
+CREATE TEMPORARY TABLE `#sql1` (c1 INT);
+CREATE TEMPORARY TABLE `@0023sql2` (c1 INT);
+SHOW TABLES;
+Tables_in_test
+ALTER TABLE `#sql1` RENAME `@0023sql1`;
+ALTER TABLE `@0023sql2` RENAME `#sql2`;
+SHOW TABLES;
+Tables_in_test
+INSERT INTO `#sql2` VALUES (1);
+INSERT INTO `@0023sql1` VALUES (2);
+SHOW CREATE TABLE `#sql2`;
+Table Create Table
+#sql2 CREATE TEMPORARY TABLE `#sql2` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+SHOW CREATE TABLE `@0023sql1`;
+Table Create Table
+@0023sql1 CREATE TEMPORARY TABLE `@0023sql1` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE `#sql2`, `@0023sql1`;
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+CREATE TABLE t1 (
+int_field INTEGER UNSIGNED NOT NULL,
+char_field CHAR(10),
+INDEX(`int_field`)
+);
+DESCRIBE t1;
+Field Type Null Key Default Extra
+int_field int(10) unsigned NO MUL NULL
+char_field char(10) YES NULL
+SHOW INDEXES FROM t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 1 int_field 1 int_field A NULL NULL NULL BTREE
+INSERT INTO t1 VALUES (1, "edno"), (1, "edno"), (2, "dve"), (3, "tri"), (5, "pet");
+"Non-copy data change - new frm, but old data and index files"
+ALTER TABLE t1
+CHANGE int_field unsigned_int_field INTEGER UNSIGNED NOT NULL,
+RENAME t2;
+SELECT * FROM t1 ORDER BY int_field;
+ERROR 42S02: Table 'test.t1' doesn't exist
+SELECT * FROM t2 ORDER BY unsigned_int_field;
+unsigned_int_field char_field
+1 edno
+1 edno
+2 dve
+3 tri
+5 pet
+DESCRIBE t2;
+Field Type Null Key Default Extra
+unsigned_int_field int(10) unsigned NO MUL NULL
+char_field char(10) YES NULL
+DESCRIBE t2;
+Field Type Null Key Default Extra
+unsigned_int_field int(10) unsigned NO MUL NULL
+char_field char(10) YES NULL
+ALTER TABLE t2 MODIFY unsigned_int_field BIGINT UNSIGNED NOT NULL;
+DESCRIBE t2;
+Field Type Null Key Default Extra
+unsigned_int_field bigint(20) unsigned NO MUL NULL
+char_field char(10) YES NULL
+DROP TABLE t2;
+CREATE TABLE t1 (f1 INT, f2 INT, f3 INT);
+INSERT INTO t1 VALUES (1, 2, NULL);
+SELECT * FROM t1;
+f1 f2 f3
+1 2 NULL
+ALTER TABLE t1 MODIFY COLUMN f3 INT AFTER f1;
+SELECT * FROM t1;
+f1 f3 f2
+1 NULL 2
+ALTER TABLE t1 MODIFY COLUMN f3 INT AFTER f2;
+SELECT * FROM t1;
+f1 f2 f3
+1 2 NULL
+DROP TABLE t1;
+create table t1 (c char(10) default "Two");
+lock table t1 write;
+insert into t1 values ();
+alter table t1 modify c char(10) default "Three";
+unlock tables;
+select * from t1;
+c
+Two
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (id int, c int) character set latin1;
+INSERT INTO t1 VALUES (1,1);
+ALTER TABLE t1 CHANGE c d int;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 CHANGE d c int;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 MODIFY c VARCHAR(10);
+affected rows: 1
+info: Records: 1 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 CHANGE c d varchar(10);
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 CHANGE d c varchar(10);
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+DROP TABLE t1;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (id int, c int) character set utf8;
+INSERT INTO t1 VALUES (1,1);
+ALTER TABLE t1 CHANGE c d int;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 CHANGE d c int;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 MODIFY c VARCHAR(10);
+affected rows: 1
+info: Records: 1 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 CHANGE c d varchar(10);
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 CHANGE d c varchar(10);
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+DROP TABLE t1;
+create table t1(f1 int not null, f2 int not null, key (f1), key (f2));
+select index_length into @unpaked_keys_size from
+information_schema.tables where table_name='t1';
+alter table t1 pack_keys=1;
+select index_length into @paked_keys_size from
+information_schema.tables where table_name='t1';
+select (@unpaked_keys_size > @paked_keys_size);
+(@unpaked_keys_size > @paked_keys_size)
+1
+select max_data_length into @orig_max_data_length from
+information_schema.tables where table_name='t1';
+alter table t1 max_rows=100;
+select max_data_length into @changed_max_data_length from
+information_schema.tables where table_name='t1';
+select (@orig_max_data_length > @changed_max_data_length);
+(@orig_max_data_length > @changed_max_data_length)
+1
+drop table t1;
+CREATE TABLE t1(a INT AUTO_INCREMENT PRIMARY KEY,
+b ENUM('a', 'b', 'c') NOT NULL);
+INSERT INTO t1 (b) VALUES ('a'), ('c'), ('b'), ('b'), ('a');
+ALTER TABLE t1 MODIFY b ENUM('a', 'z', 'b', 'c') NOT NULL;
+SELECT * FROM t1;
+a b
+1 a
+2 c
+3 b
+4 b
+5 a
+DROP TABLE t1;
+#
+# Bug#45567: Fast ALTER TABLE broken for enum and set
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a ENUM('a1','a2'));
+INSERT INTO t1 VALUES ('a1'),('a2');
+# No copy: No modification
+ALTER TABLE t1 MODIFY COLUMN a ENUM('a1','a2');
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+# No copy: Add new enumeration to the end
+ALTER TABLE t1 MODIFY COLUMN a ENUM('a1','a2','a3');
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+# Copy: Modify and add new to the end
+ALTER TABLE t1 MODIFY COLUMN a ENUM('a1','a2','xx','a5');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+# Copy: Remove from the end
+ALTER TABLE t1 MODIFY COLUMN a ENUM('a1','a2','xx');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+# Copy: Add new enumeration
+ALTER TABLE t1 MODIFY COLUMN a ENUM('a1','a2','a0','xx');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+# No copy: Add new enumerations to the end
+ALTER TABLE t1 MODIFY COLUMN a ENUM('a1','a2','a0','xx','a5','a6');
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+DROP TABLE t1;
+CREATE TABLE t1 (a SET('a1','a2'));
+INSERT INTO t1 VALUES ('a1'),('a2');
+# No copy: No modification
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2');
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+# No copy: Add new to the end
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2','a3');
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+# Copy: Modify and add new to the end
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2','xx','a5');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+# Copy: Remove from the end
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2','xx');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+# Copy: Add new member
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2','a0','xx');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+# No copy: Add new to the end
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2','a0','xx','a5','a6');
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+# Copy: Numerical incrase (pack lenght)
+ALTER TABLE t1 MODIFY COLUMN a SET('a1','a2','a0','xx','a5','a6','a7','a8','a9','a10');
+affected rows: 2
+info: Records: 2 Duplicates: 0 Warnings: 0
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/analyse.result b/mysql-test/r/analyse.result
index 1e3a2985f74..6eaa8731dc6 100644
--- a/mysql-test/r/analyse.result
+++ b/mysql-test/r/analyse.result
@@ -34,16 +34,16 @@ create table t2 select * from t1 where 0=1 procedure analyse();
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `Field_name` varbinary(255) NOT NULL default '',
- `Min_value` varbinary(255) default NULL,
- `Max_value` varbinary(255) default NULL,
- `Min_length` bigint(11) NOT NULL default '0',
- `Max_length` bigint(11) NOT NULL default '0',
- `Empties_or_zeros` bigint(11) NOT NULL default '0',
- `Nulls` bigint(11) NOT NULL default '0',
- `Avg_value_or_avg_length` varbinary(255) NOT NULL default '',
- `Std` varbinary(255) default NULL,
- `Optimal_fieldtype` varbinary(64) NOT NULL default ''
+ `Field_name` varbinary(255) NOT NULL DEFAULT '',
+ `Min_value` varbinary(255) DEFAULT NULL,
+ `Max_value` varbinary(255) DEFAULT NULL,
+ `Min_length` bigint(11) NOT NULL DEFAULT '0',
+ `Max_length` bigint(11) NOT NULL DEFAULT '0',
+ `Empties_or_zeros` bigint(11) NOT NULL DEFAULT '0',
+ `Nulls` bigint(11) NOT NULL DEFAULT '0',
+ `Avg_value_or_avg_length` varbinary(255) NOT NULL DEFAULT '',
+ `Std` varbinary(255) DEFAULT NULL,
+ `Optimal_fieldtype` varbinary(64) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t1 where 0=1 procedure analyse();
Field_name Min_value Max_value Min_length Max_length Empties_or_zeros Nulls Avg_value_or_avg_length Std Optimal_fieldtype
@@ -53,16 +53,16 @@ create table t2 select * from t1 where 0=1 procedure analyse();
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `Field_name` varbinary(255) NOT NULL default '',
- `Min_value` varbinary(255) default NULL,
- `Max_value` varbinary(255) default NULL,
- `Min_length` bigint(11) NOT NULL default '0',
- `Max_length` bigint(11) NOT NULL default '0',
- `Empties_or_zeros` bigint(11) NOT NULL default '0',
- `Nulls` bigint(11) NOT NULL default '0',
- `Avg_value_or_avg_length` varbinary(255) NOT NULL default '',
- `Std` varbinary(255) default NULL,
- `Optimal_fieldtype` varbinary(64) NOT NULL default ''
+ `Field_name` varbinary(255) NOT NULL DEFAULT '',
+ `Min_value` varbinary(255) DEFAULT NULL,
+ `Max_value` varbinary(255) DEFAULT NULL,
+ `Min_length` bigint(11) NOT NULL DEFAULT '0',
+ `Max_length` bigint(11) NOT NULL DEFAULT '0',
+ `Empties_or_zeros` bigint(11) NOT NULL DEFAULT '0',
+ `Nulls` bigint(11) NOT NULL DEFAULT '0',
+ `Avg_value_or_avg_length` varbinary(255) NOT NULL DEFAULT '',
+ `Std` varbinary(255) DEFAULT NULL,
+ `Optimal_fieldtype` varbinary(64) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t2;
Field_name Min_value Max_value Min_length Max_length Empties_or_zeros Nulls Avg_value_or_avg_length Std Optimal_fieldtype
@@ -76,16 +76,16 @@ create table t2 select * from t1 where 0=1 procedure analyse();
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `Field_name` varbinary(255) NOT NULL default '',
- `Min_value` varbinary(255) default NULL,
- `Max_value` varbinary(255) default NULL,
- `Min_length` bigint(11) NOT NULL default '0',
- `Max_length` bigint(11) NOT NULL default '0',
- `Empties_or_zeros` bigint(11) NOT NULL default '0',
- `Nulls` bigint(11) NOT NULL default '0',
- `Avg_value_or_avg_length` varbinary(255) NOT NULL default '',
- `Std` varbinary(255) default NULL,
- `Optimal_fieldtype` varbinary(64) NOT NULL default ''
+ `Field_name` varbinary(255) NOT NULL DEFAULT '',
+ `Min_value` varbinary(255) DEFAULT NULL,
+ `Max_value` varbinary(255) DEFAULT NULL,
+ `Min_length` bigint(11) NOT NULL DEFAULT '0',
+ `Max_length` bigint(11) NOT NULL DEFAULT '0',
+ `Empties_or_zeros` bigint(11) NOT NULL DEFAULT '0',
+ `Nulls` bigint(11) NOT NULL DEFAULT '0',
+ `Avg_value_or_avg_length` varbinary(255) NOT NULL DEFAULT '',
+ `Std` varbinary(255) DEFAULT NULL,
+ `Optimal_fieldtype` varbinary(64) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t2;
Field_name Min_value Max_value Min_length Max_length Empties_or_zeros Nulls Avg_value_or_avg_length Std Optimal_fieldtype
diff --git a/mysql-test/r/ansi.result b/mysql-test/r/ansi.result
index cc4b6b5fa65..527748e00d5 100644
--- a/mysql-test/r/ansi.result
+++ b/mysql-test/r/ansi.result
@@ -21,28 +21,28 @@ CREATE TABLE t1 (i int auto_increment NOT NULL, PRIMARY KEY (i));
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`i`)
+ `i` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`i`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SET @@SQL_MODE="MYSQL323";
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`i`)
+ `i` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`i`)
) TYPE=MyISAM
SET @@SQL_MODE="MYSQL40";
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`i`)
+ `i` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`i`)
) TYPE=MyISAM
SET @@SQL_MODE="NO_FIELD_OPTIONS";
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`i` int(11) NOT NULL,
- PRIMARY KEY (`i`)
+ PRIMARY KEY (`i`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
diff --git a/mysql-test/r/archive.result b/mysql-test/r/archive.result
index 0fc43f58908..e865d775c6a 100644
--- a/mysql-test/r/archive.result
+++ b/mysql-test/r/archive.result
@@ -1,16 +1,17 @@
-drop table if exists t1,t2;
+DROP TABLE if exists t1,t2,t3,t4,t5,t6;
+SET storage_engine=ARCHIVE;
CREATE TABLE t1 (
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
) ENGINE=archive;
INSERT INTO t1 VALUES (9410,9412);
-select period from t1;
+select period FROM t1;
period
9410
-select * from t1;
+select * FROM t1;
Period Varor_period
9410 9412
-select t1.* from t1;
+select t1.* FROM t1;
Period Varor_period
9410 9412
CREATE TABLE t2 (
@@ -22,13 +23,13 @@ fld4 char(35) DEFAULT '' NOT NULL,
fld5 char(35) DEFAULT '' NOT NULL,
fld6 char(4) DEFAULT '' NOT NULL
) ENGINE=archive;
-select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
+select t2.fld3 FROM t2 where companynr = 58 and fld3 like "%imaginable%";
fld3
imaginable
-select fld3 from t2 where fld3 like "%cultivation" ;
+select fld3 FROM t2 where fld3 like "%cultivation" ;
fld3
cultivation
-select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
+select t2.fld3,companynr FROM t2 where companynr = 57+1 order by fld3;
fld3 companynr
concoct 58
druggists 58
@@ -53,7 +54,7 @@ synergy 58
thanking 58
tying 58
unlocks 58
-select fld3,companynr from t2 where companynr = 58 order by fld3;
+select fld3,companynr FROM t2 where companynr = 58 order by fld3;
fld3 companynr
concoct 58
druggists 58
@@ -78,7 +79,7 @@ synergy 58
thanking 58
tying 58
unlocks 58
-select fld3 from t2 order by fld3 desc limit 10;
+select fld3 FROM t2 order by fld3 desc limit 10;
fld3
youthfulness
yelped
@@ -90,49 +91,49 @@ Winsett
Willy
willed
wildcats
-select fld3 from t2 order by fld3 desc limit 5;
+select fld3 FROM t2 order by fld3 desc limit 5;
fld3
youthfulness
yelped
Wotan
workers
Witt
-select fld3 from t2 order by fld3 desc limit 5,5;
+select fld3 FROM t2 order by fld3 desc limit 5,5;
fld3
witchcraft
Winsett
Willy
willed
wildcats
-select t2.fld3 from t2 where fld3 = 'honeysuckle';
+select t2.fld3 FROM t2 where fld3 = 'honeysuckle';
fld3
honeysuckle
-select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
+select t2.fld3 FROM t2 where fld3 LIKE 'honeysuckl_';
fld3
honeysuckle
-select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
+select t2.fld3 FROM t2 where fld3 LIKE 'hon_ysuckl_';
fld3
honeysuckle
-select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
+select t2.fld3 FROM t2 where fld3 LIKE 'honeysuckle%';
fld3
honeysuckle
-select t2.fld3 from t2 where fld3 LIKE 'h%le';
+select t2.fld3 FROM t2 where fld3 LIKE 'h%le';
fld3
honeysuckle
-select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
+select t2.fld3 FROM t2 where fld3 LIKE 'honeysuckle_';
fld3
-select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
+select t2.fld3 FROM t2 where fld3 LIKE 'don_t_find_me_please%';
fld3
-select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
+select t2.fld3 FROM t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
honoring
-select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
+select fld1,fld3 FROM t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
fld1 fld3
148504 Colombo
068305 Colombo
000000 nondecreasing
-select fld1,fld3 from t2 where companynr = 37 and fld3 like 'f%';
+select fld1,fld3 FROM t2 where companynr = 37 and fld3 like 'f%';
fld1 fld3
012001 flanking
013602 foldout
@@ -165,37 +166,37 @@ fld1 fld3
232102 forgivably
238007 filial
238008 fixedly
-select fld3 from t2 where fld3 like "L%" and fld3 = "ok";
+select fld3 FROM t2 where fld3 like "L%" and fld3 = "ok";
fld3
-select fld3 from t2 where (fld3 like "C%" and fld3 = "Chantilly");
+select fld3 FROM t2 where (fld3 like "C%" and fld3 = "Chantilly");
fld3
Chantilly
-select fld1,fld3 from t2 where fld1 like "25050%";
+select fld1,fld3 FROM t2 where fld1 like "25050%";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
-select fld1,fld3 from t2 where fld1 like "25050_";
+select fld1,fld3 FROM t2 where fld1 like "25050_";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
-create table t3 engine=archive select * from t2;
-select * from t3 where fld3='bonfire';
+CREATE TABLE t3 engine=archive select * FROM t2;
+select * FROM t3 where fld3='bonfire';
auto fld1 companynr fld3 fld4 fld5 fld6
1191 068504 00 bonfire corresponds positively
-select count(*) from t3;
+select count(*) FROM t3;
count(*)
1199
rename table t3 to t4;
-select * from t4 where fld3='bonfire';
+select * FROM t4 where fld3='bonfire';
auto fld1 companynr fld3 fld4 fld5 fld6
1191 068504 00 bonfire corresponds positively
-select count(*) from t4;
+select count(*) FROM t4;
count(*)
1199
INSERT INTO t2 VALUES (1,000001,00,'Omaha','teethe','neat','');
@@ -11132,14 +11133,14 @@ ALTER TABLE t2 DROP COLUMN fld6;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `auto` int(11) default NULL,
- `fld1` int(6) unsigned zerofill NOT NULL default '000000',
- `companynr` tinyint(2) unsigned zerofill NOT NULL default '00',
- `fld3` char(30) NOT NULL default '',
- `fld4` char(35) NOT NULL default '',
- `fld5` char(35) NOT NULL default ''
+ `auto` int(11) DEFAULT NULL,
+ `fld1` int(6) unsigned zerofill NOT NULL DEFAULT '000000',
+ `companynr` tinyint(2) unsigned zerofill NOT NULL DEFAULT '00',
+ `fld3` char(30) NOT NULL DEFAULT '',
+ `fld4` char(35) NOT NULL DEFAULT '',
+ `fld5` char(35) NOT NULL DEFAULT ''
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
-SELECT * from t2 WHERE auto != 100000;
+SELECT * FROM t2 WHERE auto != 100000;
auto fld1 companynr fld3 fld4 fld5
1 000001 00 Omaha teethe neat
2 011401 37 breaking dreaded Steinberg
@@ -12355,7 +12356,317 @@ auto fld1 companynr fld3 fld4 fld5
3 011402 37 Romans scholastics jarring
4 011403 37 intercepted audiology tinily
99999 011403 37 the delayed insert
-drop table t1, t2, t4;
+CREATE TABLE `t5` (
+`a` int(11) NOT NULL auto_increment,
+b char(12),
+PRIMARY KEY (`a`)
+) DEFAULT CHARSET=latin1;
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (32, "foo");
+INSERT INTO t5 VALUES (23, "foo");
+ERROR 23000: Can't write; duplicate key in table 't5'
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (3, "foo");
+ERROR 23000: Can't write; duplicate key in table 't5'
+INSERT INTO t5 VALUES (NULL, "foo");
+SELECT * FROM t5;
+a b
+1 foo
+2 foo
+3 foo
+4 foo
+5 foo
+32 foo
+33 foo
+34 foo
+35 foo
+SELECT * FROM t5 WHERE a=3;
+a b
+3 foo
+DROP TABLE t5;
+CREATE TABLE `t5` (
+`a` int(11) NOT NULL auto_increment,
+b char(12),
+KEY (`a`)
+) DEFAULT CHARSET=latin1 AUTO_INCREMENT=5;
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (32, "foo");
+INSERT INTO t5 VALUES (23, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (3, "foo");
+INSERT INTO t5 VALUES (NULL, "foo");
+SELECT * FROM t5;
+a b
+5 foo
+6 foo
+7 foo
+8 foo
+9 foo
+32 foo
+23 foo
+33 foo
+34 foo
+3 foo
+35 foo
+OPTIMIZE TABLE t5;
+Table Op Msg_type Msg_text
+test.t5 optimize status OK
+SELECT * FROM t5;
+a b
+5 foo
+6 foo
+7 foo
+8 foo
+9 foo
+32 foo
+23 foo
+33 foo
+34 foo
+3 foo
+35 foo
+SELECT * FROM t5 WHERE a=32;
+a b
+32 foo
+SELECT * FROM t5 WHERE a=3;
+a b
+3 foo
+DROP TABLE t5;
+CREATE TABLE `t5` (
+`a` int(11) NOT NULL auto_increment,
+b blob(12),
+KEY (`a`)
+) DEFAULT CHARSET=latin1;
+INSERT INTO t5 VALUES (NULL, "foo");
+INSERT INTO t5 VALUES (NULL, "We the people");
+INSERT INTO t5 VALUES (NULL, "in order to form a more pefect union");
+INSERT INTO t5 VALUES (NULL, "establish justice");
+INSERT INTO t5 VALUES (NULL, "foo grok ");
+INSERT INTO t5 VALUES (32, "ensure domestic tranquility");
+INSERT INTO t5 VALUES (23, "provide for the common defense");
+INSERT INTO t5 VALUES (NULL, "fo fooo");
+INSERT INTO t5 VALUES (NULL, "foo just naother bit of text");
+INSERT INTO t5 VALUES (3, "foo this is mine to think about");
+INSERT INTO t5 VALUES (NULL, "promote the general welfare");
+SELECT * FROM t5;
+a b
+1 foo
+2 We the people
+3 in order to form a more pefect union
+4 establish justice
+5 foo grok
+32 ensure domestic tranquility
+23 provide for the common defense
+33 fo fooo
+34 foo just naother bit of text
+3 foo this is mine to think about
+35 promote the general welfare
+SELECT b FROM t5;
+b
+foo
+We the people
+in order to form a more pefect union
+establish justice
+foo grok
+ensure domestic tranquility
+provide for the common defense
+fo fooo
+foo just naother bit of text
+foo this is mine to think about
+promote the general welfare
+SELECT b FROM t5 WHERE a =3;
+b
+in order to form a more pefect union
+foo this is mine to think about
+SELECT b FROM t5 WHERE a IN (32, 23, 5);
+b
+foo grok
+ensure domestic tranquility
+provide for the common defense
+DROP TABLE t5;
+CREATE TABLE `t5` (
+`a` int(11) NOT NULL auto_increment,
+b blob(12),
+c blob(12),
+KEY (`a`)
+) DEFAULT CHARSET=latin1;
+INSERT INTO t5 VALUES (NULL, "foo", "grok this!");
+INSERT INTO t5 VALUES (NULL, "We the people", NULL);
+INSERT INTO t5 VALUES (NULL, "in order to form a more peefect union", "secure the blessing of liberty");
+INSERT INTO t5 VALUES (NULL, "establish justice", "to ourselves and");
+INSERT INTO t5 VALUES (32, "ensure domestic tranquility", NULL);
+INSERT INTO t5 VALUES (23, "provide for the common defense", "posterity");
+INSERT INTO t5 VALUES (NULL, "promote the general welfare", "do ordain");
+SELECT * FROM t5;
+a b c
+1 foo grok this!
+2 We the people NULL
+3 in order to form a more peefect union secure the blessing of liberty
+4 establish justice to ourselves and
+32 ensure domestic tranquility NULL
+23 provide for the common defense posterity
+33 promote the general welfare do ordain
+SELECT b FROM t5;
+b
+foo
+We the people
+in order to form a more peefect union
+establish justice
+ensure domestic tranquility
+provide for the common defense
+promote the general welfare
+SELECT b FROM t5 WHERE a =3;
+b
+in order to form a more peefect union
+SELECT b FROM t5 WHERE a IN (32, 23, 5);
+b
+ensure domestic tranquility
+provide for the common defense
+SELECT c FROM t5;
+c
+grok this!
+NULL
+secure the blessing of liberty
+to ourselves and
+NULL
+posterity
+do ordain
+SELECT c FROM t5 WHERE a =3;
+c
+secure the blessing of liberty
+SELECT c FROM t5 WHERE a IN (32, 23, 5);
+c
+NULL
+posterity
+DROP TABLE t1;
+CREATE TABLE t1 (v varchar(32)) ;
+insert into t1 values ('def'),('abc'),('hij'),('3r4f');
+select * from t1;
+v
+def
+abc
+hij
+3r4f
+ALTER TABLE t1 change v v2 varchar(32);
+select * from t1;
+v2
+def
+abc
+hij
+3r4f
+ALTER TABLE t1 change v2 v varchar(64);
+select * from t1;
+v
+def
+abc
+hij
+3r4f
+ALTER TABLE t1 add i int auto_increment not null primary key first;
+select * from t1;
+i v
+1 def
+2 abc
+3 hij
+4 3r4f
+DROP TABLE t5;
+CREATE TABLE `t5` (
+`a` int(11) NOT NULL auto_increment,
+b varchar(250),
+c varchar(800),
+KEY (`a`)
+) DEFAULT CHARSET=latin1;
+INSERT INTO t5 VALUES (NULL, "foo", "grok this!");
+INSERT INTO t5 VALUES (NULL, "We the people", NULL);
+INSERT INTO t5 VALUES (NULL, "in order to form a more peefect union", "secure the blessing of liberty");
+INSERT INTO t5 VALUES (NULL, "establish justice", "to ourselves and");
+INSERT INTO t5 VALUES (32, "ensure domestic tranquility", NULL);
+INSERT INTO t5 VALUES (23, "provide for the common defense", "posterity");
+INSERT INTO t5 VALUES (NULL, "promote the general welfare", "do ordain");
+INSERT INTO t5 VALUES (NULL, "abcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabc", "do ordain");
+Warnings:
+Warning 1265 Data truncated for column 'b' at row 1
+SELECT * FROM t5;
+a b c
+1 foo grok this!
+2 We the people NULL
+3 in order to form a more peefect union secure the blessing of liberty
+4 establish justice to ourselves and
+32 ensure domestic tranquility NULL
+23 provide for the common defense posterity
+33 promote the general welfare do ordain
+34 abcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyzabcdeghijklmnopqrstuvwxyz do ordain
+CREATE TABLE `t6` (
+`a` int(11) NOT NULL auto_increment,
+b blob(12),
+c int,
+KEY (`a`)
+) DEFAULT CHARSET=latin1;
+SELECT * FROM t6;
+a b c
+INSERT INTO t6 VALUES (NULL, "foo", NULL);
+INSERT INTO t6 VALUES (NULL, "We the people", 5);
+INSERT INTO t6 VALUES (NULL, "in order to form a more pefect union", 9);
+INSERT INTO t6 VALUES (NULL, "establish justice", NULL);
+INSERT INTO t6 VALUES (NULL, NULL, NULL);
+INSERT INTO t6 VALUES (32, "ensure domestic tranquility", NULL);
+INSERT INTO t6 VALUES (23, "provide for the common defense", 30);
+INSERT INTO t6 VALUES (NULL, "fo fooo", 70);
+INSERT INTO t6 VALUES (NULL, NULL, 98);
+INSERT INTO t6 VALUES (NULL, "promote the general welfare", 50);
+SELECT * FROM t6;
+a b c
+1 foo NULL
+2 We the people 5
+3 in order to form a more pefect union 9
+4 establish justice NULL
+5 NULL NULL
+32 ensure domestic tranquility NULL
+23 provide for the common defense 30
+33 fo fooo 70
+34 NULL 98
+35 promote the general welfare 50
+SELECT * FROM t6 ORDER BY a;
+a b c
+1 foo NULL
+2 We the people 5
+3 in order to form a more pefect union 9
+4 establish justice NULL
+5 NULL NULL
+23 provide for the common defense 30
+32 ensure domestic tranquility NULL
+33 fo fooo 70
+34 NULL 98
+35 promote the general welfare 50
+SELECT * FROM t6 ORDER BY a DESC;
+a b c
+35 promote the general welfare 50
+34 NULL 98
+33 fo fooo 70
+32 ensure domestic tranquility NULL
+23 provide for the common defense 30
+5 NULL NULL
+4 establish justice NULL
+3 in order to form a more pefect union 9
+2 We the people 5
+1 foo NULL
+SHOW CREATE TABLE t6;
+Table Create Table
+t6 CREATE TABLE `t6` (
+ `a` int(11) NOT NULL AUTO_INCREMENT,
+ `b` tinyblob,
+ `c` int(11) DEFAULT NULL,
+ KEY `a` (`a`)
+) ENGINE=ARCHIVE AUTO_INCREMENT=36 DEFAULT CHARSET=latin1
+DROP TABLE t1, t2, t4, t5, t6;
create table t1 (i int) engine=archive;
insert into t1 values (1);
repair table t1 use_frm;
@@ -12372,3 +12683,37 @@ check table t1 extended;
Table Op Msg_type Msg_text
test.t1 check status OK
drop table t1;
+CREATE TABLE t1(a VARCHAR(510)) ENGINE = ARCHIVE;
+INSERT INTO t1(a) VALUES ('');
+SELECT * FROM t1 ORDER BY a;
+DROP TABLE t1;
+CREATE TABLE t1(a INT NOT NULL AUTO_INCREMENT, b BLOB, KEY(a)) ENGINE=archive;
+INSERT INTO t1 VALUES (NULL, NULL),(NULL, NULL);
+FLUSH TABLE t1;
+SELECT * FROM t1 ORDER BY a;
+a b
+1 NULL
+2 NULL
+DROP TABLE t1;
+CREATE TABLE t1(a INT, b BLOB) ENGINE=archive;
+SELECT DATA_LENGTH, AVG_ROW_LENGTH FROM
+INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='test';
+DATA_LENGTH AVG_ROW_LENGTH
+8666 15
+INSERT INTO t1 VALUES(1, 'sampleblob1'),(2, 'sampleblob2');
+SELECT DATA_LENGTH, AVG_ROW_LENGTH FROM
+INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='test';
+DATA_LENGTH AVG_ROW_LENGTH
+8700 4350
+DROP TABLE t1;
+SET @save_join_buffer_size= @@join_buffer_size;
+SET @@join_buffer_size= 8228;
+CREATE TABLE t1(a CHAR(255)) ENGINE=archive;
+INSERT INTO t1 VALUES('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),
+('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),
+('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa');
+SELECT COUNT(t1.a) FROM t1, t1 a, t1 b, t1 c, t1 d, t1 e;
+COUNT(t1.a)
+729
+DROP TABLE t1;
+SET @@join_buffer_size= @save_join_buffer_size;
diff --git a/mysql-test/r/ndb_bitfield.result b/mysql-test/r/archive_bitfield.result
index 389e19f2893..7e3b82a5caf 100644
--- a/mysql-test/r/ndb_bitfield.result
+++ b/mysql-test/r/archive_bitfield.result
@@ -1,21 +1,21 @@
drop table if exists t1;
create table t1 (
-pk1 int not null primary key,
+pk1 int not null auto_increment primary key,
b bit(64)
-) engine=ndbcluster;
+) engine=archive;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `pk1` int(11) NOT NULL,
- `b` bit(64) default NULL,
- PRIMARY KEY (`pk1`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
+ `pk1` int(11) NOT NULL AUTO_INCREMENT,
+ `b` bit(64) DEFAULT NULL,
+ PRIMARY KEY (`pk1`)
+) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
insert into t1 values
-(0,b'1111111111111111111111111111111111111111111111111111111111111111'),
-(1,b'1000000000000000000000000000000000000000000000000000000000000000'),
-(2,b'0000000000000000000000000000000000000000000000000000000000000001'),
-(3,b'1010101010101010101010101010101010101010101010101010101010101010'),
-(4,b'0101010101010101010101010101010101010101010101010101010101010101');
+(NULL,b'1111111111111111111111111111111111111111111111111111111111111111'),
+(NULL,b'1000000000000000000000000000000000000000000000000000000000000000'),
+(NULL,b'0000000000000000000000000000000000000000000000000000000000000001'),
+(NULL,b'1010101010101010101010101010101010101010101010101010101010101010'),
+(NULL,b'0101010101010101010101010101010101010101010101010101010101010101');
select hex(b) from t1 order by pk1;
hex(b)
FFFFFFFFFFFFFFFF
@@ -25,15 +25,15 @@ AAAAAAAAAAAAAAAA
5555555555555555
drop table t1;
create table t1 (
-pk1 int not null primary key,
+pk1 int not null auto_increment primary key,
b bit(9)
-) engine=ndbcluster;
+) engine=archive;
insert into t1 values
-(0,b'000000000'),
-(1,b'000000001'),
-(2,b'000000010'),
-(3,b'000000011'),
-(4,b'000000100');
+(NULL,b'000000000'),
+(NULL,b'000000001'),
+(NULL,b'000000010'),
+(NULL,b'000000011'),
+(NULL,b'000000100');
select hex(b) from t1 order by pk1;
hex(b)
0
@@ -41,16 +41,8 @@ hex(b)
2
3
4
-update t1 set b = b + b'101010101';
-select hex(b) from t1 order by pk1;
-hex(b)
-155
-156
-157
-158
-159
drop table t1;
-create table t1 (a bit(7), b bit(9)) engine = ndbcluster;
+create table t1 (a bit(7), b bit(9)) engine = archive;
insert into t1 values
(94, 46), (31, 438), (61, 152), (78, 123), (88, 411), (122, 118), (0, 177),
(75, 42), (108, 67), (79, 349), (59, 188), (68, 206), (49, 345), (118, 380),
@@ -140,7 +132,7 @@ b+0
499
drop table t1;
create table t1 (
-dummyKey INTEGER NOT NULL,
+dummyKey INTEGER NOT NULL AUTO_INCREMENT,
a001 TINYINT,
a010 TINYINT,
a012 TINYINT,
@@ -178,16 +170,16 @@ m TINYINT,
n TINYINT,
o TINYINT,
a034 TINYINT,
-PRIMARY KEY USING HASH (dummyKey) ) engine=ndb;
+PRIMARY KEY USING HASH (dummyKey) ) engine=archive;
INSERT INTO `t1` VALUES
-(1,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000001',b'111111',b'111110',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(2,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000010',b'000000',b'111101',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(3,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000100',b'001111',b'111011',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(4,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'001000',b'110000',b'110111',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(5,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'010000',b'100001',b'101111',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(6,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'100000',b'010010',b'011111',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(7,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000000',b'001100',b'111111',4,5,5,5,5,5,5,5,5,5,3,2,1),
-(8,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'111111',b'000000',b'000000',4,5,5,5,5,5,5,5,5,5,3,2,1);
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000001',b'111111',b'111110',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000010',b'000000',b'111101',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000100',b'001111',b'111011',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'001000',b'110000',b'110111',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'010000',b'100001',b'101111',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'100000',b'010010',b'011111',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000000',b'001100',b'111111',4,5,5,5,5,5,5,5,5,5,3,2,1),
+(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'111111',b'000000',b'000000',4,5,5,5,5,5,5,5,5,5,3,2,1);
INSERT INTO `t1` VALUES (1,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x01,0x3F,0x3E,4,5,5,5,5,5,5,5,5,5,3,2,1);
INSERT INTO `t1` VALUES (2,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x02,0x00,0x3D,4,5,5,5,5,5,5,5,5,5,3,2,1);
INSERT INTO `t1` VALUES (3,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x04,0x0F,0x3B,4,5,5,5,5,5,5,5,5,5,3,2,1);
@@ -197,20 +189,3 @@ INSERT INTO `t1` VALUES (6,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x20,0x12,0
INSERT INTO `t1` VALUES (7,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x00,0x0C,0x3F,4,5,5,5,5,5,5,5,5,5,3,2,1);
INSERT INTO `t1` VALUES (8,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x3F,0x00,0x00,4,5,5,5,5,5,5,5,5,5,3,2,1);
drop table t1;
-create table t1 (
-pk1 bit(9) not null primary key,
-b int
-) engine=ndbcluster;
-ERROR HY000: Can't create table './test/t1.frm' (errno: 906)
-create table t1 (
-pk1 int not null primary key,
-b bit(9),
-key(b)
-) engine=ndbcluster;
-ERROR HY000: Can't create table './test/t1.frm' (errno: 906)
-create table t1 (
-pk1 int primary key,
-b bit(32) not null
-) engine=ndbcluster;
-insert into t1 values (1,1);
-drop table t1;
diff --git a/mysql-test/r/archive_gis.result b/mysql-test/r/archive_gis.result
index 5a8ccea7cc5..178c5716911 100644
--- a/mysql-test/r/archive_gis.result
+++ b/mysql-test/r/archive_gis.result
@@ -1,50 +1,51 @@
SET storage_engine=archive;
DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE gis_point (fid INTEGER, g POINT);
-CREATE TABLE gis_line (fid INTEGER, g LINESTRING);
-CREATE TABLE gis_polygon (fid INTEGER, g POLYGON);
-CREATE TABLE gis_multi_point (fid INTEGER, g MULTIPOINT);
-CREATE TABLE gis_multi_line (fid INTEGER, g MULTILINESTRING);
-CREATE TABLE gis_multi_polygon (fid INTEGER, g MULTIPOLYGON);
-CREATE TABLE gis_geometrycollection (fid INTEGER, g GEOMETRYCOLLECTION);
-CREATE TABLE gis_geometry (fid INTEGER, g GEOMETRY);
+CREATE TABLE gis_point (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g POINT);
+CREATE TABLE gis_line (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g LINESTRING);
+CREATE TABLE gis_polygon (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g POLYGON);
+CREATE TABLE gis_multi_point (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g MULTIPOINT);
+CREATE TABLE gis_multi_line (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g MULTILINESTRING);
+CREATE TABLE gis_multi_polygon (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g MULTIPOLYGON);
+CREATE TABLE gis_geometrycollection (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g GEOMETRYCOLLECTION);
+CREATE TABLE gis_geometry (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g GEOMETRY);
SHOW CREATE TABLE gis_point;
Table Create Table
gis_point CREATE TABLE `gis_point` (
- `fid` int(11) default NULL,
- `g` point default NULL
+ `fid` int(11) NOT NULL AUTO_INCREMENT,
+ `g` point DEFAULT NULL,
+ PRIMARY KEY (`fid`)
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
SHOW FIELDS FROM gis_point;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g point YES NULL
SHOW FIELDS FROM gis_line;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g linestring YES NULL
SHOW FIELDS FROM gis_polygon;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g polygon YES NULL
SHOW FIELDS FROM gis_multi_point;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g multipoint YES NULL
SHOW FIELDS FROM gis_multi_line;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g multilinestring YES NULL
SHOW FIELDS FROM gis_multi_polygon;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g multipolygon YES NULL
SHOW FIELDS FROM gis_geometrycollection;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g geometrycollection YES NULL
SHOW FIELDS FROM gis_geometry;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g geometry YES NULL
INSERT INTO gis_point VALUES
(101, PointFromText('POINT(10 10)')),
@@ -232,8 +233,8 @@ fid AsText(Envelope(g))
120 POLYGON((0 0,10 0,10 10,0 10,0 0))
121 POLYGON((3 6,44 6,44 9,3 9,3 6))
explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelope(g)) from gis_geometry;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21 100.00
Warnings:
Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
SELECT fid, X(g) FROM gis_point ORDER by fid;
@@ -249,8 +250,8 @@ fid Y(g)
103 20
104 20
explain extended select X(g),Y(g) FROM gis_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_point ALL NULL NULL NULL NULL 4 100.00
Warnings:
Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
SELECT fid, AsText(StartPoint(g)) FROM gis_line ORDER by fid;
@@ -284,8 +285,8 @@ fid IsClosed(g)
106 1
107 0
explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),NumPoints(g),AsText(PointN(g, 2)),IsClosed(g) FROM gis_line;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_line ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
SELECT fid, AsText(Centroid(g)) FROM gis_polygon ORDER by fid;
@@ -314,8 +315,8 @@ fid AsText(InteriorRingN(g, 1))
109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
110 NULL
explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumInteriorRings(g),AsText(InteriorRingN(g, 1)) FROM gis_polygon;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
SELECT fid, IsClosed(g) FROM gis_multi_line ORDER by fid;
@@ -353,8 +354,8 @@ fid NumGeometries(g)
120 2
121 2
explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point ORDER by fid;
@@ -381,8 +382,8 @@ fid AsText(GeometryN(g, 1))
120 POINT(0 0)
121 POINT(44 6)
explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
SELECT g1.fid as first, g2.fid as second,
@@ -400,13 +401,14 @@ Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE g2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE g1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+1 SIMPLE g2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
CREATE TABLE t1 (
+a INTEGER PRIMARY KEY AUTO_INCREMENT,
gp point,
ln linestring,
pg polygon,
@@ -418,6 +420,7 @@ gm geometry
);
SHOW FIELDS FROM t1;
Field Type Null Key Default Extra
+a int(11) NO PRI NULL auto_increment
gp point YES NULL
ln linestring YES NULL
pg polygon YES NULL
@@ -429,6 +432,7 @@ gm geometry YES NULL
ALTER TABLE t1 ADD fid INT;
SHOW FIELDS FROM t1;
Field Type Null Key Default Extra
+a int(11) NO PRI NULL auto_increment
gp point YES NULL
ln linestring YES NULL
pg polygon YES NULL
@@ -439,21 +443,21 @@ gc geometrycollection YES NULL
gm geometry YES NULL
fid int(11) YES NULL
DROP TABLE t1;
-create table t1 (a geometry not null);
-insert into t1 values (GeomFromText('Point(1 2)'));
-insert into t1 values ('Garbage');
+create table t1 (pk integer primary key auto_increment, a geometry not null);
+insert into t1 (a) values (GeomFromText('Point(1 2)'));
+insert into t1 (a) values ('Garbage');
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert IGNORE into t1 values ('Garbage');
+insert IGNORE into t1 (a) values ('Garbage');
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
drop table t1;
-create table t1 (fl geometry not null);
-insert into t1 values (1);
+create table t1 (pk integer primary key auto_increment, fl geometry not null);
+insert into t1 (fl) values (1);
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (1.11);
+insert into t1 (fl) values (1.11);
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values ("qwerty");
+insert into t1 (fl) values ("qwerty");
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (pointfromtext('point(1,1)'));
+insert into t1 (fl) values (pointfromtext('point(1,1)'));
ERROR 23000: Column 'fl' cannot be null
drop table t1;
End of 4.1 tests
diff --git a/mysql-test/r/auto_increment.result b/mysql-test/r/auto_increment.result
index 44b2e3797b2..4a2e108f8c6 100644
--- a/mysql-test/r/auto_increment.result
+++ b/mysql-test/r/auto_increment.result
@@ -140,20 +140,20 @@ select last_insert_id();
last_insert_id()
255
explain extended select last_insert_id();
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select last_insert_id() AS `last_insert_id()`
insert into t1 set i = 254;
-ERROR 23000: Duplicate entry '254' for key 1
+ERROR 23000: Duplicate entry '254' for key 'PRIMARY'
select last_insert_id();
last_insert_id()
255
insert into t1 set i = null;
-ERROR 23000: Duplicate entry '255' for key 1
+ERROR 23000: Duplicate entry '255' for key 'PRIMARY'
select last_insert_id();
last_insert_id()
-0
+255
drop table t1;
create table t1 (i tinyint unsigned not null auto_increment, key (i));
insert into t1 set i = 254;
@@ -163,7 +163,7 @@ last_insert_id()
255
insert into t1 set i = null;
Warnings:
-Warning 1264 Out of range value adjusted for column 'i' at row 1
+Warning 1264 Out of range value for column 'i' at row 1
select last_insert_id();
last_insert_id()
255
@@ -178,10 +178,10 @@ select last_insert_id();
last_insert_id()
2
insert into t1 values (NULL, 10);
-ERROR 23000: Duplicate entry '10' for key 2
+ERROR 23000: Duplicate entry '10' for key 'b'
select last_insert_id();
last_insert_id()
-0
+2
drop table t1;
create table t1(a int auto_increment,b int null,primary key(a));
SET SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
@@ -372,9 +372,9 @@ MySQL 1002
SHOW CREATE TABLE `t1`;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1_name` varchar(255) default NULL,
- `t1_id` int(10) unsigned NOT NULL auto_increment,
- PRIMARY KEY (`t1_id`),
+ `t1_name` varchar(255) DEFAULT NULL,
+ `t1_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`t1_id`),
KEY `t1_name` (`t1_name`)
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
DROP TABLE `t1`;
@@ -425,7 +425,7 @@ key (rowid), unique(val));
replace into t1 (val) values ('1'),('2');
replace into t1 (val) values ('1'),('2');
insert into t1 (val) values ('1'),('2');
-ERROR 23000: Duplicate entry '1' for key 2
+ERROR 23000: Duplicate entry '1' for key 'val'
select * from t1;
rowid val
3 1
@@ -440,6 +440,28 @@ a val
2 1
3 1
drop table t1;
+CREATE TABLE t1 (t1 INT(10) PRIMARY KEY, t2 INT(10));
+INSERT INTO t1 VALUES(0, 0);
+INSERT INTO t1 VALUES(1, 1);
+ALTER TABLE t1 CHANGE t1 t1 INT(10) auto_increment;
+ERROR 23000: ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry '1' for key 'PRIMARY'
+DROP TABLE t1;
+create table t1 (a int primary key auto_increment, b int, c int, d timestamp default current_timestamp, unique(b),unique(c));
+insert into t1 values(null,1,1,now());
+insert into t1 values(null,0,0,null);
+replace into t1 values(null,1,0,null);
+select last_insert_id();
+last_insert_id()
+3
+drop table t1;
+create table t1 (a int primary key auto_increment, b int, c int, e int, d timestamp default current_timestamp, unique(b),unique(c),unique(e));
+insert into t1 values(null,1,1,1,now());
+insert into t1 values(null,0,0,0,null);
+replace into t1 values(null,1,0,2,null);
+select last_insert_id();
+last_insert_id()
+3
+drop table t1;
#
# Bug#46616: Assertion `!table->auto_increment_field_not_null' on view
# manipulations
@@ -448,7 +470,7 @@ CREATE TABLE t1 ( a INT );
INSERT INTO t1 VALUES (1), (1);
CREATE TABLE t2 ( a INT AUTO_INCREMENT KEY );
CREATE TABLE IF NOT EXISTS t2 AS SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
UPDATE t2 SET a = 2;
SELECT a FROM t2;
a
diff --git a/mysql-test/r/backup.result b/mysql-test/r/backup.result
index f5a649d27a5..bab2c83448c 100644
--- a/mysql-test/r/backup.result
+++ b/mysql-test/r/backup.result
@@ -1,39 +1,46 @@
set SQL_LOG_BIN=0;
drop table if exists t1, t2, t3, t4;
create table t4(n int);
-backup table t4 to '../bogus';
+backup table t4 to '../../bogus';
Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X)
+test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/bogus/t4.frm' (Errcode: X)
test.t4 backup status Operation failed
-backup table t4 to '../tmp';
+backup table t4 to '../../tmp';
Table Op Msg_type Msg_text
+test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup status OK
-backup table t4 to '../tmp';
+backup table t4 to '../../tmp';
Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X)
+test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/tmp/t4.frm' (Errcode: X)
test.t4 backup status Operation failed
drop table t4;
-restore table t4 from '../tmp';
+restore table t4 from '../../tmp';
Table Op Msg_type Msg_text
+test.t4 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 restore status OK
select count(*) from t4;
count(*)
0
create table t1(n int);
insert into t1 values (23),(45),(67);
-backup table t1 to '../tmp';
+backup table t1 to '../../tmp';
Table Op Msg_type Msg_text
+test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 backup status OK
drop table t1;
-restore table t1 from '../bogus';
+restore table t1 from '../../bogus';
Table Op Msg_type Msg_text
t1 restore error Failed copying .frm file
Warnings:
+Warning 1287 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
Error 29 File 'MYSQLTEST_VARDIR/bogus/t1.frm' not found (Errcode: X)
-restore table t1 from '../tmp';
+restore table t1 from '../../tmp';
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
select n from t1;
n
@@ -44,13 +51,15 @@ create table t2(m int not null primary key);
create table t3(k int not null primary key);
insert into t2 values (123),(145),(167);
insert into t3 values (223),(245),(267);
-backup table t2,t3 to '../tmp';
+backup table t2,t3 to '../../tmp';
Table Op Msg_type Msg_text
+test.t2 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t2 backup status OK
test.t3 backup status OK
drop table t1,t2,t3;
-restore table t1,t2,t3 from '../tmp';
+restore table t1,t2,t3 from '../../tmp';
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
test.t2 restore status OK
test.t3 restore status OK
@@ -70,13 +79,33 @@ k
245
267
drop table t1,t2,t3,t4;
-restore table t1 from '../tmp';
+restore table t1 from '../../tmp';
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
rename table t1 to t5;
lock tables t5 write;
-backup table t5 to '../tmp';
+backup table t5 to '../../tmp';
unlock tables;
Table Op Msg_type Msg_text
+test.t5 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t5 backup status OK
drop table t5;
+DROP TABLE IF EXISTS `t+1`;
+CREATE TABLE `t+1` (c1 INT);
+INSERT INTO `t+1` VALUES (1), (2), (3);
+BACKUP TABLE `t+1` TO '../../tmp';
+Table Op Msg_type Msg_text
+test.t+1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t+1 backup status OK
+DROP TABLE `t+1`;
+RESTORE TABLE `t+1` FROM '../../tmp';
+Table Op Msg_type Msg_text
+test.t+1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t+1 restore status OK
+SELECT * FROM `t+1`;
+c1
+1
+2
+3
+DROP TABLE `t+1`;
diff --git a/mysql-test/r/bdb-alter-table-1.result b/mysql-test/r/bdb-alter-table-1.result
deleted file mode 100644
index 0401002f1f3..00000000000
--- a/mysql-test/r/bdb-alter-table-1.result
+++ /dev/null
@@ -1,11 +0,0 @@
-drop table if exists t1;
-create table t1(objid BIGINT not null, tablename varchar(64), oid BIGINT not null, test BIGINT, PRIMARY KEY (objid), UNIQUE(tablename)) engine=BDB;
-insert into t1 values(1, 't1',4,9);
-insert into t1 values(2, 'metatable',1,9);
-insert into t1 values(3, 'metaindex',1,9 );
-select * from t1;
-objid tablename oid test
-1 t1 4 9
-2 metatable 1 9
-3 metaindex 1 9
-alter table t1 drop column test;
diff --git a/mysql-test/r/bdb-alter-table-2.result b/mysql-test/r/bdb-alter-table-2.result
deleted file mode 100644
index c23b5ba0031..00000000000
--- a/mysql-test/r/bdb-alter-table-2.result
+++ /dev/null
@@ -1,6 +0,0 @@
-select * from t1;
-objid tablename oid
-1 t1 4
-2 metatable 1
-3 metaindex 1
-drop table t1;
diff --git a/mysql-test/r/bdb-crash.result b/mysql-test/r/bdb-crash.result
deleted file mode 100644
index 778890e85e3..00000000000
--- a/mysql-test/r/bdb-crash.result
+++ /dev/null
@@ -1,39 +0,0 @@
-drop table if exists t1;
-CREATE TABLE t1 (
-ChargeID int(10) unsigned NOT NULL auto_increment,
-ServiceID int(10) unsigned DEFAULT '0' NOT NULL,
-ChargeDate date DEFAULT '0000-00-00' NOT NULL,
-ChargeAmount decimal(20,2) DEFAULT '0.00' NOT NULL,
-FedTaxes decimal(20,2) DEFAULT '0.00' NOT NULL,
-ProvTaxes decimal(20,2) DEFAULT '0.00' NOT NULL,
-ChargeStatus enum('New','Auth','Unauth','Sale','Denied','Refund')
-DEFAULT 'New' NOT NULL,
-ChargeAuthorizationMessage text,
-ChargeComment text,
-ChargeTimeStamp varchar(20),
-PRIMARY KEY (ChargeID),
-KEY ServiceID (ServiceID),
-KEY ChargeDate (ChargeDate)
-) engine=BDB;
-BEGIN;
-INSERT INTO t1
-VALUES(NULL,1,'2001-03-01',1,1,1,'New',NULL,NULL,'now');
-COMMIT;
-BEGIN;
-UPDATE t1 SET ChargeAuthorizationMessage = 'blablabla' WHERE
-ChargeID = 1;
-COMMIT;
-INSERT INTO t1
-VALUES(NULL,1,'2001-03-01',1,1,1,'New',NULL,NULL,'now');
-select * from t1;
-ChargeID ServiceID ChargeDate ChargeAmount FedTaxes ProvTaxes ChargeStatus ChargeAuthorizationMessage ChargeComment ChargeTimeStamp
-1 1 2001-03-01 1.00 1.00 1.00 New blablabla NULL now
-2 1 2001-03-01 1.00 1.00 1.00 New NULL NULL now
-drop table t1;
-create table t1 (a int) engine=bdb;
-set autocommit=0;
-insert into t1 values(1);
-analyze table t1;
-Table Op Msg_type Msg_text
-test.t1 analyze status Operation need committed state
-drop table t1;
diff --git a/mysql-test/r/bdb-deadlock.result b/mysql-test/r/bdb-deadlock.result
deleted file mode 100644
index 9394c90ff00..00000000000
--- a/mysql-test/r/bdb-deadlock.result
+++ /dev/null
@@ -1,31 +0,0 @@
-drop table if exists t1,t2;
-create table t1 (id integer, x integer) engine=BDB;
-create table t2 (id integer, x integer) engine=BDB;
-insert into t1 values(0, 0);
-insert into t2 values(0, 0);
-set autocommit=0;
-update t1 set x = 1 where id = 0;
-set autocommit=0;
-update t2 set x = 1 where id = 0;
-select x from t1 where id = 0;
-select x from t2 where id = 0;
-ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
-commit;
-x
-1
-commit;
-select * from t1;
-id x
-0 1
-select * from t2;
-id x
-0 1
-commit;
-select * from t1;
-id x
-0 1
-select * from t2;
-id x
-0 1
-commit;
-drop table t1,t2;
diff --git a/mysql-test/r/bdb.result b/mysql-test/r/bdb.result
deleted file mode 100644
index 3356d23053f..00000000000
--- a/mysql-test/r/bdb.result
+++ /dev/null
@@ -1,1931 +0,0 @@
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8;
-create table t1 (id int unsigned not null auto_increment, code tinyint unsigned not null, name char(20) not null, primary key (id), key (code), unique (name)) engine=bdb;
-insert into t1 (code, name) values (1, 'Tim'), (1, 'Monty'), (2, 'David'), (2, 'Erik'), (3, 'Sasha'), (3, 'Jeremy'), (4, 'Matt');
-select id, code, name from t1 order by id;
-id code name
-1 1 Tim
-2 1 Monty
-3 2 David
-4 2 Erik
-5 3 Sasha
-6 3 Jeremy
-7 4 Matt
-update ignore t1 set id = 8, name = 'Sinisa' where id < 3;
-select id, code, name from t1 order by id;
-id code name
-2 1 Monty
-3 2 David
-4 2 Erik
-5 3 Sasha
-6 3 Jeremy
-7 4 Matt
-8 1 Sinisa
-update ignore t1 set id = id + 10, name = 'Ralph' where id < 4;
-select id, code, name from t1 order by id;
-id code name
-3 2 David
-4 2 Erik
-5 3 Sasha
-6 3 Jeremy
-7 4 Matt
-8 1 Sinisa
-12 1 Ralph
-drop table t1;
-CREATE TABLE t1 (
-id int(11) NOT NULL auto_increment,
-parent_id int(11) DEFAULT '0' NOT NULL,
-level tinyint(4) DEFAULT '0' NOT NULL,
-PRIMARY KEY (id),
-KEY parent_id (parent_id),
-KEY level (level)
-) engine=bdb;
-INSERT INTO t1 VALUES (1,0,0),(3,1,1),(4,1,1),(8,2,2),(9,2,2),(17,3,2),(22,4,2),(24,4,2),(28,5,2),(29,5,2),(30,5,2),(31,6,2),(32,6,2),(33,6,2),(203,7,2),(202,7,2),(20,3,2),(157,0,0),(193,5,2),(40,7,2),(2,1,1),(15,2,2),(6,1,1),(34,6,2),(35,6,2),(16,3,2),(7,1,1),(36,7,2),(18,3,2),(26,5,2),(27,5,2),(183,4,2),(38,7,2),(25,5,2),(37,7,2),(21,4,2),(19,3,2),(5,1,1),(179,5,2);
-update t1 set parent_id=parent_id+100;
-select * from t1 where parent_id=102;
-id parent_id level
-8 102 2
-9 102 2
-15 102 2
-update t1 set id=id+1000;
-update t1 set id=1024 where id=1009;
-ERROR 23000: Duplicate entry '1024' for key 1
-select * from t1;
-id parent_id level
-1001 100 0
-1002 101 1
-1003 101 1
-1004 101 1
-1005 101 1
-1006 101 1
-1007 101 1
-1008 102 2
-1009 102 2
-1015 102 2
-1016 103 2
-1017 103 2
-1018 103 2
-1019 103 2
-1020 103 2
-1021 104 2
-1022 104 2
-1024 104 2
-1025 105 2
-1026 105 2
-1027 105 2
-1028 105 2
-1029 105 2
-1030 105 2
-1031 106 2
-1032 106 2
-1033 106 2
-1034 106 2
-1035 106 2
-1036 107 2
-1037 107 2
-1038 107 2
-1040 107 2
-1157 100 0
-1179 105 2
-1183 104 2
-1193 105 2
-1202 107 2
-1203 107 2
-update ignore t1 set id=id+1;
-select * from t1;
-id parent_id level
-1001 100 0
-1002 101 1
-1003 101 1
-1004 101 1
-1005 101 1
-1006 101 1
-1007 101 1
-1008 102 2
-1010 102 2
-1015 102 2
-1016 103 2
-1017 103 2
-1018 103 2
-1019 103 2
-1020 103 2
-1021 104 2
-1023 104 2
-1024 104 2
-1025 105 2
-1026 105 2
-1027 105 2
-1028 105 2
-1029 105 2
-1030 105 2
-1031 106 2
-1032 106 2
-1033 106 2
-1034 106 2
-1035 106 2
-1036 107 2
-1037 107 2
-1039 107 2
-1041 107 2
-1158 100 0
-1180 105 2
-1184 104 2
-1194 105 2
-1202 107 2
-1204 107 2
-update ignore t1 set id=1023 where id=1010;
-select * from t1 where parent_id=102 order by parent_id,id;
-id parent_id level
-1008 102 2
-1015 102 2
-1010 102 2
-explain select level from t1 where level=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref level level 1 const X Using index
-explain select level,id from t1 where level=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref level level 1 const X Using index
-explain select level,id,parent_id from t1 where level=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref level level 1 const X
-select level,id from t1 where level=1;
-level id
-1 1002
-1 1003
-1 1004
-1 1005
-1 1006
-1 1007
-select level,id,parent_id from t1 where level=1;
-level id parent_id
-1 1002 101
-1 1003 101
-1 1004 101
-1 1005 101
-1 1006 101
-1 1007 101
-optimize table t1;
-Table Op Msg_type Msg_text
-test.t1 optimize status OK
-show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 id A 39 NULL NULL BTREE
-t1 1 parent_id 1 parent_id A 9 NULL NULL BTREE
-t1 1 level 1 level A 3 NULL NULL BTREE
-drop table t1;
-CREATE TABLE t1 (
-gesuchnr int(11) DEFAULT '0' NOT NULL,
-benutzer_id int(11) DEFAULT '0' NOT NULL,
-PRIMARY KEY (gesuchnr,benutzer_id)
-) engine=BDB;
-replace into t1 (gesuchnr,benutzer_id) values (2,1);
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-select * from t1;
-gesuchnr benutzer_id
-1 1
-2 1
-drop table t1;
-create table t1 (id int not null primary key, x int not null, key (x)) engine=bdb;
-insert into t1 (id, x) values (1, 1);
-replace into t1 (id, x) values (1, 2);
-select * from t1;
-id x
-1 2
-drop table t1;
-create table t1 (a int) engine=bdb;
-insert into t1 values (1), (2);
-optimize table t1;
-Table Op Msg_type Msg_text
-test.t1 optimize status OK
-delete from t1 where a = 1;
-select * from t1;
-a
-2
-check table t1;
-Table Op Msg_type Msg_text
-test.t1 check note The storage engine for the table doesn't support check
-drop table t1;
-create table t1 (a int,b varchar(20)) engine=bdb;
-insert into t1 values (1,""), (2,"testing");
-delete from t1 where a = 1;
-select * from t1;
-a b
-2 testing
-create index skr on t1 (a);
-insert into t1 values (3,""), (4,"testing");
-analyze table t1;
-Table Op Msg_type Msg_text
-test.t1 analyze status OK
-show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 skr 1 a A 3 NULL NULL YES BTREE
-drop table t1;
-create table t1 (a int,b varchar(20),key(a)) engine=bdb;
-insert into t1 values (1,""), (2,"testing");
-select * from t1 where a = 1;
-a b
-1
-drop table t1;
-create table t1 (a char(10) not null, b int not null auto_increment, primary key(a,b)) engine=BDB;
-insert into t1 values ("a",1),("b",2),("a",2),("c",1);
-insert into t1 values ("a",NULL),("b",NULL),("c",NULL),("e",NULL);
-insert into t1 (a) values ("a"),("b"),("c"),("d");
-insert into t1 (a) values ('k'),('d');
-insert into t1 (a) values ("a");
-insert into t1 values ("d",last_insert_id());
-select * from t1;
-a b
-a 1
-a 2
-a 3
-a 4
-a 5
-b 2
-b 3
-b 4
-c 1
-c 2
-c 3
-d 1
-d 2
-d 5
-e 1
-k 1
-flush tables;
-select count(*) from t1;
-count(*)
-16
-drop table t1;
-create table t1 (n int not null primary key) engine=bdb;
-set autocommit=0;
-insert into t1 values (4);
-rollback;
-select n, "after rollback" from t1;
-n after rollback
-insert into t1 values (4);
-commit;
-select n, "after commit" from t1;
-n after commit
-4 after commit
-commit;
-insert into t1 values (5);
-insert into t1 values (4);
-ERROR 23000: Duplicate entry '4' for key 1
-commit;
-select n, "after commit" from t1;
-n after commit
-4 after commit
-5 after commit
-set autocommit=1;
-insert into t1 values (6);
-insert into t1 values (4);
-ERROR 23000: Duplicate entry '4' for key 1
-select n from t1;
-n
-4
-5
-6
-rollback;
-drop table t1;
-create table t1 ( id int NOT NULL PRIMARY KEY, nom varchar(64)) engine=BDB;
-begin;
-insert into t1 values(1,'hamdouni');
-select id as afterbegin_id,nom as afterbegin_nom from t1;
-afterbegin_id afterbegin_nom
-1 hamdouni
-rollback;
-select id as afterrollback_id,nom as afterrollback_nom from t1;
-afterrollback_id afterrollback_nom
-set autocommit=0;
-insert into t1 values(2,'mysql');
-select id as afterautocommit0_id,nom as afterautocommit0_nom from t1;
-afterautocommit0_id afterautocommit0_nom
-2 mysql
-rollback;
-select id as afterrollback_id,nom as afterrollback_nom from t1;
-afterrollback_id afterrollback_nom
-set autocommit=1;
-drop table t1;
-CREATE TABLE t1 (id char(8) not null primary key, val int not null) engine=bdb;
-insert into t1 values ('pippo', 12);
-insert into t1 values ('pippo', 12);
-ERROR 23000: Duplicate entry 'pippo' for key 1
-delete from t1;
-delete from t1 where id = 'pippo';
-select * from t1;
-id val
-insert into t1 values ('pippo', 12);
-set autocommit=0;
-delete from t1;
-rollback;
-select * from t1;
-id val
-pippo 12
-delete from t1;
-commit;
-select * from t1;
-id val
-drop table t1;
-set autocommit=1;
-CREATE TABLE t1 (ID INTEGER NOT NULL PRIMARY KEY, NAME VARCHAR(64)) ENGINE=BDB;
-INSERT INTO t1 VALUES (1, 'Jochen');
-select * from t1;
-ID NAME
-1 Jochen
-drop table t1;
-CREATE TABLE t1 ( _userid VARCHAR(60) NOT NULL PRIMARY KEY) ENGINE=BDB;
-set autocommit=0;
-INSERT INTO t1 SET _userid='marc@anyware.co.uk';
-COMMIT;
-SELECT * FROM t1;
-_userid
-marc@anyware.co.uk
-SELECT _userid FROM t1 WHERE _userid='marc@anyware.co.uk';
-_userid
-marc@anyware.co.uk
-drop table t1;
-set autocommit=1;
-CREATE TABLE t1 (
-user_id int(10) DEFAULT '0' NOT NULL,
-name varchar(100),
-phone varchar(100),
-ref_email varchar(100) DEFAULT '' NOT NULL,
-detail varchar(200),
-PRIMARY KEY (user_id,ref_email)
-)engine=bdb;
-INSERT INTO t1 VALUES (10292,'sanjeev','29153373','sansh777@hotmail.com','xxx'),(10292,'shirish','2333604','shirish@yahoo.com','ddsds'),(10292,'sonali','323232','sonali@bolly.com','filmstar');
-select * from t1 where user_id=10292;
-user_id name phone ref_email detail
-10292 sanjeev 29153373 sansh777@hotmail.com xxx
-10292 shirish 2333604 shirish@yahoo.com ddsds
-10292 sonali 323232 sonali@bolly.com filmstar
-INSERT INTO t1 VALUES (10291,'sanjeev','29153373','sansh777@hotmail.com','xxx'),(10293,'shirish','2333604','shirish@yahoo.com','ddsds');
-select * from t1 where user_id=10292;
-user_id name phone ref_email detail
-10292 sanjeev 29153373 sansh777@hotmail.com xxx
-10292 shirish 2333604 shirish@yahoo.com ddsds
-10292 sonali 323232 sonali@bolly.com filmstar
-select * from t1 where user_id>=10292;
-user_id name phone ref_email detail
-10292 sanjeev 29153373 sansh777@hotmail.com xxx
-10292 shirish 2333604 shirish@yahoo.com ddsds
-10292 sonali 323232 sonali@bolly.com filmstar
-10293 shirish 2333604 shirish@yahoo.com ddsds
-select * from t1 where user_id>10292;
-user_id name phone ref_email detail
-10293 shirish 2333604 shirish@yahoo.com ddsds
-select * from t1 where user_id<10292;
-user_id name phone ref_email detail
-10291 sanjeev 29153373 sansh777@hotmail.com xxx
-drop table t1;
-CREATE TABLE t1 (a int not null, b int not null,c int not null,
-key(a),primary key(a,b), unique(c),key(a),unique(b));
-show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A NULL NULL NULL BTREE
-t1 0 PRIMARY 2 b A 0 NULL NULL BTREE
-t1 0 c 1 c A 0 NULL NULL BTREE
-t1 0 b 1 b A 0 NULL NULL BTREE
-t1 1 a 1 a A NULL NULL NULL BTREE
-t1 1 a_2 1 a A NULL NULL NULL BTREE
-drop table t1;
-create table t1 (col1 int not null, col2 char(4) not null, primary key(col1));
-alter table t1 engine=BDB;
-insert into t1 values ('1','1'),('5','2'),('2','3'),('3','4'),('4','4');
-select * from t1;
-col1 col2
-1 1
-2 3
-3 4
-4 4
-5 2
-update t1 set col2='7' where col1='4';
-select * from t1;
-col1 col2
-1 1
-2 3
-3 4
-4 7
-5 2
-alter table t1 add co3 int not null;
-select * from t1;
-col1 col2 co3
-1 1 0
-2 3 0
-3 4 0
-4 7 0
-5 2 0
-update t1 set col2='9' where col1='2';
-select * from t1;
-col1 col2 co3
-1 1 0
-2 9 0
-3 4 0
-4 7 0
-5 2 0
-drop table t1;
-create table t1 (a int not null , b int, primary key (a)) engine = BDB;
-create table t2 (a int not null , b int, primary key (a)) engine = myisam;
-insert into t1 VALUES (1,3) , (2,3), (3,3);
-select * from t1;
-a b
-1 3
-2 3
-3 3
-insert into t2 select * from t1;
-select * from t2;
-a b
-1 3
-2 3
-3 3
-delete from t1 where b = 3;
-select * from t1;
-a b
-insert into t1 select * from t2;
-select * from t1;
-a b
-1 3
-2 3
-3 3
-select * from t2;
-a b
-1 3
-2 3
-3 3
-drop table t1,t2;
-CREATE TABLE t1 (
-id int(11) NOT NULL auto_increment,
-ggid varchar(32) binary DEFAULT '' NOT NULL,
-email varchar(64) DEFAULT '' NOT NULL,
-passwd varchar(32) binary DEFAULT '' NOT NULL,
-PRIMARY KEY (id),
-UNIQUE ggid (ggid)
-) ENGINE=BDB;
-insert into t1 (ggid,passwd) values ('test1','xxx');
-insert into t1 (ggid,passwd) values ('test2','yyy');
-insert into t1 (ggid,passwd) values ('test2','this will fail');
-ERROR 23000: Duplicate entry 'test2' for key 2
-insert into t1 (ggid,id) values ('this will fail',1);
-ERROR 23000: Duplicate entry '1' for key 1
-select * from t1 where ggid='test1';
-id ggid email passwd
-1 test1 xxx
-select * from t1 where passwd='xxx';
-id ggid email passwd
-1 test1 xxx
-select * from t1 where id=2;
-id ggid email passwd
-2 test2 yyy
-replace into t1 (ggid,id) values ('this will work',1);
-replace into t1 (ggid,passwd) values ('test2','this will work');
-update t1 set id=100,ggid='test2' where id=1;
-ERROR 23000: Duplicate entry 'test2' for key 2
-select * from t1;
-id ggid email passwd
-1 this will work
-3 test2 this will work
-select * from t1 where id=1;
-id ggid email passwd
-1 this will work
-select * from t1 where id=999;
-id ggid email passwd
-drop table t1;
-CREATE TABLE t1 (
-user_name varchar(12),
-password text,
-subscribed char(1),
-user_id int(11) DEFAULT '0' NOT NULL,
-quota bigint(20),
-weight double,
-access_date date,
-access_time time,
-approved datetime,
-dummy_primary_key int(11) NOT NULL auto_increment,
-PRIMARY KEY (dummy_primary_key)
-) ENGINE=BDB;
-INSERT INTO t1 VALUES ('user_0','somepassword','N',0,0,0,'2000-09-07','23:06:59','2000-09-07 23:06:59',1);
-INSERT INTO t1 VALUES ('user_1','somepassword','Y',1,1,1,'2000-09-07','23:06:59','2000-09-07 23:06:59',2);
-INSERT INTO t1 VALUES ('user_2','somepassword','N',2,2,1.4142135623731,'2000-09-07','23:06:59','2000-09-07 23:06:59',3);
-INSERT INTO t1 VALUES ('user_3','somepassword','Y',3,3,1.7320508075689,'2000-09-07','23:06:59','2000-09-07 23:06:59',4);
-INSERT INTO t1 VALUES ('user_4','somepassword','N',4,4,2,'2000-09-07','23:06:59','2000-09-07 23:06:59',5);
-select user_name, password , subscribed, user_id, quota, weight, access_date, access_time, approved, dummy_primary_key from t1 order by user_name;
-user_name password subscribed user_id quota weight access_date access_time approved dummy_primary_key
-user_0 somepassword N 0 0 0 2000-09-07 23:06:59 2000-09-07 23:06:59 1
-user_1 somepassword Y 1 1 1 2000-09-07 23:06:59 2000-09-07 23:06:59 2
-user_2 somepassword N 2 2 1.4142135623731 2000-09-07 23:06:59 2000-09-07 23:06:59 3
-user_3 somepassword Y 3 3 1.7320508075689 2000-09-07 23:06:59 2000-09-07 23:06:59 4
-user_4 somepassword N 4 4 2 2000-09-07 23:06:59 2000-09-07 23:06:59 5
-drop table t1;
-CREATE TABLE t1 (
-id int(11) NOT NULL auto_increment,
-parent_id int(11) DEFAULT '0' NOT NULL,
-level tinyint(4) DEFAULT '0' NOT NULL,
-KEY (id),
-KEY parent_id (parent_id),
-KEY level (level)
-) engine=bdb;
-INSERT INTO t1 VALUES (1,0,0),(3,1,1),(4,1,1),(8,2,2),(9,2,2),(17,3,2),(22,4,2),(24,4,2),(28,5,2),(29,5,2),(30,5,2),(31,6,2),(32,6,2),(33,6,2),(203,7,2),(202,7,2),(20,3,2),(157,0,0),(193,5,2),(40,7,2),(2,1,1),(15,2,2),(6,1,1),(34,6,2),(35,6,2),(16,3,2),(7,1,1),(36,7,2),(18,3,2),(26,5,2),(27,5,2),(183,4,2),(38,7,2),(25,5,2),(37,7,2),(21,4,2),(19,3,2),(5,1,1);
-INSERT INTO t1 values (179,5,2);
-update t1 set parent_id=parent_id+100;
-select * from t1 where parent_id=102;
-id parent_id level
-8 102 2
-9 102 2
-15 102 2
-update t1 set id=id+1000;
-update t1 set id=1024 where id=1009;
-select * from t1;
-id parent_id level
-1001 100 0
-1003 101 1
-1004 101 1
-1008 102 2
-1024 102 2
-1017 103 2
-1022 104 2
-1024 104 2
-1028 105 2
-1029 105 2
-1030 105 2
-1031 106 2
-1032 106 2
-1033 106 2
-1203 107 2
-1202 107 2
-1020 103 2
-1157 100 0
-1193 105 2
-1040 107 2
-1002 101 1
-1015 102 2
-1006 101 1
-1034 106 2
-1035 106 2
-1016 103 2
-1007 101 1
-1036 107 2
-1018 103 2
-1026 105 2
-1027 105 2
-1183 104 2
-1038 107 2
-1025 105 2
-1037 107 2
-1021 104 2
-1019 103 2
-1005 101 1
-1179 105 2
-update ignore t1 set id=id+1;
-select * from t1;
-id parent_id level
-1002 100 0
-1004 101 1
-1005 101 1
-1009 102 2
-1025 102 2
-1018 103 2
-1023 104 2
-1025 104 2
-1029 105 2
-1030 105 2
-1031 105 2
-1032 106 2
-1033 106 2
-1034 106 2
-1204 107 2
-1203 107 2
-1021 103 2
-1158 100 0
-1194 105 2
-1041 107 2
-1003 101 1
-1016 102 2
-1007 101 1
-1035 106 2
-1036 106 2
-1017 103 2
-1008 101 1
-1037 107 2
-1019 103 2
-1027 105 2
-1028 105 2
-1184 104 2
-1039 107 2
-1026 105 2
-1038 107 2
-1022 104 2
-1020 103 2
-1006 101 1
-1180 105 2
-update ignore t1 set id=1023 where id=1010;
-select * from t1 where parent_id=102;
-id parent_id level
-1009 102 2
-1025 102 2
-1016 102 2
-explain select level from t1 where level=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref level level 1 const X Using index
-select level,id from t1 where level=1;
-level id
-1 1004
-1 1005
-1 1003
-1 1007
-1 1008
-1 1006
-select level,id,parent_id from t1 where level=1;
-level id parent_id
-1 1004 101
-1 1005 101
-1 1003 101
-1 1007 101
-1 1008 101
-1 1006 101
-select level,id from t1 where level=1 order by id;
-level id
-1 1003
-1 1004
-1 1005
-1 1006
-1 1007
-1 1008
-delete from t1 where level=1;
-select * from t1;
-id parent_id level
-1002 100 0
-1009 102 2
-1025 102 2
-1018 103 2
-1023 104 2
-1025 104 2
-1029 105 2
-1030 105 2
-1031 105 2
-1032 106 2
-1033 106 2
-1034 106 2
-1204 107 2
-1203 107 2
-1021 103 2
-1158 100 0
-1194 105 2
-1041 107 2
-1016 102 2
-1035 106 2
-1036 106 2
-1017 103 2
-1037 107 2
-1019 103 2
-1027 105 2
-1028 105 2
-1184 104 2
-1039 107 2
-1026 105 2
-1038 107 2
-1022 104 2
-1020 103 2
-1180 105 2
-drop table t1;
-CREATE TABLE t1 (
-sca_code char(6) NOT NULL,
-cat_code char(6) NOT NULL,
-sca_desc varchar(50),
-lan_code char(2) NOT NULL,
-sca_pic varchar(100),
-sca_sdesc varchar(50),
-sca_sch_desc varchar(16),
-PRIMARY KEY (sca_code, cat_code, lan_code),
-INDEX sca_pic (sca_pic)
-) engine = bdb ;
-INSERT INTO t1 ( sca_code, cat_code, sca_desc, lan_code, sca_pic, sca_sdesc, sca_sch_desc) VALUES ( 'PD', 'J', 'PENDANT', 'EN', NULL, NULL, 'PENDANT'),( 'RI', 'J', 'RING', 'EN', NULL, NULL, 'RING'),( 'QQ', 'N', 'RING', 'EN', 'not null', NULL, 'RING');
-select count(*) from t1 where sca_code = 'PD';
-count(*)
-1
-select count(*) from t1 where sca_code <= 'PD';
-count(*)
-1
-select count(*) from t1 where sca_pic is null;
-count(*)
-2
-alter table t1 drop index sca_pic, add index sca_pic (cat_code, sca_pic);
-select count(*) from t1 where sca_code='PD' and sca_pic is null;
-count(*)
-1
-select count(*) from t1 where cat_code='E';
-count(*)
-0
-alter table t1 drop index sca_pic, add index (sca_pic, cat_code);
-select count(*) from t1 where sca_code='PD' and sca_pic is null;
-count(*)
-1
-select count(*) from t1 where sca_pic >= 'n';
-count(*)
-1
-select sca_pic from t1 where sca_pic is null;
-sca_pic
-NULL
-NULL
-update t1 set sca_pic="test" where sca_pic is null;
-delete from t1 where sca_code='pd';
-drop table t1;
-set @a:=now();
-CREATE TABLE t1 (a int not null, b timestamp not null, primary key (a)) engine=bdb;
-insert into t1 (a) values(1),(2),(3);
-select t1.a from t1 natural join t1 as t2 where t1.b >= @a order by t1.a;
-a
-1
-2
-3
-select a from t1 natural join t1 as t2 where b >= @a order by a;
-a
-1
-2
-3
-update t1 set a=5 where a=1;
-select a from t1;
-a
-2
-3
-5
-drop table t1;
-flush logs;
-create table t1 (b blob, i int, key (b(100)), key (i), key (i, b(20))) engine=bdb;
-insert into t1 values ('this is a blob', 1), (null, -1), (null, null),("",1),("",2),("",3);
-select b from t1 where b = 'this is a blob';
-b
-this is a blob
-select * from t1 where b like 't%';
-b i
-this is a blob 1
-select b, i from t1 where b is not null;
-b i
-this is a blob 1
- 1
- 2
- 3
-select * from t1 where b is null and i > 0;
-b i
-select * from t1 where i is NULL;
-b i
-NULL NULL
-update t1 set b='updated' where i=1;
-select * from t1;
-b i
-updated 1
-NULL -1
-NULL NULL
-updated 1
- 2
- 3
-drop table t1;
-create table t1 (a varchar(100) not null, primary key(a), b int not null) engine=bdb;
-insert into t1 values("hello",1),("world",2);
-select * from t1 order by b desc;
-a b
-world 2
-hello 1
-optimize table t1;
-Table Op Msg_type Msg_text
-test.t1 optimize status OK
-show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A 2 NULL NULL BTREE
-drop table t1;
-create table t1 (i int, j int )ENGINE=BDB;
-insert into t1 values (1,2);
-select * from t1 where i=1 and j=2;
-i j
-1 2
-create index ax1 on t1 (i,j);
-select * from t1 where i=1 and j=2;
-i j
-1 2
-drop table t1;
-create table t1
-(
-branch_id int auto_increment primary key,
-branch_name varchar(255) not null,
-branch_active int not null default 1,
-unique branch_name(branch_name),
-index branch_active(branch_active)
-) engine=bdb;
-create table t2
-(
-target_id int auto_increment primary key,
-target_name varchar(255) not null,
-target_active int not null default 1,
-unique target_name(target_name),
-index target_active(target_active)
-) engine=bdb;
-create table t3
-(
-platform_id int auto_increment primary key,
-platform_name varchar(255) not null,
-platform_active int not null default 1,
-unique platform_name(platform_name),
-index platform_active(platform_active)
-) engine=bdb;
-create table t4
-(
-product_id int auto_increment primary key,
-product_name varchar(255) not null,
-version_file varchar(255) not null,
-product_active int not null default 1,
-unique product_name(product_name),
-index product_active(product_active)
-) engine=bdb;
-create table t5
-(
-product_file_id int auto_increment primary key,
-product_id int not null,
-file_name varchar(255) not null,
-/* cvs module used to find the file version */
-module_name varchar(255) not null,
-/* flag whether the file is still included in the product */
-file_included int not null default 1,
-unique product_file(product_id,file_name),
-index file_included(file_included)
-) engine=bdb;
-create table t6
-(
-file_platform_id int auto_increment primary key,
-product_file_id int not null,
-platform_id int not null,
-branch_id int not null,
-/* filename in the build system */
-build_filename varchar(255) not null,
-/* default filename in the build archive */
-archive_filename varchar(255) not null,
-unique file_platform(product_file_id,platform_id,branch_id)
-) engine=bdb;
-create table t8
-(
-archive_id int auto_increment primary key,
-branch_id int not null,
-target_id int not null,
-platform_id int not null,
-product_id int not null,
-status_id int not null default 1,
-unique archive(branch_id,target_id,platform_id,product_id),
-index status_id(status_id)
-) engine=bdb;
-create table t7
-(
-build_id int auto_increment primary key,
-branch_id int not null,
-target_id int not null,
-build_number int not null,
-build_date date not null,
-/* build system tag, e.g. 'rmanight-022301-1779' */
-build_tag varchar(255) not null,
-/* path relative to the build archive root, e.g. 'current' */
-build_path text not null,
-unique build(branch_id,target_id,build_number)
-) engine=bdb;
-insert into t1 (branch_name)
-values ('RealMedia');
-insert into t1 (branch_name)
-values ('RP8REV');
-insert into t1 (branch_name)
-values ('SERVER_8_0_GOLD');
-insert into t2 (target_name)
-values ('rmanight');
-insert into t2 (target_name)
-values ('playerall');
-insert into t2 (target_name)
-values ('servproxyall');
-insert into t3 (platform_name)
-values ('linux-2.0-libc6-i386');
-insert into t3 (platform_name)
-values ('win32-i386');
-insert into t4 (product_name, version_file)
-values ('realserver', 'servinst');
-insert into t4 (product_name, version_file)
-values ('realproxy', 'prxyinst');
-insert into t4 (product_name, version_file)
-values ('realplayer', 'playinst');
-insert into t4 (product_name, version_file)
-values ('plusplayer', 'plusinst');
-create temporary table tmp1
-select branch_id, target_id, platform_id, product_id
-from t1, t2, t3, t4 ;
-create temporary table tmp2
-select tmp1.branch_id, tmp1.target_id, tmp1.platform_id, tmp1.product_id
-from tmp1 left join t8
-using (branch_id,target_id,platform_id,product_id)
-where t8.archive_id is null ;
-insert into t8
-(branch_id, target_id, platform_id, product_id, status_id)
-select branch_id, target_id, platform_id, product_id, 1
-from tmp2 ;
-drop table tmp1 ;
-drop table tmp2 ;
-insert into t5 (product_id, file_name, module_name)
-values (1, 'servinst', 'server');
-insert into t5 (product_id, file_name, module_name)
-values (2, 'prxyinst', 'server');
-insert into t5 (product_id, file_name, module_name)
-values (3, 'playinst', 'rpapp');
-insert into t5 (product_id, file_name, module_name)
-values (4, 'plusinst', 'rpapp');
-insert into t6
-(product_file_id,platform_id,branch_id,build_filename,archive_filename)
-values (1, 2, 3, 'servinst.exe', 'win32-servinst.exe');
-insert into t6
-(product_file_id,platform_id,branch_id,build_filename,archive_filename)
-values (1, 1, 3, 'v80_linux-2.0-libc6-i386_servinst.bin', 'linux2-servinst.exe');
-insert into t6
-(product_file_id,platform_id,branch_id,build_filename,archive_filename)
-values (3, 2, 2, 'playinst.exe', 'win32-playinst.exe');
-insert into t6
-(product_file_id,platform_id,branch_id,build_filename,archive_filename)
-values (4, 2, 2, 'playinst.exe', 'win32-playinst.exe');
-insert into t7
-(branch_id,target_id,build_number,build_tag,build_date,build_path)
-values (2, 2, 1071, 'playerall-022101-1071', '2001-02-21', 'current');
-insert into t7
-(branch_id,target_id,build_number,build_tag,build_date,build_path)
-values (2, 2, 1072, 'playerall-022201-1072', '2001-02-22', 'current');
-insert into t7
-(branch_id,target_id,build_number,build_tag,build_date,build_path)
-values (3, 3, 388, 'servproxyall-022201-388', '2001-02-22', 'current');
-insert into t7
-(branch_id,target_id,build_number,build_tag,build_date,build_path)
-values (3, 3, 389, 'servproxyall-022301-389', '2001-02-23', 'current');
-insert into t7
-(branch_id,target_id,build_number,build_tag,build_date,build_path)
-values (4, 4, 100, 'foo target-010101-100', '2001-01-01', 'current');
-update t8
-set status_id=2
-where branch_id=2 and target_id=2 and platform_id=2 and product_id=1;
-select t7.build_path
-from
-t1,
-t7,
-t2,
-t3,
-t4,
-t5,
-t6
-where
-t7.branch_id = t1.branch_id and
-t7.target_id = t2.target_id and
-t5.product_id = t4.product_id and
-t6.product_file_id = t5.product_file_id and
-t6.platform_id = t3.platform_id and
-t6.branch_id = t6.branch_id and
-t7.build_id = 1 and
-t4.product_id = 3 and
-t5.file_name = 'playinst' and
-t3.platform_id = 2;
-build_path
-current
-drop table t1, t2, t3, t4, t5, t6, t7, t8;
-CREATE TABLE t1 (
-a tinytext NOT NULL,
-b tinyint(3) unsigned NOT NULL default '0',
-PRIMARY KEY (a(32),b)
-) ENGINE=BDB;
-INSERT INTO t1 VALUES ('a',1),('a',2);
-SELECT * FROM t1 WHERE a='a' AND b=2;
-a b
-a 2
-SELECT * FROM t1 WHERE a='a' AND b in (2);
-a b
-a 2
-SELECT * FROM t1 WHERE a='a' AND b in (1,2);
-a b
-a 1
-a 2
-drop table t1;
-CREATE TABLE t1 (
-a int3 unsigned NOT NULL,
-b int1 unsigned NOT NULL,
-UNIQUE (a, b)
-) ENGINE = BDB;
-INSERT INTO t1 VALUES (1, 1);
-SELECT MIN(B),MAX(b) FROM t1 WHERE t1.a = 1;
-MIN(B) MAX(b)
-1 1
-drop table t1;
-create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(30),primary key (id,id2),index index_id3 (id3)) engine=bdb;
-insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJKL');
-LOCK TABLES t1 WRITE;
-insert into t1 values (99,1,2,'D'),(1,1,2,'D');
-ERROR 23000: Duplicate entry '1-1' for key 1
-select id from t1;
-id
-0
-1
-2
-select id from t1;
-id
-0
-1
-2
-UNLOCK TABLES;
-DROP TABLE t1;
-create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(30),primary key (id,id2),index index_id3 (id3)) engine=bdb;
-insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJKL');
-LOCK TABLES t1 WRITE;
-begin;
-insert into t1 values (99,1,2,'D'),(1,1,2,'D');
-ERROR 23000: Duplicate entry '1-1' for key 1
-select id from t1;
-id
-0
-1
-2
-insert ignore into t1 values (100,1,2,'D'),(1,1,99,'D');
-commit;
-select id,id3 from t1;
-id id3
-0 0
-1 1
-2 2
-100 2
-UNLOCK TABLES;
-DROP TABLE t1;
-CREATE TABLE t1 (SYAIN_NO char(5) NOT NULL default '', KINMU_DATE char(6) NOT NULL default '', PRIMARY KEY (SYAIN_NO,KINMU_DATE)) ENGINE=BerkeleyDB;
-CREATE TABLE t2 ( SYAIN_NO char(5) NOT NULL default '',STR_DATE char(8) NOT NULL default '',PRIMARY KEY (SYAIN_NO,STR_DATE) ) ENGINE=BerkeleyDB;
-select T1.KINMU_DATE from t1 T1 ,t2 T2 where T1.SYAIN_NO = '12345' and T1.KINMU_DATE = '200106' and T2.SYAIN_NO = T1.SYAIN_NO;
-KINMU_DATE
-select T1.KINMU_DATE from t1 T1 ,t2 T2 where T1.SYAIN_NO = '12345' and T1.KINMU_DATE = '200106' and T2.SYAIN_NO = T1.SYAIN_NO;
-KINMU_DATE
-DROP TABLE t1,t2;
-create table t1 (a int(11) not null, b int(11) not null, unique (a,b)) engine=bdb;
-insert into t1 values (1,1), (1,2);
-select * from t1 where a = 1;
-a b
-1 1
-1 2
-select t1.*, t2.* from t1, t1 t2 where t1.a = t2.a and t2.a = 1;
-a b a b
-1 1 1 1
-1 1 1 2
-1 2 1 1
-1 2 1 2
-select * from t1 where a = 1;
-a b
-1 1
-1 2
-drop table t1;
-create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(30),primary key (id,id2),index index_id3 (id3)) engine=bdb;
-insert into t1 values (0,0,0,'ABCDEFGHIJ');
-create table t2 (id int NOT NULL,primary key (id)) engine=bdb;
-LOCK TABLES t1 WRITE, t2 WRITE;
-insert into t2 values(1);
-SELECT t1.* FROM t1 WHERE id IN (1);
-id id2 id3 dummy1
-SELECT t1.* FROM t2 left outer join t1 on (t1.id=t2.id);
-id id2 id3 dummy1
-NULL NULL NULL NULL
-delete from t1 where id3 >= 0 and id3 <= 0;
-drop table t1,t2;
-CREATE TABLE t1 (i varchar(48) NOT NULL default '', p varchar(255) default NULL,s varchar(48) NOT NULL default '', PRIMARY KEY (i), UNIQUE(p,s)) ENGINE=BDB;
-INSERT INTO t1 VALUES ('00000000-e6c4ddeaa6-003b8-83458387','programs/xxxxxxxx.wmv','00000000-e6c4ddeb32-003bc-83458387');
-SELECT * FROM t1 WHERE p='programs/xxxxxxxx.wmv';
-i p s
-00000000-e6c4ddeaa6-003b8-83458387 programs/xxxxxxxx.wmv 00000000-e6c4ddeb32-003bc-83458387
-drop table t1;
-CREATE TABLE t1 ( STR_DATE varchar(8) NOT NULL default '',INFO_NOTE varchar(200) default NULL,PRIMARY KEY (STR_DATE) ) ENGINE=BerkeleyDB;
-select INFO_NOTE from t1 where STR_DATE = '20010610';
-INFO_NOTE
-select INFO_NOTE from t1 where STR_DATE < '20010610';
-INFO_NOTE
-select INFO_NOTE from t1 where STR_DATE > '20010610';
-INFO_NOTE
-drop table t1;
-create table t1 (a int not null, b int, primary key (a)) engine =bdb;
-create table t2 (a int not null, b int, primary key (a)) engine =bdb;
-insert into t1 values (2, 3),(1, 7),(10, 7);
-insert into t2 values (2, 3),(1, 7),(10, 7);
-select * from t1;
-a b
-1 7
-2 3
-10 7
-select * from t2;
-a b
-1 7
-2 3
-10 7
-delete t1, t2 from t1, t2 where t1.a = t2.a;
-select * from t1;
-a b
-select * from t2;
-a b
-select * from t2;
-a b
-drop table t1,t2;
-create table t1 (x int not null, index(x)) engine=bdb;
-insert into t1 values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
-select * from t1 where x <= 10 and x >= 7;
-x
-7
-8
-9
-10
-select * from t1 where x <= 10 and x >= 7 order by x;
-x
-7
-8
-9
-10
-select * from t1 where x <= 10 and x >= 7 order by x desc;
-x
-10
-9
-8
-7
-select * from t1 where x <= 8 and x >= 5 order by x desc;
-x
-8
-7
-6
-5
-select * from t1 where x < 8 and x > 5 order by x desc;
-x
-7
-6
-drop table t1;
-create table t1 ( c char(8) not null ) engine=bdb;
-insert into t1 values ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9');
-insert into t1 values ('A'),('B'),('C'),('D'),('E'),('F');
-alter table t1 add b char(8) not null;
-alter table t1 add a char(8) not null;
-alter table t1 add primary key (a,b,c);
-update t1 set a=c, b=c;
-create table t2 (c char(8) not null, b char(8) not null, a char(8) not null, primary key(a,b,c)) engine=bdb;
-insert into t2 select * from t1;
-delete t1,t2 from t2,t1 where t1.a<'B' and t2.b=t1.b;
-drop table t1,t2;
-create table t1 (a char(10), key(a), b int not null, key(b)) engine=bdb;
-insert into t1 values ('a',1),('A',2);
-explain select a from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2
-select a from t1;
-a
-a
-A
-explain select b from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL b 4 NULL 2 Using index
-select b from t1;
-b
-1
-2
-alter table t1 modify a char(10) binary;
-explain select a from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL a 11 NULL 2 Using index
-select a from t1;
-a
-A
-a
-drop table t1;
-create table t1(
-pk1 text not null, pk2 text not null, pk3 char(4),
-key1 int, key2 int,
-primary key(pk1(4), pk2(4), pk3), key(key1), key(key2)
-) engine=bdb;
-insert into t1 values (concat('aaa-', repeat('A', 4000)),
-concat('eee-', repeat('e', 4000)), 'a++a', 1, 1);
-insert into t1 values (concat('bbb-', repeat('B', 4000)),
-concat('ggg-', repeat('G', 4000)), 'b++b', 1, 1);
-select substring(pk1, 1, 4), substring(pk1, 4001),
-substring(pk2, 1, 4), substring(pk2, 4001), pk3, key1, key2
-from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-substring(pk1, 1, 4) substring(pk1, 4001) substring(pk2, 1, 4) substring(pk2, 4001) pk3 key1 key2
-aaa- AAAA eee- eeee a++a 1 1
-bbb- BBBB ggg- GGGG b++b 1 1
-drop table t1;
-create table t1 (
-pk1 varchar(8) not null default '',
-pk2 varchar(4) not null default '',
-key1 int(11) default null,
-key2 int(11) default null,
-primary key (pk1,pk2),
-key key1 (key1),
-key key2 (key2)) engine=bdb;
-insert into t1 values ('','empt',2,2), ('a','a--a',2,2),
-('bb','b--b',2,2), ('ccc','c--c',2,2), ('dddd','d--d',2,2);
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 pk2 key1 key2
- empt 2 2
-a a--a 2 2
-bb b--b 2 2
-ccc c--c 2 2
-dddd d--d 2 2
-drop table t1;
-set autocommit=0;
-create table t1(b varchar(30)) engine=bdb;
-insert into t1 values ('one');
-commit;
-select b FROM t1 outer_table where
-exists (select 'two' from t1 where 'two' = outer_table.b);
-b
-drop table t1;
-set autocommit=1;
-create table t1(a int primary key, b varchar(30)) engine=bdb;
-insert into t1 values (1,'one'), (2,'two'), (3,'three'), (4,'four');
-create table t2 like t1;
-insert t2 select * from t1;
-select a from t1 where a in (select a from t2);
-a
-1
-2
-3
-4
-delete from t2;
-insert into t2 (a, b)
-select a, b from t1 where (a, b) in (select a, b from t1);
-select * from t2;
-a b
-1 one
-2 two
-3 three
-4 four
-drop table t1, t2;
-create table t1 (a int, b varchar(30), primary key(a)) engine = bdb;
-insert into t1 values (1,'one');
-commit;
-truncate t1;
-select * from t1;
-a b
-drop table t1;
-SET NAMES utf8;
-create table t1 (a varchar(255) character set utf8) engine=bdb;
-set @a:= convert(repeat(_latin1 0xFF, 255) using utf8);
-insert into t1 values (@a);
-select a, length(a), char_length(a) from t1;
-a length(a) char_length(a)
-ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 510 255
-drop table t1;
-SET NAMES latin1;
-CREATE TABLE t1 (
-id int unsigned NOT NULL auto_increment,
-list_id smallint unsigned NOT NULL,
-term TEXT NOT NULL,
-PRIMARY KEY(id),
-INDEX(list_id, term(4))
-) ENGINE=BDB CHARSET=utf8;
-INSERT INTO t1 SET list_id = 1, term = "letterc";
-INSERT INTO t1 SET list_id = 1, term = "letterb";
-INSERT INTO t1 SET list_id = 1, term = "lettera";
-INSERT INTO t1 SET list_id = 1, term = "letterd";
-SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterc");
-id
-1
-SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterb");
-id
-2
-SELECT id FROM t1 WHERE (list_id = 1) AND (term = "lettera");
-id
-3
-SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterd");
-id
-4
-DROP TABLE t1;
-create table t1 (a int, key(a)) engine=bdb;
-create table t2 (b int, key(b)) engine=bdb;
-insert into t1 values (1),(1),(2),(3),(4);
-insert into t2 values (1),(5),(6),(7);
-delete from t1 where (a in (select b from t2));
-select count(*) from t1;
-count(*)
-3
-insert into t1 set a=(select b from t2);
-ERROR 21000: Subquery returns more than 1 row
-select count(*) from t1;
-count(*)
-3
-update t1 set a = a + 1 where (a in (select b from t2));
-select count(*) from t1;
-count(*)
-3
-drop table t1, t2;
-End of 4.1 tests
-create temporary table t1 (a int, primary key(a)) engine=bdb;
-select * from t1;
-a
-alter table t1 add b int;
-select * from t1;
-a b
-drop table t1;
-set storage_engine=bdb;
-drop table if exists t1,t2,t3;
---- Testing varchar ---
---- Testing varchar ---
-create table t1 (v varchar(10), c char(10), t text);
-insert into t1 values('+ ', '+ ', '+ ');
-set @a=repeat(' ',20);
-insert into t1 values (concat('+',@a),concat('+',@a),concat('+',@a));
-Warnings:
-Note 1265 Data truncated for column 'v' at row 1
-select concat('*',v,'*',c,'*',t,'*') from t1;
-concat('*',v,'*',c,'*',t,'*')
-*+ *+*+ *
-*+ *+*+ *
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` text
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-create table t2 like t1;
-show create table t2;
-Table Create Table
-t2 CREATE TABLE `t2` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` text
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-create table t3 select * from t1;
-show create table t3;
-Table Create Table
-t3 CREATE TABLE `t3` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` text
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-alter table t1 modify c varchar(10);
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` varchar(10) default NULL,
- `t` text
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-alter table t1 modify v char(10);
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
- `t` text
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-alter table t1 modify t varchar(10);
-Warnings:
-Note 1265 Data truncated for column 't' at row 2
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
- `t` varchar(10) default NULL
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-select concat('*',v,'*',c,'*',t,'*') from t1;
-concat('*',v,'*',c,'*',t,'*')
-*+*+*+ *
-*+*+*+ *
-drop table t1,t2,t3;
-create table t1 (v varchar(10), c char(10), t text, key(v), key(c), key(t(10)));
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` text,
- KEY `v` (`v`),
- KEY `c` (`c`),
- KEY `t` (`t`(10))
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-select count(*) from t1;
-count(*)
-270
-insert into t1 values(concat('a',char(1)),concat('a',char(1)),concat('a',char(1)));
-select count(*) from t1 where v='a';
-count(*)
-10
-select count(*) from t1 where c='a';
-count(*)
-10
-select count(*) from t1 where t='a';
-count(*)
-10
-select count(*) from t1 where v='a ';
-count(*)
-10
-select count(*) from t1 where c='a ';
-count(*)
-10
-select count(*) from t1 where t='a ';
-count(*)
-10
-select count(*) from t1 where v between 'a' and 'a ';
-count(*)
-10
-select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
-count(*)
-10
-select count(*) from t1 where v like 'a%';
-count(*)
-11
-select count(*) from t1 where c like 'a%';
-count(*)
-11
-select count(*) from t1 where t like 'a%';
-count(*)
-11
-select count(*) from t1 where v like 'a %';
-count(*)
-9
-explain select count(*) from t1 where v='a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 13 const # Using where
-explain select count(*) from t1 where c='a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref c c 11 const # Using where
-explain select count(*) from t1 where t='a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref t t 13 const # Using where
-explain select count(*) from t1 where v like 'a%';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range v v 13 NULL # Using where
-explain select count(*) from t1 where v between 'a' and 'a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 13 const # Using where
-explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 13 const # Using where
-alter table t1 add unique(v);
-ERROR 23000: Duplicate entry '{ ' for key 1
-alter table t1 add key(v);
-select concat('*',v,'*',c,'*',t,'*') as qq from t1 where v='a';
-qq
-*a*a*a*
-*a *a*a *
-*a *a*a *
-*a *a*a *
-*a *a*a *
-*a *a*a *
-*a *a*a *
-*a *a*a *
-*a *a*a *
-*a *a*a *
-explain select * from t1 where v='a';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v,v_2 # 13 const # Using where
-select v,count(*) from t1 group by v limit 10;
-v count(*)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select v,count(c) from t1 group by v limit 10;
-v count(c)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result v,count(c) from t1 group by v limit 10;
-v count(c)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select c,count(*) from t1 group by c limit 10;
-c count(*)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select c,count(t) from t1 group by c limit 10;
-c count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result c,count(t) from t1 group by c limit 10;
-c count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select t,count(*) from t1 group by t limit 10;
-t count(*)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select t,count(t) from t1 group by t limit 10;
-t count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result t,count(t) from t1 group by t limit 10;
-t count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-alter table t1 modify v varchar(300), drop key v, drop key v_2, add key v (v);
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(300) default NULL,
- `c` char(10) default NULL,
- `t` text,
- KEY `c` (`c`),
- KEY `t` (`t`(10)),
- KEY `v` (`v`)
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-select count(*) from t1 where v='a';
-count(*)
-10
-select count(*) from t1 where v='a ';
-count(*)
-10
-select count(*) from t1 where v between 'a' and 'a ';
-count(*)
-10
-select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
-count(*)
-10
-select count(*) from t1 where v like 'a%';
-count(*)
-11
-select count(*) from t1 where v like 'a %';
-count(*)
-9
-explain select count(*) from t1 where v='a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 303 const # Using where
-explain select count(*) from t1 where v like 'a%';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range v v 303 NULL # Using where
-explain select count(*) from t1 where v between 'a' and 'a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 303 const # Using where
-explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 303 const # Using where
-explain select * from t1 where v='a';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 303 const # Using where
-select v,count(*) from t1 group by v limit 10;
-v count(*)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-alter table t1 drop key v, add key v (v(30));
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(300) default NULL,
- `c` char(10) default NULL,
- `t` text,
- KEY `c` (`c`),
- KEY `t` (`t`(10)),
- KEY `v` (`v`(30))
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-select count(*) from t1 where v='a';
-count(*)
-10
-select count(*) from t1 where v='a ';
-count(*)
-10
-select count(*) from t1 where v between 'a' and 'a ';
-count(*)
-10
-select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
-count(*)
-10
-select count(*) from t1 where v like 'a%';
-count(*)
-11
-select count(*) from t1 where v like 'a %';
-count(*)
-9
-explain select count(*) from t1 where v='a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 33 const # Using where
-explain select count(*) from t1 where v like 'a%';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range v v 33 NULL # Using where
-explain select count(*) from t1 where v between 'a' and 'a ';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 33 const # Using where
-explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 33 const # Using where
-explain select * from t1 where v='a';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref v v 33 const # Using where
-select v,count(*) from t1 group by v limit 10;
-v count(*)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-alter table t1 modify v varchar(600), drop key v, add key v (v);
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(600) default NULL,
- `c` char(10) default NULL,
- `t` text,
- KEY `c` (`c`),
- KEY `t` (`t`(10)),
- KEY `v` (`v`)
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-select v,count(*) from t1 group by v limit 10;
-v count(*)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-select sql_big_result v,count(t) from t1 group by v limit 10;
-v count(t)
-a 1
-a 10
-b 10
-c 10
-d 10
-e 10
-f 10
-g 10
-h 10
-i 10
-drop table t1;
-create table t1 (a char(10), unique (a));
-insert into t1 values ('a ');
-insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a' for key 1
-alter table t1 modify a varchar(10);
-insert into t1 values ('a '),('a '),('a '),('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
-insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
-insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
-insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
-update t1 set a='a ' where a like 'a%';
-select concat(a,'.') from t1;
-concat(a,'.')
-a .
-update t1 set a='abc ' where a like 'a ';
-select concat(a,'.') from t1;
-concat(a,'.')
-a .
-update t1 set a='a ' where a like 'a %';
-select concat(a,'.') from t1;
-concat(a,'.')
-a .
-update t1 set a='a ' where a like 'a ';
-select concat(a,'.') from t1;
-concat(a,'.')
-a .
-drop table t1;
-create table t1 (v varchar(10), c char(10), t text, key(v(5)), key(c(5)), key(t(5)));
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` text,
- KEY `v` (`v`(5)),
- KEY `c` (`c`(5)),
- KEY `t` (`t`(5))
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-drop table t1;
-create table t1 (v char(10) character set utf8);
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` char(10) character set utf8 default NULL
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-drop table t1;
-create table t1 (v varchar(10), c char(10)) row_format=fixed;
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
-insert into t1 values('a','a'),('a ','a ');
-select concat('*',v,'*',c,'*') from t1;
-concat('*',v,'*',c,'*')
-*a*a*
-*a *a*
-drop table t1;
-create table t1 (v varchar(65530), key(v(10)));
-insert into t1 values(repeat('a',65530));
-select length(v) from t1 where v=repeat('a',65530);
-length(v)
-65530
-drop table t1;
-create table t1(a int, b varchar(12), key ba(b, a));
-insert into t1 values (1, 'A'), (20, NULL);
-explain select * from t1 where a=20 and b is null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref ba ba 20 const,const 1 Using where
-select * from t1 where a=20 and b is null;
-a b
-20 NULL
-drop table t1;
-create table t1 (v varchar(65530), key(v));
-Warnings:
-Warning 1071 Specified key was too long; max key length is MAX_KEY_LENGTH bytes
-drop table if exists t1;
-create table t1 (v varchar(65536));
-Warnings:
-Note 1246 Converting column 'v' from VARCHAR to TEXT
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` mediumtext
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-drop table t1;
-create table t1 (v varchar(65530) character set utf8);
-Warnings:
-Note 1246 Converting column 'v' from VARCHAR to TEXT
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `v` mediumtext character set utf8
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-drop table t1;
-set storage_engine=MyISAM;
-create table t1 (a varchar(255) character set utf8,
-b varchar(255) character set utf8,
-c varchar(255) character set utf8,
-d varchar(255) character set utf8,
-key (a,b,c,d)) engine=bdb;
-drop table t1;
-create table t1 (a varchar(255) character set utf8,
-b varchar(255) character set utf8,
-c varchar(255) character set utf8,
-d varchar(255) character set utf8,
-e varchar(255) character set utf8,
-key (a,b,c,d,e)) engine=bdb;
-ERROR 42000: Specified key was too long; max key length is 3072 bytes
-set autocommit=0;
-create table t1 (a int) engine=bdb;
-commit;
-alter table t1 add primary key(a);
-drop table t1;
-End of 5.0 tests
diff --git a/mysql-test/r/bdb_cache.result b/mysql-test/r/bdb_cache.result
deleted file mode 100644
index 6506ce0412a..00000000000
--- a/mysql-test/r/bdb_cache.result
+++ /dev/null
@@ -1,99 +0,0 @@
-drop table if exists t1, t2, t3;
-flush status;
-set autocommit=0;
-create table t1 (a int not null) engine=bdb;
-insert into t1 values (1),(2),(3);
-select * from t1;
-a
-1
-2
-3
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-drop table t1;
-set autocommit=1;
-create table t1 (a int not null) engine=bdb;
-begin;
-insert into t1 values (1),(2),(3);
-select * from t1;
-a
-1
-2
-3
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-drop table t1;
-create table t1 (a int not null) engine=bdb;
-create table t2 (a int not null) engine=bdb;
-create table t3 (a int not null) engine=bdb;
-insert into t1 values (1),(2);
-insert into t2 values (1),(2);
-insert into t3 values (1),(2);
-select * from t1;
-a
-1
-2
-select * from t2;
-a
-1
-2
-select * from t3;
-a
-1
-2
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-begin;
-select * from t1;
-a
-1
-2
-select * from t2;
-a
-1
-2
-select * from t3;
-a
-1
-2
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-insert into t1 values (3);
-insert into t2 values (3);
-insert into t1 values (4);
-select * from t1;
-a
-1
-2
-3
-4
-select * from t2;
-a
-1
-2
-3
-select * from t3;
-a
-1
-2
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-commit;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-drop table if exists t1, t2, t3;
diff --git a/mysql-test/r/bdb_gis.result b/mysql-test/r/bdb_gis.result
deleted file mode 100644
index 3187d7bef99..00000000000
--- a/mysql-test/r/bdb_gis.result
+++ /dev/null
@@ -1,583 +0,0 @@
-SET storage_engine=bdb;
-DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE gis_point (fid INTEGER, g POINT);
-CREATE TABLE gis_line (fid INTEGER, g LINESTRING);
-CREATE TABLE gis_polygon (fid INTEGER, g POLYGON);
-CREATE TABLE gis_multi_point (fid INTEGER, g MULTIPOINT);
-CREATE TABLE gis_multi_line (fid INTEGER, g MULTILINESTRING);
-CREATE TABLE gis_multi_polygon (fid INTEGER, g MULTIPOLYGON);
-CREATE TABLE gis_geometrycollection (fid INTEGER, g GEOMETRYCOLLECTION);
-CREATE TABLE gis_geometry (fid INTEGER, g GEOMETRY);
-SHOW CREATE TABLE gis_point;
-Table Create Table
-gis_point CREATE TABLE `gis_point` (
- `fid` int(11) default NULL,
- `g` point default NULL
-) ENGINE=BerkeleyDB DEFAULT CHARSET=latin1
-SHOW FIELDS FROM gis_point;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g point YES NULL
-SHOW FIELDS FROM gis_line;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g linestring YES NULL
-SHOW FIELDS FROM gis_polygon;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g polygon YES NULL
-SHOW FIELDS FROM gis_multi_point;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multipoint YES NULL
-SHOW FIELDS FROM gis_multi_line;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multilinestring YES NULL
-SHOW FIELDS FROM gis_multi_polygon;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multipolygon YES NULL
-SHOW FIELDS FROM gis_geometrycollection;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g geometrycollection YES NULL
-SHOW FIELDS FROM gis_geometry;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g geometry YES NULL
-INSERT INTO gis_point VALUES
-(101, PointFromText('POINT(10 10)')),
-(102, PointFromText('POINT(20 10)')),
-(103, PointFromText('POINT(20 20)')),
-(104, PointFromWKB(AsWKB(PointFromText('POINT(10 20)'))));
-INSERT INTO gis_line VALUES
-(105, LineFromText('LINESTRING(0 0,0 10,10 0)')),
-(106, LineStringFromText('LINESTRING(10 10,20 10,20 20,10 20,10 10)')),
-(107, LineStringFromWKB(LineString(Point(10, 10), Point(40, 10))));
-INSERT INTO gis_polygon VALUES
-(108, PolygonFromText('POLYGON((10 10,20 10,20 20,10 20,10 10))')),
-(109, PolyFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))')),
-(110, PolyFromWKB(Polygon(LineString(Point(0, 0), Point(30, 0), Point(30, 30), Point(0, 0)))));
-INSERT INTO gis_multi_point VALUES
-(111, MultiPointFromText('MULTIPOINT(0 0,10 10,10 20,20 20)')),
-(112, MPointFromText('MULTIPOINT(1 1,11 11,11 21,21 21)')),
-(113, MPointFromWKB(MultiPoint(Point(3, 6), Point(4, 10))));
-INSERT INTO gis_multi_line VALUES
-(114, MultiLineStringFromText('MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))')),
-(115, MLineFromText('MULTILINESTRING((10 48,10 21,10 0))')),
-(116, MLineFromWKB(MultiLineString(LineString(Point(1, 2), Point(3, 5)), LineString(Point(2, 5), Point(5, 8), Point(21, 7)))));
-INSERT INTO gis_multi_polygon VALUES
-(117, MultiPolygonFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
-(118, MPolyFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
-(119, MPolyFromWKB(MultiPolygon(Polygon(LineString(Point(0, 3), Point(3, 3), Point(3, 0), Point(0, 3))))));
-INSERT INTO gis_geometrycollection VALUES
-(120, GeomCollFromText('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
-(121, GeometryFromWKB(GeometryCollection(Point(44, 6), LineString(Point(3, 6), Point(7, 9)))));
-INSERT into gis_geometry SELECT * FROM gis_point;
-INSERT into gis_geometry SELECT * FROM gis_line;
-INSERT into gis_geometry SELECT * FROM gis_polygon;
-INSERT into gis_geometry SELECT * FROM gis_multi_point;
-INSERT into gis_geometry SELECT * FROM gis_multi_line;
-INSERT into gis_geometry SELECT * FROM gis_multi_polygon;
-INSERT into gis_geometry SELECT * FROM gis_geometrycollection;
-SELECT fid, AsText(g) FROM gis_point ORDER by fid;
-fid AsText(g)
-101 POINT(10 10)
-102 POINT(20 10)
-103 POINT(20 20)
-104 POINT(10 20)
-SELECT fid, AsText(g) FROM gis_line ORDER by fid;
-fid AsText(g)
-105 LINESTRING(0 0,0 10,10 0)
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-107 LINESTRING(10 10,40 10)
-SELECT fid, AsText(g) FROM gis_polygon ORDER by fid;
-fid AsText(g)
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-110 POLYGON((0 0,30 0,30 30,0 0))
-SELECT fid, AsText(g) FROM gis_multi_point ORDER by fid;
-fid AsText(g)
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
-113 MULTIPOINT(3 6,4 10)
-SELECT fid, AsText(g) FROM gis_multi_line ORDER by fid;
-fid AsText(g)
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
-115 MULTILINESTRING((10 48,10 21,10 0))
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
-SELECT fid, AsText(g) FROM gis_multi_polygon ORDER by fid;
-fid AsText(g)
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-SELECT fid, AsText(g) FROM gis_geometrycollection ORDER by fid;
-fid AsText(g)
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-SELECT fid, AsText(g) FROM gis_geometry ORDER by fid;
-fid AsText(g)
-101 POINT(10 10)
-102 POINT(20 10)
-103 POINT(20 20)
-104 POINT(10 20)
-105 LINESTRING(0 0,0 10,10 0)
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-107 LINESTRING(10 10,40 10)
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-110 POLYGON((0 0,30 0,30 30,0 0))
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
-113 MULTIPOINT(3 6,4 10)
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
-115 MULTILINESTRING((10 48,10 21,10 0))
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-SELECT fid, Dimension(g) FROM gis_geometry ORDER by fid;
-fid Dimension(g)
-101 0
-102 0
-103 0
-104 0
-105 1
-106 1
-107 1
-108 2
-109 2
-110 2
-111 0
-112 0
-113 0
-114 1
-115 1
-116 1
-117 2
-118 2
-119 2
-120 1
-121 1
-SELECT fid, GeometryType(g) FROM gis_geometry ORDER by fid;
-fid GeometryType(g)
-101 POINT
-102 POINT
-103 POINT
-104 POINT
-105 LINESTRING
-106 LINESTRING
-107 LINESTRING
-108 POLYGON
-109 POLYGON
-110 POLYGON
-111 MULTIPOINT
-112 MULTIPOINT
-113 MULTIPOINT
-114 MULTILINESTRING
-115 MULTILINESTRING
-116 MULTILINESTRING
-117 MULTIPOLYGON
-118 MULTIPOLYGON
-119 MULTIPOLYGON
-120 GEOMETRYCOLLECTION
-121 GEOMETRYCOLLECTION
-SELECT fid, IsEmpty(g) FROM gis_geometry ORDER by fid;
-fid IsEmpty(g)
-101 0
-102 0
-103 0
-104 0
-105 0
-106 0
-107 0
-108 0
-109 0
-110 0
-111 0
-112 0
-113 0
-114 0
-115 0
-116 0
-117 0
-118 0
-119 0
-120 0
-121 0
-SELECT fid, AsText(Envelope(g)) FROM gis_geometry ORDER by fid;
-fid AsText(Envelope(g))
-101 POLYGON((10 10,10 10,10 10,10 10,10 10))
-102 POLYGON((20 10,20 10,20 10,20 10,20 10))
-103 POLYGON((20 20,20 20,20 20,20 20,20 20))
-104 POLYGON((10 20,10 20,10 20,10 20,10 20))
-105 POLYGON((0 0,10 0,10 10,0 10,0 0))
-106 POLYGON((10 10,20 10,20 20,10 20,10 10))
-107 POLYGON((10 10,40 10,40 10,10 10,10 10))
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0))
-110 POLYGON((0 0,30 0,30 30,0 30,0 0))
-111 POLYGON((0 0,20 0,20 20,0 20,0 0))
-112 POLYGON((1 1,21 1,21 21,1 21,1 1))
-113 POLYGON((3 6,4 6,4 10,3 10,3 6))
-114 POLYGON((10 0,16 0,16 48,10 48,10 0))
-115 POLYGON((10 0,10 0,10 48,10 48,10 0))
-116 POLYGON((1 2,21 2,21 8,1 8,1 2))
-117 POLYGON((28 0,84 0,84 42,28 42,28 0))
-118 POLYGON((28 0,84 0,84 42,28 42,28 0))
-119 POLYGON((0 0,3 0,3 3,0 3,0 0))
-120 POLYGON((0 0,10 0,10 10,0 10,0 0))
-121 POLYGON((3 6,44 6,44 9,3 9,3 6))
-explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelope(g)) from gis_geometry;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
-Warnings:
-Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
-SELECT fid, X(g) FROM gis_point ORDER by fid;
-fid X(g)
-101 10
-102 20
-103 20
-104 10
-SELECT fid, Y(g) FROM gis_point ORDER by fid;
-fid Y(g)
-101 10
-102 10
-103 20
-104 20
-explain extended select X(g),Y(g) FROM gis_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
-Warnings:
-Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
-SELECT fid, AsText(StartPoint(g)) FROM gis_line ORDER by fid;
-fid AsText(StartPoint(g))
-105 POINT(0 0)
-106 POINT(10 10)
-107 POINT(10 10)
-SELECT fid, AsText(EndPoint(g)) FROM gis_line ORDER by fid;
-fid AsText(EndPoint(g))
-105 POINT(10 0)
-106 POINT(10 10)
-107 POINT(40 10)
-SELECT fid, GLength(g) FROM gis_line ORDER by fid;
-fid GLength(g)
-105 24.142135623731
-106 40
-107 30
-SELECT fid, NumPoints(g) FROM gis_line ORDER by fid;
-fid NumPoints(g)
-105 3
-106 5
-107 2
-SELECT fid, AsText(PointN(g, 2)) FROM gis_line ORDER by fid;
-fid AsText(PointN(g, 2))
-105 POINT(0 10)
-106 POINT(20 10)
-107 POINT(40 10)
-SELECT fid, IsClosed(g) FROM gis_line ORDER by fid;
-fid IsClosed(g)
-105 0
-106 1
-107 0
-explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),NumPoints(g),AsText(PointN(g, 2)),IsClosed(g) FROM gis_line;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
-SELECT fid, AsText(Centroid(g)) FROM gis_polygon ORDER by fid;
-fid AsText(Centroid(g))
-108 POINT(15 15)
-109 POINT(25.4166666666667 25.4166666666667)
-110 POINT(20 10)
-SELECT fid, Area(g) FROM gis_polygon ORDER by fid;
-fid Area(g)
-108 100
-109 2400
-110 450
-SELECT fid, AsText(ExteriorRing(g)) FROM gis_polygon ORDER by fid;
-fid AsText(ExteriorRing(g))
-108 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-109 LINESTRING(0 0,50 0,50 50,0 50,0 0)
-110 LINESTRING(0 0,30 0,30 30,0 0)
-SELECT fid, NumInteriorRings(g) FROM gis_polygon ORDER by fid;
-fid NumInteriorRings(g)
-108 0
-109 1
-110 0
-SELECT fid, AsText(InteriorRingN(g, 1)) FROM gis_polygon ORDER by fid;
-fid AsText(InteriorRingN(g, 1))
-108 NULL
-109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-110 NULL
-explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumInteriorRings(g),AsText(InteriorRingN(g, 1)) FROM gis_polygon;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
-SELECT fid, IsClosed(g) FROM gis_multi_line ORDER by fid;
-fid IsClosed(g)
-114 0
-115 0
-116 0
-SELECT fid, AsText(Centroid(g)) FROM gis_multi_polygon ORDER by fid;
-fid AsText(Centroid(g))
-117 POINT(55.5885277530424 17.426536064114)
-118 POINT(55.5885277530424 17.426536064114)
-119 POINT(2 2)
-SELECT fid, Area(g) FROM gis_multi_polygon ORDER by fid;
-fid Area(g)
-117 1684.5
-118 1684.5
-119 4.5
-SELECT fid, NumGeometries(g) from gis_multi_point ORDER by fid;
-fid NumGeometries(g)
-111 4
-112 4
-113 2
-SELECT fid, NumGeometries(g) from gis_multi_line ORDER by fid;
-fid NumGeometries(g)
-114 2
-115 1
-116 2
-SELECT fid, NumGeometries(g) from gis_multi_polygon ORDER by fid;
-fid NumGeometries(g)
-117 2
-118 2
-119 1
-SELECT fid, NumGeometries(g) from gis_geometrycollection ORDER by fid;
-fid NumGeometries(g)
-120 2
-121 2
-explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point ORDER by fid;
-fid AsText(GeometryN(g, 2))
-111 POINT(10 10)
-112 POINT(11 11)
-113 POINT(4 10)
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_line ORDER by fid;
-fid AsText(GeometryN(g, 2))
-114 LINESTRING(16 0,16 23,16 48)
-115 NULL
-116 LINESTRING(2 5,5 8,21 7)
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_polygon ORDER by fid;
-fid AsText(GeometryN(g, 2))
-117 POLYGON((59 18,67 18,67 13,59 13,59 18))
-118 POLYGON((59 18,67 18,67 13,59 13,59 18))
-119 NULL
-SELECT fid, AsText(GeometryN(g, 2)) from gis_geometrycollection ORDER by fid;
-fid AsText(GeometryN(g, 2))
-120 LINESTRING(0 0,10 10)
-121 LINESTRING(3 6,7 9)
-SELECT fid, AsText(GeometryN(g, 1)) from gis_geometrycollection ORDER by fid;
-fid AsText(GeometryN(g, 1))
-120 POINT(0 0)
-121 POINT(44 6)
-explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
-SELECT g1.fid as first, g2.fid as second,
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-first second w c o e d t i r
-120 120 1 1 0 1 0 0 1 0
-120 121 0 0 1 0 0 0 1 0
-121 120 0 0 1 0 0 0 1 0
-121 121 1 1 0 1 0 0 1 0
-explain extended SELECT g1.fid as first, g2.fid as second,
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE g2 ALL NULL NULL NULL NULL 2
-Warnings:
-Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
-DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE t1 (
-gp point,
-ln linestring,
-pg polygon,
-mp multipoint,
-mln multilinestring,
-mpg multipolygon,
-gc geometrycollection,
-gm geometry
-);
-SHOW FIELDS FROM t1;
-Field Type Null Key Default Extra
-gp point YES NULL
-ln linestring YES NULL
-pg polygon YES NULL
-mp multipoint YES NULL
-mln multilinestring YES NULL
-mpg multipolygon YES NULL
-gc geometrycollection YES NULL
-gm geometry YES NULL
-ALTER TABLE t1 ADD fid INT;
-SHOW FIELDS FROM t1;
-Field Type Null Key Default Extra
-gp point YES NULL
-ln linestring YES NULL
-pg polygon YES NULL
-mp multipoint YES NULL
-mln multilinestring YES NULL
-mpg multipolygon YES NULL
-gc geometrycollection YES NULL
-gm geometry YES NULL
-fid int(11) YES NULL
-DROP TABLE t1;
-create table t1 (a geometry not null);
-insert into t1 values (GeomFromText('Point(1 2)'));
-insert into t1 values ('Garbage');
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert IGNORE into t1 values ('Garbage');
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-drop table t1;
-create table t1 (fl geometry not null);
-insert into t1 values (1);
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (1.11);
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values ("qwerty");
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (pointfromtext('point(1,1)'));
-ERROR 23000: Column 'fl' cannot be null
-drop table t1;
-End of 4.1 tests
-CREATE TABLE t1 (name VARCHAR(100), square GEOMETRY);
-INSERT INTO t1 VALUES("center", GeomFromText('POLYGON (( 0 0, 0 2, 2 2, 2 0, 0 0))'));
-INSERT INTO t1 VALUES("small", GeomFromText('POLYGON (( 0 0, 0 1, 1 1, 1 0, 0 0))'));
-INSERT INTO t1 VALUES("big", GeomFromText('POLYGON (( 0 0, 0 3, 3 3, 3 0, 0 0))'));
-INSERT INTO t1 VALUES("up", GeomFromText('POLYGON (( 0 1, 0 3, 2 3, 2 1, 0 1))'));
-INSERT INTO t1 VALUES("up2", GeomFromText('POLYGON (( 0 2, 0 4, 2 4, 2 2, 0 2))'));
-INSERT INTO t1 VALUES("up3", GeomFromText('POLYGON (( 0 3, 0 5, 2 5, 2 3, 0 3))'));
-INSERT INTO t1 VALUES("down", GeomFromText('POLYGON (( 0 -1, 0 1, 2 1, 2 -1, 0 -1))'));
-INSERT INTO t1 VALUES("down2", GeomFromText('POLYGON (( 0 -2, 0 0, 2 0, 2 -2, 0 -2))'));
-INSERT INTO t1 VALUES("down3", GeomFromText('POLYGON (( 0 -3, 0 -1, 2 -1, 2 -3, 0 -3))'));
-INSERT INTO t1 VALUES("right", GeomFromText('POLYGON (( 1 0, 1 2, 3 2, 3 0, 1 0))'));
-INSERT INTO t1 VALUES("right2", GeomFromText('POLYGON (( 2 0, 2 2, 4 2, 4 0, 2 0))'));
-INSERT INTO t1 VALUES("right3", GeomFromText('POLYGON (( 3 0, 3 2, 5 2, 5 0, 3 0))'));
-INSERT INTO t1 VALUES("left", GeomFromText('POLYGON (( -1 0, -1 2, 1 2, 1 0, -1 0))'));
-INSERT INTO t1 VALUES("left2", GeomFromText('POLYGON (( -2 0, -2 2, 0 2, 0 0, -2 0))'));
-INSERT INTO t1 VALUES("left3", GeomFromText('POLYGON (( -3 0, -3 2, -1 2, -1 0, -3 0))'));
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrcontains FROM t1 a1 JOIN t1 a2 ON MBRContains( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrcontains
-center,small
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrdisjoint FROM t1 a1 JOIN t1 a2 ON MBRDisjoint( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrdisjoint
-down3,left3,right3,up3
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrequal FROM t1 a1 JOIN t1 a2 ON MBREqual( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrequal
-center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrintersect FROM t1 a1 JOIN t1 a2 ON MBRIntersects( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrintersect
-big,center,down,down2,left,left2,right,right2,small,up,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbroverlaps FROM t1 a1 JOIN t1 a2 ON MBROverlaps( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbroverlaps
-down,left,right,up
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrtouches FROM t1 a1 JOIN t1 a2 ON MBRTouches( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrtouches
-down2,left2,right2,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrwithin FROM t1 a1 JOIN t1 a2 ON MBRWithin( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrwithin
-big,center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS contains FROM t1 a1 JOIN t1 a2 ON Contains( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-contains
-center,small
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS disjoint FROM t1 a1 JOIN t1 a2 ON Disjoint( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-disjoint
-down3,left3,right3,up3
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS equals FROM t1 a1 JOIN t1 a2 ON Equals( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-equals
-center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS intersect FROM t1 a1 JOIN t1 a2 ON Intersects( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-intersect
-big,center,down,down2,left,left2,right,right2,small,up,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS overlaps FROM t1 a1 JOIN t1 a2 ON Overlaps( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-overlaps
-down,left,right,up
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS touches FROM t1 a1 JOIN t1 a2 ON Touches( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-touches
-down2,left2,right2,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS within FROM t1 a1 JOIN t1 a2 ON Within( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-within
-big,center
-SET @vert1 = GeomFromText('POLYGON ((0 -2, 0 2, 0 -2))');
-SET @horiz1 = GeomFromText('POLYGON ((-2 0, 2 0, -2 0))');
-SET @horiz2 = GeomFromText('POLYGON ((-1 0, 3 0, -1 0))');
-SET @horiz3 = GeomFromText('POLYGON ((2 0, 3 0, 2 0))');
-SET @point1 = GeomFromText('POLYGON ((0 0))');
-SET @point2 = GeomFromText('POLYGON ((-2 0))');
-SELECT GROUP_CONCAT(a1.name ORDER BY a1.name) AS overlaps FROM t1 a1 WHERE Overlaps(a1.square, @vert1) GROUP BY a1.name;
-overlaps
-SELECT GROUP_CONCAT(a1.name ORDER BY a1.name) AS overlaps FROM t1 a1 WHERE Overlaps(a1.square, @horiz1) GROUP BY a1.name;
-overlaps
-SELECT Overlaps(@horiz1, @vert1) FROM DUAL;
-Overlaps(@horiz1, @vert1)
-0
-SELECT Overlaps(@horiz1, @horiz2) FROM DUAL;
-Overlaps(@horiz1, @horiz2)
-1
-SELECT Overlaps(@horiz1, @horiz3) FROM DUAL;
-Overlaps(@horiz1, @horiz3)
-0
-SELECT Overlaps(@horiz1, @point1) FROM DUAL;
-Overlaps(@horiz1, @point1)
-0
-SELECT Overlaps(@horiz1, @point2) FROM DUAL;
-Overlaps(@horiz1, @point2)
-0
-DROP TABLE t1;
-End of 5.0 tests
-CREATE TABLE t1 (p POINT);
-CREATE TABLE t2 (p POINT, INDEX(p));
-INSERT INTO t1 VALUES (POINTFROMTEXT('POINT(1 2)'));
-INSERT INTO t2 VALUES (POINTFROMTEXT('POINT(1 2)'));
-SELECT COUNT(*) FROM t1 WHERE p=POINTFROMTEXT('POINT(1 2)');
-COUNT(*)
-1
-EXPLAIN
-SELECT COUNT(*) FROM t2 WHERE p=POINTFROMTEXT('POINT(1 2)');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ref p p 28 const 1 Using where
-SELECT COUNT(*) FROM t2 WHERE p=POINTFROMTEXT('POINT(1 2)');
-COUNT(*)
-1
-INSERT INTO t1 VALUES (POINTFROMTEXT('POINT(1 2)'));
-INSERT INTO t2 VALUES (POINTFROMTEXT('POINT(1 2)'));
-EXPLAIN
-SELECT COUNT(*) FROM t1 WHERE p=POINTFROMTEXT('POINT(1 2)');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
-SELECT COUNT(*) FROM t1 WHERE p=POINTFROMTEXT('POINT(1 2)');
-COUNT(*)
-2
-EXPLAIN
-SELECT COUNT(*) FROM t2 WHERE p=POINTFROMTEXT('POINT(1 2)');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL p NULL NULL NULL 2 Using where
-SELECT COUNT(*) FROM t2 WHERE p=POINTFROMTEXT('POINT(1 2)');
-COUNT(*)
-2
-EXPLAIN
-SELECT COUNT(*) FROM t2 IGNORE INDEX(p) WHERE p=POINTFROMTEXT('POINT(1 2)');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 2 Using where
-SELECT COUNT(*) FROM t2 IGNORE INDEX(p) WHERE p=POINTFROMTEXT('POINT(1 2)');
-COUNT(*)
-2
-DROP TABLE t1, t2;
-End of 5.0 tests
diff --git a/mysql-test/r/bdb_notembedded.result b/mysql-test/r/bdb_notembedded.result
deleted file mode 100644
index 71fe9696662..00000000000
--- a/mysql-test/r/bdb_notembedded.result
+++ /dev/null
@@ -1,41 +0,0 @@
-set autocommit=1;
-reset master;
-create table bug16206 (a int);
-insert into bug16206 values(1);
-start transaction;
-insert into bug16206 values(2);
-commit;
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-f n Format_desc 1 n Server ver: VERSION, Binlog ver: 4
-f n Query 1 n use `test`; create table bug16206 (a int)
-f n Query 1 n use `test`; insert into bug16206 values(1)
-f n Query 1 n use `test`; insert into bug16206 values(2)
-drop table bug16206;
-reset master;
-create table bug16206 (a int) engine= bdb;
-insert into bug16206 values(0);
-insert into bug16206 values(1);
-start transaction;
-insert into bug16206 values(2);
-commit;
-insert into bug16206 values(3);
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-f n Format_desc 1 n Server ver: VERSION, Binlog ver: 4
-f n Query 1 n use `test`; create table bug16206 (a int) engine= bdb
-f n Query 1 n BEGIN
-f n Query 1 n use `test`; insert into bug16206 values(0)
-f n Query 1 n COMMIT
-f n Query 1 n BEGIN
-f n Query 1 n use `test`; insert into bug16206 values(1)
-f n Query 1 n COMMIT
-f n Query 1 n BEGIN
-f n Query 1 n use `test`; insert into bug16206 values(2)
-f n Query 1 n COMMIT
-f n Query 1 n BEGIN
-f n Query 1 n use `test`; insert into bug16206 values(3)
-f n Query 1 n COMMIT
-drop table bug16206;
-set autocommit=0;
-End of 5.0 tests
diff --git a/mysql-test/r/bench_count_distinct.result b/mysql-test/r/bench_count_distinct.result
index 62312870f59..79e12afd237 100644
--- a/mysql-test/r/bench_count_distinct.result
+++ b/mysql-test/r/bench_count_distinct.result
@@ -4,8 +4,8 @@ select count(distinct n) from t1;
count(distinct n)
100
explain extended select count(distinct n) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL n 4 NULL 200 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index NULL n 4 NULL 200 100.00 Using index
Warnings:
Note 1003 select count(distinct `test`.`t1`.`n`) AS `count(distinct n)` from `test`.`t1`
drop table t1;
diff --git a/mysql-test/r/bigint.result b/mysql-test/r/bigint.result
index b0d114f1655..4a5b8fcf4aa 100644
--- a/mysql-test/r/bigint.result
+++ b/mysql-test/r/bigint.result
@@ -47,7 +47,7 @@ drop table t1;
create table t1 ( a int not null default 1, big bigint );
insert into t1 (big) values (-1),(12345678901234567),(9223372036854775807),(18446744073709551615);
Warnings:
-Warning 1264 Out of range value adjusted for column 'big' at row 4
+Warning 1264 Out of range value for column 'big' at row 4
select * from t1;
a big
1 -1
@@ -62,7 +62,7 @@ min(big) max(big) max(big)-1
-1 9223372036854775807 9223372036854775806
alter table t1 modify big bigint unsigned not null;
Warnings:
-Warning 1264 Out of range value adjusted for column 'big' at row 1
+Warning 1264 Out of range value for column 'big' at row 1
select min(big),max(big),max(big)-1 from t1;
min(big) max(big) max(big)-1
0 9223372036854775807 9223372036854775806
@@ -92,7 +92,7 @@ min(big) max(big) max(big)-1
0 18446744073709551615 18446744073709551614
alter table t1 modify big bigint not null;
Warnings:
-Warning 1264 Out of range value adjusted for column 'big' at row 5
+Warning 1264 Out of range value for column 'big' at row 5
select * from t1;
a big
1 0
@@ -180,14 +180,14 @@ create table t1 select 1 as 'a';
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(1) NOT NULL default '0'
+ `a` int(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 select 9223372036854775809 as 'a';
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bigint(19) unsigned NOT NULL default '0'
+ `a` bigint(19) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t1;
a
@@ -210,10 +210,10 @@ drop table t1;
create table t1 ( quantity decimal(2) unsigned);
insert into t1 values (500), (-500), (~0), (-1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'quantity' at row 1
-Warning 1264 Out of range value adjusted for column 'quantity' at row 2
-Warning 1264 Out of range value adjusted for column 'quantity' at row 3
-Warning 1264 Out of range value adjusted for column 'quantity' at row 4
+Warning 1264 Out of range value for column 'quantity' at row 1
+Warning 1264 Out of range value for column 'quantity' at row 2
+Warning 1264 Out of range value for column 'quantity' at row 3
+Warning 1264 Out of range value for column 'quantity' at row 4
select * from t1;
quantity
99
@@ -394,3 +394,13 @@ select --9223372036854775808, ---9223372036854775808, ----9223372036854775808;
select -(-9223372036854775808), -(-(-9223372036854775808));
-(-9223372036854775808) -(-(-9223372036854775808))
9223372036854775808 -9223372036854775808
+create table t1 select -9223372036854775808 bi;
+describe t1;
+Field Type Null Key Default Extra
+bi bigint(20) NO 0
+drop table t1;
+create table t1 select -9223372036854775809 bi;
+describe t1;
+Field Type Null Key Default Extra
+bi decimal(19,0) NO 0
+drop table t1;
diff --git a/mysql-test/r/binary.result b/mysql-test/r/binary.result
index c8b3768b7ce..be87c25e932 100644
--- a/mysql-test/r/binary.result
+++ b/mysql-test/r/binary.result
@@ -138,7 +138,7 @@ create table t1 (a binary);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` binary(1) default NULL
+ `a` binary(1) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (col1 binary(4));
diff --git a/mysql-test/r/binlog.result b/mysql-test/r/binlog.result
deleted file mode 100644
index c885c4ce130..00000000000
--- a/mysql-test/r/binlog.result
+++ /dev/null
@@ -1,656 +0,0 @@
-drop table if exists t1, t2;
-reset master;
-create table t1 (a int) engine=innodb;
-create table t2 (a int) engine=innodb;
-begin;
-insert t1 values (5);
-commit;
-begin;
-insert t2 values (5);
-commit;
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int) engine=innodb
-master-bin.000001 # Query 1 # use `test`; create table t2 (a int) engine=innodb
-master-bin.000001 # Query 1 # BEGIN
-master-bin.000001 # Query 1 # use `test`; insert t1 values (5)
-master-bin.000001 # Xid 1 # COMMIT /* XID */
-master-bin.000001 # Query 1 # BEGIN
-master-bin.000001 # Query 1 # use `test`; insert t2 values (5)
-master-bin.000001 # Xid 1 # COMMIT /* XID */
-drop table t1,t2;
-reset master;
-create table t1 (n int) engine=innodb;
-begin;
-commit;
-drop table t1;
-show binlog events in 'master-bin.000001' from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; create table t1 (n int) engine=innodb
-master-bin.000001 # Query 1 # BEGIN
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(100 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(99 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(98 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(97 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(96 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(95 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(94 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(93 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(92 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(91 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(90 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(89 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(88 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(87 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(86 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(85 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(84 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(83 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(82 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(81 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(80 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(79 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(78 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(77 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(76 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(75 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(74 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(73 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(72 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(71 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(70 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(69 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(68 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(67 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(66 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(65 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(64 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(63 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(62 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(61 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(60 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(59 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(58 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(57 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(56 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(55 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(54 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(53 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(52 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(51 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(50 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(49 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(48 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(47 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(46 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(45 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(44 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(43 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(42 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(41 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(40 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(39 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(38 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(37 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(36 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(35 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(34 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(33 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(32 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(31 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(30 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(29 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(28 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(27 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(26 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(25 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(24 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(23 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(22 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(21 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(20 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(19 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(18 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(17 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(16 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(15 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(14 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(13 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(12 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(11 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(10 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(9 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(8 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(7 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(6 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(5 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(4 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(3 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(2 + 4)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(1 + 4)
-master-bin.000001 # Xid 1 # COMMIT /* XID */
-master-bin.000001 # Rotate 1 # master-bin.000002;pos=4
-show binlog events in 'master-bin.000002' from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000002 # Query 1 # use `test`; drop table t1
-set @ac = @@autocommit;
-set autocommit= 0;
-reset master;
-create table t1(n int) engine=innodb;
-begin;
-insert into t1 values (1);
-insert into t1 values (2);
-insert into t1 values (3);
-commit;
-drop table t1;
-show binlog events from 0;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server version, Binlog ver: 4
-master-bin.000001 98 Query 1 197 use `test`; create table t1(n int) engine=innodb
-master-bin.000001 197 Query 1 265 BEGIN
-master-bin.000001 265 Query 1 353 use `test`; insert into t1 values (1)
-master-bin.000001 353 Query 1 441 use `test`; insert into t1 values (2)
-master-bin.000001 441 Query 1 529 use `test`; insert into t1 values (3)
-master-bin.000001 529 Xid 1 556 COMMIT /* XID */
-master-bin.000001 556 Query 1 632 use `test`; drop table t1
-set @bcs = @@binlog_cache_size;
-set global binlog_cache_size=4096;
-reset master;
-create table t1 (a int) engine=innodb;
-show binlog events from 0;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server version, Binlog ver: 4
-master-bin.000001 98 Query 1 198 use `test`; create table t1 (a int) engine=innodb
-master-bin.000001 198 Query 1 266 BEGIN
-master-bin.000001 266 Query 1 357 use `test`; insert into t1 values( 400 )
-master-bin.000001 357 Query 1 448 use `test`; insert into t1 values( 399 )
-master-bin.000001 448 Query 1 539 use `test`; insert into t1 values( 398 )
-master-bin.000001 539 Query 1 630 use `test`; insert into t1 values( 397 )
-master-bin.000001 630 Query 1 721 use `test`; insert into t1 values( 396 )
-master-bin.000001 721 Query 1 812 use `test`; insert into t1 values( 395 )
-master-bin.000001 812 Query 1 903 use `test`; insert into t1 values( 394 )
-master-bin.000001 903 Query 1 994 use `test`; insert into t1 values( 393 )
-master-bin.000001 994 Query 1 1085 use `test`; insert into t1 values( 392 )
-master-bin.000001 1085 Query 1 1176 use `test`; insert into t1 values( 391 )
-master-bin.000001 1176 Query 1 1267 use `test`; insert into t1 values( 390 )
-master-bin.000001 1267 Query 1 1358 use `test`; insert into t1 values( 389 )
-master-bin.000001 1358 Query 1 1449 use `test`; insert into t1 values( 388 )
-master-bin.000001 1449 Query 1 1540 use `test`; insert into t1 values( 387 )
-master-bin.000001 1540 Query 1 1631 use `test`; insert into t1 values( 386 )
-master-bin.000001 1631 Query 1 1722 use `test`; insert into t1 values( 385 )
-master-bin.000001 1722 Query 1 1813 use `test`; insert into t1 values( 384 )
-master-bin.000001 1813 Query 1 1904 use `test`; insert into t1 values( 383 )
-master-bin.000001 1904 Query 1 1995 use `test`; insert into t1 values( 382 )
-master-bin.000001 1995 Query 1 2086 use `test`; insert into t1 values( 381 )
-master-bin.000001 2086 Query 1 2177 use `test`; insert into t1 values( 380 )
-master-bin.000001 2177 Query 1 2268 use `test`; insert into t1 values( 379 )
-master-bin.000001 2268 Query 1 2359 use `test`; insert into t1 values( 378 )
-master-bin.000001 2359 Query 1 2450 use `test`; insert into t1 values( 377 )
-master-bin.000001 2450 Query 1 2541 use `test`; insert into t1 values( 376 )
-master-bin.000001 2541 Query 1 2632 use `test`; insert into t1 values( 375 )
-master-bin.000001 2632 Query 1 2723 use `test`; insert into t1 values( 374 )
-master-bin.000001 2723 Query 1 2814 use `test`; insert into t1 values( 373 )
-master-bin.000001 2814 Query 1 2905 use `test`; insert into t1 values( 372 )
-master-bin.000001 2905 Query 1 2996 use `test`; insert into t1 values( 371 )
-master-bin.000001 2996 Query 1 3087 use `test`; insert into t1 values( 370 )
-master-bin.000001 3087 Query 1 3178 use `test`; insert into t1 values( 369 )
-master-bin.000001 3178 Query 1 3269 use `test`; insert into t1 values( 368 )
-master-bin.000001 3269 Query 1 3360 use `test`; insert into t1 values( 367 )
-master-bin.000001 3360 Query 1 3451 use `test`; insert into t1 values( 366 )
-master-bin.000001 3451 Query 1 3542 use `test`; insert into t1 values( 365 )
-master-bin.000001 3542 Query 1 3633 use `test`; insert into t1 values( 364 )
-master-bin.000001 3633 Query 1 3724 use `test`; insert into t1 values( 363 )
-master-bin.000001 3724 Query 1 3815 use `test`; insert into t1 values( 362 )
-master-bin.000001 3815 Query 1 3906 use `test`; insert into t1 values( 361 )
-master-bin.000001 3906 Query 1 3997 use `test`; insert into t1 values( 360 )
-master-bin.000001 3997 Query 1 4088 use `test`; insert into t1 values( 359 )
-master-bin.000001 4088 Query 1 4179 use `test`; insert into t1 values( 358 )
-master-bin.000001 4179 Query 1 4270 use `test`; insert into t1 values( 357 )
-master-bin.000001 4270 Query 1 4361 use `test`; insert into t1 values( 356 )
-master-bin.000001 4361 Query 1 4452 use `test`; insert into t1 values( 355 )
-master-bin.000001 4452 Query 1 4543 use `test`; insert into t1 values( 354 )
-master-bin.000001 4543 Query 1 4634 use `test`; insert into t1 values( 353 )
-master-bin.000001 4634 Query 1 4725 use `test`; insert into t1 values( 352 )
-master-bin.000001 4725 Query 1 4816 use `test`; insert into t1 values( 351 )
-master-bin.000001 4816 Query 1 4907 use `test`; insert into t1 values( 350 )
-master-bin.000001 4907 Query 1 4998 use `test`; insert into t1 values( 349 )
-master-bin.000001 4998 Query 1 5089 use `test`; insert into t1 values( 348 )
-master-bin.000001 5089 Query 1 5180 use `test`; insert into t1 values( 347 )
-master-bin.000001 5180 Query 1 5271 use `test`; insert into t1 values( 346 )
-master-bin.000001 5271 Query 1 5362 use `test`; insert into t1 values( 345 )
-master-bin.000001 5362 Query 1 5453 use `test`; insert into t1 values( 344 )
-master-bin.000001 5453 Query 1 5544 use `test`; insert into t1 values( 343 )
-master-bin.000001 5544 Query 1 5635 use `test`; insert into t1 values( 342 )
-master-bin.000001 5635 Query 1 5726 use `test`; insert into t1 values( 341 )
-master-bin.000001 5726 Query 1 5817 use `test`; insert into t1 values( 340 )
-master-bin.000001 5817 Query 1 5908 use `test`; insert into t1 values( 339 )
-master-bin.000001 5908 Query 1 5999 use `test`; insert into t1 values( 338 )
-master-bin.000001 5999 Query 1 6090 use `test`; insert into t1 values( 337 )
-master-bin.000001 6090 Query 1 6181 use `test`; insert into t1 values( 336 )
-master-bin.000001 6181 Query 1 6272 use `test`; insert into t1 values( 335 )
-master-bin.000001 6272 Query 1 6363 use `test`; insert into t1 values( 334 )
-master-bin.000001 6363 Query 1 6454 use `test`; insert into t1 values( 333 )
-master-bin.000001 6454 Query 1 6545 use `test`; insert into t1 values( 332 )
-master-bin.000001 6545 Query 1 6636 use `test`; insert into t1 values( 331 )
-master-bin.000001 6636 Query 1 6727 use `test`; insert into t1 values( 330 )
-master-bin.000001 6727 Query 1 6818 use `test`; insert into t1 values( 329 )
-master-bin.000001 6818 Query 1 6909 use `test`; insert into t1 values( 328 )
-master-bin.000001 6909 Query 1 7000 use `test`; insert into t1 values( 327 )
-master-bin.000001 7000 Query 1 7091 use `test`; insert into t1 values( 326 )
-master-bin.000001 7091 Query 1 7182 use `test`; insert into t1 values( 325 )
-master-bin.000001 7182 Query 1 7273 use `test`; insert into t1 values( 324 )
-master-bin.000001 7273 Query 1 7364 use `test`; insert into t1 values( 323 )
-master-bin.000001 7364 Query 1 7455 use `test`; insert into t1 values( 322 )
-master-bin.000001 7455 Query 1 7546 use `test`; insert into t1 values( 321 )
-master-bin.000001 7546 Query 1 7637 use `test`; insert into t1 values( 320 )
-master-bin.000001 7637 Query 1 7728 use `test`; insert into t1 values( 319 )
-master-bin.000001 7728 Query 1 7819 use `test`; insert into t1 values( 318 )
-master-bin.000001 7819 Query 1 7910 use `test`; insert into t1 values( 317 )
-master-bin.000001 7910 Query 1 8001 use `test`; insert into t1 values( 316 )
-master-bin.000001 8001 Query 1 8092 use `test`; insert into t1 values( 315 )
-master-bin.000001 8092 Query 1 8183 use `test`; insert into t1 values( 314 )
-master-bin.000001 8183 Query 1 8274 use `test`; insert into t1 values( 313 )
-master-bin.000001 8274 Query 1 8365 use `test`; insert into t1 values( 312 )
-master-bin.000001 8365 Query 1 8456 use `test`; insert into t1 values( 311 )
-master-bin.000001 8456 Query 1 8547 use `test`; insert into t1 values( 310 )
-master-bin.000001 8547 Query 1 8638 use `test`; insert into t1 values( 309 )
-master-bin.000001 8638 Query 1 8729 use `test`; insert into t1 values( 308 )
-master-bin.000001 8729 Query 1 8820 use `test`; insert into t1 values( 307 )
-master-bin.000001 8820 Query 1 8911 use `test`; insert into t1 values( 306 )
-master-bin.000001 8911 Query 1 9002 use `test`; insert into t1 values( 305 )
-master-bin.000001 9002 Query 1 9093 use `test`; insert into t1 values( 304 )
-master-bin.000001 9093 Query 1 9184 use `test`; insert into t1 values( 303 )
-master-bin.000001 9184 Query 1 9275 use `test`; insert into t1 values( 302 )
-master-bin.000001 9275 Query 1 9366 use `test`; insert into t1 values( 301 )
-master-bin.000001 9366 Query 1 9457 use `test`; insert into t1 values( 300 )
-master-bin.000001 9457 Query 1 9548 use `test`; insert into t1 values( 299 )
-master-bin.000001 9548 Query 1 9639 use `test`; insert into t1 values( 298 )
-master-bin.000001 9639 Query 1 9730 use `test`; insert into t1 values( 297 )
-master-bin.000001 9730 Query 1 9821 use `test`; insert into t1 values( 296 )
-master-bin.000001 9821 Query 1 9912 use `test`; insert into t1 values( 295 )
-master-bin.000001 9912 Query 1 10003 use `test`; insert into t1 values( 294 )
-master-bin.000001 10003 Query 1 10094 use `test`; insert into t1 values( 293 )
-master-bin.000001 10094 Query 1 10185 use `test`; insert into t1 values( 292 )
-master-bin.000001 10185 Query 1 10276 use `test`; insert into t1 values( 291 )
-master-bin.000001 10276 Query 1 10367 use `test`; insert into t1 values( 290 )
-master-bin.000001 10367 Query 1 10458 use `test`; insert into t1 values( 289 )
-master-bin.000001 10458 Query 1 10549 use `test`; insert into t1 values( 288 )
-master-bin.000001 10549 Query 1 10640 use `test`; insert into t1 values( 287 )
-master-bin.000001 10640 Query 1 10731 use `test`; insert into t1 values( 286 )
-master-bin.000001 10731 Query 1 10822 use `test`; insert into t1 values( 285 )
-master-bin.000001 10822 Query 1 10913 use `test`; insert into t1 values( 284 )
-master-bin.000001 10913 Query 1 11004 use `test`; insert into t1 values( 283 )
-master-bin.000001 11004 Query 1 11095 use `test`; insert into t1 values( 282 )
-master-bin.000001 11095 Query 1 11186 use `test`; insert into t1 values( 281 )
-master-bin.000001 11186 Query 1 11277 use `test`; insert into t1 values( 280 )
-master-bin.000001 11277 Query 1 11368 use `test`; insert into t1 values( 279 )
-master-bin.000001 11368 Query 1 11459 use `test`; insert into t1 values( 278 )
-master-bin.000001 11459 Query 1 11550 use `test`; insert into t1 values( 277 )
-master-bin.000001 11550 Query 1 11641 use `test`; insert into t1 values( 276 )
-master-bin.000001 11641 Query 1 11732 use `test`; insert into t1 values( 275 )
-master-bin.000001 11732 Query 1 11823 use `test`; insert into t1 values( 274 )
-master-bin.000001 11823 Query 1 11914 use `test`; insert into t1 values( 273 )
-master-bin.000001 11914 Query 1 12005 use `test`; insert into t1 values( 272 )
-master-bin.000001 12005 Query 1 12096 use `test`; insert into t1 values( 271 )
-master-bin.000001 12096 Query 1 12187 use `test`; insert into t1 values( 270 )
-master-bin.000001 12187 Query 1 12278 use `test`; insert into t1 values( 269 )
-master-bin.000001 12278 Query 1 12369 use `test`; insert into t1 values( 268 )
-master-bin.000001 12369 Query 1 12460 use `test`; insert into t1 values( 267 )
-master-bin.000001 12460 Query 1 12551 use `test`; insert into t1 values( 266 )
-master-bin.000001 12551 Query 1 12642 use `test`; insert into t1 values( 265 )
-master-bin.000001 12642 Query 1 12733 use `test`; insert into t1 values( 264 )
-master-bin.000001 12733 Query 1 12824 use `test`; insert into t1 values( 263 )
-master-bin.000001 12824 Query 1 12915 use `test`; insert into t1 values( 262 )
-master-bin.000001 12915 Query 1 13006 use `test`; insert into t1 values( 261 )
-master-bin.000001 13006 Query 1 13097 use `test`; insert into t1 values( 260 )
-master-bin.000001 13097 Query 1 13188 use `test`; insert into t1 values( 259 )
-master-bin.000001 13188 Query 1 13279 use `test`; insert into t1 values( 258 )
-master-bin.000001 13279 Query 1 13370 use `test`; insert into t1 values( 257 )
-master-bin.000001 13370 Query 1 13461 use `test`; insert into t1 values( 256 )
-master-bin.000001 13461 Query 1 13552 use `test`; insert into t1 values( 255 )
-master-bin.000001 13552 Query 1 13643 use `test`; insert into t1 values( 254 )
-master-bin.000001 13643 Query 1 13734 use `test`; insert into t1 values( 253 )
-master-bin.000001 13734 Query 1 13825 use `test`; insert into t1 values( 252 )
-master-bin.000001 13825 Query 1 13916 use `test`; insert into t1 values( 251 )
-master-bin.000001 13916 Query 1 14007 use `test`; insert into t1 values( 250 )
-master-bin.000001 14007 Query 1 14098 use `test`; insert into t1 values( 249 )
-master-bin.000001 14098 Query 1 14189 use `test`; insert into t1 values( 248 )
-master-bin.000001 14189 Query 1 14280 use `test`; insert into t1 values( 247 )
-master-bin.000001 14280 Query 1 14371 use `test`; insert into t1 values( 246 )
-master-bin.000001 14371 Query 1 14462 use `test`; insert into t1 values( 245 )
-master-bin.000001 14462 Query 1 14553 use `test`; insert into t1 values( 244 )
-master-bin.000001 14553 Query 1 14644 use `test`; insert into t1 values( 243 )
-master-bin.000001 14644 Query 1 14735 use `test`; insert into t1 values( 242 )
-master-bin.000001 14735 Query 1 14826 use `test`; insert into t1 values( 241 )
-master-bin.000001 14826 Query 1 14917 use `test`; insert into t1 values( 240 )
-master-bin.000001 14917 Query 1 15008 use `test`; insert into t1 values( 239 )
-master-bin.000001 15008 Query 1 15099 use `test`; insert into t1 values( 238 )
-master-bin.000001 15099 Query 1 15190 use `test`; insert into t1 values( 237 )
-master-bin.000001 15190 Query 1 15281 use `test`; insert into t1 values( 236 )
-master-bin.000001 15281 Query 1 15372 use `test`; insert into t1 values( 235 )
-master-bin.000001 15372 Query 1 15463 use `test`; insert into t1 values( 234 )
-master-bin.000001 15463 Query 1 15554 use `test`; insert into t1 values( 233 )
-master-bin.000001 15554 Query 1 15645 use `test`; insert into t1 values( 232 )
-master-bin.000001 15645 Query 1 15736 use `test`; insert into t1 values( 231 )
-master-bin.000001 15736 Query 1 15827 use `test`; insert into t1 values( 230 )
-master-bin.000001 15827 Query 1 15918 use `test`; insert into t1 values( 229 )
-master-bin.000001 15918 Query 1 16009 use `test`; insert into t1 values( 228 )
-master-bin.000001 16009 Query 1 16100 use `test`; insert into t1 values( 227 )
-master-bin.000001 16100 Query 1 16191 use `test`; insert into t1 values( 226 )
-master-bin.000001 16191 Query 1 16282 use `test`; insert into t1 values( 225 )
-master-bin.000001 16282 Query 1 16373 use `test`; insert into t1 values( 224 )
-master-bin.000001 16373 Query 1 16464 use `test`; insert into t1 values( 223 )
-master-bin.000001 16464 Query 1 16555 use `test`; insert into t1 values( 222 )
-master-bin.000001 16555 Query 1 16646 use `test`; insert into t1 values( 221 )
-master-bin.000001 16646 Query 1 16737 use `test`; insert into t1 values( 220 )
-master-bin.000001 16737 Query 1 16828 use `test`; insert into t1 values( 219 )
-master-bin.000001 16828 Query 1 16919 use `test`; insert into t1 values( 218 )
-master-bin.000001 16919 Query 1 17010 use `test`; insert into t1 values( 217 )
-master-bin.000001 17010 Query 1 17101 use `test`; insert into t1 values( 216 )
-master-bin.000001 17101 Query 1 17192 use `test`; insert into t1 values( 215 )
-master-bin.000001 17192 Query 1 17283 use `test`; insert into t1 values( 214 )
-master-bin.000001 17283 Query 1 17374 use `test`; insert into t1 values( 213 )
-master-bin.000001 17374 Query 1 17465 use `test`; insert into t1 values( 212 )
-master-bin.000001 17465 Query 1 17556 use `test`; insert into t1 values( 211 )
-master-bin.000001 17556 Query 1 17647 use `test`; insert into t1 values( 210 )
-master-bin.000001 17647 Query 1 17738 use `test`; insert into t1 values( 209 )
-master-bin.000001 17738 Query 1 17829 use `test`; insert into t1 values( 208 )
-master-bin.000001 17829 Query 1 17920 use `test`; insert into t1 values( 207 )
-master-bin.000001 17920 Query 1 18011 use `test`; insert into t1 values( 206 )
-master-bin.000001 18011 Query 1 18102 use `test`; insert into t1 values( 205 )
-master-bin.000001 18102 Query 1 18193 use `test`; insert into t1 values( 204 )
-master-bin.000001 18193 Query 1 18284 use `test`; insert into t1 values( 203 )
-master-bin.000001 18284 Query 1 18375 use `test`; insert into t1 values( 202 )
-master-bin.000001 18375 Query 1 18466 use `test`; insert into t1 values( 201 )
-master-bin.000001 18466 Query 1 18557 use `test`; insert into t1 values( 200 )
-master-bin.000001 18557 Query 1 18648 use `test`; insert into t1 values( 199 )
-master-bin.000001 18648 Query 1 18739 use `test`; insert into t1 values( 198 )
-master-bin.000001 18739 Query 1 18830 use `test`; insert into t1 values( 197 )
-master-bin.000001 18830 Query 1 18921 use `test`; insert into t1 values( 196 )
-master-bin.000001 18921 Query 1 19012 use `test`; insert into t1 values( 195 )
-master-bin.000001 19012 Query 1 19103 use `test`; insert into t1 values( 194 )
-master-bin.000001 19103 Query 1 19194 use `test`; insert into t1 values( 193 )
-master-bin.000001 19194 Query 1 19285 use `test`; insert into t1 values( 192 )
-master-bin.000001 19285 Query 1 19376 use `test`; insert into t1 values( 191 )
-master-bin.000001 19376 Query 1 19467 use `test`; insert into t1 values( 190 )
-master-bin.000001 19467 Query 1 19558 use `test`; insert into t1 values( 189 )
-master-bin.000001 19558 Query 1 19649 use `test`; insert into t1 values( 188 )
-master-bin.000001 19649 Query 1 19740 use `test`; insert into t1 values( 187 )
-master-bin.000001 19740 Query 1 19831 use `test`; insert into t1 values( 186 )
-master-bin.000001 19831 Query 1 19922 use `test`; insert into t1 values( 185 )
-master-bin.000001 19922 Query 1 20013 use `test`; insert into t1 values( 184 )
-master-bin.000001 20013 Query 1 20104 use `test`; insert into t1 values( 183 )
-master-bin.000001 20104 Query 1 20195 use `test`; insert into t1 values( 182 )
-master-bin.000001 20195 Query 1 20286 use `test`; insert into t1 values( 181 )
-master-bin.000001 20286 Query 1 20377 use `test`; insert into t1 values( 180 )
-master-bin.000001 20377 Query 1 20468 use `test`; insert into t1 values( 179 )
-master-bin.000001 20468 Query 1 20559 use `test`; insert into t1 values( 178 )
-master-bin.000001 20559 Query 1 20650 use `test`; insert into t1 values( 177 )
-master-bin.000001 20650 Query 1 20741 use `test`; insert into t1 values( 176 )
-master-bin.000001 20741 Query 1 20832 use `test`; insert into t1 values( 175 )
-master-bin.000001 20832 Query 1 20923 use `test`; insert into t1 values( 174 )
-master-bin.000001 20923 Query 1 21014 use `test`; insert into t1 values( 173 )
-master-bin.000001 21014 Query 1 21105 use `test`; insert into t1 values( 172 )
-master-bin.000001 21105 Query 1 21196 use `test`; insert into t1 values( 171 )
-master-bin.000001 21196 Query 1 21287 use `test`; insert into t1 values( 170 )
-master-bin.000001 21287 Query 1 21378 use `test`; insert into t1 values( 169 )
-master-bin.000001 21378 Query 1 21469 use `test`; insert into t1 values( 168 )
-master-bin.000001 21469 Query 1 21560 use `test`; insert into t1 values( 167 )
-master-bin.000001 21560 Query 1 21651 use `test`; insert into t1 values( 166 )
-master-bin.000001 21651 Query 1 21742 use `test`; insert into t1 values( 165 )
-master-bin.000001 21742 Query 1 21833 use `test`; insert into t1 values( 164 )
-master-bin.000001 21833 Query 1 21924 use `test`; insert into t1 values( 163 )
-master-bin.000001 21924 Query 1 22015 use `test`; insert into t1 values( 162 )
-master-bin.000001 22015 Query 1 22106 use `test`; insert into t1 values( 161 )
-master-bin.000001 22106 Query 1 22197 use `test`; insert into t1 values( 160 )
-master-bin.000001 22197 Query 1 22288 use `test`; insert into t1 values( 159 )
-master-bin.000001 22288 Query 1 22379 use `test`; insert into t1 values( 158 )
-master-bin.000001 22379 Query 1 22470 use `test`; insert into t1 values( 157 )
-master-bin.000001 22470 Query 1 22561 use `test`; insert into t1 values( 156 )
-master-bin.000001 22561 Query 1 22652 use `test`; insert into t1 values( 155 )
-master-bin.000001 22652 Query 1 22743 use `test`; insert into t1 values( 154 )
-master-bin.000001 22743 Query 1 22834 use `test`; insert into t1 values( 153 )
-master-bin.000001 22834 Query 1 22925 use `test`; insert into t1 values( 152 )
-master-bin.000001 22925 Query 1 23016 use `test`; insert into t1 values( 151 )
-master-bin.000001 23016 Query 1 23107 use `test`; insert into t1 values( 150 )
-master-bin.000001 23107 Query 1 23198 use `test`; insert into t1 values( 149 )
-master-bin.000001 23198 Query 1 23289 use `test`; insert into t1 values( 148 )
-master-bin.000001 23289 Query 1 23380 use `test`; insert into t1 values( 147 )
-master-bin.000001 23380 Query 1 23471 use `test`; insert into t1 values( 146 )
-master-bin.000001 23471 Query 1 23562 use `test`; insert into t1 values( 145 )
-master-bin.000001 23562 Query 1 23653 use `test`; insert into t1 values( 144 )
-master-bin.000001 23653 Query 1 23744 use `test`; insert into t1 values( 143 )
-master-bin.000001 23744 Query 1 23835 use `test`; insert into t1 values( 142 )
-master-bin.000001 23835 Query 1 23926 use `test`; insert into t1 values( 141 )
-master-bin.000001 23926 Query 1 24017 use `test`; insert into t1 values( 140 )
-master-bin.000001 24017 Query 1 24108 use `test`; insert into t1 values( 139 )
-master-bin.000001 24108 Query 1 24199 use `test`; insert into t1 values( 138 )
-master-bin.000001 24199 Query 1 24290 use `test`; insert into t1 values( 137 )
-master-bin.000001 24290 Query 1 24381 use `test`; insert into t1 values( 136 )
-master-bin.000001 24381 Query 1 24472 use `test`; insert into t1 values( 135 )
-master-bin.000001 24472 Query 1 24563 use `test`; insert into t1 values( 134 )
-master-bin.000001 24563 Query 1 24654 use `test`; insert into t1 values( 133 )
-master-bin.000001 24654 Query 1 24745 use `test`; insert into t1 values( 132 )
-master-bin.000001 24745 Query 1 24836 use `test`; insert into t1 values( 131 )
-master-bin.000001 24836 Query 1 24927 use `test`; insert into t1 values( 130 )
-master-bin.000001 24927 Query 1 25018 use `test`; insert into t1 values( 129 )
-master-bin.000001 25018 Query 1 25109 use `test`; insert into t1 values( 128 )
-master-bin.000001 25109 Query 1 25200 use `test`; insert into t1 values( 127 )
-master-bin.000001 25200 Query 1 25291 use `test`; insert into t1 values( 126 )
-master-bin.000001 25291 Query 1 25382 use `test`; insert into t1 values( 125 )
-master-bin.000001 25382 Query 1 25473 use `test`; insert into t1 values( 124 )
-master-bin.000001 25473 Query 1 25564 use `test`; insert into t1 values( 123 )
-master-bin.000001 25564 Query 1 25655 use `test`; insert into t1 values( 122 )
-master-bin.000001 25655 Query 1 25746 use `test`; insert into t1 values( 121 )
-master-bin.000001 25746 Query 1 25837 use `test`; insert into t1 values( 120 )
-master-bin.000001 25837 Query 1 25928 use `test`; insert into t1 values( 119 )
-master-bin.000001 25928 Query 1 26019 use `test`; insert into t1 values( 118 )
-master-bin.000001 26019 Query 1 26110 use `test`; insert into t1 values( 117 )
-master-bin.000001 26110 Query 1 26201 use `test`; insert into t1 values( 116 )
-master-bin.000001 26201 Query 1 26292 use `test`; insert into t1 values( 115 )
-master-bin.000001 26292 Query 1 26383 use `test`; insert into t1 values( 114 )
-master-bin.000001 26383 Query 1 26474 use `test`; insert into t1 values( 113 )
-master-bin.000001 26474 Query 1 26565 use `test`; insert into t1 values( 112 )
-master-bin.000001 26565 Query 1 26656 use `test`; insert into t1 values( 111 )
-master-bin.000001 26656 Query 1 26747 use `test`; insert into t1 values( 110 )
-master-bin.000001 26747 Query 1 26838 use `test`; insert into t1 values( 109 )
-master-bin.000001 26838 Query 1 26929 use `test`; insert into t1 values( 108 )
-master-bin.000001 26929 Query 1 27020 use `test`; insert into t1 values( 107 )
-master-bin.000001 27020 Query 1 27111 use `test`; insert into t1 values( 106 )
-master-bin.000001 27111 Query 1 27202 use `test`; insert into t1 values( 105 )
-master-bin.000001 27202 Query 1 27293 use `test`; insert into t1 values( 104 )
-master-bin.000001 27293 Query 1 27384 use `test`; insert into t1 values( 103 )
-master-bin.000001 27384 Query 1 27475 use `test`; insert into t1 values( 102 )
-master-bin.000001 27475 Query 1 27566 use `test`; insert into t1 values( 101 )
-master-bin.000001 27566 Query 1 27657 use `test`; insert into t1 values( 100 )
-master-bin.000001 27657 Query 1 27747 use `test`; insert into t1 values( 99 )
-master-bin.000001 27747 Query 1 27837 use `test`; insert into t1 values( 98 )
-master-bin.000001 27837 Query 1 27927 use `test`; insert into t1 values( 97 )
-master-bin.000001 27927 Query 1 28017 use `test`; insert into t1 values( 96 )
-master-bin.000001 28017 Query 1 28107 use `test`; insert into t1 values( 95 )
-master-bin.000001 28107 Query 1 28197 use `test`; insert into t1 values( 94 )
-master-bin.000001 28197 Query 1 28287 use `test`; insert into t1 values( 93 )
-master-bin.000001 28287 Query 1 28377 use `test`; insert into t1 values( 92 )
-master-bin.000001 28377 Query 1 28467 use `test`; insert into t1 values( 91 )
-master-bin.000001 28467 Query 1 28557 use `test`; insert into t1 values( 90 )
-master-bin.000001 28557 Query 1 28647 use `test`; insert into t1 values( 89 )
-master-bin.000001 28647 Query 1 28737 use `test`; insert into t1 values( 88 )
-master-bin.000001 28737 Query 1 28827 use `test`; insert into t1 values( 87 )
-master-bin.000001 28827 Query 1 28917 use `test`; insert into t1 values( 86 )
-master-bin.000001 28917 Query 1 29007 use `test`; insert into t1 values( 85 )
-master-bin.000001 29007 Query 1 29097 use `test`; insert into t1 values( 84 )
-master-bin.000001 29097 Query 1 29187 use `test`; insert into t1 values( 83 )
-master-bin.000001 29187 Query 1 29277 use `test`; insert into t1 values( 82 )
-master-bin.000001 29277 Query 1 29367 use `test`; insert into t1 values( 81 )
-master-bin.000001 29367 Query 1 29457 use `test`; insert into t1 values( 80 )
-master-bin.000001 29457 Query 1 29547 use `test`; insert into t1 values( 79 )
-master-bin.000001 29547 Query 1 29637 use `test`; insert into t1 values( 78 )
-master-bin.000001 29637 Query 1 29727 use `test`; insert into t1 values( 77 )
-master-bin.000001 29727 Query 1 29817 use `test`; insert into t1 values( 76 )
-master-bin.000001 29817 Query 1 29907 use `test`; insert into t1 values( 75 )
-master-bin.000001 29907 Query 1 29997 use `test`; insert into t1 values( 74 )
-master-bin.000001 29997 Query 1 30087 use `test`; insert into t1 values( 73 )
-master-bin.000001 30087 Query 1 30177 use `test`; insert into t1 values( 72 )
-master-bin.000001 30177 Query 1 30267 use `test`; insert into t1 values( 71 )
-master-bin.000001 30267 Query 1 30357 use `test`; insert into t1 values( 70 )
-master-bin.000001 30357 Query 1 30447 use `test`; insert into t1 values( 69 )
-master-bin.000001 30447 Query 1 30537 use `test`; insert into t1 values( 68 )
-master-bin.000001 30537 Query 1 30627 use `test`; insert into t1 values( 67 )
-master-bin.000001 30627 Query 1 30717 use `test`; insert into t1 values( 66 )
-master-bin.000001 30717 Query 1 30807 use `test`; insert into t1 values( 65 )
-master-bin.000001 30807 Query 1 30897 use `test`; insert into t1 values( 64 )
-master-bin.000001 30897 Query 1 30987 use `test`; insert into t1 values( 63 )
-master-bin.000001 30987 Query 1 31077 use `test`; insert into t1 values( 62 )
-master-bin.000001 31077 Query 1 31167 use `test`; insert into t1 values( 61 )
-master-bin.000001 31167 Query 1 31257 use `test`; insert into t1 values( 60 )
-master-bin.000001 31257 Query 1 31347 use `test`; insert into t1 values( 59 )
-master-bin.000001 31347 Query 1 31437 use `test`; insert into t1 values( 58 )
-master-bin.000001 31437 Query 1 31527 use `test`; insert into t1 values( 57 )
-master-bin.000001 31527 Query 1 31617 use `test`; insert into t1 values( 56 )
-master-bin.000001 31617 Query 1 31707 use `test`; insert into t1 values( 55 )
-master-bin.000001 31707 Query 1 31797 use `test`; insert into t1 values( 54 )
-master-bin.000001 31797 Query 1 31887 use `test`; insert into t1 values( 53 )
-master-bin.000001 31887 Query 1 31977 use `test`; insert into t1 values( 52 )
-master-bin.000001 31977 Query 1 32067 use `test`; insert into t1 values( 51 )
-master-bin.000001 32067 Query 1 32157 use `test`; insert into t1 values( 50 )
-master-bin.000001 32157 Query 1 32247 use `test`; insert into t1 values( 49 )
-master-bin.000001 32247 Query 1 32337 use `test`; insert into t1 values( 48 )
-master-bin.000001 32337 Query 1 32427 use `test`; insert into t1 values( 47 )
-master-bin.000001 32427 Query 1 32517 use `test`; insert into t1 values( 46 )
-master-bin.000001 32517 Query 1 32607 use `test`; insert into t1 values( 45 )
-master-bin.000001 32607 Query 1 32697 use `test`; insert into t1 values( 44 )
-master-bin.000001 32697 Query 1 32787 use `test`; insert into t1 values( 43 )
-master-bin.000001 32787 Query 1 32877 use `test`; insert into t1 values( 42 )
-master-bin.000001 32877 Query 1 32967 use `test`; insert into t1 values( 41 )
-master-bin.000001 32967 Query 1 33057 use `test`; insert into t1 values( 40 )
-master-bin.000001 33057 Query 1 33147 use `test`; insert into t1 values( 39 )
-master-bin.000001 33147 Query 1 33237 use `test`; insert into t1 values( 38 )
-master-bin.000001 33237 Query 1 33327 use `test`; insert into t1 values( 37 )
-master-bin.000001 33327 Query 1 33417 use `test`; insert into t1 values( 36 )
-master-bin.000001 33417 Query 1 33507 use `test`; insert into t1 values( 35 )
-master-bin.000001 33507 Query 1 33597 use `test`; insert into t1 values( 34 )
-master-bin.000001 33597 Query 1 33687 use `test`; insert into t1 values( 33 )
-master-bin.000001 33687 Query 1 33777 use `test`; insert into t1 values( 32 )
-master-bin.000001 33777 Query 1 33867 use `test`; insert into t1 values( 31 )
-master-bin.000001 33867 Query 1 33957 use `test`; insert into t1 values( 30 )
-master-bin.000001 33957 Query 1 34047 use `test`; insert into t1 values( 29 )
-master-bin.000001 34047 Query 1 34137 use `test`; insert into t1 values( 28 )
-master-bin.000001 34137 Query 1 34227 use `test`; insert into t1 values( 27 )
-master-bin.000001 34227 Query 1 34317 use `test`; insert into t1 values( 26 )
-master-bin.000001 34317 Query 1 34407 use `test`; insert into t1 values( 25 )
-master-bin.000001 34407 Query 1 34497 use `test`; insert into t1 values( 24 )
-master-bin.000001 34497 Query 1 34587 use `test`; insert into t1 values( 23 )
-master-bin.000001 34587 Query 1 34677 use `test`; insert into t1 values( 22 )
-master-bin.000001 34677 Query 1 34767 use `test`; insert into t1 values( 21 )
-master-bin.000001 34767 Query 1 34857 use `test`; insert into t1 values( 20 )
-master-bin.000001 34857 Query 1 34947 use `test`; insert into t1 values( 19 )
-master-bin.000001 34947 Query 1 35037 use `test`; insert into t1 values( 18 )
-master-bin.000001 35037 Query 1 35127 use `test`; insert into t1 values( 17 )
-master-bin.000001 35127 Query 1 35217 use `test`; insert into t1 values( 16 )
-master-bin.000001 35217 Query 1 35307 use `test`; insert into t1 values( 15 )
-master-bin.000001 35307 Query 1 35397 use `test`; insert into t1 values( 14 )
-master-bin.000001 35397 Query 1 35487 use `test`; insert into t1 values( 13 )
-master-bin.000001 35487 Query 1 35577 use `test`; insert into t1 values( 12 )
-master-bin.000001 35577 Query 1 35667 use `test`; insert into t1 values( 11 )
-master-bin.000001 35667 Query 1 35757 use `test`; insert into t1 values( 10 )
-master-bin.000001 35757 Query 1 35846 use `test`; insert into t1 values( 9 )
-master-bin.000001 35846 Query 1 35935 use `test`; insert into t1 values( 8 )
-master-bin.000001 35935 Query 1 36024 use `test`; insert into t1 values( 7 )
-master-bin.000001 36024 Query 1 36113 use `test`; insert into t1 values( 6 )
-master-bin.000001 36113 Query 1 36202 use `test`; insert into t1 values( 5 )
-master-bin.000001 36202 Query 1 36291 use `test`; insert into t1 values( 4 )
-master-bin.000001 36291 Query 1 36380 use `test`; insert into t1 values( 3 )
-master-bin.000001 36380 Query 1 36469 use `test`; insert into t1 values( 2 )
-master-bin.000001 36469 Query 1 36558 use `test`; insert into t1 values( 1 )
-master-bin.000001 36558 Xid 1 36585 COMMIT /* XID */
-master-bin.000001 36585 Rotate 1 36629 master-bin.000002;pos=4
-drop table t1;
-set global binlog_cache_size=@bcs;
-set session autocommit = @ac;
-drop table if exists t1;
-reset master;
-create table t1 (a bigint unsigned, b bigint(20) unsigned);
-prepare stmt from "insert into t1 values (?,?)";
-set @a= 9999999999999999;
-set @b= 14632475938453979136;
-execute stmt using @a, @b;
-deallocate prepare stmt;
-drop table t1;
-show binlog events from 0;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server version, Binlog ver: 4
-master-bin.000001 98 Query 1 219 use `test`; create table t1 (a bigint unsigned, b bigint(20) unsigned)
-master-bin.000001 219 Query 1 343 use `test`; insert into t1 values (9999999999999999,14632475938453979136)
-master-bin.000001 343 Query 1 419 use `test`; drop table t1
-CREATE DATABASE bug39182 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
-USE bug39182;
-CREATE TABLE t1 (a VARCHAR(255) COLLATE utf8_unicode_ci)
-DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-CREATE PROCEDURE p1()
-BEGIN
-DECLARE s1 VARCHAR(255);
-SET s1= "test";
-CREATE TEMPORARY TABLE tmp1
-SELECT * FROM t1 WHERE a LIKE CONCAT("%", s1, "%");
-SELECT
-COLLATION(NAME_CONST('s1', _utf8'test')) c1,
-COLLATION(NAME_CONST('s1', _utf8'test' COLLATE utf8_unicode_ci)) c2,
-COLLATION(s1) c3,
-COERCIBILITY(NAME_CONST('s1', _utf8'test')) d1,
-COERCIBILITY(NAME_CONST('s1', _utf8'test' COLLATE utf8_unicode_ci)) d2,
-COERCIBILITY(s1) d3;
-DROP TEMPORARY TABLE tmp1;
-END//
-CALL p1();
-c1 c2 c3 d1 d2 d3
-utf8_general_ci utf8_unicode_ci utf8_unicode_ci 2 2 2
-Warnings:
-Warning 1105 Invoked routine ran a statement that may cause problems with binary log, see 'NAME_CONST issues' in 'Binary Logging of Stored Programs' section of the manual.
-SHOW BINLOG EVENTS FROM 1285;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 1285 Query 1 1483 use `bug39182`; CREATE TEMPORARY TABLE tmp1
-SELECT * FROM t1 WHERE a LIKE CONCAT("%", NAME_CONST('s1',_utf8'test' COLLATE 'utf8_unicode_ci'), "%")
-master-bin.000001 1483 Query 1 1575 use `bug39182`; DROP TEMPORARY TABLE tmp1
-DROP PROCEDURE p1;
-DROP TABLE t1;
-DROP DATABASE bug39182;
-USE test;
-CREATE PROCEDURE p1(IN v1 INT)
-BEGIN
-CREATE TABLE t1 SELECT v1;
-DROP TABLE t1;
-END//
-CREATE PROCEDURE p2()
-BEGIN
-DECLARE v1 INT;
-CREATE TABLE t1 SELECT v1+1;
-DROP TABLE t1;
-END//
-CREATE PROCEDURE p3(IN v1 INT)
-BEGIN
-CREATE TABLE t1 SELECT 1 FROM DUAL WHERE v1!=0;
-DROP TABLE t1;
-END//
-CREATE PROCEDURE p4(IN v1 INT)
-BEGIN
-DECLARE v2 INT;
-CREATE TABLE t1 SELECT 1, v1, v2;
-DROP TABLE t1;
-CREATE TABLE t1 SELECT 1, v1+1, v2;
-DROP TABLE t1;
-END//
-CALL p1(1);
-CALL p2();
-Warnings:
-Warning 1105 Invoked routine ran a statement that may cause problems with binary log, see 'NAME_CONST issues' in 'Binary Logging of Stored Programs' section of the manual.
-CALL p3(0);
-Warnings:
-Warning 1105 Invoked routine ran a statement that may cause problems with binary log, see 'NAME_CONST issues' in 'Binary Logging of Stored Programs' section of the manual.
-CALL p4(0);
-Warnings:
-Warning 1105 Invoked routine ran a statement that may cause problems with binary log, see 'NAME_CONST issues' in 'Binary Logging of Stored Programs' section of the manual.
-DROP PROCEDURE p1;
-DROP PROCEDURE p2;
-DROP PROCEDURE p3;
-DROP PROCEDURE p4;
-End of 5.0 tests
diff --git a/mysql-test/r/binlog_index.result b/mysql-test/r/binlog_index.result
deleted file mode 100644
index b307b97e460..00000000000
--- a/mysql-test/r/binlog_index.result
+++ /dev/null
@@ -1,40 +0,0 @@
-flush logs;
-flush logs;
-flush logs;
-show binary logs;
-Log_name File_size
-master-bin.000001 #
-master-bin.000002 #
-master-bin.000003 #
-master-bin.000004 #
-purge binary logs TO 'master-bin.000004';
-Warnings:
-Warning 1477 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
-*** must show a list starting from the 'TO' argument of PURGE ***
-show binary logs;
-Log_name File_size
-master-bin.000004 #
-reset master;
-flush logs;
-flush logs;
-flush logs;
-*** must be a warning master-bin.000001 was not found ***
-Warnings:
-Warning 1477 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
-Warning 1477 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
-*** must show one record, of the active binlog, left in the index file after PURGE ***
-show binary logs;
-Log_name File_size
-master-bin.000004 #
-reset master;
-flush logs;
-flush logs;
-flush logs;
-purge binary logs TO 'master-bin.000002';
-ERROR HY000: Fatal error during log purge
-show warnings;
-Level Code Message
-Error 1377 a problem with deleting MYSQLTEST_VARDIR/log/master-bin.000001; consider examining correspondence of your binlog index file to the actual binlog files
-Error 1377 Fatal error during log purge
-reset master;
-End of tests
diff --git a/mysql-test/r/binlog_innodb.result b/mysql-test/r/binlog_innodb.result
deleted file mode 100644
index 180b43f42ac..00000000000
--- a/mysql-test/r/binlog_innodb.result
+++ /dev/null
@@ -1,39 +0,0 @@
-show status like "binlog_cache_use";
-Variable_name Value
-Binlog_cache_use 0
-show status like "binlog_cache_disk_use";
-Variable_name Value
-Binlog_cache_disk_use 0
-create table t1 (a int) engine=innodb;
-show status like "binlog_cache_use";
-Variable_name Value
-Binlog_cache_use 1
-show status like "binlog_cache_disk_use";
-Variable_name Value
-Binlog_cache_disk_use 1
-begin;
-delete from t1;
-commit;
-show status like "binlog_cache_use";
-Variable_name Value
-Binlog_cache_use 2
-show status like "binlog_cache_disk_use";
-Variable_name Value
-Binlog_cache_disk_use 1
-drop table t1;
-CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE=MyISAM;
-CREATE TABLE t2 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE=InnoDB;
-CREATE FUNCTION bug23333()
-RETURNS int(11)
-DETERMINISTIC
-BEGIN
-INSERT INTO t1 VALUES (NULL);
-SELECT COUNT(*) FROM t1 INTO @a;
-RETURN @a;
-END|
-INSERT INTO t2 VALUES (2),(10+bug23333());
-SHOW MASTER STATUS;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-# 184141
-DROP FUNCTION bug23333;
-DROP TABLE t1, t2;
diff --git a/mysql-test/r/binlog_killed.result b/mysql-test/r/binlog_killed.result
deleted file mode 100644
index e04cc192876..00000000000
--- a/mysql-test/r/binlog_killed.result
+++ /dev/null
@@ -1,56 +0,0 @@
-create table t1 (a int auto_increment, b int, PRIMARY KEY (a)) ENGINE=InnoDB;
-create table t2 (a int auto_increment, b int, PRIMARY KEY (a)) ENGINE=MyISAM;
-create table t3 (a int auto_increment, b int, PRIMARY KEY (a)) ENGINE=InnoDB;
-select get_lock("a", 20);
-get_lock("a", 20)
-1
-reset master;
-insert into t2 values (null, null), (null, get_lock("a", 10));
-select @result /* must be zero either way */;
-@result
-0
-select RELEASE_LOCK("a");
-RELEASE_LOCK("a")
-1
-delete from t1;
-delete from t2;
-insert into t1 values (1,1),(2,2);
-begin;
-update t1 set b=11 where a=2;
-begin;
-update t1 set b=b+10;
-kill query ID;
-rollback;
-rollback;
-select * from t1 order by a /* must be the same as before (1,1),(2,2) */;
-a b
-1 1
-2 2
-begin;
-delete from t1 where a=2;
-begin;
-delete from t1 where a=2;
-kill query ID;
-rollback;
-rollback;
-select * from t1 order by a /* must be the same as before (1,1),(2,2) */;
-a b
-1 1
-2 2
-drop table if exists t4;
-create table t4 (a int, b int) engine=innodb;
-insert into t4 values (3, 3);
-begin;
-insert into t1 values (3, 3);
-begin;
-insert into t1 select * from t4 for update;
-kill query ID;
-rollback;
-rollback;
-select * from t1 /* must be the same as before (1,1),(2,2) */;
-a b
-1 1
-2 2
-drop table t4;
-drop table t1,t2,t3;
-end of the tests
diff --git a/mysql-test/r/binlog_killed_simulate.result b/mysql-test/r/binlog_killed_simulate.result
deleted file mode 100644
index c0087316420..00000000000
--- a/mysql-test/r/binlog_killed_simulate.result
+++ /dev/null
@@ -1,33 +0,0 @@
-drop table if exists t1,t2;
-create table t1 (a int) engine=MyISAM;
-insert into t1 set a=1;
-reset master;
-update t1 set a=2 /* will be "killed" after work has been done */;
-select
-(@a:=load_file("MYSQLTEST_VARDIR/tmp/binlog_killed_bug27571.binlog"))
-is not null;
-(@a:=load_file("MYSQLTEST_VARDIR/tmp/binlog_killed_bug27571.binlog"))
-is not null
-1
-select 1 /* must return 1 as query completed before got killed*/;
-1
-1
-create table t2 (a int, b int) ENGINE=MyISAM;
-reset master;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t2 /* will be "killed" in the middle */;
-ERROR 70100: Query execution was interrupted
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Begin_load_query # # ;file_id=#;block_len=12
-master-bin.000001 # Execute_load_query # # use `test`; load data infile '../std_data_ln/rpl_loaddata.dat' into table t2 /* will be "killed" in the middle */ ;file_id=#
-select
-(@a:=load_file("MYSQLTEST_VARDIR/tmp/binlog_killed_bug27571.binlog"))
-is not null;
-(@a:=load_file("MYSQLTEST_VARDIR/tmp/binlog_killed_bug27571.binlog"))
-is not null
-1
-select 0 /* must return 0 to mean the killed query is in */;
-0
-0
-drop table t1,t2;
-end of the tests
diff --git a/mysql-test/r/binlog_start_comment.result b/mysql-test/r/binlog_start_comment.result
deleted file mode 100644
index 162968195f2..00000000000
--- a/mysql-test/r/binlog_start_comment.result
+++ /dev/null
@@ -1,15 +0,0 @@
-reset master;
-drop table if exists t1,t2;
-create table t1 (word varchar(20)) -- create table t1;
-create table t2 (word varchar(20)) -- create table t2;
-load data infile '../std_data_ln/words.dat' into table t1 -- load data to t1;
-insert into t2 values ("Ada");
-flush logs;
-select * from t2;
-word
-Ada
-flush logs;
-select * from t2;
-word
-Ada
-drop table t1,t2;
diff --git a/mysql-test/r/binlog_tx_isolation.result b/mysql-test/r/binlog_tx_isolation.result
new file mode 100644
index 00000000000..39aba22758d
--- /dev/null
+++ b/mysql-test/r/binlog_tx_isolation.result
@@ -0,0 +1,48 @@
+CREATE TABLE t1 (a INT PRIMARY KEY, b INT) ENGINE=INNODB;
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4),(5,5),(6,6);
+SET BINLOG_FORMAT=STATEMENT;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+ERROR HY000: Transaction isolation level 'READ-COMMITTED' is not safe for 'STATEMENT' binlog mode
+UPDATE t1 SET b = a*a WHERE a > 1;
+COMMIT;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
+UPDATE t1 SET b = a*a WHERE a > 1;
+COMMIT;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+UPDATE t1 SET b = a*a WHERE a > 1;
+COMMIT;
+SET BINLOG_FORMAT=MIXED;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+ERROR HY000: Transaction isolation level 'READ-COMMITTED' is not safe for 'MIXED' binlog mode
+UPDATE t1 SET b = a*a*a WHERE a > 2;
+COMMIT;
+SET BINLOG_FORMAT=ROW;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+UPDATE t1 SET b = a*a*a*a WHERE a > 3;
+COMMIT;
+SELECT @@session.tx_isolation, @@session.binlog_format;
+@@session.tx_isolation READ-COMMITTED
+@@session.binlog_format ROW
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+SET BINLOG_FORMAT=MIXED;
+ERROR HY000: Transaction isolation level 'READ-COMMITTED' prevents leaving 'ROW' binlog mode
+UPDATE t1 SET b = a*a*a*a WHERE a > 3;
+COMMIT;
+SELECT @@session.tx_isolation, @@session.binlog_format;
+@@session.tx_isolation READ-COMMITTED
+@@session.binlog_format ROW
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+SET BINLOG_FORMAT=STATEMENT;
+ERROR HY000: Transaction isolation level 'READ-COMMITTED' prevents leaving 'ROW' binlog mode
+UPDATE t1 SET b = a*a*a*a WHERE a > 3;
+COMMIT;
+SELECT @@session.tx_isolation, @@session.binlog_format;
+@@session.tx_isolation READ-COMMITTED
+@@session.binlog_format ROW
diff --git a/mysql-test/r/blackhole.result b/mysql-test/r/blackhole.result
deleted file mode 100644
index 51c19c29b0f..00000000000
--- a/mysql-test/r/blackhole.result
+++ /dev/null
@@ -1,157 +0,0 @@
-drop table if exists t1,t2;
-CREATE TABLE t1 (
-Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
-Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
-) ENGINE=blackhole;
-INSERT INTO t1 VALUES (9410,9412);
-select period from t1;
-period
-select * from t1;
-Period Varor_period
-select t1.* from t1;
-Period Varor_period
-CREATE TABLE t2 (
-auto int NOT NULL auto_increment,
-fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
-companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
-fld3 char(30) DEFAULT '' NOT NULL,
-fld4 char(35) DEFAULT '' NOT NULL,
-fld5 char(35) DEFAULT '' NOT NULL,
-fld6 char(4) DEFAULT '' NOT NULL,
-primary key (auto)
-) ENGINE=blackhole;
-INSERT INTO t2 VALUES (1192,068305,00,'Colombo','hardware','colicky','');
-INSERT INTO t2 VALUES (1193,000000,00,'nondecreasing','implant','thrillingly','');
-select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
-fld3
-select fld3 from t2 where fld3 like "%cultivation" ;
-fld3
-select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
-fld3 companynr
-select fld3,companynr from t2 where companynr = 58 order by fld3;
-fld3 companynr
-select fld3 from t2 order by fld3 desc limit 10;
-fld3
-select fld3 from t2 order by fld3 desc limit 5;
-fld3
-select fld3 from t2 order by fld3 desc limit 5,5;
-fld3
-select t2.fld3 from t2 where fld3 = 'honeysuckle';
-fld3
-select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
-fld3
-select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
-fld3
-select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
-fld3
-select t2.fld3 from t2 where fld3 LIKE 'h%le';
-fld3
-select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
-fld3
-select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
-fld3
-select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
-fld3
-select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
-fld1 fld3
-DROP TABLE t1;
-CREATE TABLE t1 (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
-INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
-('Full-text indexes', 'are called collections'),
-('Only MyISAM tables','support collections'),
-('Function MATCH ... AGAINST()','is used to do a search'),
-('Full-text search in MySQL', 'implements vector space model');
-SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
-t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
-select * from t1 where MATCH(a,b) AGAINST ("collections");
-a b
-Only MyISAM tables support collections
-Full-text indexes are called collections
-explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 fulltext a a 0 1 Using where
-Warnings:
-Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'collections'))
-select * from t1 where MATCH(a,b) AGAINST ("indexes");
-a b
-Full-text indexes are called collections
-select * from t1 where MATCH(a,b) AGAINST ("indexes collections");
-a b
-Full-text indexes are called collections
-Only MyISAM tables support collections
-select * from t1 where MATCH(a,b) AGAINST ("only");
-a b
-reset master;
-drop table t1,t2;
-create table t1 (a int) engine=blackhole;
-delete from t1 where a=10;
-update t1 set a=11 where a=15;
-insert into t1 values(1);
-insert ignore into t1 values(1);
-replace into t1 values(100);
-create table t2 (a varchar(200)) engine=blackhole;
-load data infile '../std_data_ln/words.dat' into table t2;
-alter table t1 add b int;
-alter table t1 drop b;
-create table t3 like t1;
-insert into t1 select * from t3;
-replace into t1 select * from t3;
-select * from t1;
-a
-select * from t2;
-a
-select * from t3;
-a
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Format_desc 1 # Server ver: VERSION, Binlog ver: 4
-master-bin.000001 # Query 1 # use `test`; drop table t1,t2
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int) engine=blackhole
-master-bin.000001 # Query 1 # use `test`; delete from t1 where a=10
-master-bin.000001 # Query 1 # use `test`; update t1 set a=11 where a=15
-master-bin.000001 # Query 1 # use `test`; insert into t1 values(1)
-master-bin.000001 # Query 1 # use `test`; insert ignore into t1 values(1)
-master-bin.000001 # Query 1 # use `test`; replace into t1 values(100)
-master-bin.000001 # Query 1 # use `test`; create table t2 (a varchar(200)) engine=blackhole
-master-bin.000001 # Begin_load_query 1 # ;file_id=#;block_len=581
-master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../std_data_ln/words.dat' into table t2 ;file_id=#
-master-bin.000001 # Query 1 # use `test`; alter table t1 add b int
-master-bin.000001 # Query 1 # use `test`; alter table t1 drop b
-master-bin.000001 # Query 1 # use `test`; create table t3 like t1
-master-bin.000001 # Query 1 # use `test`; insert into t1 select * from t3
-master-bin.000001 # Query 1 # use `test`; replace into t1 select * from t3
-drop table t1,t2,t3;
-CREATE TABLE t1(a INT) ENGINE=BLACKHOLE;
-INSERT DELAYED INTO t1 VALUES(1);
-ERROR HY000: Table storage engine for 't1' doesn't have this option
-DROP TABLE t1;
-CREATE TABLE t1(a INT, b INT) ENGINE=BLACKHOLE;
-DELETE FROM t1 WHERE a=10;
-ALTER TABLE t1 ADD INDEX(a);
-DELETE FROM t1 WHERE a=10;
-ALTER TABLE t1 DROP INDEX a;
-ALTER TABLE t1 ADD UNIQUE INDEX(a);
-DELETE FROM t1 WHERE a=10;
-ALTER TABLE t1 DROP INDEX a;
-ALTER TABLE t1 ADD PRIMARY KEY(a);
-DELETE FROM t1 WHERE a=10;
-DROP TABLE t1;
-reset master;
-create table t1 (a int auto_increment, primary key (a)) engine=blackhole;
-insert into t1 values (11), (NULL), (NULL), (NULL);
-set insert_id= 3;
-insert into t1 values (NULL), (33), (NULL);
-set insert_id= 5;
-insert into t1 values (55), (NULL);
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int auto_increment, primary key (a)) engine=blackhole
-master-bin.000001 # Intvar 1 # INSERT_ID=1
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (11), (NULL), (NULL), (NULL)
-master-bin.000001 # Intvar 1 # INSERT_ID=3
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (NULL), (33), (NULL)
-master-bin.000001 # Intvar 1 # INSERT_ID=5
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (55), (NULL)
-drop table t1;
diff --git a/mysql-test/r/bug46080.result b/mysql-test/r/bug46080.result
index 18c7c22829a..2173768cdad 100644
--- a/mysql-test/r/bug46080.result
+++ b/mysql-test/r/bug46080.result
@@ -2,6 +2,8 @@
# Bug #46080: group_concat(... order by) crashes server when
# sort_buffer_size cannot allocate
#
+call mtr.add_suppression("Out of memory at line .*, 'my_alloc.c'");
+call mtr.add_suppression("needed .* byte .*k., memory in use: .* bytes .*k");
CREATE TABLE t1(a CHAR(255));
INSERT INTO t1 VALUES ('a');
SET @@SESSION.sort_buffer_size=5*16*1000000;
diff --git a/mysql-test/r/bug46760.result b/mysql-test/r/bug46760.result
new file mode 100644
index 00000000000..413df050b10
--- /dev/null
+++ b/mysql-test/r/bug46760.result
@@ -0,0 +1,43 @@
+#
+# Bug#46760: Fast ALTER TABLE no longer works for InnoDB
+#
+CREATE TABLE t1 (a INT) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1);
+# By using --enable_info and verifying that number of affected
+# rows is 0 we check that this ALTER TABLE is really carried
+# out as "fast/online" operation, i.e. without full-blown data
+# copying.
+#
+# I.e. info for the below statement should normally look like:
+#
+# affected rows: 0
+# info: Records: 0 Duplicates: 0 Warnings: 0
+ALTER TABLE t1 ALTER COLUMN a SET DEFAULT 10;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT '10'
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TABLE t1;
+#
+# MySQL Bug#39200: optimize table does not recognize
+# ROW_FORMAT=COMPRESSED
+#
+CREATE TABLE t1 (a INT) ROW_FORMAT=compressed;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status Table is already up to date
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/innodb_cache.result b/mysql-test/r/cache_innodb.result
index 36fa3c5c352..b59298727c5 100644
--- a/mysql-test/r/innodb_cache.result
+++ b/mysql-test/r/cache_innodb.result
@@ -1,7 +1,8 @@
+SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1,t2,t3;
flush status;
set autocommit=0;
-create table t1 (a int not null) engine=innodb;
+create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
a
@@ -15,7 +16,7 @@ drop table t1;
commit;
set autocommit=1;
begin;
-create table t1 (a int not null) engine=innodb;
+create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
a
@@ -27,9 +28,9 @@ Variable_name Value
Qcache_queries_in_cache 1
drop table t1;
commit;
-create table t1 (a int not null) engine=innodb;
-create table t2 (a int not null) engine=innodb;
-create table t3 (a int not null) engine=innodb;
+create table t1 (a int not null);
+create table t2 (a int not null);
+create table t3 (a int not null);
insert into t1 values (1),(2);
insert into t2 values (1),(2);
insert into t3 values (1),(2);
@@ -99,7 +100,7 @@ show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 2
drop table t3,t2,t1;
-CREATE TABLE t1 (id int(11) NOT NULL auto_increment, PRIMARY KEY (id)) ENGINE=InnoDB;
+CREATE TABLE t1 (id int(11) NOT NULL auto_increment, PRIMARY KEY (id));
select count(*) from t1;
count(*)
0
@@ -109,9 +110,9 @@ count(*)
1
drop table t1;
set GLOBAL query_cache_size=1355776;
-CREATE TABLE t1 ( id int(10) NOT NULL auto_increment, a varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY a (a)) ENGINE=innodb;
-CREATE TABLE t2 ( id int(10) NOT NULL auto_increment, b varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY b (b)) ENGINE=innodb;
-CREATE TABLE t3 ( id int(10) NOT NULL auto_increment, t1_id int(10) NOT NULL default '0', t2_id int(10) NOT NULL default '0', state int(11) default NULL, PRIMARY KEY (id), UNIQUE KEY t1_id (t1_id,t2_id), KEY t2_id (t2_id,t1_id), CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`), CONSTRAINT `t3_ibfk_2` FOREIGN KEY (`t2_id`) REFERENCES `t2` (`id`)) ENGINE=innodb;
+CREATE TABLE t1 ( id int(10) NOT NULL auto_increment, a varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY a (a));
+CREATE TABLE t2 ( id int(10) NOT NULL auto_increment, b varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY b (b));
+CREATE TABLE t3 ( id int(10) NOT NULL auto_increment, t1_id int(10) NOT NULL default '0', t2_id int(10) NOT NULL default '0', state int(11) default NULL, PRIMARY KEY (id), UNIQUE KEY t1_id (t1_id,t2_id), KEY t2_id (t2_id,t1_id), CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`), CONSTRAINT `t3_ibfk_2` FOREIGN KEY (`t2_id`) REFERENCES `t2` (`id`));
INSERT INTO t1 VALUES (1,'me');
INSERT INTO t2 VALUES (1,'you');
INSERT INTO t3 VALUES (2,1,1,2);
@@ -121,9 +122,101 @@ id a
begin;
insert into t3 VALUES ( NULL, 1, 1, 2 );
insert into t3 VALUES ( NULL, 1, 1, 2 );
-ERROR 23000: Duplicate entry '1-1' for key 2
+ERROR 23000: Duplicate entry '1-1' for key 't1_id'
commit;
select t1.* from t1, t2, t3 where t3.state & 1 = 0 and t3.t1_id = t1.id and t3.t2_id = t2.id and t1.id = 1 order by t1.a asc;
id a
1 me
drop table t3,t2,t1;
+SET SESSION STORAGE_ENGINE = InnoDB;
+SET @@autocommit=1;
+connection default
+SHOW VARIABLES LIKE 'have_query_cache';
+Variable_name Value
+have_query_cache YES
+SET GLOBAL query_cache_size = 200000;
+flush status;
+SET @@autocommit=1;
+SET SESSION STORAGE_ENGINE = InnoDB;
+CREATE TABLE t2 (s1 int, s2 varchar(1000), key(s1));
+INSERT INTO t2 VALUES (1,repeat('a',10)),(2,repeat('a',10)),(3,repeat('a',10)),(4,repeat('a',10));
+COMMIT;
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+0
+UPDATE t2 SET s2 = 'w' WHERE s1 = 3;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 0
+connection connection1
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+0
+INSERT INTO t2 VALUES (5,'w');
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+COMMIT;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 0
+connection default
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+COMMIT;
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 0
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 1
+connection connection1
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+INSERT INTO t2 VALUES (6,'w');
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+3
+connection default
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+DELETE from t2 WHERE s1=3;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+COMMIT;
+connection connection1
+COMMIT;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 1
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 1
+set GLOBAL query_cache_size=1048576;
+drop table t2;
diff --git a/mysql-test/r/case.result b/mysql-test/r/case.result
index bc05edcfac1..0c0e2d623c8 100644
--- a/mysql-test/r/case.result
+++ b/mysql-test/r/case.result
@@ -24,10 +24,10 @@ select CASE 1 when 1 then "one" WHEN 2 then "two" ELSE "more" END;
CASE 1 when 1 then "one" WHEN 2 then "two" ELSE "more" END
one
explain extended select CASE 1 when 1 then "one" WHEN 2 then "two" ELSE "more" END;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select (case 1 when 1 then _latin1'one' when 2 then _latin1'two' else _latin1'more' end) AS `CASE 1 when 1 then "one" WHEN 2 then "two" ELSE "more" END`
+Note 1003 select (case 1 when 1 then 'one' when 2 then 'two' else 'more' end) AS `CASE 1 when 1 then "one" WHEN 2 then "two" ELSE "more" END`
select CASE 2.0 when 1 then "one" WHEN 2.0 then "two" ELSE "more" END;
CASE 2.0 when 1 then "one" WHEN 2.0 then "two" ELSE "more" END
two
@@ -63,8 +63,8 @@ fcase count(*)
2 1
3 1
explain extended select case a when 1 then 2 when 2 then 3 else 0 end as fcase, count(*) from t1 group by fcase;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 4 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select (case `test`.`t1`.`a` when 1 then 2 when 2 then 3 else 0 end) AS `fcase`,count(0) AS `count(*)` from `test`.`t1` group by (case `test`.`t1`.`a` when 1 then 2 when 2 then 3 else 0 end)
select case a when 1 then "one" when 2 then "two" else "nothing" end as fcase, count(*) from t1 group by fcase;
@@ -99,18 +99,18 @@ CASE WHEN 1 THEN 0.1e1 else '1' END AS c12
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` varchar(1) character set latin1 collate latin1_danish_ci NOT NULL default '',
- `c2` varchar(1) character set latin1 collate latin1_danish_ci NOT NULL default '',
- `c3` varbinary(1) NOT NULL default '',
- `c4` varbinary(1) NOT NULL default '',
- `c5` varbinary(4) NOT NULL default '',
- `c6` varbinary(4) NOT NULL default '',
- `c7` decimal(2,1) NOT NULL default '0.0',
- `c8` decimal(2,1) NOT NULL default '0.0',
- `c9` decimal(2,1) default NULL,
- `c10` double NOT NULL default '0',
- `c11` double NOT NULL default '0',
- `c12` varbinary(5) NOT NULL default ''
+ `c1` varchar(1) CHARACTER SET latin1 COLLATE latin1_danish_ci NOT NULL DEFAULT '',
+ `c2` varchar(1) CHARACTER SET latin1 COLLATE latin1_danish_ci NOT NULL DEFAULT '',
+ `c3` varbinary(1) NOT NULL DEFAULT '',
+ `c4` varbinary(1) NOT NULL DEFAULT '',
+ `c5` varbinary(4) NOT NULL DEFAULT '',
+ `c6` varbinary(4) NOT NULL DEFAULT '',
+ `c7` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `c8` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `c9` decimal(2,1) DEFAULT NULL,
+ `c10` double NOT NULL DEFAULT '0',
+ `c11` double NOT NULL DEFAULT '0',
+ `c12` varbinary(5) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
SELECT CASE
@@ -144,20 +144,20 @@ explain extended SELECT
COALESCE(1), COALESCE(1.0),COALESCE('a'),
COALESCE(1,1.0), COALESCE(1,'1'),COALESCE(1.1,'1'),
COALESCE('a' COLLATE latin1_bin,'b');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select coalesce(1) AS `COALESCE(1)`,coalesce(1.0) AS `COALESCE(1.0)`,coalesce(_latin1'a') AS `COALESCE('a')`,coalesce(1,1.0) AS `COALESCE(1,1.0)`,coalesce(1,_latin1'1') AS `COALESCE(1,'1')`,coalesce(1.1,_latin1'1') AS `COALESCE(1.1,'1')`,coalesce((_latin1'a' collate latin1_bin),_latin1'b') AS `COALESCE('a' COLLATE latin1_bin,'b')`
+Note 1003 select coalesce(1) AS `COALESCE(1)`,coalesce(1.0) AS `COALESCE(1.0)`,coalesce('a') AS `COALESCE('a')`,coalesce(1,1.0) AS `COALESCE(1,1.0)`,coalesce(1,'1') AS `COALESCE(1,'1')`,coalesce(1.1,'1') AS `COALESCE(1.1,'1')`,coalesce(('a' collate latin1_bin),'b') AS `COALESCE('a' COLLATE latin1_bin,'b')`
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `COALESCE(1)` int(1) NOT NULL default '0',
- `COALESCE(1.0)` decimal(2,1) NOT NULL default '0.0',
- `COALESCE('a')` varchar(1) NOT NULL default '',
- `COALESCE(1,1.0)` decimal(2,1) NOT NULL default '0.0',
- `COALESCE(1,'1')` varbinary(1) NOT NULL default '',
- `COALESCE(1.1,'1')` varbinary(4) NOT NULL default '',
- `COALESCE('a' COLLATE latin1_bin,'b')` varchar(1) character set latin1 collate latin1_bin NOT NULL default ''
+ `COALESCE(1)` int(1) NOT NULL DEFAULT '0',
+ `COALESCE(1.0)` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `COALESCE('a')` varchar(1) NOT NULL DEFAULT '',
+ `COALESCE(1,1.0)` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `COALESCE(1,'1')` varbinary(1) NOT NULL DEFAULT '',
+ `COALESCE(1.1,'1')` varbinary(4) NOT NULL DEFAULT '',
+ `COALESCE('a' COLLATE latin1_bin,'b')` varchar(1) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
SELECT 'case+union+test'
diff --git a/mysql-test/r/case_insensitive_file_system.require b/mysql-test/r/case_insensitive_file_system.require
new file mode 100644
index 00000000000..062ac610ddd
--- /dev/null
+++ b/mysql-test/r/case_insensitive_file_system.require
@@ -0,0 +1,2 @@
+Variable_name Value
+lower_case_file_system ON
diff --git a/mysql-test/r/cast.result b/mysql-test/r/cast.result
index 88601eceb0a..dd61396e485 100644
--- a/mysql-test/r/cast.result
+++ b/mysql-test/r/cast.result
@@ -19,8 +19,8 @@ select ~5, cast(~5 as signed);
~5 cast(~5 as signed)
18446744073709551610 -6
explain extended select ~5, cast(~5 as signed);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select ~(5) AS `~5`,cast(~(5) as signed) AS `cast(~5 as signed)`
select cast(5 as unsigned) -6.0;
@@ -157,7 +157,7 @@ create table t1 select cast(_koi8r'' as char character set cp1251) as t;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t` varchar(4) character set cp1251 NOT NULL default ''
+ `t` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select
@@ -191,11 +191,11 @@ ab a ab a 6100
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` varbinary(2) NOT NULL default '',
- `c2` varbinary(2) NOT NULL default '',
- `c3` varbinary(2) NOT NULL default '',
- `c4` varbinary(2) NOT NULL default '',
- `c5` varbinary(2) NOT NULL default ''
+ `c1` varbinary(2) NOT NULL DEFAULT '',
+ `c2` varbinary(2) NOT NULL DEFAULT '',
+ `c3` varbinary(2) NOT NULL DEFAULT '',
+ `c4` varbinary(2) NOT NULL DEFAULT '',
+ `c5` varbinary(2) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select
@@ -224,11 +224,11 @@ c1 c2 c3 c4 c5
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` varchar(2) character set utf8 NOT NULL default '',
- `c2` varchar(2) character set utf8 NOT NULL default '',
- `c3` varchar(2) character set utf8 NOT NULL default '',
- `c4` varchar(2) character set utf8 NOT NULL default '',
- `c5` varchar(2) character set utf8 NOT NULL default ''
+ `c1` varchar(2) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c2` varchar(2) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c3` varchar(2) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c4` varchar(2) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c5` varchar(2) CHARACTER SET utf8 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a binary(4), b char(4) character set koi8r);
@@ -380,7 +380,7 @@ select cast(s1 as decimal(7,2)) from t1;
cast(s1 as decimal(7,2))
99999.99
Warnings:
-Error 1264 Out of range value adjusted for column 'cast(s1 as decimal(7,2))' at row 1
+Error 1264 Out of range value for column 'cast(s1 as decimal(7,2))' at row 1
drop table t1;
CREATE TABLE t1 (v varchar(10), tt tinytext, t text,
mt mediumtext, lt longtext);
@@ -439,3 +439,16 @@ HOUR(NULL) MINUTE(NULL) SECOND(NULL)
NULL NULL NULL
DROP TABLE t1;
End of 5.0 tests
+#
+# Bug #44766: valgrind error when using convert() in a subquery
+#
+CREATE TABLE t1(a tinyint);
+INSERT INTO t1 VALUES (127);
+SELECT 1 FROM
+(
+SELECT CONVERT(t2.a USING UTF8) FROM t1, t1 t2 LIMIT 1
+) AS s LIMIT 1;
+1
+1
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/change_user.result b/mysql-test/r/change_user.result
new file mode 100644
index 00000000000..f8d5d900a80
--- /dev/null
+++ b/mysql-test/r/change_user.result
@@ -0,0 +1,48 @@
+Bug#20023
+SELECT @@session.sql_big_selects;
+@@session.sql_big_selects
+1
+SELECT @@global.max_join_size;
+@@global.max_join_size
+HA_POS_ERROR
+change_user
+SELECT @@session.sql_big_selects;
+@@session.sql_big_selects
+1
+SELECT @@global.max_join_size;
+@@global.max_join_size
+HA_POS_ERROR
+SET @@global.max_join_size = 10000;
+SET @@session.max_join_size = default;
+change_user
+SELECT @@session.sql_big_selects;
+@@session.sql_big_selects
+0
+SET @@global.max_join_size = -1;
+SET @@session.max_join_size = default;
+change_user
+SELECT @@session.sql_big_selects;
+@@session.sql_big_selects
+1
+Bug#31418
+SELECT IS_FREE_LOCK('bug31418');
+IS_FREE_LOCK('bug31418')
+1
+SELECT IS_USED_LOCK('bug31418');
+IS_USED_LOCK('bug31418')
+NULL
+SELECT GET_LOCK('bug31418', 1);
+GET_LOCK('bug31418', 1)
+1
+SELECT IS_USED_LOCK('bug31418') = CONNECTION_ID();
+IS_USED_LOCK('bug31418') = CONNECTION_ID()
+1
+change_user
+SELECT IS_FREE_LOCK('bug31418');
+IS_FREE_LOCK('bug31418')
+1
+SELECT IS_USED_LOCK('bug31418');
+IS_USED_LOCK('bug31418')
+NULL
+FLUSH STATUS;
+Value of com_select did not change
diff --git a/mysql-test/r/client_xml.result b/mysql-test/r/client_xml.result
index b7bca426e65..aa4bdb2bd61 100644
--- a/mysql-test/r/client_xml.result
+++ b/mysql-test/r/client_xml.result
@@ -1,3 +1,5 @@
+set @old_concurrent_insert= @@global.concurrent_insert;
+set @@global.concurrent_insert= 0;
drop table if exists t1;
create table t1 (
`a&b` int,
@@ -87,3 +89,4 @@ Empty set
Bye
drop table t1;
+set @@global.concurrent_insert= @old_concurrent_insert;
diff --git a/mysql-test/r/comments.result b/mysql-test/r/comments.result
index b9d0028dc7c..99fab38d7a7 100644
--- a/mysql-test/r/comments.result
+++ b/mysql-test/r/comments.result
@@ -8,7 +8,7 @@ multi line comment */;
;
ERROR 42000: Query was empty
select 1 /*!32301 +1 */;
-1 /*!32301 +1
+1 +1
2
select 1 /*!52301 +1 */;
1
@@ -26,6 +26,16 @@ select 1 # The rest of the row will be ignored
1
1
/* line with only comment */;
+select 1/*!2*/;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2*/' at line 1
+select 1/*!000002*/;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2*/' at line 1
+select 1/*!999992*/;
+1
+1
+select 1 + /*!00000 2 */ + 3 /*!99999 noise*/ + 4;
+1 + 2 + 3 + 4
+10
drop table if exists table_28779;
create table table_28779 (a int);
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*' AND b = 'bar';";
diff --git a/mysql-test/r/commit_1innodb.result b/mysql-test/r/commit_1innodb.result
new file mode 100644
index 00000000000..51c4ac3002c
--- /dev/null
+++ b/mysql-test/r/commit_1innodb.result
@@ -0,0 +1,891 @@
+set sql_mode=no_engine_substitution;
+set storage_engine = InnoDB;
+set autocommit=1;
+drop table if exists t1;
+drop table if exists t2;
+drop table if exists t3;
+drop function if exists f2;
+drop procedure if exists bug12713_call;
+drop procedure if exists bug12713_dump_spvars;
+drop procedure if exists dummy;
+create table t1 (a int);
+create table t2 (a int unique);
+create table t3 (a int);
+set sql_mode=default;
+insert into t1 (a) values (1), (2);
+insert into t3 (a) values (1), (2);
+create function f2(x int) returns int
+begin
+insert into t2 (a) values (x);
+insert into t2 (a) values (x);
+return x;
+end|
+set autocommit=0;
+flush status;
+insert into t2 (a) values (1001);
+insert into t1 (a) values (f2(1));
+ERROR 23000: Duplicate entry '1' for key 'a'
+select * from t2;
+a
+1001
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1002);
+insert into t3 (a) select f2(2) from t1;
+ERROR 23000: Duplicate entry '2' for key 'a'
+select * from t2;
+a
+1002
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1003);
+update t1 set a= a + f2(3);
+ERROR 23000: Duplicate entry '3' for key 'a'
+select * from t2;
+a
+1003
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1004);
+update t1, t3 set t1.a = 0, t3.a = 0 where (f2(4) = 4) and (t1.a = t3.a);
+ERROR 23000: Duplicate entry '4' for key 'a'
+select * from t2;
+a
+1004
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1005);
+delete from t1 where (a = f2(5));
+ERROR 23000: Duplicate entry '5' for key 'a'
+select * from t2;
+a
+1005
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1006);
+delete from t1, t3 using t1, t3 where (f2(6) = 6) ;
+ERROR 23000: Duplicate entry '6' for key 'a'
+select * from t2;
+a
+1006
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1007);
+replace t1 values (f2(7));
+ERROR 23000: Duplicate entry '7' for key 'a'
+select * from t2;
+a
+1007
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1008);
+replace into t3 (a) select f2(8) from t1;
+ERROR 23000: Duplicate entry '8' for key 'a'
+select * from t2;
+a
+1008
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1009);
+select f2(9) from t1 ;
+ERROR 23000: Duplicate entry '9' for key 'a'
+select * from t2;
+a
+1009
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1010);
+show databases where (f2(10) = 10);
+ERROR 23000: Duplicate entry '10' for key 'a'
+select * from t2;
+a
+1010
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1011);
+show tables where (f2(11) = 11);
+ERROR 23000: Duplicate entry '11' for key 'a'
+select * from t2;
+a
+1011
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1012);
+show triggers where (f2(12) = 12);
+ERROR 23000: Duplicate entry '12' for key 'a'
+select * from t2;
+a
+1012
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1013);
+show table status where (f2(13) = 13);
+ERROR 23000: Duplicate entry '13' for key 'a'
+select * from t2;
+a
+1013
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1014);
+show open tables where (f2(14) = 14);
+ERROR 23000: Duplicate entry '14' for key 'a'
+select * from t2;
+a
+1014
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1015);
+show columns in mysql.proc where (f2(15) = 15);
+ERROR 23000: Duplicate entry '15' for key 'a'
+select * from t2;
+a
+1015
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1016);
+show status where (f2(16) = 16);
+ERROR 23000: Duplicate entry '16' for key 'a'
+select * from t2;
+a
+1016
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1017);
+show variables where (f2(17) = 17);
+ERROR 23000: Duplicate entry '17' for key 'a'
+select * from t2;
+a
+1017
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1018);
+show charset where (f2(18) = 18);
+ERROR 23000: Duplicate entry '18' for key 'a'
+select * from t2;
+a
+1018
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1019);
+show collation where (f2(19) = 19);
+ERROR 23000: Duplicate entry '19' for key 'a'
+select * from t2;
+a
+1019
+rollback;
+select * from t2;
+a
+# We need at least one procedure to make sure the WHERE clause is
+# evaluated
+create procedure dummy() begin end;
+insert into t2 (a) values (1020);
+show procedure status where (f2(20) = 20);
+ERROR 23000: Duplicate entry '20' for key 'a'
+select * from t2;
+a
+1020
+rollback;
+select * from t2;
+a
+drop procedure dummy;
+insert into t2 (a) values (1021);
+show function status where (f2(21) = 21);
+ERROR 23000: Duplicate entry '21' for key 'a'
+select * from t2;
+a
+1021
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1022);
+prepare stmt from "insert into t1 (a) values (f2(22))";
+execute stmt;
+ERROR 23000: Duplicate entry '22' for key 'a'
+select * from t2;
+a
+1022
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1023);
+do (f2(23));
+Warnings:
+Error 1062 Duplicate entry '23' for key 'a'
+select * from t2;
+a
+1023
+rollback;
+select * from t2;
+a
+create procedure bug12713_call ()
+begin
+insert into t2 (a) values (24);
+insert into t2 (a) values (24);
+end|
+insert into t2 (a) values (1024);
+call bug12713_call();
+ERROR 23000: Duplicate entry '24' for key 'a'
+select * from t2;
+a
+24
+1024
+rollback;
+select * from t2;
+a
+=======================================================================
+Testing select_to_file
+=======================================================================
+insert into t2 (a) values (1025);
+select f2(25) into outfile "../tmp/dml.out" from t1;
+ERROR 23000: Duplicate entry '25' for key 'a'
+select * from t2;
+a
+1025
+rollback;
+select * from t2;
+a
+insert into t2 (a) values (1026);
+load data infile "../../std_data/words.dat" into table t1 (a) set a:=f2(26);
+ERROR 23000: Duplicate entry '26' for key 'a'
+select * from t2;
+a
+1026
+rollback;
+select * from t2;
+a
+=======================================================================
+Testing select_dumpvar
+=======================================================================
+insert into t2 (a) values (1027);
+select f2(27) into @foo;
+ERROR 23000: Duplicate entry '27' for key 'a'
+select * from t2;
+a
+1027
+rollback;
+select * from t2;
+a
+=======================================================================
+Testing Select_fetch_into_spvars
+=======================================================================
+create procedure bug12713_dump_spvars ()
+begin
+declare foo int;
+declare continue handler for sqlexception
+begin
+select "Exception trapped";
+end;
+select f2(28) into foo;
+select * from t2;
+end|
+insert into t2 (a) values (1028);
+call bug12713_dump_spvars ();
+Exception trapped
+Exception trapped
+a
+1028
+rollback;
+select * from t2;
+a
+=======================================================================
+Cleanup
+=======================================================================
+set autocommit=default;
+drop table t1;
+drop table t2;
+drop table t3;
+drop function f2;
+drop procedure bug12713_call;
+drop procedure bug12713_dump_spvars;
+#
+# Bug#12713 Error in a stored function called from a SELECT doesn't
+# cause ROLLBACK of statem
+#
+# Verify that two-phase commit is not issued for read-only
+# transactions.
+#
+# Verify that two-phase commit is issued for read-write transactions,
+# even if the change is done inside a stored function called from
+# SELECT or SHOW statement.
+#
+set autocommit=0;
+drop table if exists t1;
+drop table if exists t2;
+drop function if exists f1;
+drop procedure if exists p_verify_status_increment;
+set @binlog_format=@@global.binlog_format;
+set sql_mode=no_engine_substitution;
+create table t1 (a int unique);
+create table t2 (a int) engine=myisam;
+set sql_mode=default;
+#
+# An auxiliary procedure to track Handler_prepare and Handler_commit
+# statistics.
+#
+create procedure
+p_verify_status_increment(commit_inc_mixed int, prepare_inc_mixed int,
+commit_inc_row int, prepare_inc_row int)
+begin
+declare commit_inc int;
+declare prepare_inc int;
+declare old_commit_count int default ifnull(@commit_count, 0);
+declare old_prepare_count int default ifnull(@prepare_count, 0);
+declare c_res int;
+# Use a cursor to have just one access to I_S instead of 2, it is very slow
+# and amounts for over 90% of test CPU time
+declare c cursor for
+select variable_value
+from information_schema.session_status
+where variable_name='Handler_commit' or variable_name='Handler_prepare'
+ order by variable_name;
+if @binlog_format = 'ROW' then
+set commit_inc= commit_inc_row;
+set prepare_inc= prepare_inc_row;
+else
+set commit_inc= commit_inc_mixed;
+set prepare_inc= prepare_inc_mixed;
+end if;
+open c;
+fetch c into c_res;
+set @commit_count=c_res;
+fetch c into c_res;
+set @prepare_count=c_res;
+close c;
+if old_commit_count + commit_inc <> @commit_count then
+select concat("Expected commit increment: ", commit_inc,
+" actual: ", @commit_count - old_commit_count)
+as 'ERROR';
+elseif old_prepare_count + prepare_inc <> @prepare_count then
+select concat("Expected prepare increment: ", prepare_inc,
+" actual: ", @prepare_count - old_prepare_count)
+as 'ERROR';
+else
+select '' as 'SUCCESS';
+end if;
+end|
+# Reset Handler_commit and Handler_prepare counters
+flush status;
+#
+# 1. Read-only statement: SELECT
+#
+select * from t1;
+a
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+# 2. Read-write statement: INSERT, insert 1 row.
+#
+insert into t1 (a) values (1);
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 3. Read-write statement: UPDATE, update 1 row.
+#
+update t1 set a=2;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 4. Read-write statement: UPDATE, update 0 rows, 1 row matches WHERE
+#
+update t1 set a=2;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+# 5. Read-write statement: UPDATE, update 0 rows, 0 rows match WHERE
+#
+# In mixed replication mode, there is a read-only transaction
+# in InnoDB and also the statement is written to the binary log.
+# So we have two commits but no 2pc, since the first engine's
+# transaction is read-only.
+# In the row level replication mode, we only have the read-only
+# transaction in InnoDB and nothing is written to the binary log.
+#
+update t1 set a=3 where a=1;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+# 6. Read-write statement: DELETE, delete 0 rows.
+#
+delete from t1 where a=1;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+# 7. Read-write statement: DELETE, delete 1 row.
+#
+delete from t1 where a=2;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 8. Read-write statement: unqualified DELETE
+#
+# In statement or mixed replication mode, we call
+# handler::ha_delete_all_rows() and write statement text
+# to the binary log. This results in two read-write transactions.
+# In row level replication mode, we do not call
+# handler::ha_delete_all_rows(), but delete rows one by one.
+# Since there are no rows, nothing is written to the binary log.
+# Thus we have just one read-only transaction in InnoDB.
+delete from t1;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+# 9. Read-write statement: REPLACE, change 1 row.
+#
+replace t1 set a=1;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 10. Read-write statement: REPLACE, change 0 rows.
+#
+replace t1 set a=1;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+# 11. Read-write statement: IODKU, change 1 row.
+#
+insert t1 set a=1 on duplicate key update a=a+1;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+select * from t1;
+a
+2
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 12. Read-write statement: IODKU, change 0 rows.
+#
+insert t1 set a=2 on duplicate key update a=2;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+# 13. Read-write statement: INSERT IGNORE, change 0 rows.
+#
+insert ignore t1 set a=2;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+# 14. Read-write statement: INSERT IGNORE, change 1 row.
+#
+insert ignore t1 set a=1;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 15. Read-write statement: UPDATE IGNORE, change 0 rows.
+#
+update ignore t1 set a=2 where a=1;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 1, 0);
+SUCCESS
+
+#
+# Create a stored function that modifies a
+# non-transactional table. Demonstrate that changes in
+# non-transactional tables do not affect the two phase commit
+# algorithm.
+#
+create function f1() returns int
+begin
+insert t2 set a=2;
+return 2;
+end|
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+# 16. A function changes non-trans-table.
+#
+# For row-based logging, there is an extra commit for the
+# non-transactional changes saved in the transaction cache to
+# the binary log.
+#
+select f1();
+f1()
+2
+call p_verify_status_increment(0, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(0, 0, 1, 0);
+SUCCESS
+
+# 17. Read-only statement, a function changes non-trans-table.
+#
+# For row-based logging, there is an extra commit for the
+# non-transactional changes saved in the transaction cache to
+# the binary log.
+#
+select f1() from t1;
+f1()
+2
+2
+call p_verify_status_increment(1, 0, 2, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(1, 0, 2, 0);
+SUCCESS
+
+# 18. Read-write statement: UPDATE, change 0 (transactional) rows.
+#
+select count(*) from t2;
+count(*)
+3
+update t1 set a=2 where a=f1()+10;
+select count(*) from t2;
+count(*)
+5
+call p_verify_status_increment(2, 0, 2, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 0, 2, 0);
+SUCCESS
+
+#
+# Replace the non-transactional table with a temporary
+# transactional table. Demonstrate that a change to a temporary
+# transactional table does not provoke 2-phase commit, although
+# does trigger a commit and a binlog write (in statement mode).
+#
+drop table t2;
+set sql_mode=no_engine_substitution;
+create temporary table t2 (a int);
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+set sql_mode=default;
+# 19. A function changes temp-trans-table.
+#
+select f1();
+f1()
+2
+# Two commits because a binary log record is written
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+# 20. Read-only statement, a function changes non-trans-table.
+#
+select f1() from t1;
+f1()
+2
+2
+# Two commits because a binary log record is written
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+# 21. Read-write statement: UPDATE, change 0 (transactional) rows.
+#
+update t1 set a=2 where a=f1()+10;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+# 22. DDL: ALTER TEMPORARY TABLE, should not cause a 2pc
+#
+alter table t2 add column b int default 5;
+# A commit is done internally by ALTER.
+call p_verify_status_increment(2, 0, 2, 0);
+SUCCESS
+
+commit;
+# There is nothing left to commit
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+# 23. DDL: RENAME TEMPORARY TABLE, does not start a transaction
+
+# No test because of Bug#8729 "rename table fails on temporary table"
+# 24. DDL: TRUNCATE TEMPORARY TABLE
+
+truncate table t2;
+call p_verify_status_increment(4, 0, 4, 0);
+ERROR
+Expected commit increment: 4 actual: 2
+commit;
+# There is nothing left to commit
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+# 25. Read-write statement: unqualified DELETE
+
+delete from t2;
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+commit;
+# There is nothing left to commit
+call p_verify_status_increment(2, 0, 1, 0);
+SUCCESS
+
+# 25. DDL: DROP TEMPORARY TABLE, does not start a transaction
+#
+drop temporary table t2;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+# 26. Verify that SET AUTOCOMMIT issues an implicit commit
+#
+insert t1 set a=3;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+set autocommit=1;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+rollback;
+select a from t1 where a=3;
+a
+3
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+delete from t1 where a=3;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+set autocommit=0;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+insert t1 set a=3;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# Sic: not actually changing the value of autocommit
+set autocommit=0;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+rollback;
+select a from t1 where a=3;
+a
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+# 27. Savepoint management
+#
+insert t1 set a=3;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+savepoint a;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+insert t1 set a=4;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+release savepoint a;
+rollback;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+select a from t1 where a=3;
+a
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+# 28. Read-write statement: DO
+#
+create table t2 (a int);
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+do (select f1() from t1 where a=2);
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+commit;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+# 29. Read-write statement: MULTI-DELETE
+#
+delete t1, t2 from t1 join t2 on (t1.a=t2.a) where t1.a=2;
+commit;
+call p_verify_status_increment(4, 4, 4, 4);
+SUCCESS
+
+# 30. Read-write statement: INSERT-SELECT, MULTI-UPDATE, REPLACE-SELECT
+#
+insert into t2 select a from t1;
+commit;
+replace into t2 select a from t1;
+commit;
+call p_verify_status_increment(8, 8, 8, 8);
+SUCCESS
+
+update t1, t2 set t1.a=4, t2.a=8 where t1.a=t2.a and t1.a=1;
+commit;
+call p_verify_status_increment(4, 4, 4, 4);
+SUCCESS
+
+# 31. DDL: various DDL with transactional tables
+#
+# Sic: no table is created.
+create table if not exists t2 (a int) select 6 union select 7;
+Warnings:
+Note 1050 Table 't2' already exists
+# Sic: first commits the statement, and then the transaction.
+call p_verify_status_increment(4, 4, 4, 4);
+SUCCESS
+
+create table t3 select a from t2;
+call p_verify_status_increment(4, 4, 4, 4);
+SUCCESS
+
+alter table t3 add column (b int);
+call p_verify_status_increment(2, 0, 2, 0);
+SUCCESS
+
+alter table t3 rename t4;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+rename table t4 to t3;
+call p_verify_status_increment(2, 2, 2, 2);
+SUCCESS
+
+truncate table t3;
+call p_verify_status_increment(4, 4, 4, 4);
+SUCCESS
+
+create view v1 as select * from t2;
+call p_verify_status_increment(1, 0, 1, 0);
+SUCCESS
+
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+call p_verify_status_increment(3, 0, 3, 0);
+SUCCESS
+
+# Sic: after this bug is fixed, CHECK leaves no pending transaction
+commit;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+check table t1, t2, t3;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+test.t2 check status OK
+test.t3 check status OK
+call p_verify_status_increment(6, 0, 6, 0);
+SUCCESS
+
+commit;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+drop view v1;
+call p_verify_status_increment(0, 0, 0, 0);
+SUCCESS
+
+#
+# Cleanup
+#
+drop table t1, t2, t3;
+drop procedure p_verify_status_increment;
+drop function f1;
diff --git a/mysql-test/r/compare.result b/mysql-test/r/compare.result
index 748e8a5884b..f9563b89b76 100644
--- a/mysql-test/r/compare.result
+++ b/mysql-test/r/compare.result
@@ -61,10 +61,10 @@ CONCAT(b,c) CONCAT(b,c) = '0101'
0101 1
0202 0
EXPLAIN EXTENDED SELECT b,c FROM t1 WHERE b = 1 AND CONCAT(b,c) = '0101';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where ((`test`.`t1`.`b` = 1) and (concat(_binary'01',`test`.`t1`.`c`) = _latin1'0101'))
+Note 1003 select `test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where ((`test`.`t1`.`b` = 1) and (concat('01',`test`.`t1`.`c`) = '0101'))
SELECT b,c FROM t1 WHERE b = 1 AND CONCAT(b,c) = '0101';
b c
01 01
@@ -82,13 +82,13 @@ SELECT a,
(SELECT COUNT(*) FROM t1
WHERE b = t2.a AND CONCAT(b,c) = CONCAT('0',t2.a,'01')) x
FROM t2 ORDER BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using filesort
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00 Using filesort
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 3 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t2.a' of SELECT #2 was resolved in SELECT #1
Note 1276 Field or reference 'test.t2.a' of SELECT #2 was resolved in SELECT #1
-Note 1003 select `test`.`t2`.`a` AS `a`,(select count(0) AS `COUNT(*)` from `test`.`t1` where ((`test`.`t1`.`b` = `test`.`t2`.`a`) and (concat(`test`.`t1`.`b`,`test`.`t1`.`c`) = concat(_latin1'0',`test`.`t2`.`a`,_latin1'01')))) AS `x` from `test`.`t2` order by `test`.`t2`.`a`
+Note 1003 select `test`.`t2`.`a` AS `a`,(select count(0) AS `COUNT(*)` from `test`.`t1` where ((`test`.`t1`.`b` = `test`.`t2`.`a`) and (concat(`test`.`t1`.`b`,`test`.`t1`.`c`) = concat('0',`test`.`t2`.`a`,'01')))) AS `x` from `test`.`t2` order by `test`.`t2`.`a`
DROP TABLE t1,t2;
CREATE TABLE t1 (a TIMESTAMP);
INSERT INTO t1 VALUES (NOW()),(NOW()),(NOW());
diff --git a/mysql-test/r/compress.result b/mysql-test/r/compress.result
index cce66fd84ef..1d3752f09e7 100644
--- a/mysql-test/r/compress.result
+++ b/mysql-test/r/compress.result
@@ -1,6 +1,9 @@
SHOW STATUS LIKE 'Compression';
Variable_name Value
Compression ON
+select * from information_schema.session_status where variable_name= 'COMPRESSION';
+VARIABLE_NAME VARIABLE_VALUE
+COMPRESSION ON
drop table if exists t1,t2,t3,t4;
CREATE TABLE t1 (
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
@@ -145,9 +148,9 @@ explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
explain select fld3 from t2 use index (not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
@@ -608,11 +611,11 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index period period 4 NULL 41810
+1 SIMPLE t3 index period period 4 NULL 1
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index period period 4 NULL 41810
+1 SIMPLE t1 index period period 4 NULL 1
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
@@ -1432,7 +1435,7 @@ companynr companynr
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Using join buffer
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
@@ -1505,10 +1508,10 @@ select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1)
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 100.00 Using where
Warnings:
-Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
+Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> ''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
diff --git a/mysql-test/r/concurrent_innodb_safelog.result b/mysql-test/r/concurrent_innodb_safelog.result
new file mode 100644
index 00000000000..24a84afb9ce
--- /dev/null
+++ b/mysql-test/r/concurrent_innodb_safelog.result
@@ -0,0 +1,792 @@
+SET GLOBAL TRANSACTION ISOLATION LEVEL REPEATABLE READ;
+SELECT @@global.tx_isolation;
+@@global.tx_isolation
+REPEATABLE-READ
+SELECT @@global.innodb_locks_unsafe_for_binlog;
+@@global.innodb_locks_unsafe_for_binlog
+0
+# keep_locks == 1
+GRANT USAGE ON test.* TO mysqltest@localhost;
+drop table if exists t1;
+
+**
+** two UPDATE's running and both changing distinct result sets
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** Get user level lock (ULL) for thread 1
+select get_lock("hello",10);
+get_lock("hello",10)
+1
+** connection thread2
+** Start transaction for thread 2
+begin;
+** Update will cause a table scan and a new ULL will
+** be created and blocked on the first row where tipo=11.
+update t1 set eta=1+get_lock("hello",10)*0 where tipo=11;
+** connection thread1
+** Start new transaction for thread 1
+begin;
+** Update on t1 will cause a table scan which will be blocked because
+** the previously initiated table scan applied exclusive key locks on
+** all primary keys.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set eta=2 where tipo=22;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** Release user level name lock from thread 1. This will cause the ULL
+** on thread 2 to end its wait.
+DO release_lock("hello");
+** Table is now updated with a new eta on tipo=22 for thread 1.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** Release the lock and collect result from update on thread 2
+DO release_lock("hello");
+** Table should have eta updates where tipo=11 but updates made by
+** thread 1 shouldn't be visible yet.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Sending commit on thread 2.
+commit;
+** connection thread1
+** Make sure table reads didn't change yet on thread 1.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** And send final commit on thread 1.
+commit;
+** Table should now be updated by both updates in the order of
+** thread 1,2.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** Make sure the output is similar for t1.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** two UPDATE's running and one changing result set
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** Get ULL "hello" on thread 1
+select get_lock("hello",10);
+get_lock("hello",10)
+1
+** connection thread2
+** Start transaction on thread 2
+begin;
+** Update will cause a table scan.
+** This will cause a hang on the first row where tipo=1 until the
+** blocking ULL is released.
+update t1 set eta=1+get_lock("hello",10)*0 where tipo=1;
+** connection thread1
+** Start transaction on thread 1
+begin;
+** Update on t1 will cause a table scan which will be blocked because
+** the previously initiated table scan applied exclusive key locks on
+** all primary keys.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set tipo=1 where tipo=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** Release ULL. This will release the next waiting ULL on thread 2.
+DO release_lock("hello");
+** The table should still be updated with updates for thread 1 only:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** Release the lock and collect result from thread 2:
+DO release_lock("hello");
+** Seen from thread 2 the table should have been updated on four
+** places.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+** Thread 2 has committed but the result should remain the same for
+** thread 1 (updated on three places):
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** After a commit the table should be merged with the previous
+** commit.
+** This select should show both updates:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** One UPDATE and one INSERT .... Monty's test
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1 (a int not null, b int not null);
+insert into t1 values (1,1),(2,1),(3,1),(4,1);
+** Create ULL 'hello2'
+select get_lock("hello2",10);
+get_lock("hello2",10)
+1
+** connection thread2
+** Begin a new transaction on thread 2
+begin;
+** Update will create a table scan which creates a ULL where a=2;
+** this will hang waiting on thread 1.
+update t1 set b=10+get_lock(concat("hello",a),10)*0 where a=2;
+** connection thread1
+** Insert new values to t1 from thread 1; this created an implicit
+** commit since there are no on-going transactions.
+insert into t1 values (1,1);
+** Release the ULL (thread 2 updates will finish).
+DO release_lock("hello2");
+** ..but thread 1 will still see t1 as if nothing has happend:
+select * from t1;
+a b
+1 1
+2 1
+3 1
+4 1
+1 1
+** connection thread2
+** Collect results from thread 2 and release the lock.
+DO release_lock("hello2");
+** The table should look like the original+updates for thread 2,
+** and consist of new rows:
+select * from t1;
+a b
+1 1
+2 10
+3 1
+4 1
+1 1
+** Commit changes from thread 2
+commit;
+** connection default
+drop table t1;
+
+**
+** one UPDATE changing result set and SELECT ... FOR UPDATE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+** Begin a new transaction on thread 2
+begin;
+** Select a range for update.
+select * from t1 where tipo=2 FOR UPDATE;
+eta tipo c
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+** connection thread1
+** Begin a new transaction on thread 1
+begin;
+** Update the same range which is marked for update on thread 2; this
+** will hang because of row locks.
+update t1 set tipo=1 where tipo=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** After the update the table will be unmodified because the previous
+** transaction failed and was rolled back.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** The table should look unmodified from thread 2.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Sending a commit should release the row locks and enable
+** thread 1 to complete the transaction.
+commit;
+** connection thread1
+** Commit on thread 1.
+commit;
+** connection thread2
+** The table should not have been changed.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+** Even on thread 1:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** one UPDATE not changing result set and SELECT ... FOR UPDATE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+** Starting new transaction on thread 2.
+begin;
+** Starting SELECT .. FOR UPDATE
+select * from t1 where tipo=2 FOR UPDATE;
+eta tipo c
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+** connection thread1
+
+** Starting new transaction on thread 1
+begin;
+** Updating single row using a table scan. This will time out
+** because of ongoing transaction on thread 1 holding lock on
+** all primary keys in the scan.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set tipo=11 where tipo=22;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** After the time out the transaction is aborted; no rows should
+** have changed.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** The same thing should hold true for the transaction on
+** thread 2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+commit;
+** connection thread2
+** Even after committing:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** two SELECT ... FOR UPDATE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+** Begin a new transaction on thread 2
+begin;
+select * from t1 where tipo=2 FOR UPDATE;
+eta tipo c
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+** connection thread1
+** Begin a new transaction on thread 1
+begin;
+** Selecting a range for update by table scan will be blocked
+** because of on-going transaction on thread 2.
+select * from t1 where tipo=1 FOR UPDATE;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** connection thread2
+** Table will be unchanged and the select command will not be
+** blocked:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Commit transacton on thread 2.
+commit;
+** connection thread1
+** Commit transaction on thread 1.
+commit;
+** connection thread2
+** Make sure table isn't blocked on thread 2:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+** Make sure table isn't blocked on thread 1:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** one UPDATE changing result set and DELETE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+begin;
+delete from t1 where tipo=2;
+** connection thread1
+begin;
+update t1 set tipo=1 where tipo=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+commit;
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** one UPDATE not changing result set and DELETE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+begin;
+delete from t1 where tipo=2;
+** connection thread1
+begin;
+** Update on t1 will cause a table scan which will be blocked because
+** the previously initiated table scan applied exclusive key locks on
+** all primary keys.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set tipo=1 where tipo=22;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+commit;
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Cleanup
+** connection thread2
+** connection default
+drop table t1;
+drop user mysqltest@localhost;
diff --git a/mysql-test/r/concurrent_innodb_unsafelog.result b/mysql-test/r/concurrent_innodb_unsafelog.result
new file mode 100644
index 00000000000..35fc2d89cfe
--- /dev/null
+++ b/mysql-test/r/concurrent_innodb_unsafelog.result
@@ -0,0 +1,788 @@
+SET GLOBAL TRANSACTION ISOLATION LEVEL REPEATABLE READ;
+SELECT @@global.tx_isolation;
+@@global.tx_isolation
+REPEATABLE-READ
+SELECT @@global.innodb_locks_unsafe_for_binlog;
+@@global.innodb_locks_unsafe_for_binlog
+1
+# keep_locks == 0
+GRANT USAGE ON test.* TO mysqltest@localhost;
+drop table if exists t1;
+
+**
+** two UPDATE's running and both changing distinct result sets
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** Get user level lock (ULL) for thread 1
+select get_lock("hello",10);
+get_lock("hello",10)
+1
+** connection thread2
+** Start transaction for thread 2
+begin;
+** Update will cause a table scan and a new ULL will
+** be created and blocked on the first row where tipo=11.
+update t1 set eta=1+get_lock("hello",10)*0 where tipo=11;
+** connection thread1
+** Start new transaction for thread 1
+begin;
+** Update on t1 will cause a table scan which will be blocked because
+** the previously initiated table scan applied exclusive key locks on
+** all primary keys.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set eta=2 where tipo=22;
+** Release user level name lock from thread 1. This will cause the ULL
+** on thread 2 to end its wait.
+DO release_lock("hello");
+** Table is now updated with a new eta on tipo=22 for thread 1.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+2 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** Release the lock and collect result from update on thread 2
+DO release_lock("hello");
+** Table should have eta updates where tipo=11 but updates made by
+** thread 1 shouldn't be visible yet.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Sending commit on thread 2.
+commit;
+** connection thread1
+** Make sure table reads didn't change yet on thread 1.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+2 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** And send final commit on thread 1.
+commit;
+** Table should now be updated by both updates in the order of
+** thread 1,2.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+2 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** Make sure the output is similar for t1.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+2 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+2 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+1 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** two UPDATE's running and one changing result set
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** Get ULL "hello" on thread 1
+select get_lock("hello",10);
+get_lock("hello",10)
+1
+** connection thread2
+** Start transaction on thread 2
+begin;
+** Update will cause a table scan.
+** This will cause a hang on the first row where tipo=1 until the
+** blocking ULL is released.
+update t1 set eta=1+get_lock("hello",10)*0 where tipo=1;
+** connection thread1
+** Start transaction on thread 1
+begin;
+** Update on t1 will cause a table scan which will be blocked because
+** the previously initiated table scan applied exclusive key locks on
+** all primary keys.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set tipo=1 where tipo=2;
+** Release ULL. This will release the next waiting ULL on thread 2.
+DO release_lock("hello");
+** The table should still be updated with updates for thread 1 only:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 1 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 1 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** Release the lock and collect result from thread 2:
+DO release_lock("hello");
+** Seen from thread 2 the table should have been updated on four
+** places.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+** Thread 2 has committed but the result should remain the same for
+** thread 1 (updated on three places):
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 1 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 1 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** After a commit the table should be merged with the previous
+** commit.
+** This select should show both updates:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 1 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 1 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 1 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 1 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+1 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 1 ddddddddddddddddddddddddddddddddddddddddddd
+1 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 1 fffffffffffffffffffffffffffffffffffffffffff
+1 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+1 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** One UPDATE and one INSERT .... Monty's test
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1 (a int not null, b int not null);
+insert into t1 values (1,1),(2,1),(3,1),(4,1);
+** Create ULL 'hello2'
+select get_lock("hello2",10);
+get_lock("hello2",10)
+1
+** connection thread2
+** Begin a new transaction on thread 2
+begin;
+** Update will create a table scan which creates a ULL where a=2;
+** this will hang waiting on thread 1.
+update t1 set b=10+get_lock(concat("hello",a),10)*0 where a=2;
+** connection thread1
+** Insert new values to t1 from thread 1; this created an implicit
+** commit since there are no on-going transactions.
+insert into t1 values (1,1);
+** Release the ULL (thread 2 updates will finish).
+DO release_lock("hello2");
+** ..but thread 1 will still see t1 as if nothing has happend:
+select * from t1;
+a b
+1 1
+2 1
+3 1
+4 1
+1 1
+** connection thread2
+** Collect results from thread 2 and release the lock.
+DO release_lock("hello2");
+** The table should look like the original+updates for thread 2,
+** and consist of new rows:
+select * from t1;
+a b
+1 1
+2 10
+3 1
+4 1
+1 1
+** Commit changes from thread 2
+commit;
+** connection default
+drop table t1;
+
+**
+** one UPDATE changing result set and SELECT ... FOR UPDATE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+** Begin a new transaction on thread 2
+begin;
+** Select a range for update.
+select * from t1 where tipo=2 FOR UPDATE;
+eta tipo c
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+** connection thread1
+** Begin a new transaction on thread 1
+begin;
+** Update the same range which is marked for update on thread 2; this
+** will hang because of row locks.
+update t1 set tipo=1 where tipo=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** After the update the table will be unmodified because the previous
+** transaction failed and was rolled back.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** The table should look unmodified from thread 2.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Sending a commit should release the row locks and enable
+** thread 1 to complete the transaction.
+commit;
+** connection thread1
+** Commit on thread 1.
+commit;
+** connection thread2
+** The table should not have been changed.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+** Even on thread 1:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** one UPDATE not changing result set and SELECT ... FOR UPDATE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+** Starting new transaction on thread 2.
+begin;
+** Starting SELECT .. FOR UPDATE
+select * from t1 where tipo=2 FOR UPDATE;
+eta tipo c
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+** connection thread1
+
+** Starting new transaction on thread 1
+begin;
+** Updating single row using a table scan. This will time out
+** because of ongoing transaction on thread 1 holding lock on
+** all primary keys in the scan.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set tipo=11 where tipo=22;
+** After the time out the transaction is aborted; no rows should
+** have changed.
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 11 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+** The same thing should hold true for the transaction on
+** thread 2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+commit;
+** connection thread2
+** Even after committing:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 11 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 11 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** two SELECT ... FOR UPDATE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+** Begin a new transaction on thread 2
+begin;
+select * from t1 where tipo=2 FOR UPDATE;
+eta tipo c
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+** connection thread1
+** Begin a new transaction on thread 1
+begin;
+** Selecting a range for update by table scan will be blocked
+** because of on-going transaction on thread 2.
+select * from t1 where tipo=1 FOR UPDATE;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+** connection thread2
+** Table will be unchanged and the select command will not be
+** blocked:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Commit transacton on thread 2.
+commit;
+** connection thread1
+** Commit transaction on thread 1.
+commit;
+** connection thread2
+** Make sure table isn't blocked on thread 2:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+** Make sure table isn't blocked on thread 1:
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** one UPDATE changing result set and DELETE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+begin;
+delete from t1 where tipo=2;
+** connection thread1
+begin;
+update t1 set tipo=1 where tipo=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+commit;
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection default
+drop table t1;
+
+**
+** one UPDATE not changing result set and DELETE
+**
+** connection thread1
+** Set up table
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(eta int(11) not null, tipo int(11), c varchar(255));
+insert into t1 values (7,7, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
+insert into t1 values (8,8, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb");
+insert into t1 values (10,1,"ccccccccccccccccccccccccccccccccccccccccccc");
+insert into t1 values (20,2,"ddddddddddddddddddddddddddddddddddddddddddd");
+insert into t1 values (30,1,"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
+insert into t1 values (40,2,"fffffffffffffffffffffffffffffffffffffffffff");
+insert into t1 values (50,1,"ggggggggggggggggggggggggggggggggggggggggggg");
+insert into t1 values (60,2,"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");
+insert into t1 values (70,1,"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
+insert into t1 values (80,22,"jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj");
+insert into t1 values (90,11,"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");
+** connection thread2
+begin;
+delete from t1 where tipo=2;
+** connection thread1
+begin;
+** Update on t1 will cause a table scan which will be blocked because
+** the previously initiated table scan applied exclusive key locks on
+** all primary keys.
+** Not so if innodb_locks_unsafe_for_binlog is set. The locks that
+** do not match the WHERE condition are released.
+update t1 set tipo=1 where tipo=22;
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+20 2 ddddddddddddddddddddddddddddddddddddddddddd
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+40 2 fffffffffffffffffffffffffffffffffffffffffff
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+60 2 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 1 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 22 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+commit;
+** connection thread1
+commit;
+** connection thread2
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 1 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** connection thread1
+select * from t1;
+eta tipo c
+7 7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+8 8 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+10 1 ccccccccccccccccccccccccccccccccccccccccccc
+30 1 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+50 1 ggggggggggggggggggggggggggggggggggggggggggg
+70 1 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+80 1 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
+90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
+** Cleanup
+** connection thread2
+** connection default
+drop table t1;
+drop user mysqltest@localhost;
diff --git a/mysql-test/r/connect.result b/mysql-test/r/connect.result
index 4f49f77d46c..5e6c013bb38 100644
--- a/mysql-test/r/connect.result
+++ b/mysql-test/r/connect.result
@@ -3,14 +3,20 @@ show tables;
Tables_in_mysql
columns_priv
db
+event
func
+general_log
help_category
help_keyword
help_relation
help_topic
host
+ndb_binlog_index
+plugin
proc
procs_priv
+servers
+slow_log
tables_priv
time_zone
time_zone_leap_second
@@ -30,14 +36,20 @@ show tables;
Tables_in_mysql
columns_priv
db
+event
func
+general_log
help_category
help_keyword
help_relation
help_topic
host
+ndb_binlog_index
+plugin
proc
procs_priv
+servers
+slow_log
tables_priv
time_zone
time_zone_leap_second
@@ -65,14 +77,20 @@ show tables;
Tables_in_mysql
columns_priv
db
+event
func
+general_log
help_category
help_keyword
help_relation
help_topic
host
+ndb_binlog_index
+plugin
proc
procs_priv
+servers
+slow_log
tables_priv
time_zone
time_zone_leap_second
@@ -97,3 +115,106 @@ create temporary table t2(id integer not null auto_increment primary key);
set @id := 1;
delete from t1 where id like @id;
drop table t1;
+# ------------------------------------------------------------------
+# -- End of 4.1 tests
+# ------------------------------------------------------------------
+
+# -- Bug#33507: Event scheduler creates more threads than max_connections
+# -- which results in user lockout.
+
+GRANT USAGE ON *.* TO mysqltest_u1@localhost;
+
+SET GLOBAL max_connections = 3;
+SET GLOBAL event_scheduler = ON;
+
+# -- Waiting for Event Scheduler to start...
+
+# -- Disconnecting default connection...
+
+# -- Check that we allow exactly three user connections, no matter how
+# -- many threads are running.
+
+# -- Connecting (1)...
+# -- Establishing connection 'con_1' (user: mysqltest_u1)...
+# -- Connection 'con_1' has been established.
+
+# -- Connecting (2)...
+# -- Establishing connection 'con_2' (user: mysqltest_u1)...
+# -- Connection 'con_2' has been established.
+
+# -- Connecting (3)...
+# -- Establishing connection 'con_3' (user: mysqltest_u1)...
+# -- Connection 'con_3' has been established.
+
+# -- Connecting (4) [should fail]...
+# -- Establishing connection 'con_4' (user: mysqltest_u1)...
+# -- Error: can not establish connection 'con_4'.
+
+# -- Check that we allow one extra SUPER-user connection.
+
+# -- Connecting super (1)...
+# -- Establishing connection 'con_super_1' (user: root)...
+# -- Connection 'con_super_1' has been established.
+
+# -- Connecting super (2) [should fail]...
+# -- Establishing connection 'con_super_2' (user: root)...
+# -- Error: can not establish connection 'con_super_2'.
+
+# -- Ensure that we have Event Scheduler thread, 3 ordinary user
+# -- connections and one extra super-user connection.
+SELECT user FROM information_schema.processlist ORDER BY id;
+user
+event_scheduler
+mysqltest_u1
+mysqltest_u1
+mysqltest_u1
+root
+
+# -- Resetting variables...
+SET GLOBAL max_connections = 151;
+
+# -- Stopping Event Scheduler...
+SET GLOBAL event_scheduler = OFF;
+
+# -- Waiting for Event Scheduler to stop...
+
+# -- That's it. Closing connections...
+
+# -- Restoring default connection...
+
+# -- Waiting for connections to close...
+
+DROP USER mysqltest_u1@localhost;
+
+# -- End of Bug#33507.
+
+# -- Bug#35074: max_used_connections is not correct.
+
+FLUSH STATUS;
+
+SHOW STATUS LIKE 'max_used_connections';
+Variable_name Value
+Max_used_connections 1
+
+# -- Starting Event Scheduler...
+SET GLOBAL event_scheduler = ON;
+# -- Waiting for Event Scheduler to start...
+
+# -- Opening a new connection to check max_used_connections...
+
+# -- Check that max_used_connections hasn't changed.
+SHOW STATUS LIKE 'max_used_connections';
+Variable_name Value
+Max_used_connections 2
+
+# -- Closing new connection...
+
+# -- Stopping Event Scheduler...
+SET GLOBAL event_scheduler = OFF;
+# -- Waiting for Event Scheduler to stop...
+
+# -- End of Bug#35074.
+
+# ------------------------------------------------------------------
+# -- End of 5.1 tests
+# ------------------------------------------------------------------
diff --git a/mysql-test/r/consistent_snapshot.result b/mysql-test/r/consistent_snapshot.result
index 694c996a58e..3a0227b1a1a 100644
--- a/mysql-test/r/consistent_snapshot.result
+++ b/mysql-test/r/consistent_snapshot.result
@@ -1,6 +1,9 @@
DROP TABLE IF EXISTS t1;
# Establish connection con1 (user=root)
# Establish connection con2 (user=root)
+### Test 1:
+### - While a consistent snapshot transaction is executed,
+### no external inserts should be visible to the transaction.
# Switch to connection con1
CREATE TABLE t1 (a INT) ENGINE=innodb;
START TRANSACTION WITH CONSISTENT SNAPSHOT;
@@ -10,6 +13,9 @@ INSERT INTO t1 VALUES(1);
SELECT * FROM t1;
a
COMMIT;
+### Test 2:
+### - For any non-consistent snapshot transaction, external
+### committed inserts should be visible to the transaction.
DELETE FROM t1;
START TRANSACTION;
# Switch to connection con2
@@ -19,5 +25,18 @@ SELECT * FROM t1;
a
1
COMMIT;
+### Test 3:
+### - Bug#44664: valgrind warning for COMMIT_AND_CHAIN and ROLLBACK_AND_CHAIN
+### Chaining a transaction does not retain consistency level.
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+DELETE FROM t1;
+COMMIT WORK AND CHAIN;
+# Switch to connection con2
+INSERT INTO t1 VALUES(1);
+# Switch to connection con1
+SELECT * FROM t1;
+a
+1
+COMMIT;
# Switch to connection default + close connections con1 and con2
DROP TABLE t1;
diff --git a/mysql-test/r/constraints.result b/mysql-test/r/constraints.result
index d4d525c8991..116efe429d5 100644
--- a/mysql-test/r/constraints.result
+++ b/mysql-test/r/constraints.result
@@ -21,7 +21,7 @@ alter table t1 add constraint constraint_2 unique key_2(a);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) default NULL,
+ `a` int(11) DEFAULT NULL,
UNIQUE KEY `constraint_1` (`a`),
UNIQUE KEY `key_1` (`a`),
UNIQUE KEY `key_2` (`a`)
diff --git a/mysql-test/r/contributors.result b/mysql-test/r/contributors.result
new file mode 100644
index 00000000000..5739c2244c3
--- /dev/null
+++ b/mysql-test/r/contributors.result
@@ -0,0 +1,5 @@
+SHOW CONTRIBUTORS;
+Name Location Comment
+Ronald Bradford Brisbane, Australia EFF contribution for UC2006 Auction
+Sheeri Kritzer Boston, Mass. USA EFF contribution for UC2006 Auction
+Mark Shuttleworth London, UK. EFF contribution for UC2006 Auction
diff --git a/mysql-test/r/crash_commit_before.result b/mysql-test/r/crash_commit_before.result
new file mode 100644
index 00000000000..34fb3284bae
--- /dev/null
+++ b/mysql-test/r/crash_commit_before.result
@@ -0,0 +1,14 @@
+CREATE TABLE t1(a int) engine=innodb;
+START TRANSACTION;
+insert into t1 values(9);
+SET SESSION debug="d,crash_commit_before";
+COMMIT;
+ERROR HY000: Lost connection to MySQL server during query
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+SELECT * FROM t1;
+a
+DROP TABLE t1;
diff --git a/mysql-test/r/create-big.result b/mysql-test/r/create-big.result
new file mode 100644
index 00000000000..eb57bf59084
--- /dev/null
+++ b/mysql-test/r/create-big.result
@@ -0,0 +1,247 @@
+drop table if exists t1,t2,t3,t4,t5;
+set session debug="+d,sleep_create_select_before_create";
+create table t1 select 1 as i;;
+create table t1 (j char(5));
+ERROR 42S01: Table 't1' already exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `i` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 select 1 as i;;
+create table t1 select "Test" as j;
+ERROR 42S01: Table 't1' already exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `i` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t3 (j char(5));
+create table t1 select 1 as i;;
+create table t1 like t3;
+ERROR 42S01: Table 't1' already exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `i` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 select 1 as i;;
+rename table t3 to t1;
+ERROR 42S01: Table 't1' already exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `i` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 select 1 as i;;
+alter table t3 rename to t1;
+ERROR 42S01: Table 't1' already exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `i` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 select 1 as i;;
+alter table t3 rename to t1, add k int;
+ERROR 42S01: Table 't1' already exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `i` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t3;
+set session debug="-d,sleep_create_select_before_create:+d,sleep_create_select_before_open";
+create table t1 select 1 as i;;
+drop table t1;
+create table t1 select 1 as i;;
+rename table t1 to t2;
+drop table t2;
+create table t1 select 1 as i;;
+select * from t1;
+i
+1
+drop table t1;
+create table t1 select 1 as i;;
+insert into t1 values (2);
+select * from t1;
+i
+1
+2
+drop table t1;
+set @a:=0;
+create table t1 select 1 as i;;
+create trigger t1_bi before insert on t1 for each row set @a:=1;
+select @a;
+@a
+0
+drop table t1;
+set session debug="-d,sleep_create_select_before_open:+d,sleep_create_select_before_lock";
+create table t1 select 1 as i;;
+drop table t1;
+create table t1 select 1 as i;;
+rename table t1 to t2;
+drop table t2;
+create table t1 select 1 as i;;
+select * from t1;
+i
+1
+drop table t1;
+create table t1 select 1 as i;;
+insert into t1 values (2);
+select * from t1;
+i
+1
+2
+drop table t1;
+set @a:=0;
+create table t1 select 1 as i;;
+create trigger t1_bi before insert on t1 for each row set @a:=1;
+select @a;
+@a
+0
+drop table t1;
+set session debug="-d,sleep_create_select_before_lock:+d,sleep_create_select_before_check_if_exists";
+create table t1 (i int);
+create table if not exists t1 select 1 as i;;
+drop table t1;
+Warnings:
+Note 1050 Table 't1' already exists
+create table t1 (i int);
+set @a:=0;
+create table if not exists t1 select 1 as i;;
+create trigger t1_bi before insert on t1 for each row set @a:=1;
+Warnings:
+Note 1050 Table 't1' already exists
+select @a;
+@a
+0
+select * from t1;
+i
+1
+drop table t1;
+set session debug="-d,sleep_create_select_before_check_if_exists";
+create table t2 (a int);
+create table t4 (b int);
+lock table t4 write;
+select 1;
+1
+1
+create table t3 as select * from t4;;
+create table t1 select * from t2, t3;;
+unlock tables;
+select * from t1;
+a b
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t3;
+lock table t4 read;
+select 1;
+1
+1
+rename table t4 to t3;;
+create table if not exists t1 select 1 as i from t2, t3;;
+create table t5 (j int);
+rename table t5 to t1;
+unlock tables;
+Warnings:
+Note 1050 Table 't1' already exists
+select * from t1;
+j
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `j` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2, t3;
+drop table if exists t1,t2;
+create table t1 (i int);
+set session debug="+d,sleep_create_like_before_check_if_exists";
+reset master;
+create table t2 like t1;;
+insert into t1 values (1);
+drop table t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `i` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t2;
+show binlog events in 'master-bin.000001' from 106;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query 1 # use `test`; insert into t1 values (1)
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; drop table t1
+master-bin.000001 # Query 1 # use `test`; drop table t2
+create table t1 (i int);
+set session debug="-d,sleep_create_like_before_check_if_exists:+d,sleep_create_like_before_copy";
+create table t2 like t1;;
+create table if not exists t2 (j int);
+Warnings:
+Note 1050 Table 't2' already exists
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `i` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t2;
+reset master;
+create table t2 like t1;;
+drop table t1;
+drop table t2;
+show binlog events in 'master-bin.000001' from 106;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; drop table t1
+master-bin.000001 # Query 1 # use `test`; drop table t2
+create table t1 (i int);
+set session debug="-d,sleep_create_like_before_copy:+d,sleep_create_like_before_ha_create";
+reset master;
+create table t2 like t1;;
+insert into t2 values (1);
+drop table t2;
+create table t2 like t1;;
+drop table t2;
+create table t2 like t1;;
+drop table t1;
+drop table t2;
+show binlog events in 'master-bin.000001' from 106;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; insert into t2 values (1)
+master-bin.000001 # Query 1 # use `test`; drop table t2
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; drop table t2
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; drop table t1
+master-bin.000001 # Query 1 # use `test`; drop table t2
+create table t1 (i int);
+set session debug="-d,sleep_create_like_before_ha_create:+d,sleep_create_like_before_binlogging";
+reset master;
+create table t2 like t1;;
+insert into t2 values (1);
+drop table t2;
+create table t2 like t1;;
+drop table t2;
+create table t2 like t1;;
+drop table t1;
+drop table t2;
+show binlog events in 'master-bin.000001' from 106;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; insert into t2 values (1)
+master-bin.000001 # Query 1 # use `test`; drop table t2
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; drop table t2
+master-bin.000001 # Query 1 # use `test`; create table t2 like t1
+master-bin.000001 # Query 1 # use `test`; drop table t1
+master-bin.000001 # Query 1 # use `test`; drop table t2
+set session debug="-d,sleep_create_like_before_binlogging";
diff --git a/mysql-test/r/create.result b/mysql-test/r/create.result
index dfd376a6bde..b829ef30fb1 100644
--- a/mysql-test/r/create.result
+++ b/mysql-test/r/create.result
@@ -41,7 +41,14 @@ ERROR 42000: Incorrect table definition; there can be only one auto column and i
create table not_existing_database.test (a int);
ERROR 42000: Unknown database 'not_existing_database'
create table `a/a` (a int);
-ERROR 42000: Incorrect table name 'a/a'
+show create table `a/a`;
+Table Create Table
+a/a CREATE TABLE `a/a` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create table t1 like `a/a`;
+drop table `a/a`;
+drop table `t1`;
create table `aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa` (aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa int);
ERROR 42000: Incorrect table name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
create table a (`aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa` int);
@@ -155,7 +162,7 @@ Note 1051 Unknown table 't2'
CREATE TABLE t1 (a int not null);
INSERT INTO t1 values (1),(2),(1);
CREATE TABLE t2 (primary key(a)) SELECT * FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
SELECT * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist
DROP TABLE t1;
@@ -167,8 +174,8 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` int(11) default NULL,
- PRIMARY KEY (`a`),
+ `b` int(11) DEFAULT NULL,
+ PRIMARY KEY (`a`),
KEY `b` (`b`),
KEY `b_2` (`b`),
KEY `b_3` (`b`),
@@ -259,6 +266,7 @@ select * from t1;
0 1 2
0 0 1
drop table t1;
+flush status;
create table t1 (a int not null, b int, primary key (a));
insert into t1 values (1,1);
create table if not exists t1 select 2;
@@ -273,7 +281,14 @@ create table if not exists t1 select 3 as 'a',4 as 'b';
Warnings:
Note 1050 Table 't1' already exists
create table if not exists t1 select 3 as 'a',3 as 'b';
-ERROR 23000: Duplicate entry '3' for key 1
+ERROR 23000: Duplicate entry '3' for key 'PRIMARY'
+show warnings;
+Level Code Message
+Note 1050 Table 't1' already exists
+Error 1062 Duplicate entry '3' for key 'PRIMARY'
+show status like "Opened_tables";
+Variable_name Value
+Opened_tables 2
select * from t1;
a b
1 1
@@ -304,7 +319,7 @@ show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
`id` int(11) NOT NULL,
- `name` char(20) default NULL
+ `name` char(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t3;
id name
@@ -327,7 +342,7 @@ show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
`id` int(11) NOT NULL,
- `name` char(20) default NULL
+ `name` char(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t3;
id name
@@ -339,14 +354,14 @@ show create table t3;
Table Create Table
t3 CREATE TEMPORARY TABLE `t3` (
`id` int(11) NOT NULL,
- `name` char(20) default NULL
+ `name` char(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t2 like t3;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
`id` int(11) NOT NULL,
- `name` char(20) default NULL
+ `name` char(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t2;
id name
@@ -356,11 +371,9 @@ ERROR 42S01: Table 't3' already exists
create table non_existing_database.t1 like t1;
ERROR 42000: Unknown database 'non_existing_database'
create table t3 like non_existing_table;
-ERROR 42S02: Unknown table 'non_existing_table'
+ERROR 42S02: Table 'test.non_existing_table' doesn't exist
create temporary table t3 like t1;
ERROR 42S01: Table 't3' already exists
-create table t3 like `a/a`;
-ERROR 42000: Incorrect table name 'a/a'
drop table t1, t2, t3;
drop table t3;
drop database mysqltest;
@@ -442,21 +455,21 @@ create table t2 select ifnull(a,a), ifnull(b,b), ifnull(c,c), ifnull(d,d), ifnul
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `ifnull(a,a)` tinyint(4) default NULL,
- `ifnull(b,b)` smallint(6) default NULL,
- `ifnull(c,c)` mediumint(8) default NULL,
- `ifnull(d,d)` int(11) default NULL,
- `ifnull(e,e)` bigint(20) default NULL,
- `ifnull(f,f)` float(3,2) default NULL,
- `ifnull(g,g)` double(4,3) default NULL,
- `ifnull(h,h)` decimal(5,4) default NULL,
- `ifnull(i,i)` year(4) default NULL,
- `ifnull(j,j)` date default NULL,
- `ifnull(k,k)` timestamp NOT NULL default '0000-00-00 00:00:00',
- `ifnull(l,l)` datetime default NULL,
- `ifnull(m,m)` varchar(1) default NULL,
- `ifnull(n,n)` varchar(3) default NULL,
- `ifnull(o,o)` varchar(10) default NULL
+ `ifnull(a,a)` tinyint(4) DEFAULT NULL,
+ `ifnull(b,b)` smallint(6) DEFAULT NULL,
+ `ifnull(c,c)` mediumint(8) DEFAULT NULL,
+ `ifnull(d,d)` int(11) DEFAULT NULL,
+ `ifnull(e,e)` bigint(20) DEFAULT NULL,
+ `ifnull(f,f)` float(3,2) DEFAULT NULL,
+ `ifnull(g,g)` double(4,3) DEFAULT NULL,
+ `ifnull(h,h)` decimal(5,4) DEFAULT NULL,
+ `ifnull(i,i)` year(4) DEFAULT NULL,
+ `ifnull(j,j)` date DEFAULT NULL,
+ `ifnull(k,k)` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `ifnull(l,l)` datetime DEFAULT NULL,
+ `ifnull(m,m)` varchar(1) DEFAULT NULL,
+ `ifnull(n,n)` varchar(3) DEFAULT NULL,
+ `ifnull(o,o)` varchar(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1,t2;
create table t1(str varchar(10) default 'def',strnull varchar(10),intg int default '10',rel double default '3.14');
@@ -523,14 +536,14 @@ create table t1 (`primary` int, index(`primary`));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `primary` int(11) default NULL,
+ `primary` int(11) DEFAULT NULL,
KEY `primary_2` (`primary`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t2 (`PRIMARY` int, index(`PRIMARY`));
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `PRIMARY` int(11) default NULL,
+ `PRIMARY` int(11) DEFAULT NULL,
KEY `PRIMARY_2` (`PRIMARY`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t3 (a int);
@@ -543,7 +556,7 @@ alter table t4 add index(`primary`);
show create table t4;
Table Create Table
t4 CREATE TABLE `t4` (
- `primary` int(11) default NULL,
+ `primary` int(11) DEFAULT NULL,
KEY `primary_2` (`primary`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t5 (`PRIMARY` int);
@@ -551,7 +564,7 @@ alter table t5 add index(`PRIMARY`);
show create table t5;
Table Create Table
t5 CREATE TABLE `t5` (
- `PRIMARY` int(11) default NULL,
+ `PRIMARY` int(11) DEFAULT NULL,
KEY `PRIMARY_2` (`PRIMARY`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2, t3, t4, t5;
@@ -581,7 +594,7 @@ create table t1 (a int);
create table t1 select * from t1;
ERROR HY000: You can't specify target table 't1' for update in FROM clause
create table t2 union = (t1) select * from t1;
-ERROR HY000: You can't specify target table 't1' for update in FROM clause
+ERROR HY000: 'test.t2' is not BASE TABLE
flush tables with read lock;
unlock tables;
drop table t1;
@@ -639,8 +652,8 @@ primary key (a)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(112) character set utf8 collate utf8_bin NOT NULL,
- PRIMARY KEY (`a`)
+ `a` varchar(112) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t2 (
@@ -654,9 +667,9 @@ b int not null, primary key (a)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(12) character set utf8 collate utf8_bin NOT NULL,
+ `a` varchar(12) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
`b` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (
@@ -669,9 +682,9 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`b` int(11) NOT NULL,
- `a` varchar(12) character set utf8 collate utf8_bin NOT NULL,
- `c` int(1) NOT NULL default '0',
- PRIMARY KEY (`a`)
+ `a` varchar(12) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
+ `c` int(1) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (
@@ -681,10 +694,10 @@ b int null, primary key (a)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `b` int(11) default NULL,
- `a` varchar(12) character set utf8 collate utf8_bin NOT NULL,
- `c` int(1) NOT NULL default '0',
- PRIMARY KEY (`a`)
+ `b` int(11) DEFAULT NULL,
+ `a` varchar(12) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
+ `c` int(1) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (
@@ -694,9 +707,9 @@ b int not null, primary key (a)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(12) character set utf8 collate utf8_bin NOT NULL,
+ `a` varchar(12) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
`b` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (
@@ -706,9 +719,9 @@ b int not null, primary key (a)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(12) character set utf8 collate utf8_bin NOT NULL default '',
+ `a` varchar(12) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
`b` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2;
create table t1 (
@@ -742,10 +755,10 @@ select a1,a2 from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` int(11) default '3',
- `b` int(11) default '3',
- `a1` int(11) default NULL,
- `a2` int(11) default NULL
+ `a` int(11) DEFAULT '3',
+ `b` int(11) DEFAULT '3',
+ `a1` int(11) DEFAULT NULL,
+ `a2` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2;
create table t1(a set("a,b","c,d") not null);
@@ -754,19 +767,19 @@ create table t1 (i int) engine=myisam max_rows=100000000000;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MAX_ROWS=4294967295
alter table t1 max_rows=100;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MAX_ROWS=100
alter table t1 max_rows=100000000000;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MAX_ROWS=4294967295
drop table t1;
create table t1 select * from t2;
@@ -782,7 +795,7 @@ create table if not exists t1 select 1 as a, 2 as b;
ERROR 21S01: Column count doesn't match value count at row 1
drop table t1;
create table t1 (primary key (a)) (select 1 as a) union all (select 1 as a);
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
create table t1 (i int);
create table t1 select 1 as i;
ERROR 42S01: Table 't1' already exists
@@ -799,7 +812,7 @@ i
1
alter table t1 add primary key (i);
create table if not exists t1 (select 2 as i) union all (select 2 as i);
-ERROR 23000: Duplicate entry '2' for key 1
+ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
select * from t1;
i
1
@@ -1000,22 +1013,22 @@ c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` int(11) default NULL,
- `c2` int(11) default NULL,
- `c3` int(11) default NULL,
- `c4` int(11) default NULL,
- `c5` int(11) default NULL,
- `c6` int(11) default NULL,
- `c7` int(11) default NULL,
- `c8` int(11) default NULL,
- `c9` int(11) default NULL,
- `c10` int(11) default NULL,
- `c11` int(11) default NULL,
- `c12` int(11) default NULL,
- `c13` int(11) default NULL,
- `c14` int(11) default NULL,
- `c15` int(11) default NULL,
- `c16` int(11) default NULL,
+ `c1` int(11) DEFAULT NULL,
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL,
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL,
+ `c9` int(11) DEFAULT NULL,
+ `c10` int(11) DEFAULT NULL,
+ `c11` int(11) DEFAULT NULL,
+ `c12` int(11) DEFAULT NULL,
+ `c13` int(11) DEFAULT NULL,
+ `c14` int(11) DEFAULT NULL,
+ `c15` int(11) DEFAULT NULL,
+ `c16` int(11) DEFAULT NULL,
KEY `a001_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a002_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a003_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
@@ -1085,22 +1098,22 @@ flush tables;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` int(11) default NULL,
- `c2` int(11) default NULL,
- `c3` int(11) default NULL,
- `c4` int(11) default NULL,
- `c5` int(11) default NULL,
- `c6` int(11) default NULL,
- `c7` int(11) default NULL,
- `c8` int(11) default NULL,
- `c9` int(11) default NULL,
- `c10` int(11) default NULL,
- `c11` int(11) default NULL,
- `c12` int(11) default NULL,
- `c13` int(11) default NULL,
- `c14` int(11) default NULL,
- `c15` int(11) default NULL,
- `c16` int(11) default NULL,
+ `c1` int(11) DEFAULT NULL,
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL,
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL,
+ `c9` int(11) DEFAULT NULL,
+ `c10` int(11) DEFAULT NULL,
+ `c11` int(11) DEFAULT NULL,
+ `c12` int(11) DEFAULT NULL,
+ `c13` int(11) DEFAULT NULL,
+ `c14` int(11) DEFAULT NULL,
+ `c15` int(11) DEFAULT NULL,
+ `c16` int(11) DEFAULT NULL,
KEY `a001_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a002_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a003_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
@@ -1301,22 +1314,22 @@ c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` int(11) default NULL,
- `c2` int(11) default NULL,
- `c3` int(11) default NULL,
- `c4` int(11) default NULL,
- `c5` int(11) default NULL,
- `c6` int(11) default NULL,
- `c7` int(11) default NULL,
- `c8` int(11) default NULL,
- `c9` int(11) default NULL,
- `c10` int(11) default NULL,
- `c11` int(11) default NULL,
- `c12` int(11) default NULL,
- `c13` int(11) default NULL,
- `c14` int(11) default NULL,
- `c15` int(11) default NULL,
- `c16` int(11) default NULL,
+ `c1` int(11) DEFAULT NULL,
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL,
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL,
+ `c9` int(11) DEFAULT NULL,
+ `c10` int(11) DEFAULT NULL,
+ `c11` int(11) DEFAULT NULL,
+ `c12` int(11) DEFAULT NULL,
+ `c13` int(11) DEFAULT NULL,
+ `c14` int(11) DEFAULT NULL,
+ `c15` int(11) DEFAULT NULL,
+ `c16` int(11) DEFAULT NULL,
KEY `a001_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a002_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a003_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
@@ -1386,22 +1399,22 @@ flush tables;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` int(11) default NULL,
- `c2` int(11) default NULL,
- `c3` int(11) default NULL,
- `c4` int(11) default NULL,
- `c5` int(11) default NULL,
- `c6` int(11) default NULL,
- `c7` int(11) default NULL,
- `c8` int(11) default NULL,
- `c9` int(11) default NULL,
- `c10` int(11) default NULL,
- `c11` int(11) default NULL,
- `c12` int(11) default NULL,
- `c13` int(11) default NULL,
- `c14` int(11) default NULL,
- `c15` int(11) default NULL,
- `c16` int(11) default NULL,
+ `c1` int(11) DEFAULT NULL,
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL,
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL,
+ `c9` int(11) DEFAULT NULL,
+ `c10` int(11) DEFAULT NULL,
+ `c11` int(11) DEFAULT NULL,
+ `c12` int(11) DEFAULT NULL,
+ `c13` int(11) DEFAULT NULL,
+ `c14` int(11) DEFAULT NULL,
+ `c15` int(11) DEFAULT NULL,
+ `c16` int(11) DEFAULT NULL,
KEY `a001_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a002_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
KEY `a003_long_123456789_123456789_123456789_123456789_123456789_1234` (`c1`,`c2`,`c3`,`c4`,`c5`,`c6`,`c7`,`c8`,`c9`,`c10`,`c11`,`c12`,`c13`,`c14`,`c15`,`c16`),
@@ -1484,23 +1497,23 @@ ERROR 42000: Identifier name 'a001_long_123456789_123456789_123456789_123456789_
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` int(11) default NULL,
- `c2` int(11) default NULL,
- `c3` int(11) default NULL,
- `c4` int(11) default NULL,
- `c5` int(11) default NULL,
- `c6` int(11) default NULL,
- `c7` int(11) default NULL,
- `c8` int(11) default NULL,
- `c9` int(11) default NULL,
- `c10` int(11) default NULL,
- `c11` int(11) default NULL,
- `c12` int(11) default NULL,
- `c13` int(11) default NULL,
- `c14` int(11) default NULL,
- `c15` int(11) default NULL,
- `c16` int(11) default NULL,
- `c17` int(11) default NULL
+ `c1` int(11) DEFAULT NULL,
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL,
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL,
+ `c9` int(11) DEFAULT NULL,
+ `c10` int(11) DEFAULT NULL,
+ `c11` int(11) DEFAULT NULL,
+ `c12` int(11) DEFAULT NULL,
+ `c13` int(11) DEFAULT NULL,
+ `c14` int(11) DEFAULT NULL,
+ `c15` int(11) DEFAULT NULL,
+ `c16` int(11) DEFAULT NULL,
+ `c17` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
@@ -1554,10 +1567,10 @@ CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
SELECT a FROM t1;
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
DROP TABLE t1, t2;
#
# BUG#46384 - mysqld segfault when trying to create table with same
@@ -1573,3 +1586,339 @@ ERROR 42S01: Table 'v1' already exists
DROP VIEW v1;
DROP TABLE t1,t2;
End of 5.0 tests
+CREATE TABLE t1 (a int, b int);
+insert into t1 values (1,1),(1,2);
+CREATE TABLE t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+drop table if exists t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TEMPORARY TABLE t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+drop table if exists t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TABLE t2 (a int, b int, primary key (a));
+CREATE TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+1 1
+TRUNCATE table t2;
+INSERT INTO t2 select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+1 1
+drop table t2;
+CREATE TEMPORARY TABLE t2 (a int, b int, primary key (a));
+CREATE TEMPORARY TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+1 1
+TRUNCATE table t2;
+INSERT INTO t2 select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+1 1
+drop table t1,t2;
+CREATE DATABASE aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+DROP DATABASE aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+USE aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+SHOW CREATE DATABASE aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+set names utf8;
+create database имя_базы_в_кодировке_утф8_длиной_больше_чем_45;
+use имя_базы_в_кодировке_утф8_длиной_больше_чем_45;
+select database();
+database()
+имя_базы_в_кодировке_утф8_длиной_больше_чем_45
+use test;
+select SCHEMA_NAME from information_schema.schemata
+where schema_name='имя_базы_в_кодировке_утф8_длиной_больше_чем_45';
+SCHEMA_NAME
+имя_базы_в_кодировке_утф8_длиной_больше_чем_45
+drop database имя_базы_в_кодировке_утф8_длиной_больше_чем_45;
+create table имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48
+(
+имя_поля_в_кодировке_утф8_длиной_больше_чем_45 int,
+index имя_индекса_в_кодировке_утф8_длиной_больше_чем_48 (имя_поля_в_кодировке_утф8_длиной_больше_чем_45)
+);
+create view имя_вью_кодировке_утф8_длиной_больше_чем_42 as
+select имя_поля_в_кодировке_утф8_длиной_больше_чем_45
+from имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48;
+select * from имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48;
+имя_поля_в_кодировке_утф8_длиной_больше_чем_45
+select TABLE_NAME from information_schema.tables where
+table_schema='test';
+TABLE_NAME
+имя_вью_кодировке_утф8_длиной_больше_чем_42
+имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48
+select COLUMN_NAME from information_schema.columns where
+table_schema='test';
+COLUMN_NAME
+имя_поля_в_кодировке_утф8_длиной_больше_чем_45
+имя_поля_в_кодировке_утф8_длиной_больше_чем_45
+select INDEX_NAME from information_schema.statistics where
+table_schema='test';
+INDEX_NAME
+имя_индекса_в_кодировке_утф8_длиной_больше_чем_48
+select TABLE_NAME from information_schema.views where
+table_schema='test';
+TABLE_NAME
+имя_вью_кодировке_утф8_длиной_больше_чем_42
+show create table имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48;
+Table Create Table
+имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48 CREATE TABLE `имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48` (
+ `имя_поля_в_кодировке_утф8_длиной_больше_чем_45` int(11) DEFAULT NULL,
+ KEY `имя_индекса_в_кодировке_утф8_длиной_больше_чем_48` (`имя_поля_в_кодировке_утф8_длиной_больше_чем_45`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+show create view имя_вью_кодировке_утф8_длиной_больше_чем_42;
+View Create View character_set_client collation_connection
+имя_вью_кодировке_утф8_длиной_больше_чем_42 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `имя_вью_кодировке_утф8_длиной_больше_чем_42` AS select `имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48`.`имя_поля_в_кодировке_утф8_длиной_больше_чем_45` AS `имя_поля_в_кодировке_утф8_длиной_больше_чем_45` from `имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48` utf8 utf8_general_ci
+create trigger имя_триггера_в_кодировке_утф8_длиной_больше_чем_49
+before insert on имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48 for each row set @a:=1;
+select TRIGGER_NAME from information_schema.triggers where
+trigger_schema='test';
+TRIGGER_NAME
+имя_триггера_в_кодировке_утф8_длиной_больше_чем_49
+drop trigger имя_триггера_в_кодировке_утф8_длиной_больше_чем_49;
+create trigger
+очень_очень_очень_очень_очень_очень_очень_очень_длинная_строка_66
+before insert on имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48 for each row set @a:=1;
+ERROR 42000: Identifier name 'очень_очень_очень_очень_очень_очень_очень_очень_длинна' is too long
+drop trigger очень_очень_очень_очень_очень_очень_очень_очень_длинная_строка_66;
+ERROR 42000: Identifier name 'очень_очень_очень_очень_очень_очень_очень_очень_длинна' is too long
+create procedure имя_процедуры_в_кодировке_утф8_длиной_больше_чем_50()
+begin
+end;
+select ROUTINE_NAME from information_schema.routines where
+routine_schema='test';
+ROUTINE_NAME
+имя_процедуры_в_кодировке_утф8_длиной_больше_чем_50
+drop procedure имя_процедуры_в_кодировке_утф8_длиной_больше_чем_50;
+create procedure очень_очень_очень_очень_очень_очень_очень_очень_длинная_строка_66()
+begin
+end;
+ERROR 42000: Identifier name 'очень_очень_очень_очень_очень_очень_очень_очень_длинна' is too long
+create function имя_функции_в_кодировке_утф8_длиной_больше_чем_49()
+returns int
+return 0;
+select ROUTINE_NAME from information_schema.routines where
+routine_schema='test';
+ROUTINE_NAME
+имя_функции_в_кодировке_утф8_длиной_больше_чем_49
+drop function имя_функции_в_кодировке_утф8_длиной_больше_чем_49;
+create function очень_очень_очень_очень_очень_очень_очень_очень_длинная_строка_66()
+returns int
+return 0;
+ERROR 42000: Identifier name 'очень_очень_очень_очень_очень_очень_очень_очень_длинна' is too long
+drop view имя_вью_кодировке_утф8_длиной_больше_чем_42;
+drop table имя_таблицы_в_кодировке_утф8_длиной_больше_чем_48;
+set names default;
+drop table if exists t1,t2,t3;
+drop function if exists f1;
+create function f1() returns int
+begin
+declare res int;
+create temporary table t3 select 1 i;
+set res:= (select count(*) from t1);
+drop temporary table t3;
+return res;
+end|
+create table t1 as select 1;
+create table t2 as select f1() from t1;
+drop table t1,t2;
+drop function f1;
+create table t1 like information_schema.processlist;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `ID` bigint(4) NOT NULL DEFAULT '0',
+ `USER` varchar(16) NOT NULL DEFAULT '',
+ `HOST` varchar(64) NOT NULL DEFAULT '',
+ `DB` varchar(64) DEFAULT NULL,
+ `COMMAND` varchar(16) NOT NULL DEFAULT '',
+ `TIME` int(7) NOT NULL DEFAULT '0',
+ `STATE` varchar(64) DEFAULT NULL,
+ `INFO` longtext
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+drop table t1;
+create temporary table t1 like information_schema.processlist;
+show create table t1;
+Table Create Table
+t1 CREATE TEMPORARY TABLE `t1` (
+ `ID` bigint(4) NOT NULL DEFAULT '0',
+ `USER` varchar(16) NOT NULL DEFAULT '',
+ `HOST` varchar(64) NOT NULL DEFAULT '',
+ `DB` varchar(64) DEFAULT NULL,
+ `COMMAND` varchar(16) NOT NULL DEFAULT '',
+ `TIME` int(7) NOT NULL DEFAULT '0',
+ `STATE` varchar(64) DEFAULT NULL,
+ `INFO` longtext
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+drop table t1;
+create table t1 like information_schema.character_sets;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DESCRIPTION` varchar(60) NOT NULL DEFAULT '',
+ `MAXLEN` bigint(3) NOT NULL DEFAULT '0'
+) ENGINE=MEMORY DEFAULT CHARSET=utf8
+drop table t1;
+
+# --
+# -- Bug#21380: DEFAULT definition not always transfered by CREATE
+# -- TABLE/SELECT to the new table.
+# --
+
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+
+CREATE TABLE t1(
+c1 INT DEFAULT 12 COMMENT 'column1',
+c2 INT NULL COMMENT 'column2',
+c3 INT NOT NULL COMMENT 'column3',
+c4 VARCHAR(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+c5 VARCHAR(255) COLLATE utf8_unicode_ci NULL DEFAULT 'b',
+c6 VARCHAR(255))
+COLLATE latin1_bin;
+
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) DEFAULT '12' COMMENT 'column1',
+ `c2` int(11) DEFAULT NULL COMMENT 'column2',
+ `c3` int(11) NOT NULL COMMENT 'column3',
+ `c4` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+ `c5` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT 'b',
+ `c6` varchar(255) COLLATE latin1_bin DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_bin
+
+CREATE TABLE t2 AS SELECT * FROM t1;
+
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `c1` int(11) DEFAULT '12' COMMENT 'column1',
+ `c2` int(11) DEFAULT NULL COMMENT 'column2',
+ `c3` int(11) NOT NULL COMMENT 'column3',
+ `c4` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+ `c5` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT 'b',
+ `c6` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+
+DROP TABLE t2;
+DROP TABLE t1;
+
+# -- End of test case for Bug#21380.
+
+# --
+# -- Bug#18834: ALTER TABLE ADD INDEX on table with two timestamp fields
+# --
+
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+DROP TABLE IF EXISTS t3;
+
+CREATE TABLE t1(c1 TIMESTAMP, c2 TIMESTAMP);
+
+SET sql_mode = NO_ZERO_DATE;
+
+CREATE TABLE t2(c1 TIMESTAMP, c2 TIMESTAMP DEFAULT 0);
+ERROR 42000: Invalid default value for 'c2'
+
+CREATE TABLE t2(c1 TIMESTAMP, c2 TIMESTAMP);
+ERROR 42000: Invalid default value for 'c2'
+
+# -- Check that NULL column still can be created.
+CREATE TABLE t2(c1 TIMESTAMP NULL);
+
+# -- Check ALTER TABLE.
+ALTER TABLE t1 ADD INDEX(c1);
+ERROR 42000: Invalid default value for 'c2'
+
+# -- Check DATETIME.
+SET sql_mode = '';
+
+CREATE TABLE t3(c1 DATETIME NOT NULL);
+INSERT INTO t3 VALUES (0);
+
+SET sql_mode = TRADITIONAL;
+
+ALTER TABLE t3 ADD INDEX(c1);
+ERROR 22007: Incorrect datetime value: '0000-00-00 00:00:00' for column 'c1' at row 1
+
+# -- Cleanup.
+SET sql_mode = '';
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+
+# -- End of Bug#18834.
+
+# --
+# -- Bug#34274: Invalid handling of 'DEFAULT 0' for YEAR data type.
+# --
+
+DROP TABLE IF EXISTS t1;
+
+CREATE TABLE t1(c1 YEAR DEFAULT 2008, c2 YEAR DEFAULT 0);
+
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` year(4) DEFAULT '2008',
+ `c2` year(4) DEFAULT '0000'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+
+INSERT INTO t1 VALUES();
+
+SELECT * FROM t1;
+c1 c2
+2008 0000
+
+ALTER TABLE t1 MODIFY c1 YEAR DEFAULT 0;
+
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` year(4) DEFAULT '0000',
+ `c2` year(4) DEFAULT '0000'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+
+INSERT INTO t1 VALUES();
+
+SELECT * FROM t1;
+c1 c2
+2008 0000
+0000 0000
+
+DROP TABLE t1;
+
+# -- End of Bug#34274
+create table `me:i`(id int);
+drop table `me:i`;
+
+# --
+# -- Bug#45829: CREATE TABLE TRANSACTIONAL PAGE_CHECKSUM ROW_FORMAT=PAGE accepted, does nothing
+# --
+
+drop table if exists t1,t2,t3;
+create table t1 (a int) transactional=0;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'transactional=0' at line 1
+create table t2 (a int) page_checksum=1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'page_checksum=1' at line 1
+create table t3 (a int) row_format=page;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'page' at line 1
+
+# -- End of Bug#45829
+
+End of 5.1 tests
diff --git a/mysql-test/r/create_not_windows.result b/mysql-test/r/create_not_windows.result
index b975c98c2b1..abe76fd3fbe 100644
--- a/mysql-test/r/create_not_windows.result
+++ b/mysql-test/r/create_not_windows.result
@@ -7,8 +7,25 @@ primary key (_id)
show create table `about:text`;
Table Create Table
about:text CREATE TABLE `about:text` (
- `_id` int(11) NOT NULL auto_increment,
- `about:text` varchar(255) NOT NULL default '',
- PRIMARY KEY (`_id`)
+ `_id` int(11) NOT NULL AUTO_INCREMENT,
+ `about:text` varchar(255) NOT NULL DEFAULT '',
+ PRIMARY KEY (`_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table `about:text`;
+use test;
+drop table if exists t1;
+create table t1(a int) engine=myisam;
+insert into t1 values(1);
+"We get an error because the table is in the definition cache"
+create table t1(a int, b int);
+ERROR 42S01: Table 't1' already exists
+"Flush the cache and recreate the table anew to be able to drop it"
+flush tables;
+show open tables like "t%";
+Database Table In_use Name_locked
+create table t1(a int, b int, c int);
+"Try to select from the table. This should not crash the server"
+select count(a) from t1;
+count(a)
+0
+drop table t1;
diff --git a/mysql-test/r/create_select_tmp.result b/mysql-test/r/create_select_tmp.result
index 668547bcff9..f499e539baf 100644
--- a/mysql-test/r/create_select_tmp.result
+++ b/mysql-test/r/create_select_tmp.result
@@ -2,19 +2,19 @@ drop table if exists t1, t2;
CREATE TABLE t1 ( a int );
INSERT INTO t1 VALUES (1),(2),(1);
CREATE TABLE t2 ( PRIMARY KEY (a) ) ENGINE=INNODB SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=INNODB SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist
CREATE TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist
drop table t1;
diff --git a/mysql-test/r/csv.result b/mysql-test/r/csv.result
index ac1aee6cc9a..4b96f5a5ed0 100644
--- a/mysql-test/r/csv.result
+++ b/mysql-test/r/csv.result
@@ -4929,7 +4929,7 @@ Note 1051 Unknown table 't2'
Note 1051 Unknown table 't3'
Note 1051 Unknown table 't4'
DROP TABLE IF EXISTS bug13894;
-CREATE TABLE bug13894 ( val integer ) ENGINE = CSV;
+CREATE TABLE bug13894 ( val integer not null ) ENGINE = CSV;
INSERT INTO bug13894 VALUES (5);
INSERT INTO bug13894 VALUES (10);
INSERT INTO bug13894 VALUES (11);
@@ -4943,13 +4943,13 @@ val
UPDATE bug13894 SET val=6 WHERE val=10;
SELECT * FROM bug13894;
val
-5
-11
6
6
+5
+11
DROP TABLE bug13894;
DROP TABLE IF EXISTS bug14672;
-CREATE TABLE bug14672 (c1 integer) engine = CSV;
+CREATE TABLE bug14672 (c1 integer not null) engine = CSV;
INSERT INTO bug14672 VALUES (1), (2), (3);
SELECT * FROM bug14672;
c1
@@ -4975,7 +4975,146 @@ c1
4
5
DROP TABLE bug14672;
-create table t1 (a int) engine=csv;
+CREATE TABLE test_concurrent_insert ( val integer not null ) ENGINE = CSV;
+LOCK TABLES test_concurrent_insert READ LOCAL;
+INSERT INTO test_concurrent_insert VALUES (1);
+SELECT * FROM test_concurrent_insert;
+val
+1
+SELECT * FROM test_concurrent_insert;
+val
+UNLOCK TABLES;
+LOCK TABLES test_concurrent_insert WRITE;
+INSERT INTO test_concurrent_insert VALUES (2);
+SELECT * FROM test_concurrent_insert;
+val
+1
+2
+UNLOCK TABLES;
+DROP TABLE test_concurrent_insert;
+CREATE TABLE test_repair_table ( val integer not null ) ENGINE = CSV;
+CHECK TABLE test_repair_table;
+Table Op Msg_type Msg_text
+test.test_repair_table check status OK
+REPAIR TABLE test_repair_table;
+Table Op Msg_type Msg_text
+test.test_repair_table repair status OK
+DROP TABLE test_repair_table;
+CREATE TABLE test_repair_table2 ( val integer not null ) ENGINE = CSV;
+SELECT * from test_repair_table2;
+val
+Warnings:
+Error 1194 Table 'test_repair_table2' is marked as crashed and should be repaired
+SELECT * from test_repair_table2;
+val
+CHECK TABLE test_repair_table2;
+Table Op Msg_type Msg_text
+test.test_repair_table2 check status OK
+DROP TABLE test_repair_table2;
+CREATE TABLE test_repair_table3 ( val integer not null ) ENGINE = CSV;
+CHECK TABLE test_repair_table3;
+Table Op Msg_type Msg_text
+test.test_repair_table3 check error Corrupt
+REPAIR TABLE test_repair_table3;
+Table Op Msg_type Msg_text
+test.test_repair_table3 repair status OK
+SELECT * FROM test_repair_table3;
+val
+1
+4
+DROP TABLE test_repair_table3;
+CREATE TABLE test_repair_table4 (
+num int not null,
+magic_no int(4) unsigned zerofill DEFAULT '0000' NOT NULL,
+company_name char(30) DEFAULT '' NOT NULL,
+founded char(4) DEFAULT '' NOT NULL
+) ENGINE = CSV;
+SELECT * FROM test_repair_table4;
+num magic_no company_name founded
+Warnings:
+Error 1194 Table 'test_repair_table4' is marked as crashed and should be repaired
+SELECT * FROM test_repair_table4;
+num magic_no company_name founded
+CHECK TABLE test_repair_table4;
+Table Op Msg_type Msg_text
+test.test_repair_table4 check status OK
+INSERT INTO test_repair_table4 VALUES (2,101,'SAP','1972');
+INSERT INTO test_repair_table4 VALUES (1,101,'Microsoft','1978');
+INSERT INTO test_repair_table4 VALUES (2,101,'MySQL','1995');
+SELECT * FROM test_repair_table4;
+num magic_no company_name founded
+2 0101 SAP 1972
+1 0101 Microsoft 1978
+2 0101 MySQL 1995
+CHECK TABLE test_repair_table4;
+Table Op Msg_type Msg_text
+test.test_repair_table4 check status OK
+REPAIR TABLE test_repair_table4;
+Table Op Msg_type Msg_text
+test.test_repair_table4 repair status OK
+SELECT * FROM test_repair_table4;
+num magic_no company_name founded
+2 0101 SAP 1972
+1 0101 Microsoft 1978
+2 0101 MySQL 1995
+CHECK TABLE test_repair_table4;
+Table Op Msg_type Msg_text
+test.test_repair_table4 check status OK
+REPAIR TABLE test_repair_table4;
+Table Op Msg_type Msg_text
+test.test_repair_table4 repair status OK
+SELECT * FROM test_repair_table4;
+num magic_no company_name founded
+2 0101 SAP 1972
+1 0101 Microsoft 1978
+2 0101 MySQL 1995
+DROP TABLE test_repair_table4;
+CREATE TABLE test_repair_table5 (
+num int not null,
+magic_no int(4) unsigned zerofill DEFAULT '0000' NOT NULL,
+company_name char(30) DEFAULT '' NOT NULL,
+founded char(4) DEFAULT '' NOT NULL
+) ENGINE = CSV;
+CHECK TABLE test_repair_table5;
+Table Op Msg_type Msg_text
+test.test_repair_table5 check error Corrupt
+REPAIR TABLE test_repair_table5;
+Table Op Msg_type Msg_text
+test.test_repair_table5 repair status OK
+SELECT * FROM test_repair_table5;
+num magic_no company_name founded
+INSERT INTO test_repair_table5 VALUES (1, 102, "CORRECT", 1876);
+SELECT * FROM test_repair_table5;
+num magic_no company_name founded
+1 0102 CORRECT 1876
+FLUSH TABLES;
+CHECK TABLE test_repair_table5;
+Table Op Msg_type Msg_text
+test.test_repair_table5 check error Corrupt
+REPAIR TABLE test_repair_table5;
+Table Op Msg_type Msg_text
+test.test_repair_table5 repair status OK
+SELECT * FROM test_repair_table5;
+num magic_no company_name founded
+1 0102 CORRECT 1876
+INSERT INTO test_repair_table5 VALUES (1, 102, "CORRECT2", 1876);
+SELECT * FROM test_repair_table5;
+num magic_no company_name founded
+1 0102 CORRECT 1876
+1 0102 CORRECT2 1876
+FLUSH TABLES;
+CHECK TABLE test_repair_table5;
+Table Op Msg_type Msg_text
+test.test_repair_table5 check error Corrupt
+REPAIR TABLE test_repair_table5;
+Table Op Msg_type Msg_text
+test.test_repair_table5 repair status OK
+SELECT * FROM test_repair_table5;
+num magic_no company_name founded
+1 0102 CORRECT 1876
+1 0102 CORRECT2 1876
+DROP TABLE test_repair_table5;
+create table t1 (a int not null) engine=csv;
insert t1 values (1);
delete from t1;
affected rows: 1
@@ -4999,10 +5138,65 @@ insert t1 values (1),(2),(3),(4),(5);
truncate table t1;
affected rows: 0
drop table t1;
-create table bug15205 (val int(11) default null) engine=csv;
-create table bug15205_2 (val int(11) default null) engine=csv;
+create table t1 (v varchar(32) not null);
+insert into t1 values ('def'),('abc'),('hij'),('3r4f');
+select * from t1;
+v
+def
+abc
+hij
+3r4f
+alter table t1 change v v2 varchar(32);
+select * from t1;
+v2
+def
+abc
+hij
+3r4f
+alter table t1 change v2 v varchar(64);
+select * from t1;
+v
+def
+abc
+hij
+3r4f
+update t1 set v = 'lmn' where v = 'hij';
+select * from t1;
+v
+def
+abc
+lmn
+3r4f
+alter table t1 add i int auto_increment not null primary key first;
+select * from t1;
+i v
+1 def
+2 abc
+3 lmn
+4 3r4f
+update t1 set i=5 where i=3;
+select * from t1;
+i v
+1 def
+2 abc
+5 lmn
+4 3r4f
+alter table t1 change i i bigint;
+select * from t1;
+i v
+1 def
+2 abc
+5 lmn
+4 3r4f
+alter table t1 add unique key (i, v);
+select * from t1 where i between 2 and 4 and v in ('def','3r4f','lmn');
+i v
+4 3r4f
+drop table t1;
+create table bug15205 (val int(11) not null) engine=csv;
+create table bug15205_2 (val int(11) not null) engine=csv;
select * from bug15205;
-ERROR HY000: Got error 1 from storage engine
+ERROR HY000: Can't get stat of './test/bug15205.CSV' (Errcode: 2)
select * from bug15205_2;
val
select * from bug15205;
@@ -5011,8 +5205,8 @@ drop table bug15205;
drop table bug15205_2;
set names latin1;
create table t1 (
-c varchar(1),
-name varchar(64)
+c varchar(1) not null,
+name varchar(64) not null
) character set latin1 engine=csv;
insert into t1 values (0xC0,'LATIN CAPITAL LETTER A WITH GRAVE');
insert into t1 values (0xE0,'LATIN SMALL LETTER A WITH GRAVE');
@@ -5029,61 +5223,188 @@ F7 DIVISION SIGN
FE LATIN SMALL LETTER THORN
FF LATIN SMALL LETTER Y WITH DIAERESIS
drop table t1;
-create table t1(a datetime) engine=csv;
+End of 5.0 tests
+create table bug22080_1 (id int not null,string varchar(64) not null) Engine=CSV;
+create table bug22080_2 (id int not null,string varchar(64) not null) Engine=CSV;
+create table bug22080_3 (id int not null,string varchar(64) not null) Engine=CSV;
+insert into bug22080_1 values(1,'string');
+insert into bug22080_1 values(2,'string');
+insert into bug22080_1 values(3,'string');
+check table bug22080_2;
+Table Op Msg_type Msg_text
+test.bug22080_2 check error Corrupt
+check table bug22080_3;
+Table Op Msg_type Msg_text
+test.bug22080_3 check error Corrupt
+drop tables bug22080_1,bug22080_2,bug22080_3;
+create table float_test (id float not null,string varchar(64) not null) Engine=CSV;
+insert into float_test values(1.0,'string');
+insert into float_test values(2.23,'serg.g');
+insert into float_test values(0.03,'string');
+insert into float_test values(0.19,'string');
+insert into float_test values(.67,'string');
+insert into float_test values(9.67,'string');
+select * from float_test;
+id string
+1 string
+2.23 serg.g
+0.03 string
+0.19 string
+0.67 string
+9.67 string
+drop table float_test;
+CREATE TABLE `bug21328` (
+`col1` int(11) NOT NULL,
+`col2` int(11) NOT NULL,
+`col3` int(11) NOT NULL
+) ENGINE=CSV;
+insert into bug21328 values (1,0,0);
+alter table bug21328 engine=myisam;
+drop table bug21328;
+create table t1(a blob not null, b int not null) engine=csv;
+insert into t1 values('a', 1);
+flush tables;
+update t1 set b=2;
+select * from t1;
+a b
+a 2
+drop table t1;
+create table t1(a int not null) engine=csv;
+insert into t1 values(-1), (-123.34), (2), (-23);
+select * from t1;
+a
+-1
+-123
+2
+-23
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+create table t1(a int not null, b int not null) engine=csv;
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair Warning Data truncated for column 'a' at row 5
+test.t1 repair status OK
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+select * from t1;
+a b
+1 0
+-200 1
+-1 -1
+-1 -100
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+create table t1(a int not null) engine=csv;
+insert into t1 values (0), (1), (2);
+delete from t1 limit 2;
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+select * from t1;
+a
+2
+delete from t1;
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+select * from t1;
+a
+drop table t1;
+create table t1(a datetime not null) engine=csv;
insert into t1 values();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
select * from t1;
a
0000-00-00 00:00:00
drop table t1;
-create table t1(a set('foo','bar')) engine=csv;
+create table t1(a set('foo','bar') not null) engine=csv;
insert into t1 values();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
select * from t1;
a
drop table t1;
-create table t1(a varchar(32)) engine=csv;
+create table t1(a varchar(32) not null) engine=csv;
insert into t1 values();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
select * from t1;
a
drop table t1;
-create table t1(a int) engine=csv;
+create table t1(a int not null) engine=csv;
insert into t1 values();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
select * from t1;
a
0
drop table t1;
-create table t1(a blob) engine=csv;
+create table t1(a blob not null) engine=csv;
insert into t1 values();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
select * from t1;
a
drop table t1;
-create table t1(a bit(1)) engine=csv;
+create table t1(a bit(1) not null) engine=csv;
insert into t1 values();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
select BIN(a) from t1;
BIN(a)
0
drop table t1;
+create table t1(a enum('foo','bar') default null) engine=csv;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
create table t1(a enum('foo','bar') default 'foo') engine=csv;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+create table t1(a enum('foo','bar') default 'foo' not null) engine=csv;
insert into t1 values();
select * from t1;
a
foo
drop table t1;
-create table bug39616_1(id int NOT NULL, d varchar(50) NOT NULL) ENGINE=csv;
-select * from bug39616_1;
-id d
-1 integer sans quotes
-1 string sans quotes
-1 string end quotes"
-1 quotes"in between" strings
-1 Integer with quote and string with no quote
-1 escape sequence
- " \ \a within quotes
-drop table bug39616_1;
-create table bug39616_1(id int NOT NULL, d varchar(50) NOT NULL) ENGINE=csv;
-select * from bug39616_1;
-id d
-drop table bug39616_1;
-End of 5.0 tests
+CREATE TABLE t1(a INT) ENGINE=CSV;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+SHOW WARNINGS;
+Level Code Message
+Error 1178 The storage engine for the table doesn't support nullable columns
+Error 1005 Can't create table 'test.t1' (errno: 138)
+create table t1 (c1 tinyblob not null) engine=csv;
+insert into t1 values("This");
+update t1 set c1="That" where c1="This";
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+select * from t1;
+c1
+That
+drop table t1;
+create table t1 (a int not null) engine=csv;
+lock tables t1 read;
+select * from t1;
+ERROR HY000: File 'MYSQLD_DATADIR/test/t1.CSV' not found (Errcode: 2)
+unlock tables;
+drop table t1;
+create table t1(a enum ('a') not null) engine=csv;
+insert into t1 values (2);
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1 limit 1;
+ERROR HY000: Table 't1' is marked as crashed and should be repaired
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair Warning Data truncated for column 'a' at row 1
+test.t1 repair status OK
+select * from t1 limit 1;
+a
+drop table t1;
+End of 5.1 tests
diff --git a/mysql-test/r/csv_alter_table.result b/mysql-test/r/csv_alter_table.result
new file mode 100644
index 00000000000..b406e40b15d
--- /dev/null
+++ b/mysql-test/r/csv_alter_table.result
@@ -0,0 +1,40 @@
+# ===== csv_alter_table.1 =====
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a int NOT NULL) ENGINE = CSV;
+ALTER TABLE t1 ADD COLUMN b CHAR(5) NOT NULL;
+DESC t1;
+Field Type Null Key Default Extra
+a int(11) NO NULL
+b char(5) NO NULL
+ALTER TABLE t1 DROP COLUMN b;
+DESC t1;
+Field Type Null Key Default Extra
+a int(11) NO NULL
+ALTER TABLE t1 MODIFY a BIGINT NOT NULL;
+DESC t1;
+Field Type Null Key Default Extra
+a bigint(20) NO NULL
+ALTER TABLE t1 CHANGE a a INT NOT NULL;
+DESC t1;
+Field Type Null Key Default Extra
+a int(11) NO NULL
+DROP TABLE t1;
+# ===== csv_alter_table.2 =====
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a int NOT NULL) ENGINE = CSV;
+ALTER TABLE t1 ADD COLUMN b CHAR(5);
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+DESC t1;
+Field Type Null Key Default Extra
+a int(11) NO NULL
+ALTER TABLE t1 MODIFY a BIGINT;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+DESC t1;
+Field Type Null Key Default Extra
+a int(11) NO NULL
+ALTER TABLE t1 CHANGE a a INT;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+DESC t1;
+Field Type Null Key Default Extra
+a int(11) NO NULL
+DROP TABLE t1;
diff --git a/mysql-test/r/csv_not_null.result b/mysql-test/r/csv_not_null.result
new file mode 100644
index 00000000000..af583a36837
--- /dev/null
+++ b/mysql-test/r/csv_not_null.result
@@ -0,0 +1,54 @@
+# ===== csv_not_null.1 =====
+DROP TABLE IF EXISTS t1, t2;
+# === Will fail -- no NOT NULL ===
+CREATE TABLE t1 (a int) ENGINE = CSV;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+# === Good CREATE ===
+CREATE TABLE t1 (a int NOT NULL) ENGINE = CSV;
+# === Will fail -- ALL columns need NOT NULL ==
+CREATE TABLE t2 (a int NOT NULL, b char(20)) ENGINE = CSV;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+DROP TABLE t1;
+# ===== csv_not_null.2 =====
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a int NOT NULL, b blob NOT NULL, c CHAR(20) NOT NULL,
+d VARCHAR(20) NOT NULL, e enum('foo','bar') NOT NULL,f DATE NOT NULL)
+ENGINE = CSV;
+# === should result in default for each datatype ===
+INSERT INTO t1 VALUES();
+SELECT * FROM t1;
+a b c d e f
+0 foo 0000-00-00
+SELECT * FROM t1;
+a b c d e f
+0 foo 0000-00-00
+INSERT INTO t1 VALUES(0,'abc','def','ghi','bar','1999-12-31');
+SELECT * FROM t1;
+a b c d e f
+0 foo 0000-00-00
+0 abc def ghi bar 1999-12-31
+# === insert failures ===
+INSERT INTO t1 VALUES(NULL,'ab','a','b','foo','2007-01-01');
+ERROR 23000: Column 'a' cannot be null
+INSERT INTO t1 VALUES(default(a),default(b), default(c), default(d),
+default(e), default(f));
+ERROR HY000: Field 'a' doesn't have a default value
+DROP TABLE t1;
+# ===== csv_not_null.3 =====
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a int NOT NULL, b char(10) NOT NULL) ENGINE = CSV;
+INSERT INTO t1 VALUES();
+SELECT * FROM t1;
+a b
+0
+UPDATE t1 set b = 'new_value' where a = 0;
+SELECT * FROM t1;
+a b
+0 new_value
+UPDATE t1 set b = NULL where b = 'new_value';
+Warnings:
+Warning 1048 Column 'b' cannot be null
+SELECT * FROM t1;
+a b
+0
+DROP TABLE t1;
diff --git a/mysql-test/r/ctype_big5.result b/mysql-test/r/ctype_big5.result
index b88ea14b559..2efcf549608 100644
--- a/mysql-test/r/ctype_big5.result
+++ b/mysql-test/r/ctype_big5.result
@@ -78,8 +78,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=big5
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
@@ -268,8 +268,8 @@ create table t1 (a blob);
insert into t1 values (0xEE00);
select * into outfile 'test/t1.txt' from t1;
delete from t1;
-select hex(load_file('MYSQLTEST_VARDIR/master-data/test/t1.txt'));;
-hex(load_file('MYSQLTEST_VARDIR/master-data/test/t1.txt'))
+select hex(load_file('MYSQLD_DATADIR/test/t1.txt'));;
+hex(load_file('MYSQLD_DATADIR/test/t1.txt'))
5CEE5C300A
load data infile 't1.txt' into table t1;
select hex(a) from t1;
diff --git a/mysql-test/r/ctype_collate.result b/mysql-test/r/ctype_collate.result
index 8bcd488cb69..b42094550bd 100644
--- a/mysql-test/r/ctype_collate.result
+++ b/mysql-test/r/ctype_collate.result
@@ -494,7 +494,7 @@ latin1_f CHAR(32) CHARACTER SET latin1 COLLATE latin1_bin;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `latin1_f` char(32) character set latin1 collate latin1_bin default NULL
+ `latin1_f` char(32) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW FIELDS FROM t1;
Field Type Null Key Default Extra
@@ -503,7 +503,7 @@ ALTER TABLE t1 CHARACTER SET latin1 COLLATE latin1_bin;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `latin1_f` char(32) collate latin1_bin default NULL
+ `latin1_f` char(32) COLLATE latin1_bin DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_bin
SHOW FIELDS FROM t1;
Field Type Null Key Default Extra
@@ -516,10 +516,10 @@ SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
charset('a') collation('a') coercibility('a') 'a'='A'
latin1 latin1_swedish_ci 4 1
explain extended SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select charset(_latin1'a') AS `charset('a')`,collation(_latin1'a') AS `collation('a')`,coercibility(_latin1'a') AS `coercibility('a')`,(_latin1'a' = _latin1'A') AS `'a'='A'`
+Note 1003 select charset('a') AS `charset('a')`,collation('a') AS `collation('a')`,coercibility('a') AS `coercibility('a')`,('a' = 'A') AS `'a'='A'`
SET CHARACTER SET koi8r;
SHOW VARIABLES LIKE 'collation_client';
Variable_name Value
@@ -619,7 +619,7 @@ select least(_latin1'a',_latin2'b',_latin5'c' collate latin5_turkish_ci) as f1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f1` varchar(1) character set latin5 NOT NULL default ''
+ `f1` varchar(1) CHARACTER SET latin5 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select case _latin1'a' when _latin2'b' then 1 when _latin5'c' collate
diff --git a/mysql-test/r/ctype_cp1250_ch.result b/mysql-test/r/ctype_cp1250_ch.result
index 2ed22802805..7f0cdf3f17b 100644
--- a/mysql-test/r/ctype_cp1250_ch.result
+++ b/mysql-test/r/ctype_cp1250_ch.result
@@ -1,3 +1,4 @@
+drop table if exists t1;
DROP TABLE IF EXISTS t1;
SHOW COLLATION LIKE 'cp1250_czech_cs';
Collation Charset Id Default Compiled Sortlen
@@ -81,8 +82,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1250
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
@@ -174,8 +175,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) collate cp1250_czech_cs default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) COLLATE cp1250_czech_cs DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1250 COLLATE=cp1250_czech_cs
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
diff --git a/mysql-test/r/ctype_cp932.result b/mysql-test/r/ctype_cp932.result
deleted file mode 100755
index 5bee45cd71e..00000000000
--- a/mysql-test/r/ctype_cp932.result
+++ /dev/null
@@ -1,11520 +0,0 @@
-drop table if exists t1;
-drop table if exists t2;
-drop table if exists t3;
-drop table if exists t4;
-SET @test_character_set= 'cp932';
-SET @test_collation= 'cp932_japanese_ci';
-SET @safe_character_set_server= @@character_set_server;
-SET @safe_collation_server= @@collation_server;
-SET @safe_character_set_client= @@character_set_client;
-SET @safe_character_set_results= @@character_set_results;
-SET character_set_server= @test_character_set;
-SET collation_server= @test_collation;
-CREATE DATABASE d1;
-USE d1;
-CREATE TABLE t1 (c CHAR(10), KEY(c));
-SHOW FULL COLUMNS FROM t1;
-Field Type Collation Null Key Default Extra Privileges Comment
-c char(10) cp932_japanese_ci YES MUL NULL
-INSERT INTO t1 VALUES ('aaa'),('aaaa'),('aaaaa');
-SELECT c as want3results FROM t1 WHERE c LIKE 'aaa%';
-want3results
-aaa
-aaaa
-aaaaa
-DROP TABLE t1;
-CREATE TABLE t1 (c1 varchar(15), KEY c1 (c1(2)));
-SHOW FULL COLUMNS FROM t1;
-Field Type Collation Null Key Default Extra Privileges Comment
-c1 varchar(15) cp932_japanese_ci YES MUL NULL
-INSERT INTO t1 VALUES ('location'),('loberge'),('lotre'),('boabab');
-SELECT c1 as want3results from t1 where c1 like 'l%';
-want3results
-location
-loberge
-lotre
-SELECT c1 as want3results from t1 where c1 like 'lo%';
-want3results
-location
-loberge
-lotre
-SELECT c1 as want1result from t1 where c1 like 'loc%';
-want1result
-location
-SELECT c1 as want1result from t1 where c1 like 'loca%';
-want1result
-location
-SELECT c1 as want1result from t1 where c1 like 'locat%';
-want1result
-location
-SELECT c1 as want1result from t1 where c1 like 'locati%';
-want1result
-location
-SELECT c1 as want1result from t1 where c1 like 'locatio%';
-want1result
-location
-SELECT c1 as want1result from t1 where c1 like 'location%';
-want1result
-location
-DROP TABLE t1;
-create table t1 (a set('a') not null);
-insert into t1 values (),();
-Warnings:
-Warning 1364 Field 'a' doesn't have a default value
-select cast(a as char(1)) from t1;
-cast(a as char(1))
-
-
-select a sounds like a from t1;
-a sounds like a
-1
-1
-select 1 from t1 order by cast(a as char(1));
-1
-1
-1
-drop table t1;
-set names utf8;
-create table t1 (
-name varchar(10),
-level smallint unsigned);
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=cp932
-insert into t1 values ('string',1);
-select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
-concat(name,space(level)) concat(name, repeat(' ',level))
-string string
-drop table t1;
-DROP DATABASE d1;
-USE test;
-SET character_set_server= @safe_character_set_server;
-SET collation_server= @safe_collation_server;
-SET character_set_client= @safe_character_set_client;
-SET character_set_results= @safe_character_set_results;
-set names cp932;
-set character_set_database = cp932;
-CREATE TABLE t1(c1 CHAR(1)) DEFAULT CHARACTER SET = cp932;
-INSERT INTO t1 VALUES
-(0x05),(0x7E),(0x815C),(0x815F),(0x8160),(0x8161),(0x817C),(0x8191),(0x8192),(0x81CA);
-INSERT INTO t1 VALUES
-(0x8740),(0x8741),(0x8742),(0x8743),(0x8744),(0x8745),(0x8746),(0x8747),
-(0x8748),(0x8749),(0x874A),(0x874B),(0x874C),(0x874D),(0x874E),(0x874F),
-(0x8750),(0x8751),(0x8752),(0x8753),(0x8754),(0x8755),(0x8756),(0x8757),
-(0x8758),(0x8759),(0x875A),(0x875B),(0x875C),(0x875D),(0x875F),
-(0x8760),(0x8761),(0x8762),(0x8763),(0x8764),(0x8765),(0x8766),(0x8767),
-(0x8768),(0x8769),(0x876A),(0x876B),(0x876C),(0x876D),(0x876E),(0x876F),
-(0x8770),(0x8771),(0x8772),(0x8773),(0x8774),(0x8775),(0x877E),
-(0x8780),(0x8781),(0x8782),(0x8783),(0x8784),(0x8785),(0x8786),(0x8787),
-(0x8788),(0x8789),(0x878A),(0x878B),(0x878C),(0x878D),(0x878E),(0x878F),
-(0x8790),(0x8791),(0x8792),(0x8793),(0x8794),(0x8795),(0x8796),(0x8797),
-(0x8798),(0x8799),(0x879A),(0x879B),(0x879C);
-INSERT INTO t1 VALUES
-(0xED40),(0xED41),(0xED42),(0xED43),(0xED44),(0xED45),(0xED46),(0xED47),
-(0xED48),(0xED49),(0xED4A),(0xED4B),(0xED4C),(0xED4D),(0xED4E),(0xED4F),
-(0xED50),(0xED51),(0xED52),(0xED53),(0xED54),(0xED55),(0xED56),(0xED57),
-(0xED58),(0xED59),(0xED5A),(0xED5B),(0xED5C),(0xED5D),(0xED5E),(0xED5F),
-(0xED60),(0xED61),(0xED62),(0xED63),(0xED64),(0xED65),(0xED66),(0xED67),
-(0xED68),(0xED69),(0xED6A),(0xED6B),(0xED6C),(0xED6D),(0xED6E),(0xED6F),
-(0xED70),(0xED71),(0xED72),(0xED73),(0xED74),(0xED75),(0xED76),(0xED77),
-(0xED78),(0xED79),(0xED7A),(0xED7B),(0xED7C),(0xED7D),(0xED7E),
-(0xED80),(0xED81),(0xED82),(0xED83),(0xED84),(0xED85),(0xED86),(0xED87),
-(0xED88),(0xED89),(0xED8A),(0xED8B),(0xED8C),(0xED8D),(0xED8E),(0xED8F),
-(0xED90),(0xED91),(0xED92),(0xED93),(0xED94),(0xED95),(0xED96),(0xED97),
-(0xED98),(0xED99),(0xED9A),(0xED9B),(0xED9C),(0xED9D),(0xED9E),(0xED9F),
-(0xEDA0),(0xEDA1),(0xEDA2),(0xEDA3),(0xEDA4),(0xEDA5),(0xEDA6),(0xEDA7),
-(0xEDA8),(0xEDA9),(0xEDAA),(0xEDAB),(0xEDAC),(0xEDAD),(0xEDAE),(0xEDAF),
-(0xEDB0),(0xEDB1),(0xEDB2),(0xEDB3),(0xEDB4),(0xEDB5),(0xEDB6),(0xEDB7),
-(0xEDB8),(0xEDB9),(0xEDBA),(0xEDBB),(0xEDBC),(0xEDBD),(0xEDBE),(0xEDBF),
-(0xEDC0),(0xEDC1),(0xEDC2),(0xEDC3),(0xEDC4),(0xEDC5),(0xEDC6),(0xEDC7),
-(0xEDC8),(0xEDC9),(0xEDCA),(0xEDCB),(0xEDCC),(0xEDCD),(0xEDCE),(0xEDCF),
-(0xEDD0),(0xEDD1),(0xEDD2),(0xEDD3),(0xEDD4),(0xEDD5),(0xEDD6),(0xEDD7),
-(0xEDD8),(0xEDD9),(0xEDDA),(0xEDDB),(0xEDDC),(0xEDDD),(0xEDDE),(0xEDDF),
-(0xEDE0),(0xEDE1),(0xEDE2),(0xEDE3),(0xEDE4),(0xEDE5),(0xEDE6),(0xEDE7),
-(0xEDE8),(0xEDE9),(0xEDEA),(0xEDEB),(0xEDEC),(0xEDED),(0xEDEE),(0xEDEF),
-(0xEDF0),(0xEDF1),(0xEDF2),(0xEDF3),(0xEDF4),(0xEDF5),(0xEDF6),(0xEDF7),
-(0xEDF8),(0xEDF9),(0xEDFA),(0xEDFB),(0xEDFC),
-(0xEE40),(0xEE41),(0xEE42),(0xEE43),(0xEE44),(0xEE45),(0xEE46),(0xEE47),
-(0xEE48),(0xEE49),(0xEE4A),(0xEE4B),(0xEE4C),(0xEE4D),(0xEE4E),(0xEE4F),
-(0xEE50),(0xEE51),(0xEE52),(0xEE53),(0xEE54),(0xEE55),(0xEE56),(0xEE57),
-(0xEE58),(0xEE59),(0xEE5A),(0xEE5B),(0xEE5C),(0xEE5D),(0xEE5E),(0xEE5F),
-(0xEE60),(0xEE61),(0xEE62),(0xEE63),(0xEE64),(0xEE65),(0xEE66),(0xEE67),
-(0xEE68),(0xEE69),(0xEE6A),(0xEE6B),(0xEE6C),(0xEE6D),(0xEE6E),(0xEE6F),
-(0xEE70),(0xEE71),(0xEE72),(0xEE73),(0xEE74),(0xEE75),(0xEE76),(0xEE77),
-(0xEE78),(0xEE79),(0xEE7A),(0xEE7B),(0xEE7C),(0xEE7D),(0xEE7E),
-(0xEE80),(0xEE81),(0xEE82),(0xEE83),(0xEE84),(0xEE85),(0xEE86),(0xEE87),
-(0xEE88),(0xEE89),(0xEE8A),(0xEE8B),(0xEE8C),(0xEE8D),(0xEE8E),(0xEE8F),
-(0xEE90),(0xEE91),(0xEE92),(0xEE93),(0xEE94),(0xEE95),(0xEE96),(0xEE97),
-(0xEE98),(0xEE99),(0xEE9A),(0xEE9B),(0xEE9C),(0xEE9D),(0xEE9E),(0xEE9F),
-(0xEEA0),(0xEEA1),(0xEEA2),(0xEEA3),(0xEEA4),(0xEEA5),(0xEEA6),(0xEEA7),
-(0xEEA8),(0xEEA9),(0xEEAA),(0xEEAB),(0xEEAC),(0xEEAD),(0xEEAE),(0xEEAF),
-(0xEEB0),(0xEEB1),(0xEEB2),(0xEEB3),(0xEEB4),(0xEEB5),(0xEEB6),(0xEEB7),
-(0xEEB8),(0xEEB9),(0xEEBA),(0xEEBB),(0xEEBC),(0xEEBD),(0xEEBE),(0xEEBF),
-(0xEEC0),(0xEEC1),(0xEEC2),(0xEEC3),(0xEEC4),(0xEEC5),(0xEEC6),(0xEEC7),
-(0xEEC8),(0xEEC9),(0xEECA),(0xEECB),(0xEECC),(0xEECD),(0xEECE),(0xEECF),
-(0xEED0),(0xEED1),(0xEED2),(0xEED3),(0xEED4),(0xEED5),(0xEED6),(0xEED7),
-(0xEED8),(0xEED9),(0xEEDA),(0xEEDB),(0xEEDC),(0xEEDD),(0xEEDE),(0xEEDF),
-(0xEEE0),(0xEEE1),(0xEEE2),(0xEEE3),(0xEEE4),(0xEEE5),(0xEEE6),(0xEEE7),
-(0xEEE8),(0xEEE9),(0xEEEA),(0xEEEB),(0xEEEC),(0xEEEF),
-(0xEEF0),(0xEEF1),(0xEEF2),(0xEEF3),(0xEEF4),(0xEEF5),(0xEEF6),(0xEEF7),
-(0xEEF8),(0xEEF9),(0xEEFA),(0xEEFB),(0xEEFC);
-INSERT INTO t1 VALUES
-(0xFA40),(0xFA41),(0xFA42),(0xFA43),(0xFA44),(0xFA45),(0xFA46),(0xFA47),
-(0xFA48),(0xFA49),(0xFA4A),(0xFA4B),(0xFA4C),(0xFA4D),(0xFA4E),(0xFA4F),
-(0xFA50),(0xFA51),(0xFA52),(0xFA53),(0xFA54),(0xFA55),(0xFA56),(0xFA57),
-(0xFA58),(0xFA59),(0xFA5A),(0xFA5B),(0xFA5C),(0xFA5D),(0xFA5E),(0xFA5F),
-(0xFA60),(0xFA61),(0xFA62),(0xFA63),(0xFA64),(0xFA65),(0xFA66),(0xFA67),
-(0xFA68),(0xFA69),(0xFA6A),(0xFA6B),(0xFA6C),(0xFA6D),(0xFA6E),(0xFA6F),
-(0xFA70),(0xFA71),(0xFA72),(0xFA73),(0xFA74),(0xFA75),(0xFA76),(0xFA77),
-(0xFA78),(0xFA79),(0xFA7A),(0xFA7B),(0xFA7C),(0xFA7D),(0xFA7E),
-(0xFA80),(0xFA81),(0xFA82),(0xFA83),(0xFA84),(0xFA85),(0xFA86),(0xFA87),
-(0xFA88),(0xFA89),(0xFA8A),(0xFA8B),(0xFA8C),(0xFA8D),(0xFA8E),(0xFA8F),
-(0xFA90),(0xFA91),(0xFA92),(0xFA93),(0xFA94),(0xFA95),(0xFA96),(0xFA97),
-(0xFA98),(0xFA99),(0xFA9A),(0xFA9B),(0xFA9C),(0xFA9D),(0xFA9E),(0xFA9F),
-(0xFAA0),(0xFAA1),(0xFAA2),(0xFAA3),(0xFAA4),(0xFAA5),(0xFAA6),(0xFAA7),
-(0xFAA8),(0xFAA9),(0xFAAA),(0xFAAB),(0xFAAC),(0xFAAD),(0xFAAE),(0xFAAF),
-(0xFAB0),(0xFAB1),(0xFAB2),(0xFAB3),(0xFAB4),(0xFAB5),(0xFAB6),(0xFAB7),
-(0xFAB8),(0xFAB9),(0xFABA),(0xFABB),(0xFABC),(0xFABD),(0xFABE),(0xFABF),
-(0xFAC0),(0xFAC1),(0xFAC2),(0xFAC3),(0xFAC4),(0xFAC5),(0xFAC6),(0xFAC7),
-(0xFAC8),(0xFAC9),(0xFACA),(0xFACB),(0xFACC),(0xFACD),(0xFACE),(0xFACF),
-(0xFAD0),(0xFAD1),(0xFAD2),(0xFAD3),(0xFAD4),(0xFAD5),(0xFAD6),(0xFAD7),
-(0xFAD8),(0xFAD9),(0xFADA),(0xFADB),(0xFADC),(0xFADD),(0xFADE),(0xFADF),
-(0xFAE0),(0xFAE1),(0xFAE2),(0xFAE3),(0xFAE4),(0xFAE5),(0xFAE6),(0xFAE7),
-(0xFAE8),(0xFAE9),(0xFAEA),(0xFAEB),(0xFAEC),(0xFAED),(0xFAEE),(0xFAEF),
-(0xFAF0),(0xFAF1),(0xFAF2),(0xFAF3),(0xFAF4),(0xFAF5),(0xFAF6),(0xFAF7),
-(0xFAF8),(0xFAF9),(0xFAFA),(0xFAFB),(0xFAFC),
-(0xFB40),(0xFB41),(0xFB42),(0xFB43),(0xFB44),(0xFB45),(0xFB46),(0xFB47),
-(0xFB48),(0xFB49),(0xFB4A),(0xFB4B),(0xFB4C),(0xFB4D),(0xFB4E),(0xFB4F),
-(0xFB50),(0xFB51),(0xFB52),(0xFB53),(0xFB54),(0xFB55),(0xFB56),(0xFB57),
-(0xFB58),(0xFB59),(0xFB5A),(0xFB5B),(0xFB5C),(0xFB5D),(0xFB5E),(0xFB5F),
-(0xFB60),(0xFB61),(0xFB62),(0xFB63),(0xFB64),(0xFB65),(0xFB66),(0xFB67),
-(0xFB68),(0xFB69),(0xFB6A),(0xFB6B),(0xFB6C),(0xFB6D),(0xFB6E),(0xFB6F),
-(0xFB70),(0xFB71),(0xFB72),(0xFB73),(0xFB74),(0xFB75),(0xFB76),(0xFB77),
-(0xFB78),(0xFB79),(0xFB7A),(0xFB7B),(0xFB7C),(0xFB7D),(0xFB7E),
-(0xFB80),(0xFB81),(0xFB82),(0xFB83),(0xFB84),(0xFB85),(0xFB86),(0xFB87),
-(0xFB88),(0xFB89),(0xFB8A),(0xFB8B),(0xFB8C),(0xFB8D),(0xFB8E),(0xFB8F),
-(0xFB90),(0xFB91),(0xFB92),(0xFB93),(0xFB94),(0xFB95),(0xFB96),(0xFB97),
-(0xFB98),(0xFB99),(0xFB9A),(0xFB9B),(0xFB9C),(0xFB9D),(0xFB9E),(0xFB9F),
-(0xFBA0),(0xFBA1),(0xFBA2),(0xFBA3),(0xFBA4),(0xFBA5),(0xFBA6),(0xFBA7),
-(0xFBA8),(0xFBA9),(0xFBAA),(0xFBAB),(0xFBAC),(0xFBAD),(0xFBAE),(0xFBAF),
-(0xFBB0),(0xFBB1),(0xFBB2),(0xFBB3),(0xFBB4),(0xFBB5),(0xFBB6),(0xFBB7),
-(0xFBB8),(0xFBB9),(0xFBBA),(0xFBBB),(0xFBBC),(0xFBBD),(0xFBBE),(0xFBBF),
-(0xFBC0),(0xFBC1),(0xFBC2),(0xFBC3),(0xFBC4),(0xFBC5),(0xFBC6),(0xFBC7),
-(0xFBC8),(0xFBC9),(0xFBCA),(0xFBCB),(0xFBCC),(0xFBCD),(0xFBCE),(0xFBCF),
-(0xFBD0),(0xFBD1),(0xFBD2),(0xFBD3),(0xFBD4),(0xFBD5),(0xFBD6),(0xFBD7),
-(0xFBD8),(0xFBD9),(0xFBDA),(0xFBDB),(0xFBDC),(0xFBDD),(0xFBDE),(0xFBDF),
-(0xFBE0),(0xFBE1),(0xFBE2),(0xFBE3),(0xFBE4),(0xFBE5),(0xFBE6),(0xFBE7),
-(0xFBE8),(0xFBE9),(0xFBEA),(0xFBEB),(0xFBEC),(0xFBED),(0xFBEE),(0xFBEF),
-(0xFBF0),(0xFBF1),(0xFBF2),(0xFBF3),(0xFBF4),(0xFBF5),(0xFBF6),(0xFBF7),
-(0xFBF8),(0xFBF9),(0xFBFA),(0xFBFB),(0xFBFC),
-(0xFC40),(0xFC41),(0xFC42),(0xFC43),(0xFC44),(0xFC45),(0xFC46),(0xFC47),
-(0xFC48),(0xFC49),(0xFC4A),(0xFC4B);
-INSERT INTO t1 VALUES
-(0xF040),(0xF041),(0xF042),(0xF043),(0xF044),(0xF045),(0xF046),(0xF047),
-(0xF048),(0xF049),(0xF04A),(0xF04B),(0xF04C),(0xF04D),(0xF04E),(0xF04F),
-(0xF050),(0xF051),(0xF052),(0xF053),(0xF054),(0xF055),(0xF056),(0xF057),
-(0xF058),(0xF059),(0xF05A),(0xF05B),(0xF05C),(0xF05D),(0xF05E),(0xF05F),
-(0xF060),(0xF061),(0xF062),(0xF063),(0xF064),(0xF065),(0xF066),(0xF067),
-(0xF068),(0xF069),(0xF06A),(0xF06B),(0xF06C),(0xF06D),(0xF06E),(0xF06F),
-(0xF070),(0xF071),(0xF072),(0xF073),(0xF074),(0xF075),(0xF076),(0xF077),
-(0xF078),(0xF079),(0xF07A),(0xF07B),(0xF07C),(0xF07D),(0xF07E),
-(0xF080),(0xF081),(0xF082),(0xF083),(0xF084),(0xF085),(0xF086),(0xF087),
-(0xF088),(0xF089),(0xF08A),(0xF08B),(0xF08C),(0xF08D),(0xF08E),(0xF08F),
-(0xF090),(0xF091),(0xF092),(0xF093),(0xF094),(0xF095),(0xF096),(0xF097),
-(0xF098),(0xF099),(0xF09A),(0xF09B),(0xF09C),(0xF09D),(0xF09E),(0xF09F),
-(0xF0A0),(0xF0A1),(0xF0A2),(0xF0A3),(0xF0A4),(0xF0A5),(0xF0A6),(0xF0A7),
-(0xF0A8),(0xF0A9),(0xF0AA),(0xF0AB),(0xF0AC),(0xF0AD),(0xF0AE),(0xF0AF),
-(0xF0B0),(0xF0B1),(0xF0B2),(0xF0B3),(0xF0B4),(0xF0B5),(0xF0B6),(0xF0B7),
-(0xF0B8),(0xF0B9),(0xF0BA),(0xF0BB),(0xF0BC),(0xF0BD),(0xF0BE),(0xF0BF),
-(0xF0C0),(0xF0C1),(0xF0C2),(0xF0C3),(0xF0C4),(0xF0C5),(0xF0C6),(0xF0C7),
-(0xF0C8),(0xF0C9),(0xF0CA),(0xF0CB),(0xF0CC),(0xF0CD),(0xF0CE),(0xF0CF),
-(0xF0D0),(0xF0D1),(0xF0D2),(0xF0D3),(0xF0D4),(0xF0D5),(0xF0D6),(0xF0D7),
-(0xF0D8),(0xF0D9),(0xF0DA),(0xF0DB),(0xF0DC),(0xF0DD),(0xF0DE),(0xF0DF),
-(0xF0E0),(0xF0E1),(0xF0E2),(0xF0E3),(0xF0E4),(0xF0E5),(0xF0E6),(0xF0E7),
-(0xF0E8),(0xF0E9),(0xF0EA),(0xF0EB),(0xF0EC),(0xF0ED),(0xF0EE),(0xF0EF),
-(0xF0F0),(0xF0F1),(0xF0F2),(0xF0F3),(0xF0F4),(0xF0F5),(0xF0F6),(0xF0F7),
-(0xF0F8),(0xF0F9),(0xF0FA),(0xF0FB),(0xF0FC),
-(0xF140),(0xF141),(0xF142),(0xF143),(0xF144),(0xF145),(0xF146),(0xF147),
-(0xF148),(0xF149),(0xF14A),(0xF14B),(0xF14C),(0xF14D),(0xF14E),(0xF14F),
-(0xF150),(0xF151),(0xF152),(0xF153),(0xF154),(0xF155),(0xF156),(0xF157),
-(0xF158),(0xF159),(0xF15A),(0xF15B),(0xF15C),(0xF15D),(0xF15E),(0xF15F),
-(0xF160),(0xF161),(0xF162),(0xF163),(0xF164),(0xF165),(0xF166),(0xF167),
-(0xF168),(0xF169),(0xF16A),(0xF16B),(0xF16C),(0xF16D),(0xF16E),(0xF16F),
-(0xF170),(0xF171),(0xF172),(0xF173),(0xF174),(0xF175),(0xF176),(0xF177),
-(0xF178),(0xF179),(0xF17A),(0xF17B),(0xF17C),(0xF17D),(0xF17E),
-(0xF180),(0xF181),(0xF182),(0xF183),(0xF184),(0xF185),(0xF186),(0xF187),
-(0xF188),(0xF189),(0xF18A),(0xF18B),(0xF18C),(0xF18D),(0xF18E),(0xF18F),
-(0xF190),(0xF191),(0xF192),(0xF193),(0xF194),(0xF195),(0xF196),(0xF197),
-(0xF198),(0xF199),(0xF19A),(0xF19B),(0xF19C),(0xF19D),(0xF19E),(0xF19F),
-(0xF1A0),(0xF1A1),(0xF1A2),(0xF1A3),(0xF1A4),(0xF1A5),(0xF1A6),(0xF1A7),
-(0xF1A8),(0xF1A9),(0xF1AA),(0xF1AB),(0xF1AC),(0xF1AD),(0xF1AE),(0xF1AF),
-(0xF1B0),(0xF1B1),(0xF1B2),(0xF1B3),(0xF1B4),(0xF1B5),(0xF1B6),(0xF1B7),
-(0xF1B8),(0xF1B9),(0xF1BA),(0xF1BB),(0xF1BC),(0xF1BD),(0xF1BE),(0xF1BF),
-(0xF1C0),(0xF1C1),(0xF1C2),(0xF1C3),(0xF1C4),(0xF1C5),(0xF1C6),(0xF1C7),
-(0xF1C8),(0xF1C9),(0xF1CA),(0xF1CB),(0xF1CC),(0xF1CD),(0xF1CE),(0xF1CF),
-(0xF1D0),(0xF1D1),(0xF1D2),(0xF1D3),(0xF1D4),(0xF1D5),(0xF1D6),(0xF1D7),
-(0xF1D8),(0xF1D9),(0xF1DA),(0xF1DB),(0xF1DC),(0xF1DD),(0xF1DE),(0xF1DF),
-(0xF1E0),(0xF1E1),(0xF1E2),(0xF1E3),(0xF1E4),(0xF1E5),(0xF1E6),(0xF1E7),
-(0xF1E8),(0xF1E9),(0xF1EA),(0xF1EB),(0xF1EC),(0xF1ED),(0xF1EE),(0xF1EF),
-(0xF1F0),(0xF1F1),(0xF1F2),(0xF1F3),(0xF1F4),(0xF1F5),(0xF1F6),(0xF1F7),
-(0xF1F8),(0xF1F9),(0xF1FA),(0xF1FB),(0xF1FC),
-(0xF240),(0xF241),(0xF242),(0xF243),(0xF244),(0xF245),(0xF246),(0xF247),
-(0xF248),(0xF249),(0xF24A),(0xF24B),(0xF24C),(0xF24D),(0xF24E),(0xF24F),
-(0xF250),(0xF251),(0xF252),(0xF253),(0xF254),(0xF255),(0xF256),(0xF257),
-(0xF258),(0xF259),(0xF25A),(0xF25B),(0xF25C),(0xF25D),(0xF25E),(0xF25F),
-(0xF260),(0xF261),(0xF262),(0xF263),(0xF264),(0xF265),(0xF266),(0xF267),
-(0xF268),(0xF269),(0xF26A),(0xF26B),(0xF26C),(0xF26D),(0xF26E),(0xF26F),
-(0xF270),(0xF271),(0xF272),(0xF273),(0xF274),(0xF275),(0xF276),(0xF277),
-(0xF278),(0xF279),(0xF27A),(0xF27B),(0xF27C),(0xF27D),(0xF27E),
-(0xF280),(0xF281),(0xF282),(0xF283),(0xF284),(0xF285),(0xF286),(0xF287),
-(0xF288),(0xF289),(0xF28A),(0xF28B),(0xF28C),(0xF28D),(0xF28E),(0xF28F),
-(0xF290),(0xF291),(0xF292),(0xF293),(0xF294),(0xF295),(0xF296),(0xF297),
-(0xF298),(0xF299),(0xF29A),(0xF29B),(0xF29C),(0xF29D),(0xF29E),(0xF29F),
-(0xF2A0),(0xF2A1),(0xF2A2),(0xF2A3),(0xF2A4),(0xF2A5),(0xF2A6),(0xF2A7),
-(0xF2A8),(0xF2A9),(0xF2AA),(0xF2AB),(0xF2AC),(0xF2AD),(0xF2AE),(0xF2AF),
-(0xF2B0),(0xF2B1),(0xF2B2),(0xF2B3),(0xF2B4),(0xF2B5),(0xF2B6),(0xF2B7),
-(0xF2B8),(0xF2B9),(0xF2BA),(0xF2BB),(0xF2BC),(0xF2BD),(0xF2BE),(0xF2BF),
-(0xF2C0),(0xF2C1),(0xF2C2),(0xF2C3),(0xF2C4),(0xF2C5),(0xF2C6),(0xF2C7),
-(0xF2C8),(0xF2C9),(0xF2CA),(0xF2CB),(0xF2CC),(0xF2CD),(0xF2CE),(0xF2CF),
-(0xF2D0),(0xF2D1),(0xF2D2),(0xF2D3),(0xF2D4),(0xF2D5),(0xF2D6),(0xF2D7),
-(0xF2D8),(0xF2D9),(0xF2DA),(0xF2DB),(0xF2DC),(0xF2DD),(0xF2DE),(0xF2DF),
-(0xF2E0),(0xF2E1),(0xF2E2),(0xF2E3),(0xF2E4),(0xF2E5),(0xF2E6),(0xF2E7),
-(0xF2E8),(0xF2E9),(0xF2EA),(0xF2EB),(0xF2EC),(0xF2ED),(0xF2EE),(0xF2EF),
-(0xF2F0),(0xF2F1),(0xF2F2),(0xF2F3),(0xF2F4),(0xF2F5),(0xF2F6),(0xF2F7),
-(0xF2F8),(0xF2F9),(0xF2FA),(0xF2FB),(0xF2FC),
-(0xF340),(0xF341),(0xF342),(0xF343),(0xF344),(0xF345),(0xF346),(0xF347),
-(0xF348),(0xF349),(0xF34A),(0xF34B),(0xF34C),(0xF34D),(0xF34E),(0xF34F),
-(0xF350),(0xF351),(0xF352),(0xF353),(0xF354),(0xF355),(0xF356),(0xF357),
-(0xF358),(0xF359),(0xF35A),(0xF35B),(0xF35C),(0xF35D),(0xF35E),(0xF35F),
-(0xF360),(0xF361),(0xF362),(0xF363),(0xF364),(0xF365),(0xF366),(0xF367),
-(0xF368),(0xF369),(0xF36A),(0xF36B),(0xF36C),(0xF36D),(0xF36E),(0xF36F),
-(0xF370),(0xF371),(0xF372),(0xF373),(0xF374),(0xF375),(0xF376),(0xF377),
-(0xF378),(0xF379),(0xF37A),(0xF37B),(0xF37C),(0xF37D),(0xF37E),
-(0xF380),(0xF381),(0xF382),(0xF383),(0xF384),(0xF385),(0xF386),(0xF387),
-(0xF388),(0xF389),(0xF38A),(0xF38B),(0xF38C),(0xF38D),(0xF38E),(0xF38F),
-(0xF390),(0xF391),(0xF392),(0xF393),(0xF394),(0xF395),(0xF396),(0xF397),
-(0xF398),(0xF399),(0xF39A),(0xF39B),(0xF39C),(0xF39D),(0xF39E),(0xF39F),
-(0xF3A0),(0xF3A1),(0xF3A2),(0xF3A3),(0xF3A4),(0xF3A5),(0xF3A6),(0xF3A7),
-(0xF3A8),(0xF3A9),(0xF3AA),(0xF3AB),(0xF3AC),(0xF3AD),(0xF3AE),(0xF3AF),
-(0xF3B0),(0xF3B1),(0xF3B2),(0xF3B3),(0xF3B4),(0xF3B5),(0xF3B6),(0xF3B7),
-(0xF3B8),(0xF3B9),(0xF3BA),(0xF3BB),(0xF3BC),(0xF3BD),(0xF3BE),(0xF3BF),
-(0xF3C0),(0xF3C1),(0xF3C2),(0xF3C3),(0xF3C4),(0xF3C5),(0xF3C6),(0xF3C7),
-(0xF3C8),(0xF3C9),(0xF3CA),(0xF3CB),(0xF3CC),(0xF3CD),(0xF3CE),(0xF3CF),
-(0xF3D0),(0xF3D1),(0xF3D2),(0xF3D3),(0xF3D4),(0xF3D5),(0xF3D6),(0xF3D7),
-(0xF3D8),(0xF3D9),(0xF3DA),(0xF3DB),(0xF3DC),(0xF3DD),(0xF3DE),(0xF3DF),
-(0xF3E0),(0xF3E1),(0xF3E2),(0xF3E3),(0xF3E4),(0xF3E5),(0xF3E6),(0xF3E7),
-(0xF3E8),(0xF3E9),(0xF3EA),(0xF3EB),(0xF3EC),(0xF3ED),(0xF3EE),(0xF3EF),
-(0xF3F0),(0xF3F1),(0xF3F2),(0xF3F3),(0xF3F4),(0xF3F5),(0xF3F6),(0xF3F7),
-(0xF3F8),(0xF3F9),(0xF3FA),(0xF3FB),(0xF3FC),
-(0xF440),(0xF441),(0xF442),(0xF443),(0xF444),(0xF445),(0xF446),(0xF447),
-(0xF448),(0xF449),(0xF44A),(0xF44B),(0xF44C),(0xF44D),(0xF44E),(0xF44F),
-(0xF450),(0xF451),(0xF452),(0xF453),(0xF454),(0xF455),(0xF456),(0xF457),
-(0xF458),(0xF459),(0xF45A),(0xF45B),(0xF45C),(0xF45D),(0xF45E),(0xF45F),
-(0xF460),(0xF461),(0xF462),(0xF463),(0xF464),(0xF465),(0xF466),(0xF467),
-(0xF468),(0xF469),(0xF46A),(0xF46B),(0xF46C),(0xF46D),(0xF46E),(0xF46F),
-(0xF470),(0xF471),(0xF472),(0xF473),(0xF474),(0xF475),(0xF476),(0xF477),
-(0xF478),(0xF479),(0xF47A),(0xF47B),(0xF47C),(0xF47D),(0xF47E),
-(0xF480),(0xF481),(0xF482),(0xF483),(0xF484),(0xF485),(0xF486),(0xF487),
-(0xF488),(0xF489),(0xF48A),(0xF48B),(0xF48C),(0xF48D),(0xF48E),(0xF48F),
-(0xF490),(0xF491),(0xF492),(0xF493),(0xF494),(0xF495),(0xF496),(0xF497),
-(0xF498),(0xF499),(0xF49A),(0xF49B),(0xF49C),(0xF49D),(0xF49E),(0xF49F),
-(0xF4A0),(0xF4A1),(0xF4A2),(0xF4A3),(0xF4A4),(0xF4A5),(0xF4A6),(0xF4A7),
-(0xF4A8),(0xF4A9),(0xF4AA),(0xF4AB),(0xF4AC),(0xF4AD),(0xF4AE),(0xF4AF),
-(0xF4B0),(0xF4B1),(0xF4B2),(0xF4B3),(0xF4B4),(0xF4B5),(0xF4B6),(0xF4B7),
-(0xF4B8),(0xF4B9),(0xF4BA),(0xF4BB),(0xF4BC),(0xF4BD),(0xF4BE),(0xF4BF),
-(0xF4C0),(0xF4C1),(0xF4C2),(0xF4C3),(0xF4C4),(0xF4C5),(0xF4C6),(0xF4C7),
-(0xF4C8),(0xF4C9),(0xF4CA),(0xF4CB),(0xF4CC),(0xF4CD),(0xF4CE),(0xF4CF),
-(0xF4D0),(0xF4D1),(0xF4D2),(0xF4D3),(0xF4D4),(0xF4D5),(0xF4D6),(0xF4D7),
-(0xF4D8),(0xF4D9),(0xF4DA),(0xF4DB),(0xF4DC),(0xF4DD),(0xF4DE),(0xF4DF),
-(0xF4E0),(0xF4E1),(0xF4E2),(0xF4E3),(0xF4E4),(0xF4E5),(0xF4E6),(0xF4E7),
-(0xF4E8),(0xF4E9),(0xF4EA),(0xF4EB),(0xF4EC),(0xF4ED),(0xF4EE),(0xF4EF),
-(0xF4F0),(0xF4F1),(0xF4F2),(0xF4F3),(0xF4F4),(0xF4F5),(0xF4F6),(0xF4F7),
-(0xF4F8),(0xF4F9),(0xF4FA),(0xF4FB),(0xF4FC),
-(0xF540),(0xF541),(0xF542),(0xF543),(0xF544),(0xF545),(0xF546),(0xF547),
-(0xF548),(0xF549),(0xF54A),(0xF54B),(0xF54C),(0xF54D),(0xF54E),(0xF54F),
-(0xF550),(0xF551),(0xF552),(0xF553),(0xF554),(0xF555),(0xF556),(0xF557),
-(0xF558),(0xF559),(0xF55A),(0xF55B),(0xF55C),(0xF55D),(0xF55E),(0xF55F),
-(0xF560),(0xF561),(0xF562),(0xF563),(0xF564),(0xF565),(0xF566),(0xF567),
-(0xF568),(0xF569),(0xF56A),(0xF56B),(0xF56C),(0xF56D),(0xF56E),(0xF56F),
-(0xF570),(0xF571),(0xF572),(0xF573),(0xF574),(0xF575),(0xF576),(0xF577),
-(0xF578),(0xF579),(0xF57A),(0xF57B),(0xF57C),(0xF57D),(0xF57E),
-(0xF580),(0xF581),(0xF582),(0xF583),(0xF584),(0xF585),(0xF586),(0xF587),
-(0xF588),(0xF589),(0xF58A),(0xF58B),(0xF58C),(0xF58D),(0xF58E),(0xF58F),
-(0xF590),(0xF591),(0xF592),(0xF593),(0xF594),(0xF595),(0xF596),(0xF597),
-(0xF598),(0xF599),(0xF59A),(0xF59B),(0xF59C),(0xF59D),(0xF59E),(0xF59F),
-(0xF5A0),(0xF5A1),(0xF5A2),(0xF5A3),(0xF5A4),(0xF5A5),(0xF5A6),(0xF5A7),
-(0xF5A8),(0xF5A9),(0xF5AA),(0xF5AB),(0xF5AC),(0xF5AD),(0xF5AE),(0xF5AF),
-(0xF5B0),(0xF5B1),(0xF5B2),(0xF5B3),(0xF5B4),(0xF5B5),(0xF5B6),(0xF5B7),
-(0xF5B8),(0xF5B9),(0xF5BA),(0xF5BB),(0xF5BC),(0xF5BD),(0xF5BE),(0xF5BF),
-(0xF5C0),(0xF5C1),(0xF5C2),(0xF5C3),(0xF5C4),(0xF5C5),(0xF5C6),(0xF5C7),
-(0xF5C8),(0xF5C9),(0xF5CA),(0xF5CB),(0xF5CC),(0xF5CD),(0xF5CE),(0xF5CF),
-(0xF5D0),(0xF5D1),(0xF5D2),(0xF5D3),(0xF5D4),(0xF5D5),(0xF5D6),(0xF5D7),
-(0xF5D8),(0xF5D9),(0xF5DA),(0xF5DB),(0xF5DC),(0xF5DD),(0xF5DE),(0xF5DF),
-(0xF5E0),(0xF5E1),(0xF5E2),(0xF5E3),(0xF5E4),(0xF5E5),(0xF5E6),(0xF5E7),
-(0xF5E8),(0xF5E9),(0xF5EA),(0xF5EB),(0xF5EC),(0xF5ED),(0xF5EE),(0xF5EF),
-(0xF5F0),(0xF5F1),(0xF5F2),(0xF5F3),(0xF5F4),(0xF5F5),(0xF5F6),(0xF5F7),
-(0xF5F8),(0xF5F9),(0xF5FA),(0xF5FB),(0xF5FC),
-(0xF640),(0xF641),(0xF642),(0xF643),(0xF644),(0xF645),(0xF646),(0xF647),
-(0xF648),(0xF649),(0xF64A),(0xF64B),(0xF64C),(0xF64D),(0xF64E),(0xF64F),
-(0xF650),(0xF651),(0xF652),(0xF653),(0xF654),(0xF655),(0xF656),(0xF657),
-(0xF658),(0xF659),(0xF65A),(0xF65B),(0xF65C),(0xF65D),(0xF65E),(0xF65F),
-(0xF660),(0xF661),(0xF662),(0xF663),(0xF664),(0xF665),(0xF666),(0xF667),
-(0xF668),(0xF669),(0xF66A),(0xF66B),(0xF66C),(0xF66D),(0xF66E),(0xF66F),
-(0xF670),(0xF671),(0xF672),(0xF673),(0xF674),(0xF675),(0xF676),(0xF677),
-(0xF678),(0xF679),(0xF67A),(0xF67B),(0xF67C),(0xF67D),(0xF67E),
-(0xF680),(0xF681),(0xF682),(0xF683),(0xF684),(0xF685),(0xF686),(0xF687),
-(0xF688),(0xF689),(0xF68A),(0xF68B),(0xF68C),(0xF68D),(0xF68E),(0xF68F),
-(0xF690),(0xF691),(0xF692),(0xF693),(0xF694),(0xF695),(0xF696),(0xF697),
-(0xF698),(0xF699),(0xF69A),(0xF69B),(0xF69C),(0xF69D),(0xF69E),(0xF69F),
-(0xF6A0),(0xF6A1),(0xF6A2),(0xF6A3),(0xF6A4),(0xF6A5),(0xF6A6),(0xF6A7),
-(0xF6A8),(0xF6A9),(0xF6AA),(0xF6AB),(0xF6AC),(0xF6AD),(0xF6AE),(0xF6AF),
-(0xF6B0),(0xF6B1),(0xF6B2),(0xF6B3),(0xF6B4),(0xF6B5),(0xF6B6),(0xF6B7),
-(0xF6B8),(0xF6B9),(0xF6BA),(0xF6BB),(0xF6BC),(0xF6BD),(0xF6BE),(0xF6BF),
-(0xF6C0),(0xF6C1),(0xF6C2),(0xF6C3),(0xF6C4),(0xF6C5),(0xF6C6),(0xF6C7),
-(0xF6C8),(0xF6C9),(0xF6CA),(0xF6CB),(0xF6CC),(0xF6CD),(0xF6CE),(0xF6CF),
-(0xF6D0),(0xF6D1),(0xF6D2),(0xF6D3),(0xF6D4),(0xF6D5),(0xF6D6),(0xF6D7),
-(0xF6D8),(0xF6D9),(0xF6DA),(0xF6DB),(0xF6DC),(0xF6DD),(0xF6DE),(0xF6DF),
-(0xF6E0),(0xF6E1),(0xF6E2),(0xF6E3),(0xF6E4),(0xF6E5),(0xF6E6),(0xF6E7),
-(0xF6E8),(0xF6E9),(0xF6EA),(0xF6EB),(0xF6EC),(0xF6ED),(0xF6EE),(0xF6EF),
-(0xF6F0),(0xF6F1),(0xF6F2),(0xF6F3),(0xF6F4),(0xF6F5),(0xF6F6),(0xF6F7),
-(0xF6F8),(0xF6F9),(0xF6FA),(0xF6FB),(0xF6FC),
-(0xF740),(0xF741),(0xF742),(0xF743),(0xF744),(0xF745),(0xF746),(0xF747),
-(0xF748),(0xF749),(0xF74A),(0xF74B),(0xF74C),(0xF74D),(0xF74E),(0xF74F),
-(0xF750),(0xF751),(0xF752),(0xF753),(0xF754),(0xF755),(0xF756),(0xF757),
-(0xF758),(0xF759),(0xF75A),(0xF75B),(0xF75C),(0xF75D),(0xF75E),(0xF75F),
-(0xF760),(0xF761),(0xF762),(0xF763),(0xF764),(0xF765),(0xF766),(0xF767),
-(0xF768),(0xF769),(0xF76A),(0xF76B),(0xF76C),(0xF76D),(0xF76E),(0xF76F),
-(0xF770),(0xF771),(0xF772),(0xF773),(0xF774),(0xF775),(0xF776),(0xF777),
-(0xF778),(0xF779),(0xF77A),(0xF77B),(0xF77C),(0xF77D),(0xF77E),
-(0xF780),(0xF781),(0xF782),(0xF783),(0xF784),(0xF785),(0xF786),(0xF787),
-(0xF788),(0xF789),(0xF78A),(0xF78B),(0xF78C),(0xF78D),(0xF78E),(0xF78F),
-(0xF790),(0xF791),(0xF792),(0xF793),(0xF794),(0xF795),(0xF796),(0xF797),
-(0xF798),(0xF799),(0xF79A),(0xF79B),(0xF79C),(0xF79D),(0xF79E),(0xF79F),
-(0xF7A0),(0xF7A1),(0xF7A2),(0xF7A3),(0xF7A4),(0xF7A5),(0xF7A6),(0xF7A7),
-(0xF7A8),(0xF7A9),(0xF7AA),(0xF7AB),(0xF7AC),(0xF7AD),(0xF7AE),(0xF7AF),
-(0xF7B0),(0xF7B1),(0xF7B2),(0xF7B3),(0xF7B4),(0xF7B5),(0xF7B6),(0xF7B7),
-(0xF7B8),(0xF7B9),(0xF7BA),(0xF7BB),(0xF7BC),(0xF7BD),(0xF7BE),(0xF7BF),
-(0xF7C0),(0xF7C1),(0xF7C2),(0xF7C3),(0xF7C4),(0xF7C5),(0xF7C6),(0xF7C7),
-(0xF7C8),(0xF7C9),(0xF7CA),(0xF7CB),(0xF7CC),(0xF7CD),(0xF7CE),(0xF7CF),
-(0xF7D0),(0xF7D1),(0xF7D2),(0xF7D3),(0xF7D4),(0xF7D5),(0xF7D6),(0xF7D7),
-(0xF7D8),(0xF7D9),(0xF7DA),(0xF7DB),(0xF7DC),(0xF7DD),(0xF7DE),(0xF7DF),
-(0xF7E0),(0xF7E1),(0xF7E2),(0xF7E3),(0xF7E4),(0xF7E5),(0xF7E6),(0xF7E7),
-(0xF7E8),(0xF7E9),(0xF7EA),(0xF7EB),(0xF7EC),(0xF7ED),(0xF7EE),(0xF7EF),
-(0xF7F0),(0xF7F1),(0xF7F2),(0xF7F3),(0xF7F4),(0xF7F5),(0xF7F6),(0xF7F7),
-(0xF7F8),(0xF7F9),(0xF7FA),(0xF7FB),(0xF7FC),
-(0xF840),(0xF841),(0xF842),(0xF843),(0xF844),(0xF845),(0xF846),(0xF847),
-(0xF848),(0xF849),(0xF84A),(0xF84B),(0xF84C),(0xF84D),(0xF84E),(0xF84F),
-(0xF850),(0xF851),(0xF852),(0xF853),(0xF854),(0xF855),(0xF856),(0xF857),
-(0xF858),(0xF859),(0xF85A),(0xF85B),(0xF85C),(0xF85D),(0xF85E),(0xF85F),
-(0xF860),(0xF861),(0xF862),(0xF863),(0xF864),(0xF865),(0xF866),(0xF867),
-(0xF868),(0xF869),(0xF86A),(0xF86B),(0xF86C),(0xF86D),(0xF86E),(0xF86F),
-(0xF870),(0xF871),(0xF872),(0xF873),(0xF874),(0xF875),(0xF876),(0xF877),
-(0xF878),(0xF879),(0xF87A),(0xF87B),(0xF87C),(0xF87D),(0xF87E),
-(0xF880),(0xF881),(0xF882),(0xF883),(0xF884),(0xF885),(0xF886),(0xF887),
-(0xF888),(0xF889),(0xF88A),(0xF88B),(0xF88C),(0xF88D),(0xF88E),(0xF88F),
-(0xF890),(0xF891),(0xF892),(0xF893),(0xF894),(0xF895),(0xF896),(0xF897),
-(0xF898),(0xF899),(0xF89A),(0xF89B),(0xF89C),(0xF89D),(0xF89E),(0xF89F),
-(0xF8A0),(0xF8A1),(0xF8A2),(0xF8A3),(0xF8A4),(0xF8A5),(0xF8A6),(0xF8A7),
-(0xF8A8),(0xF8A9),(0xF8AA),(0xF8AB),(0xF8AC),(0xF8AD),(0xF8AE),(0xF8AF),
-(0xF8B0),(0xF8B1),(0xF8B2),(0xF8B3),(0xF8B4),(0xF8B5),(0xF8B6),(0xF8B7),
-(0xF8B8),(0xF8B9),(0xF8BA),(0xF8BB),(0xF8BC),(0xF8BD),(0xF8BE),(0xF8BF),
-(0xF8C0),(0xF8C1),(0xF8C2),(0xF8C3),(0xF8C4),(0xF8C5),(0xF8C6),(0xF8C7),
-(0xF8C8),(0xF8C9),(0xF8CA),(0xF8CB),(0xF8CC),(0xF8CD),(0xF8CE),(0xF8CF),
-(0xF8D0),(0xF8D1),(0xF8D2),(0xF8D3),(0xF8D4),(0xF8D5),(0xF8D6),(0xF8D7),
-(0xF8D8),(0xF8D9),(0xF8DA),(0xF8DB),(0xF8DC),(0xF8DD),(0xF8DE),(0xF8DF),
-(0xF8E0),(0xF8E1),(0xF8E2),(0xF8E3),(0xF8E4),(0xF8E5),(0xF8E6),(0xF8E7),
-(0xF8E8),(0xF8E9),(0xF8EA),(0xF8EB),(0xF8EC),(0xF8ED),(0xF8EE),(0xF8EF),
-(0xF8F0),(0xF8F1),(0xF8F2),(0xF8F3),(0xF8F4),(0xF8F5),(0xF8F6),(0xF8F7),
-(0xF8F8),(0xF8F9),(0xF8FA),(0xF8FB),(0xF8FC),
-(0xF940),(0xF941),(0xF942),(0xF943),(0xF944),(0xF945),(0xF946),(0xF947),
-(0xF948),(0xF949),(0xF94A),(0xF94B),(0xF94C),(0xF94D),(0xF94E),(0xF94F),
-(0xF950),(0xF951),(0xF952),(0xF953),(0xF954),(0xF955),(0xF956),(0xF957),
-(0xF958),(0xF959),(0xF95A),(0xF95B),(0xF95C),(0xF95D),(0xF95E),(0xF95F),
-(0xF960),(0xF961),(0xF962),(0xF963),(0xF964),(0xF965),(0xF966),(0xF967),
-(0xF968),(0xF969),(0xF96A),(0xF96B),(0xF96C),(0xF96D),(0xF96E),(0xF96F),
-(0xF970),(0xF971),(0xF972),(0xF973),(0xF974),(0xF975),(0xF976),(0xF977),
-(0xF978),(0xF979),(0xF97A),(0xF97B),(0xF97C),(0xF97D),(0xF97E),
-(0xF980),(0xF981),(0xF982),(0xF983),(0xF984),(0xF985),(0xF986),(0xF987),
-(0xF988),(0xF989),(0xF98A),(0xF98B),(0xF98C),(0xF98D),(0xF98E),(0xF98F),
-(0xF990),(0xF991),(0xF992),(0xF993),(0xF994),(0xF995),(0xF996),(0xF997),
-(0xF998),(0xF999),(0xF99A),(0xF99B),(0xF99C),(0xF99D),(0xF99E),(0xF99F),
-(0xF9A0),(0xF9A1),(0xF9A2),(0xF9A3),(0xF9A4),(0xF9A5),(0xF9A6),(0xF9A7),
-(0xF9A8),(0xF9A9),(0xF9AA),(0xF9AB),(0xF9AC),(0xF9AD),(0xF9AE),(0xF9AF),
-(0xF9B0),(0xF9B1),(0xF9B2),(0xF9B3),(0xF9B4),(0xF9B5),(0xF9B6),(0xF9B7),
-(0xF9B8),(0xF9B9),(0xF9BA),(0xF9BB),(0xF9BC),(0xF9BD),(0xF9BE),(0xF9BF),
-(0xF9C0),(0xF9C1),(0xF9C2),(0xF9C3),(0xF9C4),(0xF9C5),(0xF9C6),(0xF9C7),
-(0xF9C8),(0xF9C9),(0xF9CA),(0xF9CB),(0xF9CC),(0xF9CD),(0xF9CE),(0xF9CF),
-(0xF9D0),(0xF9D1),(0xF9D2),(0xF9D3),(0xF9D4),(0xF9D5),(0xF9D6),(0xF9D7),
-(0xF9D8),(0xF9D9),(0xF9DA),(0xF9DB),(0xF9DC),(0xF9DD),(0xF9DE),(0xF9DF),
-(0xF9E0),(0xF9E1),(0xF9E2),(0xF9E3),(0xF9E4),(0xF9E5),(0xF9E6),(0xF9E7),
-(0xF9E8),(0xF9E9),(0xF9EA),(0xF9EB),(0xF9EC),(0xF9ED),(0xF9EE),(0xF9EF),
-(0xF9F0),(0xF9F1),(0xF9F2),(0xF9F3),(0xF9F4),(0xF9F5),(0xF9F6),(0xF9F7),
-(0xF9F8),(0xF9F9),(0xF9FA),(0xF9FB),(0xF9FC);
-SELECT HEX(c1) FROM t1;
-HEX(c1)
-05
-7E
-815C
-815F
-8160
-8161
-817C
-8191
-8192
-81CA
-8740
-8741
-8742
-8743
-8744
-8745
-8746
-8747
-8748
-8749
-874A
-874B
-874C
-874D
-874E
-874F
-8750
-8751
-8752
-8753
-8754
-8755
-8756
-8757
-8758
-8759
-875A
-875B
-875C
-875D
-875F
-8760
-8761
-8762
-8763
-8764
-8765
-8766
-8767
-8768
-8769
-876A
-876B
-876C
-876D
-876E
-876F
-8770
-8771
-8772
-8773
-8774
-8775
-877E
-8780
-8781
-8782
-8783
-8784
-8785
-8786
-8787
-8788
-8789
-878A
-878B
-878C
-878D
-878E
-878F
-8790
-8791
-8792
-8793
-8794
-8795
-8796
-8797
-8798
-8799
-879A
-879B
-879C
-ED40
-ED41
-ED42
-ED43
-ED44
-ED45
-ED46
-ED47
-ED48
-ED49
-ED4A
-ED4B
-ED4C
-ED4D
-ED4E
-ED4F
-ED50
-ED51
-ED52
-ED53
-ED54
-ED55
-ED56
-ED57
-ED58
-ED59
-ED5A
-ED5B
-ED5C
-ED5D
-ED5E
-ED5F
-ED60
-ED61
-ED62
-ED63
-ED64
-ED65
-ED66
-ED67
-ED68
-ED69
-ED6A
-ED6B
-ED6C
-ED6D
-ED6E
-ED6F
-ED70
-ED71
-ED72
-ED73
-ED74
-ED75
-ED76
-ED77
-ED78
-ED79
-ED7A
-ED7B
-ED7C
-ED7D
-ED7E
-ED80
-ED81
-ED82
-ED83
-ED84
-ED85
-ED86
-ED87
-ED88
-ED89
-ED8A
-ED8B
-ED8C
-ED8D
-ED8E
-ED8F
-ED90
-ED91
-ED92
-ED93
-ED94
-ED95
-ED96
-ED97
-ED98
-ED99
-ED9A
-ED9B
-ED9C
-ED9D
-ED9E
-ED9F
-EDA0
-EDA1
-EDA2
-EDA3
-EDA4
-EDA5
-EDA6
-EDA7
-EDA8
-EDA9
-EDAA
-EDAB
-EDAC
-EDAD
-EDAE
-EDAF
-EDB0
-EDB1
-EDB2
-EDB3
-EDB4
-EDB5
-EDB6
-EDB7
-EDB8
-EDB9
-EDBA
-EDBB
-EDBC
-EDBD
-EDBE
-EDBF
-EDC0
-EDC1
-EDC2
-EDC3
-EDC4
-EDC5
-EDC6
-EDC7
-EDC8
-EDC9
-EDCA
-EDCB
-EDCC
-EDCD
-EDCE
-EDCF
-EDD0
-EDD1
-EDD2
-EDD3
-EDD4
-EDD5
-EDD6
-EDD7
-EDD8
-EDD9
-EDDA
-EDDB
-EDDC
-EDDD
-EDDE
-EDDF
-EDE0
-EDE1
-EDE2
-EDE3
-EDE4
-EDE5
-EDE6
-EDE7
-EDE8
-EDE9
-EDEA
-EDEB
-EDEC
-EDED
-EDEE
-EDEF
-EDF0
-EDF1
-EDF2
-EDF3
-EDF4
-EDF5
-EDF6
-EDF7
-EDF8
-EDF9
-EDFA
-EDFB
-EDFC
-EE40
-EE41
-EE42
-EE43
-EE44
-EE45
-EE46
-EE47
-EE48
-EE49
-EE4A
-EE4B
-EE4C
-EE4D
-EE4E
-EE4F
-EE50
-EE51
-EE52
-EE53
-EE54
-EE55
-EE56
-EE57
-EE58
-EE59
-EE5A
-EE5B
-EE5C
-EE5D
-EE5E
-EE5F
-EE60
-EE61
-EE62
-EE63
-EE64
-EE65
-EE66
-EE67
-EE68
-EE69
-EE6A
-EE6B
-EE6C
-EE6D
-EE6E
-EE6F
-EE70
-EE71
-EE72
-EE73
-EE74
-EE75
-EE76
-EE77
-EE78
-EE79
-EE7A
-EE7B
-EE7C
-EE7D
-EE7E
-EE80
-EE81
-EE82
-EE83
-EE84
-EE85
-EE86
-EE87
-EE88
-EE89
-EE8A
-EE8B
-EE8C
-EE8D
-EE8E
-EE8F
-EE90
-EE91
-EE92
-EE93
-EE94
-EE95
-EE96
-EE97
-EE98
-EE99
-EE9A
-EE9B
-EE9C
-EE9D
-EE9E
-EE9F
-EEA0
-EEA1
-EEA2
-EEA3
-EEA4
-EEA5
-EEA6
-EEA7
-EEA8
-EEA9
-EEAA
-EEAB
-EEAC
-EEAD
-EEAE
-EEAF
-EEB0
-EEB1
-EEB2
-EEB3
-EEB4
-EEB5
-EEB6
-EEB7
-EEB8
-EEB9
-EEBA
-EEBB
-EEBC
-EEBD
-EEBE
-EEBF
-EEC0
-EEC1
-EEC2
-EEC3
-EEC4
-EEC5
-EEC6
-EEC7
-EEC8
-EEC9
-EECA
-EECB
-EECC
-EECD
-EECE
-EECF
-EED0
-EED1
-EED2
-EED3
-EED4
-EED5
-EED6
-EED7
-EED8
-EED9
-EEDA
-EEDB
-EEDC
-EEDD
-EEDE
-EEDF
-EEE0
-EEE1
-EEE2
-EEE3
-EEE4
-EEE5
-EEE6
-EEE7
-EEE8
-EEE9
-EEEA
-EEEB
-EEEC
-EEEF
-EEF0
-EEF1
-EEF2
-EEF3
-EEF4
-EEF5
-EEF6
-EEF7
-EEF8
-EEF9
-EEFA
-EEFB
-EEFC
-FA40
-FA41
-FA42
-FA43
-FA44
-FA45
-FA46
-FA47
-FA48
-FA49
-FA4A
-FA4B
-FA4C
-FA4D
-FA4E
-FA4F
-FA50
-FA51
-FA52
-FA53
-FA54
-FA55
-FA56
-FA57
-FA58
-FA59
-FA5A
-FA5B
-FA5C
-FA5D
-FA5E
-FA5F
-FA60
-FA61
-FA62
-FA63
-FA64
-FA65
-FA66
-FA67
-FA68
-FA69
-FA6A
-FA6B
-FA6C
-FA6D
-FA6E
-FA6F
-FA70
-FA71
-FA72
-FA73
-FA74
-FA75
-FA76
-FA77
-FA78
-FA79
-FA7A
-FA7B
-FA7C
-FA7D
-FA7E
-FA80
-FA81
-FA82
-FA83
-FA84
-FA85
-FA86
-FA87
-FA88
-FA89
-FA8A
-FA8B
-FA8C
-FA8D
-FA8E
-FA8F
-FA90
-FA91
-FA92
-FA93
-FA94
-FA95
-FA96
-FA97
-FA98
-FA99
-FA9A
-FA9B
-FA9C
-FA9D
-FA9E
-FA9F
-FAA0
-FAA1
-FAA2
-FAA3
-FAA4
-FAA5
-FAA6
-FAA7
-FAA8
-FAA9
-FAAA
-FAAB
-FAAC
-FAAD
-FAAE
-FAAF
-FAB0
-FAB1
-FAB2
-FAB3
-FAB4
-FAB5
-FAB6
-FAB7
-FAB8
-FAB9
-FABA
-FABB
-FABC
-FABD
-FABE
-FABF
-FAC0
-FAC1
-FAC2
-FAC3
-FAC4
-FAC5
-FAC6
-FAC7
-FAC8
-FAC9
-FACA
-FACB
-FACC
-FACD
-FACE
-FACF
-FAD0
-FAD1
-FAD2
-FAD3
-FAD4
-FAD5
-FAD6
-FAD7
-FAD8
-FAD9
-FADA
-FADB
-FADC
-FADD
-FADE
-FADF
-FAE0
-FAE1
-FAE2
-FAE3
-FAE4
-FAE5
-FAE6
-FAE7
-FAE8
-FAE9
-FAEA
-FAEB
-FAEC
-FAED
-FAEE
-FAEF
-FAF0
-FAF1
-FAF2
-FAF3
-FAF4
-FAF5
-FAF6
-FAF7
-FAF8
-FAF9
-FAFA
-FAFB
-FAFC
-FB40
-FB41
-FB42
-FB43
-FB44
-FB45
-FB46
-FB47
-FB48
-FB49
-FB4A
-FB4B
-FB4C
-FB4D
-FB4E
-FB4F
-FB50
-FB51
-FB52
-FB53
-FB54
-FB55
-FB56
-FB57
-FB58
-FB59
-FB5A
-FB5B
-FB5C
-FB5D
-FB5E
-FB5F
-FB60
-FB61
-FB62
-FB63
-FB64
-FB65
-FB66
-FB67
-FB68
-FB69
-FB6A
-FB6B
-FB6C
-FB6D
-FB6E
-FB6F
-FB70
-FB71
-FB72
-FB73
-FB74
-FB75
-FB76
-FB77
-FB78
-FB79
-FB7A
-FB7B
-FB7C
-FB7D
-FB7E
-FB80
-FB81
-FB82
-FB83
-FB84
-FB85
-FB86
-FB87
-FB88
-FB89
-FB8A
-FB8B
-FB8C
-FB8D
-FB8E
-FB8F
-FB90
-FB91
-FB92
-FB93
-FB94
-FB95
-FB96
-FB97
-FB98
-FB99
-FB9A
-FB9B
-FB9C
-FB9D
-FB9E
-FB9F
-FBA0
-FBA1
-FBA2
-FBA3
-FBA4
-FBA5
-FBA6
-FBA7
-FBA8
-FBA9
-FBAA
-FBAB
-FBAC
-FBAD
-FBAE
-FBAF
-FBB0
-FBB1
-FBB2
-FBB3
-FBB4
-FBB5
-FBB6
-FBB7
-FBB8
-FBB9
-FBBA
-FBBB
-FBBC
-FBBD
-FBBE
-FBBF
-FBC0
-FBC1
-FBC2
-FBC3
-FBC4
-FBC5
-FBC6
-FBC7
-FBC8
-FBC9
-FBCA
-FBCB
-FBCC
-FBCD
-FBCE
-FBCF
-FBD0
-FBD1
-FBD2
-FBD3
-FBD4
-FBD5
-FBD6
-FBD7
-FBD8
-FBD9
-FBDA
-FBDB
-FBDC
-FBDD
-FBDE
-FBDF
-FBE0
-FBE1
-FBE2
-FBE3
-FBE4
-FBE5
-FBE6
-FBE7
-FBE8
-FBE9
-FBEA
-FBEB
-FBEC
-FBED
-FBEE
-FBEF
-FBF0
-FBF1
-FBF2
-FBF3
-FBF4
-FBF5
-FBF6
-FBF7
-FBF8
-FBF9
-FBFA
-FBFB
-FBFC
-FC40
-FC41
-FC42
-FC43
-FC44
-FC45
-FC46
-FC47
-FC48
-FC49
-FC4A
-FC4B
-F040
-F041
-F042
-F043
-F044
-F045
-F046
-F047
-F048
-F049
-F04A
-F04B
-F04C
-F04D
-F04E
-F04F
-F050
-F051
-F052
-F053
-F054
-F055
-F056
-F057
-F058
-F059
-F05A
-F05B
-F05C
-F05D
-F05E
-F05F
-F060
-F061
-F062
-F063
-F064
-F065
-F066
-F067
-F068
-F069
-F06A
-F06B
-F06C
-F06D
-F06E
-F06F
-F070
-F071
-F072
-F073
-F074
-F075
-F076
-F077
-F078
-F079
-F07A
-F07B
-F07C
-F07D
-F07E
-F080
-F081
-F082
-F083
-F084
-F085
-F086
-F087
-F088
-F089
-F08A
-F08B
-F08C
-F08D
-F08E
-F08F
-F090
-F091
-F092
-F093
-F094
-F095
-F096
-F097
-F098
-F099
-F09A
-F09B
-F09C
-F09D
-F09E
-F09F
-F0A0
-F0A1
-F0A2
-F0A3
-F0A4
-F0A5
-F0A6
-F0A7
-F0A8
-F0A9
-F0AA
-F0AB
-F0AC
-F0AD
-F0AE
-F0AF
-F0B0
-F0B1
-F0B2
-F0B3
-F0B4
-F0B5
-F0B6
-F0B7
-F0B8
-F0B9
-F0BA
-F0BB
-F0BC
-F0BD
-F0BE
-F0BF
-F0C0
-F0C1
-F0C2
-F0C3
-F0C4
-F0C5
-F0C6
-F0C7
-F0C8
-F0C9
-F0CA
-F0CB
-F0CC
-F0CD
-F0CE
-F0CF
-F0D0
-F0D1
-F0D2
-F0D3
-F0D4
-F0D5
-F0D6
-F0D7
-F0D8
-F0D9
-F0DA
-F0DB
-F0DC
-F0DD
-F0DE
-F0DF
-F0E0
-F0E1
-F0E2
-F0E3
-F0E4
-F0E5
-F0E6
-F0E7
-F0E8
-F0E9
-F0EA
-F0EB
-F0EC
-F0ED
-F0EE
-F0EF
-F0F0
-F0F1
-F0F2
-F0F3
-F0F4
-F0F5
-F0F6
-F0F7
-F0F8
-F0F9
-F0FA
-F0FB
-F0FC
-F140
-F141
-F142
-F143
-F144
-F145
-F146
-F147
-F148
-F149
-F14A
-F14B
-F14C
-F14D
-F14E
-F14F
-F150
-F151
-F152
-F153
-F154
-F155
-F156
-F157
-F158
-F159
-F15A
-F15B
-F15C
-F15D
-F15E
-F15F
-F160
-F161
-F162
-F163
-F164
-F165
-F166
-F167
-F168
-F169
-F16A
-F16B
-F16C
-F16D
-F16E
-F16F
-F170
-F171
-F172
-F173
-F174
-F175
-F176
-F177
-F178
-F179
-F17A
-F17B
-F17C
-F17D
-F17E
-F180
-F181
-F182
-F183
-F184
-F185
-F186
-F187
-F188
-F189
-F18A
-F18B
-F18C
-F18D
-F18E
-F18F
-F190
-F191
-F192
-F193
-F194
-F195
-F196
-F197
-F198
-F199
-F19A
-F19B
-F19C
-F19D
-F19E
-F19F
-F1A0
-F1A1
-F1A2
-F1A3
-F1A4
-F1A5
-F1A6
-F1A7
-F1A8
-F1A9
-F1AA
-F1AB
-F1AC
-F1AD
-F1AE
-F1AF
-F1B0
-F1B1
-F1B2
-F1B3
-F1B4
-F1B5
-F1B6
-F1B7
-F1B8
-F1B9
-F1BA
-F1BB
-F1BC
-F1BD
-F1BE
-F1BF
-F1C0
-F1C1
-F1C2
-F1C3
-F1C4
-F1C5
-F1C6
-F1C7
-F1C8
-F1C9
-F1CA
-F1CB
-F1CC
-F1CD
-F1CE
-F1CF
-F1D0
-F1D1
-F1D2
-F1D3
-F1D4
-F1D5
-F1D6
-F1D7
-F1D8
-F1D9
-F1DA
-F1DB
-F1DC
-F1DD
-F1DE
-F1DF
-F1E0
-F1E1
-F1E2
-F1E3
-F1E4
-F1E5
-F1E6
-F1E7
-F1E8
-F1E9
-F1EA
-F1EB
-F1EC
-F1ED
-F1EE
-F1EF
-F1F0
-F1F1
-F1F2
-F1F3
-F1F4
-F1F5
-F1F6
-F1F7
-F1F8
-F1F9
-F1FA
-F1FB
-F1FC
-F240
-F241
-F242
-F243
-F244
-F245
-F246
-F247
-F248
-F249
-F24A
-F24B
-F24C
-F24D
-F24E
-F24F
-F250
-F251
-F252
-F253
-F254
-F255
-F256
-F257
-F258
-F259
-F25A
-F25B
-F25C
-F25D
-F25E
-F25F
-F260
-F261
-F262
-F263
-F264
-F265
-F266
-F267
-F268
-F269
-F26A
-F26B
-F26C
-F26D
-F26E
-F26F
-F270
-F271
-F272
-F273
-F274
-F275
-F276
-F277
-F278
-F279
-F27A
-F27B
-F27C
-F27D
-F27E
-F280
-F281
-F282
-F283
-F284
-F285
-F286
-F287
-F288
-F289
-F28A
-F28B
-F28C
-F28D
-F28E
-F28F
-F290
-F291
-F292
-F293
-F294
-F295
-F296
-F297
-F298
-F299
-F29A
-F29B
-F29C
-F29D
-F29E
-F29F
-F2A0
-F2A1
-F2A2
-F2A3
-F2A4
-F2A5
-F2A6
-F2A7
-F2A8
-F2A9
-F2AA
-F2AB
-F2AC
-F2AD
-F2AE
-F2AF
-F2B0
-F2B1
-F2B2
-F2B3
-F2B4
-F2B5
-F2B6
-F2B7
-F2B8
-F2B9
-F2BA
-F2BB
-F2BC
-F2BD
-F2BE
-F2BF
-F2C0
-F2C1
-F2C2
-F2C3
-F2C4
-F2C5
-F2C6
-F2C7
-F2C8
-F2C9
-F2CA
-F2CB
-F2CC
-F2CD
-F2CE
-F2CF
-F2D0
-F2D1
-F2D2
-F2D3
-F2D4
-F2D5
-F2D6
-F2D7
-F2D8
-F2D9
-F2DA
-F2DB
-F2DC
-F2DD
-F2DE
-F2DF
-F2E0
-F2E1
-F2E2
-F2E3
-F2E4
-F2E5
-F2E6
-F2E7
-F2E8
-F2E9
-F2EA
-F2EB
-F2EC
-F2ED
-F2EE
-F2EF
-F2F0
-F2F1
-F2F2
-F2F3
-F2F4
-F2F5
-F2F6
-F2F7
-F2F8
-F2F9
-F2FA
-F2FB
-F2FC
-F340
-F341
-F342
-F343
-F344
-F345
-F346
-F347
-F348
-F349
-F34A
-F34B
-F34C
-F34D
-F34E
-F34F
-F350
-F351
-F352
-F353
-F354
-F355
-F356
-F357
-F358
-F359
-F35A
-F35B
-F35C
-F35D
-F35E
-F35F
-F360
-F361
-F362
-F363
-F364
-F365
-F366
-F367
-F368
-F369
-F36A
-F36B
-F36C
-F36D
-F36E
-F36F
-F370
-F371
-F372
-F373
-F374
-F375
-F376
-F377
-F378
-F379
-F37A
-F37B
-F37C
-F37D
-F37E
-F380
-F381
-F382
-F383
-F384
-F385
-F386
-F387
-F388
-F389
-F38A
-F38B
-F38C
-F38D
-F38E
-F38F
-F390
-F391
-F392
-F393
-F394
-F395
-F396
-F397
-F398
-F399
-F39A
-F39B
-F39C
-F39D
-F39E
-F39F
-F3A0
-F3A1
-F3A2
-F3A3
-F3A4
-F3A5
-F3A6
-F3A7
-F3A8
-F3A9
-F3AA
-F3AB
-F3AC
-F3AD
-F3AE
-F3AF
-F3B0
-F3B1
-F3B2
-F3B3
-F3B4
-F3B5
-F3B6
-F3B7
-F3B8
-F3B9
-F3BA
-F3BB
-F3BC
-F3BD
-F3BE
-F3BF
-F3C0
-F3C1
-F3C2
-F3C3
-F3C4
-F3C5
-F3C6
-F3C7
-F3C8
-F3C9
-F3CA
-F3CB
-F3CC
-F3CD
-F3CE
-F3CF
-F3D0
-F3D1
-F3D2
-F3D3
-F3D4
-F3D5
-F3D6
-F3D7
-F3D8
-F3D9
-F3DA
-F3DB
-F3DC
-F3DD
-F3DE
-F3DF
-F3E0
-F3E1
-F3E2
-F3E3
-F3E4
-F3E5
-F3E6
-F3E7
-F3E8
-F3E9
-F3EA
-F3EB
-F3EC
-F3ED
-F3EE
-F3EF
-F3F0
-F3F1
-F3F2
-F3F3
-F3F4
-F3F5
-F3F6
-F3F7
-F3F8
-F3F9
-F3FA
-F3FB
-F3FC
-F440
-F441
-F442
-F443
-F444
-F445
-F446
-F447
-F448
-F449
-F44A
-F44B
-F44C
-F44D
-F44E
-F44F
-F450
-F451
-F452
-F453
-F454
-F455
-F456
-F457
-F458
-F459
-F45A
-F45B
-F45C
-F45D
-F45E
-F45F
-F460
-F461
-F462
-F463
-F464
-F465
-F466
-F467
-F468
-F469
-F46A
-F46B
-F46C
-F46D
-F46E
-F46F
-F470
-F471
-F472
-F473
-F474
-F475
-F476
-F477
-F478
-F479
-F47A
-F47B
-F47C
-F47D
-F47E
-F480
-F481
-F482
-F483
-F484
-F485
-F486
-F487
-F488
-F489
-F48A
-F48B
-F48C
-F48D
-F48E
-F48F
-F490
-F491
-F492
-F493
-F494
-F495
-F496
-F497
-F498
-F499
-F49A
-F49B
-F49C
-F49D
-F49E
-F49F
-F4A0
-F4A1
-F4A2
-F4A3
-F4A4
-F4A5
-F4A6
-F4A7
-F4A8
-F4A9
-F4AA
-F4AB
-F4AC
-F4AD
-F4AE
-F4AF
-F4B0
-F4B1
-F4B2
-F4B3
-F4B4
-F4B5
-F4B6
-F4B7
-F4B8
-F4B9
-F4BA
-F4BB
-F4BC
-F4BD
-F4BE
-F4BF
-F4C0
-F4C1
-F4C2
-F4C3
-F4C4
-F4C5
-F4C6
-F4C7
-F4C8
-F4C9
-F4CA
-F4CB
-F4CC
-F4CD
-F4CE
-F4CF
-F4D0
-F4D1
-F4D2
-F4D3
-F4D4
-F4D5
-F4D6
-F4D7
-F4D8
-F4D9
-F4DA
-F4DB
-F4DC
-F4DD
-F4DE
-F4DF
-F4E0
-F4E1
-F4E2
-F4E3
-F4E4
-F4E5
-F4E6
-F4E7
-F4E8
-F4E9
-F4EA
-F4EB
-F4EC
-F4ED
-F4EE
-F4EF
-F4F0
-F4F1
-F4F2
-F4F3
-F4F4
-F4F5
-F4F6
-F4F7
-F4F8
-F4F9
-F4FA
-F4FB
-F4FC
-F540
-F541
-F542
-F543
-F544
-F545
-F546
-F547
-F548
-F549
-F54A
-F54B
-F54C
-F54D
-F54E
-F54F
-F550
-F551
-F552
-F553
-F554
-F555
-F556
-F557
-F558
-F559
-F55A
-F55B
-F55C
-F55D
-F55E
-F55F
-F560
-F561
-F562
-F563
-F564
-F565
-F566
-F567
-F568
-F569
-F56A
-F56B
-F56C
-F56D
-F56E
-F56F
-F570
-F571
-F572
-F573
-F574
-F575
-F576
-F577
-F578
-F579
-F57A
-F57B
-F57C
-F57D
-F57E
-F580
-F581
-F582
-F583
-F584
-F585
-F586
-F587
-F588
-F589
-F58A
-F58B
-F58C
-F58D
-F58E
-F58F
-F590
-F591
-F592
-F593
-F594
-F595
-F596
-F597
-F598
-F599
-F59A
-F59B
-F59C
-F59D
-F59E
-F59F
-F5A0
-F5A1
-F5A2
-F5A3
-F5A4
-F5A5
-F5A6
-F5A7
-F5A8
-F5A9
-F5AA
-F5AB
-F5AC
-F5AD
-F5AE
-F5AF
-F5B0
-F5B1
-F5B2
-F5B3
-F5B4
-F5B5
-F5B6
-F5B7
-F5B8
-F5B9
-F5BA
-F5BB
-F5BC
-F5BD
-F5BE
-F5BF
-F5C0
-F5C1
-F5C2
-F5C3
-F5C4
-F5C5
-F5C6
-F5C7
-F5C8
-F5C9
-F5CA
-F5CB
-F5CC
-F5CD
-F5CE
-F5CF
-F5D0
-F5D1
-F5D2
-F5D3
-F5D4
-F5D5
-F5D6
-F5D7
-F5D8
-F5D9
-F5DA
-F5DB
-F5DC
-F5DD
-F5DE
-F5DF
-F5E0
-F5E1
-F5E2
-F5E3
-F5E4
-F5E5
-F5E6
-F5E7
-F5E8
-F5E9
-F5EA
-F5EB
-F5EC
-F5ED
-F5EE
-F5EF
-F5F0
-F5F1
-F5F2
-F5F3
-F5F4
-F5F5
-F5F6
-F5F7
-F5F8
-F5F9
-F5FA
-F5FB
-F5FC
-F640
-F641
-F642
-F643
-F644
-F645
-F646
-F647
-F648
-F649
-F64A
-F64B
-F64C
-F64D
-F64E
-F64F
-F650
-F651
-F652
-F653
-F654
-F655
-F656
-F657
-F658
-F659
-F65A
-F65B
-F65C
-F65D
-F65E
-F65F
-F660
-F661
-F662
-F663
-F664
-F665
-F666
-F667
-F668
-F669
-F66A
-F66B
-F66C
-F66D
-F66E
-F66F
-F670
-F671
-F672
-F673
-F674
-F675
-F676
-F677
-F678
-F679
-F67A
-F67B
-F67C
-F67D
-F67E
-F680
-F681
-F682
-F683
-F684
-F685
-F686
-F687
-F688
-F689
-F68A
-F68B
-F68C
-F68D
-F68E
-F68F
-F690
-F691
-F692
-F693
-F694
-F695
-F696
-F697
-F698
-F699
-F69A
-F69B
-F69C
-F69D
-F69E
-F69F
-F6A0
-F6A1
-F6A2
-F6A3
-F6A4
-F6A5
-F6A6
-F6A7
-F6A8
-F6A9
-F6AA
-F6AB
-F6AC
-F6AD
-F6AE
-F6AF
-F6B0
-F6B1
-F6B2
-F6B3
-F6B4
-F6B5
-F6B6
-F6B7
-F6B8
-F6B9
-F6BA
-F6BB
-F6BC
-F6BD
-F6BE
-F6BF
-F6C0
-F6C1
-F6C2
-F6C3
-F6C4
-F6C5
-F6C6
-F6C7
-F6C8
-F6C9
-F6CA
-F6CB
-F6CC
-F6CD
-F6CE
-F6CF
-F6D0
-F6D1
-F6D2
-F6D3
-F6D4
-F6D5
-F6D6
-F6D7
-F6D8
-F6D9
-F6DA
-F6DB
-F6DC
-F6DD
-F6DE
-F6DF
-F6E0
-F6E1
-F6E2
-F6E3
-F6E4
-F6E5
-F6E6
-F6E7
-F6E8
-F6E9
-F6EA
-F6EB
-F6EC
-F6ED
-F6EE
-F6EF
-F6F0
-F6F1
-F6F2
-F6F3
-F6F4
-F6F5
-F6F6
-F6F7
-F6F8
-F6F9
-F6FA
-F6FB
-F6FC
-F740
-F741
-F742
-F743
-F744
-F745
-F746
-F747
-F748
-F749
-F74A
-F74B
-F74C
-F74D
-F74E
-F74F
-F750
-F751
-F752
-F753
-F754
-F755
-F756
-F757
-F758
-F759
-F75A
-F75B
-F75C
-F75D
-F75E
-F75F
-F760
-F761
-F762
-F763
-F764
-F765
-F766
-F767
-F768
-F769
-F76A
-F76B
-F76C
-F76D
-F76E
-F76F
-F770
-F771
-F772
-F773
-F774
-F775
-F776
-F777
-F778
-F779
-F77A
-F77B
-F77C
-F77D
-F77E
-F780
-F781
-F782
-F783
-F784
-F785
-F786
-F787
-F788
-F789
-F78A
-F78B
-F78C
-F78D
-F78E
-F78F
-F790
-F791
-F792
-F793
-F794
-F795
-F796
-F797
-F798
-F799
-F79A
-F79B
-F79C
-F79D
-F79E
-F79F
-F7A0
-F7A1
-F7A2
-F7A3
-F7A4
-F7A5
-F7A6
-F7A7
-F7A8
-F7A9
-F7AA
-F7AB
-F7AC
-F7AD
-F7AE
-F7AF
-F7B0
-F7B1
-F7B2
-F7B3
-F7B4
-F7B5
-F7B6
-F7B7
-F7B8
-F7B9
-F7BA
-F7BB
-F7BC
-F7BD
-F7BE
-F7BF
-F7C0
-F7C1
-F7C2
-F7C3
-F7C4
-F7C5
-F7C6
-F7C7
-F7C8
-F7C9
-F7CA
-F7CB
-F7CC
-F7CD
-F7CE
-F7CF
-F7D0
-F7D1
-F7D2
-F7D3
-F7D4
-F7D5
-F7D6
-F7D7
-F7D8
-F7D9
-F7DA
-F7DB
-F7DC
-F7DD
-F7DE
-F7DF
-F7E0
-F7E1
-F7E2
-F7E3
-F7E4
-F7E5
-F7E6
-F7E7
-F7E8
-F7E9
-F7EA
-F7EB
-F7EC
-F7ED
-F7EE
-F7EF
-F7F0
-F7F1
-F7F2
-F7F3
-F7F4
-F7F5
-F7F6
-F7F7
-F7F8
-F7F9
-F7FA
-F7FB
-F7FC
-F840
-F841
-F842
-F843
-F844
-F845
-F846
-F847
-F848
-F849
-F84A
-F84B
-F84C
-F84D
-F84E
-F84F
-F850
-F851
-F852
-F853
-F854
-F855
-F856
-F857
-F858
-F859
-F85A
-F85B
-F85C
-F85D
-F85E
-F85F
-F860
-F861
-F862
-F863
-F864
-F865
-F866
-F867
-F868
-F869
-F86A
-F86B
-F86C
-F86D
-F86E
-F86F
-F870
-F871
-F872
-F873
-F874
-F875
-F876
-F877
-F878
-F879
-F87A
-F87B
-F87C
-F87D
-F87E
-F880
-F881
-F882
-F883
-F884
-F885
-F886
-F887
-F888
-F889
-F88A
-F88B
-F88C
-F88D
-F88E
-F88F
-F890
-F891
-F892
-F893
-F894
-F895
-F896
-F897
-F898
-F899
-F89A
-F89B
-F89C
-F89D
-F89E
-F89F
-F8A0
-F8A1
-F8A2
-F8A3
-F8A4
-F8A5
-F8A6
-F8A7
-F8A8
-F8A9
-F8AA
-F8AB
-F8AC
-F8AD
-F8AE
-F8AF
-F8B0
-F8B1
-F8B2
-F8B3
-F8B4
-F8B5
-F8B6
-F8B7
-F8B8
-F8B9
-F8BA
-F8BB
-F8BC
-F8BD
-F8BE
-F8BF
-F8C0
-F8C1
-F8C2
-F8C3
-F8C4
-F8C5
-F8C6
-F8C7
-F8C8
-F8C9
-F8CA
-F8CB
-F8CC
-F8CD
-F8CE
-F8CF
-F8D0
-F8D1
-F8D2
-F8D3
-F8D4
-F8D5
-F8D6
-F8D7
-F8D8
-F8D9
-F8DA
-F8DB
-F8DC
-F8DD
-F8DE
-F8DF
-F8E0
-F8E1
-F8E2
-F8E3
-F8E4
-F8E5
-F8E6
-F8E7
-F8E8
-F8E9
-F8EA
-F8EB
-F8EC
-F8ED
-F8EE
-F8EF
-F8F0
-F8F1
-F8F2
-F8F3
-F8F4
-F8F5
-F8F6
-F8F7
-F8F8
-F8F9
-F8FA
-F8FB
-F8FC
-F940
-F941
-F942
-F943
-F944
-F945
-F946
-F947
-F948
-F949
-F94A
-F94B
-F94C
-F94D
-F94E
-F94F
-F950
-F951
-F952
-F953
-F954
-F955
-F956
-F957
-F958
-F959
-F95A
-F95B
-F95C
-F95D
-F95E
-F95F
-F960
-F961
-F962
-F963
-F964
-F965
-F966
-F967
-F968
-F969
-F96A
-F96B
-F96C
-F96D
-F96E
-F96F
-F970
-F971
-F972
-F973
-F974
-F975
-F976
-F977
-F978
-F979
-F97A
-F97B
-F97C
-F97D
-F97E
-F980
-F981
-F982
-F983
-F984
-F985
-F986
-F987
-F988
-F989
-F98A
-F98B
-F98C
-F98D
-F98E
-F98F
-F990
-F991
-F992
-F993
-F994
-F995
-F996
-F997
-F998
-F999
-F99A
-F99B
-F99C
-F99D
-F99E
-F99F
-F9A0
-F9A1
-F9A2
-F9A3
-F9A4
-F9A5
-F9A6
-F9A7
-F9A8
-F9A9
-F9AA
-F9AB
-F9AC
-F9AD
-F9AE
-F9AF
-F9B0
-F9B1
-F9B2
-F9B3
-F9B4
-F9B5
-F9B6
-F9B7
-F9B8
-F9B9
-F9BA
-F9BB
-F9BC
-F9BD
-F9BE
-F9BF
-F9C0
-F9C1
-F9C2
-F9C3
-F9C4
-F9C5
-F9C6
-F9C7
-F9C8
-F9C9
-F9CA
-F9CB
-F9CC
-F9CD
-F9CE
-F9CF
-F9D0
-F9D1
-F9D2
-F9D3
-F9D4
-F9D5
-F9D6
-F9D7
-F9D8
-F9D9
-F9DA
-F9DB
-F9DC
-F9DD
-F9DE
-F9DF
-F9E0
-F9E1
-F9E2
-F9E3
-F9E4
-F9E5
-F9E6
-F9E7
-F9E8
-F9E9
-F9EA
-F9EB
-F9EC
-F9ED
-F9EE
-F9EF
-F9F0
-F9F1
-F9F2
-F9F3
-F9F4
-F9F5
-F9F6
-F9F7
-F9F8
-F9F9
-F9FA
-F9FB
-F9FC
-CREATE TABLE t2 SELECT CONVERT(c1 USING ucs2) AS c1 FROM t1;
-SELECT HEX(c1) FROM t2;
-HEX(c1)
-0005
-007E
-2015
-FF3C
-FF5E
-2225
-FF0D
-FFE0
-FFE1
-FFE2
-2460
-2461
-2462
-2463
-2464
-2465
-2466
-2467
-2468
-2469
-246A
-246B
-246C
-246D
-246E
-246F
-2470
-2471
-2472
-2473
-2160
-2161
-2162
-2163
-2164
-2165
-2166
-2167
-2168
-2169
-3349
-3314
-3322
-334D
-3318
-3327
-3303
-3336
-3351
-3357
-330D
-3326
-3323
-332B
-334A
-333B
-339C
-339D
-339E
-338E
-338F
-33C4
-33A1
-337B
-301D
-301F
-2116
-33CD
-2121
-32A4
-32A5
-32A6
-32A7
-32A8
-3231
-3232
-3239
-337E
-337D
-337C
-2252
-2261
-222B
-222E
-2211
-221A
-22A5
-2220
-221F
-22BF
-2235
-2229
-222A
-7E8A
-891C
-9348
-9288
-84DC
-4FC9
-70BB
-6631
-68C8
-92F9
-66FB
-5F45
-4E28
-4EE1
-4EFC
-4F00
-4F03
-4F39
-4F56
-4F92
-4F8A
-4F9A
-4F94
-4FCD
-5040
-5022
-4FFF
-501E
-5046
-5070
-5042
-5094
-50F4
-50D8
-514A
-5164
-519D
-51BE
-51EC
-5215
-529C
-52A6
-52C0
-52DB
-5300
-5307
-5324
-5372
-5393
-53B2
-53DD
-FA0E
-549C
-548A
-54A9
-54FF
-5586
-5759
-5765
-57AC
-57C8
-57C7
-FA0F
-FA10
-589E
-58B2
-590B
-5953
-595B
-595D
-5963
-59A4
-59BA
-5B56
-5BC0
-752F
-5BD8
-5BEC
-5C1E
-5CA6
-5CBA
-5CF5
-5D27
-5D53
-FA11
-5D42
-5D6D
-5DB8
-5DB9
-5DD0
-5F21
-5F34
-5F67
-5FB7
-5FDE
-605D
-6085
-608A
-60DE
-60D5
-6120
-60F2
-6111
-6137
-6130
-6198
-6213
-62A6
-63F5
-6460
-649D
-64CE
-654E
-6600
-6615
-663B
-6609
-662E
-661E
-6624
-6665
-6657
-6659
-FA12
-6673
-6699
-66A0
-66B2
-66BF
-66FA
-670E
-F929
-6766
-67BB
-6852
-67C0
-6801
-6844
-68CF
-FA13
-6968
-FA14
-6998
-69E2
-6A30
-6A6B
-6A46
-6A73
-6A7E
-6AE2
-6AE4
-6BD6
-6C3F
-6C5C
-6C86
-6C6F
-6CDA
-6D04
-6D87
-6D6F
-6D96
-6DAC
-6DCF
-6DF8
-6DF2
-6DFC
-6E39
-6E5C
-6E27
-6E3C
-6EBF
-6F88
-6FB5
-6FF5
-7005
-7007
-7028
-7085
-70AB
-710F
-7104
-715C
-7146
-7147
-FA15
-71C1
-71FE
-72B1
-72BE
-7324
-FA16
-7377
-73BD
-73C9
-73D6
-73E3
-73D2
-7407
-73F5
-7426
-742A
-7429
-742E
-7462
-7489
-749F
-7501
-756F
-7682
-769C
-769E
-769B
-76A6
-FA17
-7746
-52AF
-7821
-784E
-7864
-787A
-7930
-FA18
-FA19
-FA1A
-7994
-FA1B
-799B
-7AD1
-7AE7
-FA1C
-7AEB
-7B9E
-FA1D
-7D48
-7D5C
-7DB7
-7DA0
-7DD6
-7E52
-7F47
-7FA1
-FA1E
-8301
-8362
-837F
-83C7
-83F6
-8448
-84B4
-8553
-8559
-856B
-FA1F
-85B0
-FA20
-FA21
-8807
-88F5
-8A12
-8A37
-8A79
-8AA7
-8ABE
-8ADF
-FA22
-8AF6
-8B53
-8B7F
-8CF0
-8CF4
-8D12
-8D76
-FA23
-8ECF
-FA24
-FA25
-9067
-90DE
-FA26
-9115
-9127
-91DA
-91D7
-91DE
-91ED
-91EE
-91E4
-91E5
-9206
-9210
-920A
-923A
-9240
-923C
-924E
-9259
-9251
-9239
-9267
-92A7
-9277
-9278
-92E7
-92D7
-92D9
-92D0
-FA27
-92D5
-92E0
-92D3
-9325
-9321
-92FB
-FA28
-931E
-92FF
-931D
-9302
-9370
-9357
-93A4
-93C6
-93DE
-93F8
-9431
-9445
-9448
-9592
-F9DC
-FA29
-969D
-96AF
-9733
-973B
-9743
-974D
-974F
-9751
-9755
-9857
-9865
-FA2A
-FA2B
-9927
-FA2C
-999E
-9A4E
-9AD9
-9ADC
-9B75
-9B72
-9B8F
-9BB1
-9BBB
-9C00
-9D70
-9D6B
-FA2D
-9E19
-9ED1
-2170
-2171
-2172
-2173
-2174
-2175
-2176
-2177
-2178
-2179
-FFE2
-FFE4
-FF07
-FF02
-2170
-2171
-2172
-2173
-2174
-2175
-2176
-2177
-2178
-2179
-2160
-2161
-2162
-2163
-2164
-2165
-2166
-2167
-2168
-2169
-FFE2
-FFE4
-FF07
-FF02
-3231
-2116
-2121
-2235
-7E8A
-891C
-9348
-9288
-84DC
-4FC9
-70BB
-6631
-68C8
-92F9
-66FB
-5F45
-4E28
-4EE1
-4EFC
-4F00
-4F03
-4F39
-4F56
-4F92
-4F8A
-4F9A
-4F94
-4FCD
-5040
-5022
-4FFF
-501E
-5046
-5070
-5042
-5094
-50F4
-50D8
-514A
-5164
-519D
-51BE
-51EC
-5215
-529C
-52A6
-52C0
-52DB
-5300
-5307
-5324
-5372
-5393
-53B2
-53DD
-FA0E
-549C
-548A
-54A9
-54FF
-5586
-5759
-5765
-57AC
-57C8
-57C7
-FA0F
-FA10
-589E
-58B2
-590B
-5953
-595B
-595D
-5963
-59A4
-59BA
-5B56
-5BC0
-752F
-5BD8
-5BEC
-5C1E
-5CA6
-5CBA
-5CF5
-5D27
-5D53
-FA11
-5D42
-5D6D
-5DB8
-5DB9
-5DD0
-5F21
-5F34
-5F67
-5FB7
-5FDE
-605D
-6085
-608A
-60DE
-60D5
-6120
-60F2
-6111
-6137
-6130
-6198
-6213
-62A6
-63F5
-6460
-649D
-64CE
-654E
-6600
-6615
-663B
-6609
-662E
-661E
-6624
-6665
-6657
-6659
-FA12
-6673
-6699
-66A0
-66B2
-66BF
-66FA
-670E
-F929
-6766
-67BB
-6852
-67C0
-6801
-6844
-68CF
-FA13
-6968
-FA14
-6998
-69E2
-6A30
-6A6B
-6A46
-6A73
-6A7E
-6AE2
-6AE4
-6BD6
-6C3F
-6C5C
-6C86
-6C6F
-6CDA
-6D04
-6D87
-6D6F
-6D96
-6DAC
-6DCF
-6DF8
-6DF2
-6DFC
-6E39
-6E5C
-6E27
-6E3C
-6EBF
-6F88
-6FB5
-6FF5
-7005
-7007
-7028
-7085
-70AB
-710F
-7104
-715C
-7146
-7147
-FA15
-71C1
-71FE
-72B1
-72BE
-7324
-FA16
-7377
-73BD
-73C9
-73D6
-73E3
-73D2
-7407
-73F5
-7426
-742A
-7429
-742E
-7462
-7489
-749F
-7501
-756F
-7682
-769C
-769E
-769B
-76A6
-FA17
-7746
-52AF
-7821
-784E
-7864
-787A
-7930
-FA18
-FA19
-FA1A
-7994
-FA1B
-799B
-7AD1
-7AE7
-FA1C
-7AEB
-7B9E
-FA1D
-7D48
-7D5C
-7DB7
-7DA0
-7DD6
-7E52
-7F47
-7FA1
-FA1E
-8301
-8362
-837F
-83C7
-83F6
-8448
-84B4
-8553
-8559
-856B
-FA1F
-85B0
-FA20
-FA21
-8807
-88F5
-8A12
-8A37
-8A79
-8AA7
-8ABE
-8ADF
-FA22
-8AF6
-8B53
-8B7F
-8CF0
-8CF4
-8D12
-8D76
-FA23
-8ECF
-FA24
-FA25
-9067
-90DE
-FA26
-9115
-9127
-91DA
-91D7
-91DE
-91ED
-91EE
-91E4
-91E5
-9206
-9210
-920A
-923A
-9240
-923C
-924E
-9259
-9251
-9239
-9267
-92A7
-9277
-9278
-92E7
-92D7
-92D9
-92D0
-FA27
-92D5
-92E0
-92D3
-9325
-9321
-92FB
-FA28
-931E
-92FF
-931D
-9302
-9370
-9357
-93A4
-93C6
-93DE
-93F8
-9431
-9445
-9448
-9592
-F9DC
-FA29
-969D
-96AF
-9733
-973B
-9743
-974D
-974F
-9751
-9755
-9857
-9865
-FA2A
-FA2B
-9927
-FA2C
-999E
-9A4E
-9AD9
-9ADC
-9B75
-9B72
-9B8F
-9BB1
-9BBB
-9C00
-9D70
-9D6B
-FA2D
-9E19
-9ED1
-E000
-E001
-E002
-E003
-E004
-E005
-E006
-E007
-E008
-E009
-E00A
-E00B
-E00C
-E00D
-E00E
-E00F
-E010
-E011
-E012
-E013
-E014
-E015
-E016
-E017
-E018
-E019
-E01A
-E01B
-E01C
-E01D
-E01E
-E01F
-E020
-E021
-E022
-E023
-E024
-E025
-E026
-E027
-E028
-E029
-E02A
-E02B
-E02C
-E02D
-E02E
-E02F
-E030
-E031
-E032
-E033
-E034
-E035
-E036
-E037
-E038
-E039
-E03A
-E03B
-E03C
-E03D
-E03E
-E03F
-E040
-E041
-E042
-E043
-E044
-E045
-E046
-E047
-E048
-E049
-E04A
-E04B
-E04C
-E04D
-E04E
-E04F
-E050
-E051
-E052
-E053
-E054
-E055
-E056
-E057
-E058
-E059
-E05A
-E05B
-E05C
-E05D
-E05E
-E05F
-E060
-E061
-E062
-E063
-E064
-E065
-E066
-E067
-E068
-E069
-E06A
-E06B
-E06C
-E06D
-E06E
-E06F
-E070
-E071
-E072
-E073
-E074
-E075
-E076
-E077
-E078
-E079
-E07A
-E07B
-E07C
-E07D
-E07E
-E07F
-E080
-E081
-E082
-E083
-E084
-E085
-E086
-E087
-E088
-E089
-E08A
-E08B
-E08C
-E08D
-E08E
-E08F
-E090
-E091
-E092
-E093
-E094
-E095
-E096
-E097
-E098
-E099
-E09A
-E09B
-E09C
-E09D
-E09E
-E09F
-E0A0
-E0A1
-E0A2
-E0A3
-E0A4
-E0A5
-E0A6
-E0A7
-E0A8
-E0A9
-E0AA
-E0AB
-E0AC
-E0AD
-E0AE
-E0AF
-E0B0
-E0B1
-E0B2
-E0B3
-E0B4
-E0B5
-E0B6
-E0B7
-E0B8
-E0B9
-E0BA
-E0BB
-E0BC
-E0BD
-E0BE
-E0BF
-E0C0
-E0C1
-E0C2
-E0C3
-E0C4
-E0C5
-E0C6
-E0C7
-E0C8
-E0C9
-E0CA
-E0CB
-E0CC
-E0CD
-E0CE
-E0CF
-E0D0
-E0D1
-E0D2
-E0D3
-E0D4
-E0D5
-E0D6
-E0D7
-E0D8
-E0D9
-E0DA
-E0DB
-E0DC
-E0DD
-E0DE
-E0DF
-E0E0
-E0E1
-E0E2
-E0E3
-E0E4
-E0E5
-E0E6
-E0E7
-E0E8
-E0E9
-E0EA
-E0EB
-E0EC
-E0ED
-E0EE
-E0EF
-E0F0
-E0F1
-E0F2
-E0F3
-E0F4
-E0F5
-E0F6
-E0F7
-E0F8
-E0F9
-E0FA
-E0FB
-E0FC
-E0FD
-E0FE
-E0FF
-E100
-E101
-E102
-E103
-E104
-E105
-E106
-E107
-E108
-E109
-E10A
-E10B
-E10C
-E10D
-E10E
-E10F
-E110
-E111
-E112
-E113
-E114
-E115
-E116
-E117
-E118
-E119
-E11A
-E11B
-E11C
-E11D
-E11E
-E11F
-E120
-E121
-E122
-E123
-E124
-E125
-E126
-E127
-E128
-E129
-E12A
-E12B
-E12C
-E12D
-E12E
-E12F
-E130
-E131
-E132
-E133
-E134
-E135
-E136
-E137
-E138
-E139
-E13A
-E13B
-E13C
-E13D
-E13E
-E13F
-E140
-E141
-E142
-E143
-E144
-E145
-E146
-E147
-E148
-E149
-E14A
-E14B
-E14C
-E14D
-E14E
-E14F
-E150
-E151
-E152
-E153
-E154
-E155
-E156
-E157
-E158
-E159
-E15A
-E15B
-E15C
-E15D
-E15E
-E15F
-E160
-E161
-E162
-E163
-E164
-E165
-E166
-E167
-E168
-E169
-E16A
-E16B
-E16C
-E16D
-E16E
-E16F
-E170
-E171
-E172
-E173
-E174
-E175
-E176
-E177
-E178
-E179
-E17A
-E17B
-E17C
-E17D
-E17E
-E17F
-E180
-E181
-E182
-E183
-E184
-E185
-E186
-E187
-E188
-E189
-E18A
-E18B
-E18C
-E18D
-E18E
-E18F
-E190
-E191
-E192
-E193
-E194
-E195
-E196
-E197
-E198
-E199
-E19A
-E19B
-E19C
-E19D
-E19E
-E19F
-E1A0
-E1A1
-E1A2
-E1A3
-E1A4
-E1A5
-E1A6
-E1A7
-E1A8
-E1A9
-E1AA
-E1AB
-E1AC
-E1AD
-E1AE
-E1AF
-E1B0
-E1B1
-E1B2
-E1B3
-E1B4
-E1B5
-E1B6
-E1B7
-E1B8
-E1B9
-E1BA
-E1BB
-E1BC
-E1BD
-E1BE
-E1BF
-E1C0
-E1C1
-E1C2
-E1C3
-E1C4
-E1C5
-E1C6
-E1C7
-E1C8
-E1C9
-E1CA
-E1CB
-E1CC
-E1CD
-E1CE
-E1CF
-E1D0
-E1D1
-E1D2
-E1D3
-E1D4
-E1D5
-E1D6
-E1D7
-E1D8
-E1D9
-E1DA
-E1DB
-E1DC
-E1DD
-E1DE
-E1DF
-E1E0
-E1E1
-E1E2
-E1E3
-E1E4
-E1E5
-E1E6
-E1E7
-E1E8
-E1E9
-E1EA
-E1EB
-E1EC
-E1ED
-E1EE
-E1EF
-E1F0
-E1F1
-E1F2
-E1F3
-E1F4
-E1F5
-E1F6
-E1F7
-E1F8
-E1F9
-E1FA
-E1FB
-E1FC
-E1FD
-E1FE
-E1FF
-E200
-E201
-E202
-E203
-E204
-E205
-E206
-E207
-E208
-E209
-E20A
-E20B
-E20C
-E20D
-E20E
-E20F
-E210
-E211
-E212
-E213
-E214
-E215
-E216
-E217
-E218
-E219
-E21A
-E21B
-E21C
-E21D
-E21E
-E21F
-E220
-E221
-E222
-E223
-E224
-E225
-E226
-E227
-E228
-E229
-E22A
-E22B
-E22C
-E22D
-E22E
-E22F
-E230
-E231
-E232
-E233
-E234
-E235
-E236
-E237
-E238
-E239
-E23A
-E23B
-E23C
-E23D
-E23E
-E23F
-E240
-E241
-E242
-E243
-E244
-E245
-E246
-E247
-E248
-E249
-E24A
-E24B
-E24C
-E24D
-E24E
-E24F
-E250
-E251
-E252
-E253
-E254
-E255
-E256
-E257
-E258
-E259
-E25A
-E25B
-E25C
-E25D
-E25E
-E25F
-E260
-E261
-E262
-E263
-E264
-E265
-E266
-E267
-E268
-E269
-E26A
-E26B
-E26C
-E26D
-E26E
-E26F
-E270
-E271
-E272
-E273
-E274
-E275
-E276
-E277
-E278
-E279
-E27A
-E27B
-E27C
-E27D
-E27E
-E27F
-E280
-E281
-E282
-E283
-E284
-E285
-E286
-E287
-E288
-E289
-E28A
-E28B
-E28C
-E28D
-E28E
-E28F
-E290
-E291
-E292
-E293
-E294
-E295
-E296
-E297
-E298
-E299
-E29A
-E29B
-E29C
-E29D
-E29E
-E29F
-E2A0
-E2A1
-E2A2
-E2A3
-E2A4
-E2A5
-E2A6
-E2A7
-E2A8
-E2A9
-E2AA
-E2AB
-E2AC
-E2AD
-E2AE
-E2AF
-E2B0
-E2B1
-E2B2
-E2B3
-E2B4
-E2B5
-E2B6
-E2B7
-E2B8
-E2B9
-E2BA
-E2BB
-E2BC
-E2BD
-E2BE
-E2BF
-E2C0
-E2C1
-E2C2
-E2C3
-E2C4
-E2C5
-E2C6
-E2C7
-E2C8
-E2C9
-E2CA
-E2CB
-E2CC
-E2CD
-E2CE
-E2CF
-E2D0
-E2D1
-E2D2
-E2D3
-E2D4
-E2D5
-E2D6
-E2D7
-E2D8
-E2D9
-E2DA
-E2DB
-E2DC
-E2DD
-E2DE
-E2DF
-E2E0
-E2E1
-E2E2
-E2E3
-E2E4
-E2E5
-E2E6
-E2E7
-E2E8
-E2E9
-E2EA
-E2EB
-E2EC
-E2ED
-E2EE
-E2EF
-E2F0
-E2F1
-E2F2
-E2F3
-E2F4
-E2F5
-E2F6
-E2F7
-E2F8
-E2F9
-E2FA
-E2FB
-E2FC
-E2FD
-E2FE
-E2FF
-E300
-E301
-E302
-E303
-E304
-E305
-E306
-E307
-E308
-E309
-E30A
-E30B
-E30C
-E30D
-E30E
-E30F
-E310
-E311
-E312
-E313
-E314
-E315
-E316
-E317
-E318
-E319
-E31A
-E31B
-E31C
-E31D
-E31E
-E31F
-E320
-E321
-E322
-E323
-E324
-E325
-E326
-E327
-E328
-E329
-E32A
-E32B
-E32C
-E32D
-E32E
-E32F
-E330
-E331
-E332
-E333
-E334
-E335
-E336
-E337
-E338
-E339
-E33A
-E33B
-E33C
-E33D
-E33E
-E33F
-E340
-E341
-E342
-E343
-E344
-E345
-E346
-E347
-E348
-E349
-E34A
-E34B
-E34C
-E34D
-E34E
-E34F
-E350
-E351
-E352
-E353
-E354
-E355
-E356
-E357
-E358
-E359
-E35A
-E35B
-E35C
-E35D
-E35E
-E35F
-E360
-E361
-E362
-E363
-E364
-E365
-E366
-E367
-E368
-E369
-E36A
-E36B
-E36C
-E36D
-E36E
-E36F
-E370
-E371
-E372
-E373
-E374
-E375
-E376
-E377
-E378
-E379
-E37A
-E37B
-E37C
-E37D
-E37E
-E37F
-E380
-E381
-E382
-E383
-E384
-E385
-E386
-E387
-E388
-E389
-E38A
-E38B
-E38C
-E38D
-E38E
-E38F
-E390
-E391
-E392
-E393
-E394
-E395
-E396
-E397
-E398
-E399
-E39A
-E39B
-E39C
-E39D
-E39E
-E39F
-E3A0
-E3A1
-E3A2
-E3A3
-E3A4
-E3A5
-E3A6
-E3A7
-E3A8
-E3A9
-E3AA
-E3AB
-E3AC
-E3AD
-E3AE
-E3AF
-E3B0
-E3B1
-E3B2
-E3B3
-E3B4
-E3B5
-E3B6
-E3B7
-E3B8
-E3B9
-E3BA
-E3BB
-E3BC
-E3BD
-E3BE
-E3BF
-E3C0
-E3C1
-E3C2
-E3C3
-E3C4
-E3C5
-E3C6
-E3C7
-E3C8
-E3C9
-E3CA
-E3CB
-E3CC
-E3CD
-E3CE
-E3CF
-E3D0
-E3D1
-E3D2
-E3D3
-E3D4
-E3D5
-E3D6
-E3D7
-E3D8
-E3D9
-E3DA
-E3DB
-E3DC
-E3DD
-E3DE
-E3DF
-E3E0
-E3E1
-E3E2
-E3E3
-E3E4
-E3E5
-E3E6
-E3E7
-E3E8
-E3E9
-E3EA
-E3EB
-E3EC
-E3ED
-E3EE
-E3EF
-E3F0
-E3F1
-E3F2
-E3F3
-E3F4
-E3F5
-E3F6
-E3F7
-E3F8
-E3F9
-E3FA
-E3FB
-E3FC
-E3FD
-E3FE
-E3FF
-E400
-E401
-E402
-E403
-E404
-E405
-E406
-E407
-E408
-E409
-E40A
-E40B
-E40C
-E40D
-E40E
-E40F
-E410
-E411
-E412
-E413
-E414
-E415
-E416
-E417
-E418
-E419
-E41A
-E41B
-E41C
-E41D
-E41E
-E41F
-E420
-E421
-E422
-E423
-E424
-E425
-E426
-E427
-E428
-E429
-E42A
-E42B
-E42C
-E42D
-E42E
-E42F
-E430
-E431
-E432
-E433
-E434
-E435
-E436
-E437
-E438
-E439
-E43A
-E43B
-E43C
-E43D
-E43E
-E43F
-E440
-E441
-E442
-E443
-E444
-E445
-E446
-E447
-E448
-E449
-E44A
-E44B
-E44C
-E44D
-E44E
-E44F
-E450
-E451
-E452
-E453
-E454
-E455
-E456
-E457
-E458
-E459
-E45A
-E45B
-E45C
-E45D
-E45E
-E45F
-E460
-E461
-E462
-E463
-E464
-E465
-E466
-E467
-E468
-E469
-E46A
-E46B
-E46C
-E46D
-E46E
-E46F
-E470
-E471
-E472
-E473
-E474
-E475
-E476
-E477
-E478
-E479
-E47A
-E47B
-E47C
-E47D
-E47E
-E47F
-E480
-E481
-E482
-E483
-E484
-E485
-E486
-E487
-E488
-E489
-E48A
-E48B
-E48C
-E48D
-E48E
-E48F
-E490
-E491
-E492
-E493
-E494
-E495
-E496
-E497
-E498
-E499
-E49A
-E49B
-E49C
-E49D
-E49E
-E49F
-E4A0
-E4A1
-E4A2
-E4A3
-E4A4
-E4A5
-E4A6
-E4A7
-E4A8
-E4A9
-E4AA
-E4AB
-E4AC
-E4AD
-E4AE
-E4AF
-E4B0
-E4B1
-E4B2
-E4B3
-E4B4
-E4B5
-E4B6
-E4B7
-E4B8
-E4B9
-E4BA
-E4BB
-E4BC
-E4BD
-E4BE
-E4BF
-E4C0
-E4C1
-E4C2
-E4C3
-E4C4
-E4C5
-E4C6
-E4C7
-E4C8
-E4C9
-E4CA
-E4CB
-E4CC
-E4CD
-E4CE
-E4CF
-E4D0
-E4D1
-E4D2
-E4D3
-E4D4
-E4D5
-E4D6
-E4D7
-E4D8
-E4D9
-E4DA
-E4DB
-E4DC
-E4DD
-E4DE
-E4DF
-E4E0
-E4E1
-E4E2
-E4E3
-E4E4
-E4E5
-E4E6
-E4E7
-E4E8
-E4E9
-E4EA
-E4EB
-E4EC
-E4ED
-E4EE
-E4EF
-E4F0
-E4F1
-E4F2
-E4F3
-E4F4
-E4F5
-E4F6
-E4F7
-E4F8
-E4F9
-E4FA
-E4FB
-E4FC
-E4FD
-E4FE
-E4FF
-E500
-E501
-E502
-E503
-E504
-E505
-E506
-E507
-E508
-E509
-E50A
-E50B
-E50C
-E50D
-E50E
-E50F
-E510
-E511
-E512
-E513
-E514
-E515
-E516
-E517
-E518
-E519
-E51A
-E51B
-E51C
-E51D
-E51E
-E51F
-E520
-E521
-E522
-E523
-E524
-E525
-E526
-E527
-E528
-E529
-E52A
-E52B
-E52C
-E52D
-E52E
-E52F
-E530
-E531
-E532
-E533
-E534
-E535
-E536
-E537
-E538
-E539
-E53A
-E53B
-E53C
-E53D
-E53E
-E53F
-E540
-E541
-E542
-E543
-E544
-E545
-E546
-E547
-E548
-E549
-E54A
-E54B
-E54C
-E54D
-E54E
-E54F
-E550
-E551
-E552
-E553
-E554
-E555
-E556
-E557
-E558
-E559
-E55A
-E55B
-E55C
-E55D
-E55E
-E55F
-E560
-E561
-E562
-E563
-E564
-E565
-E566
-E567
-E568
-E569
-E56A
-E56B
-E56C
-E56D
-E56E
-E56F
-E570
-E571
-E572
-E573
-E574
-E575
-E576
-E577
-E578
-E579
-E57A
-E57B
-E57C
-E57D
-E57E
-E57F
-E580
-E581
-E582
-E583
-E584
-E585
-E586
-E587
-E588
-E589
-E58A
-E58B
-E58C
-E58D
-E58E
-E58F
-E590
-E591
-E592
-E593
-E594
-E595
-E596
-E597
-E598
-E599
-E59A
-E59B
-E59C
-E59D
-E59E
-E59F
-E5A0
-E5A1
-E5A2
-E5A3
-E5A4
-E5A5
-E5A6
-E5A7
-E5A8
-E5A9
-E5AA
-E5AB
-E5AC
-E5AD
-E5AE
-E5AF
-E5B0
-E5B1
-E5B2
-E5B3
-E5B4
-E5B5
-E5B6
-E5B7
-E5B8
-E5B9
-E5BA
-E5BB
-E5BC
-E5BD
-E5BE
-E5BF
-E5C0
-E5C1
-E5C2
-E5C3
-E5C4
-E5C5
-E5C6
-E5C7
-E5C8
-E5C9
-E5CA
-E5CB
-E5CC
-E5CD
-E5CE
-E5CF
-E5D0
-E5D1
-E5D2
-E5D3
-E5D4
-E5D5
-E5D6
-E5D7
-E5D8
-E5D9
-E5DA
-E5DB
-E5DC
-E5DD
-E5DE
-E5DF
-E5E0
-E5E1
-E5E2
-E5E3
-E5E4
-E5E5
-E5E6
-E5E7
-E5E8
-E5E9
-E5EA
-E5EB
-E5EC
-E5ED
-E5EE
-E5EF
-E5F0
-E5F1
-E5F2
-E5F3
-E5F4
-E5F5
-E5F6
-E5F7
-E5F8
-E5F9
-E5FA
-E5FB
-E5FC
-E5FD
-E5FE
-E5FF
-E600
-E601
-E602
-E603
-E604
-E605
-E606
-E607
-E608
-E609
-E60A
-E60B
-E60C
-E60D
-E60E
-E60F
-E610
-E611
-E612
-E613
-E614
-E615
-E616
-E617
-E618
-E619
-E61A
-E61B
-E61C
-E61D
-E61E
-E61F
-E620
-E621
-E622
-E623
-E624
-E625
-E626
-E627
-E628
-E629
-E62A
-E62B
-E62C
-E62D
-E62E
-E62F
-E630
-E631
-E632
-E633
-E634
-E635
-E636
-E637
-E638
-E639
-E63A
-E63B
-E63C
-E63D
-E63E
-E63F
-E640
-E641
-E642
-E643
-E644
-E645
-E646
-E647
-E648
-E649
-E64A
-E64B
-E64C
-E64D
-E64E
-E64F
-E650
-E651
-E652
-E653
-E654
-E655
-E656
-E657
-E658
-E659
-E65A
-E65B
-E65C
-E65D
-E65E
-E65F
-E660
-E661
-E662
-E663
-E664
-E665
-E666
-E667
-E668
-E669
-E66A
-E66B
-E66C
-E66D
-E66E
-E66F
-E670
-E671
-E672
-E673
-E674
-E675
-E676
-E677
-E678
-E679
-E67A
-E67B
-E67C
-E67D
-E67E
-E67F
-E680
-E681
-E682
-E683
-E684
-E685
-E686
-E687
-E688
-E689
-E68A
-E68B
-E68C
-E68D
-E68E
-E68F
-E690
-E691
-E692
-E693
-E694
-E695
-E696
-E697
-E698
-E699
-E69A
-E69B
-E69C
-E69D
-E69E
-E69F
-E6A0
-E6A1
-E6A2
-E6A3
-E6A4
-E6A5
-E6A6
-E6A7
-E6A8
-E6A9
-E6AA
-E6AB
-E6AC
-E6AD
-E6AE
-E6AF
-E6B0
-E6B1
-E6B2
-E6B3
-E6B4
-E6B5
-E6B6
-E6B7
-E6B8
-E6B9
-E6BA
-E6BB
-E6BC
-E6BD
-E6BE
-E6BF
-E6C0
-E6C1
-E6C2
-E6C3
-E6C4
-E6C5
-E6C6
-E6C7
-E6C8
-E6C9
-E6CA
-E6CB
-E6CC
-E6CD
-E6CE
-E6CF
-E6D0
-E6D1
-E6D2
-E6D3
-E6D4
-E6D5
-E6D6
-E6D7
-E6D8
-E6D9
-E6DA
-E6DB
-E6DC
-E6DD
-E6DE
-E6DF
-E6E0
-E6E1
-E6E2
-E6E3
-E6E4
-E6E5
-E6E6
-E6E7
-E6E8
-E6E9
-E6EA
-E6EB
-E6EC
-E6ED
-E6EE
-E6EF
-E6F0
-E6F1
-E6F2
-E6F3
-E6F4
-E6F5
-E6F6
-E6F7
-E6F8
-E6F9
-E6FA
-E6FB
-E6FC
-E6FD
-E6FE
-E6FF
-E700
-E701
-E702
-E703
-E704
-E705
-E706
-E707
-E708
-E709
-E70A
-E70B
-E70C
-E70D
-E70E
-E70F
-E710
-E711
-E712
-E713
-E714
-E715
-E716
-E717
-E718
-E719
-E71A
-E71B
-E71C
-E71D
-E71E
-E71F
-E720
-E721
-E722
-E723
-E724
-E725
-E726
-E727
-E728
-E729
-E72A
-E72B
-E72C
-E72D
-E72E
-E72F
-E730
-E731
-E732
-E733
-E734
-E735
-E736
-E737
-E738
-E739
-E73A
-E73B
-E73C
-E73D
-E73E
-E73F
-E740
-E741
-E742
-E743
-E744
-E745
-E746
-E747
-E748
-E749
-E74A
-E74B
-E74C
-E74D
-E74E
-E74F
-E750
-E751
-E752
-E753
-E754
-E755
-E756
-E757
-CREATE TABLE t3 SELECT CONVERT(c1 USING cp932) AS c1 FROM t2;
-SELECT HEX(c1) FROM t3;
-HEX(c1)
-05
-7E
-815C
-815F
-8160
-8161
-817C
-8191
-8192
-81CA
-8740
-8741
-8742
-8743
-8744
-8745
-8746
-8747
-8748
-8749
-874A
-874B
-874C
-874D
-874E
-874F
-8750
-8751
-8752
-8753
-8754
-8755
-8756
-8757
-8758
-8759
-875A
-875B
-875C
-875D
-875F
-8760
-8761
-8762
-8763
-8764
-8765
-8766
-8767
-8768
-8769
-876A
-876B
-876C
-876D
-876E
-876F
-8770
-8771
-8772
-8773
-8774
-8775
-877E
-8780
-8781
-8782
-8783
-8784
-8785
-8786
-8787
-8788
-8789
-878A
-878B
-878C
-878D
-878E
-878F
-81E0
-81DF
-81E7
-8793
-8794
-81E3
-81DB
-81DA
-8798
-8799
-81E6
-81BF
-81BE
-FA5C
-FA5D
-FA5E
-FA5F
-FA60
-FA61
-FA62
-FA63
-FA64
-FA65
-FA66
-FA67
-FA68
-FA69
-FA6A
-FA6B
-FA6C
-FA6D
-FA6E
-FA6F
-FA70
-FA71
-FA72
-FA73
-FA74
-FA75
-FA76
-FA77
-FA78
-FA79
-FA7A
-FA7B
-FA7C
-FA7D
-FA7E
-FA80
-FA81
-FA82
-FA83
-FA84
-FA85
-FA86
-FA87
-FA88
-FA89
-FA8A
-FA8B
-FA8C
-FA8D
-FA8E
-FA8F
-FA90
-FA91
-FA92
-FA93
-FA94
-FA95
-FA96
-FA97
-FA98
-FA99
-FA9A
-FA9B
-FA9C
-FA9D
-FA9E
-FA9F
-FAA0
-FAA1
-FAA2
-FAA3
-FAA4
-FAA5
-FAA6
-FAA7
-FAA8
-FAA9
-FAAA
-FAAB
-FAAC
-FAAD
-FAAE
-FAAF
-FAB0
-FAB1
-FAB2
-FAB3
-FAB4
-FAB5
-FAB6
-FAB7
-FAB8
-FAB9
-FABA
-FABB
-FABC
-FABD
-FABE
-FABF
-FAC0
-FAC1
-FAC2
-FAC3
-FAC4
-FAC5
-FAC6
-FAC7
-FAC8
-FAC9
-FACA
-FACB
-FACC
-FACD
-FACE
-FACF
-FAD0
-FAD1
-FAD2
-FAD3
-FAD4
-FAD5
-FAD6
-FAD7
-FAD8
-FAD9
-FADA
-FADB
-FADC
-FADD
-FADE
-FADF
-FAE0
-FAE1
-FAE2
-FAE3
-FAE4
-FAE5
-FAE6
-FAE7
-FAE8
-FAE9
-FAEA
-FAEB
-FAEC
-FAED
-FAEE
-FAEF
-FAF0
-FAF1
-FAF2
-FAF3
-FAF4
-FAF5
-FAF6
-FAF7
-FAF8
-FAF9
-FAFA
-FAFB
-FAFC
-FB40
-FB41
-FB42
-FB43
-FB44
-FB45
-FB46
-FB47
-FB48
-FB49
-FB4A
-FB4B
-FB4C
-FB4D
-FB4E
-FB4F
-FB50
-FB51
-FB52
-FB53
-FB54
-FB55
-FB56
-FB57
-FB58
-FB59
-FB5A
-FB5B
-FB5C
-FB5D
-FB5E
-FB5F
-FB60
-FB61
-FB62
-FB63
-FB64
-FB65
-FB66
-FB67
-FB68
-FB69
-FB6A
-FB6B
-FB6C
-FB6D
-FB6E
-FB6F
-FB70
-FB71
-FB72
-FB73
-FB74
-FB75
-FB76
-FB77
-FB78
-FB79
-FB7A
-FB7B
-FB7C
-FB7D
-FB7E
-FB80
-FB81
-FB82
-FB83
-FB84
-FB85
-FB86
-FB87
-FB88
-FB89
-FB8A
-FB8B
-FB8C
-FB8D
-FB8E
-FB8F
-FB90
-FB91
-FB92
-FB93
-FB94
-FB95
-FB96
-FB97
-FB98
-FB99
-FB9A
-FB9B
-FB9C
-FB9D
-FB9E
-FB9F
-FBA0
-FBA1
-FBA2
-FBA3
-FBA4
-FBA5
-FBA6
-FBA7
-FBA8
-FBA9
-FBAA
-FBAB
-FBAC
-FBAD
-FBAE
-FBAF
-FBB0
-FBB1
-FBB2
-FBB3
-FBB4
-FBB5
-FBB6
-FBB7
-FBB8
-FBB9
-FBBA
-FBBB
-FBBC
-FBBD
-FBBE
-FBBF
-FBC0
-FBC1
-FBC2
-FBC3
-FBC4
-FBC5
-FBC6
-FBC7
-FBC8
-FBC9
-FBCA
-FBCB
-FBCC
-FBCD
-FBCE
-FBCF
-FBD0
-FBD1
-FBD2
-FBD3
-FBD4
-FBD5
-FBD6
-FBD7
-FBD8
-FBD9
-FBDA
-FBDB
-FBDC
-FBDD
-FBDE
-FBDF
-FBE0
-FBE1
-FBE2
-FBE3
-FBE4
-FBE5
-FBE6
-FBE7
-FBE8
-FBE9
-FBEA
-FBEB
-FBEC
-FBED
-FBEE
-FBEF
-FBF0
-FBF1
-FBF2
-FBF3
-FBF4
-FBF5
-FBF6
-FBF7
-FBF8
-FBF9
-FBFA
-FBFB
-FBFC
-FC40
-FC41
-FC42
-FC43
-FC44
-FC45
-FC46
-FC47
-FC48
-FC49
-FC4A
-FC4B
-FA40
-FA41
-FA42
-FA43
-FA44
-FA45
-FA46
-FA47
-FA48
-FA49
-81CA
-FA55
-FA56
-FA57
-FA40
-FA41
-FA42
-FA43
-FA44
-FA45
-FA46
-FA47
-FA48
-FA49
-8754
-8755
-8756
-8757
-8758
-8759
-875A
-875B
-875C
-875D
-81CA
-FA55
-FA56
-FA57
-878A
-8782
-8784
-81E6
-FA5C
-FA5D
-FA5E
-FA5F
-FA60
-FA61
-FA62
-FA63
-FA64
-FA65
-FA66
-FA67
-FA68
-FA69
-FA6A
-FA6B
-FA6C
-FA6D
-FA6E
-FA6F
-FA70
-FA71
-FA72
-FA73
-FA74
-FA75
-FA76
-FA77
-FA78
-FA79
-FA7A
-FA7B
-FA7C
-FA7D
-FA7E
-FA80
-FA81
-FA82
-FA83
-FA84
-FA85
-FA86
-FA87
-FA88
-FA89
-FA8A
-FA8B
-FA8C
-FA8D
-FA8E
-FA8F
-FA90
-FA91
-FA92
-FA93
-FA94
-FA95
-FA96
-FA97
-FA98
-FA99
-FA9A
-FA9B
-FA9C
-FA9D
-FA9E
-FA9F
-FAA0
-FAA1
-FAA2
-FAA3
-FAA4
-FAA5
-FAA6
-FAA7
-FAA8
-FAA9
-FAAA
-FAAB
-FAAC
-FAAD
-FAAE
-FAAF
-FAB0
-FAB1
-FAB2
-FAB3
-FAB4
-FAB5
-FAB6
-FAB7
-FAB8
-FAB9
-FABA
-FABB
-FABC
-FABD
-FABE
-FABF
-FAC0
-FAC1
-FAC2
-FAC3
-FAC4
-FAC5
-FAC6
-FAC7
-FAC8
-FAC9
-FACA
-FACB
-FACC
-FACD
-FACE
-FACF
-FAD0
-FAD1
-FAD2
-FAD3
-FAD4
-FAD5
-FAD6
-FAD7
-FAD8
-FAD9
-FADA
-FADB
-FADC
-FADD
-FADE
-FADF
-FAE0
-FAE1
-FAE2
-FAE3
-FAE4
-FAE5
-FAE6
-FAE7
-FAE8
-FAE9
-FAEA
-FAEB
-FAEC
-FAED
-FAEE
-FAEF
-FAF0
-FAF1
-FAF2
-FAF3
-FAF4
-FAF5
-FAF6
-FAF7
-FAF8
-FAF9
-FAFA
-FAFB
-FAFC
-FB40
-FB41
-FB42
-FB43
-FB44
-FB45
-FB46
-FB47
-FB48
-FB49
-FB4A
-FB4B
-FB4C
-FB4D
-FB4E
-FB4F
-FB50
-FB51
-FB52
-FB53
-FB54
-FB55
-FB56
-FB57
-FB58
-FB59
-FB5A
-FB5B
-FB5C
-FB5D
-FB5E
-FB5F
-FB60
-FB61
-FB62
-FB63
-FB64
-FB65
-FB66
-FB67
-FB68
-FB69
-FB6A
-FB6B
-FB6C
-FB6D
-FB6E
-FB6F
-FB70
-FB71
-FB72
-FB73
-FB74
-FB75
-FB76
-FB77
-FB78
-FB79
-FB7A
-FB7B
-FB7C
-FB7D
-FB7E
-FB80
-FB81
-FB82
-FB83
-FB84
-FB85
-FB86
-FB87
-FB88
-FB89
-FB8A
-FB8B
-FB8C
-FB8D
-FB8E
-FB8F
-FB90
-FB91
-FB92
-FB93
-FB94
-FB95
-FB96
-FB97
-FB98
-FB99
-FB9A
-FB9B
-FB9C
-FB9D
-FB9E
-FB9F
-FBA0
-FBA1
-FBA2
-FBA3
-FBA4
-FBA5
-FBA6
-FBA7
-FBA8
-FBA9
-FBAA
-FBAB
-FBAC
-FBAD
-FBAE
-FBAF
-FBB0
-FBB1
-FBB2
-FBB3
-FBB4
-FBB5
-FBB6
-FBB7
-FBB8
-FBB9
-FBBA
-FBBB
-FBBC
-FBBD
-FBBE
-FBBF
-FBC0
-FBC1
-FBC2
-FBC3
-FBC4
-FBC5
-FBC6
-FBC7
-FBC8
-FBC9
-FBCA
-FBCB
-FBCC
-FBCD
-FBCE
-FBCF
-FBD0
-FBD1
-FBD2
-FBD3
-FBD4
-FBD5
-FBD6
-FBD7
-FBD8
-FBD9
-FBDA
-FBDB
-FBDC
-FBDD
-FBDE
-FBDF
-FBE0
-FBE1
-FBE2
-FBE3
-FBE4
-FBE5
-FBE6
-FBE7
-FBE8
-FBE9
-FBEA
-FBEB
-FBEC
-FBED
-FBEE
-FBEF
-FBF0
-FBF1
-FBF2
-FBF3
-FBF4
-FBF5
-FBF6
-FBF7
-FBF8
-FBF9
-FBFA
-FBFB
-FBFC
-FC40
-FC41
-FC42
-FC43
-FC44
-FC45
-FC46
-FC47
-FC48
-FC49
-FC4A
-FC4B
-F040
-F041
-F042
-F043
-F044
-F045
-F046
-F047
-F048
-F049
-F04A
-F04B
-F04C
-F04D
-F04E
-F04F
-F050
-F051
-F052
-F053
-F054
-F055
-F056
-F057
-F058
-F059
-F05A
-F05B
-F05C
-F05D
-F05E
-F05F
-F060
-F061
-F062
-F063
-F064
-F065
-F066
-F067
-F068
-F069
-F06A
-F06B
-F06C
-F06D
-F06E
-F06F
-F070
-F071
-F072
-F073
-F074
-F075
-F076
-F077
-F078
-F079
-F07A
-F07B
-F07C
-F07D
-F07E
-F080
-F081
-F082
-F083
-F084
-F085
-F086
-F087
-F088
-F089
-F08A
-F08B
-F08C
-F08D
-F08E
-F08F
-F090
-F091
-F092
-F093
-F094
-F095
-F096
-F097
-F098
-F099
-F09A
-F09B
-F09C
-F09D
-F09E
-F09F
-F0A0
-F0A1
-F0A2
-F0A3
-F0A4
-F0A5
-F0A6
-F0A7
-F0A8
-F0A9
-F0AA
-F0AB
-F0AC
-F0AD
-F0AE
-F0AF
-F0B0
-F0B1
-F0B2
-F0B3
-F0B4
-F0B5
-F0B6
-F0B7
-F0B8
-F0B9
-F0BA
-F0BB
-F0BC
-F0BD
-F0BE
-F0BF
-F0C0
-F0C1
-F0C2
-F0C3
-F0C4
-F0C5
-F0C6
-F0C7
-F0C8
-F0C9
-F0CA
-F0CB
-F0CC
-F0CD
-F0CE
-F0CF
-F0D0
-F0D1
-F0D2
-F0D3
-F0D4
-F0D5
-F0D6
-F0D7
-F0D8
-F0D9
-F0DA
-F0DB
-F0DC
-F0DD
-F0DE
-F0DF
-F0E0
-F0E1
-F0E2
-F0E3
-F0E4
-F0E5
-F0E6
-F0E7
-F0E8
-F0E9
-F0EA
-F0EB
-F0EC
-F0ED
-F0EE
-F0EF
-F0F0
-F0F1
-F0F2
-F0F3
-F0F4
-F0F5
-F0F6
-F0F7
-F0F8
-F0F9
-F0FA
-F0FB
-F0FC
-F140
-F141
-F142
-F143
-F144
-F145
-F146
-F147
-F148
-F149
-F14A
-F14B
-F14C
-F14D
-F14E
-F14F
-F150
-F151
-F152
-F153
-F154
-F155
-F156
-F157
-F158
-F159
-F15A
-F15B
-F15C
-F15D
-F15E
-F15F
-F160
-F161
-F162
-F163
-F164
-F165
-F166
-F167
-F168
-F169
-F16A
-F16B
-F16C
-F16D
-F16E
-F16F
-F170
-F171
-F172
-F173
-F174
-F175
-F176
-F177
-F178
-F179
-F17A
-F17B
-F17C
-F17D
-F17E
-F180
-F181
-F182
-F183
-F184
-F185
-F186
-F187
-F188
-F189
-F18A
-F18B
-F18C
-F18D
-F18E
-F18F
-F190
-F191
-F192
-F193
-F194
-F195
-F196
-F197
-F198
-F199
-F19A
-F19B
-F19C
-F19D
-F19E
-F19F
-F1A0
-F1A1
-F1A2
-F1A3
-F1A4
-F1A5
-F1A6
-F1A7
-F1A8
-F1A9
-F1AA
-F1AB
-F1AC
-F1AD
-F1AE
-F1AF
-F1B0
-F1B1
-F1B2
-F1B3
-F1B4
-F1B5
-F1B6
-F1B7
-F1B8
-F1B9
-F1BA
-F1BB
-F1BC
-F1BD
-F1BE
-F1BF
-F1C0
-F1C1
-F1C2
-F1C3
-F1C4
-F1C5
-F1C6
-F1C7
-F1C8
-F1C9
-F1CA
-F1CB
-F1CC
-F1CD
-F1CE
-F1CF
-F1D0
-F1D1
-F1D2
-F1D3
-F1D4
-F1D5
-F1D6
-F1D7
-F1D8
-F1D9
-F1DA
-F1DB
-F1DC
-F1DD
-F1DE
-F1DF
-F1E0
-F1E1
-F1E2
-F1E3
-F1E4
-F1E5
-F1E6
-F1E7
-F1E8
-F1E9
-F1EA
-F1EB
-F1EC
-F1ED
-F1EE
-F1EF
-F1F0
-F1F1
-F1F2
-F1F3
-F1F4
-F1F5
-F1F6
-F1F7
-F1F8
-F1F9
-F1FA
-F1FB
-F1FC
-F240
-F241
-F242
-F243
-F244
-F245
-F246
-F247
-F248
-F249
-F24A
-F24B
-F24C
-F24D
-F24E
-F24F
-F250
-F251
-F252
-F253
-F254
-F255
-F256
-F257
-F258
-F259
-F25A
-F25B
-F25C
-F25D
-F25E
-F25F
-F260
-F261
-F262
-F263
-F264
-F265
-F266
-F267
-F268
-F269
-F26A
-F26B
-F26C
-F26D
-F26E
-F26F
-F270
-F271
-F272
-F273
-F274
-F275
-F276
-F277
-F278
-F279
-F27A
-F27B
-F27C
-F27D
-F27E
-F280
-F281
-F282
-F283
-F284
-F285
-F286
-F287
-F288
-F289
-F28A
-F28B
-F28C
-F28D
-F28E
-F28F
-F290
-F291
-F292
-F293
-F294
-F295
-F296
-F297
-F298
-F299
-F29A
-F29B
-F29C
-F29D
-F29E
-F29F
-F2A0
-F2A1
-F2A2
-F2A3
-F2A4
-F2A5
-F2A6
-F2A7
-F2A8
-F2A9
-F2AA
-F2AB
-F2AC
-F2AD
-F2AE
-F2AF
-F2B0
-F2B1
-F2B2
-F2B3
-F2B4
-F2B5
-F2B6
-F2B7
-F2B8
-F2B9
-F2BA
-F2BB
-F2BC
-F2BD
-F2BE
-F2BF
-F2C0
-F2C1
-F2C2
-F2C3
-F2C4
-F2C5
-F2C6
-F2C7
-F2C8
-F2C9
-F2CA
-F2CB
-F2CC
-F2CD
-F2CE
-F2CF
-F2D0
-F2D1
-F2D2
-F2D3
-F2D4
-F2D5
-F2D6
-F2D7
-F2D8
-F2D9
-F2DA
-F2DB
-F2DC
-F2DD
-F2DE
-F2DF
-F2E0
-F2E1
-F2E2
-F2E3
-F2E4
-F2E5
-F2E6
-F2E7
-F2E8
-F2E9
-F2EA
-F2EB
-F2EC
-F2ED
-F2EE
-F2EF
-F2F0
-F2F1
-F2F2
-F2F3
-F2F4
-F2F5
-F2F6
-F2F7
-F2F8
-F2F9
-F2FA
-F2FB
-F2FC
-F340
-F341
-F342
-F343
-F344
-F345
-F346
-F347
-F348
-F349
-F34A
-F34B
-F34C
-F34D
-F34E
-F34F
-F350
-F351
-F352
-F353
-F354
-F355
-F356
-F357
-F358
-F359
-F35A
-F35B
-F35C
-F35D
-F35E
-F35F
-F360
-F361
-F362
-F363
-F364
-F365
-F366
-F367
-F368
-F369
-F36A
-F36B
-F36C
-F36D
-F36E
-F36F
-F370
-F371
-F372
-F373
-F374
-F375
-F376
-F377
-F378
-F379
-F37A
-F37B
-F37C
-F37D
-F37E
-F380
-F381
-F382
-F383
-F384
-F385
-F386
-F387
-F388
-F389
-F38A
-F38B
-F38C
-F38D
-F38E
-F38F
-F390
-F391
-F392
-F393
-F394
-F395
-F396
-F397
-F398
-F399
-F39A
-F39B
-F39C
-F39D
-F39E
-F39F
-F3A0
-F3A1
-F3A2
-F3A3
-F3A4
-F3A5
-F3A6
-F3A7
-F3A8
-F3A9
-F3AA
-F3AB
-F3AC
-F3AD
-F3AE
-F3AF
-F3B0
-F3B1
-F3B2
-F3B3
-F3B4
-F3B5
-F3B6
-F3B7
-F3B8
-F3B9
-F3BA
-F3BB
-F3BC
-F3BD
-F3BE
-F3BF
-F3C0
-F3C1
-F3C2
-F3C3
-F3C4
-F3C5
-F3C6
-F3C7
-F3C8
-F3C9
-F3CA
-F3CB
-F3CC
-F3CD
-F3CE
-F3CF
-F3D0
-F3D1
-F3D2
-F3D3
-F3D4
-F3D5
-F3D6
-F3D7
-F3D8
-F3D9
-F3DA
-F3DB
-F3DC
-F3DD
-F3DE
-F3DF
-F3E0
-F3E1
-F3E2
-F3E3
-F3E4
-F3E5
-F3E6
-F3E7
-F3E8
-F3E9
-F3EA
-F3EB
-F3EC
-F3ED
-F3EE
-F3EF
-F3F0
-F3F1
-F3F2
-F3F3
-F3F4
-F3F5
-F3F6
-F3F7
-F3F8
-F3F9
-F3FA
-F3FB
-F3FC
-F440
-F441
-F442
-F443
-F444
-F445
-F446
-F447
-F448
-F449
-F44A
-F44B
-F44C
-F44D
-F44E
-F44F
-F450
-F451
-F452
-F453
-F454
-F455
-F456
-F457
-F458
-F459
-F45A
-F45B
-F45C
-F45D
-F45E
-F45F
-F460
-F461
-F462
-F463
-F464
-F465
-F466
-F467
-F468
-F469
-F46A
-F46B
-F46C
-F46D
-F46E
-F46F
-F470
-F471
-F472
-F473
-F474
-F475
-F476
-F477
-F478
-F479
-F47A
-F47B
-F47C
-F47D
-F47E
-F480
-F481
-F482
-F483
-F484
-F485
-F486
-F487
-F488
-F489
-F48A
-F48B
-F48C
-F48D
-F48E
-F48F
-F490
-F491
-F492
-F493
-F494
-F495
-F496
-F497
-F498
-F499
-F49A
-F49B
-F49C
-F49D
-F49E
-F49F
-F4A0
-F4A1
-F4A2
-F4A3
-F4A4
-F4A5
-F4A6
-F4A7
-F4A8
-F4A9
-F4AA
-F4AB
-F4AC
-F4AD
-F4AE
-F4AF
-F4B0
-F4B1
-F4B2
-F4B3
-F4B4
-F4B5
-F4B6
-F4B7
-F4B8
-F4B9
-F4BA
-F4BB
-F4BC
-F4BD
-F4BE
-F4BF
-F4C0
-F4C1
-F4C2
-F4C3
-F4C4
-F4C5
-F4C6
-F4C7
-F4C8
-F4C9
-F4CA
-F4CB
-F4CC
-F4CD
-F4CE
-F4CF
-F4D0
-F4D1
-F4D2
-F4D3
-F4D4
-F4D5
-F4D6
-F4D7
-F4D8
-F4D9
-F4DA
-F4DB
-F4DC
-F4DD
-F4DE
-F4DF
-F4E0
-F4E1
-F4E2
-F4E3
-F4E4
-F4E5
-F4E6
-F4E7
-F4E8
-F4E9
-F4EA
-F4EB
-F4EC
-F4ED
-F4EE
-F4EF
-F4F0
-F4F1
-F4F2
-F4F3
-F4F4
-F4F5
-F4F6
-F4F7
-F4F8
-F4F9
-F4FA
-F4FB
-F4FC
-F540
-F541
-F542
-F543
-F544
-F545
-F546
-F547
-F548
-F549
-F54A
-F54B
-F54C
-F54D
-F54E
-F54F
-F550
-F551
-F552
-F553
-F554
-F555
-F556
-F557
-F558
-F559
-F55A
-F55B
-F55C
-F55D
-F55E
-F55F
-F560
-F561
-F562
-F563
-F564
-F565
-F566
-F567
-F568
-F569
-F56A
-F56B
-F56C
-F56D
-F56E
-F56F
-F570
-F571
-F572
-F573
-F574
-F575
-F576
-F577
-F578
-F579
-F57A
-F57B
-F57C
-F57D
-F57E
-F580
-F581
-F582
-F583
-F584
-F585
-F586
-F587
-F588
-F589
-F58A
-F58B
-F58C
-F58D
-F58E
-F58F
-F590
-F591
-F592
-F593
-F594
-F595
-F596
-F597
-F598
-F599
-F59A
-F59B
-F59C
-F59D
-F59E
-F59F
-F5A0
-F5A1
-F5A2
-F5A3
-F5A4
-F5A5
-F5A6
-F5A7
-F5A8
-F5A9
-F5AA
-F5AB
-F5AC
-F5AD
-F5AE
-F5AF
-F5B0
-F5B1
-F5B2
-F5B3
-F5B4
-F5B5
-F5B6
-F5B7
-F5B8
-F5B9
-F5BA
-F5BB
-F5BC
-F5BD
-F5BE
-F5BF
-F5C0
-F5C1
-F5C2
-F5C3
-F5C4
-F5C5
-F5C6
-F5C7
-F5C8
-F5C9
-F5CA
-F5CB
-F5CC
-F5CD
-F5CE
-F5CF
-F5D0
-F5D1
-F5D2
-F5D3
-F5D4
-F5D5
-F5D6
-F5D7
-F5D8
-F5D9
-F5DA
-F5DB
-F5DC
-F5DD
-F5DE
-F5DF
-F5E0
-F5E1
-F5E2
-F5E3
-F5E4
-F5E5
-F5E6
-F5E7
-F5E8
-F5E9
-F5EA
-F5EB
-F5EC
-F5ED
-F5EE
-F5EF
-F5F0
-F5F1
-F5F2
-F5F3
-F5F4
-F5F5
-F5F6
-F5F7
-F5F8
-F5F9
-F5FA
-F5FB
-F5FC
-F640
-F641
-F642
-F643
-F644
-F645
-F646
-F647
-F648
-F649
-F64A
-F64B
-F64C
-F64D
-F64E
-F64F
-F650
-F651
-F652
-F653
-F654
-F655
-F656
-F657
-F658
-F659
-F65A
-F65B
-F65C
-F65D
-F65E
-F65F
-F660
-F661
-F662
-F663
-F664
-F665
-F666
-F667
-F668
-F669
-F66A
-F66B
-F66C
-F66D
-F66E
-F66F
-F670
-F671
-F672
-F673
-F674
-F675
-F676
-F677
-F678
-F679
-F67A
-F67B
-F67C
-F67D
-F67E
-F680
-F681
-F682
-F683
-F684
-F685
-F686
-F687
-F688
-F689
-F68A
-F68B
-F68C
-F68D
-F68E
-F68F
-F690
-F691
-F692
-F693
-F694
-F695
-F696
-F697
-F698
-F699
-F69A
-F69B
-F69C
-F69D
-F69E
-F69F
-F6A0
-F6A1
-F6A2
-F6A3
-F6A4
-F6A5
-F6A6
-F6A7
-F6A8
-F6A9
-F6AA
-F6AB
-F6AC
-F6AD
-F6AE
-F6AF
-F6B0
-F6B1
-F6B2
-F6B3
-F6B4
-F6B5
-F6B6
-F6B7
-F6B8
-F6B9
-F6BA
-F6BB
-F6BC
-F6BD
-F6BE
-F6BF
-F6C0
-F6C1
-F6C2
-F6C3
-F6C4
-F6C5
-F6C6
-F6C7
-F6C8
-F6C9
-F6CA
-F6CB
-F6CC
-F6CD
-F6CE
-F6CF
-F6D0
-F6D1
-F6D2
-F6D3
-F6D4
-F6D5
-F6D6
-F6D7
-F6D8
-F6D9
-F6DA
-F6DB
-F6DC
-F6DD
-F6DE
-F6DF
-F6E0
-F6E1
-F6E2
-F6E3
-F6E4
-F6E5
-F6E6
-F6E7
-F6E8
-F6E9
-F6EA
-F6EB
-F6EC
-F6ED
-F6EE
-F6EF
-F6F0
-F6F1
-F6F2
-F6F3
-F6F4
-F6F5
-F6F6
-F6F7
-F6F8
-F6F9
-F6FA
-F6FB
-F6FC
-F740
-F741
-F742
-F743
-F744
-F745
-F746
-F747
-F748
-F749
-F74A
-F74B
-F74C
-F74D
-F74E
-F74F
-F750
-F751
-F752
-F753
-F754
-F755
-F756
-F757
-F758
-F759
-F75A
-F75B
-F75C
-F75D
-F75E
-F75F
-F760
-F761
-F762
-F763
-F764
-F765
-F766
-F767
-F768
-F769
-F76A
-F76B
-F76C
-F76D
-F76E
-F76F
-F770
-F771
-F772
-F773
-F774
-F775
-F776
-F777
-F778
-F779
-F77A
-F77B
-F77C
-F77D
-F77E
-F780
-F781
-F782
-F783
-F784
-F785
-F786
-F787
-F788
-F789
-F78A
-F78B
-F78C
-F78D
-F78E
-F78F
-F790
-F791
-F792
-F793
-F794
-F795
-F796
-F797
-F798
-F799
-F79A
-F79B
-F79C
-F79D
-F79E
-F79F
-F7A0
-F7A1
-F7A2
-F7A3
-F7A4
-F7A5
-F7A6
-F7A7
-F7A8
-F7A9
-F7AA
-F7AB
-F7AC
-F7AD
-F7AE
-F7AF
-F7B0
-F7B1
-F7B2
-F7B3
-F7B4
-F7B5
-F7B6
-F7B7
-F7B8
-F7B9
-F7BA
-F7BB
-F7BC
-F7BD
-F7BE
-F7BF
-F7C0
-F7C1
-F7C2
-F7C3
-F7C4
-F7C5
-F7C6
-F7C7
-F7C8
-F7C9
-F7CA
-F7CB
-F7CC
-F7CD
-F7CE
-F7CF
-F7D0
-F7D1
-F7D2
-F7D3
-F7D4
-F7D5
-F7D6
-F7D7
-F7D8
-F7D9
-F7DA
-F7DB
-F7DC
-F7DD
-F7DE
-F7DF
-F7E0
-F7E1
-F7E2
-F7E3
-F7E4
-F7E5
-F7E6
-F7E7
-F7E8
-F7E9
-F7EA
-F7EB
-F7EC
-F7ED
-F7EE
-F7EF
-F7F0
-F7F1
-F7F2
-F7F3
-F7F4
-F7F5
-F7F6
-F7F7
-F7F8
-F7F9
-F7FA
-F7FB
-F7FC
-F840
-F841
-F842
-F843
-F844
-F845
-F846
-F847
-F848
-F849
-F84A
-F84B
-F84C
-F84D
-F84E
-F84F
-F850
-F851
-F852
-F853
-F854
-F855
-F856
-F857
-F858
-F859
-F85A
-F85B
-F85C
-F85D
-F85E
-F85F
-F860
-F861
-F862
-F863
-F864
-F865
-F866
-F867
-F868
-F869
-F86A
-F86B
-F86C
-F86D
-F86E
-F86F
-F870
-F871
-F872
-F873
-F874
-F875
-F876
-F877
-F878
-F879
-F87A
-F87B
-F87C
-F87D
-F87E
-F880
-F881
-F882
-F883
-F884
-F885
-F886
-F887
-F888
-F889
-F88A
-F88B
-F88C
-F88D
-F88E
-F88F
-F890
-F891
-F892
-F893
-F894
-F895
-F896
-F897
-F898
-F899
-F89A
-F89B
-F89C
-F89D
-F89E
-F89F
-F8A0
-F8A1
-F8A2
-F8A3
-F8A4
-F8A5
-F8A6
-F8A7
-F8A8
-F8A9
-F8AA
-F8AB
-F8AC
-F8AD
-F8AE
-F8AF
-F8B0
-F8B1
-F8B2
-F8B3
-F8B4
-F8B5
-F8B6
-F8B7
-F8B8
-F8B9
-F8BA
-F8BB
-F8BC
-F8BD
-F8BE
-F8BF
-F8C0
-F8C1
-F8C2
-F8C3
-F8C4
-F8C5
-F8C6
-F8C7
-F8C8
-F8C9
-F8CA
-F8CB
-F8CC
-F8CD
-F8CE
-F8CF
-F8D0
-F8D1
-F8D2
-F8D3
-F8D4
-F8D5
-F8D6
-F8D7
-F8D8
-F8D9
-F8DA
-F8DB
-F8DC
-F8DD
-F8DE
-F8DF
-F8E0
-F8E1
-F8E2
-F8E3
-F8E4
-F8E5
-F8E6
-F8E7
-F8E8
-F8E9
-F8EA
-F8EB
-F8EC
-F8ED
-F8EE
-F8EF
-F8F0
-F8F1
-F8F2
-F8F3
-F8F4
-F8F5
-F8F6
-F8F7
-F8F8
-F8F9
-F8FA
-F8FB
-F8FC
-F940
-F941
-F942
-F943
-F944
-F945
-F946
-F947
-F948
-F949
-F94A
-F94B
-F94C
-F94D
-F94E
-F94F
-F950
-F951
-F952
-F953
-F954
-F955
-F956
-F957
-F958
-F959
-F95A
-F95B
-F95C
-F95D
-F95E
-F95F
-F960
-F961
-F962
-F963
-F964
-F965
-F966
-F967
-F968
-F969
-F96A
-F96B
-F96C
-F96D
-F96E
-F96F
-F970
-F971
-F972
-F973
-F974
-F975
-F976
-F977
-F978
-F979
-F97A
-F97B
-F97C
-F97D
-F97E
-F980
-F981
-F982
-F983
-F984
-F985
-F986
-F987
-F988
-F989
-F98A
-F98B
-F98C
-F98D
-F98E
-F98F
-F990
-F991
-F992
-F993
-F994
-F995
-F996
-F997
-F998
-F999
-F99A
-F99B
-F99C
-F99D
-F99E
-F99F
-F9A0
-F9A1
-F9A2
-F9A3
-F9A4
-F9A5
-F9A6
-F9A7
-F9A8
-F9A9
-F9AA
-F9AB
-F9AC
-F9AD
-F9AE
-F9AF
-F9B0
-F9B1
-F9B2
-F9B3
-F9B4
-F9B5
-F9B6
-F9B7
-F9B8
-F9B9
-F9BA
-F9BB
-F9BC
-F9BD
-F9BE
-F9BF
-F9C0
-F9C1
-F9C2
-F9C3
-F9C4
-F9C5
-F9C6
-F9C7
-F9C8
-F9C9
-F9CA
-F9CB
-F9CC
-F9CD
-F9CE
-F9CF
-F9D0
-F9D1
-F9D2
-F9D3
-F9D4
-F9D5
-F9D6
-F9D7
-F9D8
-F9D9
-F9DA
-F9DB
-F9DC
-F9DD
-F9DE
-F9DF
-F9E0
-F9E1
-F9E2
-F9E3
-F9E4
-F9E5
-F9E6
-F9E7
-F9E8
-F9E9
-F9EA
-F9EB
-F9EC
-F9ED
-F9EE
-F9EF
-F9F0
-F9F1
-F9F2
-F9F3
-F9F4
-F9F5
-F9F6
-F9F7
-F9F8
-F9F9
-F9FA
-F9FB
-F9FC
-CREATE TABLE t4 SELECT CONVERT(c1 USING eucjpms) AS c1 FROM t1;
-SELECT HEX(c1) FROM t4;
-HEX(c1)
-05
-7E
-A1BD
-A1C0
-A1C1
-A1C2
-A1DD
-A1F1
-A1F2
-A2CC
-ADA1
-ADA2
-ADA3
-ADA4
-ADA5
-ADA6
-ADA7
-ADA8
-ADA9
-ADAA
-ADAB
-ADAC
-ADAD
-ADAE
-ADAF
-ADB0
-ADB1
-ADB2
-ADB3
-ADB4
-ADB5
-ADB6
-ADB7
-ADB8
-ADB9
-ADBA
-ADBB
-ADBC
-ADBD
-ADBE
-ADC0
-ADC1
-ADC2
-ADC3
-ADC4
-ADC5
-ADC6
-ADC7
-ADC8
-ADC9
-ADCA
-ADCB
-ADCC
-ADCD
-ADCE
-ADCF
-ADD0
-ADD1
-ADD2
-ADD3
-ADD4
-ADD5
-ADD6
-ADDF
-ADE0
-ADE1
-ADE2
-ADE3
-ADE4
-ADE5
-ADE6
-ADE7
-ADE8
-ADE9
-ADEA
-ADEB
-ADEC
-ADED
-ADEE
-ADEF
-A2E2
-A2E1
-A2E9
-ADF3
-ADF4
-A2E5
-A2DD
-A2DC
-ADF8
-ADF9
-A2E8
-A2C1
-A2C0
-8FD4E3
-8FDCDF
-8FE4E9
-8FE3F8
-8FD9A1
-8FB1BB
-8FF4AE
-8FC2AD
-8FC3FC
-8FE4D0
-8FC2BF
-8FBCF4
-8FB0A9
-8FB0C8
-8FF4AF
-8FB0D2
-8FB0D4
-8FB0E3
-8FB0EE
-8FB1A7
-8FB1A3
-8FB1AC
-8FB1A9
-8FB1BE
-8FB1DF
-8FB1D8
-8FB1C8
-8FB1D7
-8FB1E3
-8FB1F4
-8FB1E1
-8FB2A3
-8FF4B0
-8FB2BB
-8FB2E6
-8FB2ED
-8FB2F5
-8FB2FC
-8FF4B1
-8FB3B5
-8FB3D8
-8FB3DB
-8FB3E5
-8FB3EE
-8FB3FB
-8FF4B2
-8FF4B3
-8FB4C0
-8FB4C7
-8FB4D0
-8FB4DE
-8FF4B4
-8FB5AA
-8FF4B5
-8FB5AF
-8FB5C4
-8FB5E8
-8FF4B6
-8FB7C2
-8FB7E4
-8FB7E8
-8FB7E7
-8FF4B7
-8FF4B8
-8FF4B9
-8FB8CE
-8FB8E1
-8FB8F5
-8FB8F7
-8FB8F8
-8FB8FC
-8FB9AF
-8FB9B7
-8FBABE
-8FBADB
-8FCDAA
-8FBAE1
-8FF4BA
-8FBAEB
-8FBBB3
-8FBBB8
-8FF4BB
-8FBBCA
-8FF4BC
-8FF4BD
-8FBBD0
-8FBBDE
-8FBBF4
-8FBBF5
-8FBBF9
-8FBCE4
-8FBCED
-8FBCFE
-8FF4BE
-8FBDC2
-8FBDE7
-8FF4BF
-8FBDF0
-8FBEB0
-8FBEAC
-8FF4C0
-8FBEB3
-8FBEBD
-8FBECD
-8FBEC9
-8FBEE4
-8FBFA8
-8FBFC9
-8FC0C4
-8FC0E4
-8FC0F4
-8FC1A6
-8FF4C1
-8FC1F5
-8FC1FC
-8FF4C2
-8FC1F8
-8FC2AB
-8FC2A1
-8FC2A5
-8FF4C3
-8FC2B8
-8FC2BA
-8FF4C4
-8FC2C4
-8FC2D2
-8FC2D7
-8FC2DB
-8FC2DE
-8FC2ED
-8FC2F0
-8FF4C5
-8FC3A1
-8FC3B5
-8FC3C9
-8FC3B9
-8FF4C6
-8FC3D8
-8FC3FE
-8FF4C7
-8FC4CC
-8FF4C8
-8FC4D9
-8FC4EA
-8FC4FD
-8FF4C9
-8FC5A7
-8FC5B5
-8FC5B6
-8FF4CA
-8FC5D5
-8FC6B8
-8FC6D7
-8FC6E0
-8FC6EA
-8FC6E3
-8FC7A1
-8FC7AB
-8FC7C7
-8FC7C3
-8FC7CB
-8FC7CF
-8FC7D9
-8FF4CB
-8FF4CC
-8FC7E6
-8FC7EE
-8FC7FC
-8FC7EB
-8FC7F0
-8FC8B1
-8FC8E5
-8FC8F8
-8FC9A6
-8FC9AB
-8FC9AD
-8FF4CD
-8FC9CA
-8FC9D3
-8FC9E9
-8FC9E3
-8FC9FC
-8FC9F4
-8FC9F5
-8FF4CE
-8FCAB3
-8FCABD
-8FCAEF
-8FCAF1
-8FCBAE
-8FF4CF
-8FCBCA
-8FCBE6
-8FCBEA
-8FCBF0
-8FCBF4
-8FCBEE
-8FCCA5
-8FCBF9
-8FCCAB
-8FCCAE
-8FCCAD
-8FCCB2
-8FCCC2
-8FCCD0
-8FCCD9
-8FF4D0
-8FCDBB
-8FF4D1
-8FCEBB
-8FF4D2
-8FCEBA
-8FCEC3
-8FF4D3
-8FCEF2
-8FB3DD
-8FCFD5
-8FCFE2
-8FCFE9
-8FCFED
-8FF4D4
-8FF4D5
-8FF4D6
-8FF4D7
-8FD0E5
-8FF4D8
-8FD0E9
-8FD1E8
-8FF4D9
-8FF4DA
-8FD1EC
-8FD2BB
-8FF4DB
-8FD3E1
-8FD3E8
-8FD4A7
-8FF4DC
-8FF4DD
-8FD4D4
-8FD4F2
-8FD5AE
-8FF4DE
-8FD7DE
-8FF4DF
-8FD8A2
-8FD8B7
-8FD8C1
-8FD8D1
-8FD8F4
-8FD9C6
-8FD9C8
-8FD9D1
-8FF4E0
-8FF4E1
-8FF4E2
-8FF4E3
-8FF4E4
-8FDCD3
-8FDDC8
-8FDDD4
-8FDDEA
-8FDDFA
-8FDEA4
-8FDEB0
-8FF4E5
-8FDEB5
-8FDECB
-8FF4E6
-8FDFB9
-8FF4E7
-8FDFC3
-8FF4E8
-8FF4E9
-8FE0D9
-8FF4EA
-8FF4EB
-8FE1E2
-8FF4EC
-8FF4ED
-8FF4EE
-8FE2C7
-8FE3A8
-8FE3A6
-8FE3A9
-8FE3AF
-8FE3B0
-8FE3AA
-8FE3AB
-8FE3BC
-8FE3C1
-8FE3BF
-8FE3D5
-8FE3D8
-8FE3D6
-8FE3DF
-8FE3E3
-8FE3E1
-8FE3D4
-8FE3E9
-8FE4A6
-8FE3F1
-8FE3F2
-8FE4CB
-8FE4C1
-8FE4C3
-8FE4BE
-8FF4EF
-8FE4C0
-8FE4C7
-8FE4BF
-8FE4E0
-8FE4DE
-8FE4D1
-8FF4F0
-8FE4DC
-8FE4D2
-8FE4DB
-8FE4D4
-8FE4FA
-8FE4EF
-8FE5B3
-8FE5BF
-8FE5C9
-8FE5D0
-8FE5E2
-8FE5EA
-8FE5EB
-8FF4F1
-8FF4F2
-8FF4F3
-8FE6E8
-8FE6EF
-8FE7AC
-8FF4F4
-8FE7AE
-8FF4F5
-8FE7B1
-8FF4F6
-8FE7B2
-8FE8B1
-8FE8B6
-8FF4F7
-8FF4F8
-8FE8DD
-8FF4F9
-8FF4FA
-8FE9D1
-8FF4FB
-8FE9ED
-8FEACD
-8FF4FC
-8FEADB
-8FEAE6
-8FEAEA
-8FEBA5
-8FEBFB
-8FEBFA
-8FF4FD
-8FECD6
-8FF4FE
-8FF3F3
-8FF3F4
-8FF3F5
-8FF3F6
-8FF3F7
-8FF3F8
-8FF3F9
-8FF3FA
-8FF3FB
-8FF3FC
-A2CC
-8FA2C3
-8FF4A9
-8FF4AA
-8FF3F3
-8FF3F4
-8FF3F5
-8FF3F6
-8FF3F7
-8FF3F8
-8FF3F9
-8FF3FA
-8FF3FB
-8FF3FC
-ADB5
-ADB6
-ADB7
-ADB8
-ADB9
-ADBA
-ADBB
-ADBC
-ADBD
-ADBE
-A2CC
-8FA2C3
-8FF4A9
-8FF4AA
-ADEA
-ADE2
-ADE4
-A2E8
-8FD4E3
-8FDCDF
-8FE4E9
-8FE3F8
-8FD9A1
-8FB1BB
-8FF4AE
-8FC2AD
-8FC3FC
-8FE4D0
-8FC2BF
-8FBCF4
-8FB0A9
-8FB0C8
-8FF4AF
-8FB0D2
-8FB0D4
-8FB0E3
-8FB0EE
-8FB1A7
-8FB1A3
-8FB1AC
-8FB1A9
-8FB1BE
-8FB1DF
-8FB1D8
-8FB1C8
-8FB1D7
-8FB1E3
-8FB1F4
-8FB1E1
-8FB2A3
-8FF4B0
-8FB2BB
-8FB2E6
-8FB2ED
-8FB2F5
-8FB2FC
-8FF4B1
-8FB3B5
-8FB3D8
-8FB3DB
-8FB3E5
-8FB3EE
-8FB3FB
-8FF4B2
-8FF4B3
-8FB4C0
-8FB4C7
-8FB4D0
-8FB4DE
-8FF4B4
-8FB5AA
-8FF4B5
-8FB5AF
-8FB5C4
-8FB5E8
-8FF4B6
-8FB7C2
-8FB7E4
-8FB7E8
-8FB7E7
-8FF4B7
-8FF4B8
-8FF4B9
-8FB8CE
-8FB8E1
-8FB8F5
-8FB8F7
-8FB8F8
-8FB8FC
-8FB9AF
-8FB9B7
-8FBABE
-8FBADB
-8FCDAA
-8FBAE1
-8FF4BA
-8FBAEB
-8FBBB3
-8FBBB8
-8FF4BB
-8FBBCA
-8FF4BC
-8FF4BD
-8FBBD0
-8FBBDE
-8FBBF4
-8FBBF5
-8FBBF9
-8FBCE4
-8FBCED
-8FBCFE
-8FF4BE
-8FBDC2
-8FBDE7
-8FF4BF
-8FBDF0
-8FBEB0
-8FBEAC
-8FF4C0
-8FBEB3
-8FBEBD
-8FBECD
-8FBEC9
-8FBEE4
-8FBFA8
-8FBFC9
-8FC0C4
-8FC0E4
-8FC0F4
-8FC1A6
-8FF4C1
-8FC1F5
-8FC1FC
-8FF4C2
-8FC1F8
-8FC2AB
-8FC2A1
-8FC2A5
-8FF4C3
-8FC2B8
-8FC2BA
-8FF4C4
-8FC2C4
-8FC2D2
-8FC2D7
-8FC2DB
-8FC2DE
-8FC2ED
-8FC2F0
-8FF4C5
-8FC3A1
-8FC3B5
-8FC3C9
-8FC3B9
-8FF4C6
-8FC3D8
-8FC3FE
-8FF4C7
-8FC4CC
-8FF4C8
-8FC4D9
-8FC4EA
-8FC4FD
-8FF4C9
-8FC5A7
-8FC5B5
-8FC5B6
-8FF4CA
-8FC5D5
-8FC6B8
-8FC6D7
-8FC6E0
-8FC6EA
-8FC6E3
-8FC7A1
-8FC7AB
-8FC7C7
-8FC7C3
-8FC7CB
-8FC7CF
-8FC7D9
-8FF4CB
-8FF4CC
-8FC7E6
-8FC7EE
-8FC7FC
-8FC7EB
-8FC7F0
-8FC8B1
-8FC8E5
-8FC8F8
-8FC9A6
-8FC9AB
-8FC9AD
-8FF4CD
-8FC9CA
-8FC9D3
-8FC9E9
-8FC9E3
-8FC9FC
-8FC9F4
-8FC9F5
-8FF4CE
-8FCAB3
-8FCABD
-8FCAEF
-8FCAF1
-8FCBAE
-8FF4CF
-8FCBCA
-8FCBE6
-8FCBEA
-8FCBF0
-8FCBF4
-8FCBEE
-8FCCA5
-8FCBF9
-8FCCAB
-8FCCAE
-8FCCAD
-8FCCB2
-8FCCC2
-8FCCD0
-8FCCD9
-8FF4D0
-8FCDBB
-8FF4D1
-8FCEBB
-8FF4D2
-8FCEBA
-8FCEC3
-8FF4D3
-8FCEF2
-8FB3DD
-8FCFD5
-8FCFE2
-8FCFE9
-8FCFED
-8FF4D4
-8FF4D5
-8FF4D6
-8FF4D7
-8FD0E5
-8FF4D8
-8FD0E9
-8FD1E8
-8FF4D9
-8FF4DA
-8FD1EC
-8FD2BB
-8FF4DB
-8FD3E1
-8FD3E8
-8FD4A7
-8FF4DC
-8FF4DD
-8FD4D4
-8FD4F2
-8FD5AE
-8FF4DE
-8FD7DE
-8FF4DF
-8FD8A2
-8FD8B7
-8FD8C1
-8FD8D1
-8FD8F4
-8FD9C6
-8FD9C8
-8FD9D1
-8FF4E0
-8FF4E1
-8FF4E2
-8FF4E3
-8FF4E4
-8FDCD3
-8FDDC8
-8FDDD4
-8FDDEA
-8FDDFA
-8FDEA4
-8FDEB0
-8FF4E5
-8FDEB5
-8FDECB
-8FF4E6
-8FDFB9
-8FF4E7
-8FDFC3
-8FF4E8
-8FF4E9
-8FE0D9
-8FF4EA
-8FF4EB
-8FE1E2
-8FF4EC
-8FF4ED
-8FF4EE
-8FE2C7
-8FE3A8
-8FE3A6
-8FE3A9
-8FE3AF
-8FE3B0
-8FE3AA
-8FE3AB
-8FE3BC
-8FE3C1
-8FE3BF
-8FE3D5
-8FE3D8
-8FE3D6
-8FE3DF
-8FE3E3
-8FE3E1
-8FE3D4
-8FE3E9
-8FE4A6
-8FE3F1
-8FE3F2
-8FE4CB
-8FE4C1
-8FE4C3
-8FE4BE
-8FF4EF
-8FE4C0
-8FE4C7
-8FE4BF
-8FE4E0
-8FE4DE
-8FE4D1
-8FF4F0
-8FE4DC
-8FE4D2
-8FE4DB
-8FE4D4
-8FE4FA
-8FE4EF
-8FE5B3
-8FE5BF
-8FE5C9
-8FE5D0
-8FE5E2
-8FE5EA
-8FE5EB
-8FF4F1
-8FF4F2
-8FF4F3
-8FE6E8
-8FE6EF
-8FE7AC
-8FF4F4
-8FE7AE
-8FF4F5
-8FE7B1
-8FF4F6
-8FE7B2
-8FE8B1
-8FE8B6
-8FF4F7
-8FF4F8
-8FE8DD
-8FF4F9
-8FF4FA
-8FE9D1
-8FF4FB
-8FE9ED
-8FEACD
-8FF4FC
-8FEADB
-8FEAE6
-8FEAEA
-8FEBA5
-8FEBFB
-8FEBFA
-8FF4FD
-8FECD6
-8FF4FE
-F5A1
-F5A2
-F5A3
-F5A4
-F5A5
-F5A6
-F5A7
-F5A8
-F5A9
-F5AA
-F5AB
-F5AC
-F5AD
-F5AE
-F5AF
-F5B0
-F5B1
-F5B2
-F5B3
-F5B4
-F5B5
-F5B6
-F5B7
-F5B8
-F5B9
-F5BA
-F5BB
-F5BC
-F5BD
-F5BE
-F5BF
-F5C0
-F5C1
-F5C2
-F5C3
-F5C4
-F5C5
-F5C6
-F5C7
-F5C8
-F5C9
-F5CA
-F5CB
-F5CC
-F5CD
-F5CE
-F5CF
-F5D0
-F5D1
-F5D2
-F5D3
-F5D4
-F5D5
-F5D6
-F5D7
-F5D8
-F5D9
-F5DA
-F5DB
-F5DC
-F5DD
-F5DE
-F5DF
-F5E0
-F5E1
-F5E2
-F5E3
-F5E4
-F5E5
-F5E6
-F5E7
-F5E8
-F5E9
-F5EA
-F5EB
-F5EC
-F5ED
-F5EE
-F5EF
-F5F0
-F5F1
-F5F2
-F5F3
-F5F4
-F5F5
-F5F6
-F5F7
-F5F8
-F5F9
-F5FA
-F5FB
-F5FC
-F5FD
-F5FE
-F6A1
-F6A2
-F6A3
-F6A4
-F6A5
-F6A6
-F6A7
-F6A8
-F6A9
-F6AA
-F6AB
-F6AC
-F6AD
-F6AE
-F6AF
-F6B0
-F6B1
-F6B2
-F6B3
-F6B4
-F6B5
-F6B6
-F6B7
-F6B8
-F6B9
-F6BA
-F6BB
-F6BC
-F6BD
-F6BE
-F6BF
-F6C0
-F6C1
-F6C2
-F6C3
-F6C4
-F6C5
-F6C6
-F6C7
-F6C8
-F6C9
-F6CA
-F6CB
-F6CC
-F6CD
-F6CE
-F6CF
-F6D0
-F6D1
-F6D2
-F6D3
-F6D4
-F6D5
-F6D6
-F6D7
-F6D8
-F6D9
-F6DA
-F6DB
-F6DC
-F6DD
-F6DE
-F6DF
-F6E0
-F6E1
-F6E2
-F6E3
-F6E4
-F6E5
-F6E6
-F6E7
-F6E8
-F6E9
-F6EA
-F6EB
-F6EC
-F6ED
-F6EE
-F6EF
-F6F0
-F6F1
-F6F2
-F6F3
-F6F4
-F6F5
-F6F6
-F6F7
-F6F8
-F6F9
-F6FA
-F6FB
-F6FC
-F6FD
-F6FE
-F7A1
-F7A2
-F7A3
-F7A4
-F7A5
-F7A6
-F7A7
-F7A8
-F7A9
-F7AA
-F7AB
-F7AC
-F7AD
-F7AE
-F7AF
-F7B0
-F7B1
-F7B2
-F7B3
-F7B4
-F7B5
-F7B6
-F7B7
-F7B8
-F7B9
-F7BA
-F7BB
-F7BC
-F7BD
-F7BE
-F7BF
-F7C0
-F7C1
-F7C2
-F7C3
-F7C4
-F7C5
-F7C6
-F7C7
-F7C8
-F7C9
-F7CA
-F7CB
-F7CC
-F7CD
-F7CE
-F7CF
-F7D0
-F7D1
-F7D2
-F7D3
-F7D4
-F7D5
-F7D6
-F7D7
-F7D8
-F7D9
-F7DA
-F7DB
-F7DC
-F7DD
-F7DE
-F7DF
-F7E0
-F7E1
-F7E2
-F7E3
-F7E4
-F7E5
-F7E6
-F7E7
-F7E8
-F7E9
-F7EA
-F7EB
-F7EC
-F7ED
-F7EE
-F7EF
-F7F0
-F7F1
-F7F2
-F7F3
-F7F4
-F7F5
-F7F6
-F7F7
-F7F8
-F7F9
-F7FA
-F7FB
-F7FC
-F7FD
-F7FE
-F8A1
-F8A2
-F8A3
-F8A4
-F8A5
-F8A6
-F8A7
-F8A8
-F8A9
-F8AA
-F8AB
-F8AC
-F8AD
-F8AE
-F8AF
-F8B0
-F8B1
-F8B2
-F8B3
-F8B4
-F8B5
-F8B6
-F8B7
-F8B8
-F8B9
-F8BA
-F8BB
-F8BC
-F8BD
-F8BE
-F8BF
-F8C0
-F8C1
-F8C2
-F8C3
-F8C4
-F8C5
-F8C6
-F8C7
-F8C8
-F8C9
-F8CA
-F8CB
-F8CC
-F8CD
-F8CE
-F8CF
-F8D0
-F8D1
-F8D2
-F8D3
-F8D4
-F8D5
-F8D6
-F8D7
-F8D8
-F8D9
-F8DA
-F8DB
-F8DC
-F8DD
-F8DE
-F8DF
-F8E0
-F8E1
-F8E2
-F8E3
-F8E4
-F8E5
-F8E6
-F8E7
-F8E8
-F8E9
-F8EA
-F8EB
-F8EC
-F8ED
-F8EE
-F8EF
-F8F0
-F8F1
-F8F2
-F8F3
-F8F4
-F8F5
-F8F6
-F8F7
-F8F8
-F8F9
-F8FA
-F8FB
-F8FC
-F8FD
-F8FE
-F9A1
-F9A2
-F9A3
-F9A4
-F9A5
-F9A6
-F9A7
-F9A8
-F9A9
-F9AA
-F9AB
-F9AC
-F9AD
-F9AE
-F9AF
-F9B0
-F9B1
-F9B2
-F9B3
-F9B4
-F9B5
-F9B6
-F9B7
-F9B8
-F9B9
-F9BA
-F9BB
-F9BC
-F9BD
-F9BE
-F9BF
-F9C0
-F9C1
-F9C2
-F9C3
-F9C4
-F9C5
-F9C6
-F9C7
-F9C8
-F9C9
-F9CA
-F9CB
-F9CC
-F9CD
-F9CE
-F9CF
-F9D0
-F9D1
-F9D2
-F9D3
-F9D4
-F9D5
-F9D6
-F9D7
-F9D8
-F9D9
-F9DA
-F9DB
-F9DC
-F9DD
-F9DE
-F9DF
-F9E0
-F9E1
-F9E2
-F9E3
-F9E4
-F9E5
-F9E6
-F9E7
-F9E8
-F9E9
-F9EA
-F9EB
-F9EC
-F9ED
-F9EE
-F9EF
-F9F0
-F9F1
-F9F2
-F9F3
-F9F4
-F9F5
-F9F6
-F9F7
-F9F8
-F9F9
-F9FA
-F9FB
-F9FC
-F9FD
-F9FE
-FAA1
-FAA2
-FAA3
-FAA4
-FAA5
-FAA6
-FAA7
-FAA8
-FAA9
-FAAA
-FAAB
-FAAC
-FAAD
-FAAE
-FAAF
-FAB0
-FAB1
-FAB2
-FAB3
-FAB4
-FAB5
-FAB6
-FAB7
-FAB8
-FAB9
-FABA
-FABB
-FABC
-FABD
-FABE
-FABF
-FAC0
-FAC1
-FAC2
-FAC3
-FAC4
-FAC5
-FAC6
-FAC7
-FAC8
-FAC9
-FACA
-FACB
-FACC
-FACD
-FACE
-FACF
-FAD0
-FAD1
-FAD2
-FAD3
-FAD4
-FAD5
-FAD6
-FAD7
-FAD8
-FAD9
-FADA
-FADB
-FADC
-FADD
-FADE
-FADF
-FAE0
-FAE1
-FAE2
-FAE3
-FAE4
-FAE5
-FAE6
-FAE7
-FAE8
-FAE9
-FAEA
-FAEB
-FAEC
-FAED
-FAEE
-FAEF
-FAF0
-FAF1
-FAF2
-FAF3
-FAF4
-FAF5
-FAF6
-FAF7
-FAF8
-FAF9
-FAFA
-FAFB
-FAFC
-FAFD
-FAFE
-FBA1
-FBA2
-FBA3
-FBA4
-FBA5
-FBA6
-FBA7
-FBA8
-FBA9
-FBAA
-FBAB
-FBAC
-FBAD
-FBAE
-FBAF
-FBB0
-FBB1
-FBB2
-FBB3
-FBB4
-FBB5
-FBB6
-FBB7
-FBB8
-FBB9
-FBBA
-FBBB
-FBBC
-FBBD
-FBBE
-FBBF
-FBC0
-FBC1
-FBC2
-FBC3
-FBC4
-FBC5
-FBC6
-FBC7
-FBC8
-FBC9
-FBCA
-FBCB
-FBCC
-FBCD
-FBCE
-FBCF
-FBD0
-FBD1
-FBD2
-FBD3
-FBD4
-FBD5
-FBD6
-FBD7
-FBD8
-FBD9
-FBDA
-FBDB
-FBDC
-FBDD
-FBDE
-FBDF
-FBE0
-FBE1
-FBE2
-FBE3
-FBE4
-FBE5
-FBE6
-FBE7
-FBE8
-FBE9
-FBEA
-FBEB
-FBEC
-FBED
-FBEE
-FBEF
-FBF0
-FBF1
-FBF2
-FBF3
-FBF4
-FBF5
-FBF6
-FBF7
-FBF8
-FBF9
-FBFA
-FBFB
-FBFC
-FBFD
-FBFE
-FCA1
-FCA2
-FCA3
-FCA4
-FCA5
-FCA6
-FCA7
-FCA8
-FCA9
-FCAA
-FCAB
-FCAC
-FCAD
-FCAE
-FCAF
-FCB0
-FCB1
-FCB2
-FCB3
-FCB4
-FCB5
-FCB6
-FCB7
-FCB8
-FCB9
-FCBA
-FCBB
-FCBC
-FCBD
-FCBE
-FCBF
-FCC0
-FCC1
-FCC2
-FCC3
-FCC4
-FCC5
-FCC6
-FCC7
-FCC8
-FCC9
-FCCA
-FCCB
-FCCC
-FCCD
-FCCE
-FCCF
-FCD0
-FCD1
-FCD2
-FCD3
-FCD4
-FCD5
-FCD6
-FCD7
-FCD8
-FCD9
-FCDA
-FCDB
-FCDC
-FCDD
-FCDE
-FCDF
-FCE0
-FCE1
-FCE2
-FCE3
-FCE4
-FCE5
-FCE6
-FCE7
-FCE8
-FCE9
-FCEA
-FCEB
-FCEC
-FCED
-FCEE
-FCEF
-FCF0
-FCF1
-FCF2
-FCF3
-FCF4
-FCF5
-FCF6
-FCF7
-FCF8
-FCF9
-FCFA
-FCFB
-FCFC
-FCFD
-FCFE
-FDA1
-FDA2
-FDA3
-FDA4
-FDA5
-FDA6
-FDA7
-FDA8
-FDA9
-FDAA
-FDAB
-FDAC
-FDAD
-FDAE
-FDAF
-FDB0
-FDB1
-FDB2
-FDB3
-FDB4
-FDB5
-FDB6
-FDB7
-FDB8
-FDB9
-FDBA
-FDBB
-FDBC
-FDBD
-FDBE
-FDBF
-FDC0
-FDC1
-FDC2
-FDC3
-FDC4
-FDC5
-FDC6
-FDC7
-FDC8
-FDC9
-FDCA
-FDCB
-FDCC
-FDCD
-FDCE
-FDCF
-FDD0
-FDD1
-FDD2
-FDD3
-FDD4
-FDD5
-FDD6
-FDD7
-FDD8
-FDD9
-FDDA
-FDDB
-FDDC
-FDDD
-FDDE
-FDDF
-FDE0
-FDE1
-FDE2
-FDE3
-FDE4
-FDE5
-FDE6
-FDE7
-FDE8
-FDE9
-FDEA
-FDEB
-FDEC
-FDED
-FDEE
-FDEF
-FDF0
-FDF1
-FDF2
-FDF3
-FDF4
-FDF5
-FDF6
-FDF7
-FDF8
-FDF9
-FDFA
-FDFB
-FDFC
-FDFD
-FDFE
-FEA1
-FEA2
-FEA3
-FEA4
-FEA5
-FEA6
-FEA7
-FEA8
-FEA9
-FEAA
-FEAB
-FEAC
-FEAD
-FEAE
-FEAF
-FEB0
-FEB1
-FEB2
-FEB3
-FEB4
-FEB5
-FEB6
-FEB7
-FEB8
-FEB9
-FEBA
-FEBB
-FEBC
-FEBD
-FEBE
-FEBF
-FEC0
-FEC1
-FEC2
-FEC3
-FEC4
-FEC5
-FEC6
-FEC7
-FEC8
-FEC9
-FECA
-FECB
-FECC
-FECD
-FECE
-FECF
-FED0
-FED1
-FED2
-FED3
-FED4
-FED5
-FED6
-FED7
-FED8
-FED9
-FEDA
-FEDB
-FEDC
-FEDD
-FEDE
-FEDF
-FEE0
-FEE1
-FEE2
-FEE3
-FEE4
-FEE5
-FEE6
-FEE7
-FEE8
-FEE9
-FEEA
-FEEB
-FEEC
-FEED
-FEEE
-FEEF
-FEF0
-FEF1
-FEF2
-FEF3
-FEF4
-FEF5
-FEF6
-FEF7
-FEF8
-FEF9
-FEFA
-FEFB
-FEFC
-FEFD
-FEFE
-8FF5A1
-8FF5A2
-8FF5A3
-8FF5A4
-8FF5A5
-8FF5A6
-8FF5A7
-8FF5A8
-8FF5A9
-8FF5AA
-8FF5AB
-8FF5AC
-8FF5AD
-8FF5AE
-8FF5AF
-8FF5B0
-8FF5B1
-8FF5B2
-8FF5B3
-8FF5B4
-8FF5B5
-8FF5B6
-8FF5B7
-8FF5B8
-8FF5B9
-8FF5BA
-8FF5BB
-8FF5BC
-8FF5BD
-8FF5BE
-8FF5BF
-8FF5C0
-8FF5C1
-8FF5C2
-8FF5C3
-8FF5C4
-8FF5C5
-8FF5C6
-8FF5C7
-8FF5C8
-8FF5C9
-8FF5CA
-8FF5CB
-8FF5CC
-8FF5CD
-8FF5CE
-8FF5CF
-8FF5D0
-8FF5D1
-8FF5D2
-8FF5D3
-8FF5D4
-8FF5D5
-8FF5D6
-8FF5D7
-8FF5D8
-8FF5D9
-8FF5DA
-8FF5DB
-8FF5DC
-8FF5DD
-8FF5DE
-8FF5DF
-8FF5E0
-8FF5E1
-8FF5E2
-8FF5E3
-8FF5E4
-8FF5E5
-8FF5E6
-8FF5E7
-8FF5E8
-8FF5E9
-8FF5EA
-8FF5EB
-8FF5EC
-8FF5ED
-8FF5EE
-8FF5EF
-8FF5F0
-8FF5F1
-8FF5F2
-8FF5F3
-8FF5F4
-8FF5F5
-8FF5F6
-8FF5F7
-8FF5F8
-8FF5F9
-8FF5FA
-8FF5FB
-8FF5FC
-8FF5FD
-8FF5FE
-8FF6A1
-8FF6A2
-8FF6A3
-8FF6A4
-8FF6A5
-8FF6A6
-8FF6A7
-8FF6A8
-8FF6A9
-8FF6AA
-8FF6AB
-8FF6AC
-8FF6AD
-8FF6AE
-8FF6AF
-8FF6B0
-8FF6B1
-8FF6B2
-8FF6B3
-8FF6B4
-8FF6B5
-8FF6B6
-8FF6B7
-8FF6B8
-8FF6B9
-8FF6BA
-8FF6BB
-8FF6BC
-8FF6BD
-8FF6BE
-8FF6BF
-8FF6C0
-8FF6C1
-8FF6C2
-8FF6C3
-8FF6C4
-8FF6C5
-8FF6C6
-8FF6C7
-8FF6C8
-8FF6C9
-8FF6CA
-8FF6CB
-8FF6CC
-8FF6CD
-8FF6CE
-8FF6CF
-8FF6D0
-8FF6D1
-8FF6D2
-8FF6D3
-8FF6D4
-8FF6D5
-8FF6D6
-8FF6D7
-8FF6D8
-8FF6D9
-8FF6DA
-8FF6DB
-8FF6DC
-8FF6DD
-8FF6DE
-8FF6DF
-8FF6E0
-8FF6E1
-8FF6E2
-8FF6E3
-8FF6E4
-8FF6E5
-8FF6E6
-8FF6E7
-8FF6E8
-8FF6E9
-8FF6EA
-8FF6EB
-8FF6EC
-8FF6ED
-8FF6EE
-8FF6EF
-8FF6F0
-8FF6F1
-8FF6F2
-8FF6F3
-8FF6F4
-8FF6F5
-8FF6F6
-8FF6F7
-8FF6F8
-8FF6F9
-8FF6FA
-8FF6FB
-8FF6FC
-8FF6FD
-8FF6FE
-8FF7A1
-8FF7A2
-8FF7A3
-8FF7A4
-8FF7A5
-8FF7A6
-8FF7A7
-8FF7A8
-8FF7A9
-8FF7AA
-8FF7AB
-8FF7AC
-8FF7AD
-8FF7AE
-8FF7AF
-8FF7B0
-8FF7B1
-8FF7B2
-8FF7B3
-8FF7B4
-8FF7B5
-8FF7B6
-8FF7B7
-8FF7B8
-8FF7B9
-8FF7BA
-8FF7BB
-8FF7BC
-8FF7BD
-8FF7BE
-8FF7BF
-8FF7C0
-8FF7C1
-8FF7C2
-8FF7C3
-8FF7C4
-8FF7C5
-8FF7C6
-8FF7C7
-8FF7C8
-8FF7C9
-8FF7CA
-8FF7CB
-8FF7CC
-8FF7CD
-8FF7CE
-8FF7CF
-8FF7D0
-8FF7D1
-8FF7D2
-8FF7D3
-8FF7D4
-8FF7D5
-8FF7D6
-8FF7D7
-8FF7D8
-8FF7D9
-8FF7DA
-8FF7DB
-8FF7DC
-8FF7DD
-8FF7DE
-8FF7DF
-8FF7E0
-8FF7E1
-8FF7E2
-8FF7E3
-8FF7E4
-8FF7E5
-8FF7E6
-8FF7E7
-8FF7E8
-8FF7E9
-8FF7EA
-8FF7EB
-8FF7EC
-8FF7ED
-8FF7EE
-8FF7EF
-8FF7F0
-8FF7F1
-8FF7F2
-8FF7F3
-8FF7F4
-8FF7F5
-8FF7F6
-8FF7F7
-8FF7F8
-8FF7F9
-8FF7FA
-8FF7FB
-8FF7FC
-8FF7FD
-8FF7FE
-8FF8A1
-8FF8A2
-8FF8A3
-8FF8A4
-8FF8A5
-8FF8A6
-8FF8A7
-8FF8A8
-8FF8A9
-8FF8AA
-8FF8AB
-8FF8AC
-8FF8AD
-8FF8AE
-8FF8AF
-8FF8B0
-8FF8B1
-8FF8B2
-8FF8B3
-8FF8B4
-8FF8B5
-8FF8B6
-8FF8B7
-8FF8B8
-8FF8B9
-8FF8BA
-8FF8BB
-8FF8BC
-8FF8BD
-8FF8BE
-8FF8BF
-8FF8C0
-8FF8C1
-8FF8C2
-8FF8C3
-8FF8C4
-8FF8C5
-8FF8C6
-8FF8C7
-8FF8C8
-8FF8C9
-8FF8CA
-8FF8CB
-8FF8CC
-8FF8CD
-8FF8CE
-8FF8CF
-8FF8D0
-8FF8D1
-8FF8D2
-8FF8D3
-8FF8D4
-8FF8D5
-8FF8D6
-8FF8D7
-8FF8D8
-8FF8D9
-8FF8DA
-8FF8DB
-8FF8DC
-8FF8DD
-8FF8DE
-8FF8DF
-8FF8E0
-8FF8E1
-8FF8E2
-8FF8E3
-8FF8E4
-8FF8E5
-8FF8E6
-8FF8E7
-8FF8E8
-8FF8E9
-8FF8EA
-8FF8EB
-8FF8EC
-8FF8ED
-8FF8EE
-8FF8EF
-8FF8F0
-8FF8F1
-8FF8F2
-8FF8F3
-8FF8F4
-8FF8F5
-8FF8F6
-8FF8F7
-8FF8F8
-8FF8F9
-8FF8FA
-8FF8FB
-8FF8FC
-8FF8FD
-8FF8FE
-8FF9A1
-8FF9A2
-8FF9A3
-8FF9A4
-8FF9A5
-8FF9A6
-8FF9A7
-8FF9A8
-8FF9A9
-8FF9AA
-8FF9AB
-8FF9AC
-8FF9AD
-8FF9AE
-8FF9AF
-8FF9B0
-8FF9B1
-8FF9B2
-8FF9B3
-8FF9B4
-8FF9B5
-8FF9B6
-8FF9B7
-8FF9B8
-8FF9B9
-8FF9BA
-8FF9BB
-8FF9BC
-8FF9BD
-8FF9BE
-8FF9BF
-8FF9C0
-8FF9C1
-8FF9C2
-8FF9C3
-8FF9C4
-8FF9C5
-8FF9C6
-8FF9C7
-8FF9C8
-8FF9C9
-8FF9CA
-8FF9CB
-8FF9CC
-8FF9CD
-8FF9CE
-8FF9CF
-8FF9D0
-8FF9D1
-8FF9D2
-8FF9D3
-8FF9D4
-8FF9D5
-8FF9D6
-8FF9D7
-8FF9D8
-8FF9D9
-8FF9DA
-8FF9DB
-8FF9DC
-8FF9DD
-8FF9DE
-8FF9DF
-8FF9E0
-8FF9E1
-8FF9E2
-8FF9E3
-8FF9E4
-8FF9E5
-8FF9E6
-8FF9E7
-8FF9E8
-8FF9E9
-8FF9EA
-8FF9EB
-8FF9EC
-8FF9ED
-8FF9EE
-8FF9EF
-8FF9F0
-8FF9F1
-8FF9F2
-8FF9F3
-8FF9F4
-8FF9F5
-8FF9F6
-8FF9F7
-8FF9F8
-8FF9F9
-8FF9FA
-8FF9FB
-8FF9FC
-8FF9FD
-8FF9FE
-8FFAA1
-8FFAA2
-8FFAA3
-8FFAA4
-8FFAA5
-8FFAA6
-8FFAA7
-8FFAA8
-8FFAA9
-8FFAAA
-8FFAAB
-8FFAAC
-8FFAAD
-8FFAAE
-8FFAAF
-8FFAB0
-8FFAB1
-8FFAB2
-8FFAB3
-8FFAB4
-8FFAB5
-8FFAB6
-8FFAB7
-8FFAB8
-8FFAB9
-8FFABA
-8FFABB
-8FFABC
-8FFABD
-8FFABE
-8FFABF
-8FFAC0
-8FFAC1
-8FFAC2
-8FFAC3
-8FFAC4
-8FFAC5
-8FFAC6
-8FFAC7
-8FFAC8
-8FFAC9
-8FFACA
-8FFACB
-8FFACC
-8FFACD
-8FFACE
-8FFACF
-8FFAD0
-8FFAD1
-8FFAD2
-8FFAD3
-8FFAD4
-8FFAD5
-8FFAD6
-8FFAD7
-8FFAD8
-8FFAD9
-8FFADA
-8FFADB
-8FFADC
-8FFADD
-8FFADE
-8FFADF
-8FFAE0
-8FFAE1
-8FFAE2
-8FFAE3
-8FFAE4
-8FFAE5
-8FFAE6
-8FFAE7
-8FFAE8
-8FFAE9
-8FFAEA
-8FFAEB
-8FFAEC
-8FFAED
-8FFAEE
-8FFAEF
-8FFAF0
-8FFAF1
-8FFAF2
-8FFAF3
-8FFAF4
-8FFAF5
-8FFAF6
-8FFAF7
-8FFAF8
-8FFAF9
-8FFAFA
-8FFAFB
-8FFAFC
-8FFAFD
-8FFAFE
-8FFBA1
-8FFBA2
-8FFBA3
-8FFBA4
-8FFBA5
-8FFBA6
-8FFBA7
-8FFBA8
-8FFBA9
-8FFBAA
-8FFBAB
-8FFBAC
-8FFBAD
-8FFBAE
-8FFBAF
-8FFBB0
-8FFBB1
-8FFBB2
-8FFBB3
-8FFBB4
-8FFBB5
-8FFBB6
-8FFBB7
-8FFBB8
-8FFBB9
-8FFBBA
-8FFBBB
-8FFBBC
-8FFBBD
-8FFBBE
-8FFBBF
-8FFBC0
-8FFBC1
-8FFBC2
-8FFBC3
-8FFBC4
-8FFBC5
-8FFBC6
-8FFBC7
-8FFBC8
-8FFBC9
-8FFBCA
-8FFBCB
-8FFBCC
-8FFBCD
-8FFBCE
-8FFBCF
-8FFBD0
-8FFBD1
-8FFBD2
-8FFBD3
-8FFBD4
-8FFBD5
-8FFBD6
-8FFBD7
-8FFBD8
-8FFBD9
-8FFBDA
-8FFBDB
-8FFBDC
-8FFBDD
-8FFBDE
-8FFBDF
-8FFBE0
-8FFBE1
-8FFBE2
-8FFBE3
-8FFBE4
-8FFBE5
-8FFBE6
-8FFBE7
-8FFBE8
-8FFBE9
-8FFBEA
-8FFBEB
-8FFBEC
-8FFBED
-8FFBEE
-8FFBEF
-8FFBF0
-8FFBF1
-8FFBF2
-8FFBF3
-8FFBF4
-8FFBF5
-8FFBF6
-8FFBF7
-8FFBF8
-8FFBF9
-8FFBFA
-8FFBFB
-8FFBFC
-8FFBFD
-8FFBFE
-8FFCA1
-8FFCA2
-8FFCA3
-8FFCA4
-8FFCA5
-8FFCA6
-8FFCA7
-8FFCA8
-8FFCA9
-8FFCAA
-8FFCAB
-8FFCAC
-8FFCAD
-8FFCAE
-8FFCAF
-8FFCB0
-8FFCB1
-8FFCB2
-8FFCB3
-8FFCB4
-8FFCB5
-8FFCB6
-8FFCB7
-8FFCB8
-8FFCB9
-8FFCBA
-8FFCBB
-8FFCBC
-8FFCBD
-8FFCBE
-8FFCBF
-8FFCC0
-8FFCC1
-8FFCC2
-8FFCC3
-8FFCC4
-8FFCC5
-8FFCC6
-8FFCC7
-8FFCC8
-8FFCC9
-8FFCCA
-8FFCCB
-8FFCCC
-8FFCCD
-8FFCCE
-8FFCCF
-8FFCD0
-8FFCD1
-8FFCD2
-8FFCD3
-8FFCD4
-8FFCD5
-8FFCD6
-8FFCD7
-8FFCD8
-8FFCD9
-8FFCDA
-8FFCDB
-8FFCDC
-8FFCDD
-8FFCDE
-8FFCDF
-8FFCE0
-8FFCE1
-8FFCE2
-8FFCE3
-8FFCE4
-8FFCE5
-8FFCE6
-8FFCE7
-8FFCE8
-8FFCE9
-8FFCEA
-8FFCEB
-8FFCEC
-8FFCED
-8FFCEE
-8FFCEF
-8FFCF0
-8FFCF1
-8FFCF2
-8FFCF3
-8FFCF4
-8FFCF5
-8FFCF6
-8FFCF7
-8FFCF8
-8FFCF9
-8FFCFA
-8FFCFB
-8FFCFC
-8FFCFD
-8FFCFE
-8FFDA1
-8FFDA2
-8FFDA3
-8FFDA4
-8FFDA5
-8FFDA6
-8FFDA7
-8FFDA8
-8FFDA9
-8FFDAA
-8FFDAB
-8FFDAC
-8FFDAD
-8FFDAE
-8FFDAF
-8FFDB0
-8FFDB1
-8FFDB2
-8FFDB3
-8FFDB4
-8FFDB5
-8FFDB6
-8FFDB7
-8FFDB8
-8FFDB9
-8FFDBA
-8FFDBB
-8FFDBC
-8FFDBD
-8FFDBE
-8FFDBF
-8FFDC0
-8FFDC1
-8FFDC2
-8FFDC3
-8FFDC4
-8FFDC5
-8FFDC6
-8FFDC7
-8FFDC8
-8FFDC9
-8FFDCA
-8FFDCB
-8FFDCC
-8FFDCD
-8FFDCE
-8FFDCF
-8FFDD0
-8FFDD1
-8FFDD2
-8FFDD3
-8FFDD4
-8FFDD5
-8FFDD6
-8FFDD7
-8FFDD8
-8FFDD9
-8FFDDA
-8FFDDB
-8FFDDC
-8FFDDD
-8FFDDE
-8FFDDF
-8FFDE0
-8FFDE1
-8FFDE2
-8FFDE3
-8FFDE4
-8FFDE5
-8FFDE6
-8FFDE7
-8FFDE8
-8FFDE9
-8FFDEA
-8FFDEB
-8FFDEC
-8FFDED
-8FFDEE
-8FFDEF
-8FFDF0
-8FFDF1
-8FFDF2
-8FFDF3
-8FFDF4
-8FFDF5
-8FFDF6
-8FFDF7
-8FFDF8
-8FFDF9
-8FFDFA
-8FFDFB
-8FFDFC
-8FFDFD
-8FFDFE
-8FFEA1
-8FFEA2
-8FFEA3
-8FFEA4
-8FFEA5
-8FFEA6
-8FFEA7
-8FFEA8
-8FFEA9
-8FFEAA
-8FFEAB
-8FFEAC
-8FFEAD
-8FFEAE
-8FFEAF
-8FFEB0
-8FFEB1
-8FFEB2
-8FFEB3
-8FFEB4
-8FFEB5
-8FFEB6
-8FFEB7
-8FFEB8
-8FFEB9
-8FFEBA
-8FFEBB
-8FFEBC
-8FFEBD
-8FFEBE
-8FFEBF
-8FFEC0
-8FFEC1
-8FFEC2
-8FFEC3
-8FFEC4
-8FFEC5
-8FFEC6
-8FFEC7
-8FFEC8
-8FFEC9
-8FFECA
-8FFECB
-8FFECC
-8FFECD
-8FFECE
-8FFECF
-8FFED0
-8FFED1
-8FFED2
-8FFED3
-8FFED4
-8FFED5
-8FFED6
-8FFED7
-8FFED8
-8FFED9
-8FFEDA
-8FFEDB
-8FFEDC
-8FFEDD
-8FFEDE
-8FFEDF
-8FFEE0
-8FFEE1
-8FFEE2
-8FFEE3
-8FFEE4
-8FFEE5
-8FFEE6
-8FFEE7
-8FFEE8
-8FFEE9
-8FFEEA
-8FFEEB
-8FFEEC
-8FFEED
-8FFEEE
-8FFEEF
-8FFEF0
-8FFEF1
-8FFEF2
-8FFEF3
-8FFEF4
-8FFEF5
-8FFEF6
-8FFEF7
-8FFEF8
-8FFEF9
-8FFEFA
-8FFEFB
-8FFEFC
-8FFEFD
-8FFEFE
-DROP TABLE t1;
-DROP TABLE t2;
-DROP TABLE t3;
-DROP TABLE t4;
-SET collation_connection='cp932_japanese_ci';
-create table t1 select repeat('a',4000) a;
-delete from t1;
-insert into t1 values ('a'), ('a '), ('a\t');
-select collation(a),hex(a) from t1 order by a;
-collation(a) hex(a)
-cp932_japanese_ci 6109
-cp932_japanese_ci 61
-cp932_japanese_ci 6120
-drop table t1;
-CREATE TABLE t1 AS
-SELECT 10 AS a, REPEAT('a',20) AS b, REPEAT('a',8) AS c, REPEAT('a',8) AS d;
-ALTER TABLE t1 ADD PRIMARY KEY(a), ADD KEY(b);
-INSERT INTO t1 (a, b) VALUES (1, repeat(0xF1F2,5));
-INSERT INTO t1 (a, b) VALUES (2, repeat(0xF1F2,10));
-INSERT INTO t1 (a, b) VALUES (3, repeat(0xF1F2,11));
-INSERT INTO t1 (a, b) VALUES (4, repeat(0xF1F2,12));
-SELECT hex(concat(repeat(0xF1F2, 10), '%'));
-hex(concat(repeat(0xF1F2, 10), '%'))
-F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F225
-3 rows expected
-SELECT a, hex(b), c FROM t1 WHERE b LIKE concat(repeat(0xF1F2,10), '%');
-a hex(b) c
-2 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
-3 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
-4 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
-DROP TABLE t1;
-SET collation_connection='cp932_bin';
-create table t1 select repeat('a',4000) a;
-delete from t1;
-insert into t1 values ('a'), ('a '), ('a\t');
-select collation(a),hex(a) from t1 order by a;
-collation(a) hex(a)
-cp932_bin 6109
-cp932_bin 61
-cp932_bin 6120
-drop table t1;
-CREATE TABLE t1 AS
-SELECT 10 AS a, REPEAT('a',20) AS b, REPEAT('a',8) AS c, REPEAT('a',8) AS d;
-ALTER TABLE t1 ADD PRIMARY KEY(a), ADD KEY(b);
-INSERT INTO t1 (a, b) VALUES (1, repeat(0xF1F2,5));
-INSERT INTO t1 (a, b) VALUES (2, repeat(0xF1F2,10));
-INSERT INTO t1 (a, b) VALUES (3, repeat(0xF1F2,11));
-INSERT INTO t1 (a, b) VALUES (4, repeat(0xF1F2,12));
-SELECT hex(concat(repeat(0xF1F2, 10), '%'));
-hex(concat(repeat(0xF1F2, 10), '%'))
-F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F225
-3 rows expected
-SELECT a, hex(b), c FROM t1 WHERE b LIKE concat(repeat(0xF1F2,10), '%');
-a hex(b) c
-2 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
-3 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
-4 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
-DROP TABLE t1;
-create table t2 (a char(1));
-insert into t2 values ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
-insert into t2 values ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
-create table t1 (
-a varchar(2) character set cp932
-) engine=myisam;
-insert into t1
-select unhex(concat(t24.a, t23.a, t22.a, t21.a))
-from t2 t21, t2 t22, t2 t23, t2 t24;
-delete from t1 where a='';
-alter table t1 add key(a);
-check table t1;
-Table Op Msg_type Msg_text
-test.t1 check status OK
-drop table t1;
-drop table t2;
-create table t1 (col1 varchar(1)) character set cp932;
-insert into t1 values ('a');
-insert into t1 values ('ab');
-Warnings:
-Warning 1265 Data truncated for column 'col1' at row 1
-select * from t1;
-col1
-a
-a
-insert into t1 values ('abc');
-Warnings:
-Warning 1265 Data truncated for column 'col1' at row 1
-select * from t1;
-col1
-a
-a
-a
-drop table t1;
-\
-\
-c_cp932
-\
-\
-\
-ソ
-ソ
-\
-\
-set names utf8;
-create table t1 (a text) default character set cp932;
-insert into t1 values (_utf8 0xE38182);
-show warnings;
-Level Code Message
-select * from t1;
-a
-あ
-select hex(a) from t1;
-hex(a)
-82A0
-drop table t1;
diff --git a/mysql-test/r/ctype_cp932_binlog_row.result b/mysql-test/r/ctype_cp932_binlog_row.result
new file mode 100644
index 00000000000..cbac6b14669
--- /dev/null
+++ b/mysql-test/r/ctype_cp932_binlog_row.result
@@ -0,0 +1,19 @@
+drop table if exists t1;
+set names cp932;
+set character_set_database = cp932;
+RESET MASTER;
+CREATE TABLE t1(f1 blob);
+PREPARE stmt1 FROM 'INSERT INTO t1 VALUES(?)';
+SET @var1= x'8300';
+EXECUTE stmt1 USING @var1;
+show binlog events from <binlog_start>;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # use `test`; CREATE TABLE t1(f1 blob)
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
+SELECT HEX(f1) FROM t1;
+HEX(f1)
+8300
+DROP table t1;
diff --git a/mysql-test/r/ctype_cp932_binlog.result b/mysql-test/r/ctype_cp932_binlog_stm.result
index 7142a475dfe..044885d1ea7 100644
--- a/mysql-test/r/ctype_cp932_binlog.result
+++ b/mysql-test/r/ctype_cp932_binlog_stm.result
@@ -6,10 +6,10 @@ CREATE TABLE t1(f1 blob);
PREPARE stmt1 FROM 'INSERT INTO t1 VALUES(?)';
SET @var1= x'8300';
EXECUTE stmt1 USING @var1;
-SHOW BINLOG EVENTS FROM 98;
+show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 98 Query 1 188 use `test`; CREATE TABLE t1(f1 blob)
-master-bin.000001 188 Query 1 283 use `test`; INSERT INTO t1 VALUES(0x8300)
+master-bin.000001 # Query # # use `test`; CREATE TABLE t1(f1 blob)
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES(0x8300)
SELECT HEX(f1) FROM t1;
HEX(f1)
8300
@@ -29,17 +29,29 @@ HEX(s1) HEX(s2) d
466F6F2773206120426172 ED40ED41ED42 47.93
DROP PROCEDURE bug18293|
DROP TABLE t4|
-SHOW BINLOG EVENTS FROM 362|
+SHOW BINLOG EVENTS FROM 370|
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 362 Query 1 528 use `test`; CREATE TABLE t4 (s1 CHAR(50) CHARACTER SET latin1,
+master-bin.000001 370 Query 1 536 use `test`; CREATE TABLE t4 (s1 CHAR(50) CHARACTER SET latin1,
s2 CHAR(50) CHARACTER SET cp932,
d DECIMAL(10,2))
-master-bin.000001 528 Query 1 777 use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `bug18293`(IN ins1 CHAR(50),
+master-bin.000001 536 Query 1 785 use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `bug18293`(IN ins1 CHAR(50),
IN ins2 CHAR(50) CHARACTER SET cp932,
IN ind DECIMAL(10,2))
BEGIN
INSERT INTO t4 VALUES (ins1, ins2, ind);
END
-master-bin.000001 777 Query 1 1044 use `test`; INSERT INTO t4 VALUES ( NAME_CONST('ins1',_latin1 0x466F6F2773206120426172 COLLATE 'latin1_swedish_ci'), NAME_CONST('ins2',_cp932 0xED40ED41ED42 COLLATE 'cp932_japanese_ci'), NAME_CONST('ind',47.93))
-master-bin.000001 1044 Query 1 1133 use `test`; DROP PROCEDURE bug18293
-master-bin.000001 1133 Query 1 1212 use `test`; DROP TABLE t4
+master-bin.000001 785 Query 1 1049 use `test`; INSERT INTO t4 VALUES ( NAME_CONST('ins1',_latin1 0x466F6F2773206120426172 COLLATE 'latin1_swedish_ci'), NAME_CONST('ins2',_cp932 0xED40ED41ED42 COLLATE 'cp932_japanese_ci'), NAME_CONST('ind',47.93))
+master-bin.000001 1049 Query 1 1138 use `test`; DROP PROCEDURE bug18293
+master-bin.000001 1138 Query 1 1217 use `test`; DROP TABLE t4
+End of 5.0 tests
+SHOW BINLOG EVENTS FROM 365;
+ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error
+Bug#44352 UPPER/LOWER function doesn't work correctly on cp932 and sjis environment.
+CREATE TABLE t1 (a varchar(16)) character set cp932;
+INSERT INTO t1 VALUES (0x8372835E),(0x8352835E);
+SELECT hex(a), hex(lower(a)), hex(upper(a)) FROM t1 ORDER BY binary(a);
+hex(a) hex(lower(a)) hex(upper(a))
+8352835E 8352835E 8352835E
+8372835E 8372835E 8372835E
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/ctype_create.result b/mysql-test/r/ctype_create.result
index 63bae33c6e1..35461fce45a 100644
--- a/mysql-test/r/ctype_create.result
+++ b/mysql-test/r/ctype_create.result
@@ -12,7 +12,7 @@ CREATE TABLE mysqltest2.t1 (a char(10));
SHOW CREATE TABLE mysqltest2.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin5
DROP TABLE mysqltest2.t1;
ALTER DATABASE mysqltest2 DEFAULT CHARACTER SET latin7;
@@ -20,7 +20,7 @@ CREATE TABLE mysqltest2.t1 (a char(10));
SHOW CREATE TABLE mysqltest2.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin7
DROP DATABASE mysqltest2;
CREATE DATABASE mysqltest2 CHARACTER SET latin2;
@@ -28,7 +28,7 @@ CREATE TABLE mysqltest2.t1 (a char(10));
SHOW CREATE TABLE mysqltest2.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin2
DROP DATABASE mysqltest2;
USE mysqltest1;
@@ -36,14 +36,14 @@ CREATE TABLE t1 (a char(10));
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1251
DROP TABLE t1;
CREATE TABLE t1 (a char(10)) DEFAULT CHARACTER SET latin1;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (a char(10))
@@ -51,7 +51,7 @@ DEFAULT CHARACTER SET latin1 COLLATE latin1_german1_ci;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) collate latin1_german1_ci default NULL
+ `a` char(10) COLLATE latin1_german1_ci DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci
DROP TABLE t1;
create table t1 (a char) character set latin1 character set latin2;
@@ -72,3 +72,7 @@ mysqltest2 CREATE DATABASE `mysqltest2` /*!40100 DEFAULT CHARACTER SET latin2 */
drop database mysqltest2;
ALTER DATABASE DEFAULT CHARACTER SET latin2;
ERROR 3D000: No database selected
+ALTER DATABASE aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa DEFAULT CHARACTER SET latin2;
+ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+ALTER DATABASE `` DEFAULT CHARACTER SET latin2;
+ERROR 42000: Incorrect database name ''
diff --git a/mysql-test/r/ctype_euckr.result b/mysql-test/r/ctype_euckr.result
index 882c8880337..3cc74864400 100644
--- a/mysql-test/r/ctype_euckr.result
+++ b/mysql-test/r/ctype_euckr.result
@@ -78,8 +78,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=euckr
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
@@ -276,3 +276,23982 @@ A181 ECA3A6
A1FE EFBFA2
drop table t1;
End of 5.0 tests
+Start of 5.4 tests
+#
+# WL#3997 New euckr characters
+#
+SET NAMES utf8;
+CREATE TABLE t1 (a varchar(10) character set euckr);
+INSERT INTO t1 VALUES (0xA2E6), (0xA2E7);
+SELECT hex(a), hex(@utf8:=convert(a using utf8)), hex(convert(@utf8 using euckr)) FROM t1;
+hex(a) hex(@utf8:=convert(a using utf8)) hex(convert(@utf8 using euckr))
+A2E6 E282AC A2E6
+A2E7 C2AE A2E7
+DROP TABLE t1;
+#
+# WL#3332 Korean Enhancements
+# euckr valid codes are now [81..FE][41..5A,61..7A,81..FE]
+#
+CREATE TABLE t1 (a binary(1), key(a));
+CREATE TABLE t2 (s VARCHAR(4), a VARCHAR(1) CHARACTER SET euckr);
+INSERT INTO t2
+SELECT hex(concat(t11.a, t12.a)), concat(t11.a, t12.a)
+FROM t1 t11, t1 t12
+WHERE t11.a >= 0x81 AND t11.a <= 0xFE
+AND t12.a >= 0x41 AND t12.a <= 0xFE
+ORDER BY t11.a, t12.a;
+SELECT s as bad_code FROM t2 WHERE a='' ORDER BY s;
+bad_code
+815B
+815C
+815D
+815E
+815F
+8160
+817B
+817C
+817D
+817E
+817F
+8180
+825B
+825C
+825D
+825E
+825F
+8260
+827B
+827C
+827D
+827E
+827F
+8280
+835B
+835C
+835D
+835E
+835F
+8360
+837B
+837C
+837D
+837E
+837F
+8380
+845B
+845C
+845D
+845E
+845F
+8460
+847B
+847C
+847D
+847E
+847F
+8480
+855B
+855C
+855D
+855E
+855F
+8560
+857B
+857C
+857D
+857E
+857F
+8580
+865B
+865C
+865D
+865E
+865F
+8660
+867B
+867C
+867D
+867E
+867F
+8680
+875B
+875C
+875D
+875E
+875F
+8760
+877B
+877C
+877D
+877E
+877F
+8780
+885B
+885C
+885D
+885E
+885F
+8860
+887B
+887C
+887D
+887E
+887F
+8880
+895B
+895C
+895D
+895E
+895F
+8960
+897B
+897C
+897D
+897E
+897F
+8980
+8A5B
+8A5C
+8A5D
+8A5E
+8A5F
+8A60
+8A7B
+8A7C
+8A7D
+8A7E
+8A7F
+8A80
+8B5B
+8B5C
+8B5D
+8B5E
+8B5F
+8B60
+8B7B
+8B7C
+8B7D
+8B7E
+8B7F
+8B80
+8C5B
+8C5C
+8C5D
+8C5E
+8C5F
+8C60
+8C7B
+8C7C
+8C7D
+8C7E
+8C7F
+8C80
+8D5B
+8D5C
+8D5D
+8D5E
+8D5F
+8D60
+8D7B
+8D7C
+8D7D
+8D7E
+8D7F
+8D80
+8E5B
+8E5C
+8E5D
+8E5E
+8E5F
+8E60
+8E7B
+8E7C
+8E7D
+8E7E
+8E7F
+8E80
+8F5B
+8F5C
+8F5D
+8F5E
+8F5F
+8F60
+8F7B
+8F7C
+8F7D
+8F7E
+8F7F
+8F80
+905B
+905C
+905D
+905E
+905F
+9060
+907B
+907C
+907D
+907E
+907F
+9080
+915B
+915C
+915D
+915E
+915F
+9160
+917B
+917C
+917D
+917E
+917F
+9180
+925B
+925C
+925D
+925E
+925F
+9260
+927B
+927C
+927D
+927E
+927F
+9280
+935B
+935C
+935D
+935E
+935F
+9360
+937B
+937C
+937D
+937E
+937F
+9380
+945B
+945C
+945D
+945E
+945F
+9460
+947B
+947C
+947D
+947E
+947F
+9480
+955B
+955C
+955D
+955E
+955F
+9560
+957B
+957C
+957D
+957E
+957F
+9580
+965B
+965C
+965D
+965E
+965F
+9660
+967B
+967C
+967D
+967E
+967F
+9680
+975B
+975C
+975D
+975E
+975F
+9760
+977B
+977C
+977D
+977E
+977F
+9780
+985B
+985C
+985D
+985E
+985F
+9860
+987B
+987C
+987D
+987E
+987F
+9880
+995B
+995C
+995D
+995E
+995F
+9960
+997B
+997C
+997D
+997E
+997F
+9980
+9A5B
+9A5C
+9A5D
+9A5E
+9A5F
+9A60
+9A7B
+9A7C
+9A7D
+9A7E
+9A7F
+9A80
+9B5B
+9B5C
+9B5D
+9B5E
+9B5F
+9B60
+9B7B
+9B7C
+9B7D
+9B7E
+9B7F
+9B80
+9C5B
+9C5C
+9C5D
+9C5E
+9C5F
+9C60
+9C7B
+9C7C
+9C7D
+9C7E
+9C7F
+9C80
+9D5B
+9D5C
+9D5D
+9D5E
+9D5F
+9D60
+9D7B
+9D7C
+9D7D
+9D7E
+9D7F
+9D80
+9E5B
+9E5C
+9E5D
+9E5E
+9E5F
+9E60
+9E7B
+9E7C
+9E7D
+9E7E
+9E7F
+9E80
+9F5B
+9F5C
+9F5D
+9F5E
+9F5F
+9F60
+9F7B
+9F7C
+9F7D
+9F7E
+9F7F
+9F80
+A05B
+A05C
+A05D
+A05E
+A05F
+A060
+A07B
+A07C
+A07D
+A07E
+A07F
+A080
+A15B
+A15C
+A15D
+A15E
+A15F
+A160
+A17B
+A17C
+A17D
+A17E
+A17F
+A180
+A25B
+A25C
+A25D
+A25E
+A25F
+A260
+A27B
+A27C
+A27D
+A27E
+A27F
+A280
+A35B
+A35C
+A35D
+A35E
+A35F
+A360
+A37B
+A37C
+A37D
+A37E
+A37F
+A380
+A45B
+A45C
+A45D
+A45E
+A45F
+A460
+A47B
+A47C
+A47D
+A47E
+A47F
+A480
+A55B
+A55C
+A55D
+A55E
+A55F
+A560
+A57B
+A57C
+A57D
+A57E
+A57F
+A580
+A65B
+A65C
+A65D
+A65E
+A65F
+A660
+A67B
+A67C
+A67D
+A67E
+A67F
+A680
+A75B
+A75C
+A75D
+A75E
+A75F
+A760
+A77B
+A77C
+A77D
+A77E
+A77F
+A780
+A85B
+A85C
+A85D
+A85E
+A85F
+A860
+A87B
+A87C
+A87D
+A87E
+A87F
+A880
+A95B
+A95C
+A95D
+A95E
+A95F
+A960
+A97B
+A97C
+A97D
+A97E
+A97F
+A980
+AA5B
+AA5C
+AA5D
+AA5E
+AA5F
+AA60
+AA7B
+AA7C
+AA7D
+AA7E
+AA7F
+AA80
+AB5B
+AB5C
+AB5D
+AB5E
+AB5F
+AB60
+AB7B
+AB7C
+AB7D
+AB7E
+AB7F
+AB80
+AC5B
+AC5C
+AC5D
+AC5E
+AC5F
+AC60
+AC7B
+AC7C
+AC7D
+AC7E
+AC7F
+AC80
+AD5B
+AD5C
+AD5D
+AD5E
+AD5F
+AD60
+AD7B
+AD7C
+AD7D
+AD7E
+AD7F
+AD80
+AE5B
+AE5C
+AE5D
+AE5E
+AE5F
+AE60
+AE7B
+AE7C
+AE7D
+AE7E
+AE7F
+AE80
+AF5B
+AF5C
+AF5D
+AF5E
+AF5F
+AF60
+AF7B
+AF7C
+AF7D
+AF7E
+AF7F
+AF80
+B05B
+B05C
+B05D
+B05E
+B05F
+B060
+B07B
+B07C
+B07D
+B07E
+B07F
+B080
+B15B
+B15C
+B15D
+B15E
+B15F
+B160
+B17B
+B17C
+B17D
+B17E
+B17F
+B180
+B25B
+B25C
+B25D
+B25E
+B25F
+B260
+B27B
+B27C
+B27D
+B27E
+B27F
+B280
+B35B
+B35C
+B35D
+B35E
+B35F
+B360
+B37B
+B37C
+B37D
+B37E
+B37F
+B380
+B45B
+B45C
+B45D
+B45E
+B45F
+B460
+B47B
+B47C
+B47D
+B47E
+B47F
+B480
+B55B
+B55C
+B55D
+B55E
+B55F
+B560
+B57B
+B57C
+B57D
+B57E
+B57F
+B580
+B65B
+B65C
+B65D
+B65E
+B65F
+B660
+B67B
+B67C
+B67D
+B67E
+B67F
+B680
+B75B
+B75C
+B75D
+B75E
+B75F
+B760
+B77B
+B77C
+B77D
+B77E
+B77F
+B780
+B85B
+B85C
+B85D
+B85E
+B85F
+B860
+B87B
+B87C
+B87D
+B87E
+B87F
+B880
+B95B
+B95C
+B95D
+B95E
+B95F
+B960
+B97B
+B97C
+B97D
+B97E
+B97F
+B980
+BA5B
+BA5C
+BA5D
+BA5E
+BA5F
+BA60
+BA7B
+BA7C
+BA7D
+BA7E
+BA7F
+BA80
+BB5B
+BB5C
+BB5D
+BB5E
+BB5F
+BB60
+BB7B
+BB7C
+BB7D
+BB7E
+BB7F
+BB80
+BC5B
+BC5C
+BC5D
+BC5E
+BC5F
+BC60
+BC7B
+BC7C
+BC7D
+BC7E
+BC7F
+BC80
+BD5B
+BD5C
+BD5D
+BD5E
+BD5F
+BD60
+BD7B
+BD7C
+BD7D
+BD7E
+BD7F
+BD80
+BE5B
+BE5C
+BE5D
+BE5E
+BE5F
+BE60
+BE7B
+BE7C
+BE7D
+BE7E
+BE7F
+BE80
+BF5B
+BF5C
+BF5D
+BF5E
+BF5F
+BF60
+BF7B
+BF7C
+BF7D
+BF7E
+BF7F
+BF80
+C05B
+C05C
+C05D
+C05E
+C05F
+C060
+C07B
+C07C
+C07D
+C07E
+C07F
+C080
+C15B
+C15C
+C15D
+C15E
+C15F
+C160
+C17B
+C17C
+C17D
+C17E
+C17F
+C180
+C25B
+C25C
+C25D
+C25E
+C25F
+C260
+C27B
+C27C
+C27D
+C27E
+C27F
+C280
+C35B
+C35C
+C35D
+C35E
+C35F
+C360
+C37B
+C37C
+C37D
+C37E
+C37F
+C380
+C45B
+C45C
+C45D
+C45E
+C45F
+C460
+C47B
+C47C
+C47D
+C47E
+C47F
+C480
+C55B
+C55C
+C55D
+C55E
+C55F
+C560
+C57B
+C57C
+C57D
+C57E
+C57F
+C580
+C65B
+C65C
+C65D
+C65E
+C65F
+C660
+C67B
+C67C
+C67D
+C67E
+C67F
+C680
+C75B
+C75C
+C75D
+C75E
+C75F
+C760
+C77B
+C77C
+C77D
+C77E
+C77F
+C780
+C85B
+C85C
+C85D
+C85E
+C85F
+C860
+C87B
+C87C
+C87D
+C87E
+C87F
+C880
+C95B
+C95C
+C95D
+C95E
+C95F
+C960
+C97B
+C97C
+C97D
+C97E
+C97F
+C980
+CA5B
+CA5C
+CA5D
+CA5E
+CA5F
+CA60
+CA7B
+CA7C
+CA7D
+CA7E
+CA7F
+CA80
+CB5B
+CB5C
+CB5D
+CB5E
+CB5F
+CB60
+CB7B
+CB7C
+CB7D
+CB7E
+CB7F
+CB80
+CC5B
+CC5C
+CC5D
+CC5E
+CC5F
+CC60
+CC7B
+CC7C
+CC7D
+CC7E
+CC7F
+CC80
+CD5B
+CD5C
+CD5D
+CD5E
+CD5F
+CD60
+CD7B
+CD7C
+CD7D
+CD7E
+CD7F
+CD80
+CE5B
+CE5C
+CE5D
+CE5E
+CE5F
+CE60
+CE7B
+CE7C
+CE7D
+CE7E
+CE7F
+CE80
+CF5B
+CF5C
+CF5D
+CF5E
+CF5F
+CF60
+CF7B
+CF7C
+CF7D
+CF7E
+CF7F
+CF80
+D05B
+D05C
+D05D
+D05E
+D05F
+D060
+D07B
+D07C
+D07D
+D07E
+D07F
+D080
+D15B
+D15C
+D15D
+D15E
+D15F
+D160
+D17B
+D17C
+D17D
+D17E
+D17F
+D180
+D25B
+D25C
+D25D
+D25E
+D25F
+D260
+D27B
+D27C
+D27D
+D27E
+D27F
+D280
+D35B
+D35C
+D35D
+D35E
+D35F
+D360
+D37B
+D37C
+D37D
+D37E
+D37F
+D380
+D45B
+D45C
+D45D
+D45E
+D45F
+D460
+D47B
+D47C
+D47D
+D47E
+D47F
+D480
+D55B
+D55C
+D55D
+D55E
+D55F
+D560
+D57B
+D57C
+D57D
+D57E
+D57F
+D580
+D65B
+D65C
+D65D
+D65E
+D65F
+D660
+D67B
+D67C
+D67D
+D67E
+D67F
+D680
+D75B
+D75C
+D75D
+D75E
+D75F
+D760
+D77B
+D77C
+D77D
+D77E
+D77F
+D780
+D85B
+D85C
+D85D
+D85E
+D85F
+D860
+D87B
+D87C
+D87D
+D87E
+D87F
+D880
+D95B
+D95C
+D95D
+D95E
+D95F
+D960
+D97B
+D97C
+D97D
+D97E
+D97F
+D980
+DA5B
+DA5C
+DA5D
+DA5E
+DA5F
+DA60
+DA7B
+DA7C
+DA7D
+DA7E
+DA7F
+DA80
+DB5B
+DB5C
+DB5D
+DB5E
+DB5F
+DB60
+DB7B
+DB7C
+DB7D
+DB7E
+DB7F
+DB80
+DC5B
+DC5C
+DC5D
+DC5E
+DC5F
+DC60
+DC7B
+DC7C
+DC7D
+DC7E
+DC7F
+DC80
+DD5B
+DD5C
+DD5D
+DD5E
+DD5F
+DD60
+DD7B
+DD7C
+DD7D
+DD7E
+DD7F
+DD80
+DE5B
+DE5C
+DE5D
+DE5E
+DE5F
+DE60
+DE7B
+DE7C
+DE7D
+DE7E
+DE7F
+DE80
+DF5B
+DF5C
+DF5D
+DF5E
+DF5F
+DF60
+DF7B
+DF7C
+DF7D
+DF7E
+DF7F
+DF80
+E05B
+E05C
+E05D
+E05E
+E05F
+E060
+E07B
+E07C
+E07D
+E07E
+E07F
+E080
+E15B
+E15C
+E15D
+E15E
+E15F
+E160
+E17B
+E17C
+E17D
+E17E
+E17F
+E180
+E25B
+E25C
+E25D
+E25E
+E25F
+E260
+E27B
+E27C
+E27D
+E27E
+E27F
+E280
+E35B
+E35C
+E35D
+E35E
+E35F
+E360
+E37B
+E37C
+E37D
+E37E
+E37F
+E380
+E45B
+E45C
+E45D
+E45E
+E45F
+E460
+E47B
+E47C
+E47D
+E47E
+E47F
+E480
+E55B
+E55C
+E55D
+E55E
+E55F
+E560
+E57B
+E57C
+E57D
+E57E
+E57F
+E580
+E65B
+E65C
+E65D
+E65E
+E65F
+E660
+E67B
+E67C
+E67D
+E67E
+E67F
+E680
+E75B
+E75C
+E75D
+E75E
+E75F
+E760
+E77B
+E77C
+E77D
+E77E
+E77F
+E780
+E85B
+E85C
+E85D
+E85E
+E85F
+E860
+E87B
+E87C
+E87D
+E87E
+E87F
+E880
+E95B
+E95C
+E95D
+E95E
+E95F
+E960
+E97B
+E97C
+E97D
+E97E
+E97F
+E980
+EA5B
+EA5C
+EA5D
+EA5E
+EA5F
+EA60
+EA7B
+EA7C
+EA7D
+EA7E
+EA7F
+EA80
+EB5B
+EB5C
+EB5D
+EB5E
+EB5F
+EB60
+EB7B
+EB7C
+EB7D
+EB7E
+EB7F
+EB80
+EC5B
+EC5C
+EC5D
+EC5E
+EC5F
+EC60
+EC7B
+EC7C
+EC7D
+EC7E
+EC7F
+EC80
+ED5B
+ED5C
+ED5D
+ED5E
+ED5F
+ED60
+ED7B
+ED7C
+ED7D
+ED7E
+ED7F
+ED80
+EE5B
+EE5C
+EE5D
+EE5E
+EE5F
+EE60
+EE7B
+EE7C
+EE7D
+EE7E
+EE7F
+EE80
+EF5B
+EF5C
+EF5D
+EF5E
+EF5F
+EF60
+EF7B
+EF7C
+EF7D
+EF7E
+EF7F
+EF80
+F05B
+F05C
+F05D
+F05E
+F05F
+F060
+F07B
+F07C
+F07D
+F07E
+F07F
+F080
+F15B
+F15C
+F15D
+F15E
+F15F
+F160
+F17B
+F17C
+F17D
+F17E
+F17F
+F180
+F25B
+F25C
+F25D
+F25E
+F25F
+F260
+F27B
+F27C
+F27D
+F27E
+F27F
+F280
+F35B
+F35C
+F35D
+F35E
+F35F
+F360
+F37B
+F37C
+F37D
+F37E
+F37F
+F380
+F45B
+F45C
+F45D
+F45E
+F45F
+F460
+F47B
+F47C
+F47D
+F47E
+F47F
+F480
+F55B
+F55C
+F55D
+F55E
+F55F
+F560
+F57B
+F57C
+F57D
+F57E
+F57F
+F580
+F65B
+F65C
+F65D
+F65E
+F65F
+F660
+F67B
+F67C
+F67D
+F67E
+F67F
+F680
+F75B
+F75C
+F75D
+F75E
+F75F
+F760
+F77B
+F77C
+F77D
+F77E
+F77F
+F780
+F85B
+F85C
+F85D
+F85E
+F85F
+F860
+F87B
+F87C
+F87D
+F87E
+F87F
+F880
+F95B
+F95C
+F95D
+F95E
+F95F
+F960
+F97B
+F97C
+F97D
+F97E
+F97F
+F980
+FA5B
+FA5C
+FA5D
+FA5E
+FA5F
+FA60
+FA7B
+FA7C
+FA7D
+FA7E
+FA7F
+FA80
+FB5B
+FB5C
+FB5D
+FB5E
+FB5F
+FB60
+FB7B
+FB7C
+FB7D
+FB7E
+FB7F
+FB80
+FC5B
+FC5C
+FC5D
+FC5E
+FC5F
+FC60
+FC7B
+FC7C
+FC7D
+FC7E
+FC7F
+FC80
+FD5B
+FD5C
+FD5D
+FD5E
+FD5F
+FD60
+FD7B
+FD7C
+FD7D
+FD7E
+FD7F
+FD80
+FE5B
+FE5C
+FE5D
+FE5E
+FE5F
+FE60
+FE7B
+FE7C
+FE7D
+FE7E
+FE7F
+FE80
+DELETE FROM t2 WHERE a='';
+ALTER TABLE t2 ADD u VARCHAR(1) CHARACTER SET utf8, ADD a2 VARCHAR(1) CHARACTER SET euckr;
+UPDATE t2 SET u=a, a2=u;
+SELECT s as unassigned_code FROM t2 WHERE u='?';
+unassigned_code
+A2E8
+A2E9
+A2EA
+A2EB
+A2EC
+A2ED
+A2EE
+A2EF
+A2F0
+A2F1
+A2F2
+A2F3
+A2F4
+A2F5
+A2F6
+A2F7
+A2F8
+A2F9
+A2FA
+A2FB
+A2FC
+A2FD
+A2FE
+A5AB
+A5AC
+A5AD
+A5AE
+A5AF
+A5BA
+A5BB
+A5BC
+A5BD
+A5BE
+A5BF
+A5C0
+A5D9
+A5DA
+A5DB
+A5DC
+A5DD
+A5DE
+A5DF
+A5E0
+A5F9
+A5FA
+A5FB
+A5FC
+A5FD
+A5FE
+A6E5
+A6E6
+A6E7
+A6E8
+A6E9
+A6EA
+A6EB
+A6EC
+A6ED
+A6EE
+A6EF
+A6F0
+A6F1
+A6F2
+A6F3
+A6F4
+A6F5
+A6F6
+A6F7
+A6F8
+A6F9
+A6FA
+A6FB
+A6FC
+A6FD
+A6FE
+A7F0
+A7F1
+A7F2
+A7F3
+A7F4
+A7F5
+A7F6
+A7F7
+A7F8
+A7F9
+A7FA
+A7FB
+A7FC
+A7FD
+A7FE
+A8A5
+A8A7
+A8B0
+AAF4
+AAF5
+AAF6
+AAF7
+AAF8
+AAF9
+AAFA
+AAFB
+AAFC
+AAFD
+AAFE
+ABF7
+ABF8
+ABF9
+ABFA
+ABFB
+ABFC
+ABFD
+ABFE
+ACC2
+ACC3
+ACC4
+ACC5
+ACC6
+ACC7
+ACC8
+ACC9
+ACCA
+ACCB
+ACCC
+ACCD
+ACCE
+ACCF
+ACD0
+ACF2
+ACF3
+ACF4
+ACF5
+ACF6
+ACF7
+ACF8
+ACF9
+ACFA
+ACFB
+ACFC
+ACFD
+ACFE
+ADA1
+ADA2
+ADA3
+ADA4
+ADA5
+ADA6
+ADA7
+ADA8
+ADA9
+ADAA
+ADAB
+ADAC
+ADAD
+ADAE
+ADAF
+ADB0
+ADB1
+ADB2
+ADB3
+ADB4
+ADB5
+ADB6
+ADB7
+ADB8
+ADB9
+ADBA
+ADBB
+ADBC
+ADBD
+ADBE
+ADBF
+ADC0
+ADC1
+ADC2
+ADC3
+ADC4
+ADC5
+ADC6
+ADC7
+ADC8
+ADC9
+ADCA
+ADCB
+ADCC
+ADCD
+ADCE
+ADCF
+ADD0
+ADD1
+ADD2
+ADD3
+ADD4
+ADD5
+ADD6
+ADD7
+ADD8
+ADD9
+ADDA
+ADDB
+ADDC
+ADDD
+ADDE
+ADDF
+ADE0
+ADE1
+ADE2
+ADE3
+ADE4
+ADE5
+ADE6
+ADE7
+ADE8
+ADE9
+ADEA
+ADEB
+ADEC
+ADED
+ADEE
+ADEF
+ADF0
+ADF1
+ADF2
+ADF3
+ADF4
+ADF5
+ADF6
+ADF7
+ADF8
+ADF9
+ADFA
+ADFB
+ADFC
+ADFD
+ADFE
+AEA1
+AEA2
+AEA3
+AEA4
+AEA5
+AEA6
+AEA7
+AEA8
+AEA9
+AEAA
+AEAB
+AEAC
+AEAD
+AEAE
+AEAF
+AEB0
+AEB1
+AEB2
+AEB3
+AEB4
+AEB5
+AEB6
+AEB7
+AEB8
+AEB9
+AEBA
+AEBB
+AEBC
+AEBD
+AEBE
+AEBF
+AEC0
+AEC1
+AEC2
+AEC3
+AEC4
+AEC5
+AEC6
+AEC7
+AEC8
+AEC9
+AECA
+AECB
+AECC
+AECD
+AECE
+AECF
+AED0
+AED1
+AED2
+AED3
+AED4
+AED5
+AED6
+AED7
+AED8
+AED9
+AEDA
+AEDB
+AEDC
+AEDD
+AEDE
+AEDF
+AEE0
+AEE1
+AEE2
+AEE3
+AEE4
+AEE5
+AEE6
+AEE7
+AEE8
+AEE9
+AEEA
+AEEB
+AEEC
+AEED
+AEEE
+AEEF
+AEF0
+AEF1
+AEF2
+AEF3
+AEF4
+AEF5
+AEF6
+AEF7
+AEF8
+AEF9
+AEFA
+AEFB
+AEFC
+AEFD
+AEFE
+AFA1
+AFA2
+AFA3
+AFA4
+AFA5
+AFA6
+AFA7
+AFA8
+AFA9
+AFAA
+AFAB
+AFAC
+AFAD
+AFAE
+AFAF
+AFB0
+AFB1
+AFB2
+AFB3
+AFB4
+AFB5
+AFB6
+AFB7
+AFB8
+AFB9
+AFBA
+AFBB
+AFBC
+AFBD
+AFBE
+AFBF
+AFC0
+AFC1
+AFC2
+AFC3
+AFC4
+AFC5
+AFC6
+AFC7
+AFC8
+AFC9
+AFCA
+AFCB
+AFCC
+AFCD
+AFCE
+AFCF
+AFD0
+AFD1
+AFD2
+AFD3
+AFD4
+AFD5
+AFD6
+AFD7
+AFD8
+AFD9
+AFDA
+AFDB
+AFDC
+AFDD
+AFDE
+AFDF
+AFE0
+AFE1
+AFE2
+AFE3
+AFE4
+AFE5
+AFE6
+AFE7
+AFE8
+AFE9
+AFEA
+AFEB
+AFEC
+AFED
+AFEE
+AFEF
+AFF0
+AFF1
+AFF2
+AFF3
+AFF4
+AFF5
+AFF6
+AFF7
+AFF8
+AFF9
+AFFA
+AFFB
+AFFC
+AFFD
+AFFE
+C653
+C654
+C655
+C656
+C657
+C658
+C659
+C65A
+C661
+C662
+C663
+C664
+C665
+C666
+C667
+C668
+C669
+C66A
+C66B
+C66C
+C66D
+C66E
+C66F
+C670
+C671
+C672
+C673
+C674
+C675
+C676
+C677
+C678
+C679
+C67A
+C681
+C682
+C683
+C684
+C685
+C686
+C687
+C688
+C689
+C68A
+C68B
+C68C
+C68D
+C68E
+C68F
+C690
+C691
+C692
+C693
+C694
+C695
+C696
+C697
+C698
+C699
+C69A
+C69B
+C69C
+C69D
+C69E
+C69F
+C6A0
+C741
+C742
+C743
+C744
+C745
+C746
+C747
+C748
+C749
+C74A
+C74B
+C74C
+C74D
+C74E
+C74F
+C750
+C751
+C752
+C753
+C754
+C755
+C756
+C757
+C758
+C759
+C75A
+C761
+C762
+C763
+C764
+C765
+C766
+C767
+C768
+C769
+C76A
+C76B
+C76C
+C76D
+C76E
+C76F
+C770
+C771
+C772
+C773
+C774
+C775
+C776
+C777
+C778
+C779
+C77A
+C781
+C782
+C783
+C784
+C785
+C786
+C787
+C788
+C789
+C78A
+C78B
+C78C
+C78D
+C78E
+C78F
+C790
+C791
+C792
+C793
+C794
+C795
+C796
+C797
+C798
+C799
+C79A
+C79B
+C79C
+C79D
+C79E
+C79F
+C7A0
+C841
+C842
+C843
+C844
+C845
+C846
+C847
+C848
+C849
+C84A
+C84B
+C84C
+C84D
+C84E
+C84F
+C850
+C851
+C852
+C853
+C854
+C855
+C856
+C857
+C858
+C859
+C85A
+C861
+C862
+C863
+C864
+C865
+C866
+C867
+C868
+C869
+C86A
+C86B
+C86C
+C86D
+C86E
+C86F
+C870
+C871
+C872
+C873
+C874
+C875
+C876
+C877
+C878
+C879
+C87A
+C881
+C882
+C883
+C884
+C885
+C886
+C887
+C888
+C889
+C88A
+C88B
+C88C
+C88D
+C88E
+C88F
+C890
+C891
+C892
+C893
+C894
+C895
+C896
+C897
+C898
+C899
+C89A
+C89B
+C89C
+C89D
+C89E
+C89F
+C8A0
+C941
+C942
+C943
+C944
+C945
+C946
+C947
+C948
+C949
+C94A
+C94B
+C94C
+C94D
+C94E
+C94F
+C950
+C951
+C952
+C953
+C954
+C955
+C956
+C957
+C958
+C959
+C95A
+C961
+C962
+C963
+C964
+C965
+C966
+C967
+C968
+C969
+C96A
+C96B
+C96C
+C96D
+C96E
+C96F
+C970
+C971
+C972
+C973
+C974
+C975
+C976
+C977
+C978
+C979
+C97A
+C981
+C982
+C983
+C984
+C985
+C986
+C987
+C988
+C989
+C98A
+C98B
+C98C
+C98D
+C98E
+C98F
+C990
+C991
+C992
+C993
+C994
+C995
+C996
+C997
+C998
+C999
+C99A
+C99B
+C99C
+C99D
+C99E
+C99F
+C9A0
+C9A1
+C9A2
+C9A3
+C9A4
+C9A5
+C9A6
+C9A7
+C9A8
+C9A9
+C9AA
+C9AB
+C9AC
+C9AD
+C9AE
+C9AF
+C9B0
+C9B1
+C9B2
+C9B3
+C9B4
+C9B5
+C9B6
+C9B7
+C9B8
+C9B9
+C9BA
+C9BB
+C9BC
+C9BD
+C9BE
+C9BF
+C9C0
+C9C1
+C9C2
+C9C3
+C9C4
+C9C5
+C9C6
+C9C7
+C9C8
+C9C9
+C9CA
+C9CB
+C9CC
+C9CD
+C9CE
+C9CF
+C9D0
+C9D1
+C9D2
+C9D3
+C9D4
+C9D5
+C9D6
+C9D7
+C9D8
+C9D9
+C9DA
+C9DB
+C9DC
+C9DD
+C9DE
+C9DF
+C9E0
+C9E1
+C9E2
+C9E3
+C9E4
+C9E5
+C9E6
+C9E7
+C9E8
+C9E9
+C9EA
+C9EB
+C9EC
+C9ED
+C9EE
+C9EF
+C9F0
+C9F1
+C9F2
+C9F3
+C9F4
+C9F5
+C9F6
+C9F7
+C9F8
+C9F9
+C9FA
+C9FB
+C9FC
+C9FD
+C9FE
+CA41
+CA42
+CA43
+CA44
+CA45
+CA46
+CA47
+CA48
+CA49
+CA4A
+CA4B
+CA4C
+CA4D
+CA4E
+CA4F
+CA50
+CA51
+CA52
+CA53
+CA54
+CA55
+CA56
+CA57
+CA58
+CA59
+CA5A
+CA61
+CA62
+CA63
+CA64
+CA65
+CA66
+CA67
+CA68
+CA69
+CA6A
+CA6B
+CA6C
+CA6D
+CA6E
+CA6F
+CA70
+CA71
+CA72
+CA73
+CA74
+CA75
+CA76
+CA77
+CA78
+CA79
+CA7A
+CA81
+CA82
+CA83
+CA84
+CA85
+CA86
+CA87
+CA88
+CA89
+CA8A
+CA8B
+CA8C
+CA8D
+CA8E
+CA8F
+CA90
+CA91
+CA92
+CA93
+CA94
+CA95
+CA96
+CA97
+CA98
+CA99
+CA9A
+CA9B
+CA9C
+CA9D
+CA9E
+CA9F
+CAA0
+CB41
+CB42
+CB43
+CB44
+CB45
+CB46
+CB47
+CB48
+CB49
+CB4A
+CB4B
+CB4C
+CB4D
+CB4E
+CB4F
+CB50
+CB51
+CB52
+CB53
+CB54
+CB55
+CB56
+CB57
+CB58
+CB59
+CB5A
+CB61
+CB62
+CB63
+CB64
+CB65
+CB66
+CB67
+CB68
+CB69
+CB6A
+CB6B
+CB6C
+CB6D
+CB6E
+CB6F
+CB70
+CB71
+CB72
+CB73
+CB74
+CB75
+CB76
+CB77
+CB78
+CB79
+CB7A
+CB81
+CB82
+CB83
+CB84
+CB85
+CB86
+CB87
+CB88
+CB89
+CB8A
+CB8B
+CB8C
+CB8D
+CB8E
+CB8F
+CB90
+CB91
+CB92
+CB93
+CB94
+CB95
+CB96
+CB97
+CB98
+CB99
+CB9A
+CB9B
+CB9C
+CB9D
+CB9E
+CB9F
+CBA0
+CC41
+CC42
+CC43
+CC44
+CC45
+CC46
+CC47
+CC48
+CC49
+CC4A
+CC4B
+CC4C
+CC4D
+CC4E
+CC4F
+CC50
+CC51
+CC52
+CC53
+CC54
+CC55
+CC56
+CC57
+CC58
+CC59
+CC5A
+CC61
+CC62
+CC63
+CC64
+CC65
+CC66
+CC67
+CC68
+CC69
+CC6A
+CC6B
+CC6C
+CC6D
+CC6E
+CC6F
+CC70
+CC71
+CC72
+CC73
+CC74
+CC75
+CC76
+CC77
+CC78
+CC79
+CC7A
+CC81
+CC82
+CC83
+CC84
+CC85
+CC86
+CC87
+CC88
+CC89
+CC8A
+CC8B
+CC8C
+CC8D
+CC8E
+CC8F
+CC90
+CC91
+CC92
+CC93
+CC94
+CC95
+CC96
+CC97
+CC98
+CC99
+CC9A
+CC9B
+CC9C
+CC9D
+CC9E
+CC9F
+CCA0
+CD41
+CD42
+CD43
+CD44
+CD45
+CD46
+CD47
+CD48
+CD49
+CD4A
+CD4B
+CD4C
+CD4D
+CD4E
+CD4F
+CD50
+CD51
+CD52
+CD53
+CD54
+CD55
+CD56
+CD57
+CD58
+CD59
+CD5A
+CD61
+CD62
+CD63
+CD64
+CD65
+CD66
+CD67
+CD68
+CD69
+CD6A
+CD6B
+CD6C
+CD6D
+CD6E
+CD6F
+CD70
+CD71
+CD72
+CD73
+CD74
+CD75
+CD76
+CD77
+CD78
+CD79
+CD7A
+CD81
+CD82
+CD83
+CD84
+CD85
+CD86
+CD87
+CD88
+CD89
+CD8A
+CD8B
+CD8C
+CD8D
+CD8E
+CD8F
+CD90
+CD91
+CD92
+CD93
+CD94
+CD95
+CD96
+CD97
+CD98
+CD99
+CD9A
+CD9B
+CD9C
+CD9D
+CD9E
+CD9F
+CDA0
+CE41
+CE42
+CE43
+CE44
+CE45
+CE46
+CE47
+CE48
+CE49
+CE4A
+CE4B
+CE4C
+CE4D
+CE4E
+CE4F
+CE50
+CE51
+CE52
+CE53
+CE54
+CE55
+CE56
+CE57
+CE58
+CE59
+CE5A
+CE61
+CE62
+CE63
+CE64
+CE65
+CE66
+CE67
+CE68
+CE69
+CE6A
+CE6B
+CE6C
+CE6D
+CE6E
+CE6F
+CE70
+CE71
+CE72
+CE73
+CE74
+CE75
+CE76
+CE77
+CE78
+CE79
+CE7A
+CE81
+CE82
+CE83
+CE84
+CE85
+CE86
+CE87
+CE88
+CE89
+CE8A
+CE8B
+CE8C
+CE8D
+CE8E
+CE8F
+CE90
+CE91
+CE92
+CE93
+CE94
+CE95
+CE96
+CE97
+CE98
+CE99
+CE9A
+CE9B
+CE9C
+CE9D
+CE9E
+CE9F
+CEA0
+CF41
+CF42
+CF43
+CF44
+CF45
+CF46
+CF47
+CF48
+CF49
+CF4A
+CF4B
+CF4C
+CF4D
+CF4E
+CF4F
+CF50
+CF51
+CF52
+CF53
+CF54
+CF55
+CF56
+CF57
+CF58
+CF59
+CF5A
+CF61
+CF62
+CF63
+CF64
+CF65
+CF66
+CF67
+CF68
+CF69
+CF6A
+CF6B
+CF6C
+CF6D
+CF6E
+CF6F
+CF70
+CF71
+CF72
+CF73
+CF74
+CF75
+CF76
+CF77
+CF78
+CF79
+CF7A
+CF81
+CF82
+CF83
+CF84
+CF85
+CF86
+CF87
+CF88
+CF89
+CF8A
+CF8B
+CF8C
+CF8D
+CF8E
+CF8F
+CF90
+CF91
+CF92
+CF93
+CF94
+CF95
+CF96
+CF97
+CF98
+CF99
+CF9A
+CF9B
+CF9C
+CF9D
+CF9E
+CF9F
+CFA0
+D041
+D042
+D043
+D044
+D045
+D046
+D047
+D048
+D049
+D04A
+D04B
+D04C
+D04D
+D04E
+D04F
+D050
+D051
+D052
+D053
+D054
+D055
+D056
+D057
+D058
+D059
+D05A
+D061
+D062
+D063
+D064
+D065
+D066
+D067
+D068
+D069
+D06A
+D06B
+D06C
+D06D
+D06E
+D06F
+D070
+D071
+D072
+D073
+D074
+D075
+D076
+D077
+D078
+D079
+D07A
+D081
+D082
+D083
+D084
+D085
+D086
+D087
+D088
+D089
+D08A
+D08B
+D08C
+D08D
+D08E
+D08F
+D090
+D091
+D092
+D093
+D094
+D095
+D096
+D097
+D098
+D099
+D09A
+D09B
+D09C
+D09D
+D09E
+D09F
+D0A0
+D141
+D142
+D143
+D144
+D145
+D146
+D147
+D148
+D149
+D14A
+D14B
+D14C
+D14D
+D14E
+D14F
+D150
+D151
+D152
+D153
+D154
+D155
+D156
+D157
+D158
+D159
+D15A
+D161
+D162
+D163
+D164
+D165
+D166
+D167
+D168
+D169
+D16A
+D16B
+D16C
+D16D
+D16E
+D16F
+D170
+D171
+D172
+D173
+D174
+D175
+D176
+D177
+D178
+D179
+D17A
+D181
+D182
+D183
+D184
+D185
+D186
+D187
+D188
+D189
+D18A
+D18B
+D18C
+D18D
+D18E
+D18F
+D190
+D191
+D192
+D193
+D194
+D195
+D196
+D197
+D198
+D199
+D19A
+D19B
+D19C
+D19D
+D19E
+D19F
+D1A0
+D241
+D242
+D243
+D244
+D245
+D246
+D247
+D248
+D249
+D24A
+D24B
+D24C
+D24D
+D24E
+D24F
+D250
+D251
+D252
+D253
+D254
+D255
+D256
+D257
+D258
+D259
+D25A
+D261
+D262
+D263
+D264
+D265
+D266
+D267
+D268
+D269
+D26A
+D26B
+D26C
+D26D
+D26E
+D26F
+D270
+D271
+D272
+D273
+D274
+D275
+D276
+D277
+D278
+D279
+D27A
+D281
+D282
+D283
+D284
+D285
+D286
+D287
+D288
+D289
+D28A
+D28B
+D28C
+D28D
+D28E
+D28F
+D290
+D291
+D292
+D293
+D294
+D295
+D296
+D297
+D298
+D299
+D29A
+D29B
+D29C
+D29D
+D29E
+D29F
+D2A0
+D341
+D342
+D343
+D344
+D345
+D346
+D347
+D348
+D349
+D34A
+D34B
+D34C
+D34D
+D34E
+D34F
+D350
+D351
+D352
+D353
+D354
+D355
+D356
+D357
+D358
+D359
+D35A
+D361
+D362
+D363
+D364
+D365
+D366
+D367
+D368
+D369
+D36A
+D36B
+D36C
+D36D
+D36E
+D36F
+D370
+D371
+D372
+D373
+D374
+D375
+D376
+D377
+D378
+D379
+D37A
+D381
+D382
+D383
+D384
+D385
+D386
+D387
+D388
+D389
+D38A
+D38B
+D38C
+D38D
+D38E
+D38F
+D390
+D391
+D392
+D393
+D394
+D395
+D396
+D397
+D398
+D399
+D39A
+D39B
+D39C
+D39D
+D39E
+D39F
+D3A0
+D441
+D442
+D443
+D444
+D445
+D446
+D447
+D448
+D449
+D44A
+D44B
+D44C
+D44D
+D44E
+D44F
+D450
+D451
+D452
+D453
+D454
+D455
+D456
+D457
+D458
+D459
+D45A
+D461
+D462
+D463
+D464
+D465
+D466
+D467
+D468
+D469
+D46A
+D46B
+D46C
+D46D
+D46E
+D46F
+D470
+D471
+D472
+D473
+D474
+D475
+D476
+D477
+D478
+D479
+D47A
+D481
+D482
+D483
+D484
+D485
+D486
+D487
+D488
+D489
+D48A
+D48B
+D48C
+D48D
+D48E
+D48F
+D490
+D491
+D492
+D493
+D494
+D495
+D496
+D497
+D498
+D499
+D49A
+D49B
+D49C
+D49D
+D49E
+D49F
+D4A0
+D541
+D542
+D543
+D544
+D545
+D546
+D547
+D548
+D549
+D54A
+D54B
+D54C
+D54D
+D54E
+D54F
+D550
+D551
+D552
+D553
+D554
+D555
+D556
+D557
+D558
+D559
+D55A
+D561
+D562
+D563
+D564
+D565
+D566
+D567
+D568
+D569
+D56A
+D56B
+D56C
+D56D
+D56E
+D56F
+D570
+D571
+D572
+D573
+D574
+D575
+D576
+D577
+D578
+D579
+D57A
+D581
+D582
+D583
+D584
+D585
+D586
+D587
+D588
+D589
+D58A
+D58B
+D58C
+D58D
+D58E
+D58F
+D590
+D591
+D592
+D593
+D594
+D595
+D596
+D597
+D598
+D599
+D59A
+D59B
+D59C
+D59D
+D59E
+D59F
+D5A0
+D641
+D642
+D643
+D644
+D645
+D646
+D647
+D648
+D649
+D64A
+D64B
+D64C
+D64D
+D64E
+D64F
+D650
+D651
+D652
+D653
+D654
+D655
+D656
+D657
+D658
+D659
+D65A
+D661
+D662
+D663
+D664
+D665
+D666
+D667
+D668
+D669
+D66A
+D66B
+D66C
+D66D
+D66E
+D66F
+D670
+D671
+D672
+D673
+D674
+D675
+D676
+D677
+D678
+D679
+D67A
+D681
+D682
+D683
+D684
+D685
+D686
+D687
+D688
+D689
+D68A
+D68B
+D68C
+D68D
+D68E
+D68F
+D690
+D691
+D692
+D693
+D694
+D695
+D696
+D697
+D698
+D699
+D69A
+D69B
+D69C
+D69D
+D69E
+D69F
+D6A0
+D741
+D742
+D743
+D744
+D745
+D746
+D747
+D748
+D749
+D74A
+D74B
+D74C
+D74D
+D74E
+D74F
+D750
+D751
+D752
+D753
+D754
+D755
+D756
+D757
+D758
+D759
+D75A
+D761
+D762
+D763
+D764
+D765
+D766
+D767
+D768
+D769
+D76A
+D76B
+D76C
+D76D
+D76E
+D76F
+D770
+D771
+D772
+D773
+D774
+D775
+D776
+D777
+D778
+D779
+D77A
+D781
+D782
+D783
+D784
+D785
+D786
+D787
+D788
+D789
+D78A
+D78B
+D78C
+D78D
+D78E
+D78F
+D790
+D791
+D792
+D793
+D794
+D795
+D796
+D797
+D798
+D799
+D79A
+D79B
+D79C
+D79D
+D79E
+D79F
+D7A0
+D841
+D842
+D843
+D844
+D845
+D846
+D847
+D848
+D849
+D84A
+D84B
+D84C
+D84D
+D84E
+D84F
+D850
+D851
+D852
+D853
+D854
+D855
+D856
+D857
+D858
+D859
+D85A
+D861
+D862
+D863
+D864
+D865
+D866
+D867
+D868
+D869
+D86A
+D86B
+D86C
+D86D
+D86E
+D86F
+D870
+D871
+D872
+D873
+D874
+D875
+D876
+D877
+D878
+D879
+D87A
+D881
+D882
+D883
+D884
+D885
+D886
+D887
+D888
+D889
+D88A
+D88B
+D88C
+D88D
+D88E
+D88F
+D890
+D891
+D892
+D893
+D894
+D895
+D896
+D897
+D898
+D899
+D89A
+D89B
+D89C
+D89D
+D89E
+D89F
+D8A0
+D941
+D942
+D943
+D944
+D945
+D946
+D947
+D948
+D949
+D94A
+D94B
+D94C
+D94D
+D94E
+D94F
+D950
+D951
+D952
+D953
+D954
+D955
+D956
+D957
+D958
+D959
+D95A
+D961
+D962
+D963
+D964
+D965
+D966
+D967
+D968
+D969
+D96A
+D96B
+D96C
+D96D
+D96E
+D96F
+D970
+D971
+D972
+D973
+D974
+D975
+D976
+D977
+D978
+D979
+D97A
+D981
+D982
+D983
+D984
+D985
+D986
+D987
+D988
+D989
+D98A
+D98B
+D98C
+D98D
+D98E
+D98F
+D990
+D991
+D992
+D993
+D994
+D995
+D996
+D997
+D998
+D999
+D99A
+D99B
+D99C
+D99D
+D99E
+D99F
+D9A0
+DA41
+DA42
+DA43
+DA44
+DA45
+DA46
+DA47
+DA48
+DA49
+DA4A
+DA4B
+DA4C
+DA4D
+DA4E
+DA4F
+DA50
+DA51
+DA52
+DA53
+DA54
+DA55
+DA56
+DA57
+DA58
+DA59
+DA5A
+DA61
+DA62
+DA63
+DA64
+DA65
+DA66
+DA67
+DA68
+DA69
+DA6A
+DA6B
+DA6C
+DA6D
+DA6E
+DA6F
+DA70
+DA71
+DA72
+DA73
+DA74
+DA75
+DA76
+DA77
+DA78
+DA79
+DA7A
+DA81
+DA82
+DA83
+DA84
+DA85
+DA86
+DA87
+DA88
+DA89
+DA8A
+DA8B
+DA8C
+DA8D
+DA8E
+DA8F
+DA90
+DA91
+DA92
+DA93
+DA94
+DA95
+DA96
+DA97
+DA98
+DA99
+DA9A
+DA9B
+DA9C
+DA9D
+DA9E
+DA9F
+DAA0
+DB41
+DB42
+DB43
+DB44
+DB45
+DB46
+DB47
+DB48
+DB49
+DB4A
+DB4B
+DB4C
+DB4D
+DB4E
+DB4F
+DB50
+DB51
+DB52
+DB53
+DB54
+DB55
+DB56
+DB57
+DB58
+DB59
+DB5A
+DB61
+DB62
+DB63
+DB64
+DB65
+DB66
+DB67
+DB68
+DB69
+DB6A
+DB6B
+DB6C
+DB6D
+DB6E
+DB6F
+DB70
+DB71
+DB72
+DB73
+DB74
+DB75
+DB76
+DB77
+DB78
+DB79
+DB7A
+DB81
+DB82
+DB83
+DB84
+DB85
+DB86
+DB87
+DB88
+DB89
+DB8A
+DB8B
+DB8C
+DB8D
+DB8E
+DB8F
+DB90
+DB91
+DB92
+DB93
+DB94
+DB95
+DB96
+DB97
+DB98
+DB99
+DB9A
+DB9B
+DB9C
+DB9D
+DB9E
+DB9F
+DBA0
+DC41
+DC42
+DC43
+DC44
+DC45
+DC46
+DC47
+DC48
+DC49
+DC4A
+DC4B
+DC4C
+DC4D
+DC4E
+DC4F
+DC50
+DC51
+DC52
+DC53
+DC54
+DC55
+DC56
+DC57
+DC58
+DC59
+DC5A
+DC61
+DC62
+DC63
+DC64
+DC65
+DC66
+DC67
+DC68
+DC69
+DC6A
+DC6B
+DC6C
+DC6D
+DC6E
+DC6F
+DC70
+DC71
+DC72
+DC73
+DC74
+DC75
+DC76
+DC77
+DC78
+DC79
+DC7A
+DC81
+DC82
+DC83
+DC84
+DC85
+DC86
+DC87
+DC88
+DC89
+DC8A
+DC8B
+DC8C
+DC8D
+DC8E
+DC8F
+DC90
+DC91
+DC92
+DC93
+DC94
+DC95
+DC96
+DC97
+DC98
+DC99
+DC9A
+DC9B
+DC9C
+DC9D
+DC9E
+DC9F
+DCA0
+DD41
+DD42
+DD43
+DD44
+DD45
+DD46
+DD47
+DD48
+DD49
+DD4A
+DD4B
+DD4C
+DD4D
+DD4E
+DD4F
+DD50
+DD51
+DD52
+DD53
+DD54
+DD55
+DD56
+DD57
+DD58
+DD59
+DD5A
+DD61
+DD62
+DD63
+DD64
+DD65
+DD66
+DD67
+DD68
+DD69
+DD6A
+DD6B
+DD6C
+DD6D
+DD6E
+DD6F
+DD70
+DD71
+DD72
+DD73
+DD74
+DD75
+DD76
+DD77
+DD78
+DD79
+DD7A
+DD81
+DD82
+DD83
+DD84
+DD85
+DD86
+DD87
+DD88
+DD89
+DD8A
+DD8B
+DD8C
+DD8D
+DD8E
+DD8F
+DD90
+DD91
+DD92
+DD93
+DD94
+DD95
+DD96
+DD97
+DD98
+DD99
+DD9A
+DD9B
+DD9C
+DD9D
+DD9E
+DD9F
+DDA0
+DE41
+DE42
+DE43
+DE44
+DE45
+DE46
+DE47
+DE48
+DE49
+DE4A
+DE4B
+DE4C
+DE4D
+DE4E
+DE4F
+DE50
+DE51
+DE52
+DE53
+DE54
+DE55
+DE56
+DE57
+DE58
+DE59
+DE5A
+DE61
+DE62
+DE63
+DE64
+DE65
+DE66
+DE67
+DE68
+DE69
+DE6A
+DE6B
+DE6C
+DE6D
+DE6E
+DE6F
+DE70
+DE71
+DE72
+DE73
+DE74
+DE75
+DE76
+DE77
+DE78
+DE79
+DE7A
+DE81
+DE82
+DE83
+DE84
+DE85
+DE86
+DE87
+DE88
+DE89
+DE8A
+DE8B
+DE8C
+DE8D
+DE8E
+DE8F
+DE90
+DE91
+DE92
+DE93
+DE94
+DE95
+DE96
+DE97
+DE98
+DE99
+DE9A
+DE9B
+DE9C
+DE9D
+DE9E
+DE9F
+DEA0
+DF41
+DF42
+DF43
+DF44
+DF45
+DF46
+DF47
+DF48
+DF49
+DF4A
+DF4B
+DF4C
+DF4D
+DF4E
+DF4F
+DF50
+DF51
+DF52
+DF53
+DF54
+DF55
+DF56
+DF57
+DF58
+DF59
+DF5A
+DF61
+DF62
+DF63
+DF64
+DF65
+DF66
+DF67
+DF68
+DF69
+DF6A
+DF6B
+DF6C
+DF6D
+DF6E
+DF6F
+DF70
+DF71
+DF72
+DF73
+DF74
+DF75
+DF76
+DF77
+DF78
+DF79
+DF7A
+DF81
+DF82
+DF83
+DF84
+DF85
+DF86
+DF87
+DF88
+DF89
+DF8A
+DF8B
+DF8C
+DF8D
+DF8E
+DF8F
+DF90
+DF91
+DF92
+DF93
+DF94
+DF95
+DF96
+DF97
+DF98
+DF99
+DF9A
+DF9B
+DF9C
+DF9D
+DF9E
+DF9F
+DFA0
+E041
+E042
+E043
+E044
+E045
+E046
+E047
+E048
+E049
+E04A
+E04B
+E04C
+E04D
+E04E
+E04F
+E050
+E051
+E052
+E053
+E054
+E055
+E056
+E057
+E058
+E059
+E05A
+E061
+E062
+E063
+E064
+E065
+E066
+E067
+E068
+E069
+E06A
+E06B
+E06C
+E06D
+E06E
+E06F
+E070
+E071
+E072
+E073
+E074
+E075
+E076
+E077
+E078
+E079
+E07A
+E081
+E082
+E083
+E084
+E085
+E086
+E087
+E088
+E089
+E08A
+E08B
+E08C
+E08D
+E08E
+E08F
+E090
+E091
+E092
+E093
+E094
+E095
+E096
+E097
+E098
+E099
+E09A
+E09B
+E09C
+E09D
+E09E
+E09F
+E0A0
+E141
+E142
+E143
+E144
+E145
+E146
+E147
+E148
+E149
+E14A
+E14B
+E14C
+E14D
+E14E
+E14F
+E150
+E151
+E152
+E153
+E154
+E155
+E156
+E157
+E158
+E159
+E15A
+E161
+E162
+E163
+E164
+E165
+E166
+E167
+E168
+E169
+E16A
+E16B
+E16C
+E16D
+E16E
+E16F
+E170
+E171
+E172
+E173
+E174
+E175
+E176
+E177
+E178
+E179
+E17A
+E181
+E182
+E183
+E184
+E185
+E186
+E187
+E188
+E189
+E18A
+E18B
+E18C
+E18D
+E18E
+E18F
+E190
+E191
+E192
+E193
+E194
+E195
+E196
+E197
+E198
+E199
+E19A
+E19B
+E19C
+E19D
+E19E
+E19F
+E1A0
+E241
+E242
+E243
+E244
+E245
+E246
+E247
+E248
+E249
+E24A
+E24B
+E24C
+E24D
+E24E
+E24F
+E250
+E251
+E252
+E253
+E254
+E255
+E256
+E257
+E258
+E259
+E25A
+E261
+E262
+E263
+E264
+E265
+E266
+E267
+E268
+E269
+E26A
+E26B
+E26C
+E26D
+E26E
+E26F
+E270
+E271
+E272
+E273
+E274
+E275
+E276
+E277
+E278
+E279
+E27A
+E281
+E282
+E283
+E284
+E285
+E286
+E287
+E288
+E289
+E28A
+E28B
+E28C
+E28D
+E28E
+E28F
+E290
+E291
+E292
+E293
+E294
+E295
+E296
+E297
+E298
+E299
+E29A
+E29B
+E29C
+E29D
+E29E
+E29F
+E2A0
+E341
+E342
+E343
+E344
+E345
+E346
+E347
+E348
+E349
+E34A
+E34B
+E34C
+E34D
+E34E
+E34F
+E350
+E351
+E352
+E353
+E354
+E355
+E356
+E357
+E358
+E359
+E35A
+E361
+E362
+E363
+E364
+E365
+E366
+E367
+E368
+E369
+E36A
+E36B
+E36C
+E36D
+E36E
+E36F
+E370
+E371
+E372
+E373
+E374
+E375
+E376
+E377
+E378
+E379
+E37A
+E381
+E382
+E383
+E384
+E385
+E386
+E387
+E388
+E389
+E38A
+E38B
+E38C
+E38D
+E38E
+E38F
+E390
+E391
+E392
+E393
+E394
+E395
+E396
+E397
+E398
+E399
+E39A
+E39B
+E39C
+E39D
+E39E
+E39F
+E3A0
+E441
+E442
+E443
+E444
+E445
+E446
+E447
+E448
+E449
+E44A
+E44B
+E44C
+E44D
+E44E
+E44F
+E450
+E451
+E452
+E453
+E454
+E455
+E456
+E457
+E458
+E459
+E45A
+E461
+E462
+E463
+E464
+E465
+E466
+E467
+E468
+E469
+E46A
+E46B
+E46C
+E46D
+E46E
+E46F
+E470
+E471
+E472
+E473
+E474
+E475
+E476
+E477
+E478
+E479
+E47A
+E481
+E482
+E483
+E484
+E485
+E486
+E487
+E488
+E489
+E48A
+E48B
+E48C
+E48D
+E48E
+E48F
+E490
+E491
+E492
+E493
+E494
+E495
+E496
+E497
+E498
+E499
+E49A
+E49B
+E49C
+E49D
+E49E
+E49F
+E4A0
+E541
+E542
+E543
+E544
+E545
+E546
+E547
+E548
+E549
+E54A
+E54B
+E54C
+E54D
+E54E
+E54F
+E550
+E551
+E552
+E553
+E554
+E555
+E556
+E557
+E558
+E559
+E55A
+E561
+E562
+E563
+E564
+E565
+E566
+E567
+E568
+E569
+E56A
+E56B
+E56C
+E56D
+E56E
+E56F
+E570
+E571
+E572
+E573
+E574
+E575
+E576
+E577
+E578
+E579
+E57A
+E581
+E582
+E583
+E584
+E585
+E586
+E587
+E588
+E589
+E58A
+E58B
+E58C
+E58D
+E58E
+E58F
+E590
+E591
+E592
+E593
+E594
+E595
+E596
+E597
+E598
+E599
+E59A
+E59B
+E59C
+E59D
+E59E
+E59F
+E5A0
+E641
+E642
+E643
+E644
+E645
+E646
+E647
+E648
+E649
+E64A
+E64B
+E64C
+E64D
+E64E
+E64F
+E650
+E651
+E652
+E653
+E654
+E655
+E656
+E657
+E658
+E659
+E65A
+E661
+E662
+E663
+E664
+E665
+E666
+E667
+E668
+E669
+E66A
+E66B
+E66C
+E66D
+E66E
+E66F
+E670
+E671
+E672
+E673
+E674
+E675
+E676
+E677
+E678
+E679
+E67A
+E681
+E682
+E683
+E684
+E685
+E686
+E687
+E688
+E689
+E68A
+E68B
+E68C
+E68D
+E68E
+E68F
+E690
+E691
+E692
+E693
+E694
+E695
+E696
+E697
+E698
+E699
+E69A
+E69B
+E69C
+E69D
+E69E
+E69F
+E6A0
+E741
+E742
+E743
+E744
+E745
+E746
+E747
+E748
+E749
+E74A
+E74B
+E74C
+E74D
+E74E
+E74F
+E750
+E751
+E752
+E753
+E754
+E755
+E756
+E757
+E758
+E759
+E75A
+E761
+E762
+E763
+E764
+E765
+E766
+E767
+E768
+E769
+E76A
+E76B
+E76C
+E76D
+E76E
+E76F
+E770
+E771
+E772
+E773
+E774
+E775
+E776
+E777
+E778
+E779
+E77A
+E781
+E782
+E783
+E784
+E785
+E786
+E787
+E788
+E789
+E78A
+E78B
+E78C
+E78D
+E78E
+E78F
+E790
+E791
+E792
+E793
+E794
+E795
+E796
+E797
+E798
+E799
+E79A
+E79B
+E79C
+E79D
+E79E
+E79F
+E7A0
+E841
+E842
+E843
+E844
+E845
+E846
+E847
+E848
+E849
+E84A
+E84B
+E84C
+E84D
+E84E
+E84F
+E850
+E851
+E852
+E853
+E854
+E855
+E856
+E857
+E858
+E859
+E85A
+E861
+E862
+E863
+E864
+E865
+E866
+E867
+E868
+E869
+E86A
+E86B
+E86C
+E86D
+E86E
+E86F
+E870
+E871
+E872
+E873
+E874
+E875
+E876
+E877
+E878
+E879
+E87A
+E881
+E882
+E883
+E884
+E885
+E886
+E887
+E888
+E889
+E88A
+E88B
+E88C
+E88D
+E88E
+E88F
+E890
+E891
+E892
+E893
+E894
+E895
+E896
+E897
+E898
+E899
+E89A
+E89B
+E89C
+E89D
+E89E
+E89F
+E8A0
+E941
+E942
+E943
+E944
+E945
+E946
+E947
+E948
+E949
+E94A
+E94B
+E94C
+E94D
+E94E
+E94F
+E950
+E951
+E952
+E953
+E954
+E955
+E956
+E957
+E958
+E959
+E95A
+E961
+E962
+E963
+E964
+E965
+E966
+E967
+E968
+E969
+E96A
+E96B
+E96C
+E96D
+E96E
+E96F
+E970
+E971
+E972
+E973
+E974
+E975
+E976
+E977
+E978
+E979
+E97A
+E981
+E982
+E983
+E984
+E985
+E986
+E987
+E988
+E989
+E98A
+E98B
+E98C
+E98D
+E98E
+E98F
+E990
+E991
+E992
+E993
+E994
+E995
+E996
+E997
+E998
+E999
+E99A
+E99B
+E99C
+E99D
+E99E
+E99F
+E9A0
+EA41
+EA42
+EA43
+EA44
+EA45
+EA46
+EA47
+EA48
+EA49
+EA4A
+EA4B
+EA4C
+EA4D
+EA4E
+EA4F
+EA50
+EA51
+EA52
+EA53
+EA54
+EA55
+EA56
+EA57
+EA58
+EA59
+EA5A
+EA61
+EA62
+EA63
+EA64
+EA65
+EA66
+EA67
+EA68
+EA69
+EA6A
+EA6B
+EA6C
+EA6D
+EA6E
+EA6F
+EA70
+EA71
+EA72
+EA73
+EA74
+EA75
+EA76
+EA77
+EA78
+EA79
+EA7A
+EA81
+EA82
+EA83
+EA84
+EA85
+EA86
+EA87
+EA88
+EA89
+EA8A
+EA8B
+EA8C
+EA8D
+EA8E
+EA8F
+EA90
+EA91
+EA92
+EA93
+EA94
+EA95
+EA96
+EA97
+EA98
+EA99
+EA9A
+EA9B
+EA9C
+EA9D
+EA9E
+EA9F
+EAA0
+EB41
+EB42
+EB43
+EB44
+EB45
+EB46
+EB47
+EB48
+EB49
+EB4A
+EB4B
+EB4C
+EB4D
+EB4E
+EB4F
+EB50
+EB51
+EB52
+EB53
+EB54
+EB55
+EB56
+EB57
+EB58
+EB59
+EB5A
+EB61
+EB62
+EB63
+EB64
+EB65
+EB66
+EB67
+EB68
+EB69
+EB6A
+EB6B
+EB6C
+EB6D
+EB6E
+EB6F
+EB70
+EB71
+EB72
+EB73
+EB74
+EB75
+EB76
+EB77
+EB78
+EB79
+EB7A
+EB81
+EB82
+EB83
+EB84
+EB85
+EB86
+EB87
+EB88
+EB89
+EB8A
+EB8B
+EB8C
+EB8D
+EB8E
+EB8F
+EB90
+EB91
+EB92
+EB93
+EB94
+EB95
+EB96
+EB97
+EB98
+EB99
+EB9A
+EB9B
+EB9C
+EB9D
+EB9E
+EB9F
+EBA0
+EC41
+EC42
+EC43
+EC44
+EC45
+EC46
+EC47
+EC48
+EC49
+EC4A
+EC4B
+EC4C
+EC4D
+EC4E
+EC4F
+EC50
+EC51
+EC52
+EC53
+EC54
+EC55
+EC56
+EC57
+EC58
+EC59
+EC5A
+EC61
+EC62
+EC63
+EC64
+EC65
+EC66
+EC67
+EC68
+EC69
+EC6A
+EC6B
+EC6C
+EC6D
+EC6E
+EC6F
+EC70
+EC71
+EC72
+EC73
+EC74
+EC75
+EC76
+EC77
+EC78
+EC79
+EC7A
+EC81
+EC82
+EC83
+EC84
+EC85
+EC86
+EC87
+EC88
+EC89
+EC8A
+EC8B
+EC8C
+EC8D
+EC8E
+EC8F
+EC90
+EC91
+EC92
+EC93
+EC94
+EC95
+EC96
+EC97
+EC98
+EC99
+EC9A
+EC9B
+EC9C
+EC9D
+EC9E
+EC9F
+ECA0
+ED41
+ED42
+ED43
+ED44
+ED45
+ED46
+ED47
+ED48
+ED49
+ED4A
+ED4B
+ED4C
+ED4D
+ED4E
+ED4F
+ED50
+ED51
+ED52
+ED53
+ED54
+ED55
+ED56
+ED57
+ED58
+ED59
+ED5A
+ED61
+ED62
+ED63
+ED64
+ED65
+ED66
+ED67
+ED68
+ED69
+ED6A
+ED6B
+ED6C
+ED6D
+ED6E
+ED6F
+ED70
+ED71
+ED72
+ED73
+ED74
+ED75
+ED76
+ED77
+ED78
+ED79
+ED7A
+ED81
+ED82
+ED83
+ED84
+ED85
+ED86
+ED87
+ED88
+ED89
+ED8A
+ED8B
+ED8C
+ED8D
+ED8E
+ED8F
+ED90
+ED91
+ED92
+ED93
+ED94
+ED95
+ED96
+ED97
+ED98
+ED99
+ED9A
+ED9B
+ED9C
+ED9D
+ED9E
+ED9F
+EDA0
+EE41
+EE42
+EE43
+EE44
+EE45
+EE46
+EE47
+EE48
+EE49
+EE4A
+EE4B
+EE4C
+EE4D
+EE4E
+EE4F
+EE50
+EE51
+EE52
+EE53
+EE54
+EE55
+EE56
+EE57
+EE58
+EE59
+EE5A
+EE61
+EE62
+EE63
+EE64
+EE65
+EE66
+EE67
+EE68
+EE69
+EE6A
+EE6B
+EE6C
+EE6D
+EE6E
+EE6F
+EE70
+EE71
+EE72
+EE73
+EE74
+EE75
+EE76
+EE77
+EE78
+EE79
+EE7A
+EE81
+EE82
+EE83
+EE84
+EE85
+EE86
+EE87
+EE88
+EE89
+EE8A
+EE8B
+EE8C
+EE8D
+EE8E
+EE8F
+EE90
+EE91
+EE92
+EE93
+EE94
+EE95
+EE96
+EE97
+EE98
+EE99
+EE9A
+EE9B
+EE9C
+EE9D
+EE9E
+EE9F
+EEA0
+EF41
+EF42
+EF43
+EF44
+EF45
+EF46
+EF47
+EF48
+EF49
+EF4A
+EF4B
+EF4C
+EF4D
+EF4E
+EF4F
+EF50
+EF51
+EF52
+EF53
+EF54
+EF55
+EF56
+EF57
+EF58
+EF59
+EF5A
+EF61
+EF62
+EF63
+EF64
+EF65
+EF66
+EF67
+EF68
+EF69
+EF6A
+EF6B
+EF6C
+EF6D
+EF6E
+EF6F
+EF70
+EF71
+EF72
+EF73
+EF74
+EF75
+EF76
+EF77
+EF78
+EF79
+EF7A
+EF81
+EF82
+EF83
+EF84
+EF85
+EF86
+EF87
+EF88
+EF89
+EF8A
+EF8B
+EF8C
+EF8D
+EF8E
+EF8F
+EF90
+EF91
+EF92
+EF93
+EF94
+EF95
+EF96
+EF97
+EF98
+EF99
+EF9A
+EF9B
+EF9C
+EF9D
+EF9E
+EF9F
+EFA0
+F041
+F042
+F043
+F044
+F045
+F046
+F047
+F048
+F049
+F04A
+F04B
+F04C
+F04D
+F04E
+F04F
+F050
+F051
+F052
+F053
+F054
+F055
+F056
+F057
+F058
+F059
+F05A
+F061
+F062
+F063
+F064
+F065
+F066
+F067
+F068
+F069
+F06A
+F06B
+F06C
+F06D
+F06E
+F06F
+F070
+F071
+F072
+F073
+F074
+F075
+F076
+F077
+F078
+F079
+F07A
+F081
+F082
+F083
+F084
+F085
+F086
+F087
+F088
+F089
+F08A
+F08B
+F08C
+F08D
+F08E
+F08F
+F090
+F091
+F092
+F093
+F094
+F095
+F096
+F097
+F098
+F099
+F09A
+F09B
+F09C
+F09D
+F09E
+F09F
+F0A0
+F141
+F142
+F143
+F144
+F145
+F146
+F147
+F148
+F149
+F14A
+F14B
+F14C
+F14D
+F14E
+F14F
+F150
+F151
+F152
+F153
+F154
+F155
+F156
+F157
+F158
+F159
+F15A
+F161
+F162
+F163
+F164
+F165
+F166
+F167
+F168
+F169
+F16A
+F16B
+F16C
+F16D
+F16E
+F16F
+F170
+F171
+F172
+F173
+F174
+F175
+F176
+F177
+F178
+F179
+F17A
+F181
+F182
+F183
+F184
+F185
+F186
+F187
+F188
+F189
+F18A
+F18B
+F18C
+F18D
+F18E
+F18F
+F190
+F191
+F192
+F193
+F194
+F195
+F196
+F197
+F198
+F199
+F19A
+F19B
+F19C
+F19D
+F19E
+F19F
+F1A0
+F241
+F242
+F243
+F244
+F245
+F246
+F247
+F248
+F249
+F24A
+F24B
+F24C
+F24D
+F24E
+F24F
+F250
+F251
+F252
+F253
+F254
+F255
+F256
+F257
+F258
+F259
+F25A
+F261
+F262
+F263
+F264
+F265
+F266
+F267
+F268
+F269
+F26A
+F26B
+F26C
+F26D
+F26E
+F26F
+F270
+F271
+F272
+F273
+F274
+F275
+F276
+F277
+F278
+F279
+F27A
+F281
+F282
+F283
+F284
+F285
+F286
+F287
+F288
+F289
+F28A
+F28B
+F28C
+F28D
+F28E
+F28F
+F290
+F291
+F292
+F293
+F294
+F295
+F296
+F297
+F298
+F299
+F29A
+F29B
+F29C
+F29D
+F29E
+F29F
+F2A0
+F341
+F342
+F343
+F344
+F345
+F346
+F347
+F348
+F349
+F34A
+F34B
+F34C
+F34D
+F34E
+F34F
+F350
+F351
+F352
+F353
+F354
+F355
+F356
+F357
+F358
+F359
+F35A
+F361
+F362
+F363
+F364
+F365
+F366
+F367
+F368
+F369
+F36A
+F36B
+F36C
+F36D
+F36E
+F36F
+F370
+F371
+F372
+F373
+F374
+F375
+F376
+F377
+F378
+F379
+F37A
+F381
+F382
+F383
+F384
+F385
+F386
+F387
+F388
+F389
+F38A
+F38B
+F38C
+F38D
+F38E
+F38F
+F390
+F391
+F392
+F393
+F394
+F395
+F396
+F397
+F398
+F399
+F39A
+F39B
+F39C
+F39D
+F39E
+F39F
+F3A0
+F441
+F442
+F443
+F444
+F445
+F446
+F447
+F448
+F449
+F44A
+F44B
+F44C
+F44D
+F44E
+F44F
+F450
+F451
+F452
+F453
+F454
+F455
+F456
+F457
+F458
+F459
+F45A
+F461
+F462
+F463
+F464
+F465
+F466
+F467
+F468
+F469
+F46A
+F46B
+F46C
+F46D
+F46E
+F46F
+F470
+F471
+F472
+F473
+F474
+F475
+F476
+F477
+F478
+F479
+F47A
+F481
+F482
+F483
+F484
+F485
+F486
+F487
+F488
+F489
+F48A
+F48B
+F48C
+F48D
+F48E
+F48F
+F490
+F491
+F492
+F493
+F494
+F495
+F496
+F497
+F498
+F499
+F49A
+F49B
+F49C
+F49D
+F49E
+F49F
+F4A0
+F541
+F542
+F543
+F544
+F545
+F546
+F547
+F548
+F549
+F54A
+F54B
+F54C
+F54D
+F54E
+F54F
+F550
+F551
+F552
+F553
+F554
+F555
+F556
+F557
+F558
+F559
+F55A
+F561
+F562
+F563
+F564
+F565
+F566
+F567
+F568
+F569
+F56A
+F56B
+F56C
+F56D
+F56E
+F56F
+F570
+F571
+F572
+F573
+F574
+F575
+F576
+F577
+F578
+F579
+F57A
+F581
+F582
+F583
+F584
+F585
+F586
+F587
+F588
+F589
+F58A
+F58B
+F58C
+F58D
+F58E
+F58F
+F590
+F591
+F592
+F593
+F594
+F595
+F596
+F597
+F598
+F599
+F59A
+F59B
+F59C
+F59D
+F59E
+F59F
+F5A0
+F641
+F642
+F643
+F644
+F645
+F646
+F647
+F648
+F649
+F64A
+F64B
+F64C
+F64D
+F64E
+F64F
+F650
+F651
+F652
+F653
+F654
+F655
+F656
+F657
+F658
+F659
+F65A
+F661
+F662
+F663
+F664
+F665
+F666
+F667
+F668
+F669
+F66A
+F66B
+F66C
+F66D
+F66E
+F66F
+F670
+F671
+F672
+F673
+F674
+F675
+F676
+F677
+F678
+F679
+F67A
+F681
+F682
+F683
+F684
+F685
+F686
+F687
+F688
+F689
+F68A
+F68B
+F68C
+F68D
+F68E
+F68F
+F690
+F691
+F692
+F693
+F694
+F695
+F696
+F697
+F698
+F699
+F69A
+F69B
+F69C
+F69D
+F69E
+F69F
+F6A0
+F741
+F742
+F743
+F744
+F745
+F746
+F747
+F748
+F749
+F74A
+F74B
+F74C
+F74D
+F74E
+F74F
+F750
+F751
+F752
+F753
+F754
+F755
+F756
+F757
+F758
+F759
+F75A
+F761
+F762
+F763
+F764
+F765
+F766
+F767
+F768
+F769
+F76A
+F76B
+F76C
+F76D
+F76E
+F76F
+F770
+F771
+F772
+F773
+F774
+F775
+F776
+F777
+F778
+F779
+F77A
+F781
+F782
+F783
+F784
+F785
+F786
+F787
+F788
+F789
+F78A
+F78B
+F78C
+F78D
+F78E
+F78F
+F790
+F791
+F792
+F793
+F794
+F795
+F796
+F797
+F798
+F799
+F79A
+F79B
+F79C
+F79D
+F79E
+F79F
+F7A0
+F841
+F842
+F843
+F844
+F845
+F846
+F847
+F848
+F849
+F84A
+F84B
+F84C
+F84D
+F84E
+F84F
+F850
+F851
+F852
+F853
+F854
+F855
+F856
+F857
+F858
+F859
+F85A
+F861
+F862
+F863
+F864
+F865
+F866
+F867
+F868
+F869
+F86A
+F86B
+F86C
+F86D
+F86E
+F86F
+F870
+F871
+F872
+F873
+F874
+F875
+F876
+F877
+F878
+F879
+F87A
+F881
+F882
+F883
+F884
+F885
+F886
+F887
+F888
+F889
+F88A
+F88B
+F88C
+F88D
+F88E
+F88F
+F890
+F891
+F892
+F893
+F894
+F895
+F896
+F897
+F898
+F899
+F89A
+F89B
+F89C
+F89D
+F89E
+F89F
+F8A0
+F941
+F942
+F943
+F944
+F945
+F946
+F947
+F948
+F949
+F94A
+F94B
+F94C
+F94D
+F94E
+F94F
+F950
+F951
+F952
+F953
+F954
+F955
+F956
+F957
+F958
+F959
+F95A
+F961
+F962
+F963
+F964
+F965
+F966
+F967
+F968
+F969
+F96A
+F96B
+F96C
+F96D
+F96E
+F96F
+F970
+F971
+F972
+F973
+F974
+F975
+F976
+F977
+F978
+F979
+F97A
+F981
+F982
+F983
+F984
+F985
+F986
+F987
+F988
+F989
+F98A
+F98B
+F98C
+F98D
+F98E
+F98F
+F990
+F991
+F992
+F993
+F994
+F995
+F996
+F997
+F998
+F999
+F99A
+F99B
+F99C
+F99D
+F99E
+F99F
+F9A0
+FA41
+FA42
+FA43
+FA44
+FA45
+FA46
+FA47
+FA48
+FA49
+FA4A
+FA4B
+FA4C
+FA4D
+FA4E
+FA4F
+FA50
+FA51
+FA52
+FA53
+FA54
+FA55
+FA56
+FA57
+FA58
+FA59
+FA5A
+FA61
+FA62
+FA63
+FA64
+FA65
+FA66
+FA67
+FA68
+FA69
+FA6A
+FA6B
+FA6C
+FA6D
+FA6E
+FA6F
+FA70
+FA71
+FA72
+FA73
+FA74
+FA75
+FA76
+FA77
+FA78
+FA79
+FA7A
+FA81
+FA82
+FA83
+FA84
+FA85
+FA86
+FA87
+FA88
+FA89
+FA8A
+FA8B
+FA8C
+FA8D
+FA8E
+FA8F
+FA90
+FA91
+FA92
+FA93
+FA94
+FA95
+FA96
+FA97
+FA98
+FA99
+FA9A
+FA9B
+FA9C
+FA9D
+FA9E
+FA9F
+FAA0
+FB41
+FB42
+FB43
+FB44
+FB45
+FB46
+FB47
+FB48
+FB49
+FB4A
+FB4B
+FB4C
+FB4D
+FB4E
+FB4F
+FB50
+FB51
+FB52
+FB53
+FB54
+FB55
+FB56
+FB57
+FB58
+FB59
+FB5A
+FB61
+FB62
+FB63
+FB64
+FB65
+FB66
+FB67
+FB68
+FB69
+FB6A
+FB6B
+FB6C
+FB6D
+FB6E
+FB6F
+FB70
+FB71
+FB72
+FB73
+FB74
+FB75
+FB76
+FB77
+FB78
+FB79
+FB7A
+FB81
+FB82
+FB83
+FB84
+FB85
+FB86
+FB87
+FB88
+FB89
+FB8A
+FB8B
+FB8C
+FB8D
+FB8E
+FB8F
+FB90
+FB91
+FB92
+FB93
+FB94
+FB95
+FB96
+FB97
+FB98
+FB99
+FB9A
+FB9B
+FB9C
+FB9D
+FB9E
+FB9F
+FBA0
+FC41
+FC42
+FC43
+FC44
+FC45
+FC46
+FC47
+FC48
+FC49
+FC4A
+FC4B
+FC4C
+FC4D
+FC4E
+FC4F
+FC50
+FC51
+FC52
+FC53
+FC54
+FC55
+FC56
+FC57
+FC58
+FC59
+FC5A
+FC61
+FC62
+FC63
+FC64
+FC65
+FC66
+FC67
+FC68
+FC69
+FC6A
+FC6B
+FC6C
+FC6D
+FC6E
+FC6F
+FC70
+FC71
+FC72
+FC73
+FC74
+FC75
+FC76
+FC77
+FC78
+FC79
+FC7A
+FC81
+FC82
+FC83
+FC84
+FC85
+FC86
+FC87
+FC88
+FC89
+FC8A
+FC8B
+FC8C
+FC8D
+FC8E
+FC8F
+FC90
+FC91
+FC92
+FC93
+FC94
+FC95
+FC96
+FC97
+FC98
+FC99
+FC9A
+FC9B
+FC9C
+FC9D
+FC9E
+FC9F
+FCA0
+FD41
+FD42
+FD43
+FD44
+FD45
+FD46
+FD47
+FD48
+FD49
+FD4A
+FD4B
+FD4C
+FD4D
+FD4E
+FD4F
+FD50
+FD51
+FD52
+FD53
+FD54
+FD55
+FD56
+FD57
+FD58
+FD59
+FD5A
+FD61
+FD62
+FD63
+FD64
+FD65
+FD66
+FD67
+FD68
+FD69
+FD6A
+FD6B
+FD6C
+FD6D
+FD6E
+FD6F
+FD70
+FD71
+FD72
+FD73
+FD74
+FD75
+FD76
+FD77
+FD78
+FD79
+FD7A
+FD81
+FD82
+FD83
+FD84
+FD85
+FD86
+FD87
+FD88
+FD89
+FD8A
+FD8B
+FD8C
+FD8D
+FD8E
+FD8F
+FD90
+FD91
+FD92
+FD93
+FD94
+FD95
+FD96
+FD97
+FD98
+FD99
+FD9A
+FD9B
+FD9C
+FD9D
+FD9E
+FD9F
+FDA0
+FE41
+FE42
+FE43
+FE44
+FE45
+FE46
+FE47
+FE48
+FE49
+FE4A
+FE4B
+FE4C
+FE4D
+FE4E
+FE4F
+FE50
+FE51
+FE52
+FE53
+FE54
+FE55
+FE56
+FE57
+FE58
+FE59
+FE5A
+FE61
+FE62
+FE63
+FE64
+FE65
+FE66
+FE67
+FE68
+FE69
+FE6A
+FE6B
+FE6C
+FE6D
+FE6E
+FE6F
+FE70
+FE71
+FE72
+FE73
+FE74
+FE75
+FE76
+FE77
+FE78
+FE79
+FE7A
+FE81
+FE82
+FE83
+FE84
+FE85
+FE86
+FE87
+FE88
+FE89
+FE8A
+FE8B
+FE8C
+FE8D
+FE8E
+FE8F
+FE90
+FE91
+FE92
+FE93
+FE94
+FE95
+FE96
+FE97
+FE98
+FE99
+FE9A
+FE9B
+FE9C
+FE9D
+FE9E
+FE9F
+FEA0
+FEA1
+FEA2
+FEA3
+FEA4
+FEA5
+FEA6
+FEA7
+FEA8
+FEA9
+FEAA
+FEAB
+FEAC
+FEAD
+FEAE
+FEAF
+FEB0
+FEB1
+FEB2
+FEB3
+FEB4
+FEB5
+FEB6
+FEB7
+FEB8
+FEB9
+FEBA
+FEBB
+FEBC
+FEBD
+FEBE
+FEBF
+FEC0
+FEC1
+FEC2
+FEC3
+FEC4
+FEC5
+FEC6
+FEC7
+FEC8
+FEC9
+FECA
+FECB
+FECC
+FECD
+FECE
+FECF
+FED0
+FED1
+FED2
+FED3
+FED4
+FED5
+FED6
+FED7
+FED8
+FED9
+FEDA
+FEDB
+FEDC
+FEDD
+FEDE
+FEDF
+FEE0
+FEE1
+FEE2
+FEE3
+FEE4
+FEE5
+FEE6
+FEE7
+FEE8
+FEE9
+FEEA
+FEEB
+FEEC
+FEED
+FEEE
+FEEF
+FEF0
+FEF1
+FEF2
+FEF3
+FEF4
+FEF5
+FEF6
+FEF7
+FEF8
+FEF9
+FEFA
+FEFB
+FEFC
+FEFD
+FEFE
+DELETE FROM t2 WHERE u='?';
+SELECT count(*) as roundtrip_problem_chars FROM t2 WHERE hex(a) <> hex(a2);
+roundtrip_problem_chars
+0
+SELECT s, hex(a), hex(u), hex(a2) FROM t2 ORDER BY s;
+s hex(a) hex(u) hex(a2)
+8141 8141 EAB082 8141
+8142 8142 EAB083 8142
+8143 8143 EAB085 8143
+8144 8144 EAB086 8144
+8145 8145 EAB08B 8145
+8146 8146 EAB08C 8146
+8147 8147 EAB08D 8147
+8148 8148 EAB08E 8148
+8149 8149 EAB08F 8149
+814A 814A EAB098 814A
+814B 814B EAB09E 814B
+814C 814C EAB09F 814C
+814D 814D EAB0A1 814D
+814E 814E EAB0A2 814E
+814F 814F EAB0A3 814F
+8150 8150 EAB0A5 8150
+8151 8151 EAB0A6 8151
+8152 8152 EAB0A7 8152
+8153 8153 EAB0A8 8153
+8154 8154 EAB0A9 8154
+8155 8155 EAB0AA 8155
+8156 8156 EAB0AB 8156
+8157 8157 EAB0AE 8157
+8158 8158 EAB0B2 8158
+8159 8159 EAB0B3 8159
+815A 815A EAB0B4 815A
+8161 8161 EAB0B5 8161
+8162 8162 EAB0B6 8162
+8163 8163 EAB0B7 8163
+8164 8164 EAB0BA 8164
+8165 8165 EAB0BB 8165
+8166 8166 EAB0BD 8166
+8167 8167 EAB0BE 8167
+8168 8168 EAB0BF 8168
+8169 8169 EAB181 8169
+816A 816A EAB182 816A
+816B 816B EAB183 816B
+816C 816C EAB184 816C
+816D 816D EAB185 816D
+816E 816E EAB186 816E
+816F 816F EAB187 816F
+8170 8170 EAB188 8170
+8171 8171 EAB189 8171
+8172 8172 EAB18A 8172
+8173 8173 EAB18C 8173
+8174 8174 EAB18E 8174
+8175 8175 EAB18F 8175
+8176 8176 EAB190 8176
+8177 8177 EAB191 8177
+8178 8178 EAB192 8178
+8179 8179 EAB193 8179
+817A 817A EAB195 817A
+8181 8181 EAB196 8181
+8182 8182 EAB197 8182
+8183 8183 EAB199 8183
+8184 8184 EAB19A 8184
+8185 8185 EAB19B 8185
+8186 8186 EAB19D 8186
+8187 8187 EAB19E 8187
+8188 8188 EAB19F 8188
+8189 8189 EAB1A0 8189
+818A 818A EAB1A1 818A
+818B 818B EAB1A2 818B
+818C 818C EAB1A3 818C
+818D 818D EAB1A4 818D
+818E 818E EAB1A5 818E
+818F 818F EAB1A6 818F
+8190 8190 EAB1A7 8190
+8191 8191 EAB1A8 8191
+8192 8192 EAB1A9 8192
+8193 8193 EAB1AA 8193
+8194 8194 EAB1AB 8194
+8195 8195 EAB1AC 8195
+8196 8196 EAB1AD 8196
+8197 8197 EAB1AE 8197
+8198 8198 EAB1AF 8198
+8199 8199 EAB1B2 8199
+819A 819A EAB1B3 819A
+819B 819B EAB1B5 819B
+819C 819C EAB1B6 819C
+819D 819D EAB1B9 819D
+819E 819E EAB1BB 819E
+819F 819F EAB1BC 819F
+81A0 81A0 EAB1BD 81A0
+81A1 81A1 EAB1BE 81A1
+81A2 81A2 EAB1BF 81A2
+81A3 81A3 EAB282 81A3
+81A4 81A4 EAB287 81A4
+81A5 81A5 EAB288 81A5
+81A6 81A6 EAB28D 81A6
+81A7 81A7 EAB28E 81A7
+81A8 81A8 EAB28F 81A8
+81A9 81A9 EAB291 81A9
+81AA 81AA EAB292 81AA
+81AB 81AB EAB293 81AB
+81AC 81AC EAB295 81AC
+81AD 81AD EAB296 81AD
+81AE 81AE EAB297 81AE
+81AF 81AF EAB298 81AF
+81B0 81B0 EAB299 81B0
+81B1 81B1 EAB29A 81B1
+81B2 81B2 EAB29B 81B2
+81B3 81B3 EAB29E 81B3
+81B4 81B4 EAB2A2 81B4
+81B5 81B5 EAB2A3 81B5
+81B6 81B6 EAB2A4 81B6
+81B7 81B7 EAB2A5 81B7
+81B8 81B8 EAB2A6 81B8
+81B9 81B9 EAB2A7 81B9
+81BA 81BA EAB2AB 81BA
+81BB 81BB EAB2AD 81BB
+81BC 81BC EAB2AE 81BC
+81BD 81BD EAB2B1 81BD
+81BE 81BE EAB2B2 81BE
+81BF 81BF EAB2B3 81BF
+81C0 81C0 EAB2B4 81C0
+81C1 81C1 EAB2B5 81C1
+81C2 81C2 EAB2B6 81C2
+81C3 81C3 EAB2B7 81C3
+81C4 81C4 EAB2BA 81C4
+81C5 81C5 EAB2BE 81C5
+81C6 81C6 EAB2BF 81C6
+81C7 81C7 EAB380 81C7
+81C8 81C8 EAB382 81C8
+81C9 81C9 EAB383 81C9
+81CA 81CA EAB385 81CA
+81CB 81CB EAB386 81CB
+81CC 81CC EAB387 81CC
+81CD 81CD EAB389 81CD
+81CE 81CE EAB38A 81CE
+81CF 81CF EAB38B 81CF
+81D0 81D0 EAB38D 81D0
+81D1 81D1 EAB38E 81D1
+81D2 81D2 EAB38F 81D2
+81D3 81D3 EAB390 81D3
+81D4 81D4 EAB391 81D4
+81D5 81D5 EAB392 81D5
+81D6 81D6 EAB393 81D6
+81D7 81D7 EAB394 81D7
+81D8 81D8 EAB396 81D8
+81D9 81D9 EAB398 81D9
+81DA 81DA EAB399 81DA
+81DB 81DB EAB39A 81DB
+81DC 81DC EAB39B 81DC
+81DD 81DD EAB39C 81DD
+81DE 81DE EAB39D 81DE
+81DF 81DF EAB39E 81DF
+81E0 81E0 EAB39F 81E0
+81E1 81E1 EAB3A2 81E1
+81E2 81E2 EAB3A3 81E2
+81E3 81E3 EAB3A5 81E3
+81E4 81E4 EAB3A6 81E4
+81E5 81E5 EAB3A9 81E5
+81E6 81E6 EAB3AB 81E6
+81E7 81E7 EAB3AD 81E7
+81E8 81E8 EAB3AE 81E8
+81E9 81E9 EAB3B2 81E9
+81EA 81EA EAB3B4 81EA
+81EB 81EB EAB3B7 81EB
+81EC 81EC EAB3B8 81EC
+81ED 81ED EAB3B9 81ED
+81EE 81EE EAB3BA 81EE
+81EF 81EF EAB3BB 81EF
+81F0 81F0 EAB3BE 81F0
+81F1 81F1 EAB3BF 81F1
+81F2 81F2 EAB481 81F2
+81F3 81F3 EAB482 81F3
+81F4 81F4 EAB483 81F4
+81F5 81F5 EAB485 81F5
+81F6 81F6 EAB487 81F6
+81F7 81F7 EAB488 81F7
+81F8 81F8 EAB489 81F8
+81F9 81F9 EAB48A 81F9
+81FA 81FA EAB48B 81FA
+81FB 81FB EAB48E 81FB
+81FC 81FC EAB490 81FC
+81FD 81FD EAB492 81FD
+81FE 81FE EAB493 81FE
+8241 8241 EAB494 8241
+8242 8242 EAB495 8242
+8243 8243 EAB496 8243
+8244 8244 EAB497 8244
+8245 8245 EAB499 8245
+8246 8246 EAB49A 8246
+8247 8247 EAB49B 8247
+8248 8248 EAB49D 8248
+8249 8249 EAB49E 8249
+824A 824A EAB49F 824A
+824B 824B EAB4A1 824B
+824C 824C EAB4A2 824C
+824D 824D EAB4A3 824D
+824E 824E EAB4A4 824E
+824F 824F EAB4A5 824F
+8250 8250 EAB4A6 8250
+8251 8251 EAB4A7 8251
+8252 8252 EAB4A8 8252
+8253 8253 EAB4AA 8253
+8254 8254 EAB4AB 8254
+8255 8255 EAB4AE 8255
+8256 8256 EAB4AF 8256
+8257 8257 EAB4B0 8257
+8258 8258 EAB4B1 8258
+8259 8259 EAB4B2 8259
+825A 825A EAB4B3 825A
+8261 8261 EAB4B6 8261
+8262 8262 EAB4B7 8262
+8263 8263 EAB4B9 8263
+8264 8264 EAB4BA 8264
+8265 8265 EAB4BB 8265
+8266 8266 EAB4BD 8266
+8267 8267 EAB4BE 8267
+8268 8268 EAB4BF 8268
+8269 8269 EAB580 8269
+826A 826A EAB581 826A
+826B 826B EAB582 826B
+826C 826C EAB583 826C
+826D 826D EAB586 826D
+826E 826E EAB588 826E
+826F 826F EAB58A 826F
+8270 8270 EAB58B 8270
+8271 8271 EAB58C 8271
+8272 8272 EAB58D 8272
+8273 8273 EAB58E 8273
+8274 8274 EAB58F 8274
+8275 8275 EAB591 8275
+8276 8276 EAB592 8276
+8277 8277 EAB593 8277
+8278 8278 EAB595 8278
+8279 8279 EAB596 8279
+827A 827A EAB597 827A
+8281 8281 EAB599 8281
+8282 8282 EAB59A 8282
+8283 8283 EAB59B 8283
+8284 8284 EAB59C 8284
+8285 8285 EAB59D 8285
+8286 8286 EAB59E 8286
+8287 8287 EAB59F 8287
+8288 8288 EAB5A0 8288
+8289 8289 EAB5A2 8289
+828A 828A EAB5A4 828A
+828B 828B EAB5A5 828B
+828C 828C EAB5A6 828C
+828D 828D EAB5A7 828D
+828E 828E EAB5A8 828E
+828F 828F EAB5A9 828F
+8290 8290 EAB5AA 8290
+8291 8291 EAB5AB 8291
+8292 8292 EAB5AE 8292
+8293 8293 EAB5AF 8293
+8294 8294 EAB5B1 8294
+8295 8295 EAB5B2 8295
+8296 8296 EAB5B7 8296
+8297 8297 EAB5B8 8297
+8298 8298 EAB5B9 8298
+8299 8299 EAB5BA 8299
+829A 829A EAB5BE 829A
+829B 829B EAB680 829B
+829C 829C EAB683 829C
+829D 829D EAB684 829D
+829E 829E EAB685 829E
+829F 829F EAB686 829F
+82A0 82A0 EAB687 82A0
+82A1 82A1 EAB68A 82A1
+82A2 82A2 EAB68B 82A2
+82A3 82A3 EAB68D 82A3
+82A4 82A4 EAB68E 82A4
+82A5 82A5 EAB68F 82A5
+82A6 82A6 EAB691 82A6
+82A7 82A7 EAB692 82A7
+82A8 82A8 EAB693 82A8
+82A9 82A9 EAB694 82A9
+82AA 82AA EAB695 82AA
+82AB 82AB EAB696 82AB
+82AC 82AC EAB697 82AC
+82AD 82AD EAB698 82AD
+82AE 82AE EAB699 82AE
+82AF 82AF EAB69A 82AF
+82B0 82B0 EAB69B 82B0
+82B1 82B1 EAB69E 82B1
+82B2 82B2 EAB69F 82B2
+82B3 82B3 EAB6A0 82B3
+82B4 82B4 EAB6A1 82B4
+82B5 82B5 EAB6A2 82B5
+82B6 82B6 EAB6A3 82B6
+82B7 82B7 EAB6A5 82B7
+82B8 82B8 EAB6A6 82B8
+82B9 82B9 EAB6A7 82B9
+82BA 82BA EAB6A8 82BA
+82BB 82BB EAB6A9 82BB
+82BC 82BC EAB6AA 82BC
+82BD 82BD EAB6AB 82BD
+82BE 82BE EAB6AC 82BE
+82BF 82BF EAB6AD 82BF
+82C0 82C0 EAB6AE 82C0
+82C1 82C1 EAB6AF 82C1
+82C2 82C2 EAB6B0 82C2
+82C3 82C3 EAB6B1 82C3
+82C4 82C4 EAB6B2 82C4
+82C5 82C5 EAB6B3 82C5
+82C6 82C6 EAB6B4 82C6
+82C7 82C7 EAB6B5 82C7
+82C8 82C8 EAB6B6 82C8
+82C9 82C9 EAB6B8 82C9
+82CA 82CA EAB6B9 82CA
+82CB 82CB EAB6BA 82CB
+82CC 82CC EAB6BB 82CC
+82CD 82CD EAB6BC 82CD
+82CE 82CE EAB6BD 82CE
+82CF 82CF EAB6BE 82CF
+82D0 82D0 EAB6BF 82D0
+82D1 82D1 EAB782 82D1
+82D2 82D2 EAB783 82D2
+82D3 82D3 EAB785 82D3
+82D4 82D4 EAB786 82D4
+82D5 82D5 EAB787 82D5
+82D6 82D6 EAB789 82D6
+82D7 82D7 EAB78A 82D7
+82D8 82D8 EAB78B 82D8
+82D9 82D9 EAB78C 82D9
+82DA 82DA EAB78D 82DA
+82DB 82DB EAB78E 82DB
+82DC 82DC EAB78F 82DC
+82DD 82DD EAB792 82DD
+82DE 82DE EAB794 82DE
+82DF 82DF EAB795 82DF
+82E0 82E0 EAB796 82E0
+82E1 82E1 EAB797 82E1
+82E2 82E2 EAB798 82E2
+82E3 82E3 EAB799 82E3
+82E4 82E4 EAB79A 82E4
+82E5 82E5 EAB79B 82E5
+82E6 82E6 EAB79D 82E6
+82E7 82E7 EAB79E 82E7
+82E8 82E8 EAB79F 82E8
+82E9 82E9 EAB7A1 82E9
+82EA 82EA EAB7A2 82EA
+82EB 82EB EAB7A3 82EB
+82EC 82EC EAB7A5 82EC
+82ED 82ED EAB7A6 82ED
+82EE 82EE EAB7A7 82EE
+82EF 82EF EAB7A8 82EF
+82F0 82F0 EAB7A9 82F0
+82F1 82F1 EAB7AA 82F1
+82F2 82F2 EAB7AB 82F2
+82F3 82F3 EAB7AC 82F3
+82F4 82F4 EAB7AD 82F4
+82F5 82F5 EAB7AE 82F5
+82F6 82F6 EAB7AF 82F6
+82F7 82F7 EAB7B0 82F7
+82F8 82F8 EAB7B1 82F8
+82F9 82F9 EAB7B2 82F9
+82FA 82FA EAB7B3 82FA
+82FB 82FB EAB7B4 82FB
+82FC 82FC EAB7B5 82FC
+82FD 82FD EAB7B6 82FD
+82FE 82FE EAB7B7 82FE
+8341 8341 EAB7BA 8341
+8342 8342 EAB7BB 8342
+8343 8343 EAB7BD 8343
+8344 8344 EAB7BE 8344
+8345 8345 EAB882 8345
+8346 8346 EAB883 8346
+8347 8347 EAB884 8347
+8348 8348 EAB885 8348
+8349 8349 EAB886 8349
+834A 834A EAB887 834A
+834B 834B EAB88A 834B
+834C 834C EAB88C 834C
+834D 834D EAB88E 834D
+834E 834E EAB88F 834E
+834F 834F EAB890 834F
+8350 8350 EAB891 8350
+8351 8351 EAB892 8351
+8352 8352 EAB893 8352
+8353 8353 EAB895 8353
+8354 8354 EAB896 8354
+8355 8355 EAB897 8355
+8356 8356 EAB898 8356
+8357 8357 EAB899 8357
+8358 8358 EAB89A 8358
+8359 8359 EAB89B 8359
+835A 835A EAB89C 835A
+8361 8361 EAB89D 8361
+8362 8362 EAB89E 8362
+8363 8363 EAB89F 8363
+8364 8364 EAB8A0 8364
+8365 8365 EAB8A1 8365
+8366 8366 EAB8A2 8366
+8367 8367 EAB8A3 8367
+8368 8368 EAB8A4 8368
+8369 8369 EAB8A5 8369
+836A 836A EAB8A6 836A
+836B 836B EAB8A7 836B
+836C 836C EAB8A8 836C
+836D 836D EAB8A9 836D
+836E 836E EAB8AA 836E
+836F 836F EAB8AB 836F
+8370 8370 EAB8AC 8370
+8371 8371 EAB8AD 8371
+8372 8372 EAB8AE 8372
+8373 8373 EAB8AF 8373
+8374 8374 EAB8B2 8374
+8375 8375 EAB8B3 8375
+8376 8376 EAB8B5 8376
+8377 8377 EAB8B6 8377
+8378 8378 EAB8B9 8378
+8379 8379 EAB8BB 8379
+837A 837A EAB8BC 837A
+8381 8381 EAB8BD 8381
+8382 8382 EAB8BE 8382
+8383 8383 EAB8BF 8383
+8384 8384 EAB982 8384
+8385 8385 EAB984 8385
+8386 8386 EAB987 8386
+8387 8387 EAB988 8387
+8388 8388 EAB989 8388
+8389 8389 EAB98B 8389
+838A 838A EAB98F 838A
+838B 838B EAB991 838B
+838C 838C EAB992 838C
+838D 838D EAB993 838D
+838E 838E EAB995 838E
+838F 838F EAB997 838F
+8390 8390 EAB998 8390
+8391 8391 EAB999 8391
+8392 8392 EAB99A 8392
+8393 8393 EAB99B 8393
+8394 8394 EAB99E 8394
+8395 8395 EAB9A2 8395
+8396 8396 EAB9A3 8396
+8397 8397 EAB9A4 8397
+8398 8398 EAB9A6 8398
+8399 8399 EAB9A7 8399
+839A 839A EAB9AA 839A
+839B 839B EAB9AB 839B
+839C 839C EAB9AD 839C
+839D 839D EAB9AE 839D
+839E 839E EAB9AF 839E
+839F 839F EAB9B1 839F
+83A0 83A0 EAB9B2 83A0
+83A1 83A1 EAB9B3 83A1
+83A2 83A2 EAB9B4 83A2
+83A3 83A3 EAB9B5 83A3
+83A4 83A4 EAB9B6 83A4
+83A5 83A5 EAB9B7 83A5
+83A6 83A6 EAB9BA 83A6
+83A7 83A7 EAB9BE 83A7
+83A8 83A8 EAB9BF 83A8
+83A9 83A9 EABA80 83A9
+83AA 83AA EABA81 83AA
+83AB 83AB EABA82 83AB
+83AC 83AC EABA83 83AC
+83AD 83AD EABA86 83AD
+83AE 83AE EABA87 83AE
+83AF 83AF EABA88 83AF
+83B0 83B0 EABA89 83B0
+83B1 83B1 EABA8A 83B1
+83B2 83B2 EABA8B 83B2
+83B3 83B3 EABA8D 83B3
+83B4 83B4 EABA8E 83B4
+83B5 83B5 EABA8F 83B5
+83B6 83B6 EABA90 83B6
+83B7 83B7 EABA91 83B7
+83B8 83B8 EABA92 83B8
+83B9 83B9 EABA93 83B9
+83BA 83BA EABA94 83BA
+83BB 83BB EABA95 83BB
+83BC 83BC EABA96 83BC
+83BD 83BD EABA97 83BD
+83BE 83BE EABA98 83BE
+83BF 83BF EABA99 83BF
+83C0 83C0 EABA9A 83C0
+83C1 83C1 EABA9B 83C1
+83C2 83C2 EABA9C 83C2
+83C3 83C3 EABA9D 83C3
+83C4 83C4 EABA9E 83C4
+83C5 83C5 EABA9F 83C5
+83C6 83C6 EABAA0 83C6
+83C7 83C7 EABAA1 83C7
+83C8 83C8 EABAA2 83C8
+83C9 83C9 EABAA3 83C9
+83CA 83CA EABAA4 83CA
+83CB 83CB EABAA5 83CB
+83CC 83CC EABAA6 83CC
+83CD 83CD EABAA7 83CD
+83CE 83CE EABAA8 83CE
+83CF 83CF EABAA9 83CF
+83D0 83D0 EABAAA 83D0
+83D1 83D1 EABAAB 83D1
+83D2 83D2 EABAAC 83D2
+83D3 83D3 EABAAD 83D3
+83D4 83D4 EABAAE 83D4
+83D5 83D5 EABAAF 83D5
+83D6 83D6 EABAB0 83D6
+83D7 83D7 EABAB1 83D7
+83D8 83D8 EABAB2 83D8
+83D9 83D9 EABAB3 83D9
+83DA 83DA EABAB4 83DA
+83DB 83DB EABAB5 83DB
+83DC 83DC EABAB6 83DC
+83DD 83DD EABAB7 83DD
+83DE 83DE EABAB8 83DE
+83DF 83DF EABAB9 83DF
+83E0 83E0 EABABA 83E0
+83E1 83E1 EABABB 83E1
+83E2 83E2 EABABF 83E2
+83E3 83E3 EABB81 83E3
+83E4 83E4 EABB82 83E4
+83E5 83E5 EABB83 83E5
+83E6 83E6 EABB85 83E6
+83E7 83E7 EABB86 83E7
+83E8 83E8 EABB87 83E8
+83E9 83E9 EABB88 83E9
+83EA 83EA EABB89 83EA
+83EB 83EB EABB8A 83EB
+83EC 83EC EABB8B 83EC
+83ED 83ED EABB8E 83ED
+83EE 83EE EABB92 83EE
+83EF 83EF EABB93 83EF
+83F0 83F0 EABB94 83F0
+83F1 83F1 EABB95 83F1
+83F2 83F2 EABB96 83F2
+83F3 83F3 EABB97 83F3
+83F4 83F4 EABB9A 83F4
+83F5 83F5 EABB9B 83F5
+83F6 83F6 EABB9D 83F6
+83F7 83F7 EABB9E 83F7
+83F8 83F8 EABB9F 83F8
+83F9 83F9 EABBA0 83F9
+83FA 83FA EABBA1 83FA
+83FB 83FB EABBA2 83FB
+83FC 83FC EABBA3 83FC
+83FD 83FD EABBA4 83FD
+83FE 83FE EABBA5 83FE
+8441 8441 EABBA6 8441
+8442 8442 EABBA7 8442
+8443 8443 EABBA9 8443
+8444 8444 EABBAA 8444
+8445 8445 EABBAC 8445
+8446 8446 EABBAE 8446
+8447 8447 EABBAF 8447
+8448 8448 EABBB0 8448
+8449 8449 EABBB1 8449
+844A 844A EABBB2 844A
+844B 844B EABBB3 844B
+844C 844C EABBB5 844C
+844D 844D EABBB6 844D
+844E 844E EABBB7 844E
+844F 844F EABBB9 844F
+8450 8450 EABBBA 8450
+8451 8451 EABBBB 8451
+8452 8452 EABBBD 8452
+8453 8453 EABBBE 8453
+8454 8454 EABBBF 8454
+8455 8455 EABC80 8455
+8456 8456 EABC81 8456
+8457 8457 EABC82 8457
+8458 8458 EABC83 8458
+8459 8459 EABC84 8459
+845A 845A EABC85 845A
+8461 8461 EABC86 8461
+8462 8462 EABC89 8462
+8463 8463 EABC8A 8463
+8464 8464 EABC8B 8464
+8465 8465 EABC8C 8465
+8466 8466 EABC8E 8466
+8467 8467 EABC8F 8467
+8468 8468 EABC91 8468
+8469 8469 EABC92 8469
+846A 846A EABC93 846A
+846B 846B EABC94 846B
+846C 846C EABC95 846C
+846D 846D EABC96 846D
+846E 846E EABC97 846E
+846F 846F EABC98 846F
+8470 8470 EABC99 8470
+8471 8471 EABC9A 8471
+8472 8472 EABC9B 8472
+8473 8473 EABC9C 8473
+8474 8474 EABC9D 8474
+8475 8475 EABC9E 8475
+8476 8476 EABC9F 8476
+8477 8477 EABCA0 8477
+8478 8478 EABCA1 8478
+8479 8479 EABCA2 8479
+847A 847A EABCA3 847A
+8481 8481 EABCA4 8481
+8482 8482 EABCA5 8482
+8483 8483 EABCA6 8483
+8484 8484 EABCA7 8484
+8485 8485 EABCA8 8485
+8486 8486 EABCA9 8486
+8487 8487 EABCAA 8487
+8488 8488 EABCAB 8488
+8489 8489 EABCAE 8489
+848A 848A EABCAF 848A
+848B 848B EABCB1 848B
+848C 848C EABCB3 848C
+848D 848D EABCB5 848D
+848E 848E EABCB6 848E
+848F 848F EABCB7 848F
+8490 8490 EABCB8 8490
+8491 8491 EABCB9 8491
+8492 8492 EABCBA 8492
+8493 8493 EABCBB 8493
+8494 8494 EABCBE 8494
+8495 8495 EABD80 8495
+8496 8496 EABD84 8496
+8497 8497 EABD85 8497
+8498 8498 EABD86 8498
+8499 8499 EABD87 8499
+849A 849A EABD8A 849A
+849B 849B EABD8B 849B
+849C 849C EABD8C 849C
+849D 849D EABD8D 849D
+849E 849E EABD8E 849E
+849F 849F EABD8F 849F
+84A0 84A0 EABD91 84A0
+84A1 84A1 EABD92 84A1
+84A2 84A2 EABD93 84A2
+84A3 84A3 EABD94 84A3
+84A4 84A4 EABD95 84A4
+84A5 84A5 EABD96 84A5
+84A6 84A6 EABD97 84A6
+84A7 84A7 EABD98 84A7
+84A8 84A8 EABD99 84A8
+84A9 84A9 EABD9A 84A9
+84AA 84AA EABD9B 84AA
+84AB 84AB EABD9E 84AB
+84AC 84AC EABD9F 84AC
+84AD 84AD EABDA0 84AD
+84AE 84AE EABDA1 84AE
+84AF 84AF EABDA2 84AF
+84B0 84B0 EABDA3 84B0
+84B1 84B1 EABDA6 84B1
+84B2 84B2 EABDA7 84B2
+84B3 84B3 EABDA8 84B3
+84B4 84B4 EABDA9 84B4
+84B5 84B5 EABDAA 84B5
+84B6 84B6 EABDAB 84B6
+84B7 84B7 EABDAC 84B7
+84B8 84B8 EABDAD 84B8
+84B9 84B9 EABDAE 84B9
+84BA 84BA EABDAF 84BA
+84BB 84BB EABDB0 84BB
+84BC 84BC EABDB1 84BC
+84BD 84BD EABDB2 84BD
+84BE 84BE EABDB3 84BE
+84BF 84BF EABDB4 84BF
+84C0 84C0 EABDB5 84C0
+84C1 84C1 EABDB6 84C1
+84C2 84C2 EABDB7 84C2
+84C3 84C3 EABDB8 84C3
+84C4 84C4 EABDBA 84C4
+84C5 84C5 EABDBB 84C5
+84C6 84C6 EABDBC 84C6
+84C7 84C7 EABDBD 84C7
+84C8 84C8 EABDBE 84C8
+84C9 84C9 EABDBF 84C9
+84CA 84CA EABE81 84CA
+84CB 84CB EABE82 84CB
+84CC 84CC EABE83 84CC
+84CD 84CD EABE85 84CD
+84CE 84CE EABE86 84CE
+84CF 84CF EABE87 84CF
+84D0 84D0 EABE89 84D0
+84D1 84D1 EABE8A 84D1
+84D2 84D2 EABE8B 84D2
+84D3 84D3 EABE8C 84D3
+84D4 84D4 EABE8D 84D4
+84D5 84D5 EABE8E 84D5
+84D6 84D6 EABE8F 84D6
+84D7 84D7 EABE92 84D7
+84D8 84D8 EABE93 84D8
+84D9 84D9 EABE94 84D9
+84DA 84DA EABE96 84DA
+84DB 84DB EABE97 84DB
+84DC 84DC EABE98 84DC
+84DD 84DD EABE99 84DD
+84DE 84DE EABE9A 84DE
+84DF 84DF EABE9B 84DF
+84E0 84E0 EABE9D 84E0
+84E1 84E1 EABE9E 84E1
+84E2 84E2 EABE9F 84E2
+84E3 84E3 EABEA0 84E3
+84E4 84E4 EABEA1 84E4
+84E5 84E5 EABEA2 84E5
+84E6 84E6 EABEA3 84E6
+84E7 84E7 EABEA4 84E7
+84E8 84E8 EABEA5 84E8
+84E9 84E9 EABEA6 84E9
+84EA 84EA EABEA7 84EA
+84EB 84EB EABEA8 84EB
+84EC 84EC EABEA9 84EC
+84ED 84ED EABEAA 84ED
+84EE 84EE EABEAB 84EE
+84EF 84EF EABEAC 84EF
+84F0 84F0 EABEAD 84F0
+84F1 84F1 EABEAE 84F1
+84F2 84F2 EABEAF 84F2
+84F3 84F3 EABEB0 84F3
+84F4 84F4 EABEB1 84F4
+84F5 84F5 EABEB2 84F5
+84F6 84F6 EABEB3 84F6
+84F7 84F7 EABEB4 84F7
+84F8 84F8 EABEB5 84F8
+84F9 84F9 EABEB6 84F9
+84FA 84FA EABEB7 84FA
+84FB 84FB EABEBA 84FB
+84FC 84FC EABEBB 84FC
+84FD 84FD EABEBD 84FD
+84FE 84FE EABEBE 84FE
+8541 8541 EABEBF 8541
+8542 8542 EABF81 8542
+8543 8543 EABF82 8543
+8544 8544 EABF83 8544
+8545 8545 EABF84 8545
+8546 8546 EABF85 8546
+8547 8547 EABF86 8547
+8548 8548 EABF8A 8548
+8549 8549 EABF8C 8549
+854A 854A EABF8F 854A
+854B 854B EABF90 854B
+854C 854C EABF91 854C
+854D 854D EABF92 854D
+854E 854E EABF93 854E
+854F 854F EABF95 854F
+8550 8550 EABF96 8550
+8551 8551 EABF97 8551
+8552 8552 EABF98 8552
+8553 8553 EABF99 8553
+8554 8554 EABF9A 8554
+8555 8555 EABF9B 8555
+8556 8556 EABF9D 8556
+8557 8557 EABF9E 8557
+8558 8558 EABF9F 8558
+8559 8559 EABFA0 8559
+855A 855A EABFA1 855A
+8561 8561 EABFA2 8561
+8562 8562 EABFA3 8562
+8563 8563 EABFA4 8563
+8564 8564 EABFA5 8564
+8565 8565 EABFA6 8565
+8566 8566 EABFA7 8566
+8567 8567 EABFAA 8567
+8568 8568 EABFAB 8568
+8569 8569 EABFAC 8569
+856A 856A EABFAD 856A
+856B 856B EABFAE 856B
+856C 856C EABFAF 856C
+856D 856D EABFB2 856D
+856E 856E EABFB3 856E
+856F 856F EABFB5 856F
+8570 8570 EABFB6 8570
+8571 8571 EABFB7 8571
+8572 8572 EABFB9 8572
+8573 8573 EABFBA 8573
+8574 8574 EABFBB 8574
+8575 8575 EABFBC 8575
+8576 8576 EABFBD 8576
+8577 8577 EABFBE 8577
+8578 8578 EABFBF 8578
+8579 8579 EB8082 8579
+857A 857A EB8083 857A
+8581 8581 EB8085 8581
+8582 8582 EB8086 8582
+8583 8583 EB8087 8583
+8584 8584 EB8088 8584
+8585 8585 EB8089 8585
+8586 8586 EB808A 8586
+8587 8587 EB808B 8587
+8588 8588 EB808D 8588
+8589 8589 EB808E 8589
+858A 858A EB808F 858A
+858B 858B EB8091 858B
+858C 858C EB8092 858C
+858D 858D EB8093 858D
+858E 858E EB8095 858E
+858F 858F EB8096 858F
+8590 8590 EB8097 8590
+8591 8591 EB8098 8591
+8592 8592 EB8099 8592
+8593 8593 EB809A 8593
+8594 8594 EB809B 8594
+8595 8595 EB809E 8595
+8596 8596 EB809F 8596
+8597 8597 EB80A0 8597
+8598 8598 EB80A1 8598
+8599 8599 EB80A2 8599
+859A 859A EB80A3 859A
+859B 859B EB80A4 859B
+859C 859C EB80A5 859C
+859D 859D EB80A6 859D
+859E 859E EB80A7 859E
+859F 859F EB80A9 859F
+85A0 85A0 EB80AA 85A0
+85A1 85A1 EB80AB 85A1
+85A2 85A2 EB80AC 85A2
+85A3 85A3 EB80AD 85A3
+85A4 85A4 EB80AE 85A4
+85A5 85A5 EB80AF 85A5
+85A6 85A6 EB80B0 85A6
+85A7 85A7 EB80B1 85A7
+85A8 85A8 EB80B2 85A8
+85A9 85A9 EB80B3 85A9
+85AA 85AA EB80B4 85AA
+85AB 85AB EB80B5 85AB
+85AC 85AC EB80B6 85AC
+85AD 85AD EB80B7 85AD
+85AE 85AE EB80B8 85AE
+85AF 85AF EB80B9 85AF
+85B0 85B0 EB80BA 85B0
+85B1 85B1 EB80BB 85B1
+85B2 85B2 EB80BC 85B2
+85B3 85B3 EB80BD 85B3
+85B4 85B4 EB80BE 85B4
+85B5 85B5 EB80BF 85B5
+85B6 85B6 EB8180 85B6
+85B7 85B7 EB8181 85B7
+85B8 85B8 EB8182 85B8
+85B9 85B9 EB8183 85B9
+85BA 85BA EB8186 85BA
+85BB 85BB EB8187 85BB
+85BC 85BC EB8189 85BC
+85BD 85BD EB818B 85BD
+85BE 85BE EB818D 85BE
+85BF 85BF EB818F 85BF
+85C0 85C0 EB8190 85C0
+85C1 85C1 EB8191 85C1
+85C2 85C2 EB8192 85C2
+85C3 85C3 EB8196 85C3
+85C4 85C4 EB8198 85C4
+85C5 85C5 EB819A 85C5
+85C6 85C6 EB819B 85C6
+85C7 85C7 EB819C 85C7
+85C8 85C8 EB819E 85C8
+85C9 85C9 EB819F 85C9
+85CA 85CA EB81A0 85CA
+85CB 85CB EB81A1 85CB
+85CC 85CC EB81A2 85CC
+85CD 85CD EB81A3 85CD
+85CE 85CE EB81A4 85CE
+85CF 85CF EB81A5 85CF
+85D0 85D0 EB81A6 85D0
+85D1 85D1 EB81A7 85D1
+85D2 85D2 EB81A8 85D2
+85D3 85D3 EB81A9 85D3
+85D4 85D4 EB81AA 85D4
+85D5 85D5 EB81AB 85D5
+85D6 85D6 EB81AC 85D6
+85D7 85D7 EB81AD 85D7
+85D8 85D8 EB81AE 85D8
+85D9 85D9 EB81AF 85D9
+85DA 85DA EB81B0 85DA
+85DB 85DB EB81B1 85DB
+85DC 85DC EB81B2 85DC
+85DD 85DD EB81B3 85DD
+85DE 85DE EB81B4 85DE
+85DF 85DF EB81B5 85DF
+85E0 85E0 EB81B6 85E0
+85E1 85E1 EB81B7 85E1
+85E2 85E2 EB81B8 85E2
+85E3 85E3 EB81B9 85E3
+85E4 85E4 EB81BA 85E4
+85E5 85E5 EB81BB 85E5
+85E6 85E6 EB81BE 85E6
+85E7 85E7 EB81BF 85E7
+85E8 85E8 EB8281 85E8
+85E9 85E9 EB8282 85E9
+85EA 85EA EB8283 85EA
+85EB 85EB EB8285 85EB
+85EC 85EC EB8286 85EC
+85ED 85ED EB8287 85ED
+85EE 85EE EB8288 85EE
+85EF 85EF EB8289 85EF
+85F0 85F0 EB828A 85F0
+85F1 85F1 EB828B 85F1
+85F2 85F2 EB828E 85F2
+85F3 85F3 EB8290 85F3
+85F4 85F4 EB8292 85F4
+85F5 85F5 EB8293 85F5
+85F6 85F6 EB8294 85F6
+85F7 85F7 EB8295 85F7
+85F8 85F8 EB8296 85F8
+85F9 85F9 EB8297 85F9
+85FA 85FA EB829B 85FA
+85FB 85FB EB829D 85FB
+85FC 85FC EB829E 85FC
+85FD 85FD EB82A3 85FD
+85FE 85FE EB82A4 85FE
+8641 8641 EB82A5 8641
+8642 8642 EB82A6 8642
+8643 8643 EB82A7 8643
+8644 8644 EB82AA 8644
+8645 8645 EB82B0 8645
+8646 8646 EB82B2 8646
+8647 8647 EB82B6 8647
+8648 8648 EB82B7 8648
+8649 8649 EB82B9 8649
+864A 864A EB82BA 864A
+864B 864B EB82BB 864B
+864C 864C EB82BD 864C
+864D 864D EB82BE 864D
+864E 864E EB82BF 864E
+864F 864F EB8380 864F
+8650 8650 EB8381 8650
+8651 8651 EB8382 8651
+8652 8652 EB8383 8652
+8653 8653 EB8386 8653
+8654 8654 EB838A 8654
+8655 8655 EB838B 8655
+8656 8656 EB838C 8656
+8657 8657 EB838D 8657
+8658 8658 EB838E 8658
+8659 8659 EB838F 8659
+865A 865A EB8392 865A
+8661 8661 EB8393 8661
+8662 8662 EB8395 8662
+8663 8663 EB8396 8663
+8664 8664 EB8397 8664
+8665 8665 EB8399 8665
+8666 8666 EB839A 8666
+8667 8667 EB839B 8667
+8668 8668 EB839C 8668
+8669 8669 EB839D 8669
+866A 866A EB839E 866A
+866B 866B EB839F 866B
+866C 866C EB83A1 866C
+866D 866D EB83A2 866D
+866E 866E EB83A3 866E
+866F 866F EB83A4 866F
+8670 8670 EB83A6 8670
+8671 8671 EB83A7 8671
+8672 8672 EB83A8 8672
+8673 8673 EB83A9 8673
+8674 8674 EB83AA 8674
+8675 8675 EB83AB 8675
+8676 8676 EB83AC 8676
+8677 8677 EB83AD 8677
+8678 8678 EB83AE 8678
+8679 8679 EB83AF 8679
+867A 867A EB83B0 867A
+8681 8681 EB83B1 8681
+8682 8682 EB83B2 8682
+8683 8683 EB83B3 8683
+8684 8684 EB83B4 8684
+8685 8685 EB83B5 8685
+8686 8686 EB83B6 8686
+8687 8687 EB83B7 8687
+8688 8688 EB83B8 8688
+8689 8689 EB83B9 8689
+868A 868A EB83BA 868A
+868B 868B EB83BB 868B
+868C 868C EB83BC 868C
+868D 868D EB83BD 868D
+868E 868E EB83BE 868E
+868F 868F EB83BF 868F
+8690 8690 EB8480 8690
+8691 8691 EB8481 8691
+8692 8692 EB8482 8692
+8693 8693 EB8483 8693
+8694 8694 EB8484 8694
+8695 8695 EB8485 8695
+8696 8696 EB8486 8696
+8697 8697 EB8487 8697
+8698 8698 EB848A 8698
+8699 8699 EB848D 8699
+869A 869A EB848E 869A
+869B 869B EB848F 869B
+869C 869C EB8491 869C
+869D 869D EB8494 869D
+869E 869E EB8495 869E
+869F 869F EB8496 869F
+86A0 86A0 EB8497 86A0
+86A1 86A1 EB849A 86A1
+86A2 86A2 EB849E 86A2
+86A3 86A3 EB849F 86A3
+86A4 86A4 EB84A0 86A4
+86A5 86A5 EB84A1 86A5
+86A6 86A6 EB84A2 86A6
+86A7 86A7 EB84A6 86A7
+86A8 86A8 EB84A7 86A8
+86A9 86A9 EB84A9 86A9
+86AA 86AA EB84AA 86AA
+86AB 86AB EB84AB 86AB
+86AC 86AC EB84AD 86AC
+86AD 86AD EB84AE 86AD
+86AE 86AE EB84AF 86AE
+86AF 86AF EB84B0 86AF
+86B0 86B0 EB84B1 86B0
+86B1 86B1 EB84B2 86B1
+86B2 86B2 EB84B3 86B2
+86B3 86B3 EB84B6 86B3
+86B4 86B4 EB84BA 86B4
+86B5 86B5 EB84BB 86B5
+86B6 86B6 EB84BC 86B6
+86B7 86B7 EB84BD 86B7
+86B8 86B8 EB84BE 86B8
+86B9 86B9 EB84BF 86B9
+86BA 86BA EB8582 86BA
+86BB 86BB EB8583 86BB
+86BC 86BC EB8585 86BC
+86BD 86BD EB8586 86BD
+86BE 86BE EB8587 86BE
+86BF 86BF EB8589 86BF
+86C0 86C0 EB858A 86C0
+86C1 86C1 EB858B 86C1
+86C2 86C2 EB858C 86C2
+86C3 86C3 EB858D 86C3
+86C4 86C4 EB858E 86C4
+86C5 86C5 EB858F 86C5
+86C6 86C6 EB8592 86C6
+86C7 86C7 EB8593 86C7
+86C8 86C8 EB8596 86C8
+86C9 86C9 EB8597 86C9
+86CA 86CA EB8599 86CA
+86CB 86CB EB859A 86CB
+86CC 86CC EB859B 86CC
+86CD 86CD EB859D 86CD
+86CE 86CE EB859E 86CE
+86CF 86CF EB859F 86CF
+86D0 86D0 EB85A1 86D0
+86D1 86D1 EB85A2 86D1
+86D2 86D2 EB85A3 86D2
+86D3 86D3 EB85A4 86D3
+86D4 86D4 EB85A5 86D4
+86D5 86D5 EB85A6 86D5
+86D6 86D6 EB85A7 86D6
+86D7 86D7 EB85A8 86D7
+86D8 86D8 EB85A9 86D8
+86D9 86D9 EB85AA 86D9
+86DA 86DA EB85AB 86DA
+86DB 86DB EB85AC 86DB
+86DC 86DC EB85AD 86DC
+86DD 86DD EB85AE 86DD
+86DE 86DE EB85AF 86DE
+86DF 86DF EB85B0 86DF
+86E0 86E0 EB85B1 86E0
+86E1 86E1 EB85B2 86E1
+86E2 86E2 EB85B3 86E2
+86E3 86E3 EB85B4 86E3
+86E4 86E4 EB85B5 86E4
+86E5 86E5 EB85B6 86E5
+86E6 86E6 EB85B7 86E6
+86E7 86E7 EB85BA 86E7
+86E8 86E8 EB85BB 86E8
+86E9 86E9 EB85BD 86E9
+86EA 86EA EB85BE 86EA
+86EB 86EB EB85BF 86EB
+86EC 86EC EB8681 86EC
+86ED 86ED EB8683 86ED
+86EE 86EE EB8684 86EE
+86EF 86EF EB8685 86EF
+86F0 86F0 EB8686 86F0
+86F1 86F1 EB8687 86F1
+86F2 86F2 EB868A 86F2
+86F3 86F3 EB868C 86F3
+86F4 86F4 EB868E 86F4
+86F5 86F5 EB868F 86F5
+86F6 86F6 EB8690 86F6
+86F7 86F7 EB8691 86F7
+86F8 86F8 EB8695 86F8
+86F9 86F9 EB8696 86F9
+86FA 86FA EB8697 86FA
+86FB 86FB EB8699 86FB
+86FC 86FC EB869A 86FC
+86FD 86FD EB869B 86FD
+86FE 86FE EB869D 86FE
+8741 8741 EB869E 8741
+8742 8742 EB869F 8742
+8743 8743 EB86A0 8743
+8744 8744 EB86A1 8744
+8745 8745 EB86A2 8745
+8746 8746 EB86A3 8746
+8747 8747 EB86A4 8747
+8748 8748 EB86A5 8748
+8749 8749 EB86A6 8749
+874A 874A EB86A7 874A
+874B 874B EB86A9 874B
+874C 874C EB86AA 874C
+874D 874D EB86AB 874D
+874E 874E EB86AC 874E
+874F 874F EB86AD 874F
+8750 8750 EB86AE 8750
+8751 8751 EB86AF 8751
+8752 8752 EB86B0 8752
+8753 8753 EB86B1 8753
+8754 8754 EB86B2 8754
+8755 8755 EB86B3 8755
+8756 8756 EB86B4 8756
+8757 8757 EB86B5 8757
+8758 8758 EB86B6 8758
+8759 8759 EB86B7 8759
+875A 875A EB86B8 875A
+8761 8761 EB86B9 8761
+8762 8762 EB86BA 8762
+8763 8763 EB86BB 8763
+8764 8764 EB86BC 8764
+8765 8765 EB86BD 8765
+8766 8766 EB86BE 8766
+8767 8767 EB86BF 8767
+8768 8768 EB8780 8768
+8769 8769 EB8781 8769
+876A 876A EB8782 876A
+876B 876B EB8783 876B
+876C 876C EB8784 876C
+876D 876D EB8785 876D
+876E 876E EB8786 876E
+876F 876F EB8787 876F
+8770 8770 EB8788 8770
+8771 8771 EB8789 8771
+8772 8772 EB878A 8772
+8773 8773 EB878B 8773
+8774 8774 EB878D 8774
+8775 8775 EB878E 8775
+8776 8776 EB878F 8776
+8777 8777 EB8791 8777
+8778 8778 EB8792 8778
+8779 8779 EB8793 8779
+877A 877A EB8795 877A
+8781 8781 EB8796 8781
+8782 8782 EB8797 8782
+8783 8783 EB8798 8783
+8784 8784 EB8799 8784
+8785 8785 EB879A 8785
+8786 8786 EB879B 8786
+8787 8787 EB879E 8787
+8788 8788 EB87A0 8788
+8789 8789 EB87A1 8789
+878A 878A EB87A2 878A
+878B 878B EB87A3 878B
+878C 878C EB87A4 878C
+878D 878D EB87A5 878D
+878E 878E EB87A6 878E
+878F 878F EB87A7 878F
+8790 8790 EB87AA 8790
+8791 8791 EB87AB 8791
+8792 8792 EB87AD 8792
+8793 8793 EB87AE 8793
+8794 8794 EB87AF 8794
+8795 8795 EB87B1 8795
+8796 8796 EB87B2 8796
+8797 8797 EB87B3 8797
+8798 8798 EB87B4 8798
+8799 8799 EB87B5 8799
+879A 879A EB87B6 879A
+879B 879B EB87B7 879B
+879C 879C EB87B8 879C
+879D 879D EB87BA 879D
+879E 879E EB87BC 879E
+879F 879F EB87BE 879F
+87A0 87A0 EB87BF 87A0
+87A1 87A1 EB8880 87A1
+87A2 87A2 EB8881 87A2
+87A3 87A3 EB8882 87A3
+87A4 87A4 EB8883 87A4
+87A5 87A5 EB8886 87A5
+87A6 87A6 EB8887 87A6
+87A7 87A7 EB8889 87A7
+87A8 87A8 EB888A 87A8
+87A9 87A9 EB888D 87A9
+87AA 87AA EB888E 87AA
+87AB 87AB EB888F 87AB
+87AC 87AC EB8890 87AC
+87AD 87AD EB8891 87AD
+87AE 87AE EB8892 87AE
+87AF 87AF EB8893 87AF
+87B0 87B0 EB8896 87B0
+87B1 87B1 EB8898 87B1
+87B2 87B2 EB889A 87B2
+87B3 87B3 EB889B 87B3
+87B4 87B4 EB889C 87B4
+87B5 87B5 EB889D 87B5
+87B6 87B6 EB889E 87B6
+87B7 87B7 EB889F 87B7
+87B8 87B8 EB88A1 87B8
+87B9 87B9 EB88A2 87B9
+87BA 87BA EB88A3 87BA
+87BB 87BB EB88A4 87BB
+87BC 87BC EB88A5 87BC
+87BD 87BD EB88A6 87BD
+87BE 87BE EB88A7 87BE
+87BF 87BF EB88A8 87BF
+87C0 87C0 EB88A9 87C0
+87C1 87C1 EB88AA 87C1
+87C2 87C2 EB88AB 87C2
+87C3 87C3 EB88AC 87C3
+87C4 87C4 EB88AD 87C4
+87C5 87C5 EB88AE 87C5
+87C6 87C6 EB88AF 87C6
+87C7 87C7 EB88B0 87C7
+87C8 87C8 EB88B1 87C8
+87C9 87C9 EB88B2 87C9
+87CA 87CA EB88B3 87CA
+87CB 87CB EB88B5 87CB
+87CC 87CC EB88B6 87CC
+87CD 87CD EB88B7 87CD
+87CE 87CE EB88B8 87CE
+87CF 87CF EB88B9 87CF
+87D0 87D0 EB88BA 87D0
+87D1 87D1 EB88BB 87D1
+87D2 87D2 EB88BD 87D2
+87D3 87D3 EB88BE 87D3
+87D4 87D4 EB88BF 87D4
+87D5 87D5 EB8980 87D5
+87D6 87D6 EB8981 87D6
+87D7 87D7 EB8982 87D7
+87D8 87D8 EB8983 87D8
+87D9 87D9 EB8984 87D9
+87DA 87DA EB8985 87DA
+87DB 87DB EB8986 87DB
+87DC 87DC EB8987 87DC
+87DD 87DD EB8988 87DD
+87DE 87DE EB8989 87DE
+87DF 87DF EB898A 87DF
+87E0 87E0 EB898B 87E0
+87E1 87E1 EB898C 87E1
+87E2 87E2 EB898D 87E2
+87E3 87E3 EB898E 87E3
+87E4 87E4 EB898F 87E4
+87E5 87E5 EB8990 87E5
+87E6 87E6 EB8991 87E6
+87E7 87E7 EB8992 87E7
+87E8 87E8 EB8993 87E8
+87E9 87E9 EB8994 87E9
+87EA 87EA EB8995 87EA
+87EB 87EB EB8996 87EB
+87EC 87EC EB8997 87EC
+87ED 87ED EB8999 87ED
+87EE 87EE EB899A 87EE
+87EF 87EF EB899B 87EF
+87F0 87F0 EB899D 87F0
+87F1 87F1 EB899E 87F1
+87F2 87F2 EB899F 87F2
+87F3 87F3 EB89A1 87F3
+87F4 87F4 EB89A2 87F4
+87F5 87F5 EB89A3 87F5
+87F6 87F6 EB89A4 87F6
+87F7 87F7 EB89A5 87F7
+87F8 87F8 EB89A6 87F8
+87F9 87F9 EB89A7 87F9
+87FA 87FA EB89AA 87FA
+87FB 87FB EB89AB 87FB
+87FC 87FC EB89AC 87FC
+87FD 87FD EB89AD 87FD
+87FE 87FE EB89AE 87FE
+8841 8841 EB89AF 8841
+8842 8842 EB89B0 8842
+8843 8843 EB89B1 8843
+8844 8844 EB89B2 8844
+8845 8845 EB89B3 8845
+8846 8846 EB89B6 8846
+8847 8847 EB89B7 8847
+8848 8848 EB89B8 8848
+8849 8849 EB89B9 8849
+884A 884A EB89BA 884A
+884B 884B EB89BB 884B
+884C 884C EB89BD 884C
+884D 884D EB89BE 884D
+884E 884E EB89BF 884E
+884F 884F EB8A80 884F
+8850 8850 EB8A81 8850
+8851 8851 EB8A82 8851
+8852 8852 EB8A83 8852
+8853 8853 EB8A86 8853
+8854 8854 EB8A87 8854
+8855 8855 EB8A88 8855
+8856 8856 EB8A8A 8856
+8857 8857 EB8A8B 8857
+8858 8858 EB8A8C 8858
+8859 8859 EB8A8D 8859
+885A 885A EB8A8E 885A
+8861 8861 EB8A8F 8861
+8862 8862 EB8A92 8862
+8863 8863 EB8A93 8863
+8864 8864 EB8A95 8864
+8865 8865 EB8A96 8865
+8866 8866 EB8A97 8866
+8867 8867 EB8A9B 8867
+8868 8868 EB8A9C 8868
+8869 8869 EB8A9D 8869
+886A 886A EB8A9E 886A
+886B 886B EB8A9F 886B
+886C 886C EB8AA2 886C
+886D 886D EB8AA4 886D
+886E 886E EB8AA7 886E
+886F 886F EB8AA8 886F
+8870 8870 EB8AA9 8870
+8871 8871 EB8AAB 8871
+8872 8872 EB8AAD 8872
+8873 8873 EB8AAE 8873
+8874 8874 EB8AAF 8874
+8875 8875 EB8AB1 8875
+8876 8876 EB8AB2 8876
+8877 8877 EB8AB3 8877
+8878 8878 EB8AB5 8878
+8879 8879 EB8AB6 8879
+887A 887A EB8AB7 887A
+8881 8881 EB8AB8 8881
+8882 8882 EB8AB9 8882
+8883 8883 EB8ABA 8883
+8884 8884 EB8ABB 8884
+8885 8885 EB8ABC 8885
+8886 8886 EB8ABD 8886
+8887 8887 EB8ABE 8887
+8888 8888 EB8ABF 8888
+8889 8889 EB8B80 8889
+888A 888A EB8B81 888A
+888B 888B EB8B82 888B
+888C 888C EB8B83 888C
+888D 888D EB8B84 888D
+888E 888E EB8B85 888E
+888F 888F EB8B86 888F
+8890 8890 EB8B87 8890
+8891 8891 EB8B8A 8891
+8892 8892 EB8B8B 8892
+8893 8893 EB8B8D 8893
+8894 8894 EB8B8E 8894
+8895 8895 EB8B8F 8895
+8896 8896 EB8B91 8896
+8897 8897 EB8B93 8897
+8898 8898 EB8B94 8898
+8899 8899 EB8B95 8899
+889A 889A EB8B96 889A
+889B 889B EB8B97 889B
+889C 889C EB8B9A 889C
+889D 889D EB8B9C 889D
+889E 889E EB8B9E 889E
+889F 889F EB8B9F 889F
+88A0 88A0 EB8BA0 88A0
+88A1 88A1 EB8BA1 88A1
+88A2 88A2 EB8BA3 88A2
+88A3 88A3 EB8BA7 88A3
+88A4 88A4 EB8BA9 88A4
+88A5 88A5 EB8BAA 88A5
+88A6 88A6 EB8BB0 88A6
+88A7 88A7 EB8BB1 88A7
+88A8 88A8 EB8BB2 88A8
+88A9 88A9 EB8BB6 88A9
+88AA 88AA EB8BBC 88AA
+88AB 88AB EB8BBD 88AB
+88AC 88AC EB8BBE 88AC
+88AD 88AD EB8C82 88AD
+88AE 88AE EB8C83 88AE
+88AF 88AF EB8C85 88AF
+88B0 88B0 EB8C86 88B0
+88B1 88B1 EB8C87 88B1
+88B2 88B2 EB8C89 88B2
+88B3 88B3 EB8C8A 88B3
+88B4 88B4 EB8C8B 88B4
+88B5 88B5 EB8C8C 88B5
+88B6 88B6 EB8C8D 88B6
+88B7 88B7 EB8C8E 88B7
+88B8 88B8 EB8C8F 88B8
+88B9 88B9 EB8C92 88B9
+88BA 88BA EB8C96 88BA
+88BB 88BB EB8C97 88BB
+88BC 88BC EB8C98 88BC
+88BD 88BD EB8C99 88BD
+88BE 88BE EB8C9A 88BE
+88BF 88BF EB8C9B 88BF
+88C0 88C0 EB8C9D 88C0
+88C1 88C1 EB8C9E 88C1
+88C2 88C2 EB8C9F 88C2
+88C3 88C3 EB8CA0 88C3
+88C4 88C4 EB8CA1 88C4
+88C5 88C5 EB8CA2 88C5
+88C6 88C6 EB8CA3 88C6
+88C7 88C7 EB8CA4 88C7
+88C8 88C8 EB8CA5 88C8
+88C9 88C9 EB8CA6 88C9
+88CA 88CA EB8CA7 88CA
+88CB 88CB EB8CA8 88CB
+88CC 88CC EB8CA9 88CC
+88CD 88CD EB8CAA 88CD
+88CE 88CE EB8CAB 88CE
+88CF 88CF EB8CAC 88CF
+88D0 88D0 EB8CAD 88D0
+88D1 88D1 EB8CAE 88D1
+88D2 88D2 EB8CAF 88D2
+88D3 88D3 EB8CB0 88D3
+88D4 88D4 EB8CB1 88D4
+88D5 88D5 EB8CB2 88D5
+88D6 88D6 EB8CB3 88D6
+88D7 88D7 EB8CB4 88D7
+88D8 88D8 EB8CB5 88D8
+88D9 88D9 EB8CB6 88D9
+88DA 88DA EB8CB7 88DA
+88DB 88DB EB8CB8 88DB
+88DC 88DC EB8CB9 88DC
+88DD 88DD EB8CBA 88DD
+88DE 88DE EB8CBB 88DE
+88DF 88DF EB8CBC 88DF
+88E0 88E0 EB8CBD 88E0
+88E1 88E1 EB8CBE 88E1
+88E2 88E2 EB8CBF 88E2
+88E3 88E3 EB8D80 88E3
+88E4 88E4 EB8D81 88E4
+88E5 88E5 EB8D82 88E5
+88E6 88E6 EB8D83 88E6
+88E7 88E7 EB8D84 88E7
+88E8 88E8 EB8D85 88E8
+88E9 88E9 EB8D86 88E9
+88EA 88EA EB8D87 88EA
+88EB 88EB EB8D88 88EB
+88EC 88EC EB8D89 88EC
+88ED 88ED EB8D8A 88ED
+88EE 88EE EB8D8B 88EE
+88EF 88EF EB8D8C 88EF
+88F0 88F0 EB8D8D 88F0
+88F1 88F1 EB8D8E 88F1
+88F2 88F2 EB8D8F 88F2
+88F3 88F3 EB8D90 88F3
+88F4 88F4 EB8D91 88F4
+88F5 88F5 EB8D92 88F5
+88F6 88F6 EB8D93 88F6
+88F7 88F7 EB8D97 88F7
+88F8 88F8 EB8D99 88F8
+88F9 88F9 EB8D9A 88F9
+88FA 88FA EB8D9D 88FA
+88FB 88FB EB8DA0 88FB
+88FC 88FC EB8DA1 88FC
+88FD 88FD EB8DA2 88FD
+88FE 88FE EB8DA3 88FE
+8941 8941 EB8DA6 8941
+8942 8942 EB8DA8 8942
+8943 8943 EB8DAA 8943
+8944 8944 EB8DAC 8944
+8945 8945 EB8DAD 8945
+8946 8946 EB8DAF 8946
+8947 8947 EB8DB2 8947
+8948 8948 EB8DB3 8948
+8949 8949 EB8DB5 8949
+894A 894A EB8DB6 894A
+894B 894B EB8DB7 894B
+894C 894C EB8DB9 894C
+894D 894D EB8DBA 894D
+894E 894E EB8DBB 894E
+894F 894F EB8DBC 894F
+8950 8950 EB8DBD 8950
+8951 8951 EB8DBE 8951
+8952 8952 EB8DBF 8952
+8953 8953 EB8E82 8953
+8954 8954 EB8E86 8954
+8955 8955 EB8E87 8955
+8956 8956 EB8E88 8956
+8957 8957 EB8E89 8957
+8958 8958 EB8E8A 8958
+8959 8959 EB8E8B 8959
+895A 895A EB8E8D 895A
+8961 8961 EB8E8E 8961
+8962 8962 EB8E8F 8962
+8963 8963 EB8E91 8963
+8964 8964 EB8E92 8964
+8965 8965 EB8E93 8965
+8966 8966 EB8E95 8966
+8967 8967 EB8E96 8967
+8968 8968 EB8E97 8968
+8969 8969 EB8E98 8969
+896A 896A EB8E99 896A
+896B 896B EB8E9A 896B
+896C 896C EB8E9B 896C
+896D 896D EB8E9C 896D
+896E 896E EB8E9D 896E
+896F 896F EB8E9E 896F
+8970 8970 EB8E9F 8970
+8971 8971 EB8EA2 8971
+8972 8972 EB8EA3 8972
+8973 8973 EB8EA4 8973
+8974 8974 EB8EA5 8974
+8975 8975 EB8EA6 8975
+8976 8976 EB8EA7 8976
+8977 8977 EB8EA9 8977
+8978 8978 EB8EAA 8978
+8979 8979 EB8EAB 8979
+897A 897A EB8EAD 897A
+8981 8981 EB8EAE 8981
+8982 8982 EB8EAF 8982
+8983 8983 EB8EB0 8983
+8984 8984 EB8EB1 8984
+8985 8985 EB8EB2 8985
+8986 8986 EB8EB3 8986
+8987 8987 EB8EB4 8987
+8988 8988 EB8EB5 8988
+8989 8989 EB8EB6 8989
+898A 898A EB8EB7 898A
+898B 898B EB8EB8 898B
+898C 898C EB8EB9 898C
+898D 898D EB8EBA 898D
+898E 898E EB8EBB 898E
+898F 898F EB8EBC 898F
+8990 8990 EB8EBD 8990
+8991 8991 EB8EBE 8991
+8992 8992 EB8EBF 8992
+8993 8993 EB8F80 8993
+8994 8994 EB8F81 8994
+8995 8995 EB8F82 8995
+8996 8996 EB8F83 8996
+8997 8997 EB8F86 8997
+8998 8998 EB8F87 8998
+8999 8999 EB8F89 8999
+899A 899A EB8F8A 899A
+899B 899B EB8F8D 899B
+899C 899C EB8F8F 899C
+899D 899D EB8F91 899D
+899E 899E EB8F92 899E
+899F 899F EB8F93 899F
+89A0 89A0 EB8F96 89A0
+89A1 89A1 EB8F98 89A1
+89A2 89A2 EB8F9A 89A2
+89A3 89A3 EB8F9C 89A3
+89A4 89A4 EB8F9E 89A4
+89A5 89A5 EB8F9F 89A5
+89A6 89A6 EB8FA1 89A6
+89A7 89A7 EB8FA2 89A7
+89A8 89A8 EB8FA3 89A8
+89A9 89A9 EB8FA5 89A9
+89AA 89AA EB8FA6 89AA
+89AB 89AB EB8FA7 89AB
+89AC 89AC EB8FA9 89AC
+89AD 89AD EB8FAA 89AD
+89AE 89AE EB8FAB 89AE
+89AF 89AF EB8FAC 89AF
+89B0 89B0 EB8FAD 89B0
+89B1 89B1 EB8FAE 89B1
+89B2 89B2 EB8FAF 89B2
+89B3 89B3 EB8FB0 89B3
+89B4 89B4 EB8FB1 89B4
+89B5 89B5 EB8FB2 89B5
+89B6 89B6 EB8FB3 89B6
+89B7 89B7 EB8FB4 89B7
+89B8 89B8 EB8FB5 89B8
+89B9 89B9 EB8FB6 89B9
+89BA 89BA EB8FB7 89BA
+89BB 89BB EB8FB8 89BB
+89BC 89BC EB8FB9 89BC
+89BD 89BD EB8FBA 89BD
+89BE 89BE EB8FBB 89BE
+89BF 89BF EB8FBD 89BF
+89C0 89C0 EB8FBE 89C0
+89C1 89C1 EB8FBF 89C1
+89C2 89C2 EB9080 89C2
+89C3 89C3 EB9081 89C3
+89C4 89C4 EB9082 89C4
+89C5 89C5 EB9083 89C5
+89C6 89C6 EB9084 89C6
+89C7 89C7 EB9085 89C7
+89C8 89C8 EB9086 89C8
+89C9 89C9 EB9087 89C9
+89CA 89CA EB9088 89CA
+89CB 89CB EB9089 89CB
+89CC 89CC EB908A 89CC
+89CD 89CD EB908B 89CD
+89CE 89CE EB908C 89CE
+89CF 89CF EB908D 89CF
+89D0 89D0 EB908E 89D0
+89D1 89D1 EB908F 89D1
+89D2 89D2 EB9091 89D2
+89D3 89D3 EB9092 89D3
+89D4 89D4 EB9093 89D4
+89D5 89D5 EB9094 89D5
+89D6 89D6 EB9095 89D6
+89D7 89D7 EB9096 89D7
+89D8 89D8 EB9097 89D8
+89D9 89D9 EB9099 89D9
+89DA 89DA EB909A 89DA
+89DB 89DB EB909B 89DB
+89DC 89DC EB909D 89DC
+89DD 89DD EB909E 89DD
+89DE 89DE EB909F 89DE
+89DF 89DF EB90A1 89DF
+89E0 89E0 EB90A2 89E0
+89E1 89E1 EB90A3 89E1
+89E2 89E2 EB90A4 89E2
+89E3 89E3 EB90A5 89E3
+89E4 89E4 EB90A6 89E4
+89E5 89E5 EB90A7 89E5
+89E6 89E6 EB90AA 89E6
+89E7 89E7 EB90AC 89E7
+89E8 89E8 EB90AD 89E8
+89E9 89E9 EB90AE 89E9
+89EA 89EA EB90AF 89EA
+89EB 89EB EB90B0 89EB
+89EC 89EC EB90B1 89EC
+89ED 89ED EB90B2 89ED
+89EE 89EE EB90B3 89EE
+89EF 89EF EB90B5 89EF
+89F0 89F0 EB90B6 89F0
+89F1 89F1 EB90B7 89F1
+89F2 89F2 EB90B8 89F2
+89F3 89F3 EB90B9 89F3
+89F4 89F4 EB90BA 89F4
+89F5 89F5 EB90BB 89F5
+89F6 89F6 EB90BC 89F6
+89F7 89F7 EB90BD 89F7
+89F8 89F8 EB90BE 89F8
+89F9 89F9 EB90BF 89F9
+89FA 89FA EB9180 89FA
+89FB 89FB EB9181 89FB
+89FC 89FC EB9182 89FC
+89FD 89FD EB9183 89FD
+89FE 89FE EB9184 89FE
+8A41 8A41 EB9185 8A41
+8A42 8A42 EB9186 8A42
+8A43 8A43 EB9187 8A43
+8A44 8A44 EB9188 8A44
+8A45 8A45 EB9189 8A45
+8A46 8A46 EB918A 8A46
+8A47 8A47 EB918B 8A47
+8A48 8A48 EB918C 8A48
+8A49 8A49 EB918D 8A49
+8A4A 8A4A EB918E 8A4A
+8A4B 8A4B EB918F 8A4B
+8A4C 8A4C EB9192 8A4C
+8A4D 8A4D EB9193 8A4D
+8A4E 8A4E EB9195 8A4E
+8A4F 8A4F EB9196 8A4F
+8A50 8A50 EB9197 8A50
+8A51 8A51 EB9199 8A51
+8A52 8A52 EB919A 8A52
+8A53 8A53 EB919B 8A53
+8A54 8A54 EB919C 8A54
+8A55 8A55 EB919D 8A55
+8A56 8A56 EB919E 8A56
+8A57 8A57 EB919F 8A57
+8A58 8A58 EB91A2 8A58
+8A59 8A59 EB91A4 8A59
+8A5A 8A5A EB91A6 8A5A
+8A61 8A61 EB91A7 8A61
+8A62 8A62 EB91A8 8A62
+8A63 8A63 EB91A9 8A63
+8A64 8A64 EB91AA 8A64
+8A65 8A65 EB91AB 8A65
+8A66 8A66 EB91AD 8A66
+8A67 8A67 EB91AE 8A67
+8A68 8A68 EB91AF 8A68
+8A69 8A69 EB91B0 8A69
+8A6A 8A6A EB91B1 8A6A
+8A6B 8A6B EB91B2 8A6B
+8A6C 8A6C EB91B3 8A6C
+8A6D 8A6D EB91B4 8A6D
+8A6E 8A6E EB91B5 8A6E
+8A6F 8A6F EB91B6 8A6F
+8A70 8A70 EB91B7 8A70
+8A71 8A71 EB91B8 8A71
+8A72 8A72 EB91B9 8A72
+8A73 8A73 EB91BA 8A73
+8A74 8A74 EB91BB 8A74
+8A75 8A75 EB91BC 8A75
+8A76 8A76 EB91BD 8A76
+8A77 8A77 EB91BE 8A77
+8A78 8A78 EB91BF 8A78
+8A79 8A79 EB9281 8A79
+8A7A 8A7A EB9282 8A7A
+8A81 8A81 EB9283 8A81
+8A82 8A82 EB9284 8A82
+8A83 8A83 EB9285 8A83
+8A84 8A84 EB9286 8A84
+8A85 8A85 EB9287 8A85
+8A86 8A86 EB9289 8A86
+8A87 8A87 EB928A 8A87
+8A88 8A88 EB928B 8A88
+8A89 8A89 EB928C 8A89
+8A8A 8A8A EB928D 8A8A
+8A8B 8A8B EB928E 8A8B
+8A8C 8A8C EB928F 8A8C
+8A8D 8A8D EB9290 8A8D
+8A8E 8A8E EB9291 8A8E
+8A8F 8A8F EB9292 8A8F
+8A90 8A90 EB9293 8A90
+8A91 8A91 EB9294 8A91
+8A92 8A92 EB9295 8A92
+8A93 8A93 EB9296 8A93
+8A94 8A94 EB9297 8A94
+8A95 8A95 EB9298 8A95
+8A96 8A96 EB9299 8A96
+8A97 8A97 EB929A 8A97
+8A98 8A98 EB929B 8A98
+8A99 8A99 EB929C 8A99
+8A9A 8A9A EB929E 8A9A
+8A9B 8A9B EB929F 8A9B
+8A9C 8A9C EB92A0 8A9C
+8A9D 8A9D EB92A1 8A9D
+8A9E 8A9E EB92A2 8A9E
+8A9F 8A9F EB92A3 8A9F
+8AA0 8AA0 EB92A5 8AA0
+8AA1 8AA1 EB92A6 8AA1
+8AA2 8AA2 EB92A7 8AA2
+8AA3 8AA3 EB92A9 8AA3
+8AA4 8AA4 EB92AA 8AA4
+8AA5 8AA5 EB92AB 8AA5
+8AA6 8AA6 EB92AD 8AA6
+8AA7 8AA7 EB92AE 8AA7
+8AA8 8AA8 EB92AF 8AA8
+8AA9 8AA9 EB92B0 8AA9
+8AAA 8AAA EB92B1 8AAA
+8AAB 8AAB EB92B2 8AAB
+8AAC 8AAC EB92B3 8AAC
+8AAD 8AAD EB92B4 8AAD
+8AAE 8AAE EB92B6 8AAE
+8AAF 8AAF EB92B8 8AAF
+8AB0 8AB0 EB92BA 8AB0
+8AB1 8AB1 EB92BB 8AB1
+8AB2 8AB2 EB92BC 8AB2
+8AB3 8AB3 EB92BD 8AB3
+8AB4 8AB4 EB92BE 8AB4
+8AB5 8AB5 EB92BF 8AB5
+8AB6 8AB6 EB9381 8AB6
+8AB7 8AB7 EB9382 8AB7
+8AB8 8AB8 EB9383 8AB8
+8AB9 8AB9 EB9385 8AB9
+8ABA 8ABA EB9386 8ABA
+8ABB 8ABB EB9387 8ABB
+8ABC 8ABC EB9389 8ABC
+8ABD 8ABD EB938A 8ABD
+8ABE 8ABE EB938B 8ABE
+8ABF 8ABF EB938C 8ABF
+8AC0 8AC0 EB938D 8AC0
+8AC1 8AC1 EB938E 8AC1
+8AC2 8AC2 EB938F 8AC2
+8AC3 8AC3 EB9391 8AC3
+8AC4 8AC4 EB9392 8AC4
+8AC5 8AC5 EB9393 8AC5
+8AC6 8AC6 EB9394 8AC6
+8AC7 8AC7 EB9396 8AC7
+8AC8 8AC8 EB9397 8AC8
+8AC9 8AC9 EB9398 8AC9
+8ACA 8ACA EB9399 8ACA
+8ACB 8ACB EB939A 8ACB
+8ACC 8ACC EB939B 8ACC
+8ACD 8ACD EB939E 8ACD
+8ACE 8ACE EB939F 8ACE
+8ACF 8ACF EB93A1 8ACF
+8AD0 8AD0 EB93A2 8AD0
+8AD1 8AD1 EB93A5 8AD1
+8AD2 8AD2 EB93A7 8AD2
+8AD3 8AD3 EB93A8 8AD3
+8AD4 8AD4 EB93A9 8AD4
+8AD5 8AD5 EB93AA 8AD5
+8AD6 8AD6 EB93AB 8AD6
+8AD7 8AD7 EB93AE 8AD7
+8AD8 8AD8 EB93B0 8AD8
+8AD9 8AD9 EB93B2 8AD9
+8ADA 8ADA EB93B3 8ADA
+8ADB 8ADB EB93B4 8ADB
+8ADC 8ADC EB93B5 8ADC
+8ADD 8ADD EB93B6 8ADD
+8ADE 8ADE EB93B7 8ADE
+8ADF 8ADF EB93B9 8ADF
+8AE0 8AE0 EB93BA 8AE0
+8AE1 8AE1 EB93BB 8AE1
+8AE2 8AE2 EB93BC 8AE2
+8AE3 8AE3 EB93BD 8AE3
+8AE4 8AE4 EB93BE 8AE4
+8AE5 8AE5 EB93BF 8AE5
+8AE6 8AE6 EB9480 8AE6
+8AE7 8AE7 EB9481 8AE7
+8AE8 8AE8 EB9482 8AE8
+8AE9 8AE9 EB9483 8AE9
+8AEA 8AEA EB9484 8AEA
+8AEB 8AEB EB9485 8AEB
+8AEC 8AEC EB9486 8AEC
+8AED 8AED EB9487 8AED
+8AEE 8AEE EB9488 8AEE
+8AEF 8AEF EB9489 8AEF
+8AF0 8AF0 EB948A 8AF0
+8AF1 8AF1 EB948B 8AF1
+8AF2 8AF2 EB948C 8AF2
+8AF3 8AF3 EB948D 8AF3
+8AF4 8AF4 EB948E 8AF4
+8AF5 8AF5 EB948F 8AF5
+8AF6 8AF6 EB9490 8AF6
+8AF7 8AF7 EB9491 8AF7
+8AF8 8AF8 EB9492 8AF8
+8AF9 8AF9 EB9493 8AF9
+8AFA 8AFA EB9496 8AFA
+8AFB 8AFB EB9497 8AFB
+8AFC 8AFC EB9499 8AFC
+8AFD 8AFD EB949A 8AFD
+8AFE 8AFE EB949D 8AFE
+8B41 8B41 EB949E 8B41
+8B42 8B42 EB949F 8B42
+8B43 8B43 EB94A0 8B43
+8B44 8B44 EB94A1 8B44
+8B45 8B45 EB94A2 8B45
+8B46 8B46 EB94A3 8B46
+8B47 8B47 EB94A6 8B47
+8B48 8B48 EB94AB 8B48
+8B49 8B49 EB94AC 8B49
+8B4A 8B4A EB94AD 8B4A
+8B4B 8B4B EB94AE 8B4B
+8B4C 8B4C EB94AF 8B4C
+8B4D 8B4D EB94B2 8B4D
+8B4E 8B4E EB94B3 8B4E
+8B4F 8B4F EB94B5 8B4F
+8B50 8B50 EB94B6 8B50
+8B51 8B51 EB94B7 8B51
+8B52 8B52 EB94B9 8B52
+8B53 8B53 EB94BA 8B53
+8B54 8B54 EB94BB 8B54
+8B55 8B55 EB94BC 8B55
+8B56 8B56 EB94BD 8B56
+8B57 8B57 EB94BE 8B57
+8B58 8B58 EB94BF 8B58
+8B59 8B59 EB9582 8B59
+8B5A 8B5A EB9586 8B5A
+8B61 8B61 EB9587 8B61
+8B62 8B62 EB9588 8B62
+8B63 8B63 EB9589 8B63
+8B64 8B64 EB958A 8B64
+8B65 8B65 EB958E 8B65
+8B66 8B66 EB958F 8B66
+8B67 8B67 EB9591 8B67
+8B68 8B68 EB9592 8B68
+8B69 8B69 EB9593 8B69
+8B6A 8B6A EB9595 8B6A
+8B6B 8B6B EB9596 8B6B
+8B6C 8B6C EB9597 8B6C
+8B6D 8B6D EB9598 8B6D
+8B6E 8B6E EB9599 8B6E
+8B6F 8B6F EB959A 8B6F
+8B70 8B70 EB959B 8B70
+8B71 8B71 EB959E 8B71
+8B72 8B72 EB95A2 8B72
+8B73 8B73 EB95A3 8B73
+8B74 8B74 EB95A4 8B74
+8B75 8B75 EB95A5 8B75
+8B76 8B76 EB95A6 8B76
+8B77 8B77 EB95A7 8B77
+8B78 8B78 EB95A8 8B78
+8B79 8B79 EB95A9 8B79
+8B7A 8B7A EB95AA 8B7A
+8B81 8B81 EB95AB 8B81
+8B82 8B82 EB95AC 8B82
+8B83 8B83 EB95AD 8B83
+8B84 8B84 EB95AE 8B84
+8B85 8B85 EB95AF 8B85
+8B86 8B86 EB95B0 8B86
+8B87 8B87 EB95B1 8B87
+8B88 8B88 EB95B2 8B88
+8B89 8B89 EB95B3 8B89
+8B8A 8B8A EB95B4 8B8A
+8B8B 8B8B EB95B5 8B8B
+8B8C 8B8C EB95B6 8B8C
+8B8D 8B8D EB95B7 8B8D
+8B8E 8B8E EB95B8 8B8E
+8B8F 8B8F EB95B9 8B8F
+8B90 8B90 EB95BA 8B90
+8B91 8B91 EB95BB 8B91
+8B92 8B92 EB95BC 8B92
+8B93 8B93 EB95BD 8B93
+8B94 8B94 EB95BE 8B94
+8B95 8B95 EB95BF 8B95
+8B96 8B96 EB9680 8B96
+8B97 8B97 EB9681 8B97
+8B98 8B98 EB9682 8B98
+8B99 8B99 EB9683 8B99
+8B9A 8B9A EB9684 8B9A
+8B9B 8B9B EB9685 8B9B
+8B9C 8B9C EB9686 8B9C
+8B9D 8B9D EB9687 8B9D
+8B9E 8B9E EB9688 8B9E
+8B9F 8B9F EB9689 8B9F
+8BA0 8BA0 EB968A 8BA0
+8BA1 8BA1 EB968B 8BA1
+8BA2 8BA2 EB968C 8BA2
+8BA3 8BA3 EB968D 8BA3
+8BA4 8BA4 EB968E 8BA4
+8BA5 8BA5 EB968F 8BA5
+8BA6 8BA6 EB9690 8BA6
+8BA7 8BA7 EB9691 8BA7
+8BA8 8BA8 EB9692 8BA8
+8BA9 8BA9 EB9693 8BA9
+8BAA 8BAA EB9694 8BAA
+8BAB 8BAB EB9695 8BAB
+8BAC 8BAC EB9696 8BAC
+8BAD 8BAD EB9697 8BAD
+8BAE 8BAE EB9698 8BAE
+8BAF 8BAF EB9699 8BAF
+8BB0 8BB0 EB969A 8BB0
+8BB1 8BB1 EB969B 8BB1
+8BB2 8BB2 EB969C 8BB2
+8BB3 8BB3 EB969D 8BB3
+8BB4 8BB4 EB969E 8BB4
+8BB5 8BB5 EB969F 8BB5
+8BB6 8BB6 EB96A2 8BB6
+8BB7 8BB7 EB96A3 8BB7
+8BB8 8BB8 EB96A5 8BB8
+8BB9 8BB9 EB96A6 8BB9
+8BBA 8BBA EB96A7 8BBA
+8BBB 8BBB EB96A9 8BBB
+8BBC 8BBC EB96AC 8BBC
+8BBD 8BBD EB96AD 8BBD
+8BBE 8BBE EB96AE 8BBE
+8BBF 8BBF EB96AF 8BBF
+8BC0 8BC0 EB96B2 8BC0
+8BC1 8BC1 EB96B6 8BC1
+8BC2 8BC2 EB96B7 8BC2
+8BC3 8BC3 EB96B8 8BC3
+8BC4 8BC4 EB96B9 8BC4
+8BC5 8BC5 EB96BA 8BC5
+8BC6 8BC6 EB96BE 8BC6
+8BC7 8BC7 EB96BF 8BC7
+8BC8 8BC8 EB9781 8BC8
+8BC9 8BC9 EB9782 8BC9
+8BCA 8BCA EB9783 8BCA
+8BCB 8BCB EB9785 8BCB
+8BCC 8BCC EB9786 8BCC
+8BCD 8BCD EB9787 8BCD
+8BCE 8BCE EB9788 8BCE
+8BCF 8BCF EB9789 8BCF
+8BD0 8BD0 EB978A 8BD0
+8BD1 8BD1 EB978B 8BD1
+8BD2 8BD2 EB978E 8BD2
+8BD3 8BD3 EB9792 8BD3
+8BD4 8BD4 EB9793 8BD4
+8BD5 8BD5 EB9794 8BD5
+8BD6 8BD6 EB9795 8BD6
+8BD7 8BD7 EB9796 8BD7
+8BD8 8BD8 EB9797 8BD8
+8BD9 8BD9 EB9799 8BD9
+8BDA 8BDA EB979A 8BDA
+8BDB 8BDB EB979B 8BDB
+8BDC 8BDC EB979C 8BDC
+8BDD 8BDD EB979D 8BDD
+8BDE 8BDE EB979E 8BDE
+8BDF 8BDF EB979F 8BDF
+8BE0 8BE0 EB97A0 8BE0
+8BE1 8BE1 EB97A1 8BE1
+8BE2 8BE2 EB97A2 8BE2
+8BE3 8BE3 EB97A3 8BE3
+8BE4 8BE4 EB97A4 8BE4
+8BE5 8BE5 EB97A5 8BE5
+8BE6 8BE6 EB97A6 8BE6
+8BE7 8BE7 EB97A7 8BE7
+8BE8 8BE8 EB97A8 8BE8
+8BE9 8BE9 EB97A9 8BE9
+8BEA 8BEA EB97AA 8BEA
+8BEB 8BEB EB97AB 8BEB
+8BEC 8BEC EB97AD 8BEC
+8BED 8BED EB97AE 8BED
+8BEE 8BEE EB97AF 8BEE
+8BEF 8BEF EB97B0 8BEF
+8BF0 8BF0 EB97B1 8BF0
+8BF1 8BF1 EB97B2 8BF1
+8BF2 8BF2 EB97B3 8BF2
+8BF3 8BF3 EB97B4 8BF3
+8BF4 8BF4 EB97B5 8BF4
+8BF5 8BF5 EB97B6 8BF5
+8BF6 8BF6 EB97B7 8BF6
+8BF7 8BF7 EB97B8 8BF7
+8BF8 8BF8 EB97B9 8BF8
+8BF9 8BF9 EB97BA 8BF9
+8BFA 8BFA EB97BB 8BFA
+8BFB 8BFB EB97BC 8BFB
+8BFC 8BFC EB97BD 8BFC
+8BFD 8BFD EB97BE 8BFD
+8BFE 8BFE EB97BF 8BFE
+8C41 8C41 EB9880 8C41
+8C42 8C42 EB9881 8C42
+8C43 8C43 EB9882 8C43
+8C44 8C44 EB9883 8C44
+8C45 8C45 EB9884 8C45
+8C46 8C46 EB9885 8C46
+8C47 8C47 EB9886 8C47
+8C48 8C48 EB9887 8C48
+8C49 8C49 EB9888 8C49
+8C4A 8C4A EB9889 8C4A
+8C4B 8C4B EB988A 8C4B
+8C4C 8C4C EB988B 8C4C
+8C4D 8C4D EB988C 8C4D
+8C4E 8C4E EB988D 8C4E
+8C4F 8C4F EB988E 8C4F
+8C50 8C50 EB988F 8C50
+8C51 8C51 EB9892 8C51
+8C52 8C52 EB9893 8C52
+8C53 8C53 EB9895 8C53
+8C54 8C54 EB9896 8C54
+8C55 8C55 EB9897 8C55
+8C56 8C56 EB9899 8C56
+8C57 8C57 EB989A 8C57
+8C58 8C58 EB989B 8C58
+8C59 8C59 EB989C 8C59
+8C5A 8C5A EB989D 8C5A
+8C61 8C61 EB989E 8C61
+8C62 8C62 EB989F 8C62
+8C63 8C63 EB98A0 8C63
+8C64 8C64 EB98A1 8C64
+8C65 8C65 EB98A2 8C65
+8C66 8C66 EB98A3 8C66
+8C67 8C67 EB98A4 8C67
+8C68 8C68 EB98A6 8C68
+8C69 8C69 EB98A7 8C69
+8C6A 8C6A EB98A8 8C6A
+8C6B 8C6B EB98A9 8C6B
+8C6C 8C6C EB98AA 8C6C
+8C6D 8C6D EB98AB 8C6D
+8C6E 8C6E EB98AD 8C6E
+8C6F 8C6F EB98AE 8C6F
+8C70 8C70 EB98AF 8C70
+8C71 8C71 EB98B0 8C71
+8C72 8C72 EB98B1 8C72
+8C73 8C73 EB98B2 8C73
+8C74 8C74 EB98B3 8C74
+8C75 8C75 EB98B5 8C75
+8C76 8C76 EB98B6 8C76
+8C77 8C77 EB98B7 8C77
+8C78 8C78 EB98B8 8C78
+8C79 8C79 EB98B9 8C79
+8C7A 8C7A EB98BA 8C7A
+8C81 8C81 EB98BB 8C81
+8C82 8C82 EB98BC 8C82
+8C83 8C83 EB98BD 8C83
+8C84 8C84 EB98BE 8C84
+8C85 8C85 EB98BF 8C85
+8C86 8C86 EB9980 8C86
+8C87 8C87 EB9981 8C87
+8C88 8C88 EB9982 8C88
+8C89 8C89 EB9983 8C89
+8C8A 8C8A EB9984 8C8A
+8C8B 8C8B EB9985 8C8B
+8C8C 8C8C EB9986 8C8C
+8C8D 8C8D EB9987 8C8D
+8C8E 8C8E EB9989 8C8E
+8C8F 8C8F EB998A 8C8F
+8C90 8C90 EB998B 8C90
+8C91 8C91 EB998C 8C91
+8C92 8C92 EB998D 8C92
+8C93 8C93 EB998E 8C93
+8C94 8C94 EB998F 8C94
+8C95 8C95 EB9990 8C95
+8C96 8C96 EB9991 8C96
+8C97 8C97 EB9992 8C97
+8C98 8C98 EB9993 8C98
+8C99 8C99 EB9994 8C99
+8C9A 8C9A EB9995 8C9A
+8C9B 8C9B EB9996 8C9B
+8C9C 8C9C EB9997 8C9C
+8C9D 8C9D EB9998 8C9D
+8C9E 8C9E EB9999 8C9E
+8C9F 8C9F EB999A 8C9F
+8CA0 8CA0 EB999B 8CA0
+8CA1 8CA1 EB999C 8CA1
+8CA2 8CA2 EB999D 8CA2
+8CA3 8CA3 EB999E 8CA3
+8CA4 8CA4 EB999F 8CA4
+8CA5 8CA5 EB99A0 8CA5
+8CA6 8CA6 EB99A1 8CA6
+8CA7 8CA7 EB99A2 8CA7
+8CA8 8CA8 EB99A3 8CA8
+8CA9 8CA9 EB99A5 8CA9
+8CAA 8CAA EB99A6 8CAA
+8CAB 8CAB EB99A7 8CAB
+8CAC 8CAC EB99A9 8CAC
+8CAD 8CAD EB99AA 8CAD
+8CAE 8CAE EB99AB 8CAE
+8CAF 8CAF EB99AC 8CAF
+8CB0 8CB0 EB99AD 8CB0
+8CB1 8CB1 EB99AE 8CB1
+8CB2 8CB2 EB99AF 8CB2
+8CB3 8CB3 EB99B0 8CB3
+8CB4 8CB4 EB99B1 8CB4
+8CB5 8CB5 EB99B2 8CB5
+8CB6 8CB6 EB99B3 8CB6
+8CB7 8CB7 EB99B4 8CB7
+8CB8 8CB8 EB99B5 8CB8
+8CB9 8CB9 EB99B6 8CB9
+8CBA 8CBA EB99B7 8CBA
+8CBB 8CBB EB99B8 8CBB
+8CBC 8CBC EB99B9 8CBC
+8CBD 8CBD EB99BA 8CBD
+8CBE 8CBE EB99BB 8CBE
+8CBF 8CBF EB99BC 8CBF
+8CC0 8CC0 EB99BD 8CC0
+8CC1 8CC1 EB99BE 8CC1
+8CC2 8CC2 EB99BF 8CC2
+8CC3 8CC3 EB9A80 8CC3
+8CC4 8CC4 EB9A81 8CC4
+8CC5 8CC5 EB9A82 8CC5
+8CC6 8CC6 EB9A83 8CC6
+8CC7 8CC7 EB9A84 8CC7
+8CC8 8CC8 EB9A85 8CC8
+8CC9 8CC9 EB9A86 8CC9
+8CCA 8CCA EB9A87 8CCA
+8CCB 8CCB EB9A88 8CCB
+8CCC 8CCC EB9A89 8CCC
+8CCD 8CCD EB9A8A 8CCD
+8CCE 8CCE EB9A8B 8CCE
+8CCF 8CCF EB9A8C 8CCF
+8CD0 8CD0 EB9A8D 8CD0
+8CD1 8CD1 EB9A8E 8CD1
+8CD2 8CD2 EB9A8F 8CD2
+8CD3 8CD3 EB9A90 8CD3
+8CD4 8CD4 EB9A91 8CD4
+8CD5 8CD5 EB9A92 8CD5
+8CD6 8CD6 EB9A93 8CD6
+8CD7 8CD7 EB9A94 8CD7
+8CD8 8CD8 EB9A95 8CD8
+8CD9 8CD9 EB9A96 8CD9
+8CDA 8CDA EB9A97 8CDA
+8CDB 8CDB EB9A98 8CDB
+8CDC 8CDC EB9A99 8CDC
+8CDD 8CDD EB9A9A 8CDD
+8CDE 8CDE EB9A9B 8CDE
+8CDF 8CDF EB9A9E 8CDF
+8CE0 8CE0 EB9A9F 8CE0
+8CE1 8CE1 EB9AA1 8CE1
+8CE2 8CE2 EB9AA2 8CE2
+8CE3 8CE3 EB9AA3 8CE3
+8CE4 8CE4 EB9AA5 8CE4
+8CE5 8CE5 EB9AA6 8CE5
+8CE6 8CE6 EB9AA7 8CE6
+8CE7 8CE7 EB9AA8 8CE7
+8CE8 8CE8 EB9AA9 8CE8
+8CE9 8CE9 EB9AAA 8CE9
+8CEA 8CEA EB9AAD 8CEA
+8CEB 8CEB EB9AAE 8CEB
+8CEC 8CEC EB9AAF 8CEC
+8CED 8CED EB9AB0 8CED
+8CEE 8CEE EB9AB2 8CEE
+8CEF 8CEF EB9AB3 8CEF
+8CF0 8CF0 EB9AB4 8CF0
+8CF1 8CF1 EB9AB5 8CF1
+8CF2 8CF2 EB9AB6 8CF2
+8CF3 8CF3 EB9AB7 8CF3
+8CF4 8CF4 EB9AB8 8CF4
+8CF5 8CF5 EB9AB9 8CF5
+8CF6 8CF6 EB9ABA 8CF6
+8CF7 8CF7 EB9ABB 8CF7
+8CF8 8CF8 EB9ABC 8CF8
+8CF9 8CF9 EB9ABD 8CF9
+8CFA 8CFA EB9ABE 8CFA
+8CFB 8CFB EB9ABF 8CFB
+8CFC 8CFC EB9B80 8CFC
+8CFD 8CFD EB9B81 8CFD
+8CFE 8CFE EB9B82 8CFE
+8D41 8D41 EB9B83 8D41
+8D42 8D42 EB9B84 8D42
+8D43 8D43 EB9B85 8D43
+8D44 8D44 EB9B86 8D44
+8D45 8D45 EB9B87 8D45
+8D46 8D46 EB9B88 8D46
+8D47 8D47 EB9B89 8D47
+8D48 8D48 EB9B8A 8D48
+8D49 8D49 EB9B8B 8D49
+8D4A 8D4A EB9B8C 8D4A
+8D4B 8D4B EB9B8D 8D4B
+8D4C 8D4C EB9B8E 8D4C
+8D4D 8D4D EB9B8F 8D4D
+8D4E 8D4E EB9B90 8D4E
+8D4F 8D4F EB9B91 8D4F
+8D50 8D50 EB9B92 8D50
+8D51 8D51 EB9B93 8D51
+8D52 8D52 EB9B95 8D52
+8D53 8D53 EB9B96 8D53
+8D54 8D54 EB9B97 8D54
+8D55 8D55 EB9B98 8D55
+8D56 8D56 EB9B99 8D56
+8D57 8D57 EB9B9A 8D57
+8D58 8D58 EB9B9B 8D58
+8D59 8D59 EB9B9C 8D59
+8D5A 8D5A EB9B9D 8D5A
+8D61 8D61 EB9B9E 8D61
+8D62 8D62 EB9B9F 8D62
+8D63 8D63 EB9BA0 8D63
+8D64 8D64 EB9BA1 8D64
+8D65 8D65 EB9BA2 8D65
+8D66 8D66 EB9BA3 8D66
+8D67 8D67 EB9BA4 8D67
+8D68 8D68 EB9BA5 8D68
+8D69 8D69 EB9BA6 8D69
+8D6A 8D6A EB9BA7 8D6A
+8D6B 8D6B EB9BA8 8D6B
+8D6C 8D6C EB9BA9 8D6C
+8D6D 8D6D EB9BAA 8D6D
+8D6E 8D6E EB9BAB 8D6E
+8D6F 8D6F EB9BAC 8D6F
+8D70 8D70 EB9BAD 8D70
+8D71 8D71 EB9BAE 8D71
+8D72 8D72 EB9BAF 8D72
+8D73 8D73 EB9BB1 8D73
+8D74 8D74 EB9BB2 8D74
+8D75 8D75 EB9BB3 8D75
+8D76 8D76 EB9BB5 8D76
+8D77 8D77 EB9BB6 8D77
+8D78 8D78 EB9BB7 8D78
+8D79 8D79 EB9BB9 8D79
+8D7A 8D7A EB9BBA 8D7A
+8D81 8D81 EB9BBB 8D81
+8D82 8D82 EB9BBC 8D82
+8D83 8D83 EB9BBD 8D83
+8D84 8D84 EB9BBE 8D84
+8D85 8D85 EB9BBF 8D85
+8D86 8D86 EB9C82 8D86
+8D87 8D87 EB9C83 8D87
+8D88 8D88 EB9C84 8D88
+8D89 8D89 EB9C86 8D89
+8D8A 8D8A EB9C87 8D8A
+8D8B 8D8B EB9C88 8D8B
+8D8C 8D8C EB9C89 8D8C
+8D8D 8D8D EB9C8A 8D8D
+8D8E 8D8E EB9C8B 8D8E
+8D8F 8D8F EB9C8C 8D8F
+8D90 8D90 EB9C8D 8D90
+8D91 8D91 EB9C8E 8D91
+8D92 8D92 EB9C8F 8D92
+8D93 8D93 EB9C90 8D93
+8D94 8D94 EB9C91 8D94
+8D95 8D95 EB9C92 8D95
+8D96 8D96 EB9C93 8D96
+8D97 8D97 EB9C94 8D97
+8D98 8D98 EB9C95 8D98
+8D99 8D99 EB9C96 8D99
+8D9A 8D9A EB9C97 8D9A
+8D9B 8D9B EB9C98 8D9B
+8D9C 8D9C EB9C99 8D9C
+8D9D 8D9D EB9C9A 8D9D
+8D9E 8D9E EB9C9B 8D9E
+8D9F 8D9F EB9C9C 8D9F
+8DA0 8DA0 EB9C9D 8DA0
+8DA1 8DA1 EB9C9E 8DA1
+8DA2 8DA2 EB9C9F 8DA2
+8DA3 8DA3 EB9CA0 8DA3
+8DA4 8DA4 EB9CA1 8DA4
+8DA5 8DA5 EB9CA2 8DA5
+8DA6 8DA6 EB9CA3 8DA6
+8DA7 8DA7 EB9CA4 8DA7
+8DA8 8DA8 EB9CA5 8DA8
+8DA9 8DA9 EB9CA6 8DA9
+8DAA 8DAA EB9CA7 8DAA
+8DAB 8DAB EB9CAA 8DAB
+8DAC 8DAC EB9CAB 8DAC
+8DAD 8DAD EB9CAD 8DAD
+8DAE 8DAE EB9CAE 8DAE
+8DAF 8DAF EB9CB1 8DAF
+8DB0 8DB0 EB9CB2 8DB0
+8DB1 8DB1 EB9CB3 8DB1
+8DB2 8DB2 EB9CB4 8DB2
+8DB3 8DB3 EB9CB5 8DB3
+8DB4 8DB4 EB9CB6 8DB4
+8DB5 8DB5 EB9CB7 8DB5
+8DB6 8DB6 EB9CBA 8DB6
+8DB7 8DB7 EB9CBC 8DB7
+8DB8 8DB8 EB9CBD 8DB8
+8DB9 8DB9 EB9CBE 8DB9
+8DBA 8DBA EB9CBF 8DBA
+8DBB 8DBB EB9D80 8DBB
+8DBC 8DBC EB9D81 8DBC
+8DBD 8DBD EB9D82 8DBD
+8DBE 8DBE EB9D83 8DBE
+8DBF 8DBF EB9D85 8DBF
+8DC0 8DC0 EB9D86 8DC0
+8DC1 8DC1 EB9D87 8DC1
+8DC2 8DC2 EB9D89 8DC2
+8DC3 8DC3 EB9D8A 8DC3
+8DC4 8DC4 EB9D8B 8DC4
+8DC5 8DC5 EB9D8D 8DC5
+8DC6 8DC6 EB9D8E 8DC6
+8DC7 8DC7 EB9D8F 8DC7
+8DC8 8DC8 EB9D90 8DC8
+8DC9 8DC9 EB9D91 8DC9
+8DCA 8DCA EB9D92 8DCA
+8DCB 8DCB EB9D93 8DCB
+8DCC 8DCC EB9D96 8DCC
+8DCD 8DCD EB9D97 8DCD
+8DCE 8DCE EB9D98 8DCE
+8DCF 8DCF EB9D99 8DCF
+8DD0 8DD0 EB9D9A 8DD0
+8DD1 8DD1 EB9D9B 8DD1
+8DD2 8DD2 EB9D9C 8DD2
+8DD3 8DD3 EB9D9D 8DD3
+8DD4 8DD4 EB9D9E 8DD4
+8DD5 8DD5 EB9D9F 8DD5
+8DD6 8DD6 EB9DA1 8DD6
+8DD7 8DD7 EB9DA2 8DD7
+8DD8 8DD8 EB9DA3 8DD8
+8DD9 8DD9 EB9DA5 8DD9
+8DDA 8DDA EB9DA6 8DDA
+8DDB 8DDB EB9DA7 8DDB
+8DDC 8DDC EB9DA9 8DDC
+8DDD 8DDD EB9DAA 8DDD
+8DDE 8DDE EB9DAB 8DDE
+8DDF 8DDF EB9DAC 8DDF
+8DE0 8DE0 EB9DAD 8DE0
+8DE1 8DE1 EB9DAE 8DE1
+8DE2 8DE2 EB9DAF 8DE2
+8DE3 8DE3 EB9DB2 8DE3
+8DE4 8DE4 EB9DB4 8DE4
+8DE5 8DE5 EB9DB6 8DE5
+8DE6 8DE6 EB9DB7 8DE6
+8DE7 8DE7 EB9DB8 8DE7
+8DE8 8DE8 EB9DB9 8DE8
+8DE9 8DE9 EB9DBA 8DE9
+8DEA 8DEA EB9DBB 8DEA
+8DEB 8DEB EB9DBE 8DEB
+8DEC 8DEC EB9DBF 8DEC
+8DED 8DED EB9E81 8DED
+8DEE 8DEE EB9E82 8DEE
+8DEF 8DEF EB9E83 8DEF
+8DF0 8DF0 EB9E85 8DF0
+8DF1 8DF1 EB9E86 8DF1
+8DF2 8DF2 EB9E87 8DF2
+8DF3 8DF3 EB9E88 8DF3
+8DF4 8DF4 EB9E89 8DF4
+8DF5 8DF5 EB9E8A 8DF5
+8DF6 8DF6 EB9E8B 8DF6
+8DF7 8DF7 EB9E8E 8DF7
+8DF8 8DF8 EB9E93 8DF8
+8DF9 8DF9 EB9E94 8DF9
+8DFA 8DFA EB9E95 8DFA
+8DFB 8DFB EB9E9A 8DFB
+8DFC 8DFC EB9E9B 8DFC
+8DFD 8DFD EB9E9D 8DFD
+8DFE 8DFE EB9E9E 8DFE
+8E41 8E41 EB9E9F 8E41
+8E42 8E42 EB9EA1 8E42
+8E43 8E43 EB9EA2 8E43
+8E44 8E44 EB9EA3 8E44
+8E45 8E45 EB9EA4 8E45
+8E46 8E46 EB9EA5 8E46
+8E47 8E47 EB9EA6 8E47
+8E48 8E48 EB9EA7 8E48
+8E49 8E49 EB9EAA 8E49
+8E4A 8E4A EB9EAE 8E4A
+8E4B 8E4B EB9EAF 8E4B
+8E4C 8E4C EB9EB0 8E4C
+8E4D 8E4D EB9EB1 8E4D
+8E4E 8E4E EB9EB2 8E4E
+8E4F 8E4F EB9EB3 8E4F
+8E50 8E50 EB9EB6 8E50
+8E51 8E51 EB9EB7 8E51
+8E52 8E52 EB9EB9 8E52
+8E53 8E53 EB9EBA 8E53
+8E54 8E54 EB9EBB 8E54
+8E55 8E55 EB9EBC 8E55
+8E56 8E56 EB9EBD 8E56
+8E57 8E57 EB9EBE 8E57
+8E58 8E58 EB9EBF 8E58
+8E59 8E59 EB9F80 8E59
+8E5A 8E5A EB9F81 8E5A
+8E61 8E61 EB9F82 8E61
+8E62 8E62 EB9F83 8E62
+8E63 8E63 EB9F84 8E63
+8E64 8E64 EB9F85 8E64
+8E65 8E65 EB9F86 8E65
+8E66 8E66 EB9F88 8E66
+8E67 8E67 EB9F8A 8E67
+8E68 8E68 EB9F8B 8E68
+8E69 8E69 EB9F8C 8E69
+8E6A 8E6A EB9F8D 8E6A
+8E6B 8E6B EB9F8E 8E6B
+8E6C 8E6C EB9F8F 8E6C
+8E6D 8E6D EB9F90 8E6D
+8E6E 8E6E EB9F91 8E6E
+8E6F 8E6F EB9F92 8E6F
+8E70 8E70 EB9F93 8E70
+8E71 8E71 EB9F94 8E71
+8E72 8E72 EB9F95 8E72
+8E73 8E73 EB9F96 8E73
+8E74 8E74 EB9F97 8E74
+8E75 8E75 EB9F98 8E75
+8E76 8E76 EB9F99 8E76
+8E77 8E77 EB9F9A 8E77
+8E78 8E78 EB9F9B 8E78
+8E79 8E79 EB9F9C 8E79
+8E7A 8E7A EB9F9D 8E7A
+8E81 8E81 EB9F9E 8E81
+8E82 8E82 EB9F9F 8E82
+8E83 8E83 EB9FA0 8E83
+8E84 8E84 EB9FA1 8E84
+8E85 8E85 EB9FA2 8E85
+8E86 8E86 EB9FA3 8E86
+8E87 8E87 EB9FA4 8E87
+8E88 8E88 EB9FA5 8E88
+8E89 8E89 EB9FA6 8E89
+8E8A 8E8A EB9FA7 8E8A
+8E8B 8E8B EB9FA8 8E8B
+8E8C 8E8C EB9FA9 8E8C
+8E8D 8E8D EB9FAA 8E8D
+8E8E 8E8E EB9FAB 8E8E
+8E8F 8E8F EB9FAE 8E8F
+8E90 8E90 EB9FAF 8E90
+8E91 8E91 EB9FB1 8E91
+8E92 8E92 EB9FB2 8E92
+8E93 8E93 EB9FB3 8E93
+8E94 8E94 EB9FB5 8E94
+8E95 8E95 EB9FB6 8E95
+8E96 8E96 EB9FB7 8E96
+8E97 8E97 EB9FB8 8E97
+8E98 8E98 EB9FB9 8E98
+8E99 8E99 EB9FBA 8E99
+8E9A 8E9A EB9FBB 8E9A
+8E9B 8E9B EB9FBE 8E9B
+8E9C 8E9C EBA082 8E9C
+8E9D 8E9D EBA083 8E9D
+8E9E 8E9E EBA084 8E9E
+8E9F 8E9F EBA085 8E9F
+8EA0 8EA0 EBA086 8EA0
+8EA1 8EA1 EBA08A 8EA1
+8EA2 8EA2 EBA08B 8EA2
+8EA3 8EA3 EBA08D 8EA3
+8EA4 8EA4 EBA08E 8EA4
+8EA5 8EA5 EBA08F 8EA5
+8EA6 8EA6 EBA091 8EA6
+8EA7 8EA7 EBA092 8EA7
+8EA8 8EA8 EBA093 8EA8
+8EA9 8EA9 EBA094 8EA9
+8EAA 8EAA EBA095 8EAA
+8EAB 8EAB EBA096 8EAB
+8EAC 8EAC EBA097 8EAC
+8EAD 8EAD EBA09A 8EAD
+8EAE 8EAE EBA09C 8EAE
+8EAF 8EAF EBA09E 8EAF
+8EB0 8EB0 EBA09F 8EB0
+8EB1 8EB1 EBA0A0 8EB1
+8EB2 8EB2 EBA0A1 8EB2
+8EB3 8EB3 EBA0A2 8EB3
+8EB4 8EB4 EBA0A3 8EB4
+8EB5 8EB5 EBA0A6 8EB5
+8EB6 8EB6 EBA0A7 8EB6
+8EB7 8EB7 EBA0A9 8EB7
+8EB8 8EB8 EBA0AA 8EB8
+8EB9 8EB9 EBA0AB 8EB9
+8EBA 8EBA EBA0AD 8EBA
+8EBB 8EBB EBA0AE 8EBB
+8EBC 8EBC EBA0AF 8EBC
+8EBD 8EBD EBA0B0 8EBD
+8EBE 8EBE EBA0B1 8EBE
+8EBF 8EBF EBA0B2 8EBF
+8EC0 8EC0 EBA0B3 8EC0
+8EC1 8EC1 EBA0B6 8EC1
+8EC2 8EC2 EBA0BA 8EC2
+8EC3 8EC3 EBA0BB 8EC3
+8EC4 8EC4 EBA0BC 8EC4
+8EC5 8EC5 EBA0BD 8EC5
+8EC6 8EC6 EBA0BE 8EC6
+8EC7 8EC7 EBA0BF 8EC7
+8EC8 8EC8 EBA181 8EC8
+8EC9 8EC9 EBA182 8EC9
+8ECA 8ECA EBA183 8ECA
+8ECB 8ECB EBA185 8ECB
+8ECC 8ECC EBA186 8ECC
+8ECD 8ECD EBA187 8ECD
+8ECE 8ECE EBA188 8ECE
+8ECF 8ECF EBA189 8ECF
+8ED0 8ED0 EBA18A 8ED0
+8ED1 8ED1 EBA18B 8ED1
+8ED2 8ED2 EBA18C 8ED2
+8ED3 8ED3 EBA18D 8ED3
+8ED4 8ED4 EBA18E 8ED4
+8ED5 8ED5 EBA18F 8ED5
+8ED6 8ED6 EBA190 8ED6
+8ED7 8ED7 EBA192 8ED7
+8ED8 8ED8 EBA194 8ED8
+8ED9 8ED9 EBA195 8ED9
+8EDA 8EDA EBA196 8EDA
+8EDB 8EDB EBA197 8EDB
+8EDC 8EDC EBA198 8EDC
+8EDD 8EDD EBA199 8EDD
+8EDE 8EDE EBA19A 8EDE
+8EDF 8EDF EBA19B 8EDF
+8EE0 8EE0 EBA19E 8EE0
+8EE1 8EE1 EBA19F 8EE1
+8EE2 8EE2 EBA1A1 8EE2
+8EE3 8EE3 EBA1A2 8EE3
+8EE4 8EE4 EBA1A3 8EE4
+8EE5 8EE5 EBA1A5 8EE5
+8EE6 8EE6 EBA1A6 8EE6
+8EE7 8EE7 EBA1A7 8EE7
+8EE8 8EE8 EBA1A8 8EE8
+8EE9 8EE9 EBA1A9 8EE9
+8EEA 8EEA EBA1AA 8EEA
+8EEB 8EEB EBA1AB 8EEB
+8EEC 8EEC EBA1AE 8EEC
+8EED 8EED EBA1B0 8EED
+8EEE 8EEE EBA1B2 8EEE
+8EEF 8EEF EBA1B3 8EEF
+8EF0 8EF0 EBA1B4 8EF0
+8EF1 8EF1 EBA1B5 8EF1
+8EF2 8EF2 EBA1B6 8EF2
+8EF3 8EF3 EBA1B7 8EF3
+8EF4 8EF4 EBA1B9 8EF4
+8EF5 8EF5 EBA1BA 8EF5
+8EF6 8EF6 EBA1BB 8EF6
+8EF7 8EF7 EBA1BD 8EF7
+8EF8 8EF8 EBA1BE 8EF8
+8EF9 8EF9 EBA1BF 8EF9
+8EFA 8EFA EBA280 8EFA
+8EFB 8EFB EBA281 8EFB
+8EFC 8EFC EBA282 8EFC
+8EFD 8EFD EBA283 8EFD
+8EFE 8EFE EBA284 8EFE
+8F41 8F41 EBA285 8F41
+8F42 8F42 EBA286 8F42
+8F43 8F43 EBA287 8F43
+8F44 8F44 EBA288 8F44
+8F45 8F45 EBA289 8F45
+8F46 8F46 EBA28A 8F46
+8F47 8F47 EBA28B 8F47
+8F48 8F48 EBA28C 8F48
+8F49 8F49 EBA28E 8F49
+8F4A 8F4A EBA28F 8F4A
+8F4B 8F4B EBA290 8F4B
+8F4C 8F4C EBA291 8F4C
+8F4D 8F4D EBA292 8F4D
+8F4E 8F4E EBA293 8F4E
+8F4F 8F4F EBA294 8F4F
+8F50 8F50 EBA295 8F50
+8F51 8F51 EBA296 8F51
+8F52 8F52 EBA297 8F52
+8F53 8F53 EBA298 8F53
+8F54 8F54 EBA299 8F54
+8F55 8F55 EBA29A 8F55
+8F56 8F56 EBA29B 8F56
+8F57 8F57 EBA29C 8F57
+8F58 8F58 EBA29D 8F58
+8F59 8F59 EBA29E 8F59
+8F5A 8F5A EBA29F 8F5A
+8F61 8F61 EBA2A0 8F61
+8F62 8F62 EBA2A1 8F62
+8F63 8F63 EBA2A2 8F63
+8F64 8F64 EBA2A3 8F64
+8F65 8F65 EBA2A4 8F65
+8F66 8F66 EBA2A5 8F66
+8F67 8F67 EBA2A6 8F67
+8F68 8F68 EBA2A7 8F68
+8F69 8F69 EBA2A9 8F69
+8F6A 8F6A EBA2AA 8F6A
+8F6B 8F6B EBA2AB 8F6B
+8F6C 8F6C EBA2AC 8F6C
+8F6D 8F6D EBA2AD 8F6D
+8F6E 8F6E EBA2AE 8F6E
+8F6F 8F6F EBA2AF 8F6F
+8F70 8F70 EBA2B1 8F70
+8F71 8F71 EBA2B2 8F71
+8F72 8F72 EBA2B3 8F72
+8F73 8F73 EBA2B5 8F73
+8F74 8F74 EBA2B6 8F74
+8F75 8F75 EBA2B7 8F75
+8F76 8F76 EBA2B9 8F76
+8F77 8F77 EBA2BA 8F77
+8F78 8F78 EBA2BB 8F78
+8F79 8F79 EBA2BC 8F79
+8F7A 8F7A EBA2BD 8F7A
+8F81 8F81 EBA2BE 8F81
+8F82 8F82 EBA2BF 8F82
+8F83 8F83 EBA382 8F83
+8F84 8F84 EBA384 8F84
+8F85 8F85 EBA386 8F85
+8F86 8F86 EBA387 8F86
+8F87 8F87 EBA388 8F87
+8F88 8F88 EBA389 8F88
+8F89 8F89 EBA38A 8F89
+8F8A 8F8A EBA38B 8F8A
+8F8B 8F8B EBA38D 8F8B
+8F8C 8F8C EBA38E 8F8C
+8F8D 8F8D EBA38F 8F8D
+8F8E 8F8E EBA391 8F8E
+8F8F 8F8F EBA392 8F8F
+8F90 8F90 EBA393 8F90
+8F91 8F91 EBA395 8F91
+8F92 8F92 EBA396 8F92
+8F93 8F93 EBA397 8F93
+8F94 8F94 EBA398 8F94
+8F95 8F95 EBA399 8F95
+8F96 8F96 EBA39A 8F96
+8F97 8F97 EBA39B 8F97
+8F98 8F98 EBA39C 8F98
+8F99 8F99 EBA39E 8F99
+8F9A 8F9A EBA3A0 8F9A
+8F9B 8F9B EBA3A2 8F9B
+8F9C 8F9C EBA3A3 8F9C
+8F9D 8F9D EBA3A4 8F9D
+8F9E 8F9E EBA3A5 8F9E
+8F9F 8F9F EBA3A6 8F9F
+8FA0 8FA0 EBA3A7 8FA0
+8FA1 8FA1 EBA3AA 8FA1
+8FA2 8FA2 EBA3AB 8FA2
+8FA3 8FA3 EBA3AD 8FA3
+8FA4 8FA4 EBA3AE 8FA4
+8FA5 8FA5 EBA3AF 8FA5
+8FA6 8FA6 EBA3B1 8FA6
+8FA7 8FA7 EBA3B2 8FA7
+8FA8 8FA8 EBA3B3 8FA8
+8FA9 8FA9 EBA3B4 8FA9
+8FAA 8FAA EBA3B5 8FAA
+8FAB 8FAB EBA3B6 8FAB
+8FAC 8FAC EBA3B7 8FAC
+8FAD 8FAD EBA3BA 8FAD
+8FAE 8FAE EBA3BC 8FAE
+8FAF 8FAF EBA3BE 8FAF
+8FB0 8FB0 EBA3BF 8FB0
+8FB1 8FB1 EBA480 8FB1
+8FB2 8FB2 EBA481 8FB2
+8FB3 8FB3 EBA482 8FB3
+8FB4 8FB4 EBA483 8FB4
+8FB5 8FB5 EBA485 8FB5
+8FB6 8FB6 EBA486 8FB6
+8FB7 8FB7 EBA487 8FB7
+8FB8 8FB8 EBA488 8FB8
+8FB9 8FB9 EBA489 8FB9
+8FBA 8FBA EBA48A 8FBA
+8FBB 8FBB EBA48B 8FBB
+8FBC 8FBC EBA48C 8FBC
+8FBD 8FBD EBA48D 8FBD
+8FBE 8FBE EBA48E 8FBE
+8FBF 8FBF EBA48F 8FBF
+8FC0 8FC0 EBA490 8FC0
+8FC1 8FC1 EBA491 8FC1
+8FC2 8FC2 EBA492 8FC2
+8FC3 8FC3 EBA493 8FC3
+8FC4 8FC4 EBA494 8FC4
+8FC5 8FC5 EBA495 8FC5
+8FC6 8FC6 EBA496 8FC6
+8FC7 8FC7 EBA497 8FC7
+8FC8 8FC8 EBA499 8FC8
+8FC9 8FC9 EBA49A 8FC9
+8FCA 8FCA EBA49B 8FCA
+8FCB 8FCB EBA49C 8FCB
+8FCC 8FCC EBA49D 8FCC
+8FCD 8FCD EBA49E 8FCD
+8FCE 8FCE EBA49F 8FCE
+8FCF 8FCF EBA4A1 8FCF
+8FD0 8FD0 EBA4A2 8FD0
+8FD1 8FD1 EBA4A3 8FD1
+8FD2 8FD2 EBA4A4 8FD2
+8FD3 8FD3 EBA4A5 8FD3
+8FD4 8FD4 EBA4A6 8FD4
+8FD5 8FD5 EBA4A7 8FD5
+8FD6 8FD6 EBA4A8 8FD6
+8FD7 8FD7 EBA4A9 8FD7
+8FD8 8FD8 EBA4AA 8FD8
+8FD9 8FD9 EBA4AB 8FD9
+8FDA 8FDA EBA4AC 8FDA
+8FDB 8FDB EBA4AD 8FDB
+8FDC 8FDC EBA4AE 8FDC
+8FDD 8FDD EBA4AF 8FDD
+8FDE 8FDE EBA4B0 8FDE
+8FDF 8FDF EBA4B1 8FDF
+8FE0 8FE0 EBA4B2 8FE0
+8FE1 8FE1 EBA4B3 8FE1
+8FE2 8FE2 EBA4B4 8FE2
+8FE3 8FE3 EBA4B5 8FE3
+8FE4 8FE4 EBA4B6 8FE4
+8FE5 8FE5 EBA4B7 8FE5
+8FE6 8FE6 EBA4B8 8FE6
+8FE7 8FE7 EBA4B9 8FE7
+8FE8 8FE8 EBA4BA 8FE8
+8FE9 8FE9 EBA4BB 8FE9
+8FEA 8FEA EBA4BE 8FEA
+8FEB 8FEB EBA4BF 8FEB
+8FEC 8FEC EBA581 8FEC
+8FED 8FED EBA582 8FED
+8FEE 8FEE EBA583 8FEE
+8FEF 8FEF EBA585 8FEF
+8FF0 8FF0 EBA586 8FF0
+8FF1 8FF1 EBA587 8FF1
+8FF2 8FF2 EBA588 8FF2
+8FF3 8FF3 EBA589 8FF3
+8FF4 8FF4 EBA58A 8FF4
+8FF5 8FF5 EBA58B 8FF5
+8FF6 8FF6 EBA58D 8FF6
+8FF7 8FF7 EBA58E 8FF7
+8FF8 8FF8 EBA590 8FF8
+8FF9 8FF9 EBA592 8FF9
+8FFA 8FFA EBA593 8FFA
+8FFB 8FFB EBA594 8FFB
+8FFC 8FFC EBA595 8FFC
+8FFD 8FFD EBA596 8FFD
+8FFE 8FFE EBA597 8FFE
+9041 9041 EBA59A 9041
+9042 9042 EBA59B 9042
+9043 9043 EBA59D 9043
+9044 9044 EBA59E 9044
+9045 9045 EBA59F 9045
+9046 9046 EBA5A1 9046
+9047 9047 EBA5A2 9047
+9048 9048 EBA5A3 9048
+9049 9049 EBA5A4 9049
+904A 904A EBA5A5 904A
+904B 904B EBA5A6 904B
+904C 904C EBA5A7 904C
+904D 904D EBA5AA 904D
+904E 904E EBA5AC 904E
+904F 904F EBA5AE 904F
+9050 9050 EBA5AF 9050
+9051 9051 EBA5B0 9051
+9052 9052 EBA5B1 9052
+9053 9053 EBA5B2 9053
+9054 9054 EBA5B3 9054
+9055 9055 EBA5B6 9055
+9056 9056 EBA5B7 9056
+9057 9057 EBA5B9 9057
+9058 9058 EBA5BA 9058
+9059 9059 EBA5BB 9059
+905A 905A EBA5BD 905A
+9061 9061 EBA5BE 9061
+9062 9062 EBA5BF 9062
+9063 9063 EBA680 9063
+9064 9064 EBA681 9064
+9065 9065 EBA682 9065
+9066 9066 EBA683 9066
+9067 9067 EBA686 9067
+9068 9068 EBA688 9068
+9069 9069 EBA68B 9069
+906A 906A EBA68C 906A
+906B 906B EBA68F 906B
+906C 906C EBA690 906C
+906D 906D EBA691 906D
+906E 906E EBA692 906E
+906F 906F EBA693 906F
+9070 9070 EBA694 9070
+9071 9071 EBA695 9071
+9072 9072 EBA696 9072
+9073 9073 EBA697 9073
+9074 9074 EBA698 9074
+9075 9075 EBA699 9075
+9076 9076 EBA69A 9076
+9077 9077 EBA69B 9077
+9078 9078 EBA69C 9078
+9079 9079 EBA69D 9079
+907A 907A EBA69E 907A
+9081 9081 EBA69F 9081
+9082 9082 EBA6A0 9082
+9083 9083 EBA6A1 9083
+9084 9084 EBA6A2 9084
+9085 9085 EBA6A3 9085
+9086 9086 EBA6A4 9086
+9087 9087 EBA6A5 9087
+9088 9088 EBA6A6 9088
+9089 9089 EBA6A7 9089
+908A 908A EBA6A8 908A
+908B 908B EBA6A9 908B
+908C 908C EBA6AA 908C
+908D 908D EBA6AB 908D
+908E 908E EBA6AE 908E
+908F 908F EBA6AF 908F
+9090 9090 EBA6B1 9090
+9091 9091 EBA6B2 9091
+9092 9092 EBA6B3 9092
+9093 9093 EBA6B5 9093
+9094 9094 EBA6B6 9094
+9095 9095 EBA6B7 9095
+9096 9096 EBA6B8 9096
+9097 9097 EBA6B9 9097
+9098 9098 EBA6BA 9098
+9099 9099 EBA6BB 9099
+909A 909A EBA6BE 909A
+909B 909B EBA780 909B
+909C 909C EBA782 909C
+909D 909D EBA783 909D
+909E 909E EBA784 909E
+909F 909F EBA785 909F
+90A0 90A0 EBA786 90A0
+90A1 90A1 EBA787 90A1
+90A2 90A2 EBA78A 90A2
+90A3 90A3 EBA78B 90A3
+90A4 90A4 EBA78D 90A4
+90A5 90A5 EBA793 90A5
+90A6 90A6 EBA794 90A6
+90A7 90A7 EBA795 90A7
+90A8 90A8 EBA796 90A8
+90A9 90A9 EBA797 90A9
+90AA 90AA EBA79A 90AA
+90AB 90AB EBA79C 90AB
+90AC 90AC EBA79F 90AC
+90AD 90AD EBA7A0 90AD
+90AE 90AE EBA7A2 90AE
+90AF 90AF EBA7A6 90AF
+90B0 90B0 EBA7A7 90B0
+90B1 90B1 EBA7A9 90B1
+90B2 90B2 EBA7AA 90B2
+90B3 90B3 EBA7AB 90B3
+90B4 90B4 EBA7AD 90B4
+90B5 90B5 EBA7AE 90B5
+90B6 90B6 EBA7AF 90B6
+90B7 90B7 EBA7B0 90B7
+90B8 90B8 EBA7B1 90B8
+90B9 90B9 EBA7B2 90B9
+90BA 90BA EBA7B3 90BA
+90BB 90BB EBA7B6 90BB
+90BC 90BC EBA7BB 90BC
+90BD 90BD EBA7BC 90BD
+90BE 90BE EBA7BD 90BE
+90BF 90BF EBA7BE 90BF
+90C0 90C0 EBA7BF 90C0
+90C1 90C1 EBA882 90C1
+90C2 90C2 EBA883 90C2
+90C3 90C3 EBA884 90C3
+90C4 90C4 EBA885 90C4
+90C5 90C5 EBA886 90C5
+90C6 90C6 EBA887 90C6
+90C7 90C7 EBA889 90C7
+90C8 90C8 EBA88A 90C8
+90C9 90C9 EBA88B 90C9
+90CA 90CA EBA88C 90CA
+90CB 90CB EBA88D 90CB
+90CC 90CC EBA88E 90CC
+90CD 90CD EBA88F 90CD
+90CE 90CE EBA890 90CE
+90CF 90CF EBA891 90CF
+90D0 90D0 EBA892 90D0
+90D1 90D1 EBA893 90D1
+90D2 90D2 EBA894 90D2
+90D3 90D3 EBA896 90D3
+90D4 90D4 EBA897 90D4
+90D5 90D5 EBA898 90D5
+90D6 90D6 EBA899 90D6
+90D7 90D7 EBA89A 90D7
+90D8 90D8 EBA89B 90D8
+90D9 90D9 EBA89C 90D9
+90DA 90DA EBA89D 90DA
+90DB 90DB EBA89E 90DB
+90DC 90DC EBA89F 90DC
+90DD 90DD EBA8A0 90DD
+90DE 90DE EBA8A1 90DE
+90DF 90DF EBA8A2 90DF
+90E0 90E0 EBA8A3 90E0
+90E1 90E1 EBA8A4 90E1
+90E2 90E2 EBA8A5 90E2
+90E3 90E3 EBA8A6 90E3
+90E4 90E4 EBA8A7 90E4
+90E5 90E5 EBA8A8 90E5
+90E6 90E6 EBA8A9 90E6
+90E7 90E7 EBA8AA 90E7
+90E8 90E8 EBA8AB 90E8
+90E9 90E9 EBA8AC 90E9
+90EA 90EA EBA8AD 90EA
+90EB 90EB EBA8AE 90EB
+90EC 90EC EBA8AF 90EC
+90ED 90ED EBA8B0 90ED
+90EE 90EE EBA8B1 90EE
+90EF 90EF EBA8B2 90EF
+90F0 90F0 EBA8B3 90F0
+90F1 90F1 EBA8B4 90F1
+90F2 90F2 EBA8B5 90F2
+90F3 90F3 EBA8B6 90F3
+90F4 90F4 EBA8B7 90F4
+90F5 90F5 EBA8BA 90F5
+90F6 90F6 EBA8BB 90F6
+90F7 90F7 EBA8BD 90F7
+90F8 90F8 EBA8BE 90F8
+90F9 90F9 EBA8BF 90F9
+90FA 90FA EBA981 90FA
+90FB 90FB EBA983 90FB
+90FC 90FC EBA984 90FC
+90FD 90FD EBA985 90FD
+90FE 90FE EBA986 90FE
+9141 9141 EBA987 9141
+9142 9142 EBA98A 9142
+9143 9143 EBA98C 9143
+9144 9144 EBA98F 9144
+9145 9145 EBA990 9145
+9146 9146 EBA991 9146
+9147 9147 EBA992 9147
+9148 9148 EBA996 9148
+9149 9149 EBA997 9149
+914A 914A EBA999 914A
+914B 914B EBA99A 914B
+914C 914C EBA99B 914C
+914D 914D EBA99D 914D
+914E 914E EBA99E 914E
+914F 914F EBA99F 914F
+9150 9150 EBA9A0 9150
+9151 9151 EBA9A1 9151
+9152 9152 EBA9A2 9152
+9153 9153 EBA9A3 9153
+9154 9154 EBA9A6 9154
+9155 9155 EBA9AA 9155
+9156 9156 EBA9AB 9156
+9157 9157 EBA9AC 9157
+9158 9158 EBA9AD 9158
+9159 9159 EBA9AE 9159
+915A 915A EBA9AF 915A
+9161 9161 EBA9B2 9161
+9162 9162 EBA9B3 9162
+9163 9163 EBA9B5 9163
+9164 9164 EBA9B6 9164
+9165 9165 EBA9B7 9165
+9166 9166 EBA9B9 9166
+9167 9167 EBA9BA 9167
+9168 9168 EBA9BB 9168
+9169 9169 EBA9BC 9169
+916A 916A EBA9BD 916A
+916B 916B EBA9BE 916B
+916C 916C EBA9BF 916C
+916D 916D EBAA80 916D
+916E 916E EBAA81 916E
+916F 916F EBAA82 916F
+9170 9170 EBAA86 9170
+9171 9171 EBAA88 9171
+9172 9172 EBAA89 9172
+9173 9173 EBAA8A 9173
+9174 9174 EBAA8B 9174
+9175 9175 EBAA8D 9175
+9176 9176 EBAA8E 9176
+9177 9177 EBAA8F 9177
+9178 9178 EBAA90 9178
+9179 9179 EBAA91 9179
+917A 917A EBAA92 917A
+9181 9181 EBAA93 9181
+9182 9182 EBAA94 9182
+9183 9183 EBAA95 9183
+9184 9184 EBAA96 9184
+9185 9185 EBAA97 9185
+9186 9186 EBAA98 9186
+9187 9187 EBAA99 9187
+9188 9188 EBAA9A 9188
+9189 9189 EBAA9B 9189
+918A 918A EBAA9C 918A
+918B 918B EBAA9D 918B
+918C 918C EBAA9E 918C
+918D 918D EBAA9F 918D
+918E 918E EBAAA0 918E
+918F 918F EBAAA1 918F
+9190 9190 EBAAA2 9190
+9191 9191 EBAAA3 9191
+9192 9192 EBAAA4 9192
+9193 9193 EBAAA5 9193
+9194 9194 EBAAA6 9194
+9195 9195 EBAAA7 9195
+9196 9196 EBAAAA 9196
+9197 9197 EBAAAD 9197
+9198 9198 EBAAAE 9198
+9199 9199 EBAAAF 9199
+919A 919A EBAAB1 919A
+919B 919B EBAAB3 919B
+919C 919C EBAAB4 919C
+919D 919D EBAAB5 919D
+919E 919E EBAAB6 919E
+919F 919F EBAAB7 919F
+91A0 91A0 EBAABA 91A0
+91A1 91A1 EBAABC 91A1
+91A2 91A2 EBAABE 91A2
+91A3 91A3 EBAABF 91A3
+91A4 91A4 EBAB80 91A4
+91A5 91A5 EBAB81 91A5
+91A6 91A6 EBAB82 91A6
+91A7 91A7 EBAB83 91A7
+91A8 91A8 EBAB85 91A8
+91A9 91A9 EBAB86 91A9
+91AA 91AA EBAB87 91AA
+91AB 91AB EBAB89 91AB
+91AC 91AC EBAB8A 91AC
+91AD 91AD EBAB8B 91AD
+91AE 91AE EBAB8C 91AE
+91AF 91AF EBAB8D 91AF
+91B0 91B0 EBAB8E 91B0
+91B1 91B1 EBAB8F 91B1
+91B2 91B2 EBAB90 91B2
+91B3 91B3 EBAB91 91B3
+91B4 91B4 EBAB92 91B4
+91B5 91B5 EBAB93 91B5
+91B6 91B6 EBAB94 91B6
+91B7 91B7 EBAB95 91B7
+91B8 91B8 EBAB96 91B8
+91B9 91B9 EBAB97 91B9
+91BA 91BA EBAB9A 91BA
+91BB 91BB EBAB9B 91BB
+91BC 91BC EBAB9C 91BC
+91BD 91BD EBAB9D 91BD
+91BE 91BE EBAB9E 91BE
+91BF 91BF EBAB9F 91BF
+91C0 91C0 EBABA0 91C0
+91C1 91C1 EBABA1 91C1
+91C2 91C2 EBABA2 91C2
+91C3 91C3 EBABA3 91C3
+91C4 91C4 EBABA4 91C4
+91C5 91C5 EBABA5 91C5
+91C6 91C6 EBABA6 91C6
+91C7 91C7 EBABA7 91C7
+91C8 91C8 EBABA8 91C8
+91C9 91C9 EBABA9 91C9
+91CA 91CA EBABAA 91CA
+91CB 91CB EBABAB 91CB
+91CC 91CC EBABAC 91CC
+91CD 91CD EBABAD 91CD
+91CE 91CE EBABAE 91CE
+91CF 91CF EBABAF 91CF
+91D0 91D0 EBABB0 91D0
+91D1 91D1 EBABB1 91D1
+91D2 91D2 EBABB2 91D2
+91D3 91D3 EBABB3 91D3
+91D4 91D4 EBABB4 91D4
+91D5 91D5 EBABB5 91D5
+91D6 91D6 EBABB6 91D6
+91D7 91D7 EBABB7 91D7
+91D8 91D8 EBABB8 91D8
+91D9 91D9 EBABB9 91D9
+91DA 91DA EBABBA 91DA
+91DB 91DB EBABBB 91DB
+91DC 91DC EBABBD 91DC
+91DD 91DD EBABBE 91DD
+91DE 91DE EBABBF 91DE
+91DF 91DF EBAC81 91DF
+91E0 91E0 EBAC82 91E0
+91E1 91E1 EBAC83 91E1
+91E2 91E2 EBAC85 91E2
+91E3 91E3 EBAC86 91E3
+91E4 91E4 EBAC87 91E4
+91E5 91E5 EBAC88 91E5
+91E6 91E6 EBAC89 91E6
+91E7 91E7 EBAC8A 91E7
+91E8 91E8 EBAC8B 91E8
+91E9 91E9 EBAC8C 91E9
+91EA 91EA EBAC8E 91EA
+91EB 91EB EBAC90 91EB
+91EC 91EC EBAC92 91EC
+91ED 91ED EBAC93 91ED
+91EE 91EE EBAC94 91EE
+91EF 91EF EBAC95 91EF
+91F0 91F0 EBAC96 91F0
+91F1 91F1 EBAC97 91F1
+91F2 91F2 EBAC99 91F2
+91F3 91F3 EBAC9A 91F3
+91F4 91F4 EBAC9B 91F4
+91F5 91F5 EBAC9D 91F5
+91F6 91F6 EBAC9E 91F6
+91F7 91F7 EBAC9F 91F7
+91F8 91F8 EBACA1 91F8
+91F9 91F9 EBACA2 91F9
+91FA 91FA EBACA3 91FA
+91FB 91FB EBACA4 91FB
+91FC 91FC EBACA5 91FC
+91FD 91FD EBACA6 91FD
+91FE 91FE EBACA7 91FE
+9241 9241 EBACA8 9241
+9242 9242 EBACAA 9242
+9243 9243 EBACAC 9243
+9244 9244 EBACAD 9244
+9245 9245 EBACAE 9245
+9246 9246 EBACAF 9246
+9247 9247 EBACB0 9247
+9248 9248 EBACB1 9248
+9249 9249 EBACB2 9249
+924A 924A EBACB3 924A
+924B 924B EBACB7 924B
+924C 924C EBACB9 924C
+924D 924D EBACBA 924D
+924E 924E EBACBF 924E
+924F 924F EBAD80 924F
+9250 9250 EBAD81 9250
+9251 9251 EBAD82 9251
+9252 9252 EBAD83 9252
+9253 9253 EBAD86 9253
+9254 9254 EBAD88 9254
+9255 9255 EBAD8A 9255
+9256 9256 EBAD8B 9256
+9257 9257 EBAD8C 9257
+9258 9258 EBAD8E 9258
+9259 9259 EBAD91 9259
+925A 925A EBAD92 925A
+9261 9261 EBAD93 9261
+9262 9262 EBAD95 9262
+9263 9263 EBAD96 9263
+9264 9264 EBAD97 9264
+9265 9265 EBAD99 9265
+9266 9266 EBAD9A 9266
+9267 9267 EBAD9B 9267
+9268 9268 EBAD9C 9268
+9269 9269 EBAD9D 9269
+926A 926A EBAD9E 926A
+926B 926B EBAD9F 926B
+926C 926C EBADA0 926C
+926D 926D EBADA2 926D
+926E 926E EBADA4 926E
+926F 926F EBADA5 926F
+9270 9270 EBADA6 9270
+9271 9271 EBADA7 9271
+9272 9272 EBADA8 9272
+9273 9273 EBADA9 9273
+9274 9274 EBADAA 9274
+9275 9275 EBADAB 9275
+9276 9276 EBADAD 9276
+9277 9277 EBADAE 9277
+9278 9278 EBADAF 9278
+9279 9279 EBADB0 9279
+927A 927A EBADB1 927A
+9281 9281 EBADB2 9281
+9282 9282 EBADB3 9282
+9283 9283 EBADB4 9283
+9284 9284 EBADB5 9284
+9285 9285 EBADB6 9285
+9286 9286 EBADB7 9286
+9287 9287 EBADB8 9287
+9288 9288 EBADB9 9288
+9289 9289 EBADBA 9289
+928A 928A EBADBB 928A
+928B 928B EBADBC 928B
+928C 928C EBADBD 928C
+928D 928D EBADBE 928D
+928E 928E EBADBF 928E
+928F 928F EBAE80 928F
+9290 9290 EBAE81 9290
+9291 9291 EBAE82 9291
+9292 9292 EBAE83 9292
+9293 9293 EBAE84 9293
+9294 9294 EBAE85 9294
+9295 9295 EBAE86 9295
+9296 9296 EBAE87 9296
+9297 9297 EBAE89 9297
+9298 9298 EBAE8A 9298
+9299 9299 EBAE8B 9299
+929A 929A EBAE8D 929A
+929B 929B EBAE8E 929B
+929C 929C EBAE8F 929C
+929D 929D EBAE91 929D
+929E 929E EBAE92 929E
+929F 929F EBAE93 929F
+92A0 92A0 EBAE94 92A0
+92A1 92A1 EBAE95 92A1
+92A2 92A2 EBAE96 92A2
+92A3 92A3 EBAE97 92A3
+92A4 92A4 EBAE98 92A4
+92A5 92A5 EBAE99 92A5
+92A6 92A6 EBAE9A 92A6
+92A7 92A7 EBAE9B 92A7
+92A8 92A8 EBAE9C 92A8
+92A9 92A9 EBAE9D 92A9
+92AA 92AA EBAE9E 92AA
+92AB 92AB EBAE9F 92AB
+92AC 92AC EBAEA0 92AC
+92AD 92AD EBAEA1 92AD
+92AE 92AE EBAEA2 92AE
+92AF 92AF EBAEA3 92AF
+92B0 92B0 EBAEA5 92B0
+92B1 92B1 EBAEA6 92B1
+92B2 92B2 EBAEA7 92B2
+92B3 92B3 EBAEA9 92B3
+92B4 92B4 EBAEAA 92B4
+92B5 92B5 EBAEAB 92B5
+92B6 92B6 EBAEAD 92B6
+92B7 92B7 EBAEAE 92B7
+92B8 92B8 EBAEAF 92B8
+92B9 92B9 EBAEB0 92B9
+92BA 92BA EBAEB1 92BA
+92BB 92BB EBAEB2 92BB
+92BC 92BC EBAEB3 92BC
+92BD 92BD EBAEB5 92BD
+92BE 92BE EBAEB6 92BE
+92BF 92BF EBAEB8 92BF
+92C0 92C0 EBAEB9 92C0
+92C1 92C1 EBAEBA 92C1
+92C2 92C2 EBAEBB 92C2
+92C3 92C3 EBAEBC 92C3
+92C4 92C4 EBAEBD 92C4
+92C5 92C5 EBAEBE 92C5
+92C6 92C6 EBAEBF 92C6
+92C7 92C7 EBAF81 92C7
+92C8 92C8 EBAF82 92C8
+92C9 92C9 EBAF83 92C9
+92CA 92CA EBAF85 92CA
+92CB 92CB EBAF86 92CB
+92CC 92CC EBAF87 92CC
+92CD 92CD EBAF89 92CD
+92CE 92CE EBAF8A 92CE
+92CF 92CF EBAF8B 92CF
+92D0 92D0 EBAF8C 92D0
+92D1 92D1 EBAF8D 92D1
+92D2 92D2 EBAF8E 92D2
+92D3 92D3 EBAF8F 92D3
+92D4 92D4 EBAF91 92D4
+92D5 92D5 EBAF92 92D5
+92D6 92D6 EBAF94 92D6
+92D7 92D7 EBAF95 92D7
+92D8 92D8 EBAF96 92D8
+92D9 92D9 EBAF97 92D9
+92DA 92DA EBAF98 92DA
+92DB 92DB EBAF99 92DB
+92DC 92DC EBAF9A 92DC
+92DD 92DD EBAF9B 92DD
+92DE 92DE EBAF9C 92DE
+92DF 92DF EBAF9D 92DF
+92E0 92E0 EBAF9E 92E0
+92E1 92E1 EBAF9F 92E1
+92E2 92E2 EBAFA0 92E2
+92E3 92E3 EBAFA1 92E3
+92E4 92E4 EBAFA2 92E4
+92E5 92E5 EBAFA3 92E5
+92E6 92E6 EBAFA4 92E6
+92E7 92E7 EBAFA5 92E7
+92E8 92E8 EBAFA6 92E8
+92E9 92E9 EBAFA7 92E9
+92EA 92EA EBAFA8 92EA
+92EB 92EB EBAFA9 92EB
+92EC 92EC EBAFAA 92EC
+92ED 92ED EBAFAB 92ED
+92EE 92EE EBAFAC 92EE
+92EF 92EF EBAFAD 92EF
+92F0 92F0 EBAFAE 92F0
+92F1 92F1 EBAFAF 92F1
+92F2 92F2 EBAFB0 92F2
+92F3 92F3 EBAFB1 92F3
+92F4 92F4 EBAFB2 92F4
+92F5 92F5 EBAFB3 92F5
+92F6 92F6 EBAFB4 92F6
+92F7 92F7 EBAFB5 92F7
+92F8 92F8 EBAFB6 92F8
+92F9 92F9 EBAFB7 92F9
+92FA 92FA EBAFBA 92FA
+92FB 92FB EBAFBB 92FB
+92FC 92FC EBAFBD 92FC
+92FD 92FD EBAFBE 92FD
+92FE 92FE EBB081 92FE
+9341 9341 EBB083 9341
+9342 9342 EBB084 9342
+9343 9343 EBB085 9343
+9344 9344 EBB086 9344
+9345 9345 EBB087 9345
+9346 9346 EBB08A 9346
+9347 9347 EBB08E 9347
+9348 9348 EBB090 9348
+9349 9349 EBB092 9349
+934A 934A EBB093 934A
+934B 934B EBB099 934B
+934C 934C EBB09A 934C
+934D 934D EBB0A0 934D
+934E 934E EBB0A1 934E
+934F 934F EBB0A2 934F
+9350 9350 EBB0A3 9350
+9351 9351 EBB0A6 9351
+9352 9352 EBB0A8 9352
+9353 9353 EBB0AA 9353
+9354 9354 EBB0AB 9354
+9355 9355 EBB0AC 9355
+9356 9356 EBB0AE 9356
+9357 9357 EBB0AF 9357
+9358 9358 EBB0B2 9358
+9359 9359 EBB0B3 9359
+935A 935A EBB0B5 935A
+9361 9361 EBB0B6 9361
+9362 9362 EBB0B7 9362
+9363 9363 EBB0B9 9363
+9364 9364 EBB0BA 9364
+9365 9365 EBB0BB 9365
+9366 9366 EBB0BC 9366
+9367 9367 EBB0BD 9367
+9368 9368 EBB0BE 9368
+9369 9369 EBB0BF 9369
+936A 936A EBB182 936A
+936B 936B EBB186 936B
+936C 936C EBB187 936C
+936D 936D EBB188 936D
+936E 936E EBB18A 936E
+936F 936F EBB18B 936F
+9370 9370 EBB18E 9370
+9371 9371 EBB18F 9371
+9372 9372 EBB191 9372
+9373 9373 EBB192 9373
+9374 9374 EBB193 9374
+9375 9375 EBB194 9375
+9376 9376 EBB195 9376
+9377 9377 EBB196 9377
+9378 9378 EBB197 9378
+9379 9379 EBB198 9379
+937A 937A EBB199 937A
+9381 9381 EBB19A 9381
+9382 9382 EBB19B 9382
+9383 9383 EBB19C 9383
+9384 9384 EBB19E 9384
+9385 9385 EBB19F 9385
+9386 9386 EBB1A0 9386
+9387 9387 EBB1A1 9387
+9388 9388 EBB1A2 9388
+9389 9389 EBB1A3 9389
+938A 938A EBB1A4 938A
+938B 938B EBB1A5 938B
+938C 938C EBB1A6 938C
+938D 938D EBB1A7 938D
+938E 938E EBB1A8 938E
+938F 938F EBB1A9 938F
+9390 9390 EBB1AA 9390
+9391 9391 EBB1AB 9391
+9392 9392 EBB1AC 9392
+9393 9393 EBB1AD 9393
+9394 9394 EBB1AE 9394
+9395 9395 EBB1AF 9395
+9396 9396 EBB1B0 9396
+9397 9397 EBB1B1 9397
+9398 9398 EBB1B2 9398
+9399 9399 EBB1B3 9399
+939A 939A EBB1B4 939A
+939B 939B EBB1B5 939B
+939C 939C EBB1B6 939C
+939D 939D EBB1B7 939D
+939E 939E EBB1B8 939E
+939F 939F EBB1B9 939F
+93A0 93A0 EBB1BA 93A0
+93A1 93A1 EBB1BB 93A1
+93A2 93A2 EBB1BC 93A2
+93A3 93A3 EBB1BD 93A3
+93A4 93A4 EBB1BE 93A4
+93A5 93A5 EBB1BF 93A5
+93A6 93A6 EBB280 93A6
+93A7 93A7 EBB281 93A7
+93A8 93A8 EBB282 93A8
+93A9 93A9 EBB283 93A9
+93AA 93AA EBB286 93AA
+93AB 93AB EBB287 93AB
+93AC 93AC EBB289 93AC
+93AD 93AD EBB28A 93AD
+93AE 93AE EBB28D 93AE
+93AF 93AF EBB28F 93AF
+93B0 93B0 EBB290 93B0
+93B1 93B1 EBB291 93B1
+93B2 93B2 EBB292 93B2
+93B3 93B3 EBB293 93B3
+93B4 93B4 EBB296 93B4
+93B5 93B5 EBB298 93B5
+93B6 93B6 EBB29B 93B6
+93B7 93B7 EBB29C 93B7
+93B8 93B8 EBB29D 93B8
+93B9 93B9 EBB29E 93B9
+93BA 93BA EBB29F 93BA
+93BB 93BB EBB2A2 93BB
+93BC 93BC EBB2A3 93BC
+93BD 93BD EBB2A5 93BD
+93BE 93BE EBB2A6 93BE
+93BF 93BF EBB2A9 93BF
+93C0 93C0 EBB2AA 93C0
+93C1 93C1 EBB2AB 93C1
+93C2 93C2 EBB2AC 93C2
+93C3 93C3 EBB2AD 93C3
+93C4 93C4 EBB2AE 93C4
+93C5 93C5 EBB2AF 93C5
+93C6 93C6 EBB2B2 93C6
+93C7 93C7 EBB2B6 93C7
+93C8 93C8 EBB2B7 93C8
+93C9 93C9 EBB2B8 93C9
+93CA 93CA EBB2B9 93CA
+93CB 93CB EBB2BA 93CB
+93CC 93CC EBB2BB 93CC
+93CD 93CD EBB2BE 93CD
+93CE 93CE EBB2BF 93CE
+93CF 93CF EBB381 93CF
+93D0 93D0 EBB382 93D0
+93D1 93D1 EBB383 93D1
+93D2 93D2 EBB385 93D2
+93D3 93D3 EBB386 93D3
+93D4 93D4 EBB387 93D4
+93D5 93D5 EBB388 93D5
+93D6 93D6 EBB389 93D6
+93D7 93D7 EBB38A 93D7
+93D8 93D8 EBB38B 93D8
+93D9 93D9 EBB38C 93D9
+93DA 93DA EBB38E 93DA
+93DB 93DB EBB392 93DB
+93DC 93DC EBB393 93DC
+93DD 93DD EBB394 93DD
+93DE 93DE EBB396 93DE
+93DF 93DF EBB397 93DF
+93E0 93E0 EBB399 93E0
+93E1 93E1 EBB39A 93E1
+93E2 93E2 EBB39B 93E2
+93E3 93E3 EBB39D 93E3
+93E4 93E4 EBB39E 93E4
+93E5 93E5 EBB39F 93E5
+93E6 93E6 EBB3A0 93E6
+93E7 93E7 EBB3A1 93E7
+93E8 93E8 EBB3A2 93E8
+93E9 93E9 EBB3A3 93E9
+93EA 93EA EBB3A4 93EA
+93EB 93EB EBB3A5 93EB
+93EC 93EC EBB3A6 93EC
+93ED 93ED EBB3A7 93ED
+93EE 93EE EBB3A8 93EE
+93EF 93EF EBB3A9 93EF
+93F0 93F0 EBB3AA 93F0
+93F1 93F1 EBB3AB 93F1
+93F2 93F2 EBB3AC 93F2
+93F3 93F3 EBB3AD 93F3
+93F4 93F4 EBB3AE 93F4
+93F5 93F5 EBB3AF 93F5
+93F6 93F6 EBB3B0 93F6
+93F7 93F7 EBB3B1 93F7
+93F8 93F8 EBB3B2 93F8
+93F9 93F9 EBB3B3 93F9
+93FA 93FA EBB3B7 93FA
+93FB 93FB EBB3B9 93FB
+93FC 93FC EBB3BA 93FC
+93FD 93FD EBB3BB 93FD
+93FE 93FE EBB3BD 93FE
+9441 9441 EBB3BE 9441
+9442 9442 EBB3BF 9442
+9443 9443 EBB480 9443
+9444 9444 EBB481 9444
+9445 9445 EBB482 9445
+9446 9446 EBB483 9446
+9447 9447 EBB486 9447
+9448 9448 EBB488 9448
+9449 9449 EBB48A 9449
+944A 944A EBB48B 944A
+944B 944B EBB48C 944B
+944C 944C EBB48D 944C
+944D 944D EBB48E 944D
+944E 944E EBB48F 944E
+944F 944F EBB491 944F
+9450 9450 EBB492 9450
+9451 9451 EBB493 9451
+9452 9452 EBB495 9452
+9453 9453 EBB496 9453
+9454 9454 EBB497 9454
+9455 9455 EBB498 9455
+9456 9456 EBB499 9456
+9457 9457 EBB49A 9457
+9458 9458 EBB49B 9458
+9459 9459 EBB49C 9459
+945A 945A EBB49D 945A
+9461 9461 EBB49E 9461
+9462 9462 EBB49F 9462
+9463 9463 EBB4A0 9463
+9464 9464 EBB4A1 9464
+9465 9465 EBB4A2 9465
+9466 9466 EBB4A3 9466
+9467 9467 EBB4A5 9467
+9468 9468 EBB4A6 9468
+9469 9469 EBB4A7 9469
+946A 946A EBB4A8 946A
+946B 946B EBB4A9 946B
+946C 946C EBB4AA 946C
+946D 946D EBB4AB 946D
+946E 946E EBB4AD 946E
+946F 946F EBB4AE 946F
+9470 9470 EBB4AF 9470
+9471 9471 EBB4B0 9471
+9472 9472 EBB4B1 9472
+9473 9473 EBB4B2 9473
+9474 9474 EBB4B3 9474
+9475 9475 EBB4B4 9475
+9476 9476 EBB4B5 9476
+9477 9477 EBB4B6 9477
+9478 9478 EBB4B7 9478
+9479 9479 EBB4B8 9479
+947A 947A EBB4B9 947A
+9481 9481 EBB4BA 9481
+9482 9482 EBB4BB 9482
+9483 9483 EBB4BC 9483
+9484 9484 EBB4BD 9484
+9485 9485 EBB4BE 9485
+9486 9486 EBB4BF 9486
+9487 9487 EBB581 9487
+9488 9488 EBB582 9488
+9489 9489 EBB583 9489
+948A 948A EBB584 948A
+948B 948B EBB585 948B
+948C 948C EBB586 948C
+948D 948D EBB587 948D
+948E 948E EBB58A 948E
+948F 948F EBB58B 948F
+9490 9490 EBB58D 9490
+9491 9491 EBB58E 9491
+9492 9492 EBB58F 9492
+9493 9493 EBB591 9493
+9494 9494 EBB592 9494
+9495 9495 EBB593 9495
+9496 9496 EBB594 9496
+9497 9497 EBB595 9497
+9498 9498 EBB596 9498
+9499 9499 EBB597 9499
+949A 949A EBB59A 949A
+949B 949B EBB59B 949B
+949C 949C EBB59C 949C
+949D 949D EBB59D 949D
+949E 949E EBB59E 949E
+949F 949F EBB59F 949F
+94A0 94A0 EBB5A0 94A0
+94A1 94A1 EBB5A1 94A1
+94A2 94A2 EBB5A2 94A2
+94A3 94A3 EBB5A3 94A3
+94A4 94A4 EBB5A5 94A4
+94A5 94A5 EBB5A6 94A5
+94A6 94A6 EBB5A7 94A6
+94A7 94A7 EBB5A9 94A7
+94A8 94A8 EBB5AA 94A8
+94A9 94A9 EBB5AB 94A9
+94AA 94AA EBB5AC 94AA
+94AB 94AB EBB5AD 94AB
+94AC 94AC EBB5AE 94AC
+94AD 94AD EBB5AF 94AD
+94AE 94AE EBB5B0 94AE
+94AF 94AF EBB5B1 94AF
+94B0 94B0 EBB5B2 94B0
+94B1 94B1 EBB5B3 94B1
+94B2 94B2 EBB5B4 94B2
+94B3 94B3 EBB5B5 94B3
+94B4 94B4 EBB5B6 94B4
+94B5 94B5 EBB5B7 94B5
+94B6 94B6 EBB5B8 94B6
+94B7 94B7 EBB5B9 94B7
+94B8 94B8 EBB5BA 94B8
+94B9 94B9 EBB5BB 94B9
+94BA 94BA EBB5BC 94BA
+94BB 94BB EBB5BD 94BB
+94BC 94BC EBB5BE 94BC
+94BD 94BD EBB5BF 94BD
+94BE 94BE EBB682 94BE
+94BF 94BF EBB683 94BF
+94C0 94C0 EBB685 94C0
+94C1 94C1 EBB686 94C1
+94C2 94C2 EBB68B 94C2
+94C3 94C3 EBB68C 94C3
+94C4 94C4 EBB68D 94C4
+94C5 94C5 EBB68E 94C5
+94C6 94C6 EBB68F 94C6
+94C7 94C7 EBB692 94C7
+94C8 94C8 EBB694 94C8
+94C9 94C9 EBB696 94C9
+94CA 94CA EBB697 94CA
+94CB 94CB EBB698 94CB
+94CC 94CC EBB69B 94CC
+94CD 94CD EBB69D 94CD
+94CE 94CE EBB69E 94CE
+94CF 94CF EBB69F 94CF
+94D0 94D0 EBB6A0 94D0
+94D1 94D1 EBB6A1 94D1
+94D2 94D2 EBB6A2 94D2
+94D3 94D3 EBB6A3 94D3
+94D4 94D4 EBB6A5 94D4
+94D5 94D5 EBB6A6 94D5
+94D6 94D6 EBB6A7 94D6
+94D7 94D7 EBB6A8 94D7
+94D8 94D8 EBB6A9 94D8
+94D9 94D9 EBB6AA 94D9
+94DA 94DA EBB6AB 94DA
+94DB 94DB EBB6AC 94DB
+94DC 94DC EBB6AD 94DC
+94DD 94DD EBB6AE 94DD
+94DE 94DE EBB6AF 94DE
+94DF 94DF EBB6B1 94DF
+94E0 94E0 EBB6B2 94E0
+94E1 94E1 EBB6B3 94E1
+94E2 94E2 EBB6B4 94E2
+94E3 94E3 EBB6B5 94E3
+94E4 94E4 EBB6B6 94E4
+94E5 94E5 EBB6B7 94E5
+94E6 94E6 EBB6B9 94E6
+94E7 94E7 EBB6BA 94E7
+94E8 94E8 EBB6BB 94E8
+94E9 94E9 EBB6BC 94E9
+94EA 94EA EBB6BD 94EA
+94EB 94EB EBB6BE 94EB
+94EC 94EC EBB6BF 94EC
+94ED 94ED EBB780 94ED
+94EE 94EE EBB781 94EE
+94EF 94EF EBB782 94EF
+94F0 94F0 EBB783 94F0
+94F1 94F1 EBB784 94F1
+94F2 94F2 EBB785 94F2
+94F3 94F3 EBB786 94F3
+94F4 94F4 EBB787 94F4
+94F5 94F5 EBB788 94F5
+94F6 94F6 EBB789 94F6
+94F7 94F7 EBB78A 94F7
+94F8 94F8 EBB78B 94F8
+94F9 94F9 EBB78C 94F9
+94FA 94FA EBB78D 94FA
+94FB 94FB EBB78E 94FB
+94FC 94FC EBB78F 94FC
+94FD 94FD EBB790 94FD
+94FE 94FE EBB791 94FE
+9541 9541 EBB792 9541
+9542 9542 EBB793 9542
+9543 9543 EBB796 9543
+9544 9544 EBB797 9544
+9545 9545 EBB799 9545
+9546 9546 EBB79A 9546
+9547 9547 EBB79B 9547
+9548 9548 EBB79D 9548
+9549 9549 EBB79E 9549
+954A 954A EBB79F 954A
+954B 954B EBB7A0 954B
+954C 954C EBB7A1 954C
+954D 954D EBB7A2 954D
+954E 954E EBB7A3 954E
+954F 954F EBB7A4 954F
+9550 9550 EBB7A5 9550
+9551 9551 EBB7A6 9551
+9552 9552 EBB7A7 9552
+9553 9553 EBB7A8 9553
+9554 9554 EBB7AA 9554
+9555 9555 EBB7AB 9555
+9556 9556 EBB7AC 9556
+9557 9557 EBB7AD 9557
+9558 9558 EBB7AE 9558
+9559 9559 EBB7AF 9559
+955A 955A EBB7B1 955A
+9561 9561 EBB7B2 9561
+9562 9562 EBB7B3 9562
+9563 9563 EBB7B5 9563
+9564 9564 EBB7B6 9564
+9565 9565 EBB7B7 9565
+9566 9566 EBB7B9 9566
+9567 9567 EBB7BA 9567
+9568 9568 EBB7BB 9568
+9569 9569 EBB7BC 9569
+956A 956A EBB7BD 956A
+956B 956B EBB7BE 956B
+956C 956C EBB7BF 956C
+956D 956D EBB881 956D
+956E 956E EBB882 956E
+956F 956F EBB884 956F
+9570 9570 EBB886 9570
+9571 9571 EBB887 9571
+9572 9572 EBB888 9572
+9573 9573 EBB889 9573
+9574 9574 EBB88A 9574
+9575 9575 EBB88B 9575
+9576 9576 EBB88E 9576
+9577 9577 EBB88F 9577
+9578 9578 EBB891 9578
+9579 9579 EBB892 9579
+957A 957A EBB893 957A
+9581 9581 EBB895 9581
+9582 9582 EBB896 9582
+9583 9583 EBB897 9583
+9584 9584 EBB898 9584
+9585 9585 EBB899 9585
+9586 9586 EBB89A 9586
+9587 9587 EBB89B 9587
+9588 9588 EBB89E 9588
+9589 9589 EBB8A0 9589
+958A 958A EBB8A1 958A
+958B 958B EBB8A2 958B
+958C 958C EBB8A3 958C
+958D 958D EBB8A4 958D
+958E 958E EBB8A5 958E
+958F 958F EBB8A6 958F
+9590 9590 EBB8A7 9590
+9591 9591 EBB8A8 9591
+9592 9592 EBB8A9 9592
+9593 9593 EBB8AA 9593
+9594 9594 EBB8AB 9594
+9595 9595 EBB8AC 9595
+9596 9596 EBB8AD 9596
+9597 9597 EBB8AE 9597
+9598 9598 EBB8AF 9598
+9599 9599 EBB8B0 9599
+959A 959A EBB8B1 959A
+959B 959B EBB8B2 959B
+959C 959C EBB8B3 959C
+959D 959D EBB8B4 959D
+959E 959E EBB8B5 959E
+959F 959F EBB8B6 959F
+95A0 95A0 EBB8B7 95A0
+95A1 95A1 EBB8B8 95A1
+95A2 95A2 EBB8B9 95A2
+95A3 95A3 EBB8BA 95A3
+95A4 95A4 EBB8BB 95A4
+95A5 95A5 EBB8BC 95A5
+95A6 95A6 EBB8BD 95A6
+95A7 95A7 EBB8BE 95A7
+95A8 95A8 EBB8BF 95A8
+95A9 95A9 EBB980 95A9
+95AA 95AA EBB981 95AA
+95AB 95AB EBB982 95AB
+95AC 95AC EBB983 95AC
+95AD 95AD EBB986 95AD
+95AE 95AE EBB987 95AE
+95AF 95AF EBB989 95AF
+95B0 95B0 EBB98A 95B0
+95B1 95B1 EBB98B 95B1
+95B2 95B2 EBB98D 95B2
+95B3 95B3 EBB98F 95B3
+95B4 95B4 EBB990 95B4
+95B5 95B5 EBB991 95B5
+95B6 95B6 EBB992 95B6
+95B7 95B7 EBB993 95B7
+95B8 95B8 EBB996 95B8
+95B9 95B9 EBB998 95B9
+95BA 95BA EBB99C 95BA
+95BB 95BB EBB99D 95BB
+95BC 95BC EBB99E 95BC
+95BD 95BD EBB99F 95BD
+95BE 95BE EBB9A2 95BE
+95BF 95BF EBB9A3 95BF
+95C0 95C0 EBB9A5 95C0
+95C1 95C1 EBB9A6 95C1
+95C2 95C2 EBB9A7 95C2
+95C3 95C3 EBB9A9 95C3
+95C4 95C4 EBB9AB 95C4
+95C5 95C5 EBB9AC 95C5
+95C6 95C6 EBB9AD 95C6
+95C7 95C7 EBB9AE 95C7
+95C8 95C8 EBB9AF 95C8
+95C9 95C9 EBB9B2 95C9
+95CA 95CA EBB9B6 95CA
+95CB 95CB EBB9B7 95CB
+95CC 95CC EBB9B8 95CC
+95CD 95CD EBB9B9 95CD
+95CE 95CE EBB9BA 95CE
+95CF 95CF EBB9BE 95CF
+95D0 95D0 EBB9BF 95D0
+95D1 95D1 EBBA81 95D1
+95D2 95D2 EBBA82 95D2
+95D3 95D3 EBBA83 95D3
+95D4 95D4 EBBA85 95D4
+95D5 95D5 EBBA86 95D5
+95D6 95D6 EBBA87 95D6
+95D7 95D7 EBBA88 95D7
+95D8 95D8 EBBA89 95D8
+95D9 95D9 EBBA8A 95D9
+95DA 95DA EBBA8B 95DA
+95DB 95DB EBBA8E 95DB
+95DC 95DC EBBA92 95DC
+95DD 95DD EBBA93 95DD
+95DE 95DE EBBA94 95DE
+95DF 95DF EBBA95 95DF
+95E0 95E0 EBBA96 95E0
+95E1 95E1 EBBA97 95E1
+95E2 95E2 EBBA9A 95E2
+95E3 95E3 EBBA9B 95E3
+95E4 95E4 EBBA9C 95E4
+95E5 95E5 EBBA9D 95E5
+95E6 95E6 EBBA9E 95E6
+95E7 95E7 EBBA9F 95E7
+95E8 95E8 EBBAA0 95E8
+95E9 95E9 EBBAA1 95E9
+95EA 95EA EBBAA2 95EA
+95EB 95EB EBBAA3 95EB
+95EC 95EC EBBAA4 95EC
+95ED 95ED EBBAA5 95ED
+95EE 95EE EBBAA6 95EE
+95EF 95EF EBBAA7 95EF
+95F0 95F0 EBBAA9 95F0
+95F1 95F1 EBBAAA 95F1
+95F2 95F2 EBBAAB 95F2
+95F3 95F3 EBBAAC 95F3
+95F4 95F4 EBBAAD 95F4
+95F5 95F5 EBBAAE 95F5
+95F6 95F6 EBBAAF 95F6
+95F7 95F7 EBBAB0 95F7
+95F8 95F8 EBBAB1 95F8
+95F9 95F9 EBBAB2 95F9
+95FA 95FA EBBAB3 95FA
+95FB 95FB EBBAB4 95FB
+95FC 95FC EBBAB5 95FC
+95FD 95FD EBBAB6 95FD
+95FE 95FE EBBAB7 95FE
+9641 9641 EBBAB8 9641
+9642 9642 EBBAB9 9642
+9643 9643 EBBABA 9643
+9644 9644 EBBABB 9644
+9645 9645 EBBABC 9645
+9646 9646 EBBABD 9646
+9647 9647 EBBABE 9647
+9648 9648 EBBABF 9648
+9649 9649 EBBB80 9649
+964A 964A EBBB81 964A
+964B 964B EBBB82 964B
+964C 964C EBBB83 964C
+964D 964D EBBB84 964D
+964E 964E EBBB85 964E
+964F 964F EBBB86 964F
+9650 9650 EBBB87 9650
+9651 9651 EBBB88 9651
+9652 9652 EBBB89 9652
+9653 9653 EBBB8A 9653
+9654 9654 EBBB8B 9654
+9655 9655 EBBB8C 9655
+9656 9656 EBBB8D 9656
+9657 9657 EBBB8E 9657
+9658 9658 EBBB8F 9658
+9659 9659 EBBB92 9659
+965A 965A EBBB93 965A
+9661 9661 EBBB95 9661
+9662 9662 EBBB96 9662
+9663 9663 EBBB99 9663
+9664 9664 EBBB9A 9664
+9665 9665 EBBB9B 9665
+9666 9666 EBBB9C 9666
+9667 9667 EBBB9D 9667
+9668 9668 EBBB9E 9668
+9669 9669 EBBB9F 9669
+966A 966A EBBBA1 966A
+966B 966B EBBBA2 966B
+966C 966C EBBBA6 966C
+966D 966D EBBBA7 966D
+966E 966E EBBBA8 966E
+966F 966F EBBBA9 966F
+9670 9670 EBBBAA 9670
+9671 9671 EBBBAB 9671
+9672 9672 EBBBAD 9672
+9673 9673 EBBBAE 9673
+9674 9674 EBBBAF 9674
+9675 9675 EBBBB0 9675
+9676 9676 EBBBB1 9676
+9677 9677 EBBBB2 9677
+9678 9678 EBBBB3 9678
+9679 9679 EBBBB4 9679
+967A 967A EBBBB5 967A
+9681 9681 EBBBB6 9681
+9682 9682 EBBBB7 9682
+9683 9683 EBBBB8 9683
+9684 9684 EBBBB9 9684
+9685 9685 EBBBBA 9685
+9686 9686 EBBBBB 9686
+9687 9687 EBBBBC 9687
+9688 9688 EBBBBD 9688
+9689 9689 EBBBBE 9689
+968A 968A EBBBBF 968A
+968B 968B EBBC80 968B
+968C 968C EBBC82 968C
+968D 968D EBBC83 968D
+968E 968E EBBC84 968E
+968F 968F EBBC85 968F
+9690 9690 EBBC86 9690
+9691 9691 EBBC87 9691
+9692 9692 EBBC8A 9692
+9693 9693 EBBC8B 9693
+9694 9694 EBBC8C 9694
+9695 9695 EBBC8D 9695
+9696 9696 EBBC8E 9696
+9697 9697 EBBC8F 9697
+9698 9698 EBBC90 9698
+9699 9699 EBBC91 9699
+969A 969A EBBC92 969A
+969B 969B EBBC93 969B
+969C 969C EBBC94 969C
+969D 969D EBBC95 969D
+969E 969E EBBC96 969E
+969F 969F EBBC97 969F
+96A0 96A0 EBBC9A 96A0
+96A1 96A1 EBBC9E 96A1
+96A2 96A2 EBBC9F 96A2
+96A3 96A3 EBBCA0 96A3
+96A4 96A4 EBBCA1 96A4
+96A5 96A5 EBBCA2 96A5
+96A6 96A6 EBBCA3 96A6
+96A7 96A7 EBBCA4 96A7
+96A8 96A8 EBBCA5 96A8
+96A9 96A9 EBBCA6 96A9
+96AA 96AA EBBCA7 96AA
+96AB 96AB EBBCA8 96AB
+96AC 96AC EBBCA9 96AC
+96AD 96AD EBBCAA 96AD
+96AE 96AE EBBCAB 96AE
+96AF 96AF EBBCAC 96AF
+96B0 96B0 EBBCAD 96B0
+96B1 96B1 EBBCAE 96B1
+96B2 96B2 EBBCAF 96B2
+96B3 96B3 EBBCB0 96B3
+96B4 96B4 EBBCB1 96B4
+96B5 96B5 EBBCB2 96B5
+96B6 96B6 EBBCB3 96B6
+96B7 96B7 EBBCB4 96B7
+96B8 96B8 EBBCB5 96B8
+96B9 96B9 EBBCB6 96B9
+96BA 96BA EBBCB7 96BA
+96BB 96BB EBBCB8 96BB
+96BC 96BC EBBCB9 96BC
+96BD 96BD EBBCBA 96BD
+96BE 96BE EBBCBB 96BE
+96BF 96BF EBBCBC 96BF
+96C0 96C0 EBBCBD 96C0
+96C1 96C1 EBBCBE 96C1
+96C2 96C2 EBBCBF 96C2
+96C3 96C3 EBBD82 96C3
+96C4 96C4 EBBD83 96C4
+96C5 96C5 EBBD85 96C5
+96C6 96C6 EBBD86 96C6
+96C7 96C7 EBBD87 96C7
+96C8 96C8 EBBD89 96C8
+96C9 96C9 EBBD8A 96C9
+96CA 96CA EBBD8B 96CA
+96CB 96CB EBBD8C 96CB
+96CC 96CC EBBD8D 96CC
+96CD 96CD EBBD8E 96CD
+96CE 96CE EBBD8F 96CE
+96CF 96CF EBBD92 96CF
+96D0 96D0 EBBD93 96D0
+96D1 96D1 EBBD94 96D1
+96D2 96D2 EBBD96 96D2
+96D3 96D3 EBBD97 96D3
+96D4 96D4 EBBD98 96D4
+96D5 96D5 EBBD99 96D5
+96D6 96D6 EBBD9A 96D6
+96D7 96D7 EBBD9B 96D7
+96D8 96D8 EBBD9C 96D8
+96D9 96D9 EBBD9D 96D9
+96DA 96DA EBBD9E 96DA
+96DB 96DB EBBD9F 96DB
+96DC 96DC EBBDA0 96DC
+96DD 96DD EBBDA1 96DD
+96DE 96DE EBBDA2 96DE
+96DF 96DF EBBDA3 96DF
+96E0 96E0 EBBDA4 96E0
+96E1 96E1 EBBDA5 96E1
+96E2 96E2 EBBDA6 96E2
+96E3 96E3 EBBDA7 96E3
+96E4 96E4 EBBDA8 96E4
+96E5 96E5 EBBDA9 96E5
+96E6 96E6 EBBDAA 96E6
+96E7 96E7 EBBDAB 96E7
+96E8 96E8 EBBDAC 96E8
+96E9 96E9 EBBDAD 96E9
+96EA 96EA EBBDAE 96EA
+96EB 96EB EBBDAF 96EB
+96EC 96EC EBBDB0 96EC
+96ED 96ED EBBDB1 96ED
+96EE 96EE EBBDB2 96EE
+96EF 96EF EBBDB3 96EF
+96F0 96F0 EBBDB4 96F0
+96F1 96F1 EBBDB5 96F1
+96F2 96F2 EBBDB6 96F2
+96F3 96F3 EBBDB7 96F3
+96F4 96F4 EBBDB8 96F4
+96F5 96F5 EBBDB9 96F5
+96F6 96F6 EBBDBA 96F6
+96F7 96F7 EBBDBB 96F7
+96F8 96F8 EBBDBC 96F8
+96F9 96F9 EBBDBD 96F9
+96FA 96FA EBBDBE 96FA
+96FB 96FB EBBDBF 96FB
+96FC 96FC EBBE80 96FC
+96FD 96FD EBBE81 96FD
+96FE 96FE EBBE82 96FE
+9741 9741 EBBE83 9741
+9742 9742 EBBE84 9742
+9743 9743 EBBE85 9743
+9744 9744 EBBE86 9744
+9745 9745 EBBE87 9745
+9746 9746 EBBE88 9746
+9747 9747 EBBE89 9747
+9748 9748 EBBE8A 9748
+9749 9749 EBBE8B 9749
+974A 974A EBBE8C 974A
+974B 974B EBBE8D 974B
+974C 974C EBBE8E 974C
+974D 974D EBBE8F 974D
+974E 974E EBBE90 974E
+974F 974F EBBE91 974F
+9750 9750 EBBE92 9750
+9751 9751 EBBE93 9751
+9752 9752 EBBE95 9752
+9753 9753 EBBE96 9753
+9754 9754 EBBE97 9754
+9755 9755 EBBE98 9755
+9756 9756 EBBE99 9756
+9757 9757 EBBE9A 9757
+9758 9758 EBBE9B 9758
+9759 9759 EBBE9C 9759
+975A 975A EBBE9D 975A
+9761 9761 EBBE9E 9761
+9762 9762 EBBE9F 9762
+9763 9763 EBBEA0 9763
+9764 9764 EBBEA1 9764
+9765 9765 EBBEA2 9765
+9766 9766 EBBEA3 9766
+9767 9767 EBBEA4 9767
+9768 9768 EBBEA5 9768
+9769 9769 EBBEA6 9769
+976A 976A EBBEA7 976A
+976B 976B EBBEA8 976B
+976C 976C EBBEA9 976C
+976D 976D EBBEAA 976D
+976E 976E EBBEAB 976E
+976F 976F EBBEAC 976F
+9770 9770 EBBEAD 9770
+9771 9771 EBBEAE 9771
+9772 9772 EBBEAF 9772
+9773 9773 EBBEB1 9773
+9774 9774 EBBEB2 9774
+9775 9775 EBBEB3 9775
+9776 9776 EBBEB4 9776
+9777 9777 EBBEB5 9777
+9778 9778 EBBEB6 9778
+9779 9779 EBBEB7 9779
+977A 977A EBBEB8 977A
+9781 9781 EBBEB9 9781
+9782 9782 EBBEBA 9782
+9783 9783 EBBEBB 9783
+9784 9784 EBBEBC 9784
+9785 9785 EBBEBD 9785
+9786 9786 EBBEBE 9786
+9787 9787 EBBEBF 9787
+9788 9788 EBBF80 9788
+9789 9789 EBBF81 9789
+978A 978A EBBF82 978A
+978B 978B EBBF83 978B
+978C 978C EBBF84 978C
+978D 978D EBBF86 978D
+978E 978E EBBF87 978E
+978F 978F EBBF88 978F
+9790 9790 EBBF89 9790
+9791 9791 EBBF8A 9791
+9792 9792 EBBF8B 9792
+9793 9793 EBBF8E 9793
+9794 9794 EBBF8F 9794
+9795 9795 EBBF91 9795
+9796 9796 EBBF92 9796
+9797 9797 EBBF93 9797
+9798 9798 EBBF95 9798
+9799 9799 EBBF96 9799
+979A 979A EBBF97 979A
+979B 979B EBBF98 979B
+979C 979C EBBF99 979C
+979D 979D EBBF9A 979D
+979E 979E EBBF9B 979E
+979F 979F EBBF9D 979F
+97A0 97A0 EBBF9E 97A0
+97A1 97A1 EBBFA0 97A1
+97A2 97A2 EBBFA2 97A2
+97A3 97A3 EBBFA3 97A3
+97A4 97A4 EBBFA4 97A4
+97A5 97A5 EBBFA5 97A5
+97A6 97A6 EBBFA6 97A6
+97A7 97A7 EBBFA7 97A7
+97A8 97A8 EBBFA8 97A8
+97A9 97A9 EBBFA9 97A9
+97AA 97AA EBBFAA 97AA
+97AB 97AB EBBFAB 97AB
+97AC 97AC EBBFAC 97AC
+97AD 97AD EBBFAD 97AD
+97AE 97AE EBBFAE 97AE
+97AF 97AF EBBFAF 97AF
+97B0 97B0 EBBFB0 97B0
+97B1 97B1 EBBFB1 97B1
+97B2 97B2 EBBFB2 97B2
+97B3 97B3 EBBFB3 97B3
+97B4 97B4 EBBFB4 97B4
+97B5 97B5 EBBFB5 97B5
+97B6 97B6 EBBFB6 97B6
+97B7 97B7 EBBFB7 97B7
+97B8 97B8 EBBFB8 97B8
+97B9 97B9 EBBFB9 97B9
+97BA 97BA EBBFBA 97BA
+97BB 97BB EBBFBB 97BB
+97BC 97BC EBBFBC 97BC
+97BD 97BD EBBFBD 97BD
+97BE 97BE EBBFBE 97BE
+97BF 97BF EBBFBF 97BF
+97C0 97C0 EC8080 97C0
+97C1 97C1 EC8081 97C1
+97C2 97C2 EC8082 97C2
+97C3 97C3 EC8083 97C3
+97C4 97C4 EC8084 97C4
+97C5 97C5 EC8085 97C5
+97C6 97C6 EC8086 97C6
+97C7 97C7 EC8087 97C7
+97C8 97C8 EC8088 97C8
+97C9 97C9 EC8089 97C9
+97CA 97CA EC808A 97CA
+97CB 97CB EC808B 97CB
+97CC 97CC EC808C 97CC
+97CD 97CD EC808D 97CD
+97CE 97CE EC808E 97CE
+97CF 97CF EC808F 97CF
+97D0 97D0 EC8090 97D0
+97D1 97D1 EC8091 97D1
+97D2 97D2 EC8092 97D2
+97D3 97D3 EC8093 97D3
+97D4 97D4 EC8094 97D4
+97D5 97D5 EC8095 97D5
+97D6 97D6 EC8096 97D6
+97D7 97D7 EC8097 97D7
+97D8 97D8 EC8098 97D8
+97D9 97D9 EC8099 97D9
+97DA 97DA EC809A 97DA
+97DB 97DB EC809B 97DB
+97DC 97DC EC809C 97DC
+97DD 97DD EC809D 97DD
+97DE 97DE EC809E 97DE
+97DF 97DF EC809F 97DF
+97E0 97E0 EC80A0 97E0
+97E1 97E1 EC80A1 97E1
+97E2 97E2 EC80A2 97E2
+97E3 97E3 EC80A3 97E3
+97E4 97E4 EC80A4 97E4
+97E5 97E5 EC80A5 97E5
+97E6 97E6 EC80A6 97E6
+97E7 97E7 EC80A7 97E7
+97E8 97E8 EC80A8 97E8
+97E9 97E9 EC80A9 97E9
+97EA 97EA EC80AA 97EA
+97EB 97EB EC80AB 97EB
+97EC 97EC EC80AC 97EC
+97ED 97ED EC80AD 97ED
+97EE 97EE EC80AE 97EE
+97EF 97EF EC80AF 97EF
+97F0 97F0 EC80B0 97F0
+97F1 97F1 EC80B1 97F1
+97F2 97F2 EC80B2 97F2
+97F3 97F3 EC80B3 97F3
+97F4 97F4 EC80B4 97F4
+97F5 97F5 EC80B5 97F5
+97F6 97F6 EC80B6 97F6
+97F7 97F7 EC80B7 97F7
+97F8 97F8 EC80B8 97F8
+97F9 97F9 EC80B9 97F9
+97FA 97FA EC80BA 97FA
+97FB 97FB EC80BB 97FB
+97FC 97FC EC80BD 97FC
+97FD 97FD EC80BE 97FD
+97FE 97FE EC80BF 97FE
+9841 9841 EC8180 9841
+9842 9842 EC8181 9842
+9843 9843 EC8182 9843
+9844 9844 EC8183 9844
+9845 9845 EC8184 9845
+9846 9846 EC8185 9846
+9847 9847 EC8186 9847
+9848 9848 EC8187 9848
+9849 9849 EC8188 9849
+984A 984A EC8189 984A
+984B 984B EC818A 984B
+984C 984C EC818B 984C
+984D 984D EC818C 984D
+984E 984E EC818D 984E
+984F 984F EC818E 984F
+9850 9850 EC818F 9850
+9851 9851 EC8190 9851
+9852 9852 EC8192 9852
+9853 9853 EC8193 9853
+9854 9854 EC8194 9854
+9855 9855 EC8195 9855
+9856 9856 EC8196 9856
+9857 9857 EC8197 9857
+9858 9858 EC8199 9858
+9859 9859 EC819A 9859
+985A 985A EC819B 985A
+9861 9861 EC819D 9861
+9862 9862 EC819E 9862
+9863 9863 EC819F 9863
+9864 9864 EC81A1 9864
+9865 9865 EC81A2 9865
+9866 9866 EC81A3 9866
+9867 9867 EC81A4 9867
+9868 9868 EC81A5 9868
+9869 9869 EC81A6 9869
+986A 986A EC81A7 986A
+986B 986B EC81AA 986B
+986C 986C EC81AB 986C
+986D 986D EC81AC 986D
+986E 986E EC81AD 986E
+986F 986F EC81AE 986F
+9870 9870 EC81AF 9870
+9871 9871 EC81B0 9871
+9872 9872 EC81B1 9872
+9873 9873 EC81B2 9873
+9874 9874 EC81B3 9874
+9875 9875 EC81B4 9875
+9876 9876 EC81B5 9876
+9877 9877 EC81B6 9877
+9878 9878 EC81B7 9878
+9879 9879 EC81B8 9879
+987A 987A EC81B9 987A
+9881 9881 EC81BA 9881
+9882 9882 EC81BB 9882
+9883 9883 EC81BC 9883
+9884 9884 EC81BD 9884
+9885 9885 EC81BE 9885
+9886 9886 EC81BF 9886
+9887 9887 EC8280 9887
+9888 9888 EC8281 9888
+9889 9889 EC8282 9889
+988A 988A EC8283 988A
+988B 988B EC8284 988B
+988C 988C EC8285 988C
+988D 988D EC8286 988D
+988E 988E EC8287 988E
+988F 988F EC8288 988F
+9890 9890 EC8289 9890
+9891 9891 EC828A 9891
+9892 9892 EC828B 9892
+9893 9893 EC828C 9893
+9894 9894 EC828D 9894
+9895 9895 EC828E 9895
+9896 9896 EC828F 9896
+9897 9897 EC8292 9897
+9898 9898 EC8293 9898
+9899 9899 EC8295 9899
+989A 989A EC8296 989A
+989B 989B EC8297 989B
+989C 989C EC8299 989C
+989D 989D EC829A 989D
+989E 989E EC829B 989E
+989F 989F EC829C 989F
+98A0 98A0 EC829D 98A0
+98A1 98A1 EC829E 98A1
+98A2 98A2 EC829F 98A2
+98A3 98A3 EC82A2 98A3
+98A4 98A4 EC82A4 98A4
+98A5 98A5 EC82A6 98A5
+98A6 98A6 EC82A7 98A6
+98A7 98A7 EC82A8 98A7
+98A8 98A8 EC82A9 98A8
+98A9 98A9 EC82AA 98A9
+98AA 98AA EC82AB 98AA
+98AB 98AB EC82AE 98AB
+98AC 98AC EC82B1 98AC
+98AD 98AD EC82B2 98AD
+98AE 98AE EC82B7 98AE
+98AF 98AF EC82B8 98AF
+98B0 98B0 EC82B9 98B0
+98B1 98B1 EC82BA 98B1
+98B2 98B2 EC82BB 98B2
+98B3 98B3 EC82BE 98B3
+98B4 98B4 EC8382 98B4
+98B5 98B5 EC8383 98B5
+98B6 98B6 EC8384 98B6
+98B7 98B7 EC8386 98B7
+98B8 98B8 EC8387 98B8
+98B9 98B9 EC838A 98B9
+98BA 98BA EC838B 98BA
+98BB 98BB EC838D 98BB
+98BC 98BC EC838E 98BC
+98BD 98BD EC838F 98BD
+98BE 98BE EC8391 98BE
+98BF 98BF EC8392 98BF
+98C0 98C0 EC8393 98C0
+98C1 98C1 EC8394 98C1
+98C2 98C2 EC8395 98C2
+98C3 98C3 EC8396 98C3
+98C4 98C4 EC8397 98C4
+98C5 98C5 EC839A 98C5
+98C6 98C6 EC839E 98C6
+98C7 98C7 EC839F 98C7
+98C8 98C8 EC83A0 98C8
+98C9 98C9 EC83A1 98C9
+98CA 98CA EC83A2 98CA
+98CB 98CB EC83A3 98CB
+98CC 98CC EC83A6 98CC
+98CD 98CD EC83A7 98CD
+98CE 98CE EC83A9 98CE
+98CF 98CF EC83AA 98CF
+98D0 98D0 EC83AB 98D0
+98D1 98D1 EC83AD 98D1
+98D2 98D2 EC83AE 98D2
+98D3 98D3 EC83AF 98D3
+98D4 98D4 EC83B0 98D4
+98D5 98D5 EC83B1 98D5
+98D6 98D6 EC83B2 98D6
+98D7 98D7 EC83B3 98D7
+98D8 98D8 EC83B6 98D8
+98D9 98D9 EC83B8 98D9
+98DA 98DA EC83BA 98DA
+98DB 98DB EC83BB 98DB
+98DC 98DC EC83BC 98DC
+98DD 98DD EC83BD 98DD
+98DE 98DE EC83BE 98DE
+98DF 98DF EC83BF 98DF
+98E0 98E0 EC8481 98E0
+98E1 98E1 EC8482 98E1
+98E2 98E2 EC8483 98E2
+98E3 98E3 EC8485 98E3
+98E4 98E4 EC8486 98E4
+98E5 98E5 EC8487 98E5
+98E6 98E6 EC8489 98E6
+98E7 98E7 EC848A 98E7
+98E8 98E8 EC848B 98E8
+98E9 98E9 EC848C 98E9
+98EA 98EA EC848D 98EA
+98EB 98EB EC848E 98EB
+98EC 98EC EC848F 98EC
+98ED 98ED EC8491 98ED
+98EE 98EE EC8492 98EE
+98EF 98EF EC8493 98EF
+98F0 98F0 EC8494 98F0
+98F1 98F1 EC8496 98F1
+98F2 98F2 EC8497 98F2
+98F3 98F3 EC8498 98F3
+98F4 98F4 EC8499 98F4
+98F5 98F5 EC849A 98F5
+98F6 98F6 EC849B 98F6
+98F7 98F7 EC84A1 98F7
+98F8 98F8 EC84A2 98F8
+98F9 98F9 EC84A5 98F9
+98FA 98FA EC84A8 98FA
+98FB 98FB EC84A9 98FB
+98FC 98FC EC84AA 98FC
+98FD 98FD EC84AB 98FD
+98FE 98FE EC84AE 98FE
+9941 9941 EC84B2 9941
+9942 9942 EC84B3 9942
+9943 9943 EC84B4 9943
+9944 9944 EC84B5 9944
+9945 9945 EC84B7 9945
+9946 9946 EC84BA 9946
+9947 9947 EC84BB 9947
+9948 9948 EC84BD 9948
+9949 9949 EC84BE 9949
+994A 994A EC84BF 994A
+994B 994B EC8581 994B
+994C 994C EC8582 994C
+994D 994D EC8583 994D
+994E 994E EC8584 994E
+994F 994F EC8585 994F
+9950 9950 EC8586 9950
+9951 9951 EC8587 9951
+9952 9952 EC858A 9952
+9953 9953 EC858E 9953
+9954 9954 EC858F 9954
+9955 9955 EC8590 9955
+9956 9956 EC8591 9956
+9957 9957 EC8592 9957
+9958 9958 EC8593 9958
+9959 9959 EC8596 9959
+995A 995A EC8597 995A
+9961 9961 EC8599 9961
+9962 9962 EC859A 9962
+9963 9963 EC859B 9963
+9964 9964 EC859D 9964
+9965 9965 EC859E 9965
+9966 9966 EC859F 9966
+9967 9967 EC85A0 9967
+9968 9968 EC85A1 9968
+9969 9969 EC85A2 9969
+996A 996A EC85A3 996A
+996B 996B EC85A6 996B
+996C 996C EC85AA 996C
+996D 996D EC85AB 996D
+996E 996E EC85AC 996E
+996F 996F EC85AD 996F
+9970 9970 EC85AE 9970
+9971 9971 EC85AF 9971
+9972 9972 EC85B1 9972
+9973 9973 EC85B2 9973
+9974 9974 EC85B3 9974
+9975 9975 EC85B5 9975
+9976 9976 EC85B6 9976
+9977 9977 EC85B7 9977
+9978 9978 EC85B9 9978
+9979 9979 EC85BA 9979
+997A 997A EC85BB 997A
+9981 9981 EC85BC 9981
+9982 9982 EC85BD 9982
+9983 9983 EC85BE 9983
+9984 9984 EC85BF 9984
+9985 9985 EC8680 9985
+9986 9986 EC8681 9986
+9987 9987 EC8682 9987
+9988 9988 EC8683 9988
+9989 9989 EC8684 9989
+998A 998A EC8686 998A
+998B 998B EC8687 998B
+998C 998C EC8688 998C
+998D 998D EC8689 998D
+998E 998E EC868A 998E
+998F 998F EC868B 998F
+9990 9990 EC868F 9990
+9991 9991 EC8691 9991
+9992 9992 EC8692 9992
+9993 9993 EC8693 9993
+9994 9994 EC8695 9994
+9995 9995 EC8697 9995
+9996 9996 EC8698 9996
+9997 9997 EC8699 9997
+9998 9998 EC869A 9998
+9999 9999 EC869B 9999
+999A 999A EC869E 999A
+999B 999B EC86A0 999B
+999C 999C EC86A2 999C
+999D 999D EC86A3 999D
+999E 999E EC86A4 999E
+999F 999F EC86A6 999F
+99A0 99A0 EC86A7 99A0
+99A1 99A1 EC86AA 99A1
+99A2 99A2 EC86AB 99A2
+99A3 99A3 EC86AD 99A3
+99A4 99A4 EC86AE 99A4
+99A5 99A5 EC86AF 99A5
+99A6 99A6 EC86B1 99A6
+99A7 99A7 EC86B2 99A7
+99A8 99A8 EC86B3 99A8
+99A9 99A9 EC86B4 99A9
+99AA 99AA EC86B5 99AA
+99AB 99AB EC86B6 99AB
+99AC 99AC EC86B7 99AC
+99AD 99AD EC86B8 99AD
+99AE 99AE EC86B9 99AE
+99AF 99AF EC86BA 99AF
+99B0 99B0 EC86BB 99B0
+99B1 99B1 EC86BC 99B1
+99B2 99B2 EC86BE 99B2
+99B3 99B3 EC86BF 99B3
+99B4 99B4 EC8780 99B4
+99B5 99B5 EC8781 99B5
+99B6 99B6 EC8782 99B6
+99B7 99B7 EC8783 99B7
+99B8 99B8 EC8785 99B8
+99B9 99B9 EC8786 99B9
+99BA 99BA EC8787 99BA
+99BB 99BB EC8789 99BB
+99BC 99BC EC878A 99BC
+99BD 99BD EC878B 99BD
+99BE 99BE EC878D 99BE
+99BF 99BF EC878E 99BF
+99C0 99C0 EC878F 99C0
+99C1 99C1 EC8790 99C1
+99C2 99C2 EC8791 99C2
+99C3 99C3 EC8792 99C3
+99C4 99C4 EC8793 99C4
+99C5 99C5 EC8795 99C5
+99C6 99C6 EC8796 99C6
+99C7 99C7 EC8799 99C7
+99C8 99C8 EC879A 99C8
+99C9 99C9 EC879B 99C9
+99CA 99CA EC879C 99CA
+99CB 99CB EC879D 99CB
+99CC 99CC EC879E 99CC
+99CD 99CD EC879F 99CD
+99CE 99CE EC87A1 99CE
+99CF 99CF EC87A2 99CF
+99D0 99D0 EC87A3 99D0
+99D1 99D1 EC87A5 99D1
+99D2 99D2 EC87A6 99D2
+99D3 99D3 EC87A7 99D3
+99D4 99D4 EC87A9 99D4
+99D5 99D5 EC87AA 99D5
+99D6 99D6 EC87AB 99D6
+99D7 99D7 EC87AC 99D7
+99D8 99D8 EC87AD 99D8
+99D9 99D9 EC87AE 99D9
+99DA 99DA EC87AF 99DA
+99DB 99DB EC87B2 99DB
+99DC 99DC EC87B4 99DC
+99DD 99DD EC87B5 99DD
+99DE 99DE EC87B6 99DE
+99DF 99DF EC87B7 99DF
+99E0 99E0 EC87B8 99E0
+99E1 99E1 EC87B9 99E1
+99E2 99E2 EC87BA 99E2
+99E3 99E3 EC87BB 99E3
+99E4 99E4 EC87BE 99E4
+99E5 99E5 EC87BF 99E5
+99E6 99E6 EC8881 99E6
+99E7 99E7 EC8882 99E7
+99E8 99E8 EC8883 99E8
+99E9 99E9 EC8885 99E9
+99EA 99EA EC8886 99EA
+99EB 99EB EC8887 99EB
+99EC 99EC EC8888 99EC
+99ED 99ED EC8889 99ED
+99EE 99EE EC888A 99EE
+99EF 99EF EC888B 99EF
+99F0 99F0 EC888E 99F0
+99F1 99F1 EC8890 99F1
+99F2 99F2 EC8892 99F2
+99F3 99F3 EC8893 99F3
+99F4 99F4 EC8894 99F4
+99F5 99F5 EC8895 99F5
+99F6 99F6 EC8896 99F6
+99F7 99F7 EC8897 99F7
+99F8 99F8 EC889A 99F8
+99F9 99F9 EC889B 99F9
+99FA 99FA EC889D 99FA
+99FB 99FB EC889E 99FB
+99FC 99FC EC88A1 99FC
+99FD 99FD EC88A2 99FD
+99FE 99FE EC88A3 99FE
+9A41 9A41 EC88A4 9A41
+9A42 9A42 EC88A5 9A42
+9A43 9A43 EC88A6 9A43
+9A44 9A44 EC88A7 9A44
+9A45 9A45 EC88AA 9A45
+9A46 9A46 EC88AC 9A46
+9A47 9A47 EC88AE 9A47
+9A48 9A48 EC88B0 9A48
+9A49 9A49 EC88B3 9A49
+9A4A 9A4A EC88B5 9A4A
+9A4B 9A4B EC88B6 9A4B
+9A4C 9A4C EC88B7 9A4C
+9A4D 9A4D EC88B8 9A4D
+9A4E 9A4E EC88B9 9A4E
+9A4F 9A4F EC88BA 9A4F
+9A50 9A50 EC88BB 9A50
+9A51 9A51 EC88BC 9A51
+9A52 9A52 EC88BD 9A52
+9A53 9A53 EC88BE 9A53
+9A54 9A54 EC88BF 9A54
+9A55 9A55 EC8980 9A55
+9A56 9A56 EC8981 9A56
+9A57 9A57 EC8982 9A57
+9A58 9A58 EC8983 9A58
+9A59 9A59 EC8984 9A59
+9A5A 9A5A EC8985 9A5A
+9A61 9A61 EC8986 9A61
+9A62 9A62 EC8987 9A62
+9A63 9A63 EC8989 9A63
+9A64 9A64 EC898A 9A64
+9A65 9A65 EC898B 9A65
+9A66 9A66 EC898C 9A66
+9A67 9A67 EC898D 9A67
+9A68 9A68 EC898E 9A68
+9A69 9A69 EC898F 9A69
+9A6A 9A6A EC8992 9A6A
+9A6B 9A6B EC8993 9A6B
+9A6C 9A6C EC8995 9A6C
+9A6D 9A6D EC8996 9A6D
+9A6E 9A6E EC8997 9A6E
+9A6F 9A6F EC8999 9A6F
+9A70 9A70 EC899A 9A70
+9A71 9A71 EC899B 9A71
+9A72 9A72 EC899C 9A72
+9A73 9A73 EC899D 9A73
+9A74 9A74 EC899E 9A74
+9A75 9A75 EC899F 9A75
+9A76 9A76 EC89A1 9A76
+9A77 9A77 EC89A2 9A77
+9A78 9A78 EC89A3 9A78
+9A79 9A79 EC89A4 9A79
+9A7A 9A7A EC89A6 9A7A
+9A81 9A81 EC89A7 9A81
+9A82 9A82 EC89A8 9A82
+9A83 9A83 EC89A9 9A83
+9A84 9A84 EC89AA 9A84
+9A85 9A85 EC89AB 9A85
+9A86 9A86 EC89AE 9A86
+9A87 9A87 EC89AF 9A87
+9A88 9A88 EC89B1 9A88
+9A89 9A89 EC89B2 9A89
+9A8A 9A8A EC89B3 9A8A
+9A8B 9A8B EC89B5 9A8B
+9A8C 9A8C EC89B6 9A8C
+9A8D 9A8D EC89B7 9A8D
+9A8E 9A8E EC89B8 9A8E
+9A8F 9A8F EC89B9 9A8F
+9A90 9A90 EC89BA 9A90
+9A91 9A91 EC89BB 9A91
+9A92 9A92 EC89BE 9A92
+9A93 9A93 EC8A80 9A93
+9A94 9A94 EC8A82 9A94
+9A95 9A95 EC8A83 9A95
+9A96 9A96 EC8A84 9A96
+9A97 9A97 EC8A85 9A97
+9A98 9A98 EC8A86 9A98
+9A99 9A99 EC8A87 9A99
+9A9A 9A9A EC8A8A 9A9A
+9A9B 9A9B EC8A8B 9A9B
+9A9C 9A9C EC8A8C 9A9C
+9A9D 9A9D EC8A8D 9A9D
+9A9E 9A9E EC8A8E 9A9E
+9A9F 9A9F EC8A8F 9A9F
+9AA0 9AA0 EC8A91 9AA0
+9AA1 9AA1 EC8A92 9AA1
+9AA2 9AA2 EC8A93 9AA2
+9AA3 9AA3 EC8A94 9AA3
+9AA4 9AA4 EC8A95 9AA4
+9AA5 9AA5 EC8A96 9AA5
+9AA6 9AA6 EC8A97 9AA6
+9AA7 9AA7 EC8A99 9AA7
+9AA8 9AA8 EC8A9A 9AA8
+9AA9 9AA9 EC8A9C 9AA9
+9AAA 9AAA EC8A9E 9AAA
+9AAB 9AAB EC8A9F 9AAB
+9AAC 9AAC EC8AA0 9AAC
+9AAD 9AAD EC8AA1 9AAD
+9AAE 9AAE EC8AA2 9AAE
+9AAF 9AAF EC8AA3 9AAF
+9AB0 9AB0 EC8AA6 9AB0
+9AB1 9AB1 EC8AA7 9AB1
+9AB2 9AB2 EC8AA9 9AB2
+9AB3 9AB3 EC8AAA 9AB3
+9AB4 9AB4 EC8AAB 9AB4
+9AB5 9AB5 EC8AAE 9AB5
+9AB6 9AB6 EC8AAF 9AB6
+9AB7 9AB7 EC8AB0 9AB7
+9AB8 9AB8 EC8AB1 9AB8
+9AB9 9AB9 EC8AB2 9AB9
+9ABA 9ABA EC8AB3 9ABA
+9ABB 9ABB EC8AB6 9ABB
+9ABC 9ABC EC8AB8 9ABC
+9ABD 9ABD EC8ABA 9ABD
+9ABE 9ABE EC8ABB 9ABE
+9ABF 9ABF EC8ABC 9ABF
+9AC0 9AC0 EC8ABD 9AC0
+9AC1 9AC1 EC8ABE 9AC1
+9AC2 9AC2 EC8ABF 9AC2
+9AC3 9AC3 EC8B80 9AC3
+9AC4 9AC4 EC8B81 9AC4
+9AC5 9AC5 EC8B82 9AC5
+9AC6 9AC6 EC8B83 9AC6
+9AC7 9AC7 EC8B84 9AC7
+9AC8 9AC8 EC8B85 9AC8
+9AC9 9AC9 EC8B86 9AC9
+9ACA 9ACA EC8B87 9ACA
+9ACB 9ACB EC8B88 9ACB
+9ACC 9ACC EC8B89 9ACC
+9ACD 9ACD EC8B8A 9ACD
+9ACE 9ACE EC8B8B 9ACE
+9ACF 9ACF EC8B8C 9ACF
+9AD0 9AD0 EC8B8D 9AD0
+9AD1 9AD1 EC8B8E 9AD1
+9AD2 9AD2 EC8B8F 9AD2
+9AD3 9AD3 EC8B90 9AD3
+9AD4 9AD4 EC8B91 9AD4
+9AD5 9AD5 EC8B92 9AD5
+9AD6 9AD6 EC8B93 9AD6
+9AD7 9AD7 EC8B94 9AD7
+9AD8 9AD8 EC8B95 9AD8
+9AD9 9AD9 EC8B96 9AD9
+9ADA 9ADA EC8B97 9ADA
+9ADB 9ADB EC8B98 9ADB
+9ADC 9ADC EC8B99 9ADC
+9ADD 9ADD EC8B9A 9ADD
+9ADE 9ADE EC8B9B 9ADE
+9ADF 9ADF EC8B9E 9ADF
+9AE0 9AE0 EC8B9F 9AE0
+9AE1 9AE1 EC8BA1 9AE1
+9AE2 9AE2 EC8BA2 9AE2
+9AE3 9AE3 EC8BA5 9AE3
+9AE4 9AE4 EC8BA6 9AE4
+9AE5 9AE5 EC8BA7 9AE5
+9AE6 9AE6 EC8BA8 9AE6
+9AE7 9AE7 EC8BA9 9AE7
+9AE8 9AE8 EC8BAA 9AE8
+9AE9 9AE9 EC8BAE 9AE9
+9AEA 9AEA EC8BB0 9AEA
+9AEB 9AEB EC8BB2 9AEB
+9AEC 9AEC EC8BB3 9AEC
+9AED 9AED EC8BB4 9AED
+9AEE 9AEE EC8BB5 9AEE
+9AEF 9AEF EC8BB7 9AEF
+9AF0 9AF0 EC8BBA 9AF0
+9AF1 9AF1 EC8BBD 9AF1
+9AF2 9AF2 EC8BBE 9AF2
+9AF3 9AF3 EC8BBF 9AF3
+9AF4 9AF4 EC8C81 9AF4
+9AF5 9AF5 EC8C82 9AF5
+9AF6 9AF6 EC8C83 9AF6
+9AF7 9AF7 EC8C84 9AF7
+9AF8 9AF8 EC8C85 9AF8
+9AF9 9AF9 EC8C86 9AF9
+9AFA 9AFA EC8C87 9AFA
+9AFB 9AFB EC8C8A 9AFB
+9AFC 9AFC EC8C8B 9AFC
+9AFD 9AFD EC8C8E 9AFD
+9AFE 9AFE EC8C8F 9AFE
+9B41 9B41 EC8C90 9B41
+9B42 9B42 EC8C91 9B42
+9B43 9B43 EC8C92 9B43
+9B44 9B44 EC8C96 9B44
+9B45 9B45 EC8C97 9B45
+9B46 9B46 EC8C99 9B46
+9B47 9B47 EC8C9A 9B47
+9B48 9B48 EC8C9B 9B48
+9B49 9B49 EC8C9D 9B49
+9B4A 9B4A EC8C9E 9B4A
+9B4B 9B4B EC8C9F 9B4B
+9B4C 9B4C EC8CA0 9B4C
+9B4D 9B4D EC8CA1 9B4D
+9B4E 9B4E EC8CA2 9B4E
+9B4F 9B4F EC8CA3 9B4F
+9B50 9B50 EC8CA6 9B50
+9B51 9B51 EC8CA7 9B51
+9B52 9B52 EC8CAA 9B52
+9B53 9B53 EC8CAB 9B53
+9B54 9B54 EC8CAC 9B54
+9B55 9B55 EC8CAD 9B55
+9B56 9B56 EC8CAE 9B56
+9B57 9B57 EC8CAF 9B57
+9B58 9B58 EC8CB0 9B58
+9B59 9B59 EC8CB1 9B59
+9B5A 9B5A EC8CB2 9B5A
+9B61 9B61 EC8CB3 9B61
+9B62 9B62 EC8CB4 9B62
+9B63 9B63 EC8CB5 9B63
+9B64 9B64 EC8CB6 9B64
+9B65 9B65 EC8CB7 9B65
+9B66 9B66 EC8CB8 9B66
+9B67 9B67 EC8CB9 9B67
+9B68 9B68 EC8CBA 9B68
+9B69 9B69 EC8CBB 9B69
+9B6A 9B6A EC8CBC 9B6A
+9B6B 9B6B EC8CBD 9B6B
+9B6C 9B6C EC8CBE 9B6C
+9B6D 9B6D EC8CBF 9B6D
+9B6E 9B6E EC8D80 9B6E
+9B6F 9B6F EC8D81 9B6F
+9B70 9B70 EC8D82 9B70
+9B71 9B71 EC8D83 9B71
+9B72 9B72 EC8D84 9B72
+9B73 9B73 EC8D86 9B73
+9B74 9B74 EC8D87 9B74
+9B75 9B75 EC8D88 9B75
+9B76 9B76 EC8D89 9B76
+9B77 9B77 EC8D8A 9B77
+9B78 9B78 EC8D8B 9B78
+9B79 9B79 EC8D8C 9B79
+9B7A 9B7A EC8D8D 9B7A
+9B81 9B81 EC8D8E 9B81
+9B82 9B82 EC8D8F 9B82
+9B83 9B83 EC8D90 9B83
+9B84 9B84 EC8D91 9B84
+9B85 9B85 EC8D92 9B85
+9B86 9B86 EC8D93 9B86
+9B87 9B87 EC8D94 9B87
+9B88 9B88 EC8D95 9B88
+9B89 9B89 EC8D96 9B89
+9B8A 9B8A EC8D97 9B8A
+9B8B 9B8B EC8D98 9B8B
+9B8C 9B8C EC8D99 9B8C
+9B8D 9B8D EC8D9A 9B8D
+9B8E 9B8E EC8D9B 9B8E
+9B8F 9B8F EC8D9C 9B8F
+9B90 9B90 EC8D9D 9B90
+9B91 9B91 EC8D9E 9B91
+9B92 9B92 EC8D9F 9B92
+9B93 9B93 EC8DA0 9B93
+9B94 9B94 EC8DA1 9B94
+9B95 9B95 EC8DA2 9B95
+9B96 9B96 EC8DA3 9B96
+9B97 9B97 EC8DA4 9B97
+9B98 9B98 EC8DA5 9B98
+9B99 9B99 EC8DA6 9B99
+9B9A 9B9A EC8DA7 9B9A
+9B9B 9B9B EC8DAA 9B9B
+9B9C 9B9C EC8DAB 9B9C
+9B9D 9B9D EC8DAD 9B9D
+9B9E 9B9E EC8DAE 9B9E
+9B9F 9B9F EC8DAF 9B9F
+9BA0 9BA0 EC8DB1 9BA0
+9BA1 9BA1 EC8DB3 9BA1
+9BA2 9BA2 EC8DB4 9BA2
+9BA3 9BA3 EC8DB5 9BA3
+9BA4 9BA4 EC8DB6 9BA4
+9BA5 9BA5 EC8DB7 9BA5
+9BA6 9BA6 EC8DBA 9BA6
+9BA7 9BA7 EC8DBB 9BA7
+9BA8 9BA8 EC8DBE 9BA8
+9BA9 9BA9 EC8DBF 9BA9
+9BAA 9BAA EC8E80 9BAA
+9BAB 9BAB EC8E81 9BAB
+9BAC 9BAC EC8E82 9BAC
+9BAD 9BAD EC8E83 9BAD
+9BAE 9BAE EC8E85 9BAE
+9BAF 9BAF EC8E86 9BAF
+9BB0 9BB0 EC8E87 9BB0
+9BB1 9BB1 EC8E89 9BB1
+9BB2 9BB2 EC8E8A 9BB2
+9BB3 9BB3 EC8E8B 9BB3
+9BB4 9BB4 EC8E8D 9BB4
+9BB5 9BB5 EC8E8E 9BB5
+9BB6 9BB6 EC8E8F 9BB6
+9BB7 9BB7 EC8E90 9BB7
+9BB8 9BB8 EC8E91 9BB8
+9BB9 9BB9 EC8E92 9BB9
+9BBA 9BBA EC8E93 9BBA
+9BBB 9BBB EC8E94 9BBB
+9BBC 9BBC EC8E95 9BBC
+9BBD 9BBD EC8E96 9BBD
+9BBE 9BBE EC8E97 9BBE
+9BBF 9BBF EC8E98 9BBF
+9BC0 9BC0 EC8E99 9BC0
+9BC1 9BC1 EC8E9A 9BC1
+9BC2 9BC2 EC8E9B 9BC2
+9BC3 9BC3 EC8E9C 9BC3
+9BC4 9BC4 EC8E9D 9BC4
+9BC5 9BC5 EC8E9E 9BC5
+9BC6 9BC6 EC8E9F 9BC6
+9BC7 9BC7 EC8EA0 9BC7
+9BC8 9BC8 EC8EA1 9BC8
+9BC9 9BC9 EC8EA2 9BC9
+9BCA 9BCA EC8EA3 9BCA
+9BCB 9BCB EC8EA4 9BCB
+9BCC 9BCC EC8EA5 9BCC
+9BCD 9BCD EC8EA6 9BCD
+9BCE 9BCE EC8EA7 9BCE
+9BCF 9BCF EC8EA8 9BCF
+9BD0 9BD0 EC8EA9 9BD0
+9BD1 9BD1 EC8EAA 9BD1
+9BD2 9BD2 EC8EAB 9BD2
+9BD3 9BD3 EC8EAC 9BD3
+9BD4 9BD4 EC8EAD 9BD4
+9BD5 9BD5 EC8EAE 9BD5
+9BD6 9BD6 EC8EAF 9BD6
+9BD7 9BD7 EC8EB0 9BD7
+9BD8 9BD8 EC8EB1 9BD8
+9BD9 9BD9 EC8EB2 9BD9
+9BDA 9BDA EC8EB3 9BDA
+9BDB 9BDB EC8EB4 9BDB
+9BDC 9BDC EC8EB5 9BDC
+9BDD 9BDD EC8EB6 9BDD
+9BDE 9BDE EC8EB7 9BDE
+9BDF 9BDF EC8EB8 9BDF
+9BE0 9BE0 EC8EB9 9BE0
+9BE1 9BE1 EC8EBA 9BE1
+9BE2 9BE2 EC8EBB 9BE2
+9BE3 9BE3 EC8EBC 9BE3
+9BE4 9BE4 EC8EBD 9BE4
+9BE5 9BE5 EC8EBE 9BE5
+9BE6 9BE6 EC8EBF 9BE6
+9BE7 9BE7 EC8F81 9BE7
+9BE8 9BE8 EC8F82 9BE8
+9BE9 9BE9 EC8F83 9BE9
+9BEA 9BEA EC8F84 9BEA
+9BEB 9BEB EC8F85 9BEB
+9BEC 9BEC EC8F86 9BEC
+9BED 9BED EC8F87 9BED
+9BEE 9BEE EC8F88 9BEE
+9BEF 9BEF EC8F89 9BEF
+9BF0 9BF0 EC8F8A 9BF0
+9BF1 9BF1 EC8F8B 9BF1
+9BF2 9BF2 EC8F8C 9BF2
+9BF3 9BF3 EC8F8D 9BF3
+9BF4 9BF4 EC8F8E 9BF4
+9BF5 9BF5 EC8F8F 9BF5
+9BF6 9BF6 EC8F90 9BF6
+9BF7 9BF7 EC8F91 9BF7
+9BF8 9BF8 EC8F92 9BF8
+9BF9 9BF9 EC8F93 9BF9
+9BFA 9BFA EC8F94 9BFA
+9BFB 9BFB EC8F95 9BFB
+9BFC 9BFC EC8F96 9BFC
+9BFD 9BFD EC8F97 9BFD
+9BFE 9BFE EC8F9A 9BFE
+9C41 9C41 EC8F9B 9C41
+9C42 9C42 EC8F9D 9C42
+9C43 9C43 EC8F9E 9C43
+9C44 9C44 EC8FA1 9C44
+9C45 9C45 EC8FA3 9C45
+9C46 9C46 EC8FA4 9C46
+9C47 9C47 EC8FA5 9C47
+9C48 9C48 EC8FA6 9C48
+9C49 9C49 EC8FA7 9C49
+9C4A 9C4A EC8FAA 9C4A
+9C4B 9C4B EC8FAB 9C4B
+9C4C 9C4C EC8FAC 9C4C
+9C4D 9C4D EC8FAE 9C4D
+9C4E 9C4E EC8FAF 9C4E
+9C4F 9C4F EC8FB0 9C4F
+9C50 9C50 EC8FB1 9C50
+9C51 9C51 EC8FB2 9C51
+9C52 9C52 EC8FB3 9C52
+9C53 9C53 EC8FB6 9C53
+9C54 9C54 EC8FB7 9C54
+9C55 9C55 EC8FB9 9C55
+9C56 9C56 EC8FBA 9C56
+9C57 9C57 EC8FBB 9C57
+9C58 9C58 EC8FBC 9C58
+9C59 9C59 EC8FBD 9C59
+9C5A 9C5A EC8FBE 9C5A
+9C61 9C61 EC8FBF 9C61
+9C62 9C62 EC9080 9C62
+9C63 9C63 EC9081 9C63
+9C64 9C64 EC9082 9C64
+9C65 9C65 EC9083 9C65
+9C66 9C66 EC9084 9C66
+9C67 9C67 EC9085 9C67
+9C68 9C68 EC9086 9C68
+9C69 9C69 EC9087 9C69
+9C6A 9C6A EC9089 9C6A
+9C6B 9C6B EC908A 9C6B
+9C6C 9C6C EC908B 9C6C
+9C6D 9C6D EC908C 9C6D
+9C6E 9C6E EC908D 9C6E
+9C6F 9C6F EC908E 9C6F
+9C70 9C70 EC908F 9C70
+9C71 9C71 EC9091 9C71
+9C72 9C72 EC9092 9C72
+9C73 9C73 EC9093 9C73
+9C74 9C74 EC9094 9C74
+9C75 9C75 EC9095 9C75
+9C76 9C76 EC9096 9C76
+9C77 9C77 EC9097 9C77
+9C78 9C78 EC9098 9C78
+9C79 9C79 EC9099 9C79
+9C7A 9C7A EC909A 9C7A
+9C81 9C81 EC909B 9C81
+9C82 9C82 EC909C 9C82
+9C83 9C83 EC909D 9C83
+9C84 9C84 EC909E 9C84
+9C85 9C85 EC909F 9C85
+9C86 9C86 EC90A0 9C86
+9C87 9C87 EC90A1 9C87
+9C88 9C88 EC90A2 9C88
+9C89 9C89 EC90A3 9C89
+9C8A 9C8A EC90A5 9C8A
+9C8B 9C8B EC90A6 9C8B
+9C8C 9C8C EC90A7 9C8C
+9C8D 9C8D EC90A8 9C8D
+9C8E 9C8E EC90A9 9C8E
+9C8F 9C8F EC90AA 9C8F
+9C90 9C90 EC90AB 9C90
+9C91 9C91 EC90AD 9C91
+9C92 9C92 EC90AE 9C92
+9C93 9C93 EC90AF 9C93
+9C94 9C94 EC90B1 9C94
+9C95 9C95 EC90B2 9C95
+9C96 9C96 EC90B3 9C96
+9C97 9C97 EC90B5 9C97
+9C98 9C98 EC90B6 9C98
+9C99 9C99 EC90B7 9C99
+9C9A 9C9A EC90B8 9C9A
+9C9B 9C9B EC90B9 9C9B
+9C9C 9C9C EC90BA 9C9C
+9C9D 9C9D EC90BB 9C9D
+9C9E 9C9E EC90BE 9C9E
+9C9F 9C9F EC90BF 9C9F
+9CA0 9CA0 EC9180 9CA0
+9CA1 9CA1 EC9181 9CA1
+9CA2 9CA2 EC9182 9CA2
+9CA3 9CA3 EC9183 9CA3
+9CA4 9CA4 EC9184 9CA4
+9CA5 9CA5 EC9185 9CA5
+9CA6 9CA6 EC9186 9CA6
+9CA7 9CA7 EC9187 9CA7
+9CA8 9CA8 EC9189 9CA8
+9CA9 9CA9 EC918A 9CA9
+9CAA 9CAA EC918B 9CAA
+9CAB 9CAB EC918C 9CAB
+9CAC 9CAC EC918D 9CAC
+9CAD 9CAD EC918E 9CAD
+9CAE 9CAE EC918F 9CAE
+9CAF 9CAF EC9190 9CAF
+9CB0 9CB0 EC9191 9CB0
+9CB1 9CB1 EC9192 9CB1
+9CB2 9CB2 EC9193 9CB2
+9CB3 9CB3 EC9194 9CB3
+9CB4 9CB4 EC9195 9CB4
+9CB5 9CB5 EC9196 9CB5
+9CB6 9CB6 EC9197 9CB6
+9CB7 9CB7 EC9198 9CB7
+9CB8 9CB8 EC9199 9CB8
+9CB9 9CB9 EC919A 9CB9
+9CBA 9CBA EC919B 9CBA
+9CBB 9CBB EC919C 9CBB
+9CBC 9CBC EC919D 9CBC
+9CBD 9CBD EC919E 9CBD
+9CBE 9CBE EC919F 9CBE
+9CBF 9CBF EC91A0 9CBF
+9CC0 9CC0 EC91A1 9CC0
+9CC1 9CC1 EC91A2 9CC1
+9CC2 9CC2 EC91A3 9CC2
+9CC3 9CC3 EC91A6 9CC3
+9CC4 9CC4 EC91A7 9CC4
+9CC5 9CC5 EC91A9 9CC5
+9CC6 9CC6 EC91AA 9CC6
+9CC7 9CC7 EC91AB 9CC7
+9CC8 9CC8 EC91AD 9CC8
+9CC9 9CC9 EC91AE 9CC9
+9CCA 9CCA EC91AF 9CCA
+9CCB 9CCB EC91B0 9CCB
+9CCC 9CCC EC91B1 9CCC
+9CCD 9CCD EC91B2 9CCD
+9CCE 9CCE EC91B3 9CCE
+9CCF 9CCF EC91B6 9CCF
+9CD0 9CD0 EC91B7 9CD0
+9CD1 9CD1 EC91B8 9CD1
+9CD2 9CD2 EC91BA 9CD2
+9CD3 9CD3 EC91BB 9CD3
+9CD4 9CD4 EC91BC 9CD4
+9CD5 9CD5 EC91BD 9CD5
+9CD6 9CD6 EC91BE 9CD6
+9CD7 9CD7 EC91BF 9CD7
+9CD8 9CD8 EC9281 9CD8
+9CD9 9CD9 EC9282 9CD9
+9CDA 9CDA EC9283 9CDA
+9CDB 9CDB EC9284 9CDB
+9CDC 9CDC EC9285 9CDC
+9CDD 9CDD EC9286 9CDD
+9CDE 9CDE EC9287 9CDE
+9CDF 9CDF EC9288 9CDF
+9CE0 9CE0 EC9289 9CE0
+9CE1 9CE1 EC928A 9CE1
+9CE2 9CE2 EC928B 9CE2
+9CE3 9CE3 EC928C 9CE3
+9CE4 9CE4 EC928D 9CE4
+9CE5 9CE5 EC928E 9CE5
+9CE6 9CE6 EC928F 9CE6
+9CE7 9CE7 EC9290 9CE7
+9CE8 9CE8 EC9291 9CE8
+9CE9 9CE9 EC9292 9CE9
+9CEA 9CEA EC9293 9CEA
+9CEB 9CEB EC9295 9CEB
+9CEC 9CEC EC9296 9CEC
+9CED 9CED EC9297 9CED
+9CEE 9CEE EC9298 9CEE
+9CEF 9CEF EC9299 9CEF
+9CF0 9CF0 EC929A 9CF0
+9CF1 9CF1 EC929B 9CF1
+9CF2 9CF2 EC929D 9CF2
+9CF3 9CF3 EC929E 9CF3
+9CF4 9CF4 EC929F 9CF4
+9CF5 9CF5 EC92A0 9CF5
+9CF6 9CF6 EC92A1 9CF6
+9CF7 9CF7 EC92A2 9CF7
+9CF8 9CF8 EC92A3 9CF8
+9CF9 9CF9 EC92A4 9CF9
+9CFA 9CFA EC92A5 9CFA
+9CFB 9CFB EC92A6 9CFB
+9CFC 9CFC EC92A7 9CFC
+9CFD 9CFD EC92A8 9CFD
+9CFE 9CFE EC92A9 9CFE
+9D41 9D41 EC92AA 9D41
+9D42 9D42 EC92AB 9D42
+9D43 9D43 EC92AC 9D43
+9D44 9D44 EC92AD 9D44
+9D45 9D45 EC92AE 9D45
+9D46 9D46 EC92AF 9D46
+9D47 9D47 EC92B0 9D47
+9D48 9D48 EC92B1 9D48
+9D49 9D49 EC92B2 9D49
+9D4A 9D4A EC92B3 9D4A
+9D4B 9D4B EC92B4 9D4B
+9D4C 9D4C EC92B5 9D4C
+9D4D 9D4D EC92B6 9D4D
+9D4E 9D4E EC92B7 9D4E
+9D4F 9D4F EC92B9 9D4F
+9D50 9D50 EC92BA 9D50
+9D51 9D51 EC92BB 9D51
+9D52 9D52 EC92BD 9D52
+9D53 9D53 EC92BE 9D53
+9D54 9D54 EC92BF 9D54
+9D55 9D55 EC9380 9D55
+9D56 9D56 EC9381 9D56
+9D57 9D57 EC9382 9D57
+9D58 9D58 EC9383 9D58
+9D59 9D59 EC9384 9D59
+9D5A 9D5A EC9385 9D5A
+9D61 9D61 EC9386 9D61
+9D62 9D62 EC9387 9D62
+9D63 9D63 EC9388 9D63
+9D64 9D64 EC9389 9D64
+9D65 9D65 EC938A 9D65
+9D66 9D66 EC938B 9D66
+9D67 9D67 EC938C 9D67
+9D68 9D68 EC938D 9D68
+9D69 9D69 EC938E 9D69
+9D6A 9D6A EC938F 9D6A
+9D6B 9D6B EC9390 9D6B
+9D6C 9D6C EC9391 9D6C
+9D6D 9D6D EC9392 9D6D
+9D6E 9D6E EC9393 9D6E
+9D6F 9D6F EC9394 9D6F
+9D70 9D70 EC9395 9D70
+9D71 9D71 EC9396 9D71
+9D72 9D72 EC9397 9D72
+9D73 9D73 EC9398 9D73
+9D74 9D74 EC9399 9D74
+9D75 9D75 EC939A 9D75
+9D76 9D76 EC939B 9D76
+9D77 9D77 EC939C 9D77
+9D78 9D78 EC939D 9D78
+9D79 9D79 EC939E 9D79
+9D7A 9D7A EC939F 9D7A
+9D81 9D81 EC93A0 9D81
+9D82 9D82 EC93A1 9D82
+9D83 9D83 EC93A2 9D83
+9D84 9D84 EC93A3 9D84
+9D85 9D85 EC93A4 9D85
+9D86 9D86 EC93A5 9D86
+9D87 9D87 EC93A6 9D87
+9D88 9D88 EC93A7 9D88
+9D89 9D89 EC93A8 9D89
+9D8A 9D8A EC93AA 9D8A
+9D8B 9D8B EC93AB 9D8B
+9D8C 9D8C EC93AC 9D8C
+9D8D 9D8D EC93AD 9D8D
+9D8E 9D8E EC93AE 9D8E
+9D8F 9D8F EC93AF 9D8F
+9D90 9D90 EC93B2 9D90
+9D91 9D91 EC93B3 9D91
+9D92 9D92 EC93B5 9D92
+9D93 9D93 EC93B6 9D93
+9D94 9D94 EC93B7 9D94
+9D95 9D95 EC93B9 9D95
+9D96 9D96 EC93BB 9D96
+9D97 9D97 EC93BC 9D97
+9D98 9D98 EC93BD 9D98
+9D99 9D99 EC93BE 9D99
+9D9A 9D9A EC9482 9D9A
+9D9B 9D9B EC9483 9D9B
+9D9C 9D9C EC9484 9D9C
+9D9D 9D9D EC9485 9D9D
+9D9E 9D9E EC9486 9D9E
+9D9F 9D9F EC9487 9D9F
+9DA0 9DA0 EC9488 9DA0
+9DA1 9DA1 EC9489 9DA1
+9DA2 9DA2 EC948A 9DA2
+9DA3 9DA3 EC948B 9DA3
+9DA4 9DA4 EC948D 9DA4
+9DA5 9DA5 EC948E 9DA5
+9DA6 9DA6 EC948F 9DA6
+9DA7 9DA7 EC9491 9DA7
+9DA8 9DA8 EC9492 9DA8
+9DA9 9DA9 EC9493 9DA9
+9DAA 9DAA EC9495 9DAA
+9DAB 9DAB EC9496 9DAB
+9DAC 9DAC EC9497 9DAC
+9DAD 9DAD EC9498 9DAD
+9DAE 9DAE EC9499 9DAE
+9DAF 9DAF EC949A 9DAF
+9DB0 9DB0 EC949B 9DB0
+9DB1 9DB1 EC949D 9DB1
+9DB2 9DB2 EC949E 9DB2
+9DB3 9DB3 EC949F 9DB3
+9DB4 9DB4 EC94A0 9DB4
+9DB5 9DB5 EC94A1 9DB5
+9DB6 9DB6 EC94A2 9DB6
+9DB7 9DB7 EC94A3 9DB7
+9DB8 9DB8 EC94A4 9DB8
+9DB9 9DB9 EC94A5 9DB9
+9DBA 9DBA EC94A6 9DBA
+9DBB 9DBB EC94A7 9DBB
+9DBC 9DBC EC94AA 9DBC
+9DBD 9DBD EC94AB 9DBD
+9DBE 9DBE EC94AD 9DBE
+9DBF 9DBF EC94AE 9DBF
+9DC0 9DC0 EC94AF 9DC0
+9DC1 9DC1 EC94B1 9DC1
+9DC2 9DC2 EC94B2 9DC2
+9DC3 9DC3 EC94B3 9DC3
+9DC4 9DC4 EC94B4 9DC4
+9DC5 9DC5 EC94B5 9DC5
+9DC6 9DC6 EC94B6 9DC6
+9DC7 9DC7 EC94B7 9DC7
+9DC8 9DC8 EC94BA 9DC8
+9DC9 9DC9 EC94BC 9DC9
+9DCA 9DCA EC94BE 9DCA
+9DCB 9DCB EC94BF 9DCB
+9DCC 9DCC EC9580 9DCC
+9DCD 9DCD EC9581 9DCD
+9DCE 9DCE EC9582 9DCE
+9DCF 9DCF EC9583 9DCF
+9DD0 9DD0 EC9586 9DD0
+9DD1 9DD1 EC9587 9DD1
+9DD2 9DD2 EC958B 9DD2
+9DD3 9DD3 EC958F 9DD3
+9DD4 9DD4 EC9590 9DD4
+9DD5 9DD5 EC9591 9DD5
+9DD6 9DD6 EC9592 9DD6
+9DD7 9DD7 EC9596 9DD7
+9DD8 9DD8 EC959A 9DD8
+9DD9 9DD9 EC959B 9DD9
+9DDA 9DDA EC959C 9DDA
+9DDB 9DDB EC959F 9DDB
+9DDC 9DDC EC95A2 9DDC
+9DDD 9DDD EC95A3 9DDD
+9DDE 9DDE EC95A5 9DDE
+9DDF 9DDF EC95A6 9DDF
+9DE0 9DE0 EC95A7 9DE0
+9DE1 9DE1 EC95A9 9DE1
+9DE2 9DE2 EC95AA 9DE2
+9DE3 9DE3 EC95AB 9DE3
+9DE4 9DE4 EC95AC 9DE4
+9DE5 9DE5 EC95AD 9DE5
+9DE6 9DE6 EC95AE 9DE6
+9DE7 9DE7 EC95AF 9DE7
+9DE8 9DE8 EC95B2 9DE8
+9DE9 9DE9 EC95B6 9DE9
+9DEA 9DEA EC95B7 9DEA
+9DEB 9DEB EC95B8 9DEB
+9DEC 9DEC EC95B9 9DEC
+9DED 9DED EC95BA 9DED
+9DEE 9DEE EC95BB 9DEE
+9DEF 9DEF EC95BE 9DEF
+9DF0 9DF0 EC95BF 9DF0
+9DF1 9DF1 EC9681 9DF1
+9DF2 9DF2 EC9682 9DF2
+9DF3 9DF3 EC9683 9DF3
+9DF4 9DF4 EC9685 9DF4
+9DF5 9DF5 EC9686 9DF5
+9DF6 9DF6 EC9688 9DF6
+9DF7 9DF7 EC9689 9DF7
+9DF8 9DF8 EC968A 9DF8
+9DF9 9DF9 EC968B 9DF9
+9DFA 9DFA EC968E 9DFA
+9DFB 9DFB EC9690 9DFB
+9DFC 9DFC EC9692 9DFC
+9DFD 9DFD EC9693 9DFD
+9DFE 9DFE EC9694 9DFE
+9E41 9E41 EC9696 9E41
+9E42 9E42 EC9699 9E42
+9E43 9E43 EC969A 9E43
+9E44 9E44 EC969B 9E44
+9E45 9E45 EC969D 9E45
+9E46 9E46 EC969E 9E46
+9E47 9E47 EC969F 9E47
+9E48 9E48 EC96A1 9E48
+9E49 9E49 EC96A2 9E49
+9E4A 9E4A EC96A3 9E4A
+9E4B 9E4B EC96A4 9E4B
+9E4C 9E4C EC96A5 9E4C
+9E4D 9E4D EC96A6 9E4D
+9E4E 9E4E EC96A7 9E4E
+9E4F 9E4F EC96A8 9E4F
+9E50 9E50 EC96AA 9E50
+9E51 9E51 EC96AB 9E51
+9E52 9E52 EC96AC 9E52
+9E53 9E53 EC96AD 9E53
+9E54 9E54 EC96AE 9E54
+9E55 9E55 EC96AF 9E55
+9E56 9E56 EC96B0 9E56
+9E57 9E57 EC96B1 9E57
+9E58 9E58 EC96B2 9E58
+9E59 9E59 EC96B3 9E59
+9E5A 9E5A EC96B6 9E5A
+9E61 9E61 EC96B7 9E61
+9E62 9E62 EC96BA 9E62
+9E63 9E63 EC96BF 9E63
+9E64 9E64 EC9780 9E64
+9E65 9E65 EC9781 9E65
+9E66 9E66 EC9782 9E66
+9E67 9E67 EC9783 9E67
+9E68 9E68 EC978B 9E68
+9E69 9E69 EC978D 9E69
+9E6A 9E6A EC978F 9E6A
+9E6B 9E6B EC9792 9E6B
+9E6C 9E6C EC9793 9E6C
+9E6D 9E6D EC9795 9E6D
+9E6E 9E6E EC9796 9E6E
+9E6F 9E6F EC9797 9E6F
+9E70 9E70 EC9799 9E70
+9E71 9E71 EC979A 9E71
+9E72 9E72 EC979B 9E72
+9E73 9E73 EC979C 9E73
+9E74 9E74 EC979D 9E74
+9E75 9E75 EC979E 9E75
+9E76 9E76 EC979F 9E76
+9E77 9E77 EC97A2 9E77
+9E78 9E78 EC97A4 9E78
+9E79 9E79 EC97A6 9E79
+9E7A 9E7A EC97A7 9E7A
+9E81 9E81 EC97A8 9E81
+9E82 9E82 EC97A9 9E82
+9E83 9E83 EC97AA 9E83
+9E84 9E84 EC97AB 9E84
+9E85 9E85 EC97AF 9E85
+9E86 9E86 EC97B1 9E86
+9E87 9E87 EC97B2 9E87
+9E88 9E88 EC97B3 9E88
+9E89 9E89 EC97B5 9E89
+9E8A 9E8A EC97B8 9E8A
+9E8B 9E8B EC97B9 9E8B
+9E8C 9E8C EC97BA 9E8C
+9E8D 9E8D EC97BB 9E8D
+9E8E 9E8E EC9882 9E8E
+9E8F 9E8F EC9883 9E8F
+9E90 9E90 EC9884 9E90
+9E91 9E91 EC9889 9E91
+9E92 9E92 EC988A 9E92
+9E93 9E93 EC988B 9E93
+9E94 9E94 EC988D 9E94
+9E95 9E95 EC988E 9E95
+9E96 9E96 EC988F 9E96
+9E97 9E97 EC9891 9E97
+9E98 9E98 EC9892 9E98
+9E99 9E99 EC9893 9E99
+9E9A 9E9A EC9894 9E9A
+9E9B 9E9B EC9895 9E9B
+9E9C 9E9C EC9896 9E9C
+9E9D 9E9D EC9897 9E9D
+9E9E 9E9E EC989A 9E9E
+9E9F 9E9F EC989D 9E9F
+9EA0 9EA0 EC989E 9EA0
+9EA1 9EA1 EC989F 9EA1
+9EA2 9EA2 EC98A0 9EA2
+9EA3 9EA3 EC98A1 9EA3
+9EA4 9EA4 EC98A2 9EA4
+9EA5 9EA5 EC98A3 9EA5
+9EA6 9EA6 EC98A6 9EA6
+9EA7 9EA7 EC98A7 9EA7
+9EA8 9EA8 EC98A9 9EA8
+9EA9 9EA9 EC98AA 9EA9
+9EAA 9EAA EC98AB 9EAA
+9EAB 9EAB EC98AF 9EAB
+9EAC 9EAC EC98B1 9EAC
+9EAD 9EAD EC98B2 9EAD
+9EAE 9EAE EC98B6 9EAE
+9EAF 9EAF EC98B8 9EAF
+9EB0 9EB0 EC98BA 9EB0
+9EB1 9EB1 EC98BC 9EB1
+9EB2 9EB2 EC98BD 9EB2
+9EB3 9EB3 EC98BE 9EB3
+9EB4 9EB4 EC98BF 9EB4
+9EB5 9EB5 EC9982 9EB5
+9EB6 9EB6 EC9983 9EB6
+9EB7 9EB7 EC9985 9EB7
+9EB8 9EB8 EC9986 9EB8
+9EB9 9EB9 EC9987 9EB9
+9EBA 9EBA EC9989 9EBA
+9EBB 9EBB EC998A 9EBB
+9EBC 9EBC EC998B 9EBC
+9EBD 9EBD EC998C 9EBD
+9EBE 9EBE EC998D 9EBE
+9EBF 9EBF EC998E 9EBF
+9EC0 9EC0 EC998F 9EC0
+9EC1 9EC1 EC9992 9EC1
+9EC2 9EC2 EC9996 9EC2
+9EC3 9EC3 EC9997 9EC3
+9EC4 9EC4 EC9998 9EC4
+9EC5 9EC5 EC9999 9EC5
+9EC6 9EC6 EC999A 9EC6
+9EC7 9EC7 EC999B 9EC7
+9EC8 9EC8 EC999E 9EC8
+9EC9 9EC9 EC999F 9EC9
+9ECA 9ECA EC99A1 9ECA
+9ECB 9ECB EC99A2 9ECB
+9ECC 9ECC EC99A3 9ECC
+9ECD 9ECD EC99A4 9ECD
+9ECE 9ECE EC99A5 9ECE
+9ECF 9ECF EC99A6 9ECF
+9ED0 9ED0 EC99A7 9ED0
+9ED1 9ED1 EC99A8 9ED1
+9ED2 9ED2 EC99A9 9ED2
+9ED3 9ED3 EC99AA 9ED3
+9ED4 9ED4 EC99AB 9ED4
+9ED5 9ED5 EC99AD 9ED5
+9ED6 9ED6 EC99AE 9ED6
+9ED7 9ED7 EC99B0 9ED7
+9ED8 9ED8 EC99B2 9ED8
+9ED9 9ED9 EC99B3 9ED9
+9EDA 9EDA EC99B4 9EDA
+9EDB 9EDB EC99B5 9EDB
+9EDC 9EDC EC99B6 9EDC
+9EDD 9EDD EC99B7 9EDD
+9EDE 9EDE EC99BA 9EDE
+9EDF 9EDF EC99BB 9EDF
+9EE0 9EE0 EC99BD 9EE0
+9EE1 9EE1 EC99BE 9EE1
+9EE2 9EE2 EC99BF 9EE2
+9EE3 9EE3 EC9A81 9EE3
+9EE4 9EE4 EC9A82 9EE4
+9EE5 9EE5 EC9A83 9EE5
+9EE6 9EE6 EC9A84 9EE6
+9EE7 9EE7 EC9A85 9EE7
+9EE8 9EE8 EC9A86 9EE8
+9EE9 9EE9 EC9A87 9EE9
+9EEA 9EEA EC9A8A 9EEA
+9EEB 9EEB EC9A8C 9EEB
+9EEC 9EEC EC9A8E 9EEC
+9EED 9EED EC9A8F 9EED
+9EEE 9EEE EC9A90 9EEE
+9EEF 9EEF EC9A91 9EEF
+9EF0 9EF0 EC9A92 9EF0
+9EF1 9EF1 EC9A93 9EF1
+9EF2 9EF2 EC9A96 9EF2
+9EF3 9EF3 EC9A97 9EF3
+9EF4 9EF4 EC9A99 9EF4
+9EF5 9EF5 EC9A9A 9EF5
+9EF6 9EF6 EC9A9B 9EF6
+9EF7 9EF7 EC9A9D 9EF7
+9EF8 9EF8 EC9A9E 9EF8
+9EF9 9EF9 EC9A9F 9EF9
+9EFA 9EFA EC9AA0 9EFA
+9EFB 9EFB EC9AA1 9EFB
+9EFC 9EFC EC9AA2 9EFC
+9EFD 9EFD EC9AA3 9EFD
+9EFE 9EFE EC9AA6 9EFE
+9F41 9F41 EC9AA8 9F41
+9F42 9F42 EC9AAA 9F42
+9F43 9F43 EC9AAB 9F43
+9F44 9F44 EC9AAC 9F44
+9F45 9F45 EC9AAD 9F45
+9F46 9F46 EC9AAE 9F46
+9F47 9F47 EC9AAF 9F47
+9F48 9F48 EC9AB2 9F48
+9F49 9F49 EC9AB3 9F49
+9F4A 9F4A EC9AB5 9F4A
+9F4B 9F4B EC9AB6 9F4B
+9F4C 9F4C EC9AB7 9F4C
+9F4D 9F4D EC9ABB 9F4D
+9F4E 9F4E EC9ABC 9F4E
+9F4F 9F4F EC9ABD 9F4F
+9F50 9F50 EC9ABE 9F50
+9F51 9F51 EC9ABF 9F51
+9F52 9F52 EC9B82 9F52
+9F53 9F53 EC9B84 9F53
+9F54 9F54 EC9B86 9F54
+9F55 9F55 EC9B87 9F55
+9F56 9F56 EC9B88 9F56
+9F57 9F57 EC9B89 9F57
+9F58 9F58 EC9B8A 9F58
+9F59 9F59 EC9B8B 9F59
+9F5A 9F5A EC9B8E 9F5A
+9F61 9F61 EC9B8F 9F61
+9F62 9F62 EC9B91 9F62
+9F63 9F63 EC9B92 9F63
+9F64 9F64 EC9B93 9F64
+9F65 9F65 EC9B95 9F65
+9F66 9F66 EC9B96 9F66
+9F67 9F67 EC9B97 9F67
+9F68 9F68 EC9B98 9F68
+9F69 9F69 EC9B99 9F69
+9F6A 9F6A EC9B9A 9F6A
+9F6B 9F6B EC9B9B 9F6B
+9F6C 9F6C EC9B9E 9F6C
+9F6D 9F6D EC9B9F 9F6D
+9F6E 9F6E EC9BA2 9F6E
+9F6F 9F6F EC9BA3 9F6F
+9F70 9F70 EC9BA4 9F70
+9F71 9F71 EC9BA5 9F71
+9F72 9F72 EC9BA6 9F72
+9F73 9F73 EC9BA7 9F73
+9F74 9F74 EC9BAA 9F74
+9F75 9F75 EC9BAB 9F75
+9F76 9F76 EC9BAD 9F76
+9F77 9F77 EC9BAE 9F77
+9F78 9F78 EC9BAF 9F78
+9F79 9F79 EC9BB1 9F79
+9F7A 9F7A EC9BB2 9F7A
+9F81 9F81 EC9BB3 9F81
+9F82 9F82 EC9BB4 9F82
+9F83 9F83 EC9BB5 9F83
+9F84 9F84 EC9BB6 9F84
+9F85 9F85 EC9BB7 9F85
+9F86 9F86 EC9BBA 9F86
+9F87 9F87 EC9BBB 9F87
+9F88 9F88 EC9BBC 9F88
+9F89 9F89 EC9BBE 9F89
+9F8A 9F8A EC9BBF 9F8A
+9F8B 9F8B EC9C80 9F8B
+9F8C 9F8C EC9C81 9F8C
+9F8D 9F8D EC9C82 9F8D
+9F8E 9F8E EC9C83 9F8E
+9F8F 9F8F EC9C86 9F8F
+9F90 9F90 EC9C87 9F90
+9F91 9F91 EC9C89 9F91
+9F92 9F92 EC9C8A 9F92
+9F93 9F93 EC9C8B 9F93
+9F94 9F94 EC9C8D 9F94
+9F95 9F95 EC9C8E 9F95
+9F96 9F96 EC9C8F 9F96
+9F97 9F97 EC9C90 9F97
+9F98 9F98 EC9C91 9F98
+9F99 9F99 EC9C92 9F99
+9F9A 9F9A EC9C93 9F9A
+9F9B 9F9B EC9C96 9F9B
+9F9C 9F9C EC9C98 9F9C
+9F9D 9F9D EC9C9A 9F9D
+9F9E 9F9E EC9C9B 9F9E
+9F9F 9F9F EC9C9C 9F9F
+9FA0 9FA0 EC9C9D 9FA0
+9FA1 9FA1 EC9C9E 9FA1
+9FA2 9FA2 EC9C9F 9FA2
+9FA3 9FA3 EC9CA2 9FA3
+9FA4 9FA4 EC9CA3 9FA4
+9FA5 9FA5 EC9CA5 9FA5
+9FA6 9FA6 EC9CA6 9FA6
+9FA7 9FA7 EC9CA7 9FA7
+9FA8 9FA8 EC9CA9 9FA8
+9FA9 9FA9 EC9CAA 9FA9
+9FAA 9FAA EC9CAB 9FAA
+9FAB 9FAB EC9CAC 9FAB
+9FAC 9FAC EC9CAD 9FAC
+9FAD 9FAD EC9CAE 9FAD
+9FAE 9FAE EC9CAF 9FAE
+9FAF 9FAF EC9CB2 9FAF
+9FB0 9FB0 EC9CB4 9FB0
+9FB1 9FB1 EC9CB6 9FB1
+9FB2 9FB2 EC9CB8 9FB2
+9FB3 9FB3 EC9CB9 9FB3
+9FB4 9FB4 EC9CBA 9FB4
+9FB5 9FB5 EC9CBB 9FB5
+9FB6 9FB6 EC9CBE 9FB6
+9FB7 9FB7 EC9CBF 9FB7
+9FB8 9FB8 EC9D81 9FB8
+9FB9 9FB9 EC9D82 9FB9
+9FBA 9FBA EC9D83 9FBA
+9FBB 9FBB EC9D85 9FBB
+9FBC 9FBC EC9D86 9FBC
+9FBD 9FBD EC9D87 9FBD
+9FBE 9FBE EC9D88 9FBE
+9FBF 9FBF EC9D89 9FBF
+9FC0 9FC0 EC9D8B 9FC0
+9FC1 9FC1 EC9D8E 9FC1
+9FC2 9FC2 EC9D90 9FC2
+9FC3 9FC3 EC9D99 9FC3
+9FC4 9FC4 EC9D9A 9FC4
+9FC5 9FC5 EC9D9B 9FC5
+9FC6 9FC6 EC9D9D 9FC6
+9FC7 9FC7 EC9D9E 9FC7
+9FC8 9FC8 EC9D9F 9FC8
+9FC9 9FC9 EC9DA1 9FC9
+9FCA 9FCA EC9DA2 9FCA
+9FCB 9FCB EC9DA3 9FCB
+9FCC 9FCC EC9DA4 9FCC
+9FCD 9FCD EC9DA5 9FCD
+9FCE 9FCE EC9DA6 9FCE
+9FCF 9FCF EC9DA7 9FCF
+9FD0 9FD0 EC9DA9 9FD0
+9FD1 9FD1 EC9DAA 9FD1
+9FD2 9FD2 EC9DAC 9FD2
+9FD3 9FD3 EC9DAD 9FD3
+9FD4 9FD4 EC9DAE 9FD4
+9FD5 9FD5 EC9DAF 9FD5
+9FD6 9FD6 EC9DB0 9FD6
+9FD7 9FD7 EC9DB1 9FD7
+9FD8 9FD8 EC9DB2 9FD8
+9FD9 9FD9 EC9DB3 9FD9
+9FDA 9FDA EC9DB6 9FDA
+9FDB 9FDB EC9DB7 9FDB
+9FDC 9FDC EC9DB9 9FDC
+9FDD 9FDD EC9DBA 9FDD
+9FDE 9FDE EC9DBB 9FDE
+9FDF 9FDF EC9DBF 9FDF
+9FE0 9FE0 EC9E80 9FE0
+9FE1 9FE1 EC9E81 9FE1
+9FE2 9FE2 EC9E82 9FE2
+9FE3 9FE3 EC9E86 9FE3
+9FE4 9FE4 EC9E8B 9FE4
+9FE5 9FE5 EC9E8C 9FE5
+9FE6 9FE6 EC9E8D 9FE6
+9FE7 9FE7 EC9E8F 9FE7
+9FE8 9FE8 EC9E92 9FE8
+9FE9 9FE9 EC9E93 9FE9
+9FEA 9FEA EC9E95 9FEA
+9FEB 9FEB EC9E99 9FEB
+9FEC 9FEC EC9E9B 9FEC
+9FED 9FED EC9E9C 9FED
+9FEE 9FEE EC9E9D 9FEE
+9FEF 9FEF EC9E9E 9FEF
+9FF0 9FF0 EC9E9F 9FF0
+9FF1 9FF1 EC9EA2 9FF1
+9FF2 9FF2 EC9EA7 9FF2
+9FF3 9FF3 EC9EA8 9FF3
+9FF4 9FF4 EC9EA9 9FF4
+9FF5 9FF5 EC9EAA 9FF5
+9FF6 9FF6 EC9EAB 9FF6
+9FF7 9FF7 EC9EAE 9FF7
+9FF8 9FF8 EC9EAF 9FF8
+9FF9 9FF9 EC9EB1 9FF9
+9FFA 9FFA EC9EB2 9FFA
+9FFB 9FFB EC9EB3 9FFB
+9FFC 9FFC EC9EB5 9FFC
+9FFD 9FFD EC9EB6 9FFD
+9FFE 9FFE EC9EB7 9FFE
+A041 A041 EC9EB8 A041
+A042 A042 EC9EB9 A042
+A043 A043 EC9EBA A043
+A044 A044 EC9EBB A044
+A045 A045 EC9EBE A045
+A046 A046 EC9F82 A046
+A047 A047 EC9F83 A047
+A048 A048 EC9F84 A048
+A049 A049 EC9F85 A049
+A04A A04A EC9F86 A04A
+A04B A04B EC9F87 A04B
+A04C A04C EC9F8A A04C
+A04D A04D EC9F8B A04D
+A04E A04E EC9F8D A04E
+A04F A04F EC9F8F A04F
+A050 A050 EC9F91 A050
+A051 A051 EC9F92 A051
+A052 A052 EC9F93 A052
+A053 A053 EC9F94 A053
+A054 A054 EC9F95 A054
+A055 A055 EC9F96 A055
+A056 A056 EC9F97 A056
+A057 A057 EC9F99 A057
+A058 A058 EC9F9A A058
+A059 A059 EC9F9B A059
+A05A A05A EC9F9C A05A
+A061 A061 EC9F9E A061
+A062 A062 EC9F9F A062
+A063 A063 EC9FA0 A063
+A064 A064 EC9FA1 A064
+A065 A065 EC9FA2 A065
+A066 A066 EC9FA3 A066
+A067 A067 EC9FA5 A067
+A068 A068 EC9FA6 A068
+A069 A069 EC9FA7 A069
+A06A A06A EC9FA9 A06A
+A06B A06B EC9FAA A06B
+A06C A06C EC9FAB A06C
+A06D A06D EC9FAD A06D
+A06E A06E EC9FAE A06E
+A06F A06F EC9FAF A06F
+A070 A070 EC9FB0 A070
+A071 A071 EC9FB1 A071
+A072 A072 EC9FB2 A072
+A073 A073 EC9FB3 A073
+A074 A074 EC9FB4 A074
+A075 A075 EC9FB5 A075
+A076 A076 EC9FB6 A076
+A077 A077 EC9FB7 A077
+A078 A078 EC9FB8 A078
+A079 A079 EC9FB9 A079
+A07A A07A EC9FBA A07A
+A081 A081 EC9FBB A081
+A082 A082 EC9FBC A082
+A083 A083 EC9FBD A083
+A084 A084 EC9FBE A084
+A085 A085 EC9FBF A085
+A086 A086 ECA082 A086
+A087 A087 ECA083 A087
+A088 A088 ECA085 A088
+A089 A089 ECA086 A089
+A08A A08A ECA087 A08A
+A08B A08B ECA089 A08B
+A08C A08C ECA08B A08C
+A08D A08D ECA08C A08D
+A08E A08E ECA08D A08E
+A08F A08F ECA08E A08F
+A090 A090 ECA08F A090
+A091 A091 ECA092 A091
+A092 A092 ECA094 A092
+A093 A093 ECA097 A093
+A094 A094 ECA098 A094
+A095 A095 ECA099 A095
+A096 A096 ECA09A A096
+A097 A097 ECA09B A097
+A098 A098 ECA09E A098
+A099 A099 ECA09F A099
+A09A A09A ECA0A1 A09A
+A09B A09B ECA0A2 A09B
+A09C A09C ECA0A3 A09C
+A09D A09D ECA0A5 A09D
+A09E A09E ECA0A6 A09E
+A09F A09F ECA0A7 A09F
+A0A0 A0A0 ECA0A8 A0A0
+A0A1 A0A1 ECA0A9 A0A1
+A0A2 A0A2 ECA0AA A0A2
+A0A3 A0A3 ECA0AB A0A3
+A0A4 A0A4 ECA0AE A0A4
+A0A5 A0A5 ECA0B0 A0A5
+A0A6 A0A6 ECA0B2 A0A6
+A0A7 A0A7 ECA0B3 A0A7
+A0A8 A0A8 ECA0B4 A0A8
+A0A9 A0A9 ECA0B5 A0A9
+A0AA A0AA ECA0B6 A0AA
+A0AB A0AB ECA0B7 A0AB
+A0AC A0AC ECA0B9 A0AC
+A0AD A0AD ECA0BA A0AD
+A0AE A0AE ECA0BB A0AE
+A0AF A0AF ECA0BD A0AF
+A0B0 A0B0 ECA0BE A0B0
+A0B1 A0B1 ECA0BF A0B1
+A0B2 A0B2 ECA181 A0B2
+A0B3 A0B3 ECA182 A0B3
+A0B4 A0B4 ECA183 A0B4
+A0B5 A0B5 ECA184 A0B5
+A0B6 A0B6 ECA185 A0B6
+A0B7 A0B7 ECA186 A0B7
+A0B8 A0B8 ECA187 A0B8
+A0B9 A0B9 ECA18A A0B9
+A0BA A0BA ECA18B A0BA
+A0BB A0BB ECA18E A0BB
+A0BC A0BC ECA18F A0BC
+A0BD A0BD ECA190 A0BD
+A0BE A0BE ECA191 A0BE
+A0BF A0BF ECA192 A0BF
+A0C0 A0C0 ECA193 A0C0
+A0C1 A0C1 ECA195 A0C1
+A0C2 A0C2 ECA196 A0C2
+A0C3 A0C3 ECA197 A0C3
+A0C4 A0C4 ECA198 A0C4
+A0C5 A0C5 ECA199 A0C5
+A0C6 A0C6 ECA19A A0C6
+A0C7 A0C7 ECA19B A0C7
+A0C8 A0C8 ECA19C A0C8
+A0C9 A0C9 ECA19D A0C9
+A0CA A0CA ECA19E A0CA
+A0CB A0CB ECA19F A0CB
+A0CC A0CC ECA1A0 A0CC
+A0CD A0CD ECA1A1 A0CD
+A0CE A0CE ECA1A2 A0CE
+A0CF A0CF ECA1A3 A0CF
+A0D0 A0D0 ECA1A4 A0D0
+A0D1 A0D1 ECA1A5 A0D1
+A0D2 A0D2 ECA1A6 A0D2
+A0D3 A0D3 ECA1A7 A0D3
+A0D4 A0D4 ECA1A8 A0D4
+A0D5 A0D5 ECA1A9 A0D5
+A0D6 A0D6 ECA1AA A0D6
+A0D7 A0D7 ECA1AB A0D7
+A0D8 A0D8 ECA1AC A0D8
+A0D9 A0D9 ECA1AD A0D9
+A0DA A0DA ECA1AE A0DA
+A0DB A0DB ECA1AF A0DB
+A0DC A0DC ECA1B2 A0DC
+A0DD A0DD ECA1B3 A0DD
+A0DE A0DE ECA1B5 A0DE
+A0DF A0DF ECA1B6 A0DF
+A0E0 A0E0 ECA1B7 A0E0
+A0E1 A0E1 ECA1B9 A0E1
+A0E2 A0E2 ECA1BB A0E2
+A0E3 A0E3 ECA1BC A0E3
+A0E4 A0E4 ECA1BD A0E4
+A0E5 A0E5 ECA1BE A0E5
+A0E6 A0E6 ECA1BF A0E6
+A0E7 A0E7 ECA282 A0E7
+A0E8 A0E8 ECA284 A0E8
+A0E9 A0E9 ECA288 A0E9
+A0EA A0EA ECA289 A0EA
+A0EB A0EB ECA28A A0EB
+A0EC A0EC ECA28E A0EC
+A0ED A0ED ECA28F A0ED
+A0EE A0EE ECA290 A0EE
+A0EF A0EF ECA291 A0EF
+A0F0 A0F0 ECA292 A0F0
+A0F1 A0F1 ECA293 A0F1
+A0F2 A0F2 ECA295 A0F2
+A0F3 A0F3 ECA296 A0F3
+A0F4 A0F4 ECA297 A0F4
+A0F5 A0F5 ECA298 A0F5
+A0F6 A0F6 ECA299 A0F6
+A0F7 A0F7 ECA29A A0F7
+A0F8 A0F8 ECA29B A0F8
+A0F9 A0F9 ECA29C A0F9
+A0FA A0FA ECA29E A0FA
+A0FB A0FB ECA2A0 A0FB
+A0FC A0FC ECA2A2 A0FC
+A0FD A0FD ECA2A3 A0FD
+A0FE A0FE ECA2A4 A0FE
+A141 A141 ECA2A5 A141
+A142 A142 ECA2A6 A142
+A143 A143 ECA2A7 A143
+A144 A144 ECA2A9 A144
+A145 A145 ECA2AA A145
+A146 A146 ECA2AB A146
+A147 A147 ECA2AC A147
+A148 A148 ECA2AD A148
+A149 A149 ECA2AE A149
+A14A A14A ECA2AF A14A
+A14B A14B ECA2B0 A14B
+A14C A14C ECA2B1 A14C
+A14D A14D ECA2B2 A14D
+A14E A14E ECA2B3 A14E
+A14F A14F ECA2B4 A14F
+A150 A150 ECA2B5 A150
+A151 A151 ECA2B6 A151
+A152 A152 ECA2B7 A152
+A153 A153 ECA2B8 A153
+A154 A154 ECA2B9 A154
+A155 A155 ECA2BA A155
+A156 A156 ECA2BB A156
+A157 A157 ECA2BE A157
+A158 A158 ECA2BF A158
+A159 A159 ECA380 A159
+A15A A15A ECA381 A15A
+A161 A161 ECA382 A161
+A162 A162 ECA383 A162
+A163 A163 ECA385 A163
+A164 A164 ECA386 A164
+A165 A165 ECA387 A165
+A166 A166 ECA389 A166
+A167 A167 ECA38A A167
+A168 A168 ECA38B A168
+A169 A169 ECA38D A169
+A16A A16A ECA38E A16A
+A16B A16B ECA38F A16B
+A16C A16C ECA390 A16C
+A16D A16D ECA391 A16D
+A16E A16E ECA392 A16E
+A16F A16F ECA393 A16F
+A170 A170 ECA396 A170
+A171 A171 ECA398 A171
+A172 A172 ECA39A A172
+A173 A173 ECA39B A173
+A174 A174 ECA39C A174
+A175 A175 ECA39D A175
+A176 A176 ECA39E A176
+A177 A177 ECA39F A177
+A178 A178 ECA3A2 A178
+A179 A179 ECA3A3 A179
+A17A A17A ECA3A5 A17A
+A181 A181 ECA3A6 A181
+A182 A182 ECA3A7 A182
+A183 A183 ECA3A8 A183
+A184 A184 ECA3A9 A184
+A185 A185 ECA3AA A185
+A186 A186 ECA3AB A186
+A187 A187 ECA3AC A187
+A188 A188 ECA3AD A188
+A189 A189 ECA3AE A189
+A18A A18A ECA3AF A18A
+A18B A18B ECA3B0 A18B
+A18C A18C ECA3B1 A18C
+A18D A18D ECA3B2 A18D
+A18E A18E ECA3B3 A18E
+A18F A18F ECA3B4 A18F
+A190 A190 ECA3B6 A190
+A191 A191 ECA3B7 A191
+A192 A192 ECA3B8 A192
+A193 A193 ECA3B9 A193
+A194 A194 ECA3BA A194
+A195 A195 ECA3BB A195
+A196 A196 ECA3BE A196
+A197 A197 ECA3BF A197
+A198 A198 ECA481 A198
+A199 A199 ECA482 A199
+A19A A19A ECA483 A19A
+A19B A19B ECA487 A19B
+A19C A19C ECA488 A19C
+A19D A19D ECA489 A19D
+A19E A19E ECA48A A19E
+A19F A19F ECA48B A19F
+A1A0 A1A0 ECA48E A1A0
+A1A1 A1A1 E38080 A1A1
+A1A2 A1A2 E38081 A1A2
+A1A3 A1A3 E38082 A1A3
+A1A4 A1A4 C2B7 A1A4
+A1A5 A1A5 E280A5 A1A5
+A1A6 A1A6 E280A6 A1A6
+A1A7 A1A7 C2A8 A1A7
+A1A8 A1A8 E38083 A1A8
+A1A9 A1A9 C2AD A1A9
+A1AA A1AA E28095 A1AA
+A1AB A1AB E288A5 A1AB
+A1AC A1AC EFBCBC A1AC
+A1AD A1AD E288BC A1AD
+A1AE A1AE E28098 A1AE
+A1AF A1AF E28099 A1AF
+A1B0 A1B0 E2809C A1B0
+A1B1 A1B1 E2809D A1B1
+A1B2 A1B2 E38094 A1B2
+A1B3 A1B3 E38095 A1B3
+A1B4 A1B4 E38088 A1B4
+A1B5 A1B5 E38089 A1B5
+A1B6 A1B6 E3808A A1B6
+A1B7 A1B7 E3808B A1B7
+A1B8 A1B8 E3808C A1B8
+A1B9 A1B9 E3808D A1B9
+A1BA A1BA E3808E A1BA
+A1BB A1BB E3808F A1BB
+A1BC A1BC E38090 A1BC
+A1BD A1BD E38091 A1BD
+A1BE A1BE C2B1 A1BE
+A1BF A1BF C397 A1BF
+A1C0 A1C0 C3B7 A1C0
+A1C1 A1C1 E289A0 A1C1
+A1C2 A1C2 E289A4 A1C2
+A1C3 A1C3 E289A5 A1C3
+A1C4 A1C4 E2889E A1C4
+A1C5 A1C5 E288B4 A1C5
+A1C6 A1C6 C2B0 A1C6
+A1C7 A1C7 E280B2 A1C7
+A1C8 A1C8 E280B3 A1C8
+A1C9 A1C9 E28483 A1C9
+A1CA A1CA E284AB A1CA
+A1CB A1CB EFBFA0 A1CB
+A1CC A1CC EFBFA1 A1CC
+A1CD A1CD EFBFA5 A1CD
+A1CE A1CE E29982 A1CE
+A1CF A1CF E29980 A1CF
+A1D0 A1D0 E288A0 A1D0
+A1D1 A1D1 E28AA5 A1D1
+A1D2 A1D2 E28C92 A1D2
+A1D3 A1D3 E28882 A1D3
+A1D4 A1D4 E28887 A1D4
+A1D5 A1D5 E289A1 A1D5
+A1D6 A1D6 E28992 A1D6
+A1D7 A1D7 C2A7 A1D7
+A1D8 A1D8 E280BB A1D8
+A1D9 A1D9 E29886 A1D9
+A1DA A1DA E29885 A1DA
+A1DB A1DB E2978B A1DB
+A1DC A1DC E2978F A1DC
+A1DD A1DD E2978E A1DD
+A1DE A1DE E29787 A1DE
+A1DF A1DF E29786 A1DF
+A1E0 A1E0 E296A1 A1E0
+A1E1 A1E1 E296A0 A1E1
+A1E2 A1E2 E296B3 A1E2
+A1E3 A1E3 E296B2 A1E3
+A1E4 A1E4 E296BD A1E4
+A1E5 A1E5 E296BC A1E5
+A1E6 A1E6 E28692 A1E6
+A1E7 A1E7 E28690 A1E7
+A1E8 A1E8 E28691 A1E8
+A1E9 A1E9 E28693 A1E9
+A1EA A1EA E28694 A1EA
+A1EB A1EB E38093 A1EB
+A1EC A1EC E289AA A1EC
+A1ED A1ED E289AB A1ED
+A1EE A1EE E2889A A1EE
+A1EF A1EF E288BD A1EF
+A1F0 A1F0 E2889D A1F0
+A1F1 A1F1 E288B5 A1F1
+A1F2 A1F2 E288AB A1F2
+A1F3 A1F3 E288AC A1F3
+A1F4 A1F4 E28888 A1F4
+A1F5 A1F5 E2888B A1F5
+A1F6 A1F6 E28A86 A1F6
+A1F7 A1F7 E28A87 A1F7
+A1F8 A1F8 E28A82 A1F8
+A1F9 A1F9 E28A83 A1F9
+A1FA A1FA E288AA A1FA
+A1FB A1FB E288A9 A1FB
+A1FC A1FC E288A7 A1FC
+A1FD A1FD E288A8 A1FD
+A1FE A1FE EFBFA2 A1FE
+A241 A241 ECA490 A241
+A242 A242 ECA492 A242
+A243 A243 ECA493 A243
+A244 A244 ECA494 A244
+A245 A245 ECA495 A245
+A246 A246 ECA496 A246
+A247 A247 ECA497 A247
+A248 A248 ECA499 A248
+A249 A249 ECA49A A249
+A24A A24A ECA49B A24A
+A24B A24B ECA49C A24B
+A24C A24C ECA49D A24C
+A24D A24D ECA49E A24D
+A24E A24E ECA49F A24E
+A24F A24F ECA4A0 A24F
+A250 A250 ECA4A1 A250
+A251 A251 ECA4A2 A251
+A252 A252 ECA4A3 A252
+A253 A253 ECA4A4 A253
+A254 A254 ECA4A5 A254
+A255 A255 ECA4A6 A255
+A256 A256 ECA4A7 A256
+A257 A257 ECA4A8 A257
+A258 A258 ECA4A9 A258
+A259 A259 ECA4AA A259
+A25A A25A ECA4AB A25A
+A261 A261 ECA4AD A261
+A262 A262 ECA4AE A262
+A263 A263 ECA4AF A263
+A264 A264 ECA4B0 A264
+A265 A265 ECA4B1 A265
+A266 A266 ECA4B2 A266
+A267 A267 ECA4B3 A267
+A268 A268 ECA4B5 A268
+A269 A269 ECA4B6 A269
+A26A A26A ECA4B7 A26A
+A26B A26B ECA4B8 A26B
+A26C A26C ECA4B9 A26C
+A26D A26D ECA4BA A26D
+A26E A26E ECA4BB A26E
+A26F A26F ECA4BC A26F
+A270 A270 ECA4BD A270
+A271 A271 ECA4BE A271
+A272 A272 ECA4BF A272
+A273 A273 ECA580 A273
+A274 A274 ECA581 A274
+A275 A275 ECA582 A275
+A276 A276 ECA583 A276
+A277 A277 ECA584 A277
+A278 A278 ECA585 A278
+A279 A279 ECA586 A279
+A27A A27A ECA587 A27A
+A281 A281 ECA588 A281
+A282 A282 ECA589 A282
+A283 A283 ECA58A A283
+A284 A284 ECA58B A284
+A285 A285 ECA58C A285
+A286 A286 ECA58D A286
+A287 A287 ECA58E A287
+A288 A288 ECA58F A288
+A289 A289 ECA592 A289
+A28A A28A ECA593 A28A
+A28B A28B ECA595 A28B
+A28C A28C ECA596 A28C
+A28D A28D ECA597 A28D
+A28E A28E ECA599 A28E
+A28F A28F ECA59A A28F
+A290 A290 ECA59B A290
+A291 A291 ECA59C A291
+A292 A292 ECA59D A292
+A293 A293 ECA59E A293
+A294 A294 ECA59F A294
+A295 A295 ECA5A2 A295
+A296 A296 ECA5A4 A296
+A297 A297 ECA5A5 A297
+A298 A298 ECA5A6 A298
+A299 A299 ECA5A7 A299
+A29A A29A ECA5A8 A29A
+A29B A29B ECA5A9 A29B
+A29C A29C ECA5AA A29C
+A29D A29D ECA5AB A29D
+A29E A29E ECA5AD A29E
+A29F A29F ECA5AE A29F
+A2A0 A2A0 ECA5AF A2A0
+A2A1 A2A1 E28792 A2A1
+A2A2 A2A2 E28794 A2A2
+A2A3 A2A3 E28880 A2A3
+A2A4 A2A4 E28883 A2A4
+A2A5 A2A5 C2B4 A2A5
+A2A6 A2A6 EFBD9E A2A6
+A2A7 A2A7 CB87 A2A7
+A2A8 A2A8 CB98 A2A8
+A2A9 A2A9 CB9D A2A9
+A2AA A2AA CB9A A2AA
+A2AB A2AB CB99 A2AB
+A2AC A2AC C2B8 A2AC
+A2AD A2AD CB9B A2AD
+A2AE A2AE C2A1 A2AE
+A2AF A2AF C2BF A2AF
+A2B0 A2B0 CB90 A2B0
+A2B1 A2B1 E288AE A2B1
+A2B2 A2B2 E28891 A2B2
+A2B3 A2B3 E2888F A2B3
+A2B4 A2B4 C2A4 A2B4
+A2B5 A2B5 E28489 A2B5
+A2B6 A2B6 E280B0 A2B6
+A2B7 A2B7 E29781 A2B7
+A2B8 A2B8 E29780 A2B8
+A2B9 A2B9 E296B7 A2B9
+A2BA A2BA E296B6 A2BA
+A2BB A2BB E299A4 A2BB
+A2BC A2BC E299A0 A2BC
+A2BD A2BD E299A1 A2BD
+A2BE A2BE E299A5 A2BE
+A2BF A2BF E299A7 A2BF
+A2C0 A2C0 E299A3 A2C0
+A2C1 A2C1 E28A99 A2C1
+A2C2 A2C2 E29788 A2C2
+A2C3 A2C3 E296A3 A2C3
+A2C4 A2C4 E29790 A2C4
+A2C5 A2C5 E29791 A2C5
+A2C6 A2C6 E29692 A2C6
+A2C7 A2C7 E296A4 A2C7
+A2C8 A2C8 E296A5 A2C8
+A2C9 A2C9 E296A8 A2C9
+A2CA A2CA E296A7 A2CA
+A2CB A2CB E296A6 A2CB
+A2CC A2CC E296A9 A2CC
+A2CD A2CD E299A8 A2CD
+A2CE A2CE E2988F A2CE
+A2CF A2CF E2988E A2CF
+A2D0 A2D0 E2989C A2D0
+A2D1 A2D1 E2989E A2D1
+A2D2 A2D2 C2B6 A2D2
+A2D3 A2D3 E280A0 A2D3
+A2D4 A2D4 E280A1 A2D4
+A2D5 A2D5 E28695 A2D5
+A2D6 A2D6 E28697 A2D6
+A2D7 A2D7 E28699 A2D7
+A2D8 A2D8 E28696 A2D8
+A2D9 A2D9 E28698 A2D9
+A2DA A2DA E299AD A2DA
+A2DB A2DB E299A9 A2DB
+A2DC A2DC E299AA A2DC
+A2DD A2DD E299AC A2DD
+A2DE A2DE E389BF A2DE
+A2DF A2DF E3889C A2DF
+A2E0 A2E0 E28496 A2E0
+A2E1 A2E1 E38F87 A2E1
+A2E2 A2E2 E284A2 A2E2
+A2E3 A2E3 E38F82 A2E3
+A2E4 A2E4 E38F98 A2E4
+A2E5 A2E5 E284A1 A2E5
+A2E6 A2E6 E282AC A2E6
+A2E7 A2E7 C2AE A2E7
+A341 A341 ECA5B1 A341
+A342 A342 ECA5B2 A342
+A343 A343 ECA5B3 A343
+A344 A344 ECA5B5 A344
+A345 A345 ECA5B6 A345
+A346 A346 ECA5B7 A346
+A347 A347 ECA5B8 A347
+A348 A348 ECA5B9 A348
+A349 A349 ECA5BA A349
+A34A A34A ECA5BB A34A
+A34B A34B ECA5BD A34B
+A34C A34C ECA5BE A34C
+A34D A34D ECA5BF A34D
+A34E A34E ECA680 A34E
+A34F A34F ECA681 A34F
+A350 A350 ECA682 A350
+A351 A351 ECA683 A351
+A352 A352 ECA684 A352
+A353 A353 ECA685 A353
+A354 A354 ECA686 A354
+A355 A355 ECA687 A355
+A356 A356 ECA68A A356
+A357 A357 ECA68B A357
+A358 A358 ECA68D A358
+A359 A359 ECA68E A359
+A35A A35A ECA68F A35A
+A361 A361 ECA691 A361
+A362 A362 ECA692 A362
+A363 A363 ECA693 A363
+A364 A364 ECA694 A364
+A365 A365 ECA695 A365
+A366 A366 ECA696 A366
+A367 A367 ECA697 A367
+A368 A368 ECA69A A368
+A369 A369 ECA69C A369
+A36A A36A ECA69E A36A
+A36B A36B ECA69F A36B
+A36C A36C ECA6A0 A36C
+A36D A36D ECA6A1 A36D
+A36E A36E ECA6A2 A36E
+A36F A36F ECA6A3 A36F
+A370 A370 ECA6A4 A370
+A371 A371 ECA6A5 A371
+A372 A372 ECA6A6 A372
+A373 A373 ECA6A7 A373
+A374 A374 ECA6A8 A374
+A375 A375 ECA6A9 A375
+A376 A376 ECA6AA A376
+A377 A377 ECA6AB A377
+A378 A378 ECA6AC A378
+A379 A379 ECA6AD A379
+A37A A37A ECA6AE A37A
+A381 A381 ECA6AF A381
+A382 A382 ECA6B0 A382
+A383 A383 ECA6B1 A383
+A384 A384 ECA6B2 A384
+A385 A385 ECA6B3 A385
+A386 A386 ECA6B4 A386
+A387 A387 ECA6B5 A387
+A388 A388 ECA6B6 A388
+A389 A389 ECA6B7 A389
+A38A A38A ECA6B8 A38A
+A38B A38B ECA6B9 A38B
+A38C A38C ECA6BA A38C
+A38D A38D ECA6BB A38D
+A38E A38E ECA6BC A38E
+A38F A38F ECA6BD A38F
+A390 A390 ECA6BE A390
+A391 A391 ECA6BF A391
+A392 A392 ECA782 A392
+A393 A393 ECA783 A393
+A394 A394 ECA785 A394
+A395 A395 ECA786 A395
+A396 A396 ECA789 A396
+A397 A397 ECA78B A397
+A398 A398 ECA78C A398
+A399 A399 ECA78D A399
+A39A A39A ECA78E A39A
+A39B A39B ECA78F A39B
+A39C A39C ECA792 A39C
+A39D A39D ECA794 A39D
+A39E A39E ECA797 A39E
+A39F A39F ECA798 A39F
+A3A0 A3A0 ECA79B A3A0
+A3A1 A3A1 EFBC81 A3A1
+A3A2 A3A2 EFBC82 A3A2
+A3A3 A3A3 EFBC83 A3A3
+A3A4 A3A4 EFBC84 A3A4
+A3A5 A3A5 EFBC85 A3A5
+A3A6 A3A6 EFBC86 A3A6
+A3A7 A3A7 EFBC87 A3A7
+A3A8 A3A8 EFBC88 A3A8
+A3A9 A3A9 EFBC89 A3A9
+A3AA A3AA EFBC8A A3AA
+A3AB A3AB EFBC8B A3AB
+A3AC A3AC EFBC8C A3AC
+A3AD A3AD EFBC8D A3AD
+A3AE A3AE EFBC8E A3AE
+A3AF A3AF EFBC8F A3AF
+A3B0 A3B0 EFBC90 A3B0
+A3B1 A3B1 EFBC91 A3B1
+A3B2 A3B2 EFBC92 A3B2
+A3B3 A3B3 EFBC93 A3B3
+A3B4 A3B4 EFBC94 A3B4
+A3B5 A3B5 EFBC95 A3B5
+A3B6 A3B6 EFBC96 A3B6
+A3B7 A3B7 EFBC97 A3B7
+A3B8 A3B8 EFBC98 A3B8
+A3B9 A3B9 EFBC99 A3B9
+A3BA A3BA EFBC9A A3BA
+A3BB A3BB EFBC9B A3BB
+A3BC A3BC EFBC9C A3BC
+A3BD A3BD EFBC9D A3BD
+A3BE A3BE EFBC9E A3BE
+A3BF A3BF EFBC9F A3BF
+A3C0 A3C0 EFBCA0 A3C0
+A3C1 A3C1 EFBCA1 A3C1
+A3C2 A3C2 EFBCA2 A3C2
+A3C3 A3C3 EFBCA3 A3C3
+A3C4 A3C4 EFBCA4 A3C4
+A3C5 A3C5 EFBCA5 A3C5
+A3C6 A3C6 EFBCA6 A3C6
+A3C7 A3C7 EFBCA7 A3C7
+A3C8 A3C8 EFBCA8 A3C8
+A3C9 A3C9 EFBCA9 A3C9
+A3CA A3CA EFBCAA A3CA
+A3CB A3CB EFBCAB A3CB
+A3CC A3CC EFBCAC A3CC
+A3CD A3CD EFBCAD A3CD
+A3CE A3CE EFBCAE A3CE
+A3CF A3CF EFBCAF A3CF
+A3D0 A3D0 EFBCB0 A3D0
+A3D1 A3D1 EFBCB1 A3D1
+A3D2 A3D2 EFBCB2 A3D2
+A3D3 A3D3 EFBCB3 A3D3
+A3D4 A3D4 EFBCB4 A3D4
+A3D5 A3D5 EFBCB5 A3D5
+A3D6 A3D6 EFBCB6 A3D6
+A3D7 A3D7 EFBCB7 A3D7
+A3D8 A3D8 EFBCB8 A3D8
+A3D9 A3D9 EFBCB9 A3D9
+A3DA A3DA EFBCBA A3DA
+A3DB A3DB EFBCBB A3DB
+A3DC A3DC EFBFA6 A3DC
+A3DD A3DD EFBCBD A3DD
+A3DE A3DE EFBCBE A3DE
+A3DF A3DF EFBCBF A3DF
+A3E0 A3E0 EFBD80 A3E0
+A3E1 A3E1 EFBD81 A3E1
+A3E2 A3E2 EFBD82 A3E2
+A3E3 A3E3 EFBD83 A3E3
+A3E4 A3E4 EFBD84 A3E4
+A3E5 A3E5 EFBD85 A3E5
+A3E6 A3E6 EFBD86 A3E6
+A3E7 A3E7 EFBD87 A3E7
+A3E8 A3E8 EFBD88 A3E8
+A3E9 A3E9 EFBD89 A3E9
+A3EA A3EA EFBD8A A3EA
+A3EB A3EB EFBD8B A3EB
+A3EC A3EC EFBD8C A3EC
+A3ED A3ED EFBD8D A3ED
+A3EE A3EE EFBD8E A3EE
+A3EF A3EF EFBD8F A3EF
+A3F0 A3F0 EFBD90 A3F0
+A3F1 A3F1 EFBD91 A3F1
+A3F2 A3F2 EFBD92 A3F2
+A3F3 A3F3 EFBD93 A3F3
+A3F4 A3F4 EFBD94 A3F4
+A3F5 A3F5 EFBD95 A3F5
+A3F6 A3F6 EFBD96 A3F6
+A3F7 A3F7 EFBD97 A3F7
+A3F8 A3F8 EFBD98 A3F8
+A3F9 A3F9 EFBD99 A3F9
+A3FA A3FA EFBD9A A3FA
+A3FB A3FB EFBD9B A3FB
+A3FC A3FC EFBD9C A3FC
+A3FD A3FD EFBD9D A3FD
+A3FE A3FE EFBFA3 A3FE
+A441 A441 ECA79E A441
+A442 A442 ECA79F A442
+A443 A443 ECA7A1 A443
+A444 A444 ECA7A3 A444
+A445 A445 ECA7A5 A445
+A446 A446 ECA7A6 A446
+A447 A447 ECA7A8 A447
+A448 A448 ECA7A9 A448
+A449 A449 ECA7AA A449
+A44A A44A ECA7AB A44A
+A44B A44B ECA7AE A44B
+A44C A44C ECA7B2 A44C
+A44D A44D ECA7B3 A44D
+A44E A44E ECA7B4 A44E
+A44F A44F ECA7B5 A44F
+A450 A450 ECA7B6 A450
+A451 A451 ECA7B7 A451
+A452 A452 ECA7BA A452
+A453 A453 ECA7BB A453
+A454 A454 ECA7BD A454
+A455 A455 ECA7BE A455
+A456 A456 ECA7BF A456
+A457 A457 ECA881 A457
+A458 A458 ECA882 A458
+A459 A459 ECA883 A459
+A45A A45A ECA884 A45A
+A461 A461 ECA885 A461
+A462 A462 ECA886 A462
+A463 A463 ECA887 A463
+A464 A464 ECA88A A464
+A465 A465 ECA88E A465
+A466 A466 ECA88F A466
+A467 A467 ECA890 A467
+A468 A468 ECA891 A468
+A469 A469 ECA892 A469
+A46A A46A ECA893 A46A
+A46B A46B ECA895 A46B
+A46C A46C ECA896 A46C
+A46D A46D ECA897 A46D
+A46E A46E ECA899 A46E
+A46F A46F ECA89A A46F
+A470 A470 ECA89B A470
+A471 A471 ECA89C A471
+A472 A472 ECA89D A472
+A473 A473 ECA89E A473
+A474 A474 ECA89F A474
+A475 A475 ECA8A0 A475
+A476 A476 ECA8A1 A476
+A477 A477 ECA8A2 A477
+A478 A478 ECA8A3 A478
+A479 A479 ECA8A4 A479
+A47A A47A ECA8A5 A47A
+A481 A481 ECA8A6 A481
+A482 A482 ECA8A7 A482
+A483 A483 ECA8A8 A483
+A484 A484 ECA8AA A484
+A485 A485 ECA8AB A485
+A486 A486 ECA8AC A486
+A487 A487 ECA8AD A487
+A488 A488 ECA8AE A488
+A489 A489 ECA8AF A489
+A48A A48A ECA8B0 A48A
+A48B A48B ECA8B1 A48B
+A48C A48C ECA8B2 A48C
+A48D A48D ECA8B3 A48D
+A48E A48E ECA8B4 A48E
+A48F A48F ECA8B5 A48F
+A490 A490 ECA8B6 A490
+A491 A491 ECA8B7 A491
+A492 A492 ECA8B8 A492
+A493 A493 ECA8B9 A493
+A494 A494 ECA8BA A494
+A495 A495 ECA8BB A495
+A496 A496 ECA8BC A496
+A497 A497 ECA8BD A497
+A498 A498 ECA8BE A498
+A499 A499 ECA8BF A499
+A49A A49A ECA980 A49A
+A49B A49B ECA981 A49B
+A49C A49C ECA982 A49C
+A49D A49D ECA983 A49D
+A49E A49E ECA984 A49E
+A49F A49F ECA985 A49F
+A4A0 A4A0 ECA986 A4A0
+A4A1 A4A1 E384B1 A4A1
+A4A2 A4A2 E384B2 A4A2
+A4A3 A4A3 E384B3 A4A3
+A4A4 A4A4 E384B4 A4A4
+A4A5 A4A5 E384B5 A4A5
+A4A6 A4A6 E384B6 A4A6
+A4A7 A4A7 E384B7 A4A7
+A4A8 A4A8 E384B8 A4A8
+A4A9 A4A9 E384B9 A4A9
+A4AA A4AA E384BA A4AA
+A4AB A4AB E384BB A4AB
+A4AC A4AC E384BC A4AC
+A4AD A4AD E384BD A4AD
+A4AE A4AE E384BE A4AE
+A4AF A4AF E384BF A4AF
+A4B0 A4B0 E38580 A4B0
+A4B1 A4B1 E38581 A4B1
+A4B2 A4B2 E38582 A4B2
+A4B3 A4B3 E38583 A4B3
+A4B4 A4B4 E38584 A4B4
+A4B5 A4B5 E38585 A4B5
+A4B6 A4B6 E38586 A4B6
+A4B7 A4B7 E38587 A4B7
+A4B8 A4B8 E38588 A4B8
+A4B9 A4B9 E38589 A4B9
+A4BA A4BA E3858A A4BA
+A4BB A4BB E3858B A4BB
+A4BC A4BC E3858C A4BC
+A4BD A4BD E3858D A4BD
+A4BE A4BE E3858E A4BE
+A4BF A4BF E3858F A4BF
+A4C0 A4C0 E38590 A4C0
+A4C1 A4C1 E38591 A4C1
+A4C2 A4C2 E38592 A4C2
+A4C3 A4C3 E38593 A4C3
+A4C4 A4C4 E38594 A4C4
+A4C5 A4C5 E38595 A4C5
+A4C6 A4C6 E38596 A4C6
+A4C7 A4C7 E38597 A4C7
+A4C8 A4C8 E38598 A4C8
+A4C9 A4C9 E38599 A4C9
+A4CA A4CA E3859A A4CA
+A4CB A4CB E3859B A4CB
+A4CC A4CC E3859C A4CC
+A4CD A4CD E3859D A4CD
+A4CE A4CE E3859E A4CE
+A4CF A4CF E3859F A4CF
+A4D0 A4D0 E385A0 A4D0
+A4D1 A4D1 E385A1 A4D1
+A4D2 A4D2 E385A2 A4D2
+A4D3 A4D3 E385A3 A4D3
+A4D4 A4D4 E385A4 A4D4
+A4D5 A4D5 E385A5 A4D5
+A4D6 A4D6 E385A6 A4D6
+A4D7 A4D7 E385A7 A4D7
+A4D8 A4D8 E385A8 A4D8
+A4D9 A4D9 E385A9 A4D9
+A4DA A4DA E385AA A4DA
+A4DB A4DB E385AB A4DB
+A4DC A4DC E385AC A4DC
+A4DD A4DD E385AD A4DD
+A4DE A4DE E385AE A4DE
+A4DF A4DF E385AF A4DF
+A4E0 A4E0 E385B0 A4E0
+A4E1 A4E1 E385B1 A4E1
+A4E2 A4E2 E385B2 A4E2
+A4E3 A4E3 E385B3 A4E3
+A4E4 A4E4 E385B4 A4E4
+A4E5 A4E5 E385B5 A4E5
+A4E6 A4E6 E385B6 A4E6
+A4E7 A4E7 E385B7 A4E7
+A4E8 A4E8 E385B8 A4E8
+A4E9 A4E9 E385B9 A4E9
+A4EA A4EA E385BA A4EA
+A4EB A4EB E385BB A4EB
+A4EC A4EC E385BC A4EC
+A4ED A4ED E385BD A4ED
+A4EE A4EE E385BE A4EE
+A4EF A4EF E385BF A4EF
+A4F0 A4F0 E38680 A4F0
+A4F1 A4F1 E38681 A4F1
+A4F2 A4F2 E38682 A4F2
+A4F3 A4F3 E38683 A4F3
+A4F4 A4F4 E38684 A4F4
+A4F5 A4F5 E38685 A4F5
+A4F6 A4F6 E38686 A4F6
+A4F7 A4F7 E38687 A4F7
+A4F8 A4F8 E38688 A4F8
+A4F9 A4F9 E38689 A4F9
+A4FA A4FA E3868A A4FA
+A4FB A4FB E3868B A4FB
+A4FC A4FC E3868C A4FC
+A4FD A4FD E3868D A4FD
+A4FE A4FE E3868E A4FE
+A541 A541 ECA987 A541
+A542 A542 ECA988 A542
+A543 A543 ECA989 A543
+A544 A544 ECA98A A544
+A545 A545 ECA98B A545
+A546 A546 ECA98E A546
+A547 A547 ECA98F A547
+A548 A548 ECA991 A548
+A549 A549 ECA992 A549
+A54A A54A ECA993 A54A
+A54B A54B ECA995 A54B
+A54C A54C ECA996 A54C
+A54D A54D ECA997 A54D
+A54E A54E ECA998 A54E
+A54F A54F ECA999 A54F
+A550 A550 ECA99A A550
+A551 A551 ECA99B A551
+A552 A552 ECA99E A552
+A553 A553 ECA9A2 A553
+A554 A554 ECA9A3 A554
+A555 A555 ECA9A4 A555
+A556 A556 ECA9A5 A556
+A557 A557 ECA9A6 A557
+A558 A558 ECA9A7 A558
+A559 A559 ECA9A9 A559
+A55A A55A ECA9AA A55A
+A561 A561 ECA9AB A561
+A562 A562 ECA9AC A562
+A563 A563 ECA9AD A563
+A564 A564 ECA9AE A564
+A565 A565 ECA9AF A565
+A566 A566 ECA9B0 A566
+A567 A567 ECA9B1 A567
+A568 A568 ECA9B2 A568
+A569 A569 ECA9B3 A569
+A56A A56A ECA9B4 A56A
+A56B A56B ECA9B5 A56B
+A56C A56C ECA9B6 A56C
+A56D A56D ECA9B7 A56D
+A56E A56E ECA9B8 A56E
+A56F A56F ECA9B9 A56F
+A570 A570 ECA9BA A570
+A571 A571 ECA9BB A571
+A572 A572 ECA9BC A572
+A573 A573 ECA9BE A573
+A574 A574 ECA9BF A574
+A575 A575 ECAA80 A575
+A576 A576 ECAA81 A576
+A577 A577 ECAA82 A577
+A578 A578 ECAA83 A578
+A579 A579 ECAA85 A579
+A57A A57A ECAA86 A57A
+A581 A581 ECAA87 A581
+A582 A582 ECAA88 A582
+A583 A583 ECAA89 A583
+A584 A584 ECAA8A A584
+A585 A585 ECAA8B A585
+A586 A586 ECAA8C A586
+A587 A587 ECAA8D A587
+A588 A588 ECAA8E A588
+A589 A589 ECAA8F A589
+A58A A58A ECAA90 A58A
+A58B A58B ECAA91 A58B
+A58C A58C ECAA92 A58C
+A58D A58D ECAA93 A58D
+A58E A58E ECAA94 A58E
+A58F A58F ECAA95 A58F
+A590 A590 ECAA96 A590
+A591 A591 ECAA97 A591
+A592 A592 ECAA99 A592
+A593 A593 ECAA9A A593
+A594 A594 ECAA9B A594
+A595 A595 ECAA9C A595
+A596 A596 ECAA9D A596
+A597 A597 ECAA9E A597
+A598 A598 ECAA9F A598
+A599 A599 ECAAA0 A599
+A59A A59A ECAAA1 A59A
+A59B A59B ECAAA2 A59B
+A59C A59C ECAAA3 A59C
+A59D A59D ECAAA4 A59D
+A59E A59E ECAAA5 A59E
+A59F A59F ECAAA6 A59F
+A5A0 A5A0 ECAAA7 A5A0
+A5A1 A5A1 E285B0 A5A1
+A5A2 A5A2 E285B1 A5A2
+A5A3 A5A3 E285B2 A5A3
+A5A4 A5A4 E285B3 A5A4
+A5A5 A5A5 E285B4 A5A5
+A5A6 A5A6 E285B5 A5A6
+A5A7 A5A7 E285B6 A5A7
+A5A8 A5A8 E285B7 A5A8
+A5A9 A5A9 E285B8 A5A9
+A5AA A5AA E285B9 A5AA
+A5B0 A5B0 E285A0 A5B0
+A5B1 A5B1 E285A1 A5B1
+A5B2 A5B2 E285A2 A5B2
+A5B3 A5B3 E285A3 A5B3
+A5B4 A5B4 E285A4 A5B4
+A5B5 A5B5 E285A5 A5B5
+A5B6 A5B6 E285A6 A5B6
+A5B7 A5B7 E285A7 A5B7
+A5B8 A5B8 E285A8 A5B8
+A5B9 A5B9 E285A9 A5B9
+A5C1 A5C1 CE91 A5C1
+A5C2 A5C2 CE92 A5C2
+A5C3 A5C3 CE93 A5C3
+A5C4 A5C4 CE94 A5C4
+A5C5 A5C5 CE95 A5C5
+A5C6 A5C6 CE96 A5C6
+A5C7 A5C7 CE97 A5C7
+A5C8 A5C8 CE98 A5C8
+A5C9 A5C9 CE99 A5C9
+A5CA A5CA CE9A A5CA
+A5CB A5CB CE9B A5CB
+A5CC A5CC CE9C A5CC
+A5CD A5CD CE9D A5CD
+A5CE A5CE CE9E A5CE
+A5CF A5CF CE9F A5CF
+A5D0 A5D0 CEA0 A5D0
+A5D1 A5D1 CEA1 A5D1
+A5D2 A5D2 CEA3 A5D2
+A5D3 A5D3 CEA4 A5D3
+A5D4 A5D4 CEA5 A5D4
+A5D5 A5D5 CEA6 A5D5
+A5D6 A5D6 CEA7 A5D6
+A5D7 A5D7 CEA8 A5D7
+A5D8 A5D8 CEA9 A5D8
+A5E1 A5E1 CEB1 A5E1
+A5E2 A5E2 CEB2 A5E2
+A5E3 A5E3 CEB3 A5E3
+A5E4 A5E4 CEB4 A5E4
+A5E5 A5E5 CEB5 A5E5
+A5E6 A5E6 CEB6 A5E6
+A5E7 A5E7 CEB7 A5E7
+A5E8 A5E8 CEB8 A5E8
+A5E9 A5E9 CEB9 A5E9
+A5EA A5EA CEBA A5EA
+A5EB A5EB CEBB A5EB
+A5EC A5EC CEBC A5EC
+A5ED A5ED CEBD A5ED
+A5EE A5EE CEBE A5EE
+A5EF A5EF CEBF A5EF
+A5F0 A5F0 CF80 A5F0
+A5F1 A5F1 CF81 A5F1
+A5F2 A5F2 CF83 A5F2
+A5F3 A5F3 CF84 A5F3
+A5F4 A5F4 CF85 A5F4
+A5F5 A5F5 CF86 A5F5
+A5F6 A5F6 CF87 A5F6
+A5F7 A5F7 CF88 A5F7
+A5F8 A5F8 CF89 A5F8
+A641 A641 ECAAA8 A641
+A642 A642 ECAAA9 A642
+A643 A643 ECAAAA A643
+A644 A644 ECAAAB A644
+A645 A645 ECAAAC A645
+A646 A646 ECAAAD A646
+A647 A647 ECAAAE A647
+A648 A648 ECAAAF A648
+A649 A649 ECAAB0 A649
+A64A A64A ECAAB1 A64A
+A64B A64B ECAAB2 A64B
+A64C A64C ECAAB3 A64C
+A64D A64D ECAAB4 A64D
+A64E A64E ECAAB5 A64E
+A64F A64F ECAAB6 A64F
+A650 A650 ECAAB7 A650
+A651 A651 ECAAB8 A651
+A652 A652 ECAAB9 A652
+A653 A653 ECAABA A653
+A654 A654 ECAABB A654
+A655 A655 ECAABE A655
+A656 A656 ECAABF A656
+A657 A657 ECAB81 A657
+A658 A658 ECAB82 A658
+A659 A659 ECAB83 A659
+A65A A65A ECAB85 A65A
+A661 A661 ECAB86 A661
+A662 A662 ECAB87 A662
+A663 A663 ECAB88 A663
+A664 A664 ECAB89 A664
+A665 A665 ECAB8A A665
+A666 A666 ECAB8B A666
+A667 A667 ECAB8E A667
+A668 A668 ECAB90 A668
+A669 A669 ECAB92 A669
+A66A A66A ECAB94 A66A
+A66B A66B ECAB95 A66B
+A66C A66C ECAB96 A66C
+A66D A66D ECAB97 A66D
+A66E A66E ECAB9A A66E
+A66F A66F ECAB9B A66F
+A670 A670 ECAB9C A670
+A671 A671 ECAB9D A671
+A672 A672 ECAB9E A672
+A673 A673 ECAB9F A673
+A674 A674 ECABA1 A674
+A675 A675 ECABA2 A675
+A676 A676 ECABA3 A676
+A677 A677 ECABA4 A677
+A678 A678 ECABA5 A678
+A679 A679 ECABA6 A679
+A67A A67A ECABA7 A67A
+A681 A681 ECABA8 A681
+A682 A682 ECABA9 A682
+A683 A683 ECABAA A683
+A684 A684 ECABAB A684
+A685 A685 ECABAD A685
+A686 A686 ECABAE A686
+A687 A687 ECABAF A687
+A688 A688 ECABB0 A688
+A689 A689 ECABB1 A689
+A68A A68A ECABB2 A68A
+A68B A68B ECABB3 A68B
+A68C A68C ECABB5 A68C
+A68D A68D ECABB6 A68D
+A68E A68E ECABB7 A68E
+A68F A68F ECABB8 A68F
+A690 A690 ECABB9 A690
+A691 A691 ECABBA A691
+A692 A692 ECABBB A692
+A693 A693 ECABBC A693
+A694 A694 ECABBD A694
+A695 A695 ECABBE A695
+A696 A696 ECABBF A696
+A697 A697 ECAC80 A697
+A698 A698 ECAC81 A698
+A699 A699 ECAC82 A699
+A69A A69A ECAC83 A69A
+A69B A69B ECAC84 A69B
+A69C A69C ECAC85 A69C
+A69D A69D ECAC86 A69D
+A69E A69E ECAC87 A69E
+A69F A69F ECAC89 A69F
+A6A0 A6A0 ECAC8A A6A0
+A6A1 A6A1 E29480 A6A1
+A6A2 A6A2 E29482 A6A2
+A6A3 A6A3 E2948C A6A3
+A6A4 A6A4 E29490 A6A4
+A6A5 A6A5 E29498 A6A5
+A6A6 A6A6 E29494 A6A6
+A6A7 A6A7 E2949C A6A7
+A6A8 A6A8 E294AC A6A8
+A6A9 A6A9 E294A4 A6A9
+A6AA A6AA E294B4 A6AA
+A6AB A6AB E294BC A6AB
+A6AC A6AC E29481 A6AC
+A6AD A6AD E29483 A6AD
+A6AE A6AE E2948F A6AE
+A6AF A6AF E29493 A6AF
+A6B0 A6B0 E2949B A6B0
+A6B1 A6B1 E29497 A6B1
+A6B2 A6B2 E294A3 A6B2
+A6B3 A6B3 E294B3 A6B3
+A6B4 A6B4 E294AB A6B4
+A6B5 A6B5 E294BB A6B5
+A6B6 A6B6 E2958B A6B6
+A6B7 A6B7 E294A0 A6B7
+A6B8 A6B8 E294AF A6B8
+A6B9 A6B9 E294A8 A6B9
+A6BA A6BA E294B7 A6BA
+A6BB A6BB E294BF A6BB
+A6BC A6BC E2949D A6BC
+A6BD A6BD E294B0 A6BD
+A6BE A6BE E294A5 A6BE
+A6BF A6BF E294B8 A6BF
+A6C0 A6C0 E29582 A6C0
+A6C1 A6C1 E29492 A6C1
+A6C2 A6C2 E29491 A6C2
+A6C3 A6C3 E2949A A6C3
+A6C4 A6C4 E29499 A6C4
+A6C5 A6C5 E29496 A6C5
+A6C6 A6C6 E29495 A6C6
+A6C7 A6C7 E2948E A6C7
+A6C8 A6C8 E2948D A6C8
+A6C9 A6C9 E2949E A6C9
+A6CA A6CA E2949F A6CA
+A6CB A6CB E294A1 A6CB
+A6CC A6CC E294A2 A6CC
+A6CD A6CD E294A6 A6CD
+A6CE A6CE E294A7 A6CE
+A6CF A6CF E294A9 A6CF
+A6D0 A6D0 E294AA A6D0
+A6D1 A6D1 E294AD A6D1
+A6D2 A6D2 E294AE A6D2
+A6D3 A6D3 E294B1 A6D3
+A6D4 A6D4 E294B2 A6D4
+A6D5 A6D5 E294B5 A6D5
+A6D6 A6D6 E294B6 A6D6
+A6D7 A6D7 E294B9 A6D7
+A6D8 A6D8 E294BA A6D8
+A6D9 A6D9 E294BD A6D9
+A6DA A6DA E294BE A6DA
+A6DB A6DB E29580 A6DB
+A6DC A6DC E29581 A6DC
+A6DD A6DD E29583 A6DD
+A6DE A6DE E29584 A6DE
+A6DF A6DF E29585 A6DF
+A6E0 A6E0 E29586 A6E0
+A6E1 A6E1 E29587 A6E1
+A6E2 A6E2 E29588 A6E2
+A6E3 A6E3 E29589 A6E3
+A6E4 A6E4 E2958A A6E4
+A741 A741 ECAC8B A741
+A742 A742 ECAC8C A742
+A743 A743 ECAC8D A743
+A744 A744 ECAC8E A744
+A745 A745 ECAC8F A745
+A746 A746 ECAC91 A746
+A747 A747 ECAC92 A747
+A748 A748 ECAC93 A748
+A749 A749 ECAC95 A749
+A74A A74A ECAC96 A74A
+A74B A74B ECAC97 A74B
+A74C A74C ECAC99 A74C
+A74D A74D ECAC9A A74D
+A74E A74E ECAC9B A74E
+A74F A74F ECAC9C A74F
+A750 A750 ECAC9D A750
+A751 A751 ECAC9E A751
+A752 A752 ECAC9F A752
+A753 A753 ECACA2 A753
+A754 A754 ECACA3 A754
+A755 A755 ECACA4 A755
+A756 A756 ECACA5 A756
+A757 A757 ECACA6 A757
+A758 A758 ECACA7 A758
+A759 A759 ECACA8 A759
+A75A A75A ECACA9 A75A
+A761 A761 ECACAA A761
+A762 A762 ECACAB A762
+A763 A763 ECACAC A763
+A764 A764 ECACAD A764
+A765 A765 ECACAE A765
+A766 A766 ECACAF A766
+A767 A767 ECACB0 A767
+A768 A768 ECACB1 A768
+A769 A769 ECACB2 A769
+A76A A76A ECACB3 A76A
+A76B A76B ECACB4 A76B
+A76C A76C ECACB5 A76C
+A76D A76D ECACB6 A76D
+A76E A76E ECACB7 A76E
+A76F A76F ECACB8 A76F
+A770 A770 ECACB9 A770
+A771 A771 ECACBA A771
+A772 A772 ECACBB A772
+A773 A773 ECACBC A773
+A774 A774 ECACBD A774
+A775 A775 ECACBE A775
+A776 A776 ECACBF A776
+A777 A777 ECAD80 A777
+A778 A778 ECAD82 A778
+A779 A779 ECAD83 A779
+A77A A77A ECAD84 A77A
+A781 A781 ECAD85 A781
+A782 A782 ECAD86 A782
+A783 A783 ECAD87 A783
+A784 A784 ECAD8A A784
+A785 A785 ECAD8B A785
+A786 A786 ECAD8D A786
+A787 A787 ECAD8E A787
+A788 A788 ECAD8F A788
+A789 A789 ECAD91 A789
+A78A A78A ECAD92 A78A
+A78B A78B ECAD93 A78B
+A78C A78C ECAD94 A78C
+A78D A78D ECAD95 A78D
+A78E A78E ECAD96 A78E
+A78F A78F ECAD97 A78F
+A790 A790 ECAD9A A790
+A791 A791 ECAD9B A791
+A792 A792 ECAD9C A792
+A793 A793 ECAD9E A793
+A794 A794 ECAD9F A794
+A795 A795 ECADA0 A795
+A796 A796 ECADA1 A796
+A797 A797 ECADA2 A797
+A798 A798 ECADA3 A798
+A799 A799 ECADA5 A799
+A79A A79A ECADA6 A79A
+A79B A79B ECADA7 A79B
+A79C A79C ECADA8 A79C
+A79D A79D ECADA9 A79D
+A79E A79E ECADAA A79E
+A79F A79F ECADAB A79F
+A7A0 A7A0 ECADAC A7A0
+A7A1 A7A1 E38E95 A7A1
+A7A2 A7A2 E38E96 A7A2
+A7A3 A7A3 E38E97 A7A3
+A7A4 A7A4 E28493 A7A4
+A7A5 A7A5 E38E98 A7A5
+A7A6 A7A6 E38F84 A7A6
+A7A7 A7A7 E38EA3 A7A7
+A7A8 A7A8 E38EA4 A7A8
+A7A9 A7A9 E38EA5 A7A9
+A7AA A7AA E38EA6 A7AA
+A7AB A7AB E38E99 A7AB
+A7AC A7AC E38E9A A7AC
+A7AD A7AD E38E9B A7AD
+A7AE A7AE E38E9C A7AE
+A7AF A7AF E38E9D A7AF
+A7B0 A7B0 E38E9E A7B0
+A7B1 A7B1 E38E9F A7B1
+A7B2 A7B2 E38EA0 A7B2
+A7B3 A7B3 E38EA1 A7B3
+A7B4 A7B4 E38EA2 A7B4
+A7B5 A7B5 E38F8A A7B5
+A7B6 A7B6 E38E8D A7B6
+A7B7 A7B7 E38E8E A7B7
+A7B8 A7B8 E38E8F A7B8
+A7B9 A7B9 E38F8F A7B9
+A7BA A7BA E38E88 A7BA
+A7BB A7BB E38E89 A7BB
+A7BC A7BC E38F88 A7BC
+A7BD A7BD E38EA7 A7BD
+A7BE A7BE E38EA8 A7BE
+A7BF A7BF E38EB0 A7BF
+A7C0 A7C0 E38EB1 A7C0
+A7C1 A7C1 E38EB2 A7C1
+A7C2 A7C2 E38EB3 A7C2
+A7C3 A7C3 E38EB4 A7C3
+A7C4 A7C4 E38EB5 A7C4
+A7C5 A7C5 E38EB6 A7C5
+A7C6 A7C6 E38EB7 A7C6
+A7C7 A7C7 E38EB8 A7C7
+A7C8 A7C8 E38EB9 A7C8
+A7C9 A7C9 E38E80 A7C9
+A7CA A7CA E38E81 A7CA
+A7CB A7CB E38E82 A7CB
+A7CC A7CC E38E83 A7CC
+A7CD A7CD E38E84 A7CD
+A7CE A7CE E38EBA A7CE
+A7CF A7CF E38EBB A7CF
+A7D0 A7D0 E38EBC A7D0
+A7D1 A7D1 E38EBD A7D1
+A7D2 A7D2 E38EBE A7D2
+A7D3 A7D3 E38EBF A7D3
+A7D4 A7D4 E38E90 A7D4
+A7D5 A7D5 E38E91 A7D5
+A7D6 A7D6 E38E92 A7D6
+A7D7 A7D7 E38E93 A7D7
+A7D8 A7D8 E38E94 A7D8
+A7D9 A7D9 E284A6 A7D9
+A7DA A7DA E38F80 A7DA
+A7DB A7DB E38F81 A7DB
+A7DC A7DC E38E8A A7DC
+A7DD A7DD E38E8B A7DD
+A7DE A7DE E38E8C A7DE
+A7DF A7DF E38F96 A7DF
+A7E0 A7E0 E38F85 A7E0
+A7E1 A7E1 E38EAD A7E1
+A7E2 A7E2 E38EAE A7E2
+A7E3 A7E3 E38EAF A7E3
+A7E4 A7E4 E38F9B A7E4
+A7E5 A7E5 E38EA9 A7E5
+A7E6 A7E6 E38EAA A7E6
+A7E7 A7E7 E38EAB A7E7
+A7E8 A7E8 E38EAC A7E8
+A7E9 A7E9 E38F9D A7E9
+A7EA A7EA E38F90 A7EA
+A7EB A7EB E38F93 A7EB
+A7EC A7EC E38F83 A7EC
+A7ED A7ED E38F89 A7ED
+A7EE A7EE E38F9C A7EE
+A7EF A7EF E38F86 A7EF
+A841 A841 ECADAD A841
+A842 A842 ECADAE A842
+A843 A843 ECADAF A843
+A844 A844 ECADB0 A844
+A845 A845 ECADB1 A845
+A846 A846 ECADB2 A846
+A847 A847 ECADB3 A847
+A848 A848 ECADB4 A848
+A849 A849 ECADB5 A849
+A84A A84A ECADB6 A84A
+A84B A84B ECADB7 A84B
+A84C A84C ECADBA A84C
+A84D A84D ECADBB A84D
+A84E A84E ECADBC A84E
+A84F A84F ECADBD A84F
+A850 A850 ECADBE A850
+A851 A851 ECADBF A851
+A852 A852 ECAE80 A852
+A853 A853 ECAE81 A853
+A854 A854 ECAE82 A854
+A855 A855 ECAE83 A855
+A856 A856 ECAE84 A856
+A857 A857 ECAE85 A857
+A858 A858 ECAE86 A858
+A859 A859 ECAE87 A859
+A85A A85A ECAE88 A85A
+A861 A861 ECAE89 A861
+A862 A862 ECAE8A A862
+A863 A863 ECAE8B A863
+A864 A864 ECAE8C A864
+A865 A865 ECAE8D A865
+A866 A866 ECAE8E A866
+A867 A867 ECAE8F A867
+A868 A868 ECAE90 A868
+A869 A869 ECAE91 A869
+A86A A86A ECAE92 A86A
+A86B A86B ECAE93 A86B
+A86C A86C ECAE94 A86C
+A86D A86D ECAE95 A86D
+A86E A86E ECAE96 A86E
+A86F A86F ECAE97 A86F
+A870 A870 ECAE98 A870
+A871 A871 ECAE99 A871
+A872 A872 ECAE9A A872
+A873 A873 ECAE9B A873
+A874 A874 ECAE9D A874
+A875 A875 ECAE9E A875
+A876 A876 ECAE9F A876
+A877 A877 ECAEA0 A877
+A878 A878 ECAEA1 A878
+A879 A879 ECAEA2 A879
+A87A A87A ECAEA3 A87A
+A881 A881 ECAEA4 A881
+A882 A882 ECAEA5 A882
+A883 A883 ECAEA6 A883
+A884 A884 ECAEA7 A884
+A885 A885 ECAEA8 A885
+A886 A886 ECAEA9 A886
+A887 A887 ECAEAA A887
+A888 A888 ECAEAB A888
+A889 A889 ECAEAC A889
+A88A A88A ECAEAD A88A
+A88B A88B ECAEAE A88B
+A88C A88C ECAEAF A88C
+A88D A88D ECAEB0 A88D
+A88E A88E ECAEB1 A88E
+A88F A88F ECAEB2 A88F
+A890 A890 ECAEB3 A890
+A891 A891 ECAEB4 A891
+A892 A892 ECAEB5 A892
+A893 A893 ECAEB6 A893
+A894 A894 ECAEB7 A894
+A895 A895 ECAEB9 A895
+A896 A896 ECAEBA A896
+A897 A897 ECAEBB A897
+A898 A898 ECAEBC A898
+A899 A899 ECAEBD A899
+A89A A89A ECAEBE A89A
+A89B A89B ECAEBF A89B
+A89C A89C ECAF80 A89C
+A89D A89D ECAF81 A89D
+A89E A89E ECAF82 A89E
+A89F A89F ECAF83 A89F
+A8A0 A8A0 ECAF84 A8A0
+A8A1 A8A1 C386 A8A1
+A8A2 A8A2 C390 A8A2
+A8A3 A8A3 C2AA A8A3
+A8A4 A8A4 C4A6 A8A4
+A8A6 A8A6 C4B2 A8A6
+A8A8 A8A8 C4BF A8A8
+A8A9 A8A9 C581 A8A9
+A8AA A8AA C398 A8AA
+A8AB A8AB C592 A8AB
+A8AC A8AC C2BA A8AC
+A8AD A8AD C39E A8AD
+A8AE A8AE C5A6 A8AE
+A8AF A8AF C58A A8AF
+A8B1 A8B1 E389A0 A8B1
+A8B2 A8B2 E389A1 A8B2
+A8B3 A8B3 E389A2 A8B3
+A8B4 A8B4 E389A3 A8B4
+A8B5 A8B5 E389A4 A8B5
+A8B6 A8B6 E389A5 A8B6
+A8B7 A8B7 E389A6 A8B7
+A8B8 A8B8 E389A7 A8B8
+A8B9 A8B9 E389A8 A8B9
+A8BA A8BA E389A9 A8BA
+A8BB A8BB E389AA A8BB
+A8BC A8BC E389AB A8BC
+A8BD A8BD E389AC A8BD
+A8BE A8BE E389AD A8BE
+A8BF A8BF E389AE A8BF
+A8C0 A8C0 E389AF A8C0
+A8C1 A8C1 E389B0 A8C1
+A8C2 A8C2 E389B1 A8C2
+A8C3 A8C3 E389B2 A8C3
+A8C4 A8C4 E389B3 A8C4
+A8C5 A8C5 E389B4 A8C5
+A8C6 A8C6 E389B5 A8C6
+A8C7 A8C7 E389B6 A8C7
+A8C8 A8C8 E389B7 A8C8
+A8C9 A8C9 E389B8 A8C9
+A8CA A8CA E389B9 A8CA
+A8CB A8CB E389BA A8CB
+A8CC A8CC E389BB A8CC
+A8CD A8CD E29390 A8CD
+A8CE A8CE E29391 A8CE
+A8CF A8CF E29392 A8CF
+A8D0 A8D0 E29393 A8D0
+A8D1 A8D1 E29394 A8D1
+A8D2 A8D2 E29395 A8D2
+A8D3 A8D3 E29396 A8D3
+A8D4 A8D4 E29397 A8D4
+A8D5 A8D5 E29398 A8D5
+A8D6 A8D6 E29399 A8D6
+A8D7 A8D7 E2939A A8D7
+A8D8 A8D8 E2939B A8D8
+A8D9 A8D9 E2939C A8D9
+A8DA A8DA E2939D A8DA
+A8DB A8DB E2939E A8DB
+A8DC A8DC E2939F A8DC
+A8DD A8DD E293A0 A8DD
+A8DE A8DE E293A1 A8DE
+A8DF A8DF E293A2 A8DF
+A8E0 A8E0 E293A3 A8E0
+A8E1 A8E1 E293A4 A8E1
+A8E2 A8E2 E293A5 A8E2
+A8E3 A8E3 E293A6 A8E3
+A8E4 A8E4 E293A7 A8E4
+A8E5 A8E5 E293A8 A8E5
+A8E6 A8E6 E293A9 A8E6
+A8E7 A8E7 E291A0 A8E7
+A8E8 A8E8 E291A1 A8E8
+A8E9 A8E9 E291A2 A8E9
+A8EA A8EA E291A3 A8EA
+A8EB A8EB E291A4 A8EB
+A8EC A8EC E291A5 A8EC
+A8ED A8ED E291A6 A8ED
+A8EE A8EE E291A7 A8EE
+A8EF A8EF E291A8 A8EF
+A8F0 A8F0 E291A9 A8F0
+A8F1 A8F1 E291AA A8F1
+A8F2 A8F2 E291AB A8F2
+A8F3 A8F3 E291AC A8F3
+A8F4 A8F4 E291AD A8F4
+A8F5 A8F5 E291AE A8F5
+A8F6 A8F6 C2BD A8F6
+A8F7 A8F7 E28593 A8F7
+A8F8 A8F8 E28594 A8F8
+A8F9 A8F9 C2BC A8F9
+A8FA A8FA C2BE A8FA
+A8FB A8FB E2859B A8FB
+A8FC A8FC E2859C A8FC
+A8FD A8FD E2859D A8FD
+A8FE A8FE E2859E A8FE
+A941 A941 ECAF85 A941
+A942 A942 ECAF86 A942
+A943 A943 ECAF87 A943
+A944 A944 ECAF88 A944
+A945 A945 ECAF89 A945
+A946 A946 ECAF8A A946
+A947 A947 ECAF8B A947
+A948 A948 ECAF8C A948
+A949 A949 ECAF8D A949
+A94A A94A ECAF8E A94A
+A94B A94B ECAF8F A94B
+A94C A94C ECAF90 A94C
+A94D A94D ECAF91 A94D
+A94E A94E ECAF92 A94E
+A94F A94F ECAF93 A94F
+A950 A950 ECAF95 A950
+A951 A951 ECAF96 A951
+A952 A952 ECAF97 A952
+A953 A953 ECAF98 A953
+A954 A954 ECAF99 A954
+A955 A955 ECAF9A A955
+A956 A956 ECAF9B A956
+A957 A957 ECAF9C A957
+A958 A958 ECAF9D A958
+A959 A959 ECAF9E A959
+A95A A95A ECAF9F A95A
+A961 A961 ECAFA0 A961
+A962 A962 ECAFA1 A962
+A963 A963 ECAFA2 A963
+A964 A964 ECAFA3 A964
+A965 A965 ECAFA5 A965
+A966 A966 ECAFA6 A966
+A967 A967 ECAFA8 A967
+A968 A968 ECAFAA A968
+A969 A969 ECAFAB A969
+A96A A96A ECAFAC A96A
+A96B A96B ECAFAD A96B
+A96C A96C ECAFAE A96C
+A96D A96D ECAFAF A96D
+A96E A96E ECAFB0 A96E
+A96F A96F ECAFB1 A96F
+A970 A970 ECAFB2 A970
+A971 A971 ECAFB3 A971
+A972 A972 ECAFB4 A972
+A973 A973 ECAFB5 A973
+A974 A974 ECAFB6 A974
+A975 A975 ECAFB7 A975
+A976 A976 ECAFB8 A976
+A977 A977 ECAFB9 A977
+A978 A978 ECAFBA A978
+A979 A979 ECAFBB A979
+A97A A97A ECAFBC A97A
+A981 A981 ECAFBD A981
+A982 A982 ECAFBE A982
+A983 A983 ECAFBF A983
+A984 A984 ECB080 A984
+A985 A985 ECB081 A985
+A986 A986 ECB082 A986
+A987 A987 ECB083 A987
+A988 A988 ECB084 A988
+A989 A989 ECB085 A989
+A98A A98A ECB086 A98A
+A98B A98B ECB087 A98B
+A98C A98C ECB088 A98C
+A98D A98D ECB089 A98D
+A98E A98E ECB08A A98E
+A98F A98F ECB08B A98F
+A990 A990 ECB08E A990
+A991 A991 ECB08F A991
+A992 A992 ECB091 A992
+A993 A993 ECB092 A993
+A994 A994 ECB093 A994
+A995 A995 ECB095 A995
+A996 A996 ECB096 A996
+A997 A997 ECB097 A997
+A998 A998 ECB098 A998
+A999 A999 ECB099 A999
+A99A A99A ECB09A A99A
+A99B A99B ECB09B A99B
+A99C A99C ECB09E A99C
+A99D A99D ECB09F A99D
+A99E A99E ECB0A0 A99E
+A99F A99F ECB0A3 A99F
+A9A0 A9A0 ECB0A4 A9A0
+A9A1 A9A1 C3A6 A9A1
+A9A2 A9A2 C491 A9A2
+A9A3 A9A3 C3B0 A9A3
+A9A4 A9A4 C4A7 A9A4
+A9A5 A9A5 C4B1 A9A5
+A9A6 A9A6 C4B3 A9A6
+A9A7 A9A7 C4B8 A9A7
+A9A8 A9A8 C580 A9A8
+A9A9 A9A9 C582 A9A9
+A9AA A9AA C3B8 A9AA
+A9AB A9AB C593 A9AB
+A9AC A9AC C39F A9AC
+A9AD A9AD C3BE A9AD
+A9AE A9AE C5A7 A9AE
+A9AF A9AF C58B A9AF
+A9B0 A9B0 C589 A9B0
+A9B1 A9B1 E38880 A9B1
+A9B2 A9B2 E38881 A9B2
+A9B3 A9B3 E38882 A9B3
+A9B4 A9B4 E38883 A9B4
+A9B5 A9B5 E38884 A9B5
+A9B6 A9B6 E38885 A9B6
+A9B7 A9B7 E38886 A9B7
+A9B8 A9B8 E38887 A9B8
+A9B9 A9B9 E38888 A9B9
+A9BA A9BA E38889 A9BA
+A9BB A9BB E3888A A9BB
+A9BC A9BC E3888B A9BC
+A9BD A9BD E3888C A9BD
+A9BE A9BE E3888D A9BE
+A9BF A9BF E3888E A9BF
+A9C0 A9C0 E3888F A9C0
+A9C1 A9C1 E38890 A9C1
+A9C2 A9C2 E38891 A9C2
+A9C3 A9C3 E38892 A9C3
+A9C4 A9C4 E38893 A9C4
+A9C5 A9C5 E38894 A9C5
+A9C6 A9C6 E38895 A9C6
+A9C7 A9C7 E38896 A9C7
+A9C8 A9C8 E38897 A9C8
+A9C9 A9C9 E38898 A9C9
+A9CA A9CA E38899 A9CA
+A9CB A9CB E3889A A9CB
+A9CC A9CC E3889B A9CC
+A9CD A9CD E2929C A9CD
+A9CE A9CE E2929D A9CE
+A9CF A9CF E2929E A9CF
+A9D0 A9D0 E2929F A9D0
+A9D1 A9D1 E292A0 A9D1
+A9D2 A9D2 E292A1 A9D2
+A9D3 A9D3 E292A2 A9D3
+A9D4 A9D4 E292A3 A9D4
+A9D5 A9D5 E292A4 A9D5
+A9D6 A9D6 E292A5 A9D6
+A9D7 A9D7 E292A6 A9D7
+A9D8 A9D8 E292A7 A9D8
+A9D9 A9D9 E292A8 A9D9
+A9DA A9DA E292A9 A9DA
+A9DB A9DB E292AA A9DB
+A9DC A9DC E292AB A9DC
+A9DD A9DD E292AC A9DD
+A9DE A9DE E292AD A9DE
+A9DF A9DF E292AE A9DF
+A9E0 A9E0 E292AF A9E0
+A9E1 A9E1 E292B0 A9E1
+A9E2 A9E2 E292B1 A9E2
+A9E3 A9E3 E292B2 A9E3
+A9E4 A9E4 E292B3 A9E4
+A9E5 A9E5 E292B4 A9E5
+A9E6 A9E6 E292B5 A9E6
+A9E7 A9E7 E291B4 A9E7
+A9E8 A9E8 E291B5 A9E8
+A9E9 A9E9 E291B6 A9E9
+A9EA A9EA E291B7 A9EA
+A9EB A9EB E291B8 A9EB
+A9EC A9EC E291B9 A9EC
+A9ED A9ED E291BA A9ED
+A9EE A9EE E291BB A9EE
+A9EF A9EF E291BC A9EF
+A9F0 A9F0 E291BD A9F0
+A9F1 A9F1 E291BE A9F1
+A9F2 A9F2 E291BF A9F2
+A9F3 A9F3 E29280 A9F3
+A9F4 A9F4 E29281 A9F4
+A9F5 A9F5 E29282 A9F5
+A9F6 A9F6 C2B9 A9F6
+A9F7 A9F7 C2B2 A9F7
+A9F8 A9F8 C2B3 A9F8
+A9F9 A9F9 E281B4 A9F9
+A9FA A9FA E281BF A9FA
+A9FB A9FB E28281 A9FB
+A9FC A9FC E28282 A9FC
+A9FD A9FD E28283 A9FD
+A9FE A9FE E28284 A9FE
+AA41 AA41 ECB0A5 AA41
+AA42 AA42 ECB0A6 AA42
+AA43 AA43 ECB0AA AA43
+AA44 AA44 ECB0AB AA44
+AA45 AA45 ECB0AD AA45
+AA46 AA46 ECB0AF AA46
+AA47 AA47 ECB0B1 AA47
+AA48 AA48 ECB0B2 AA48
+AA49 AA49 ECB0B3 AA49
+AA4A AA4A ECB0B4 AA4A
+AA4B AA4B ECB0B5 AA4B
+AA4C AA4C ECB0B6 AA4C
+AA4D AA4D ECB0B7 AA4D
+AA4E AA4E ECB0BA AA4E
+AA4F AA4F ECB0BF AA4F
+AA50 AA50 ECB180 AA50
+AA51 AA51 ECB181 AA51
+AA52 AA52 ECB182 AA52
+AA53 AA53 ECB183 AA53
+AA54 AA54 ECB186 AA54
+AA55 AA55 ECB187 AA55
+AA56 AA56 ECB189 AA56
+AA57 AA57 ECB18A AA57
+AA58 AA58 ECB18B AA58
+AA59 AA59 ECB18D AA59
+AA5A AA5A ECB18E AA5A
+AA61 AA61 ECB18F AA61
+AA62 AA62 ECB190 AA62
+AA63 AA63 ECB191 AA63
+AA64 AA64 ECB192 AA64
+AA65 AA65 ECB193 AA65
+AA66 AA66 ECB196 AA66
+AA67 AA67 ECB19A AA67
+AA68 AA68 ECB19B AA68
+AA69 AA69 ECB19C AA69
+AA6A AA6A ECB19D AA6A
+AA6B AA6B ECB19E AA6B
+AA6C AA6C ECB19F AA6C
+AA6D AA6D ECB1A1 AA6D
+AA6E AA6E ECB1A2 AA6E
+AA6F AA6F ECB1A3 AA6F
+AA70 AA70 ECB1A5 AA70
+AA71 AA71 ECB1A7 AA71
+AA72 AA72 ECB1A9 AA72
+AA73 AA73 ECB1AA AA73
+AA74 AA74 ECB1AB AA74
+AA75 AA75 ECB1AC AA75
+AA76 AA76 ECB1AD AA76
+AA77 AA77 ECB1AE AA77
+AA78 AA78 ECB1AF AA78
+AA79 AA79 ECB1B1 AA79
+AA7A AA7A ECB1B2 AA7A
+AA81 AA81 ECB1B3 AA81
+AA82 AA82 ECB1B4 AA82
+AA83 AA83 ECB1B6 AA83
+AA84 AA84 ECB1B7 AA84
+AA85 AA85 ECB1B8 AA85
+AA86 AA86 ECB1B9 AA86
+AA87 AA87 ECB1BA AA87
+AA88 AA88 ECB1BB AA88
+AA89 AA89 ECB1BC AA89
+AA8A AA8A ECB1BD AA8A
+AA8B AA8B ECB1BE AA8B
+AA8C AA8C ECB1BF AA8C
+AA8D AA8D ECB280 AA8D
+AA8E AA8E ECB281 AA8E
+AA8F AA8F ECB282 AA8F
+AA90 AA90 ECB283 AA90
+AA91 AA91 ECB284 AA91
+AA92 AA92 ECB285 AA92
+AA93 AA93 ECB286 AA93
+AA94 AA94 ECB287 AA94
+AA95 AA95 ECB288 AA95
+AA96 AA96 ECB289 AA96
+AA97 AA97 ECB28A AA97
+AA98 AA98 ECB28B AA98
+AA99 AA99 ECB28C AA99
+AA9A AA9A ECB28D AA9A
+AA9B AA9B ECB28E AA9B
+AA9C AA9C ECB28F AA9C
+AA9D AA9D ECB290 AA9D
+AA9E AA9E ECB291 AA9E
+AA9F AA9F ECB292 AA9F
+AAA0 AAA0 ECB293 AAA0
+AAA1 AAA1 E38181 AAA1
+AAA2 AAA2 E38182 AAA2
+AAA3 AAA3 E38183 AAA3
+AAA4 AAA4 E38184 AAA4
+AAA5 AAA5 E38185 AAA5
+AAA6 AAA6 E38186 AAA6
+AAA7 AAA7 E38187 AAA7
+AAA8 AAA8 E38188 AAA8
+AAA9 AAA9 E38189 AAA9
+AAAA AAAA E3818A AAAA
+AAAB AAAB E3818B AAAB
+AAAC AAAC E3818C AAAC
+AAAD AAAD E3818D AAAD
+AAAE AAAE E3818E AAAE
+AAAF AAAF E3818F AAAF
+AAB0 AAB0 E38190 AAB0
+AAB1 AAB1 E38191 AAB1
+AAB2 AAB2 E38192 AAB2
+AAB3 AAB3 E38193 AAB3
+AAB4 AAB4 E38194 AAB4
+AAB5 AAB5 E38195 AAB5
+AAB6 AAB6 E38196 AAB6
+AAB7 AAB7 E38197 AAB7
+AAB8 AAB8 E38198 AAB8
+AAB9 AAB9 E38199 AAB9
+AABA AABA E3819A AABA
+AABB AABB E3819B AABB
+AABC AABC E3819C AABC
+AABD AABD E3819D AABD
+AABE AABE E3819E AABE
+AABF AABF E3819F AABF
+AAC0 AAC0 E381A0 AAC0
+AAC1 AAC1 E381A1 AAC1
+AAC2 AAC2 E381A2 AAC2
+AAC3 AAC3 E381A3 AAC3
+AAC4 AAC4 E381A4 AAC4
+AAC5 AAC5 E381A5 AAC5
+AAC6 AAC6 E381A6 AAC6
+AAC7 AAC7 E381A7 AAC7
+AAC8 AAC8 E381A8 AAC8
+AAC9 AAC9 E381A9 AAC9
+AACA AACA E381AA AACA
+AACB AACB E381AB AACB
+AACC AACC E381AC AACC
+AACD AACD E381AD AACD
+AACE AACE E381AE AACE
+AACF AACF E381AF AACF
+AAD0 AAD0 E381B0 AAD0
+AAD1 AAD1 E381B1 AAD1
+AAD2 AAD2 E381B2 AAD2
+AAD3 AAD3 E381B3 AAD3
+AAD4 AAD4 E381B4 AAD4
+AAD5 AAD5 E381B5 AAD5
+AAD6 AAD6 E381B6 AAD6
+AAD7 AAD7 E381B7 AAD7
+AAD8 AAD8 E381B8 AAD8
+AAD9 AAD9 E381B9 AAD9
+AADA AADA E381BA AADA
+AADB AADB E381BB AADB
+AADC AADC E381BC AADC
+AADD AADD E381BD AADD
+AADE AADE E381BE AADE
+AADF AADF E381BF AADF
+AAE0 AAE0 E38280 AAE0
+AAE1 AAE1 E38281 AAE1
+AAE2 AAE2 E38282 AAE2
+AAE3 AAE3 E38283 AAE3
+AAE4 AAE4 E38284 AAE4
+AAE5 AAE5 E38285 AAE5
+AAE6 AAE6 E38286 AAE6
+AAE7 AAE7 E38287 AAE7
+AAE8 AAE8 E38288 AAE8
+AAE9 AAE9 E38289 AAE9
+AAEA AAEA E3828A AAEA
+AAEB AAEB E3828B AAEB
+AAEC AAEC E3828C AAEC
+AAED AAED E3828D AAED
+AAEE AAEE E3828E AAEE
+AAEF AAEF E3828F AAEF
+AAF0 AAF0 E38290 AAF0
+AAF1 AAF1 E38291 AAF1
+AAF2 AAF2 E38292 AAF2
+AAF3 AAF3 E38293 AAF3
+AB41 AB41 ECB294 AB41
+AB42 AB42 ECB295 AB42
+AB43 AB43 ECB296 AB43
+AB44 AB44 ECB297 AB44
+AB45 AB45 ECB29A AB45
+AB46 AB46 ECB29B AB46
+AB47 AB47 ECB29D AB47
+AB48 AB48 ECB29E AB48
+AB49 AB49 ECB29F AB49
+AB4A AB4A ECB2A1 AB4A
+AB4B AB4B ECB2A2 AB4B
+AB4C AB4C ECB2A3 AB4C
+AB4D AB4D ECB2A4 AB4D
+AB4E AB4E ECB2A5 AB4E
+AB4F AB4F ECB2A6 AB4F
+AB50 AB50 ECB2A7 AB50
+AB51 AB51 ECB2AA AB51
+AB52 AB52 ECB2AE AB52
+AB53 AB53 ECB2AF AB53
+AB54 AB54 ECB2B0 AB54
+AB55 AB55 ECB2B1 AB55
+AB56 AB56 ECB2B2 AB56
+AB57 AB57 ECB2B3 AB57
+AB58 AB58 ECB2B6 AB58
+AB59 AB59 ECB2B7 AB59
+AB5A AB5A ECB2B9 AB5A
+AB61 AB61 ECB2BA AB61
+AB62 AB62 ECB2BB AB62
+AB63 AB63 ECB2BD AB63
+AB64 AB64 ECB2BE AB64
+AB65 AB65 ECB2BF AB65
+AB66 AB66 ECB380 AB66
+AB67 AB67 ECB381 AB67
+AB68 AB68 ECB382 AB68
+AB69 AB69 ECB383 AB69
+AB6A AB6A ECB386 AB6A
+AB6B AB6B ECB388 AB6B
+AB6C AB6C ECB38A AB6C
+AB6D AB6D ECB38B AB6D
+AB6E AB6E ECB38C AB6E
+AB6F AB6F ECB38D AB6F
+AB70 AB70 ECB38E AB70
+AB71 AB71 ECB38F AB71
+AB72 AB72 ECB391 AB72
+AB73 AB73 ECB392 AB73
+AB74 AB74 ECB393 AB74
+AB75 AB75 ECB395 AB75
+AB76 AB76 ECB396 AB76
+AB77 AB77 ECB397 AB77
+AB78 AB78 ECB398 AB78
+AB79 AB79 ECB399 AB79
+AB7A AB7A ECB39A AB7A
+AB81 AB81 ECB39B AB81
+AB82 AB82 ECB39C AB82
+AB83 AB83 ECB39D AB83
+AB84 AB84 ECB39E AB84
+AB85 AB85 ECB39F AB85
+AB86 AB86 ECB3A0 AB86
+AB87 AB87 ECB3A1 AB87
+AB88 AB88 ECB3A2 AB88
+AB89 AB89 ECB3A3 AB89
+AB8A AB8A ECB3A5 AB8A
+AB8B AB8B ECB3A6 AB8B
+AB8C AB8C ECB3A7 AB8C
+AB8D AB8D ECB3A8 AB8D
+AB8E AB8E ECB3A9 AB8E
+AB8F AB8F ECB3AA AB8F
+AB90 AB90 ECB3AB AB90
+AB91 AB91 ECB3AD AB91
+AB92 AB92 ECB3AE AB92
+AB93 AB93 ECB3AF AB93
+AB94 AB94 ECB3B1 AB94
+AB95 AB95 ECB3B2 AB95
+AB96 AB96 ECB3B3 AB96
+AB97 AB97 ECB3B4 AB97
+AB98 AB98 ECB3B5 AB98
+AB99 AB99 ECB3B6 AB99
+AB9A AB9A ECB3B7 AB9A
+AB9B AB9B ECB3B8 AB9B
+AB9C AB9C ECB3B9 AB9C
+AB9D AB9D ECB3BA AB9D
+AB9E AB9E ECB3BB AB9E
+AB9F AB9F ECB3BC AB9F
+ABA0 ABA0 ECB3BD ABA0
+ABA1 ABA1 E382A1 ABA1
+ABA2 ABA2 E382A2 ABA2
+ABA3 ABA3 E382A3 ABA3
+ABA4 ABA4 E382A4 ABA4
+ABA5 ABA5 E382A5 ABA5
+ABA6 ABA6 E382A6 ABA6
+ABA7 ABA7 E382A7 ABA7
+ABA8 ABA8 E382A8 ABA8
+ABA9 ABA9 E382A9 ABA9
+ABAA ABAA E382AA ABAA
+ABAB ABAB E382AB ABAB
+ABAC ABAC E382AC ABAC
+ABAD ABAD E382AD ABAD
+ABAE ABAE E382AE ABAE
+ABAF ABAF E382AF ABAF
+ABB0 ABB0 E382B0 ABB0
+ABB1 ABB1 E382B1 ABB1
+ABB2 ABB2 E382B2 ABB2
+ABB3 ABB3 E382B3 ABB3
+ABB4 ABB4 E382B4 ABB4
+ABB5 ABB5 E382B5 ABB5
+ABB6 ABB6 E382B6 ABB6
+ABB7 ABB7 E382B7 ABB7
+ABB8 ABB8 E382B8 ABB8
+ABB9 ABB9 E382B9 ABB9
+ABBA ABBA E382BA ABBA
+ABBB ABBB E382BB ABBB
+ABBC ABBC E382BC ABBC
+ABBD ABBD E382BD ABBD
+ABBE ABBE E382BE ABBE
+ABBF ABBF E382BF ABBF
+ABC0 ABC0 E38380 ABC0
+ABC1 ABC1 E38381 ABC1
+ABC2 ABC2 E38382 ABC2
+ABC3 ABC3 E38383 ABC3
+ABC4 ABC4 E38384 ABC4
+ABC5 ABC5 E38385 ABC5
+ABC6 ABC6 E38386 ABC6
+ABC7 ABC7 E38387 ABC7
+ABC8 ABC8 E38388 ABC8
+ABC9 ABC9 E38389 ABC9
+ABCA ABCA E3838A ABCA
+ABCB ABCB E3838B ABCB
+ABCC ABCC E3838C ABCC
+ABCD ABCD E3838D ABCD
+ABCE ABCE E3838E ABCE
+ABCF ABCF E3838F ABCF
+ABD0 ABD0 E38390 ABD0
+ABD1 ABD1 E38391 ABD1
+ABD2 ABD2 E38392 ABD2
+ABD3 ABD3 E38393 ABD3
+ABD4 ABD4 E38394 ABD4
+ABD5 ABD5 E38395 ABD5
+ABD6 ABD6 E38396 ABD6
+ABD7 ABD7 E38397 ABD7
+ABD8 ABD8 E38398 ABD8
+ABD9 ABD9 E38399 ABD9
+ABDA ABDA E3839A ABDA
+ABDB ABDB E3839B ABDB
+ABDC ABDC E3839C ABDC
+ABDD ABDD E3839D ABDD
+ABDE ABDE E3839E ABDE
+ABDF ABDF E3839F ABDF
+ABE0 ABE0 E383A0 ABE0
+ABE1 ABE1 E383A1 ABE1
+ABE2 ABE2 E383A2 ABE2
+ABE3 ABE3 E383A3 ABE3
+ABE4 ABE4 E383A4 ABE4
+ABE5 ABE5 E383A5 ABE5
+ABE6 ABE6 E383A6 ABE6
+ABE7 ABE7 E383A7 ABE7
+ABE8 ABE8 E383A8 ABE8
+ABE9 ABE9 E383A9 ABE9
+ABEA ABEA E383AA ABEA
+ABEB ABEB E383AB ABEB
+ABEC ABEC E383AC ABEC
+ABED ABED E383AD ABED
+ABEE ABEE E383AE ABEE
+ABEF ABEF E383AF ABEF
+ABF0 ABF0 E383B0 ABF0
+ABF1 ABF1 E383B1 ABF1
+ABF2 ABF2 E383B2 ABF2
+ABF3 ABF3 E383B3 ABF3
+ABF4 ABF4 E383B4 ABF4
+ABF5 ABF5 E383B5 ABF5
+ABF6 ABF6 E383B6 ABF6
+AC41 AC41 ECB3BE AC41
+AC42 AC42 ECB3BF AC42
+AC43 AC43 ECB480 AC43
+AC44 AC44 ECB482 AC44
+AC45 AC45 ECB483 AC45
+AC46 AC46 ECB484 AC46
+AC47 AC47 ECB485 AC47
+AC48 AC48 ECB486 AC48
+AC49 AC49 ECB487 AC49
+AC4A AC4A ECB48A AC4A
+AC4B AC4B ECB48B AC4B
+AC4C AC4C ECB48D AC4C
+AC4D AC4D ECB48E AC4D
+AC4E AC4E ECB48F AC4E
+AC4F AC4F ECB491 AC4F
+AC50 AC50 ECB492 AC50
+AC51 AC51 ECB493 AC51
+AC52 AC52 ECB494 AC52
+AC53 AC53 ECB495 AC53
+AC54 AC54 ECB496 AC54
+AC55 AC55 ECB497 AC55
+AC56 AC56 ECB49A AC56
+AC57 AC57 ECB49C AC57
+AC58 AC58 ECB49E AC58
+AC59 AC59 ECB49F AC59
+AC5A AC5A ECB4A0 AC5A
+AC61 AC61 ECB4A1 AC61
+AC62 AC62 ECB4A2 AC62
+AC63 AC63 ECB4A3 AC63
+AC64 AC64 ECB4A5 AC64
+AC65 AC65 ECB4A6 AC65
+AC66 AC66 ECB4A7 AC66
+AC67 AC67 ECB4A9 AC67
+AC68 AC68 ECB4AA AC68
+AC69 AC69 ECB4AB AC69
+AC6A AC6A ECB4AD AC6A
+AC6B AC6B ECB4AE AC6B
+AC6C AC6C ECB4AF AC6C
+AC6D AC6D ECB4B0 AC6D
+AC6E AC6E ECB4B1 AC6E
+AC6F AC6F ECB4B2 AC6F
+AC70 AC70 ECB4B3 AC70
+AC71 AC71 ECB4B4 AC71
+AC72 AC72 ECB4B5 AC72
+AC73 AC73 ECB4B6 AC73
+AC74 AC74 ECB4B7 AC74
+AC75 AC75 ECB4B8 AC75
+AC76 AC76 ECB4BA AC76
+AC77 AC77 ECB4BB AC77
+AC78 AC78 ECB4BC AC78
+AC79 AC79 ECB4BD AC79
+AC7A AC7A ECB4BE AC7A
+AC81 AC81 ECB4BF AC81
+AC82 AC82 ECB580 AC82
+AC83 AC83 ECB581 AC83
+AC84 AC84 ECB582 AC84
+AC85 AC85 ECB583 AC85
+AC86 AC86 ECB584 AC86
+AC87 AC87 ECB585 AC87
+AC88 AC88 ECB586 AC88
+AC89 AC89 ECB587 AC89
+AC8A AC8A ECB588 AC8A
+AC8B AC8B ECB589 AC8B
+AC8C AC8C ECB58A AC8C
+AC8D AC8D ECB58B AC8D
+AC8E AC8E ECB58C AC8E
+AC8F AC8F ECB58D AC8F
+AC90 AC90 ECB58E AC90
+AC91 AC91 ECB58F AC91
+AC92 AC92 ECB590 AC92
+AC93 AC93 ECB591 AC93
+AC94 AC94 ECB592 AC94
+AC95 AC95 ECB593 AC95
+AC96 AC96 ECB594 AC96
+AC97 AC97 ECB595 AC97
+AC98 AC98 ECB596 AC98
+AC99 AC99 ECB597 AC99
+AC9A AC9A ECB598 AC9A
+AC9B AC9B ECB599 AC9B
+AC9C AC9C ECB59A AC9C
+AC9D AC9D ECB59B AC9D
+AC9E AC9E ECB59D AC9E
+AC9F AC9F ECB59E AC9F
+ACA0 ACA0 ECB59F ACA0
+ACA1 ACA1 D090 ACA1
+ACA2 ACA2 D091 ACA2
+ACA3 ACA3 D092 ACA3
+ACA4 ACA4 D093 ACA4
+ACA5 ACA5 D094 ACA5
+ACA6 ACA6 D095 ACA6
+ACA7 ACA7 D081 ACA7
+ACA8 ACA8 D096 ACA8
+ACA9 ACA9 D097 ACA9
+ACAA ACAA D098 ACAA
+ACAB ACAB D099 ACAB
+ACAC ACAC D09A ACAC
+ACAD ACAD D09B ACAD
+ACAE ACAE D09C ACAE
+ACAF ACAF D09D ACAF
+ACB0 ACB0 D09E ACB0
+ACB1 ACB1 D09F ACB1
+ACB2 ACB2 D0A0 ACB2
+ACB3 ACB3 D0A1 ACB3
+ACB4 ACB4 D0A2 ACB4
+ACB5 ACB5 D0A3 ACB5
+ACB6 ACB6 D0A4 ACB6
+ACB7 ACB7 D0A5 ACB7
+ACB8 ACB8 D0A6 ACB8
+ACB9 ACB9 D0A7 ACB9
+ACBA ACBA D0A8 ACBA
+ACBB ACBB D0A9 ACBB
+ACBC ACBC D0AA ACBC
+ACBD ACBD D0AB ACBD
+ACBE ACBE D0AC ACBE
+ACBF ACBF D0AD ACBF
+ACC0 ACC0 D0AE ACC0
+ACC1 ACC1 D0AF ACC1
+ACD1 ACD1 D0B0 ACD1
+ACD2 ACD2 D0B1 ACD2
+ACD3 ACD3 D0B2 ACD3
+ACD4 ACD4 D0B3 ACD4
+ACD5 ACD5 D0B4 ACD5
+ACD6 ACD6 D0B5 ACD6
+ACD7 ACD7 D191 ACD7
+ACD8 ACD8 D0B6 ACD8
+ACD9 ACD9 D0B7 ACD9
+ACDA ACDA D0B8 ACDA
+ACDB ACDB D0B9 ACDB
+ACDC ACDC D0BA ACDC
+ACDD ACDD D0BB ACDD
+ACDE ACDE D0BC ACDE
+ACDF ACDF D0BD ACDF
+ACE0 ACE0 D0BE ACE0
+ACE1 ACE1 D0BF ACE1
+ACE2 ACE2 D180 ACE2
+ACE3 ACE3 D181 ACE3
+ACE4 ACE4 D182 ACE4
+ACE5 ACE5 D183 ACE5
+ACE6 ACE6 D184 ACE6
+ACE7 ACE7 D185 ACE7
+ACE8 ACE8 D186 ACE8
+ACE9 ACE9 D187 ACE9
+ACEA ACEA D188 ACEA
+ACEB ACEB D189 ACEB
+ACEC ACEC D18A ACEC
+ACED ACED D18B ACED
+ACEE ACEE D18C ACEE
+ACEF ACEF D18D ACEF
+ACF0 ACF0 D18E ACF0
+ACF1 ACF1 D18F ACF1
+AD41 AD41 ECB5A1 AD41
+AD42 AD42 ECB5A2 AD42
+AD43 AD43 ECB5A3 AD43
+AD44 AD44 ECB5A5 AD44
+AD45 AD45 ECB5A6 AD45
+AD46 AD46 ECB5A7 AD46
+AD47 AD47 ECB5A8 AD47
+AD48 AD48 ECB5A9 AD48
+AD49 AD49 ECB5AA AD49
+AD4A AD4A ECB5AB AD4A
+AD4B AD4B ECB5AE AD4B
+AD4C AD4C ECB5B0 AD4C
+AD4D AD4D ECB5B2 AD4D
+AD4E AD4E ECB5B3 AD4E
+AD4F AD4F ECB5B4 AD4F
+AD50 AD50 ECB5B5 AD50
+AD51 AD51 ECB5B6 AD51
+AD52 AD52 ECB5B7 AD52
+AD53 AD53 ECB5B9 AD53
+AD54 AD54 ECB5BA AD54
+AD55 AD55 ECB5BB AD55
+AD56 AD56 ECB5BC AD56
+AD57 AD57 ECB5BD AD57
+AD58 AD58 ECB5BE AD58
+AD59 AD59 ECB5BF AD59
+AD5A AD5A ECB680 AD5A
+AD61 AD61 ECB681 AD61
+AD62 AD62 ECB682 AD62
+AD63 AD63 ECB683 AD63
+AD64 AD64 ECB684 AD64
+AD65 AD65 ECB685 AD65
+AD66 AD66 ECB686 AD66
+AD67 AD67 ECB687 AD67
+AD68 AD68 ECB689 AD68
+AD69 AD69 ECB68A AD69
+AD6A AD6A ECB68B AD6A
+AD6B AD6B ECB68C AD6B
+AD6C AD6C ECB68D AD6C
+AD6D AD6D ECB68E AD6D
+AD6E AD6E ECB68F AD6E
+AD6F AD6F ECB690 AD6F
+AD70 AD70 ECB691 AD70
+AD71 AD71 ECB692 AD71
+AD72 AD72 ECB693 AD72
+AD73 AD73 ECB696 AD73
+AD74 AD74 ECB697 AD74
+AD75 AD75 ECB699 AD75
+AD76 AD76 ECB69A AD76
+AD77 AD77 ECB69B AD77
+AD78 AD78 ECB69D AD78
+AD79 AD79 ECB69E AD79
+AD7A AD7A ECB69F AD7A
+AD81 AD81 ECB6A0 AD81
+AD82 AD82 ECB6A1 AD82
+AD83 AD83 ECB6A2 AD83
+AD84 AD84 ECB6A3 AD84
+AD85 AD85 ECB6A6 AD85
+AD86 AD86 ECB6A8 AD86
+AD87 AD87 ECB6AA AD87
+AD88 AD88 ECB6AB AD88
+AD89 AD89 ECB6AC AD89
+AD8A AD8A ECB6AD AD8A
+AD8B AD8B ECB6AE AD8B
+AD8C AD8C ECB6AF AD8C
+AD8D AD8D ECB6B1 AD8D
+AD8E AD8E ECB6B2 AD8E
+AD8F AD8F ECB6B3 AD8F
+AD90 AD90 ECB6B4 AD90
+AD91 AD91 ECB6B5 AD91
+AD92 AD92 ECB6B6 AD92
+AD93 AD93 ECB6B7 AD93
+AD94 AD94 ECB6B8 AD94
+AD95 AD95 ECB6B9 AD95
+AD96 AD96 ECB6BA AD96
+AD97 AD97 ECB6BB AD97
+AD98 AD98 ECB6BC AD98
+AD99 AD99 ECB6BD AD99
+AD9A AD9A ECB6BE AD9A
+AD9B AD9B ECB6BF AD9B
+AD9C AD9C ECB780 AD9C
+AD9D AD9D ECB781 AD9D
+AD9E AD9E ECB782 AD9E
+AD9F AD9F ECB783 AD9F
+ADA0 ADA0 ECB785 ADA0
+AE41 AE41 ECB786 AE41
+AE42 AE42 ECB787 AE42
+AE43 AE43 ECB788 AE43
+AE44 AE44 ECB789 AE44
+AE45 AE45 ECB78A AE45
+AE46 AE46 ECB78B AE46
+AE47 AE47 ECB78D AE47
+AE48 AE48 ECB78E AE48
+AE49 AE49 ECB78F AE49
+AE4A AE4A ECB791 AE4A
+AE4B AE4B ECB792 AE4B
+AE4C AE4C ECB793 AE4C
+AE4D AE4D ECB794 AE4D
+AE4E AE4E ECB795 AE4E
+AE4F AE4F ECB796 AE4F
+AE50 AE50 ECB797 AE50
+AE51 AE51 ECB798 AE51
+AE52 AE52 ECB799 AE52
+AE53 AE53 ECB79A AE53
+AE54 AE54 ECB79B AE54
+AE55 AE55 ECB79C AE55
+AE56 AE56 ECB79D AE56
+AE57 AE57 ECB79E AE57
+AE58 AE58 ECB79F AE58
+AE59 AE59 ECB7A0 AE59
+AE5A AE5A ECB7A1 AE5A
+AE61 AE61 ECB7A2 AE61
+AE62 AE62 ECB7A3 AE62
+AE63 AE63 ECB7A4 AE63
+AE64 AE64 ECB7A5 AE64
+AE65 AE65 ECB7A6 AE65
+AE66 AE66 ECB7A7 AE66
+AE67 AE67 ECB7A9 AE67
+AE68 AE68 ECB7AA AE68
+AE69 AE69 ECB7AB AE69
+AE6A AE6A ECB7AD AE6A
+AE6B AE6B ECB7AE AE6B
+AE6C AE6C ECB7AF AE6C
+AE6D AE6D ECB7B1 AE6D
+AE6E AE6E ECB7B2 AE6E
+AE6F AE6F ECB7B3 AE6F
+AE70 AE70 ECB7B4 AE70
+AE71 AE71 ECB7B5 AE71
+AE72 AE72 ECB7B6 AE72
+AE73 AE73 ECB7B7 AE73
+AE74 AE74 ECB7BA AE74
+AE75 AE75 ECB7BC AE75
+AE76 AE76 ECB7BE AE76
+AE77 AE77 ECB7BF AE77
+AE78 AE78 ECB880 AE78
+AE79 AE79 ECB881 AE79
+AE7A AE7A ECB882 AE7A
+AE81 AE81 ECB883 AE81
+AE82 AE82 ECB885 AE82
+AE83 AE83 ECB886 AE83
+AE84 AE84 ECB887 AE84
+AE85 AE85 ECB889 AE85
+AE86 AE86 ECB88A AE86
+AE87 AE87 ECB88B AE87
+AE88 AE88 ECB88D AE88
+AE89 AE89 ECB88E AE89
+AE8A AE8A ECB88F AE8A
+AE8B AE8B ECB890 AE8B
+AE8C AE8C ECB891 AE8C
+AE8D AE8D ECB892 AE8D
+AE8E AE8E ECB893 AE8E
+AE8F AE8F ECB895 AE8F
+AE90 AE90 ECB896 AE90
+AE91 AE91 ECB897 AE91
+AE92 AE92 ECB898 AE92
+AE93 AE93 ECB89A AE93
+AE94 AE94 ECB89B AE94
+AE95 AE95 ECB89C AE95
+AE96 AE96 ECB89D AE96
+AE97 AE97 ECB89E AE97
+AE98 AE98 ECB89F AE98
+AE99 AE99 ECB8A2 AE99
+AE9A AE9A ECB8A3 AE9A
+AE9B AE9B ECB8A5 AE9B
+AE9C AE9C ECB8A6 AE9C
+AE9D AE9D ECB8A7 AE9D
+AE9E AE9E ECB8A9 AE9E
+AE9F AE9F ECB8AA AE9F
+AEA0 AEA0 ECB8AB AEA0
+AF41 AF41 ECB8AC AF41
+AF42 AF42 ECB8AD AF42
+AF43 AF43 ECB8AE AF43
+AF44 AF44 ECB8AF AF44
+AF45 AF45 ECB8B2 AF45
+AF46 AF46 ECB8B4 AF46
+AF47 AF47 ECB8B6 AF47
+AF48 AF48 ECB8B7 AF48
+AF49 AF49 ECB8B8 AF49
+AF4A AF4A ECB8B9 AF4A
+AF4B AF4B ECB8BA AF4B
+AF4C AF4C ECB8BB AF4C
+AF4D AF4D ECB8BC AF4D
+AF4E AF4E ECB8BD AF4E
+AF4F AF4F ECB8BE AF4F
+AF50 AF50 ECB8BF AF50
+AF51 AF51 ECB980 AF51
+AF52 AF52 ECB981 AF52
+AF53 AF53 ECB982 AF53
+AF54 AF54 ECB983 AF54
+AF55 AF55 ECB984 AF55
+AF56 AF56 ECB985 AF56
+AF57 AF57 ECB986 AF57
+AF58 AF58 ECB987 AF58
+AF59 AF59 ECB988 AF59
+AF5A AF5A ECB989 AF5A
+AF61 AF61 ECB98A AF61
+AF62 AF62 ECB98B AF62
+AF63 AF63 ECB98C AF63
+AF64 AF64 ECB98D AF64
+AF65 AF65 ECB98E AF65
+AF66 AF66 ECB98F AF66
+AF67 AF67 ECB990 AF67
+AF68 AF68 ECB991 AF68
+AF69 AF69 ECB992 AF69
+AF6A AF6A ECB993 AF6A
+AF6B AF6B ECB994 AF6B
+AF6C AF6C ECB995 AF6C
+AF6D AF6D ECB996 AF6D
+AF6E AF6E ECB997 AF6E
+AF6F AF6F ECB99A AF6F
+AF70 AF70 ECB99B AF70
+AF71 AF71 ECB99D AF71
+AF72 AF72 ECB99E AF72
+AF73 AF73 ECB9A2 AF73
+AF74 AF74 ECB9A3 AF74
+AF75 AF75 ECB9A4 AF75
+AF76 AF76 ECB9A5 AF76
+AF77 AF77 ECB9A6 AF77
+AF78 AF78 ECB9A7 AF78
+AF79 AF79 ECB9AA AF79
+AF7A AF7A ECB9AC AF7A
+AF81 AF81 ECB9AE AF81
+AF82 AF82 ECB9AF AF82
+AF83 AF83 ECB9B0 AF83
+AF84 AF84 ECB9B1 AF84
+AF85 AF85 ECB9B2 AF85
+AF86 AF86 ECB9B3 AF86
+AF87 AF87 ECB9B6 AF87
+AF88 AF88 ECB9B7 AF88
+AF89 AF89 ECB9B9 AF89
+AF8A AF8A ECB9BA AF8A
+AF8B AF8B ECB9BB AF8B
+AF8C AF8C ECB9BD AF8C
+AF8D AF8D ECB9BE AF8D
+AF8E AF8E ECB9BF AF8E
+AF8F AF8F ECBA80 AF8F
+AF90 AF90 ECBA81 AF90
+AF91 AF91 ECBA82 AF91
+AF92 AF92 ECBA83 AF92
+AF93 AF93 ECBA86 AF93
+AF94 AF94 ECBA88 AF94
+AF95 AF95 ECBA8A AF95
+AF96 AF96 ECBA8B AF96
+AF97 AF97 ECBA8C AF97
+AF98 AF98 ECBA8D AF98
+AF99 AF99 ECBA8E AF99
+AF9A AF9A ECBA8F AF9A
+AF9B AF9B ECBA92 AF9B
+AF9C AF9C ECBA93 AF9C
+AF9D AF9D ECBA95 AF9D
+AF9E AF9E ECBA96 AF9E
+AF9F AF9F ECBA97 AF9F
+AFA0 AFA0 ECBA99 AFA0
+B041 B041 ECBA9A B041
+B042 B042 ECBA9B B042
+B043 B043 ECBA9C B043
+B044 B044 ECBA9D B044
+B045 B045 ECBA9E B045
+B046 B046 ECBA9F B046
+B047 B047 ECBAA2 B047
+B048 B048 ECBAA6 B048
+B049 B049 ECBAA7 B049
+B04A B04A ECBAA8 B04A
+B04B B04B ECBAA9 B04B
+B04C B04C ECBAAA B04C
+B04D B04D ECBAAB B04D
+B04E B04E ECBAAE B04E
+B04F B04F ECBAAF B04F
+B050 B050 ECBAB0 B050
+B051 B051 ECBAB1 B051
+B052 B052 ECBAB2 B052
+B053 B053 ECBAB3 B053
+B054 B054 ECBAB4 B054
+B055 B055 ECBAB5 B055
+B056 B056 ECBAB6 B056
+B057 B057 ECBAB7 B057
+B058 B058 ECBAB8 B058
+B059 B059 ECBAB9 B059
+B05A B05A ECBABA B05A
+B061 B061 ECBABB B061
+B062 B062 ECBABC B062
+B063 B063 ECBABD B063
+B064 B064 ECBABE B064
+B065 B065 ECBABF B065
+B066 B066 ECBB80 B066
+B067 B067 ECBB82 B067
+B068 B068 ECBB83 B068
+B069 B069 ECBB84 B069
+B06A B06A ECBB85 B06A
+B06B B06B ECBB86 B06B
+B06C B06C ECBB87 B06C
+B06D B06D ECBB88 B06D
+B06E B06E ECBB89 B06E
+B06F B06F ECBB8A B06F
+B070 B070 ECBB8B B070
+B071 B071 ECBB8C B071
+B072 B072 ECBB8D B072
+B073 B073 ECBB8E B073
+B074 B074 ECBB8F B074
+B075 B075 ECBB90 B075
+B076 B076 ECBB91 B076
+B077 B077 ECBB92 B077
+B078 B078 ECBB93 B078
+B079 B079 ECBB94 B079
+B07A B07A ECBB95 B07A
+B081 B081 ECBB96 B081
+B082 B082 ECBB97 B082
+B083 B083 ECBB98 B083
+B084 B084 ECBB99 B084
+B085 B085 ECBB9A B085
+B086 B086 ECBB9B B086
+B087 B087 ECBB9C B087
+B088 B088 ECBB9D B088
+B089 B089 ECBB9E B089
+B08A B08A ECBB9F B08A
+B08B B08B ECBBA0 B08B
+B08C B08C ECBBA1 B08C
+B08D B08D ECBBA2 B08D
+B08E B08E ECBBA3 B08E
+B08F B08F ECBBA6 B08F
+B090 B090 ECBBA7 B090
+B091 B091 ECBBA9 B091
+B092 B092 ECBBAA B092
+B093 B093 ECBBAD B093
+B094 B094 ECBBAE B094
+B095 B095 ECBBAF B095
+B096 B096 ECBBB0 B096
+B097 B097 ECBBB1 B097
+B098 B098 ECBBB2 B098
+B099 B099 ECBBB3 B099
+B09A B09A ECBBB6 B09A
+B09B B09B ECBBBA B09B
+B09C B09C ECBBBB B09C
+B09D B09D ECBBBC B09D
+B09E B09E ECBBBD B09E
+B09F B09F ECBBBE B09F
+B0A0 B0A0 ECBBBF B0A0
+B0A1 B0A1 EAB080 B0A1
+B0A2 B0A2 EAB081 B0A2
+B0A3 B0A3 EAB084 B0A3
+B0A4 B0A4 EAB087 B0A4
+B0A5 B0A5 EAB088 B0A5
+B0A6 B0A6 EAB089 B0A6
+B0A7 B0A7 EAB08A B0A7
+B0A8 B0A8 EAB090 B0A8
+B0A9 B0A9 EAB091 B0A9
+B0AA B0AA EAB092 B0AA
+B0AB B0AB EAB093 B0AB
+B0AC B0AC EAB094 B0AC
+B0AD B0AD EAB095 B0AD
+B0AE B0AE EAB096 B0AE
+B0AF B0AF EAB097 B0AF
+B0B0 B0B0 EAB099 B0B0
+B0B1 B0B1 EAB09A B0B1
+B0B2 B0B2 EAB09B B0B2
+B0B3 B0B3 EAB09C B0B3
+B0B4 B0B4 EAB09D B0B4
+B0B5 B0B5 EAB0A0 B0B5
+B0B6 B0B6 EAB0A4 B0B6
+B0B7 B0B7 EAB0AC B0B7
+B0B8 B0B8 EAB0AD B0B8
+B0B9 B0B9 EAB0AF B0B9
+B0BA B0BA EAB0B0 B0BA
+B0BB B0BB EAB0B1 B0BB
+B0BC B0BC EAB0B8 B0BC
+B0BD B0BD EAB0B9 B0BD
+B0BE B0BE EAB0BC B0BE
+B0BF B0BF EAB180 B0BF
+B0C0 B0C0 EAB18B B0C0
+B0C1 B0C1 EAB18D B0C1
+B0C2 B0C2 EAB194 B0C2
+B0C3 B0C3 EAB198 B0C3
+B0C4 B0C4 EAB19C B0C4
+B0C5 B0C5 EAB1B0 B0C5
+B0C6 B0C6 EAB1B1 B0C6
+B0C7 B0C7 EAB1B4 B0C7
+B0C8 B0C8 EAB1B7 B0C8
+B0C9 B0C9 EAB1B8 B0C9
+B0CA B0CA EAB1BA B0CA
+B0CB B0CB EAB280 B0CB
+B0CC B0CC EAB281 B0CC
+B0CD B0CD EAB283 B0CD
+B0CE B0CE EAB284 B0CE
+B0CF B0CF EAB285 B0CF
+B0D0 B0D0 EAB286 B0D0
+B0D1 B0D1 EAB289 B0D1
+B0D2 B0D2 EAB28A B0D2
+B0D3 B0D3 EAB28B B0D3
+B0D4 B0D4 EAB28C B0D4
+B0D5 B0D5 EAB290 B0D5
+B0D6 B0D6 EAB294 B0D6
+B0D7 B0D7 EAB29C B0D7
+B0D8 B0D8 EAB29D B0D8
+B0D9 B0D9 EAB29F B0D9
+B0DA B0DA EAB2A0 B0DA
+B0DB B0DB EAB2A1 B0DB
+B0DC B0DC EAB2A8 B0DC
+B0DD B0DD EAB2A9 B0DD
+B0DE B0DE EAB2AA B0DE
+B0DF B0DF EAB2AC B0DF
+B0E0 B0E0 EAB2AF B0E0
+B0E1 B0E1 EAB2B0 B0E1
+B0E2 B0E2 EAB2B8 B0E2
+B0E3 B0E3 EAB2B9 B0E3
+B0E4 B0E4 EAB2BB B0E4
+B0E5 B0E5 EAB2BC B0E5
+B0E6 B0E6 EAB2BD B0E6
+B0E7 B0E7 EAB381 B0E7
+B0E8 B0E8 EAB384 B0E8
+B0E9 B0E9 EAB388 B0E9
+B0EA B0EA EAB38C B0EA
+B0EB B0EB EAB395 B0EB
+B0EC B0EC EAB397 B0EC
+B0ED B0ED EAB3A0 B0ED
+B0EE B0EE EAB3A1 B0EE
+B0EF B0EF EAB3A4 B0EF
+B0F0 B0F0 EAB3A7 B0F0
+B0F1 B0F1 EAB3A8 B0F1
+B0F2 B0F2 EAB3AA B0F2
+B0F3 B0F3 EAB3AC B0F3
+B0F4 B0F4 EAB3AF B0F4
+B0F5 B0F5 EAB3B0 B0F5
+B0F6 B0F6 EAB3B1 B0F6
+B0F7 B0F7 EAB3B3 B0F7
+B0F8 B0F8 EAB3B5 B0F8
+B0F9 B0F9 EAB3B6 B0F9
+B0FA B0FA EAB3BC B0FA
+B0FB B0FB EAB3BD B0FB
+B0FC B0FC EAB480 B0FC
+B0FD B0FD EAB484 B0FD
+B0FE B0FE EAB486 B0FE
+B141 B141 ECBC82 B141
+B142 B142 ECBC83 B142
+B143 B143 ECBC85 B143
+B144 B144 ECBC86 B144
+B145 B145 ECBC87 B145
+B146 B146 ECBC89 B146
+B147 B147 ECBC8A B147
+B148 B148 ECBC8B B148
+B149 B149 ECBC8C B149
+B14A B14A ECBC8D B14A
+B14B B14B ECBC8E B14B
+B14C B14C ECBC8F B14C
+B14D B14D ECBC92 B14D
+B14E B14E ECBC94 B14E
+B14F B14F ECBC96 B14F
+B150 B150 ECBC97 B150
+B151 B151 ECBC98 B151
+B152 B152 ECBC99 B152
+B153 B153 ECBC9A B153
+B154 B154 ECBC9B B154
+B155 B155 ECBC9D B155
+B156 B156 ECBC9E B156
+B157 B157 ECBC9F B157
+B158 B158 ECBCA1 B158
+B159 B159 ECBCA2 B159
+B15A B15A ECBCA3 B15A
+B161 B161 ECBCA5 B161
+B162 B162 ECBCA6 B162
+B163 B163 ECBCA7 B163
+B164 B164 ECBCA8 B164
+B165 B165 ECBCA9 B165
+B166 B166 ECBCAA B166
+B167 B167 ECBCAB B167
+B168 B168 ECBCAE B168
+B169 B169 ECBCB2 B169
+B16A B16A ECBCB3 B16A
+B16B B16B ECBCB4 B16B
+B16C B16C ECBCB5 B16C
+B16D B16D ECBCB6 B16D
+B16E B16E ECBCB7 B16E
+B16F B16F ECBCB9 B16F
+B170 B170 ECBCBA B170
+B171 B171 ECBCBB B171
+B172 B172 ECBCBC B172
+B173 B173 ECBCBD B173
+B174 B174 ECBCBE B174
+B175 B175 ECBCBF B175
+B176 B176 ECBD80 B176
+B177 B177 ECBD81 B177
+B178 B178 ECBD82 B178
+B179 B179 ECBD83 B179
+B17A B17A ECBD84 B17A
+B181 B181 ECBD85 B181
+B182 B182 ECBD86 B182
+B183 B183 ECBD87 B183
+B184 B184 ECBD88 B184
+B185 B185 ECBD89 B185
+B186 B186 ECBD8A B186
+B187 B187 ECBD8B B187
+B188 B188 ECBD8C B188
+B189 B189 ECBD8D B189
+B18A B18A ECBD8E B18A
+B18B B18B ECBD8F B18B
+B18C B18C ECBD90 B18C
+B18D B18D ECBD91 B18D
+B18E B18E ECBD92 B18E
+B18F B18F ECBD93 B18F
+B190 B190 ECBD96 B190
+B191 B191 ECBD97 B191
+B192 B192 ECBD99 B192
+B193 B193 ECBD9A B193
+B194 B194 ECBD9B B194
+B195 B195 ECBD9D B195
+B196 B196 ECBD9E B196
+B197 B197 ECBD9F B197
+B198 B198 ECBDA0 B198
+B199 B199 ECBDA1 B199
+B19A B19A ECBDA2 B19A
+B19B B19B ECBDA3 B19B
+B19C B19C ECBDA6 B19C
+B19D B19D ECBDA8 B19D
+B19E B19E ECBDAA B19E
+B19F B19F ECBDAB B19F
+B1A0 B1A0 ECBDAC B1A0
+B1A1 B1A1 EAB48C B1A1
+B1A2 B1A2 EAB48D B1A2
+B1A3 B1A3 EAB48F B1A3
+B1A4 B1A4 EAB491 B1A4
+B1A5 B1A5 EAB498 B1A5
+B1A6 B1A6 EAB49C B1A6
+B1A7 B1A7 EAB4A0 B1A7
+B1A8 B1A8 EAB4A9 B1A8
+B1A9 B1A9 EAB4AC B1A9
+B1AA B1AA EAB4AD B1AA
+B1AB B1AB EAB4B4 B1AB
+B1AC B1AC EAB4B5 B1AC
+B1AD B1AD EAB4B8 B1AD
+B1AE B1AE EAB4BC B1AE
+B1AF B1AF EAB584 B1AF
+B1B0 B1B0 EAB585 B1B0
+B1B1 B1B1 EAB587 B1B1
+B1B2 B1B2 EAB589 B1B2
+B1B3 B1B3 EAB590 B1B3
+B1B4 B1B4 EAB594 B1B4
+B1B5 B1B5 EAB598 B1B5
+B1B6 B1B6 EAB5A1 B1B6
+B1B7 B1B7 EAB5A3 B1B7
+B1B8 B1B8 EAB5AC B1B8
+B1B9 B1B9 EAB5AD B1B9
+B1BA B1BA EAB5B0 B1BA
+B1BB B1BB EAB5B3 B1BB
+B1BC B1BC EAB5B4 B1BC
+B1BD B1BD EAB5B5 B1BD
+B1BE B1BE EAB5B6 B1BE
+B1BF B1BF EAB5BB B1BF
+B1C0 B1C0 EAB5BC B1C0
+B1C1 B1C1 EAB5BD B1C1
+B1C2 B1C2 EAB5BF B1C2
+B1C3 B1C3 EAB681 B1C3
+B1C4 B1C4 EAB682 B1C4
+B1C5 B1C5 EAB688 B1C5
+B1C6 B1C6 EAB689 B1C6
+B1C7 B1C7 EAB68C B1C7
+B1C8 B1C8 EAB690 B1C8
+B1C9 B1C9 EAB69C B1C9
+B1CA B1CA EAB69D B1CA
+B1CB B1CB EAB6A4 B1CB
+B1CC B1CC EAB6B7 B1CC
+B1CD B1CD EAB780 B1CD
+B1CE B1CE EAB781 B1CE
+B1CF B1CF EAB784 B1CF
+B1D0 B1D0 EAB788 B1D0
+B1D1 B1D1 EAB790 B1D1
+B1D2 B1D2 EAB791 B1D2
+B1D3 B1D3 EAB793 B1D3
+B1D4 B1D4 EAB79C B1D4
+B1D5 B1D5 EAB7A0 B1D5
+B1D6 B1D6 EAB7A4 B1D6
+B1D7 B1D7 EAB7B8 B1D7
+B1D8 B1D8 EAB7B9 B1D8
+B1D9 B1D9 EAB7BC B1D9
+B1DA B1DA EAB7BF B1DA
+B1DB B1DB EAB880 B1DB
+B1DC B1DC EAB881 B1DC
+B1DD B1DD EAB888 B1DD
+B1DE B1DE EAB889 B1DE
+B1DF B1DF EAB88B B1DF
+B1E0 B1E0 EAB88D B1E0
+B1E1 B1E1 EAB894 B1E1
+B1E2 B1E2 EAB8B0 B1E2
+B1E3 B1E3 EAB8B1 B1E3
+B1E4 B1E4 EAB8B4 B1E4
+B1E5 B1E5 EAB8B7 B1E5
+B1E6 B1E6 EAB8B8 B1E6
+B1E7 B1E7 EAB8BA B1E7
+B1E8 B1E8 EAB980 B1E8
+B1E9 B1E9 EAB981 B1E9
+B1EA B1EA EAB983 B1EA
+B1EB B1EB EAB985 B1EB
+B1EC B1EC EAB986 B1EC
+B1ED B1ED EAB98A B1ED
+B1EE B1EE EAB98C B1EE
+B1EF B1EF EAB98D B1EF
+B1F0 B1F0 EAB98E B1F0
+B1F1 B1F1 EAB990 B1F1
+B1F2 B1F2 EAB994 B1F2
+B1F3 B1F3 EAB996 B1F3
+B1F4 B1F4 EAB99C B1F4
+B1F5 B1F5 EAB99D B1F5
+B1F6 B1F6 EAB99F B1F6
+B1F7 B1F7 EAB9A0 B1F7
+B1F8 B1F8 EAB9A1 B1F8
+B1F9 B1F9 EAB9A5 B1F9
+B1FA B1FA EAB9A8 B1FA
+B1FB B1FB EAB9A9 B1FB
+B1FC B1FC EAB9AC B1FC
+B1FD B1FD EAB9B0 B1FD
+B1FE B1FE EAB9B8 B1FE
+B241 B241 ECBDAD B241
+B242 B242 ECBDAE B242
+B243 B243 ECBDAF B243
+B244 B244 ECBDB2 B244
+B245 B245 ECBDB3 B245
+B246 B246 ECBDB5 B246
+B247 B247 ECBDB6 B247
+B248 B248 ECBDB7 B248
+B249 B249 ECBDB9 B249
+B24A B24A ECBDBA B24A
+B24B B24B ECBDBB B24B
+B24C B24C ECBDBC B24C
+B24D B24D ECBDBD B24D
+B24E B24E ECBDBE B24E
+B24F B24F ECBDBF B24F
+B250 B250 ECBE81 B250
+B251 B251 ECBE82 B251
+B252 B252 ECBE83 B252
+B253 B253 ECBE84 B253
+B254 B254 ECBE86 B254
+B255 B255 ECBE87 B255
+B256 B256 ECBE88 B256
+B257 B257 ECBE89 B257
+B258 B258 ECBE8A B258
+B259 B259 ECBE8B B259
+B25A B25A ECBE8D B25A
+B261 B261 ECBE8E B261
+B262 B262 ECBE8F B262
+B263 B263 ECBE90 B263
+B264 B264 ECBE91 B264
+B265 B265 ECBE92 B265
+B266 B266 ECBE93 B266
+B267 B267 ECBE94 B267
+B268 B268 ECBE95 B268
+B269 B269 ECBE96 B269
+B26A B26A ECBE97 B26A
+B26B B26B ECBE98 B26B
+B26C B26C ECBE99 B26C
+B26D B26D ECBE9A B26D
+B26E B26E ECBE9B B26E
+B26F B26F ECBE9C B26F
+B270 B270 ECBE9D B270
+B271 B271 ECBE9E B271
+B272 B272 ECBE9F B272
+B273 B273 ECBEA0 B273
+B274 B274 ECBEA2 B274
+B275 B275 ECBEA3 B275
+B276 B276 ECBEA4 B276
+B277 B277 ECBEA5 B277
+B278 B278 ECBEA6 B278
+B279 B279 ECBEA7 B279
+B27A B27A ECBEA9 B27A
+B281 B281 ECBEAA B281
+B282 B282 ECBEAB B282
+B283 B283 ECBEAC B283
+B284 B284 ECBEAD B284
+B285 B285 ECBEAE B285
+B286 B286 ECBEAF B286
+B287 B287 ECBEB1 B287
+B288 B288 ECBEB2 B288
+B289 B289 ECBEB3 B289
+B28A B28A ECBEB4 B28A
+B28B B28B ECBEB5 B28B
+B28C B28C ECBEB6 B28C
+B28D B28D ECBEB7 B28D
+B28E B28E ECBEB8 B28E
+B28F B28F ECBEB9 B28F
+B290 B290 ECBEBA B290
+B291 B291 ECBEBB B291
+B292 B292 ECBEBC B292
+B293 B293 ECBEBD B293
+B294 B294 ECBEBE B294
+B295 B295 ECBEBF B295
+B296 B296 ECBF80 B296
+B297 B297 ECBF81 B297
+B298 B298 ECBF82 B298
+B299 B299 ECBF83 B299
+B29A B29A ECBF85 B29A
+B29B B29B ECBF86 B29B
+B29C B29C ECBF87 B29C
+B29D B29D ECBF88 B29D
+B29E B29E ECBF89 B29E
+B29F B29F ECBF8A B29F
+B2A0 B2A0 ECBF8B B2A0
+B2A1 B2A1 EAB9B9 B2A1
+B2A2 B2A2 EAB9BB B2A2
+B2A3 B2A3 EAB9BC B2A3
+B2A4 B2A4 EAB9BD B2A4
+B2A5 B2A5 EABA84 B2A5
+B2A6 B2A6 EABA85 B2A6
+B2A7 B2A7 EABA8C B2A7
+B2A8 B2A8 EABABC B2A8
+B2A9 B2A9 EABABD B2A9
+B2AA B2AA EABABE B2AA
+B2AB B2AB EABB80 B2AB
+B2AC B2AC EABB84 B2AC
+B2AD B2AD EABB8C B2AD
+B2AE B2AE EABB8D B2AE
+B2AF B2AF EABB8F B2AF
+B2B0 B2B0 EABB90 B2B0
+B2B1 B2B1 EABB91 B2B1
+B2B2 B2B2 EABB98 B2B2
+B2B3 B2B3 EABB99 B2B3
+B2B4 B2B4 EABB9C B2B4
+B2B5 B2B5 EABBA8 B2B5
+B2B6 B2B6 EABBAB B2B6
+B2B7 B2B7 EABBAD B2B7
+B2B8 B2B8 EABBB4 B2B8
+B2B9 B2B9 EABBB8 B2B9
+B2BA B2BA EABBBC B2BA
+B2BB B2BB EABC87 B2BB
+B2BC B2BC EABC88 B2BC
+B2BD B2BD EABC8D B2BD
+B2BE B2BE EABC90 B2BE
+B2BF B2BF EABCAC B2BF
+B2C0 B2C0 EABCAD B2C0
+B2C1 B2C1 EABCB0 B2C1
+B2C2 B2C2 EABCB2 B2C2
+B2C3 B2C3 EABCB4 B2C3
+B2C4 B2C4 EABCBC B2C4
+B2C5 B2C5 EABCBD B2C5
+B2C6 B2C6 EABCBF B2C6
+B2C7 B2C7 EABD81 B2C7
+B2C8 B2C8 EABD82 B2C8
+B2C9 B2C9 EABD83 B2C9
+B2CA B2CA EABD88 B2CA
+B2CB B2CB EABD89 B2CB
+B2CC B2CC EABD90 B2CC
+B2CD B2CD EABD9C B2CD
+B2CE B2CE EABD9D B2CE
+B2CF B2CF EABDA4 B2CF
+B2D0 B2D0 EABDA5 B2D0
+B2D1 B2D1 EABDB9 B2D1
+B2D2 B2D2 EABE80 B2D2
+B2D3 B2D3 EABE84 B2D3
+B2D4 B2D4 EABE88 B2D4
+B2D5 B2D5 EABE90 B2D5
+B2D6 B2D6 EABE91 B2D6
+B2D7 B2D7 EABE95 B2D7
+B2D8 B2D8 EABE9C B2D8
+B2D9 B2D9 EABEB8 B2D9
+B2DA B2DA EABEB9 B2DA
+B2DB B2DB EABEBC B2DB
+B2DC B2DC EABF80 B2DC
+B2DD B2DD EABF87 B2DD
+B2DE B2DE EABF88 B2DE
+B2DF B2DF EABF89 B2DF
+B2E0 B2E0 EABF8B B2E0
+B2E1 B2E1 EABF8D B2E1
+B2E2 B2E2 EABF8E B2E2
+B2E3 B2E3 EABF94 B2E3
+B2E4 B2E4 EABF9C B2E4
+B2E5 B2E5 EABFA8 B2E5
+B2E6 B2E6 EABFA9 B2E6
+B2E7 B2E7 EABFB0 B2E7
+B2E8 B2E8 EABFB1 B2E8
+B2E9 B2E9 EABFB4 B2E9
+B2EA B2EA EABFB8 B2EA
+B2EB B2EB EB8080 B2EB
+B2EC B2EC EB8081 B2EC
+B2ED B2ED EB8084 B2ED
+B2EE B2EE EB808C B2EE
+B2EF B2EF EB8090 B2EF
+B2F0 B2F0 EB8094 B2F0
+B2F1 B2F1 EB809C B2F1
+B2F2 B2F2 EB809D B2F2
+B2F3 B2F3 EB80A8 B2F3
+B2F4 B2F4 EB8184 B2F4
+B2F5 B2F5 EB8185 B2F5
+B2F6 B2F6 EB8188 B2F6
+B2F7 B2F7 EB818A B2F7
+B2F8 B2F8 EB818C B2F8
+B2F9 B2F9 EB818E B2F9
+B2FA B2FA EB8193 B2FA
+B2FB B2FB EB8194 B2FB
+B2FC B2FC EB8195 B2FC
+B2FD B2FD EB8197 B2FD
+B2FE B2FE EB8199 B2FE
+B341 B341 ECBF8C B341
+B342 B342 ECBF8D B342
+B343 B343 ECBF8E B343
+B344 B344 ECBF8F B344
+B345 B345 ECBF90 B345
+B346 B346 ECBF91 B346
+B347 B347 ECBF92 B347
+B348 B348 ECBF93 B348
+B349 B349 ECBF94 B349
+B34A B34A ECBF95 B34A
+B34B B34B ECBF96 B34B
+B34C B34C ECBF97 B34C
+B34D B34D ECBF98 B34D
+B34E B34E ECBF99 B34E
+B34F B34F ECBF9A B34F
+B350 B350 ECBF9B B350
+B351 B351 ECBF9C B351
+B352 B352 ECBF9D B352
+B353 B353 ECBF9E B353
+B354 B354 ECBF9F B354
+B355 B355 ECBFA2 B355
+B356 B356 ECBFA3 B356
+B357 B357 ECBFA5 B357
+B358 B358 ECBFA6 B358
+B359 B359 ECBFA7 B359
+B35A B35A ECBFA9 B35A
+B361 B361 ECBFAA B361
+B362 B362 ECBFAB B362
+B363 B363 ECBFAC B363
+B364 B364 ECBFAD B364
+B365 B365 ECBFAE B365
+B366 B366 ECBFAF B366
+B367 B367 ECBFB2 B367
+B368 B368 ECBFB4 B368
+B369 B369 ECBFB6 B369
+B36A B36A ECBFB7 B36A
+B36B B36B ECBFB8 B36B
+B36C B36C ECBFB9 B36C
+B36D B36D ECBFBA B36D
+B36E B36E ECBFBB B36E
+B36F B36F ECBFBD B36F
+B370 B370 ECBFBE B370
+B371 B371 ECBFBF B371
+B372 B372 ED8081 B372
+B373 B373 ED8082 B373
+B374 B374 ED8083 B374
+B375 B375 ED8085 B375
+B376 B376 ED8086 B376
+B377 B377 ED8087 B377
+B378 B378 ED8088 B378
+B379 B379 ED8089 B379
+B37A B37A ED808A B37A
+B381 B381 ED808B B381
+B382 B382 ED808C B382
+B383 B383 ED808D B383
+B384 B384 ED808E B384
+B385 B385 ED808F B385
+B386 B386 ED8090 B386
+B387 B387 ED8092 B387
+B388 B388 ED8093 B388
+B389 B389 ED8094 B389
+B38A B38A ED8095 B38A
+B38B B38B ED8096 B38B
+B38C B38C ED8097 B38C
+B38D B38D ED8099 B38D
+B38E B38E ED809A B38E
+B38F B38F ED809B B38F
+B390 B390 ED809C B390
+B391 B391 ED809D B391
+B392 B392 ED809E B392
+B393 B393 ED809F B393
+B394 B394 ED80A0 B394
+B395 B395 ED80A1 B395
+B396 B396 ED80A2 B396
+B397 B397 ED80A3 B397
+B398 B398 ED80A4 B398
+B399 B399 ED80A5 B399
+B39A B39A ED80A6 B39A
+B39B B39B ED80A7 B39B
+B39C B39C ED80A8 B39C
+B39D B39D ED80A9 B39D
+B39E B39E ED80AA B39E
+B39F B39F ED80AB B39F
+B3A0 B3A0 ED80AC B3A0
+B3A1 B3A1 EB819D B3A1
+B3A2 B3A2 EB81BC B3A2
+B3A3 B3A3 EB81BD B3A3
+B3A4 B3A4 EB8280 B3A4
+B3A5 B3A5 EB8284 B3A5
+B3A6 B3A6 EB828C B3A6
+B3A7 B3A7 EB828D B3A7
+B3A8 B3A8 EB828F B3A8
+B3A9 B3A9 EB8291 B3A9
+B3AA B3AA EB8298 B3AA
+B3AB B3AB EB8299 B3AB
+B3AC B3AC EB829A B3AC
+B3AD B3AD EB829C B3AD
+B3AE B3AE EB829F B3AE
+B3AF B3AF EB82A0 B3AF
+B3B0 B3B0 EB82A1 B3B0
+B3B1 B3B1 EB82A2 B3B1
+B3B2 B3B2 EB82A8 B3B2
+B3B3 B3B3 EB82A9 B3B3
+B3B4 B3B4 EB82AB B3B4
+B3B5 B3B5 EB82AC B3B5
+B3B6 B3B6 EB82AD B3B6
+B3B7 B3B7 EB82AE B3B7
+B3B8 B3B8 EB82AF B3B8
+B3B9 B3B9 EB82B1 B3B9
+B3BA B3BA EB82B3 B3BA
+B3BB B3BB EB82B4 B3BB
+B3BC B3BC EB82B5 B3BC
+B3BD B3BD EB82B8 B3BD
+B3BE B3BE EB82BC B3BE
+B3BF B3BF EB8384 B3BF
+B3C0 B3C0 EB8385 B3C0
+B3C1 B3C1 EB8387 B3C1
+B3C2 B3C2 EB8388 B3C2
+B3C3 B3C3 EB8389 B3C3
+B3C4 B3C4 EB8390 B3C4
+B3C5 B3C5 EB8391 B3C5
+B3C6 B3C6 EB8394 B3C6
+B3C7 B3C7 EB8398 B3C7
+B3C8 B3C8 EB83A0 B3C8
+B3C9 B3C9 EB83A5 B3C9
+B3CA B3CA EB8488 B3CA
+B3CB B3CB EB8489 B3CB
+B3CC B3CC EB848B B3CC
+B3CD B3CD EB848C B3CD
+B3CE B3CE EB8490 B3CE
+B3CF B3CF EB8492 B3CF
+B3D0 B3D0 EB8493 B3D0
+B3D1 B3D1 EB8498 B3D1
+B3D2 B3D2 EB8499 B3D2
+B3D3 B3D3 EB849B B3D3
+B3D4 B3D4 EB849C B3D4
+B3D5 B3D5 EB849D B3D5
+B3D6 B3D6 EB84A3 B3D6
+B3D7 B3D7 EB84A4 B3D7
+B3D8 B3D8 EB84A5 B3D8
+B3D9 B3D9 EB84A8 B3D9
+B3DA B3DA EB84AC B3DA
+B3DB B3DB EB84B4 B3DB
+B3DC B3DC EB84B5 B3DC
+B3DD B3DD EB84B7 B3DD
+B3DE B3DE EB84B8 B3DE
+B3DF B3DF EB84B9 B3DF
+B3E0 B3E0 EB8580 B3E0
+B3E1 B3E1 EB8581 B3E1
+B3E2 B3E2 EB8584 B3E2
+B3E3 B3E3 EB8588 B3E3
+B3E4 B3E4 EB8590 B3E4
+B3E5 B3E5 EB8591 B3E5
+B3E6 B3E6 EB8594 B3E6
+B3E7 B3E7 EB8595 B3E7
+B3E8 B3E8 EB8598 B3E8
+B3E9 B3E9 EB859C B3E9
+B3EA B3EA EB85A0 B3EA
+B3EB B3EB EB85B8 B3EB
+B3EC B3EC EB85B9 B3EC
+B3ED B3ED EB85BC B3ED
+B3EE B3EE EB8680 B3EE
+B3EF B3EF EB8682 B3EF
+B3F0 B3F0 EB8688 B3F0
+B3F1 B3F1 EB8689 B3F1
+B3F2 B3F2 EB868B B3F2
+B3F3 B3F3 EB868D B3F3
+B3F4 B3F4 EB8692 B3F4
+B3F5 B3F5 EB8693 B3F5
+B3F6 B3F6 EB8694 B3F6
+B3F7 B3F7 EB8698 B3F7
+B3F8 B3F8 EB869C B3F8
+B3F9 B3F9 EB86A8 B3F9
+B3FA B3FA EB878C B3FA
+B3FB B3FB EB8790 B3FB
+B3FC B3FC EB8794 B3FC
+B3FD B3FD EB879C B3FD
+B3FE B3FE EB879D B3FE
+B441 B441 ED80AE B441
+B442 B442 ED80AF B442
+B443 B443 ED80B0 B443
+B444 B444 ED80B1 B444
+B445 B445 ED80B2 B445
+B446 B446 ED80B3 B446
+B447 B447 ED80B6 B447
+B448 B448 ED80B7 B448
+B449 B449 ED80B9 B449
+B44A B44A ED80BA B44A
+B44B B44B ED80BB B44B
+B44C B44C ED80BD B44C
+B44D B44D ED80BE B44D
+B44E B44E ED80BF B44E
+B44F B44F ED8180 B44F
+B450 B450 ED8181 B450
+B451 B451 ED8182 B451
+B452 B452 ED8183 B452
+B453 B453 ED8186 B453
+B454 B454 ED8188 B454
+B455 B455 ED818A B455
+B456 B456 ED818B B456
+B457 B457 ED818C B457
+B458 B458 ED818D B458
+B459 B459 ED818E B459
+B45A B45A ED818F B45A
+B461 B461 ED8191 B461
+B462 B462 ED8192 B462
+B463 B463 ED8193 B463
+B464 B464 ED8195 B464
+B465 B465 ED8196 B465
+B466 B466 ED8197 B466
+B467 B467 ED8199 B467
+B468 B468 ED819A B468
+B469 B469 ED819B B469
+B46A B46A ED819C B46A
+B46B B46B ED819D B46B
+B46C B46C ED819E B46C
+B46D B46D ED819F B46D
+B46E B46E ED81A1 B46E
+B46F B46F ED81A2 B46F
+B470 B470 ED81A3 B470
+B471 B471 ED81A4 B471
+B472 B472 ED81A5 B472
+B473 B473 ED81A6 B473
+B474 B474 ED81A7 B474
+B475 B475 ED81A8 B475
+B476 B476 ED81A9 B476
+B477 B477 ED81AA B477
+B478 B478 ED81AB B478
+B479 B479 ED81AE B479
+B47A B47A ED81AF B47A
+B481 B481 ED81B1 B481
+B482 B482 ED81B2 B482
+B483 B483 ED81B3 B483
+B484 B484 ED81B5 B484
+B485 B485 ED81B6 B485
+B486 B486 ED81B7 B486
+B487 B487 ED81B8 B487
+B488 B488 ED81B9 B488
+B489 B489 ED81BA B489
+B48A B48A ED81BB B48A
+B48B B48B ED81BE B48B
+B48C B48C ED81BF B48C
+B48D B48D ED8280 B48D
+B48E B48E ED8282 B48E
+B48F B48F ED8283 B48F
+B490 B490 ED8284 B490
+B491 B491 ED8285 B491
+B492 B492 ED8286 B492
+B493 B493 ED8287 B493
+B494 B494 ED8288 B494
+B495 B495 ED8289 B495
+B496 B496 ED828A B496
+B497 B497 ED828B B497
+B498 B498 ED828C B498
+B499 B499 ED828D B499
+B49A B49A ED828E B49A
+B49B B49B ED828F B49B
+B49C B49C ED8290 B49C
+B49D B49D ED8291 B49D
+B49E B49E ED8292 B49E
+B49F B49F ED8293 B49F
+B4A0 B4A0 ED8294 B4A0
+B4A1 B4A1 EB879F B4A1
+B4A2 B4A2 EB87A8 B4A2
+B4A3 B4A3 EB87A9 B4A3
+B4A4 B4A4 EB87AC B4A4
+B4A5 B4A5 EB87B0 B4A5
+B4A6 B4A6 EB87B9 B4A6
+B4A7 B4A7 EB87BB B4A7
+B4A8 B4A8 EB87BD B4A8
+B4A9 B4A9 EB8884 B4A9
+B4AA B4AA EB8885 B4AA
+B4AB B4AB EB8888 B4AB
+B4AC B4AC EB888B B4AC
+B4AD B4AD EB888C B4AD
+B4AE B4AE EB8894 B4AE
+B4AF B4AF EB8895 B4AF
+B4B0 B4B0 EB8897 B4B0
+B4B1 B4B1 EB8899 B4B1
+B4B2 B4B2 EB88A0 B4B2
+B4B3 B4B3 EB88B4 B4B3
+B4B4 B4B4 EB88BC B4B4
+B4B5 B4B5 EB8998 B4B5
+B4B6 B4B6 EB899C B4B6
+B4B7 B4B7 EB89A0 B4B7
+B4B8 B4B8 EB89A8 B4B8
+B4B9 B4B9 EB89A9 B4B9
+B4BA B4BA EB89B4 B4BA
+B4BB B4BB EB89B5 B4BB
+B4BC B4BC EB89BC B4BC
+B4BD B4BD EB8A84 B4BD
+B4BE B4BE EB8A85 B4BE
+B4BF B4BF EB8A89 B4BF
+B4C0 B4C0 EB8A90 B4C0
+B4C1 B4C1 EB8A91 B4C1
+B4C2 B4C2 EB8A94 B4C2
+B4C3 B4C3 EB8A98 B4C3
+B4C4 B4C4 EB8A99 B4C4
+B4C5 B4C5 EB8A9A B4C5
+B4C6 B4C6 EB8AA0 B4C6
+B4C7 B4C7 EB8AA1 B4C7
+B4C8 B4C8 EB8AA3 B4C8
+B4C9 B4C9 EB8AA5 B4C9
+B4CA B4CA EB8AA6 B4CA
+B4CB B4CB EB8AAA B4CB
+B4CC B4CC EB8AAC B4CC
+B4CD B4CD EB8AB0 B4CD
+B4CE B4CE EB8AB4 B4CE
+B4CF B4CF EB8B88 B4CF
+B4D0 B4D0 EB8B89 B4D0
+B4D1 B4D1 EB8B8C B4D1
+B4D2 B4D2 EB8B90 B4D2
+B4D3 B4D3 EB8B92 B4D3
+B4D4 B4D4 EB8B98 B4D4
+B4D5 B4D5 EB8B99 B4D5
+B4D6 B4D6 EB8B9B B4D6
+B4D7 B4D7 EB8B9D B4D7
+B4D8 B4D8 EB8BA2 B4D8
+B4D9 B4D9 EB8BA4 B4D9
+B4DA B4DA EB8BA5 B4DA
+B4DB B4DB EB8BA6 B4DB
+B4DC B4DC EB8BA8 B4DC
+B4DD B4DD EB8BAB B4DD
+B4DE B4DE EB8BAC B4DE
+B4DF B4DF EB8BAD B4DF
+B4E0 B4E0 EB8BAE B4E0
+B4E1 B4E1 EB8BAF B4E1
+B4E2 B4E2 EB8BB3 B4E2
+B4E3 B4E3 EB8BB4 B4E3
+B4E4 B4E4 EB8BB5 B4E4
+B4E5 B4E5 EB8BB7 B4E5
+B4E6 B4E6 EB8BB8 B4E6
+B4E7 B4E7 EB8BB9 B4E7
+B4E8 B4E8 EB8BBA B4E8
+B4E9 B4E9 EB8BBB B4E9
+B4EA B4EA EB8BBF B4EA
+B4EB B4EB EB8C80 B4EB
+B4EC B4EC EB8C81 B4EC
+B4ED B4ED EB8C84 B4ED
+B4EE B4EE EB8C88 B4EE
+B4EF B4EF EB8C90 B4EF
+B4F0 B4F0 EB8C91 B4F0
+B4F1 B4F1 EB8C93 B4F1
+B4F2 B4F2 EB8C94 B4F2
+B4F3 B4F3 EB8C95 B4F3
+B4F4 B4F4 EB8C9C B4F4
+B4F5 B4F5 EB8D94 B4F5
+B4F6 B4F6 EB8D95 B4F6
+B4F7 B4F7 EB8D96 B4F7
+B4F8 B4F8 EB8D98 B4F8
+B4F9 B4F9 EB8D9B B4F9
+B4FA B4FA EB8D9C B4FA
+B4FB B4FB EB8D9E B4FB
+B4FC B4FC EB8D9F B4FC
+B4FD B4FD EB8DA4 B4FD
+B4FE B4FE EB8DA5 B4FE
+B541 B541 ED8295 B541
+B542 B542 ED8296 B542
+B543 B543 ED8297 B543
+B544 B544 ED8298 B544
+B545 B545 ED8299 B545
+B546 B546 ED829A B546
+B547 B547 ED829B B547
+B548 B548 ED829C B548
+B549 B549 ED829D B549
+B54A B54A ED829E B54A
+B54B B54B ED829F B54B
+B54C B54C ED82A0 B54C
+B54D B54D ED82A1 B54D
+B54E B54E ED82A2 B54E
+B54F B54F ED82A3 B54F
+B550 B550 ED82A6 B550
+B551 B551 ED82A7 B551
+B552 B552 ED82A9 B552
+B553 B553 ED82AA B553
+B554 B554 ED82AB B554
+B555 B555 ED82AD B555
+B556 B556 ED82AE B556
+B557 B557 ED82AF B557
+B558 B558 ED82B0 B558
+B559 B559 ED82B1 B559
+B55A B55A ED82B2 B55A
+B561 B561 ED82B3 B561
+B562 B562 ED82B6 B562
+B563 B563 ED82B8 B563
+B564 B564 ED82BA B564
+B565 B565 ED82BB B565
+B566 B566 ED82BC B566
+B567 B567 ED82BD B567
+B568 B568 ED82BE B568
+B569 B569 ED82BF B569
+B56A B56A ED8382 B56A
+B56B B56B ED8383 B56B
+B56C B56C ED8385 B56C
+B56D B56D ED8386 B56D
+B56E B56E ED8387 B56E
+B56F B56F ED838A B56F
+B570 B570 ED838B B570
+B571 B571 ED838C B571
+B572 B572 ED838D B572
+B573 B573 ED838E B573
+B574 B574 ED838F B574
+B575 B575 ED8392 B575
+B576 B576 ED8396 B576
+B577 B577 ED8397 B577
+B578 B578 ED8398 B578
+B579 B579 ED8399 B579
+B57A B57A ED839A B57A
+B581 B581 ED839B B581
+B582 B582 ED839E B582
+B583 B583 ED839F B583
+B584 B584 ED83A1 B584
+B585 B585 ED83A2 B585
+B586 B586 ED83A3 B586
+B587 B587 ED83A5 B587
+B588 B588 ED83A6 B588
+B589 B589 ED83A7 B589
+B58A B58A ED83A8 B58A
+B58B B58B ED83A9 B58B
+B58C B58C ED83AA B58C
+B58D B58D ED83AB B58D
+B58E B58E ED83AE B58E
+B58F B58F ED83B2 B58F
+B590 B590 ED83B3 B590
+B591 B591 ED83B4 B591
+B592 B592 ED83B5 B592
+B593 B593 ED83B6 B593
+B594 B594 ED83B7 B594
+B595 B595 ED83B9 B595
+B596 B596 ED83BA B596
+B597 B597 ED83BB B597
+B598 B598 ED83BC B598
+B599 B599 ED83BD B599
+B59A B59A ED83BE B59A
+B59B B59B ED83BF B59B
+B59C B59C ED8480 B59C
+B59D B59D ED8481 B59D
+B59E B59E ED8482 B59E
+B59F B59F ED8483 B59F
+B5A0 B5A0 ED8484 B5A0
+B5A1 B5A1 EB8DA7 B5A1
+B5A2 B5A2 EB8DA9 B5A2
+B5A3 B5A3 EB8DAB B5A3
+B5A4 B5A4 EB8DAE B5A4
+B5A5 B5A5 EB8DB0 B5A5
+B5A6 B5A6 EB8DB1 B5A6
+B5A7 B5A7 EB8DB4 B5A7
+B5A8 B5A8 EB8DB8 B5A8
+B5A9 B5A9 EB8E80 B5A9
+B5AA B5AA EB8E81 B5AA
+B5AB B5AB EB8E83 B5AB
+B5AC B5AC EB8E84 B5AC
+B5AD B5AD EB8E85 B5AD
+B5AE B5AE EB8E8C B5AE
+B5AF B5AF EB8E90 B5AF
+B5B0 B5B0 EB8E94 B5B0
+B5B1 B5B1 EB8EA0 B5B1
+B5B2 B5B2 EB8EA1 B5B2
+B5B3 B5B3 EB8EA8 B5B3
+B5B4 B5B4 EB8EAC B5B4
+B5B5 B5B5 EB8F84 B5B5
+B5B6 B5B6 EB8F85 B5B6
+B5B7 B5B7 EB8F88 B5B7
+B5B8 B5B8 EB8F8B B5B8
+B5B9 B5B9 EB8F8C B5B9
+B5BA B5BA EB8F8E B5BA
+B5BB B5BB EB8F90 B5BB
+B5BC B5BC EB8F94 B5BC
+B5BD B5BD EB8F95 B5BD
+B5BE B5BE EB8F97 B5BE
+B5BF B5BF EB8F99 B5BF
+B5C0 B5C0 EB8F9B B5C0
+B5C1 B5C1 EB8F9D B5C1
+B5C2 B5C2 EB8FA0 B5C2
+B5C3 B5C3 EB8FA4 B5C3
+B5C4 B5C4 EB8FA8 B5C4
+B5C5 B5C5 EB8FBC B5C5
+B5C6 B5C6 EB9090 B5C6
+B5C7 B5C7 EB9098 B5C7
+B5C8 B5C8 EB909C B5C8
+B5C9 B5C9 EB90A0 B5C9
+B5CA B5CA EB90A8 B5CA
+B5CB B5CB EB90A9 B5CB
+B5CC B5CC EB90AB B5CC
+B5CD B5CD EB90B4 B5CD
+B5CE B5CE EB9190 B5CE
+B5CF B5CF EB9191 B5CF
+B5D0 B5D0 EB9194 B5D0
+B5D1 B5D1 EB9198 B5D1
+B5D2 B5D2 EB91A0 B5D2
+B5D3 B5D3 EB91A1 B5D3
+B5D4 B5D4 EB91A3 B5D4
+B5D5 B5D5 EB91A5 B5D5
+B5D6 B5D6 EB91AC B5D6
+B5D7 B5D7 EB9280 B5D7
+B5D8 B5D8 EB9288 B5D8
+B5D9 B5D9 EB929D B5D9
+B5DA B5DA EB92A4 B5DA
+B5DB B5DB EB92A8 B5DB
+B5DC B5DC EB92AC B5DC
+B5DD B5DD EB92B5 B5DD
+B5DE B5DE EB92B7 B5DE
+B5DF B5DF EB92B9 B5DF
+B5E0 B5E0 EB9380 B5E0
+B5E1 B5E1 EB9384 B5E1
+B5E2 B5E2 EB9388 B5E2
+B5E3 B5E3 EB9390 B5E3
+B5E4 B5E4 EB9395 B5E4
+B5E5 B5E5 EB939C B5E5
+B5E6 B5E6 EB939D B5E6
+B5E7 B5E7 EB93A0 B5E7
+B5E8 B5E8 EB93A3 B5E8
+B5E9 B5E9 EB93A4 B5E9
+B5EA B5EA EB93A6 B5EA
+B5EB B5EB EB93AC B5EB
+B5EC B5EC EB93AD B5EC
+B5ED B5ED EB93AF B5ED
+B5EE B5EE EB93B1 B5EE
+B5EF B5EF EB93B8 B5EF
+B5F0 B5F0 EB9494 B5F0
+B5F1 B5F1 EB9495 B5F1
+B5F2 B5F2 EB9498 B5F2
+B5F3 B5F3 EB949B B5F3
+B5F4 B5F4 EB949C B5F4
+B5F5 B5F5 EB94A4 B5F5
+B5F6 B5F6 EB94A5 B5F6
+B5F7 B5F7 EB94A7 B5F7
+B5F8 B5F8 EB94A8 B5F8
+B5F9 B5F9 EB94A9 B5F9
+B5FA B5FA EB94AA B5FA
+B5FB B5FB EB94B0 B5FB
+B5FC B5FC EB94B1 B5FC
+B5FD B5FD EB94B4 B5FD
+B5FE B5FE EB94B8 B5FE
+B641 B641 ED8485 B641
+B642 B642 ED8486 B642
+B643 B643 ED8487 B643
+B644 B644 ED8488 B644
+B645 B645 ED8489 B645
+B646 B646 ED848A B646
+B647 B647 ED848B B647
+B648 B648 ED848C B648
+B649 B649 ED848E B649
+B64A B64A ED848F B64A
+B64B B64B ED8490 B64B
+B64C B64C ED8491 B64C
+B64D B64D ED8492 B64D
+B64E B64E ED8493 B64E
+B64F B64F ED8494 B64F
+B650 B650 ED8495 B650
+B651 B651 ED8496 B651
+B652 B652 ED8497 B652
+B653 B653 ED8498 B653
+B654 B654 ED8499 B654
+B655 B655 ED849A B655
+B656 B656 ED849B B656
+B657 B657 ED849C B657
+B658 B658 ED849D B658
+B659 B659 ED849E B659
+B65A B65A ED849F B65A
+B661 B661 ED84A0 B661
+B662 B662 ED84A1 B662
+B663 B663 ED84A2 B663
+B664 B664 ED84A3 B664
+B665 B665 ED84A4 B665
+B666 B666 ED84A5 B666
+B667 B667 ED84A6 B667
+B668 B668 ED84A7 B668
+B669 B669 ED84A8 B669
+B66A B66A ED84A9 B66A
+B66B B66B ED84AA B66B
+B66C B66C ED84AB B66C
+B66D B66D ED84AC B66D
+B66E B66E ED84AD B66E
+B66F B66F ED84AE B66F
+B670 B670 ED84AF B670
+B671 B671 ED84B2 B671
+B672 B672 ED84B3 B672
+B673 B673 ED84B5 B673
+B674 B674 ED84B6 B674
+B675 B675 ED84B7 B675
+B676 B676 ED84B9 B676
+B677 B677 ED84BB B677
+B678 B678 ED84BC B678
+B679 B679 ED84BD B679
+B67A B67A ED84BE B67A
+B681 B681 ED84BF B681
+B682 B682 ED8582 B682
+B683 B683 ED8586 B683
+B684 B684 ED8587 B684
+B685 B685 ED8588 B685
+B686 B686 ED8589 B686
+B687 B687 ED858A B687
+B688 B688 ED858B B688
+B689 B689 ED858E B689
+B68A B68A ED858F B68A
+B68B B68B ED8591 B68B
+B68C B68C ED8592 B68C
+B68D B68D ED8593 B68D
+B68E B68E ED8595 B68E
+B68F B68F ED8596 B68F
+B690 B690 ED8597 B690
+B691 B691 ED8598 B691
+B692 B692 ED8599 B692
+B693 B693 ED859A B693
+B694 B694 ED859B B694
+B695 B695 ED859E B695
+B696 B696 ED85A0 B696
+B697 B697 ED85A2 B697
+B698 B698 ED85A3 B698
+B699 B699 ED85A4 B699
+B69A B69A ED85A5 B69A
+B69B B69B ED85A6 B69B
+B69C B69C ED85A7 B69C
+B69D B69D ED85A9 B69D
+B69E B69E ED85AA B69E
+B69F B69F ED85AB B69F
+B6A0 B6A0 ED85AD B6A0
+B6A1 B6A1 EB9580 B6A1
+B6A2 B6A2 EB9581 B6A2
+B6A3 B6A3 EB9583 B6A3
+B6A4 B6A4 EB9584 B6A4
+B6A5 B6A5 EB9585 B6A5
+B6A6 B6A6 EB958B B6A6
+B6A7 B6A7 EB958C B6A7
+B6A8 B6A8 EB958D B6A8
+B6A9 B6A9 EB9590 B6A9
+B6AA B6AA EB9594 B6AA
+B6AB B6AB EB959C B6AB
+B6AC B6AC EB959D B6AC
+B6AD B6AD EB959F B6AD
+B6AE B6AE EB95A0 B6AE
+B6AF B6AF EB95A1 B6AF
+B6B0 B6B0 EB96A0 B6B0
+B6B1 B6B1 EB96A1 B6B1
+B6B2 B6B2 EB96A4 B6B2
+B6B3 B6B3 EB96A8 B6B3
+B6B4 B6B4 EB96AA B6B4
+B6B5 B6B5 EB96AB B6B5
+B6B6 B6B6 EB96B0 B6B6
+B6B7 B6B7 EB96B1 B6B7
+B6B8 B6B8 EB96B3 B6B8
+B6B9 B6B9 EB96B4 B6B9
+B6BA B6BA EB96B5 B6BA
+B6BB B6BB EB96BB B6BB
+B6BC B6BC EB96BC B6BC
+B6BD B6BD EB96BD B6BD
+B6BE B6BE EB9780 B6BE
+B6BF B6BF EB9784 B6BF
+B6C0 B6C0 EB978C B6C0
+B6C1 B6C1 EB978D B6C1
+B6C2 B6C2 EB978F B6C2
+B6C3 B6C3 EB9790 B6C3
+B6C4 B6C4 EB9791 B6C4
+B6C5 B6C5 EB9798 B6C5
+B6C6 B6C6 EB97AC B6C6
+B6C7 B6C7 EB9890 B6C7
+B6C8 B6C8 EB9891 B6C8
+B6C9 B6C9 EB9894 B6C9
+B6CA B6CA EB9898 B6CA
+B6CB B6CB EB98A5 B6CB
+B6CC B6CC EB98AC B6CC
+B6CD B6CD EB98B4 B6CD
+B6CE B6CE EB9988 B6CE
+B6CF B6CF EB99A4 B6CF
+B6D0 B6D0 EB99A8 B6D0
+B6D1 B6D1 EB9A9C B6D1
+B6D2 B6D2 EB9A9D B6D2
+B6D3 B6D3 EB9AA0 B6D3
+B6D4 B6D4 EB9AA4 B6D4
+B6D5 B6D5 EB9AAB B6D5
+B6D6 B6D6 EB9AAC B6D6
+B6D7 B6D7 EB9AB1 B6D7
+B6D8 B6D8 EB9B94 B6D8
+B6D9 B6D9 EB9BB0 B6D9
+B6DA B6DA EB9BB4 B6DA
+B6DB B6DB EB9BB8 B6DB
+B6DC B6DC EB9C80 B6DC
+B6DD B6DD EB9C81 B6DD
+B6DE B6DE EB9C85 B6DE
+B6DF B6DF EB9CA8 B6DF
+B6E0 B6E0 EB9CA9 B6E0
+B6E1 B6E1 EB9CAC B6E1
+B6E2 B6E2 EB9CAF B6E2
+B6E3 B6E3 EB9CB0 B6E3
+B6E4 B6E4 EB9CB8 B6E4
+B6E5 B6E5 EB9CB9 B6E5
+B6E6 B6E6 EB9CBB B6E6
+B6E7 B6E7 EB9D84 B6E7
+B6E8 B6E8 EB9D88 B6E8
+B6E9 B6E9 EB9D8C B6E9
+B6EA B6EA EB9D94 B6EA
+B6EB B6EB EB9D95 B6EB
+B6EC B6EC EB9DA0 B6EC
+B6ED B6ED EB9DA4 B6ED
+B6EE B6EE EB9DA8 B6EE
+B6EF B6EF EB9DB0 B6EF
+B6F0 B6F0 EB9DB1 B6F0
+B6F1 B6F1 EB9DB3 B6F1
+B6F2 B6F2 EB9DB5 B6F2
+B6F3 B6F3 EB9DBC B6F3
+B6F4 B6F4 EB9DBD B6F4
+B6F5 B6F5 EB9E80 B6F5
+B6F6 B6F6 EB9E84 B6F6
+B6F7 B6F7 EB9E8C B6F7
+B6F8 B6F8 EB9E8D B6F8
+B6F9 B6F9 EB9E8F B6F9
+B6FA B6FA EB9E90 B6FA
+B6FB B6FB EB9E91 B6FB
+B6FC B6FC EB9E92 B6FC
+B6FD B6FD EB9E96 B6FD
+B6FE B6FE EB9E97 B6FE
+B741 B741 ED85AE B741
+B742 B742 ED85AF B742
+B743 B743 ED85B0 B743
+B744 B744 ED85B1 B744
+B745 B745 ED85B2 B745
+B746 B746 ED85B3 B746
+B747 B747 ED85B4 B747
+B748 B748 ED85B5 B748
+B749 B749 ED85B6 B749
+B74A B74A ED85B7 B74A
+B74B B74B ED85B8 B74B
+B74C B74C ED85B9 B74C
+B74D B74D ED85BA B74D
+B74E B74E ED85BB B74E
+B74F B74F ED85BD B74F
+B750 B750 ED85BE B750
+B751 B751 ED85BF B751
+B752 B752 ED8680 B752
+B753 B753 ED8681 B753
+B754 B754 ED8682 B754
+B755 B755 ED8683 B755
+B756 B756 ED8685 B756
+B757 B757 ED8686 B757
+B758 B758 ED8687 B758
+B759 B759 ED8689 B759
+B75A B75A ED868A B75A
+B761 B761 ED868B B761
+B762 B762 ED868C B762
+B763 B763 ED868D B763
+B764 B764 ED868E B764
+B765 B765 ED868F B765
+B766 B766 ED8690 B766
+B767 B767 ED8691 B767
+B768 B768 ED8692 B768
+B769 B769 ED8693 B769
+B76A B76A ED8694 B76A
+B76B B76B ED8695 B76B
+B76C B76C ED8696 B76C
+B76D B76D ED8697 B76D
+B76E B76E ED8698 B76E
+B76F B76F ED8699 B76F
+B770 B770 ED869A B770
+B771 B771 ED869B B771
+B772 B772 ED869C B772
+B773 B773 ED869D B773
+B774 B774 ED869E B774
+B775 B775 ED869F B775
+B776 B776 ED86A2 B776
+B777 B777 ED86A3 B777
+B778 B778 ED86A5 B778
+B779 B779 ED86A6 B779
+B77A B77A ED86A7 B77A
+B781 B781 ED86A9 B781
+B782 B782 ED86AA B782
+B783 B783 ED86AB B783
+B784 B784 ED86AC B784
+B785 B785 ED86AD B785
+B786 B786 ED86AE B786
+B787 B787 ED86AF B787
+B788 B788 ED86B2 B788
+B789 B789 ED86B4 B789
+B78A B78A ED86B6 B78A
+B78B B78B ED86B7 B78B
+B78C B78C ED86B8 B78C
+B78D B78D ED86B9 B78D
+B78E B78E ED86BB B78E
+B78F B78F ED86BD B78F
+B790 B790 ED86BE B790
+B791 B791 ED86BF B791
+B792 B792 ED8781 B792
+B793 B793 ED8782 B793
+B794 B794 ED8783 B794
+B795 B795 ED8784 B795
+B796 B796 ED8785 B796
+B797 B797 ED8786 B797
+B798 B798 ED8787 B798
+B799 B799 ED8788 B799
+B79A B79A ED8789 B79A
+B79B B79B ED878A B79B
+B79C B79C ED878B B79C
+B79D B79D ED878C B79D
+B79E B79E ED878D B79E
+B79F B79F ED878E B79F
+B7A0 B7A0 ED878F B7A0
+B7A1 B7A1 EB9E98 B7A1
+B7A2 B7A2 EB9E99 B7A2
+B7A3 B7A3 EB9E9C B7A3
+B7A4 B7A4 EB9EA0 B7A4
+B7A5 B7A5 EB9EA8 B7A5
+B7A6 B7A6 EB9EA9 B7A6
+B7A7 B7A7 EB9EAB B7A7
+B7A8 B7A8 EB9EAC B7A8
+B7A9 B7A9 EB9EAD B7A9
+B7AA B7AA EB9EB4 B7AA
+B7AB B7AB EB9EB5 B7AB
+B7AC B7AC EB9EB8 B7AC
+B7AD B7AD EB9F87 B7AD
+B7AE B7AE EB9F89 B7AE
+B7AF B7AF EB9FAC B7AF
+B7B0 B7B0 EB9FAD B7B0
+B7B1 B7B1 EB9FB0 B7B1
+B7B2 B7B2 EB9FB4 B7B2
+B7B3 B7B3 EB9FBC B7B3
+B7B4 B7B4 EB9FBD B7B4
+B7B5 B7B5 EB9FBF B7B5
+B7B6 B7B6 EBA080 B7B6
+B7B7 B7B7 EBA081 B7B7
+B7B8 B7B8 EBA087 B7B8
+B7B9 B7B9 EBA088 B7B9
+B7BA B7BA EBA089 B7BA
+B7BB B7BB EBA08C B7BB
+B7BC B7BC EBA090 B7BC
+B7BD B7BD EBA098 B7BD
+B7BE B7BE EBA099 B7BE
+B7BF B7BF EBA09B B7BF
+B7C0 B7C0 EBA09D B7C0
+B7C1 B7C1 EBA0A4 B7C1
+B7C2 B7C2 EBA0A5 B7C2
+B7C3 B7C3 EBA0A8 B7C3
+B7C4 B7C4 EBA0AC B7C4
+B7C5 B7C5 EBA0B4 B7C5
+B7C6 B7C6 EBA0B5 B7C6
+B7C7 B7C7 EBA0B7 B7C7
+B7C8 B7C8 EBA0B8 B7C8
+B7C9 B7C9 EBA0B9 B7C9
+B7CA B7CA EBA180 B7CA
+B7CB B7CB EBA184 B7CB
+B7CC B7CC EBA191 B7CC
+B7CD B7CD EBA193 B7CD
+B7CE B7CE EBA19C B7CE
+B7CF B7CF EBA19D B7CF
+B7D0 B7D0 EBA1A0 B7D0
+B7D1 B7D1 EBA1A4 B7D1
+B7D2 B7D2 EBA1AC B7D2
+B7D3 B7D3 EBA1AD B7D3
+B7D4 B7D4 EBA1AF B7D4
+B7D5 B7D5 EBA1B1 B7D5
+B7D6 B7D6 EBA1B8 B7D6
+B7D7 B7D7 EBA1BC B7D7
+B7D8 B7D8 EBA28D B7D8
+B7D9 B7D9 EBA2A8 B7D9
+B7DA B7DA EBA2B0 B7DA
+B7DB B7DB EBA2B4 B7DB
+B7DC B7DC EBA2B8 B7DC
+B7DD B7DD EBA380 B7DD
+B7DE B7DE EBA381 B7DE
+B7DF B7DF EBA383 B7DF
+B7E0 B7E0 EBA385 B7E0
+B7E1 B7E1 EBA38C B7E1
+B7E2 B7E2 EBA390 B7E2
+B7E3 B7E3 EBA394 B7E3
+B7E4 B7E4 EBA39D B7E4
+B7E5 B7E5 EBA39F B7E5
+B7E6 B7E6 EBA3A1 B7E6
+B7E7 B7E7 EBA3A8 B7E7
+B7E8 B7E8 EBA3A9 B7E8
+B7E9 B7E9 EBA3AC B7E9
+B7EA B7EA EBA3B0 B7EA
+B7EB B7EB EBA3B8 B7EB
+B7EC B7EC EBA3B9 B7EC
+B7ED B7ED EBA3BB B7ED
+B7EE B7EE EBA3BD B7EE
+B7EF B7EF EBA484 B7EF
+B7F0 B7F0 EBA498 B7F0
+B7F1 B7F1 EBA4A0 B7F1
+B7F2 B7F2 EBA4BC B7F2
+B7F3 B7F3 EBA4BD B7F3
+B7F4 B7F4 EBA580 B7F4
+B7F5 B7F5 EBA584 B7F5
+B7F6 B7F6 EBA58C B7F6
+B7F7 B7F7 EBA58F B7F7
+B7F8 B7F8 EBA591 B7F8
+B7F9 B7F9 EBA598 B7F9
+B7FA B7FA EBA599 B7FA
+B7FB B7FB EBA59C B7FB
+B7FC B7FC EBA5A0 B7FC
+B7FD B7FD EBA5A8 B7FD
+B7FE B7FE EBA5A9 B7FE
+B841 B841 ED8790 B841
+B842 B842 ED8791 B842
+B843 B843 ED8792 B843
+B844 B844 ED8793 B844
+B845 B845 ED8794 B845
+B846 B846 ED8795 B846
+B847 B847 ED8796 B847
+B848 B848 ED8797 B848
+B849 B849 ED8799 B849
+B84A B84A ED879A B84A
+B84B B84B ED879B B84B
+B84C B84C ED879C B84C
+B84D B84D ED879D B84D
+B84E B84E ED879E B84E
+B84F B84F ED879F B84F
+B850 B850 ED87A0 B850
+B851 B851 ED87A1 B851
+B852 B852 ED87A2 B852
+B853 B853 ED87A3 B853
+B854 B854 ED87A4 B854
+B855 B855 ED87A5 B855
+B856 B856 ED87A6 B856
+B857 B857 ED87A7 B857
+B858 B858 ED87A8 B858
+B859 B859 ED87A9 B859
+B85A B85A ED87AA B85A
+B861 B861 ED87AB B861
+B862 B862 ED87AC B862
+B863 B863 ED87AD B863
+B864 B864 ED87AE B864
+B865 B865 ED87AF B865
+B866 B866 ED87B0 B866
+B867 B867 ED87B1 B867
+B868 B868 ED87B2 B868
+B869 B869 ED87B3 B869
+B86A B86A ED87B5 B86A
+B86B B86B ED87B6 B86B
+B86C B86C ED87B7 B86C
+B86D B86D ED87B9 B86D
+B86E B86E ED87BA B86E
+B86F B86F ED87BB B86F
+B870 B870 ED87BC B870
+B871 B871 ED87BD B871
+B872 B872 ED87BE B872
+B873 B873 ED87BF B873
+B874 B874 ED8880 B874
+B875 B875 ED8881 B875
+B876 B876 ED8882 B876
+B877 B877 ED8883 B877
+B878 B878 ED8884 B878
+B879 B879 ED8885 B879
+B87A B87A ED8886 B87A
+B881 B881 ED8888 B881
+B882 B882 ED888A B882
+B883 B883 ED888B B883
+B884 B884 ED888C B884
+B885 B885 ED888D B885
+B886 B886 ED888E B886
+B887 B887 ED888F B887
+B888 B888 ED8891 B888
+B889 B889 ED8892 B889
+B88A B88A ED8893 B88A
+B88B B88B ED8894 B88B
+B88C B88C ED8895 B88C
+B88D B88D ED8896 B88D
+B88E B88E ED8897 B88E
+B88F B88F ED8898 B88F
+B890 B890 ED8899 B890
+B891 B891 ED889A B891
+B892 B892 ED889B B892
+B893 B893 ED889C B893
+B894 B894 ED889D B894
+B895 B895 ED889E B895
+B896 B896 ED889F B896
+B897 B897 ED88A0 B897
+B898 B898 ED88A1 B898
+B899 B899 ED88A2 B899
+B89A B89A ED88A3 B89A
+B89B B89B ED88A4 B89B
+B89C B89C ED88A5 B89C
+B89D B89D ED88A6 B89D
+B89E B89E ED88A7 B89E
+B89F B89F ED88A8 B89F
+B8A0 B8A0 ED88A9 B8A0
+B8A1 B8A1 EBA5AB B8A1
+B8A2 B8A2 EBA5AD B8A2
+B8A3 B8A3 EBA5B4 B8A3
+B8A4 B8A4 EBA5B5 B8A4
+B8A5 B8A5 EBA5B8 B8A5
+B8A6 B8A6 EBA5BC B8A6
+B8A7 B8A7 EBA684 B8A7
+B8A8 B8A8 EBA685 B8A8
+B8A9 B8A9 EBA687 B8A9
+B8AA B8AA EBA689 B8AA
+B8AB B8AB EBA68A B8AB
+B8AC B8AC EBA68D B8AC
+B8AD B8AD EBA68E B8AD
+B8AE B8AE EBA6AC B8AE
+B8AF B8AF EBA6AD B8AF
+B8B0 B8B0 EBA6B0 B8B0
+B8B1 B8B1 EBA6B4 B8B1
+B8B2 B8B2 EBA6BC B8B2
+B8B3 B8B3 EBA6BD B8B3
+B8B4 B8B4 EBA6BF B8B4
+B8B5 B8B5 EBA781 B8B5
+B8B6 B8B6 EBA788 B8B6
+B8B7 B8B7 EBA789 B8B7
+B8B8 B8B8 EBA78C B8B8
+B8B9 B8B9 EBA78E B8B9
+B8BA B8BA EBA78F B8BA
+B8BB B8BB EBA790 B8BB
+B8BC B8BC EBA791 B8BC
+B8BD B8BD EBA792 B8BD
+B8BE B8BE EBA798 B8BE
+B8BF B8BF EBA799 B8BF
+B8C0 B8C0 EBA79B B8C0
+B8C1 B8C1 EBA79D B8C1
+B8C2 B8C2 EBA79E B8C2
+B8C3 B8C3 EBA7A1 B8C3
+B8C4 B8C4 EBA7A3 B8C4
+B8C5 B8C5 EBA7A4 B8C5
+B8C6 B8C6 EBA7A5 B8C6
+B8C7 B8C7 EBA7A8 B8C7
+B8C8 B8C8 EBA7AC B8C8
+B8C9 B8C9 EBA7B4 B8C9
+B8CA B8CA EBA7B5 B8CA
+B8CB B8CB EBA7B7 B8CB
+B8CC B8CC EBA7B8 B8CC
+B8CD B8CD EBA7B9 B8CD
+B8CE B8CE EBA7BA B8CE
+B8CF B8CF EBA880 B8CF
+B8D0 B8D0 EBA881 B8D0
+B8D1 B8D1 EBA888 B8D1
+B8D2 B8D2 EBA895 B8D2
+B8D3 B8D3 EBA8B8 B8D3
+B8D4 B8D4 EBA8B9 B8D4
+B8D5 B8D5 EBA8BC B8D5
+B8D6 B8D6 EBA980 B8D6
+B8D7 B8D7 EBA982 B8D7
+B8D8 B8D8 EBA988 B8D8
+B8D9 B8D9 EBA989 B8D9
+B8DA B8DA EBA98B B8DA
+B8DB B8DB EBA98D B8DB
+B8DC B8DC EBA98E B8DC
+B8DD B8DD EBA993 B8DD
+B8DE B8DE EBA994 B8DE
+B8DF B8DF EBA995 B8DF
+B8E0 B8E0 EBA998 B8E0
+B8E1 B8E1 EBA99C B8E1
+B8E2 B8E2 EBA9A4 B8E2
+B8E3 B8E3 EBA9A5 B8E3
+B8E4 B8E4 EBA9A7 B8E4
+B8E5 B8E5 EBA9A8 B8E5
+B8E6 B8E6 EBA9A9 B8E6
+B8E7 B8E7 EBA9B0 B8E7
+B8E8 B8E8 EBA9B1 B8E8
+B8E9 B8E9 EBA9B4 B8E9
+B8EA B8EA EBA9B8 B8EA
+B8EB B8EB EBAA83 B8EB
+B8EC B8EC EBAA84 B8EC
+B8ED B8ED EBAA85 B8ED
+B8EE B8EE EBAA87 B8EE
+B8EF B8EF EBAA8C B8EF
+B8F0 B8F0 EBAAA8 B8F0
+B8F1 B8F1 EBAAA9 B8F1
+B8F2 B8F2 EBAAAB B8F2
+B8F3 B8F3 EBAAAC B8F3
+B8F4 B8F4 EBAAB0 B8F4
+B8F5 B8F5 EBAAB2 B8F5
+B8F6 B8F6 EBAAB8 B8F6
+B8F7 B8F7 EBAAB9 B8F7
+B8F8 B8F8 EBAABB B8F8
+B8F9 B8F9 EBAABD B8F9
+B8FA B8FA EBAB84 B8FA
+B8FB B8FB EBAB88 B8FB
+B8FC B8FC EBAB98 B8FC
+B8FD B8FD EBAB99 B8FD
+B8FE B8FE EBABBC B8FE
+B941 B941 ED88AA B941
+B942 B942 ED88AB B942
+B943 B943 ED88AE B943
+B944 B944 ED88AF B944
+B945 B945 ED88B1 B945
+B946 B946 ED88B2 B946
+B947 B947 ED88B3 B947
+B948 B948 ED88B5 B948
+B949 B949 ED88B6 B949
+B94A B94A ED88B7 B94A
+B94B B94B ED88B8 B94B
+B94C B94C ED88B9 B94C
+B94D B94D ED88BA B94D
+B94E B94E ED88BB B94E
+B94F B94F ED88BE B94F
+B950 B950 ED8980 B950
+B951 B951 ED8982 B951
+B952 B952 ED8983 B952
+B953 B953 ED8984 B953
+B954 B954 ED8985 B954
+B955 B955 ED8986 B955
+B956 B956 ED8987 B956
+B957 B957 ED8989 B957
+B958 B958 ED898A B958
+B959 B959 ED898B B959
+B95A B95A ED898C B95A
+B961 B961 ED898D B961
+B962 B962 ED898E B962
+B963 B963 ED898F B963
+B964 B964 ED8990 B964
+B965 B965 ED8991 B965
+B966 B966 ED8992 B966
+B967 B967 ED8993 B967
+B968 B968 ED8994 B968
+B969 B969 ED8995 B969
+B96A B96A ED8996 B96A
+B96B B96B ED8997 B96B
+B96C B96C ED8998 B96C
+B96D B96D ED8999 B96D
+B96E B96E ED899A B96E
+B96F B96F ED899B B96F
+B970 B970 ED899D B970
+B971 B971 ED899E B971
+B972 B972 ED899F B972
+B973 B973 ED89A0 B973
+B974 B974 ED89A1 B974
+B975 B975 ED89A2 B975
+B976 B976 ED89A3 B976
+B977 B977 ED89A5 B977
+B978 B978 ED89A6 B978
+B979 B979 ED89A7 B979
+B97A B97A ED89A8 B97A
+B981 B981 ED89A9 B981
+B982 B982 ED89AA B982
+B983 B983 ED89AB B983
+B984 B984 ED89AC B984
+B985 B985 ED89AD B985
+B986 B986 ED89AE B986
+B987 B987 ED89AF B987
+B988 B988 ED89B0 B988
+B989 B989 ED89B1 B989
+B98A B98A ED89B2 B98A
+B98B B98B ED89B3 B98B
+B98C B98C ED89B4 B98C
+B98D B98D ED89B5 B98D
+B98E B98E ED89B6 B98E
+B98F B98F ED89B7 B98F
+B990 B990 ED89B8 B990
+B991 B991 ED89B9 B991
+B992 B992 ED89BA B992
+B993 B993 ED89BB B993
+B994 B994 ED89BC B994
+B995 B995 ED89BD B995
+B996 B996 ED89BE B996
+B997 B997 ED89BF B997
+B998 B998 ED8A82 B998
+B999 B999 ED8A83 B999
+B99A B99A ED8A85 B99A
+B99B B99B ED8A86 B99B
+B99C B99C ED8A87 B99C
+B99D B99D ED8A89 B99D
+B99E B99E ED8A8A B99E
+B99F B99F ED8A8B B99F
+B9A0 B9A0 ED8A8C B9A0
+B9A1 B9A1 EBAC80 B9A1
+B9A2 B9A2 EBAC84 B9A2
+B9A3 B9A3 EBAC8D B9A3
+B9A4 B9A4 EBAC8F B9A4
+B9A5 B9A5 EBAC91 B9A5
+B9A6 B9A6 EBAC98 B9A6
+B9A7 B9A7 EBAC9C B9A7
+B9A8 B9A8 EBACA0 B9A8
+B9A9 B9A9 EBACA9 B9A9
+B9AA B9AA EBACAB B9AA
+B9AB B9AB EBACB4 B9AB
+B9AC B9AC EBACB5 B9AC
+B9AD B9AD EBACB6 B9AD
+B9AE B9AE EBACB8 B9AE
+B9AF B9AF EBACBB B9AF
+B9B0 B9B0 EBACBC B9B0
+B9B1 B9B1 EBACBD B9B1
+B9B2 B9B2 EBACBE B9B2
+B9B3 B9B3 EBAD84 B9B3
+B9B4 B9B4 EBAD85 B9B4
+B9B5 B9B5 EBAD87 B9B5
+B9B6 B9B6 EBAD89 B9B6
+B9B7 B9B7 EBAD8D B9B7
+B9B8 B9B8 EBAD8F B9B8
+B9B9 B9B9 EBAD90 B9B9
+B9BA B9BA EBAD94 B9BA
+B9BB B9BB EBAD98 B9BB
+B9BC B9BC EBADA1 B9BC
+B9BD B9BD EBADA3 B9BD
+B9BE B9BE EBADAC B9BE
+B9BF B9BF EBAE88 B9BF
+B9C0 B9C0 EBAE8C B9C0
+B9C1 B9C1 EBAE90 B9C1
+B9C2 B9C2 EBAEA4 B9C2
+B9C3 B9C3 EBAEA8 B9C3
+B9C4 B9C4 EBAEAC B9C4
+B9C5 B9C5 EBAEB4 B9C5
+B9C6 B9C6 EBAEB7 B9C6
+B9C7 B9C7 EBAF80 B9C7
+B9C8 B9C8 EBAF84 B9C8
+B9C9 B9C9 EBAF88 B9C9
+B9CA B9CA EBAF90 B9CA
+B9CB B9CB EBAF93 B9CB
+B9CC B9CC EBAFB8 B9CC
+B9CD B9CD EBAFB9 B9CD
+B9CE B9CE EBAFBC B9CE
+B9CF B9CF EBAFBF B9CF
+B9D0 B9D0 EBB080 B9D0
+B9D1 B9D1 EBB082 B9D1
+B9D2 B9D2 EBB088 B9D2
+B9D3 B9D3 EBB089 B9D3
+B9D4 B9D4 EBB08B B9D4
+B9D5 B9D5 EBB08C B9D5
+B9D6 B9D6 EBB08D B9D6
+B9D7 B9D7 EBB08F B9D7
+B9D8 B9D8 EBB091 B9D8
+B9D9 B9D9 EBB094 B9D9
+B9DA B9DA EBB095 B9DA
+B9DB B9DB EBB096 B9DB
+B9DC B9DC EBB097 B9DC
+B9DD B9DD EBB098 B9DD
+B9DE B9DE EBB09B B9DE
+B9DF B9DF EBB09C B9DF
+B9E0 B9E0 EBB09D B9E0
+B9E1 B9E1 EBB09E B9E1
+B9E2 B9E2 EBB09F B9E2
+B9E3 B9E3 EBB0A4 B9E3
+B9E4 B9E4 EBB0A5 B9E4
+B9E5 B9E5 EBB0A7 B9E5
+B9E6 B9E6 EBB0A9 B9E6
+B9E7 B9E7 EBB0AD B9E7
+B9E8 B9E8 EBB0B0 B9E8
+B9E9 B9E9 EBB0B1 B9E9
+B9EA B9EA EBB0B4 B9EA
+B9EB B9EB EBB0B8 B9EB
+B9EC B9EC EBB180 B9EC
+B9ED B9ED EBB181 B9ED
+B9EE B9EE EBB183 B9EE
+B9EF B9EF EBB184 B9EF
+B9F0 B9F0 EBB185 B9F0
+B9F1 B9F1 EBB189 B9F1
+B9F2 B9F2 EBB18C B9F2
+B9F3 B9F3 EBB18D B9F3
+B9F4 B9F4 EBB190 B9F4
+B9F5 B9F5 EBB19D B9F5
+B9F6 B9F6 EBB284 B9F6
+B9F7 B9F7 EBB285 B9F7
+B9F8 B9F8 EBB288 B9F8
+B9F9 B9F9 EBB28B B9F9
+B9FA B9FA EBB28C B9FA
+B9FB B9FB EBB28E B9FB
+B9FC B9FC EBB294 B9FC
+B9FD B9FD EBB295 B9FD
+B9FE B9FE EBB297 B9FE
+BA41 BA41 ED8A8D BA41
+BA42 BA42 ED8A8E BA42
+BA43 BA43 ED8A8F BA43
+BA44 BA44 ED8A92 BA44
+BA45 BA45 ED8A93 BA45
+BA46 BA46 ED8A94 BA46
+BA47 BA47 ED8A96 BA47
+BA48 BA48 ED8A97 BA48
+BA49 BA49 ED8A98 BA49
+BA4A BA4A ED8A99 BA4A
+BA4B BA4B ED8A9A BA4B
+BA4C BA4C ED8A9B BA4C
+BA4D BA4D ED8A9D BA4D
+BA4E BA4E ED8A9E BA4E
+BA4F BA4F ED8A9F BA4F
+BA50 BA50 ED8AA1 BA50
+BA51 BA51 ED8AA2 BA51
+BA52 BA52 ED8AA3 BA52
+BA53 BA53 ED8AA5 BA53
+BA54 BA54 ED8AA6 BA54
+BA55 BA55 ED8AA7 BA55
+BA56 BA56 ED8AA8 BA56
+BA57 BA57 ED8AA9 BA57
+BA58 BA58 ED8AAA BA58
+BA59 BA59 ED8AAB BA59
+BA5A BA5A ED8AAD BA5A
+BA61 BA61 ED8AAE BA61
+BA62 BA62 ED8AAF BA62
+BA63 BA63 ED8AB0 BA63
+BA64 BA64 ED8AB2 BA64
+BA65 BA65 ED8AB3 BA65
+BA66 BA66 ED8AB4 BA66
+BA67 BA67 ED8AB5 BA67
+BA68 BA68 ED8AB6 BA68
+BA69 BA69 ED8AB7 BA69
+BA6A BA6A ED8ABA BA6A
+BA6B BA6B ED8ABB BA6B
+BA6C BA6C ED8ABD BA6C
+BA6D BA6D ED8ABE BA6D
+BA6E BA6E ED8B81 BA6E
+BA6F BA6F ED8B83 BA6F
+BA70 BA70 ED8B84 BA70
+BA71 BA71 ED8B85 BA71
+BA72 BA72 ED8B86 BA72
+BA73 BA73 ED8B87 BA73
+BA74 BA74 ED8B8A BA74
+BA75 BA75 ED8B8C BA75
+BA76 BA76 ED8B8D BA76
+BA77 BA77 ED8B8E BA77
+BA78 BA78 ED8B8F BA78
+BA79 BA79 ED8B90 BA79
+BA7A BA7A ED8B91 BA7A
+BA81 BA81 ED8B92 BA81
+BA82 BA82 ED8B93 BA82
+BA83 BA83 ED8B95 BA83
+BA84 BA84 ED8B96 BA84
+BA85 BA85 ED8B97 BA85
+BA86 BA86 ED8B99 BA86
+BA87 BA87 ED8B9A BA87
+BA88 BA88 ED8B9B BA88
+BA89 BA89 ED8B9D BA89
+BA8A BA8A ED8B9E BA8A
+BA8B BA8B ED8B9F BA8B
+BA8C BA8C ED8BA0 BA8C
+BA8D BA8D ED8BA1 BA8D
+BA8E BA8E ED8BA2 BA8E
+BA8F BA8F ED8BA3 BA8F
+BA90 BA90 ED8BA6 BA90
+BA91 BA91 ED8BA7 BA91
+BA92 BA92 ED8BA8 BA92
+BA93 BA93 ED8BA9 BA93
+BA94 BA94 ED8BAA BA94
+BA95 BA95 ED8BAB BA95
+BA96 BA96 ED8BAC BA96
+BA97 BA97 ED8BAD BA97
+BA98 BA98 ED8BAE BA98
+BA99 BA99 ED8BAF BA99
+BA9A BA9A ED8BB2 BA9A
+BA9B BA9B ED8BB3 BA9B
+BA9C BA9C ED8BB5 BA9C
+BA9D BA9D ED8BB6 BA9D
+BA9E BA9E ED8BB7 BA9E
+BA9F BA9F ED8BB9 BA9F
+BAA0 BAA0 ED8BBA BAA0
+BAA1 BAA1 EBB299 BAA1
+BAA2 BAA2 EBB29A BAA2
+BAA3 BAA3 EBB2A0 BAA3
+BAA4 BAA4 EBB2A1 BAA4
+BAA5 BAA5 EBB2A4 BAA5
+BAA6 BAA6 EBB2A7 BAA6
+BAA7 BAA7 EBB2A8 BAA7
+BAA8 BAA8 EBB2B0 BAA8
+BAA9 BAA9 EBB2B1 BAA9
+BAAA BAAA EBB2B3 BAAA
+BAAB BAAB EBB2B4 BAAB
+BAAC BAAC EBB2B5 BAAC
+BAAD BAAD EBB2BC BAAD
+BAAE BAAE EBB2BD BAAE
+BAAF BAAF EBB380 BAAF
+BAB0 BAB0 EBB384 BAB0
+BAB1 BAB1 EBB38D BAB1
+BAB2 BAB2 EBB38F BAB2
+BAB3 BAB3 EBB390 BAB3
+BAB4 BAB4 EBB391 BAB4
+BAB5 BAB5 EBB395 BAB5
+BAB6 BAB6 EBB398 BAB6
+BAB7 BAB7 EBB39C BAB7
+BAB8 BAB8 EBB3B4 BAB8
+BAB9 BAB9 EBB3B5 BAB9
+BABA BABA EBB3B6 BABA
+BABB BABB EBB3B8 BABB
+BABC BABC EBB3BC BABC
+BABD BABD EBB484 BABD
+BABE BABE EBB485 BABE
+BABF BABF EBB487 BABF
+BAC0 BAC0 EBB489 BAC0
+BAC1 BAC1 EBB490 BAC1
+BAC2 BAC2 EBB494 BAC2
+BAC3 BAC3 EBB4A4 BAC3
+BAC4 BAC4 EBB4AC BAC4
+BAC5 BAC5 EBB580 BAC5
+BAC6 BAC6 EBB588 BAC6
+BAC7 BAC7 EBB589 BAC7
+BAC8 BAC8 EBB58C BAC8
+BAC9 BAC9 EBB590 BAC9
+BACA BACA EBB598 BACA
+BACB BACB EBB599 BACB
+BACC BACC EBB5A4 BACC
+BACD BACD EBB5A8 BACD
+BACE BACE EBB680 BACE
+BACF BACF EBB681 BACF
+BAD0 BAD0 EBB684 BAD0
+BAD1 BAD1 EBB687 BAD1
+BAD2 BAD2 EBB688 BAD2
+BAD3 BAD3 EBB689 BAD3
+BAD4 BAD4 EBB68A BAD4
+BAD5 BAD5 EBB690 BAD5
+BAD6 BAD6 EBB691 BAD6
+BAD7 BAD7 EBB693 BAD7
+BAD8 BAD8 EBB695 BAD8
+BAD9 BAD9 EBB699 BAD9
+BADA BADA EBB69A BADA
+BADB BADB EBB69C BADB
+BADC BADC EBB6A4 BADC
+BADD BADD EBB6B0 BADD
+BADE BADE EBB6B8 BADE
+BADF BADF EBB794 BADF
+BAE0 BAE0 EBB795 BAE0
+BAE1 BAE1 EBB798 BAE1
+BAE2 BAE2 EBB79C BAE2
+BAE3 BAE3 EBB7A9 BAE3
+BAE4 BAE4 EBB7B0 BAE4
+BAE5 BAE5 EBB7B4 BAE5
+BAE6 BAE6 EBB7B8 BAE6
+BAE7 BAE7 EBB880 BAE7
+BAE8 BAE8 EBB883 BAE8
+BAE9 BAE9 EBB885 BAE9
+BAEA BAEA EBB88C BAEA
+BAEB BAEB EBB88D BAEB
+BAEC BAEC EBB890 BAEC
+BAED BAED EBB894 BAED
+BAEE BAEE EBB89C BAEE
+BAEF BAEF EBB89D BAEF
+BAF0 BAF0 EBB89F BAF0
+BAF1 BAF1 EBB984 BAF1
+BAF2 BAF2 EBB985 BAF2
+BAF3 BAF3 EBB988 BAF3
+BAF4 BAF4 EBB98C BAF4
+BAF5 BAF5 EBB98E BAF5
+BAF6 BAF6 EBB994 BAF6
+BAF7 BAF7 EBB995 BAF7
+BAF8 BAF8 EBB997 BAF8
+BAF9 BAF9 EBB999 BAF9
+BAFA BAFA EBB99A BAFA
+BAFB BAFB EBB99B BAFB
+BAFC BAFC EBB9A0 BAFC
+BAFD BAFD EBB9A1 BAFD
+BAFE BAFE EBB9A4 BAFE
+BB41 BB41 ED8BBB BB41
+BB42 BB42 ED8BBC BB42
+BB43 BB43 ED8BBD BB43
+BB44 BB44 ED8BBE BB44
+BB45 BB45 ED8BBF BB45
+BB46 BB46 ED8C82 BB46
+BB47 BB47 ED8C84 BB47
+BB48 BB48 ED8C86 BB48
+BB49 BB49 ED8C87 BB49
+BB4A BB4A ED8C88 BB4A
+BB4B BB4B ED8C89 BB4B
+BB4C BB4C ED8C8A BB4C
+BB4D BB4D ED8C8B BB4D
+BB4E BB4E ED8C8F BB4E
+BB4F BB4F ED8C91 BB4F
+BB50 BB50 ED8C92 BB50
+BB51 BB51 ED8C93 BB51
+BB52 BB52 ED8C95 BB52
+BB53 BB53 ED8C97 BB53
+BB54 BB54 ED8C98 BB54
+BB55 BB55 ED8C99 BB55
+BB56 BB56 ED8C9A BB56
+BB57 BB57 ED8C9B BB57
+BB58 BB58 ED8C9E BB58
+BB59 BB59 ED8CA2 BB59
+BB5A BB5A ED8CA3 BB5A
+BB61 BB61 ED8CA4 BB61
+BB62 BB62 ED8CA6 BB62
+BB63 BB63 ED8CA7 BB63
+BB64 BB64 ED8CAA BB64
+BB65 BB65 ED8CAB BB65
+BB66 BB66 ED8CAD BB66
+BB67 BB67 ED8CAE BB67
+BB68 BB68 ED8CAF BB68
+BB69 BB69 ED8CB1 BB69
+BB6A BB6A ED8CB2 BB6A
+BB6B BB6B ED8CB3 BB6B
+BB6C BB6C ED8CB4 BB6C
+BB6D BB6D ED8CB5 BB6D
+BB6E BB6E ED8CB6 BB6E
+BB6F BB6F ED8CB7 BB6F
+BB70 BB70 ED8CBA BB70
+BB71 BB71 ED8CBE BB71
+BB72 BB72 ED8CBF BB72
+BB73 BB73 ED8D80 BB73
+BB74 BB74 ED8D81 BB74
+BB75 BB75 ED8D82 BB75
+BB76 BB76 ED8D83 BB76
+BB77 BB77 ED8D86 BB77
+BB78 BB78 ED8D87 BB78
+BB79 BB79 ED8D88 BB79
+BB7A BB7A ED8D89 BB7A
+BB81 BB81 ED8D8A BB81
+BB82 BB82 ED8D8B BB82
+BB83 BB83 ED8D8C BB83
+BB84 BB84 ED8D8D BB84
+BB85 BB85 ED8D8E BB85
+BB86 BB86 ED8D8F BB86
+BB87 BB87 ED8D90 BB87
+BB88 BB88 ED8D91 BB88
+BB89 BB89 ED8D92 BB89
+BB8A BB8A ED8D93 BB8A
+BB8B BB8B ED8D94 BB8B
+BB8C BB8C ED8D95 BB8C
+BB8D BB8D ED8D96 BB8D
+BB8E BB8E ED8D97 BB8E
+BB8F BB8F ED8D98 BB8F
+BB90 BB90 ED8D99 BB90
+BB91 BB91 ED8D9A BB91
+BB92 BB92 ED8D9B BB92
+BB93 BB93 ED8D9C BB93
+BB94 BB94 ED8D9D BB94
+BB95 BB95 ED8D9E BB95
+BB96 BB96 ED8D9F BB96
+BB97 BB97 ED8DA0 BB97
+BB98 BB98 ED8DA1 BB98
+BB99 BB99 ED8DA2 BB99
+BB9A BB9A ED8DA3 BB9A
+BB9B BB9B ED8DA4 BB9B
+BB9C BB9C ED8DA5 BB9C
+BB9D BB9D ED8DA6 BB9D
+BB9E BB9E ED8DA7 BB9E
+BB9F BB9F ED8DA8 BB9F
+BBA0 BBA0 ED8DA9 BBA0
+BBA1 BBA1 EBB9A8 BBA1
+BBA2 BBA2 EBB9AA BBA2
+BBA3 BBA3 EBB9B0 BBA3
+BBA4 BBA4 EBB9B1 BBA4
+BBA5 BBA5 EBB9B3 BBA5
+BBA6 BBA6 EBB9B4 BBA6
+BBA7 BBA7 EBB9B5 BBA7
+BBA8 BBA8 EBB9BB BBA8
+BBA9 BBA9 EBB9BC BBA9
+BBAA BBAA EBB9BD BBAA
+BBAB BBAB EBBA80 BBAB
+BBAC BBAC EBBA84 BBAC
+BBAD BBAD EBBA8C BBAD
+BBAE BBAE EBBA8D BBAE
+BBAF BBAF EBBA8F BBAF
+BBB0 BBB0 EBBA90 BBB0
+BBB1 BBB1 EBBA91 BBB1
+BBB2 BBB2 EBBA98 BBB2
+BBB3 BBB3 EBBA99 BBB3
+BBB4 BBB4 EBBAA8 BBB4
+BBB5 BBB5 EBBB90 BBB5
+BBB6 BBB6 EBBB91 BBB6
+BBB7 BBB7 EBBB94 BBB7
+BBB8 BBB8 EBBB97 BBB8
+BBB9 BBB9 EBBB98 BBB9
+BBBA BBBA EBBBA0 BBBA
+BBBB BBBB EBBBA3 BBBB
+BBBC BBBC EBBBA4 BBBC
+BBBD BBBD EBBBA5 BBBD
+BBBE BBBE EBBBAC BBBE
+BBBF BBBF EBBC81 BBBF
+BBC0 BBC0 EBBC88 BBC0
+BBC1 BBC1 EBBC89 BBC1
+BBC2 BBC2 EBBC98 BBC2
+BBC3 BBC3 EBBC99 BBC3
+BBC4 BBC4 EBBC9B BBC4
+BBC5 BBC5 EBBC9C BBC5
+BBC6 BBC6 EBBC9D BBC6
+BBC7 BBC7 EBBD80 BBC7
+BBC8 BBC8 EBBD81 BBC8
+BBC9 BBC9 EBBD84 BBC9
+BBCA BBCA EBBD88 BBCA
+BBCB BBCB EBBD90 BBCB
+BBCC BBCC EBBD91 BBCC
+BBCD BBCD EBBD95 BBCD
+BBCE BBCE EBBE94 BBCE
+BBCF BBCF EBBEB0 BBCF
+BBD0 BBD0 EBBF85 BBD0
+BBD1 BBD1 EBBF8C BBD1
+BBD2 BBD2 EBBF8D BBD2
+BBD3 BBD3 EBBF90 BBD3
+BBD4 BBD4 EBBF94 BBD4
+BBD5 BBD5 EBBF9C BBD5
+BBD6 BBD6 EBBF9F BBD6
+BBD7 BBD7 EBBFA1 BBD7
+BBD8 BBD8 EC80BC BBD8
+BBD9 BBD9 EC8191 BBD9
+BBDA BBDA EC8198 BBDA
+BBDB BBDB EC819C BBDB
+BBDC BBDC EC81A0 BBDC
+BBDD BBDD EC81A8 BBDD
+BBDE BBDE EC81A9 BBDE
+BBDF BBDF EC8290 BBDF
+BBE0 BBE0 EC8291 BBE0
+BBE1 BBE1 EC8294 BBE1
+BBE2 BBE2 EC8298 BBE2
+BBE3 BBE3 EC82A0 BBE3
+BBE4 BBE4 EC82A1 BBE4
+BBE5 BBE5 EC82A3 BBE5
+BBE6 BBE6 EC82A5 BBE6
+BBE7 BBE7 EC82AC BBE7
+BBE8 BBE8 EC82AD BBE8
+BBE9 BBE9 EC82AF BBE9
+BBEA BBEA EC82B0 BBEA
+BBEB BBEB EC82B3 BBEB
+BBEC BBEC EC82B4 BBEC
+BBED BBED EC82B5 BBED
+BBEE BBEE EC82B6 BBEE
+BBEF BBEF EC82BC BBEF
+BBF0 BBF0 EC82BD BBF0
+BBF1 BBF1 EC82BF BBF1
+BBF2 BBF2 EC8380 BBF2
+BBF3 BBF3 EC8381 BBF3
+BBF4 BBF4 EC8385 BBF4
+BBF5 BBF5 EC8388 BBF5
+BBF6 BBF6 EC8389 BBF6
+BBF7 BBF7 EC838C BBF7
+BBF8 BBF8 EC8390 BBF8
+BBF9 BBF9 EC8398 BBF9
+BBFA BBFA EC8399 BBFA
+BBFB BBFB EC839B BBFB
+BBFC BBFC EC839C BBFC
+BBFD BBFD EC839D BBFD
+BBFE BBFE EC83A4 BBFE
+BC41 BC41 ED8DAA BC41
+BC42 BC42 ED8DAB BC42
+BC43 BC43 ED8DAC BC43
+BC44 BC44 ED8DAD BC44
+BC45 BC45 ED8DAE BC45
+BC46 BC46 ED8DAF BC46
+BC47 BC47 ED8DB0 BC47
+BC48 BC48 ED8DB1 BC48
+BC49 BC49 ED8DB2 BC49
+BC4A BC4A ED8DB3 BC4A
+BC4B BC4B ED8DB4 BC4B
+BC4C BC4C ED8DB5 BC4C
+BC4D BC4D ED8DB6 BC4D
+BC4E BC4E ED8DB7 BC4E
+BC4F BC4F ED8DB8 BC4F
+BC50 BC50 ED8DB9 BC50
+BC51 BC51 ED8DBA BC51
+BC52 BC52 ED8DBB BC52
+BC53 BC53 ED8DBE BC53
+BC54 BC54 ED8DBF BC54
+BC55 BC55 ED8E81 BC55
+BC56 BC56 ED8E82 BC56
+BC57 BC57 ED8E83 BC57
+BC58 BC58 ED8E85 BC58
+BC59 BC59 ED8E86 BC59
+BC5A BC5A ED8E87 BC5A
+BC61 BC61 ED8E88 BC61
+BC62 BC62 ED8E89 BC62
+BC63 BC63 ED8E8A BC63
+BC64 BC64 ED8E8B BC64
+BC65 BC65 ED8E8E BC65
+BC66 BC66 ED8E92 BC66
+BC67 BC67 ED8E93 BC67
+BC68 BC68 ED8E94 BC68
+BC69 BC69 ED8E95 BC69
+BC6A BC6A ED8E96 BC6A
+BC6B BC6B ED8E97 BC6B
+BC6C BC6C ED8E9A BC6C
+BC6D BC6D ED8E9B BC6D
+BC6E BC6E ED8E9D BC6E
+BC6F BC6F ED8E9E BC6F
+BC70 BC70 ED8E9F BC70
+BC71 BC71 ED8EA1 BC71
+BC72 BC72 ED8EA2 BC72
+BC73 BC73 ED8EA3 BC73
+BC74 BC74 ED8EA4 BC74
+BC75 BC75 ED8EA5 BC75
+BC76 BC76 ED8EA6 BC76
+BC77 BC77 ED8EA7 BC77
+BC78 BC78 ED8EAA BC78
+BC79 BC79 ED8EAC BC79
+BC7A BC7A ED8EAE BC7A
+BC81 BC81 ED8EAF BC81
+BC82 BC82 ED8EB0 BC82
+BC83 BC83 ED8EB1 BC83
+BC84 BC84 ED8EB2 BC84
+BC85 BC85 ED8EB3 BC85
+BC86 BC86 ED8EB5 BC86
+BC87 BC87 ED8EB6 BC87
+BC88 BC88 ED8EB7 BC88
+BC89 BC89 ED8EB9 BC89
+BC8A BC8A ED8EBA BC8A
+BC8B BC8B ED8EBB BC8B
+BC8C BC8C ED8EBD BC8C
+BC8D BC8D ED8EBE BC8D
+BC8E BC8E ED8EBF BC8E
+BC8F BC8F ED8F80 BC8F
+BC90 BC90 ED8F81 BC90
+BC91 BC91 ED8F82 BC91
+BC92 BC92 ED8F83 BC92
+BC93 BC93 ED8F86 BC93
+BC94 BC94 ED8F87 BC94
+BC95 BC95 ED8F8A BC95
+BC96 BC96 ED8F8B BC96
+BC97 BC97 ED8F8C BC97
+BC98 BC98 ED8F8D BC98
+BC99 BC99 ED8F8E BC99
+BC9A BC9A ED8F8F BC9A
+BC9B BC9B ED8F91 BC9B
+BC9C BC9C ED8F92 BC9C
+BC9D BC9D ED8F93 BC9D
+BC9E BC9E ED8F94 BC9E
+BC9F BC9F ED8F95 BC9F
+BCA0 BCA0 ED8F96 BCA0
+BCA1 BCA1 EC83A5 BCA1
+BCA2 BCA2 EC83A8 BCA2
+BCA3 BCA3 EC83AC BCA3
+BCA4 BCA4 EC83B4 BCA4
+BCA5 BCA5 EC83B5 BCA5
+BCA6 BCA6 EC83B7 BCA6
+BCA7 BCA7 EC83B9 BCA7
+BCA8 BCA8 EC8480 BCA8
+BCA9 BCA9 EC8484 BCA9
+BCAA BCAA EC8488 BCAA
+BCAB BCAB EC8490 BCAB
+BCAC BCAC EC8495 BCAC
+BCAD BCAD EC849C BCAD
+BCAE BCAE EC849D BCAE
+BCAF BCAF EC849E BCAF
+BCB0 BCB0 EC849F BCB0
+BCB1 BCB1 EC84A0 BCB1
+BCB2 BCB2 EC84A3 BCB2
+BCB3 BCB3 EC84A4 BCB3
+BCB4 BCB4 EC84A6 BCB4
+BCB5 BCB5 EC84A7 BCB5
+BCB6 BCB6 EC84AC BCB6
+BCB7 BCB7 EC84AD BCB7
+BCB8 BCB8 EC84AF BCB8
+BCB9 BCB9 EC84B0 BCB9
+BCBA BCBA EC84B1 BCBA
+BCBB BCBB EC84B6 BCBB
+BCBC BCBC EC84B8 BCBC
+BCBD BCBD EC84B9 BCBD
+BCBE BCBE EC84BC BCBE
+BCBF BCBF EC8580 BCBF
+BCC0 BCC0 EC8588 BCC0
+BCC1 BCC1 EC8589 BCC1
+BCC2 BCC2 EC858B BCC2
+BCC3 BCC3 EC858C BCC3
+BCC4 BCC4 EC858D BCC4
+BCC5 BCC5 EC8594 BCC5
+BCC6 BCC6 EC8595 BCC6
+BCC7 BCC7 EC8598 BCC7
+BCC8 BCC8 EC859C BCC8
+BCC9 BCC9 EC85A4 BCC9
+BCCA BCCA EC85A5 BCCA
+BCCB BCCB EC85A7 BCCB
+BCCC BCCC EC85A8 BCCC
+BCCD BCCD EC85A9 BCCD
+BCCE BCCE EC85B0 BCCE
+BCCF BCCF EC85B4 BCCF
+BCD0 BCD0 EC85B8 BCD0
+BCD1 BCD1 EC8685 BCD1
+BCD2 BCD2 EC868C BCD2
+BCD3 BCD3 EC868D BCD3
+BCD4 BCD4 EC868E BCD4
+BCD5 BCD5 EC8690 BCD5
+BCD6 BCD6 EC8694 BCD6
+BCD7 BCD7 EC8696 BCD7
+BCD8 BCD8 EC869C BCD8
+BCD9 BCD9 EC869D BCD9
+BCDA BCDA EC869F BCDA
+BCDB BCDB EC86A1 BCDB
+BCDC BCDC EC86A5 BCDC
+BCDD BCDD EC86A8 BCDD
+BCDE BCDE EC86A9 BCDE
+BCDF BCDF EC86AC BCDF
+BCE0 BCE0 EC86B0 BCE0
+BCE1 BCE1 EC86BD BCE1
+BCE2 BCE2 EC8784 BCE2
+BCE3 BCE3 EC8788 BCE3
+BCE4 BCE4 EC878C BCE4
+BCE5 BCE5 EC8794 BCE5
+BCE6 BCE6 EC8797 BCE6
+BCE7 BCE7 EC8798 BCE7
+BCE8 BCE8 EC87A0 BCE8
+BCE9 BCE9 EC87A4 BCE9
+BCEA BCEA EC87A8 BCEA
+BCEB BCEB EC87B0 BCEB
+BCEC BCEC EC87B1 BCEC
+BCED BCED EC87B3 BCED
+BCEE BCEE EC87BC BCEE
+BCEF BCEF EC87BD BCEF
+BCF0 BCF0 EC8880 BCF0
+BCF1 BCF1 EC8884 BCF1
+BCF2 BCF2 EC888C BCF2
+BCF3 BCF3 EC888D BCF3
+BCF4 BCF4 EC888F BCF4
+BCF5 BCF5 EC8891 BCF5
+BCF6 BCF6 EC8898 BCF6
+BCF7 BCF7 EC8899 BCF7
+BCF8 BCF8 EC889C BCF8
+BCF9 BCF9 EC889F BCF9
+BCFA BCFA EC88A0 BCFA
+BCFB BCFB EC88A8 BCFB
+BCFC BCFC EC88A9 BCFC
+BCFD BCFD EC88AB BCFD
+BCFE BCFE EC88AD BCFE
+BD41 BD41 ED8F97 BD41
+BD42 BD42 ED8F99 BD42
+BD43 BD43 ED8F9A BD43
+BD44 BD44 ED8F9B BD44
+BD45 BD45 ED8F9C BD45
+BD46 BD46 ED8F9D BD46
+BD47 BD47 ED8F9E BD47
+BD48 BD48 ED8F9F BD48
+BD49 BD49 ED8FA0 BD49
+BD4A BD4A ED8FA2 BD4A
+BD4B BD4B ED8FA4 BD4B
+BD4C BD4C ED8FA5 BD4C
+BD4D BD4D ED8FA6 BD4D
+BD4E BD4E ED8FA7 BD4E
+BD4F BD4F ED8FA8 BD4F
+BD50 BD50 ED8FA9 BD50
+BD51 BD51 ED8FAA BD51
+BD52 BD52 ED8FAB BD52
+BD53 BD53 ED8FAE BD53
+BD54 BD54 ED8FAF BD54
+BD55 BD55 ED8FB1 BD55
+BD56 BD56 ED8FB2 BD56
+BD57 BD57 ED8FB3 BD57
+BD58 BD58 ED8FB5 BD58
+BD59 BD59 ED8FB6 BD59
+BD5A BD5A ED8FB7 BD5A
+BD61 BD61 ED8FB8 BD61
+BD62 BD62 ED8FB9 BD62
+BD63 BD63 ED8FBA BD63
+BD64 BD64 ED8FBB BD64
+BD65 BD65 ED8FBE BD65
+BD66 BD66 ED9080 BD66
+BD67 BD67 ED9082 BD67
+BD68 BD68 ED9083 BD68
+BD69 BD69 ED9084 BD69
+BD6A BD6A ED9085 BD6A
+BD6B BD6B ED9086 BD6B
+BD6C BD6C ED9087 BD6C
+BD6D BD6D ED9089 BD6D
+BD6E BD6E ED908A BD6E
+BD6F BD6F ED908B BD6F
+BD70 BD70 ED908C BD70
+BD71 BD71 ED908D BD71
+BD72 BD72 ED908E BD72
+BD73 BD73 ED908F BD73
+BD74 BD74 ED9090 BD74
+BD75 BD75 ED9091 BD75
+BD76 BD76 ED9092 BD76
+BD77 BD77 ED9093 BD77
+BD78 BD78 ED9094 BD78
+BD79 BD79 ED9095 BD79
+BD7A BD7A ED9096 BD7A
+BD81 BD81 ED9097 BD81
+BD82 BD82 ED9098 BD82
+BD83 BD83 ED9099 BD83
+BD84 BD84 ED909A BD84
+BD85 BD85 ED909B BD85
+BD86 BD86 ED909C BD86
+BD87 BD87 ED909E BD87
+BD88 BD88 ED909F BD88
+BD89 BD89 ED90A0 BD89
+BD8A BD8A ED90A1 BD8A
+BD8B BD8B ED90A2 BD8B
+BD8C BD8C ED90A3 BD8C
+BD8D BD8D ED90A4 BD8D
+BD8E BD8E ED90A5 BD8E
+BD8F BD8F ED90A6 BD8F
+BD90 BD90 ED90A7 BD90
+BD91 BD91 ED90A8 BD91
+BD92 BD92 ED90A9 BD92
+BD93 BD93 ED90AA BD93
+BD94 BD94 ED90AB BD94
+BD95 BD95 ED90AC BD95
+BD96 BD96 ED90AD BD96
+BD97 BD97 ED90AE BD97
+BD98 BD98 ED90AF BD98
+BD99 BD99 ED90B0 BD99
+BD9A BD9A ED90B1 BD9A
+BD9B BD9B ED90B2 BD9B
+BD9C BD9C ED90B3 BD9C
+BD9D BD9D ED90B4 BD9D
+BD9E BD9E ED90B5 BD9E
+BD9F BD9F ED90B6 BD9F
+BDA0 BDA0 ED90B7 BDA0
+BDA1 BDA1 EC88AF BDA1
+BDA2 BDA2 EC88B1 BDA2
+BDA3 BDA3 EC88B2 BDA3
+BDA4 BDA4 EC88B4 BDA4
+BDA5 BDA5 EC8988 BDA5
+BDA6 BDA6 EC8990 BDA6
+BDA7 BDA7 EC8991 BDA7
+BDA8 BDA8 EC8994 BDA8
+BDA9 BDA9 EC8998 BDA9
+BDAA BDAA EC89A0 BDAA
+BDAB BDAB EC89A5 BDAB
+BDAC BDAC EC89AC BDAC
+BDAD BDAD EC89AD BDAD
+BDAE BDAE EC89B0 BDAE
+BDAF BDAF EC89B4 BDAF
+BDB0 BDB0 EC89BC BDB0
+BDB1 BDB1 EC89BD BDB1
+BDB2 BDB2 EC89BF BDB2
+BDB3 BDB3 EC8A81 BDB3
+BDB4 BDB4 EC8A88 BDB4
+BDB5 BDB5 EC8A89 BDB5
+BDB6 BDB6 EC8A90 BDB6
+BDB7 BDB7 EC8A98 BDB7
+BDB8 BDB8 EC8A9B BDB8
+BDB9 BDB9 EC8A9D BDB9
+BDBA BDBA EC8AA4 BDBA
+BDBB BDBB EC8AA5 BDBB
+BDBC BDBC EC8AA8 BDBC
+BDBD BDBD EC8AAC BDBD
+BDBE BDBE EC8AAD BDBE
+BDBF BDBF EC8AB4 BDBF
+BDC0 BDC0 EC8AB5 BDC0
+BDC1 BDC1 EC8AB7 BDC1
+BDC2 BDC2 EC8AB9 BDC2
+BDC3 BDC3 EC8B9C BDC3
+BDC4 BDC4 EC8B9D BDC4
+BDC5 BDC5 EC8BA0 BDC5
+BDC6 BDC6 EC8BA3 BDC6
+BDC7 BDC7 EC8BA4 BDC7
+BDC8 BDC8 EC8BAB BDC8
+BDC9 BDC9 EC8BAC BDC9
+BDCA BDCA EC8BAD BDCA
+BDCB BDCB EC8BAF BDCB
+BDCC BDCC EC8BB1 BDCC
+BDCD BDCD EC8BB6 BDCD
+BDCE BDCE EC8BB8 BDCE
+BDCF BDCF EC8BB9 BDCF
+BDD0 BDD0 EC8BBB BDD0
+BDD1 BDD1 EC8BBC BDD1
+BDD2 BDD2 EC8C80 BDD2
+BDD3 BDD3 EC8C88 BDD3
+BDD4 BDD4 EC8C89 BDD4
+BDD5 BDD5 EC8C8C BDD5
+BDD6 BDD6 EC8C8D BDD6
+BDD7 BDD7 EC8C93 BDD7
+BDD8 BDD8 EC8C94 BDD8
+BDD9 BDD9 EC8C95 BDD9
+BDDA BDDA EC8C98 BDDA
+BDDB BDDB EC8C9C BDDB
+BDDC BDDC EC8CA4 BDDC
+BDDD BDDD EC8CA5 BDDD
+BDDE BDDE EC8CA8 BDDE
+BDDF BDDF EC8CA9 BDDF
+BDE0 BDE0 EC8D85 BDE0
+BDE1 BDE1 EC8DA8 BDE1
+BDE2 BDE2 EC8DA9 BDE2
+BDE3 BDE3 EC8DAC BDE3
+BDE4 BDE4 EC8DB0 BDE4
+BDE5 BDE5 EC8DB2 BDE5
+BDE6 BDE6 EC8DB8 BDE6
+BDE7 BDE7 EC8DB9 BDE7
+BDE8 BDE8 EC8DBC BDE8
+BDE9 BDE9 EC8DBD BDE9
+BDEA BDEA EC8E84 BDEA
+BDEB BDEB EC8E88 BDEB
+BDEC BDEC EC8E8C BDEC
+BDED BDED EC8F80 BDED
+BDEE BDEE EC8F98 BDEE
+BDEF BDEF EC8F99 BDEF
+BDF0 BDF0 EC8F9C BDF0
+BDF1 BDF1 EC8F9F BDF1
+BDF2 BDF2 EC8FA0 BDF2
+BDF3 BDF3 EC8FA2 BDF3
+BDF4 BDF4 EC8FA8 BDF4
+BDF5 BDF5 EC8FA9 BDF5
+BDF6 BDF6 EC8FAD BDF6
+BDF7 BDF7 EC8FB4 BDF7
+BDF8 BDF8 EC8FB5 BDF8
+BDF9 BDF9 EC8FB8 BDF9
+BDFA BDFA EC9088 BDFA
+BDFB BDFB EC9090 BDFB
+BDFC BDFC EC90A4 BDFC
+BDFD BDFD EC90AC BDFD
+BDFE BDFE EC90B0 BDFE
+BE41 BE41 ED90B8 BE41
+BE42 BE42 ED90B9 BE42
+BE43 BE43 ED90BA BE43
+BE44 BE44 ED90BB BE44
+BE45 BE45 ED90BC BE45
+BE46 BE46 ED90BD BE46
+BE47 BE47 ED90BE BE47
+BE48 BE48 ED90BF BE48
+BE49 BE49 ED9181 BE49
+BE4A BE4A ED9182 BE4A
+BE4B BE4B ED9183 BE4B
+BE4C BE4C ED9185 BE4C
+BE4D BE4D ED9186 BE4D
+BE4E BE4E ED9187 BE4E
+BE4F BE4F ED9188 BE4F
+BE50 BE50 ED9189 BE50
+BE51 BE51 ED918A BE51
+BE52 BE52 ED918B BE52
+BE53 BE53 ED918C BE53
+BE54 BE54 ED918D BE54
+BE55 BE55 ED918E BE55
+BE56 BE56 ED918F BE56
+BE57 BE57 ED9190 BE57
+BE58 BE58 ED9191 BE58
+BE59 BE59 ED9192 BE59
+BE5A BE5A ED9193 BE5A
+BE61 BE61 ED9194 BE61
+BE62 BE62 ED9195 BE62
+BE63 BE63 ED9196 BE63
+BE64 BE64 ED9197 BE64
+BE65 BE65 ED9198 BE65
+BE66 BE66 ED9199 BE66
+BE67 BE67 ED919A BE67
+BE68 BE68 ED919B BE68
+BE69 BE69 ED919D BE69
+BE6A BE6A ED919E BE6A
+BE6B BE6B ED919F BE6B
+BE6C BE6C ED91A1 BE6C
+BE6D BE6D ED91A2 BE6D
+BE6E BE6E ED91A3 BE6E
+BE6F BE6F ED91A5 BE6F
+BE70 BE70 ED91A6 BE70
+BE71 BE71 ED91A7 BE71
+BE72 BE72 ED91A8 BE72
+BE73 BE73 ED91A9 BE73
+BE74 BE74 ED91AA BE74
+BE75 BE75 ED91AB BE75
+BE76 BE76 ED91AC BE76
+BE77 BE77 ED91AE BE77
+BE78 BE78 ED91B0 BE78
+BE79 BE79 ED91B1 BE79
+BE7A BE7A ED91B2 BE7A
+BE81 BE81 ED91B3 BE81
+BE82 BE82 ED91B4 BE82
+BE83 BE83 ED91B5 BE83
+BE84 BE84 ED91B6 BE84
+BE85 BE85 ED91B7 BE85
+BE86 BE86 ED91BA BE86
+BE87 BE87 ED91BB BE87
+BE88 BE88 ED91BD BE88
+BE89 BE89 ED91BE BE89
+BE8A BE8A ED9281 BE8A
+BE8B BE8B ED9283 BE8B
+BE8C BE8C ED9284 BE8C
+BE8D BE8D ED9285 BE8D
+BE8E BE8E ED9286 BE8E
+BE8F BE8F ED9287 BE8F
+BE90 BE90 ED928A BE90
+BE91 BE91 ED928C BE91
+BE92 BE92 ED928E BE92
+BE93 BE93 ED928F BE93
+BE94 BE94 ED9290 BE94
+BE95 BE95 ED9291 BE95
+BE96 BE96 ED9292 BE96
+BE97 BE97 ED9293 BE97
+BE98 BE98 ED9295 BE98
+BE99 BE99 ED9296 BE99
+BE9A BE9A ED9297 BE9A
+BE9B BE9B ED9298 BE9B
+BE9C BE9C ED9299 BE9C
+BE9D BE9D ED929A BE9D
+BE9E BE9E ED929B BE9E
+BE9F BE9F ED929C BE9F
+BEA0 BEA0 ED929D BEA0
+BEA1 BEA1 EC90B4 BEA1
+BEA2 BEA2 EC90BC BEA2
+BEA3 BEA3 EC90BD BEA3
+BEA4 BEA4 EC9188 BEA4
+BEA5 BEA5 EC91A4 BEA5
+BEA6 BEA6 EC91A5 BEA6
+BEA7 BEA7 EC91A8 BEA7
+BEA8 BEA8 EC91AC BEA8
+BEA9 BEA9 EC91B4 BEA9
+BEAA BEAA EC91B5 BEAA
+BEAB BEAB EC91B9 BEAB
+BEAC BEAC EC9280 BEAC
+BEAD BEAD EC9294 BEAD
+BEAE BEAE EC929C BEAE
+BEAF BEAF EC92B8 BEAF
+BEB0 BEB0 EC92BC BEB0
+BEB1 BEB1 EC93A9 BEB1
+BEB2 BEB2 EC93B0 BEB2
+BEB3 BEB3 EC93B1 BEB3
+BEB4 BEB4 EC93B4 BEB4
+BEB5 BEB5 EC93B8 BEB5
+BEB6 BEB6 EC93BA BEB6
+BEB7 BEB7 EC93BF BEB7
+BEB8 BEB8 EC9480 BEB8
+BEB9 BEB9 EC9481 BEB9
+BEBA BEBA EC948C BEBA
+BEBB BEBB EC9490 BEBB
+BEBC BEBC EC9494 BEBC
+BEBD BEBD EC949C BEBD
+BEBE BEBE EC94A8 BEBE
+BEBF BEBF EC94A9 BEBF
+BEC0 BEC0 EC94AC BEC0
+BEC1 BEC1 EC94B0 BEC1
+BEC2 BEC2 EC94B8 BEC2
+BEC3 BEC3 EC94B9 BEC3
+BEC4 BEC4 EC94BB BEC4
+BEC5 BEC5 EC94BD BEC5
+BEC6 BEC6 EC9584 BEC6
+BEC7 BEC7 EC9585 BEC7
+BEC8 BEC8 EC9588 BEC8
+BEC9 BEC9 EC9589 BEC9
+BECA BECA EC958A BECA
+BECB BECB EC958C BECB
+BECC BECC EC958D BECC
+BECD BECD EC958E BECD
+BECE BECE EC9593 BECE
+BECF BECF EC9594 BECF
+BED0 BED0 EC9595 BED0
+BED1 BED1 EC9597 BED1
+BED2 BED2 EC9598 BED2
+BED3 BED3 EC9599 BED3
+BED4 BED4 EC959D BED4
+BED5 BED5 EC959E BED5
+BED6 BED6 EC95A0 BED6
+BED7 BED7 EC95A1 BED7
+BED8 BED8 EC95A4 BED8
+BED9 BED9 EC95A8 BED9
+BEDA BEDA EC95B0 BEDA
+BEDB BEDB EC95B1 BEDB
+BEDC BEDC EC95B3 BEDC
+BEDD BEDD EC95B4 BEDD
+BEDE BEDE EC95B5 BEDE
+BEDF BEDF EC95BC BEDF
+BEE0 BEE0 EC95BD BEE0
+BEE1 BEE1 EC9680 BEE1
+BEE2 BEE2 EC9684 BEE2
+BEE3 BEE3 EC9687 BEE3
+BEE4 BEE4 EC968C BEE4
+BEE5 BEE5 EC968D BEE5
+BEE6 BEE6 EC968F BEE6
+BEE7 BEE7 EC9691 BEE7
+BEE8 BEE8 EC9695 BEE8
+BEE9 BEE9 EC9697 BEE9
+BEEA BEEA EC9698 BEEA
+BEEB BEEB EC969C BEEB
+BEEC BEEC EC96A0 BEEC
+BEED BEED EC96A9 BEED
+BEEE BEEE EC96B4 BEEE
+BEEF BEEF EC96B5 BEEF
+BEF0 BEF0 EC96B8 BEF0
+BEF1 BEF1 EC96B9 BEF1
+BEF2 BEF2 EC96BB BEF2
+BEF3 BEF3 EC96BC BEF3
+BEF4 BEF4 EC96BD BEF4
+BEF5 BEF5 EC96BE BEF5
+BEF6 BEF6 EC9784 BEF6
+BEF7 BEF7 EC9785 BEF7
+BEF8 BEF8 EC9786 BEF8
+BEF9 BEF9 EC9787 BEF9
+BEFA BEFA EC9788 BEFA
+BEFB BEFB EC9789 BEFB
+BEFC BEFC EC978A BEFC
+BEFD BEFD EC978C BEFD
+BEFE BEFE EC978E BEFE
+BF41 BF41 ED929E BF41
+BF42 BF42 ED929F BF42
+BF43 BF43 ED92A0 BF43
+BF44 BF44 ED92A1 BF44
+BF45 BF45 ED92A2 BF45
+BF46 BF46 ED92A3 BF46
+BF47 BF47 ED92A4 BF47
+BF48 BF48 ED92A5 BF48
+BF49 BF49 ED92A6 BF49
+BF4A BF4A ED92A7 BF4A
+BF4B BF4B ED92A8 BF4B
+BF4C BF4C ED92AA BF4C
+BF4D BF4D ED92AB BF4D
+BF4E BF4E ED92AC BF4E
+BF4F BF4F ED92AD BF4F
+BF50 BF50 ED92AE BF50
+BF51 BF51 ED92AF BF51
+BF52 BF52 ED92B0 BF52
+BF53 BF53 ED92B1 BF53
+BF54 BF54 ED92B2 BF54
+BF55 BF55 ED92B3 BF55
+BF56 BF56 ED92B4 BF56
+BF57 BF57 ED92B5 BF57
+BF58 BF58 ED92B6 BF58
+BF59 BF59 ED92B7 BF59
+BF5A BF5A ED92B8 BF5A
+BF61 BF61 ED92B9 BF61
+BF62 BF62 ED92BA BF62
+BF63 BF63 ED92BB BF63
+BF64 BF64 ED92BC BF64
+BF65 BF65 ED92BD BF65
+BF66 BF66 ED92BE BF66
+BF67 BF67 ED92BF BF67
+BF68 BF68 ED9380 BF68
+BF69 BF69 ED9381 BF69
+BF6A BF6A ED9382 BF6A
+BF6B BF6B ED9383 BF6B
+BF6C BF6C ED9384 BF6C
+BF6D BF6D ED9385 BF6D
+BF6E BF6E ED9386 BF6E
+BF6F BF6F ED9387 BF6F
+BF70 BF70 ED9388 BF70
+BF71 BF71 ED9389 BF71
+BF72 BF72 ED938A BF72
+BF73 BF73 ED938B BF73
+BF74 BF74 ED938D BF74
+BF75 BF75 ED938E BF75
+BF76 BF76 ED938F BF76
+BF77 BF77 ED9391 BF77
+BF78 BF78 ED9392 BF78
+BF79 BF79 ED9393 BF79
+BF7A BF7A ED9395 BF7A
+BF81 BF81 ED9396 BF81
+BF82 BF82 ED9397 BF82
+BF83 BF83 ED9398 BF83
+BF84 BF84 ED9399 BF84
+BF85 BF85 ED939A BF85
+BF86 BF86 ED939B BF86
+BF87 BF87 ED939D BF87
+BF88 BF88 ED939E BF88
+BF89 BF89 ED93A0 BF89
+BF8A BF8A ED93A1 BF8A
+BF8B BF8B ED93A2 BF8B
+BF8C BF8C ED93A3 BF8C
+BF8D BF8D ED93A4 BF8D
+BF8E BF8E ED93A5 BF8E
+BF8F BF8F ED93A6 BF8F
+BF90 BF90 ED93A7 BF90
+BF91 BF91 ED93A9 BF91
+BF92 BF92 ED93AA BF92
+BF93 BF93 ED93AB BF93
+BF94 BF94 ED93AD BF94
+BF95 BF95 ED93AE BF95
+BF96 BF96 ED93AF BF96
+BF97 BF97 ED93B1 BF97
+BF98 BF98 ED93B2 BF98
+BF99 BF99 ED93B3 BF99
+BF9A BF9A ED93B4 BF9A
+BF9B BF9B ED93B5 BF9B
+BF9C BF9C ED93B6 BF9C
+BF9D BF9D ED93B7 BF9D
+BF9E BF9E ED93B9 BF9E
+BF9F BF9F ED93BA BF9F
+BFA0 BFA0 ED93BC BFA0
+BFA1 BFA1 EC9790 BFA1
+BFA2 BFA2 EC9791 BFA2
+BFA3 BFA3 EC9794 BFA3
+BFA4 BFA4 EC9798 BFA4
+BFA5 BFA5 EC97A0 BFA5
+BFA6 BFA6 EC97A1 BFA6
+BFA7 BFA7 EC97A3 BFA7
+BFA8 BFA8 EC97A5 BFA8
+BFA9 BFA9 EC97AC BFA9
+BFAA BFAA EC97AD BFAA
+BFAB BFAB EC97AE BFAB
+BFAC BFAC EC97B0 BFAC
+BFAD BFAD EC97B4 BFAD
+BFAE BFAE EC97B6 BFAE
+BFAF BFAF EC97B7 BFAF
+BFB0 BFB0 EC97BC BFB0
+BFB1 BFB1 EC97BD BFB1
+BFB2 BFB2 EC97BE BFB2
+BFB3 BFB3 EC97BF BFB3
+BFB4 BFB4 EC9880 BFB4
+BFB5 BFB5 EC9881 BFB5
+BFB6 BFB6 EC9885 BFB6
+BFB7 BFB7 EC9886 BFB7
+BFB8 BFB8 EC9887 BFB8
+BFB9 BFB9 EC9888 BFB9
+BFBA BFBA EC988C BFBA
+BFBB BFBB EC9890 BFBB
+BFBC BFBC EC9898 BFBC
+BFBD BFBD EC9899 BFBD
+BFBE BFBE EC989B BFBE
+BFBF BFBF EC989C BFBF
+BFC0 BFC0 EC98A4 BFC0
+BFC1 BFC1 EC98A5 BFC1
+BFC2 BFC2 EC98A8 BFC2
+BFC3 BFC3 EC98AC BFC3
+BFC4 BFC4 EC98AD BFC4
+BFC5 BFC5 EC98AE BFC5
+BFC6 BFC6 EC98B0 BFC6
+BFC7 BFC7 EC98B3 BFC7
+BFC8 BFC8 EC98B4 BFC8
+BFC9 BFC9 EC98B5 BFC9
+BFCA BFCA EC98B7 BFCA
+BFCB BFCB EC98B9 BFCB
+BFCC BFCC EC98BB BFCC
+BFCD BFCD EC9980 BFCD
+BFCE BFCE EC9981 BFCE
+BFCF BFCF EC9984 BFCF
+BFD0 BFD0 EC9988 BFD0
+BFD1 BFD1 EC9990 BFD1
+BFD2 BFD2 EC9991 BFD2
+BFD3 BFD3 EC9993 BFD3
+BFD4 BFD4 EC9994 BFD4
+BFD5 BFD5 EC9995 BFD5
+BFD6 BFD6 EC999C BFD6
+BFD7 BFD7 EC999D BFD7
+BFD8 BFD8 EC99A0 BFD8
+BFD9 BFD9 EC99AC BFD9
+BFDA BFDA EC99AF BFDA
+BFDB BFDB EC99B1 BFDB
+BFDC BFDC EC99B8 BFDC
+BFDD BFDD EC99B9 BFDD
+BFDE BFDE EC99BC BFDE
+BFDF BFDF EC9A80 BFDF
+BFE0 BFE0 EC9A88 BFE0
+BFE1 BFE1 EC9A89 BFE1
+BFE2 BFE2 EC9A8B BFE2
+BFE3 BFE3 EC9A8D BFE3
+BFE4 BFE4 EC9A94 BFE4
+BFE5 BFE5 EC9A95 BFE5
+BFE6 BFE6 EC9A98 BFE6
+BFE7 BFE7 EC9A9C BFE7
+BFE8 BFE8 EC9AA4 BFE8
+BFE9 BFE9 EC9AA5 BFE9
+BFEA BFEA EC9AA7 BFEA
+BFEB BFEB EC9AA9 BFEB
+BFEC BFEC EC9AB0 BFEC
+BFED BFED EC9AB1 BFED
+BFEE BFEE EC9AB4 BFEE
+BFEF BFEF EC9AB8 BFEF
+BFF0 BFF0 EC9AB9 BFF0
+BFF1 BFF1 EC9ABA BFF1
+BFF2 BFF2 EC9B80 BFF2
+BFF3 BFF3 EC9B81 BFF3
+BFF4 BFF4 EC9B83 BFF4
+BFF5 BFF5 EC9B85 BFF5
+BFF6 BFF6 EC9B8C BFF6
+BFF7 BFF7 EC9B8D BFF7
+BFF8 BFF8 EC9B90 BFF8
+BFF9 BFF9 EC9B94 BFF9
+BFFA BFFA EC9B9C BFFA
+BFFB BFFB EC9B9D BFFB
+BFFC BFFC EC9BA0 BFFC
+BFFD BFFD EC9BA1 BFFD
+BFFE BFFE EC9BA8 BFFE
+C041 C041 ED93BE C041
+C042 C042 ED93BF C042
+C043 C043 ED9480 C043
+C044 C044 ED9481 C044
+C045 C045 ED9482 C045
+C046 C046 ED9483 C046
+C047 C047 ED9485 C047
+C048 C048 ED9486 C048
+C049 C049 ED9487 C049
+C04A C04A ED9489 C04A
+C04B C04B ED948A C04B
+C04C C04C ED948B C04C
+C04D C04D ED948D C04D
+C04E C04E ED948E C04E
+C04F C04F ED948F C04F
+C050 C050 ED9490 C050
+C051 C051 ED9491 C051
+C052 C052 ED9492 C052
+C053 C053 ED9493 C053
+C054 C054 ED9496 C054
+C055 C055 ED9498 C055
+C056 C056 ED9499 C056
+C057 C057 ED949A C057
+C058 C058 ED949B C058
+C059 C059 ED949C C059
+C05A C05A ED949D C05A
+C061 C061 ED949E C061
+C062 C062 ED949F C062
+C063 C063 ED94A0 C063
+C064 C064 ED94A1 C064
+C065 C065 ED94A2 C065
+C066 C066 ED94A3 C066
+C067 C067 ED94A4 C067
+C068 C068 ED94A5 C068
+C069 C069 ED94A6 C069
+C06A C06A ED94A7 C06A
+C06B C06B ED94A8 C06B
+C06C C06C ED94A9 C06C
+C06D C06D ED94AA C06D
+C06E C06E ED94AB C06E
+C06F C06F ED94AC C06F
+C070 C070 ED94AD C070
+C071 C071 ED94AE C071
+C072 C072 ED94AF C072
+C073 C073 ED94B0 C073
+C074 C074 ED94B1 C074
+C075 C075 ED94B2 C075
+C076 C076 ED94B3 C076
+C077 C077 ED94B4 C077
+C078 C078 ED94B5 C078
+C079 C079 ED94B6 C079
+C07A C07A ED94B7 C07A
+C081 C081 ED94B8 C081
+C082 C082 ED94B9 C082
+C083 C083 ED94BA C083
+C084 C084 ED94BB C084
+C085 C085 ED94BE C085
+C086 C086 ED94BF C086
+C087 C087 ED9581 C087
+C088 C088 ED9582 C088
+C089 C089 ED9583 C089
+C08A C08A ED9585 C08A
+C08B C08B ED9586 C08B
+C08C C08C ED9587 C08C
+C08D C08D ED9588 C08D
+C08E C08E ED9589 C08E
+C08F C08F ED958A C08F
+C090 C090 ED958B C090
+C091 C091 ED958E C091
+C092 C092 ED9590 C092
+C093 C093 ED9592 C093
+C094 C094 ED9593 C094
+C095 C095 ED9594 C095
+C096 C096 ED9595 C096
+C097 C097 ED9596 C097
+C098 C098 ED9597 C098
+C099 C099 ED959A C099
+C09A C09A ED959B C09A
+C09B C09B ED959D C09B
+C09C C09C ED959E C09C
+C09D C09D ED959F C09D
+C09E C09E ED95A1 C09E
+C09F C09F ED95A2 C09F
+C0A0 C0A0 ED95A3 C0A0
+C0A1 C0A1 EC9BA9 C0A1
+C0A2 C0A2 EC9BAC C0A2
+C0A3 C0A3 EC9BB0 C0A3
+C0A4 C0A4 EC9BB8 C0A4
+C0A5 C0A5 EC9BB9 C0A5
+C0A6 C0A6 EC9BBD C0A6
+C0A7 C0A7 EC9C84 C0A7
+C0A8 C0A8 EC9C85 C0A8
+C0A9 C0A9 EC9C88 C0A9
+C0AA C0AA EC9C8C C0AA
+C0AB C0AB EC9C94 C0AB
+C0AC C0AC EC9C95 C0AC
+C0AD C0AD EC9C97 C0AD
+C0AE C0AE EC9C99 C0AE
+C0AF C0AF EC9CA0 C0AF
+C0B0 C0B0 EC9CA1 C0B0
+C0B1 C0B1 EC9CA4 C0B1
+C0B2 C0B2 EC9CA8 C0B2
+C0B3 C0B3 EC9CB0 C0B3
+C0B4 C0B4 EC9CB1 C0B4
+C0B5 C0B5 EC9CB3 C0B5
+C0B6 C0B6 EC9CB5 C0B6
+C0B7 C0B7 EC9CB7 C0B7
+C0B8 C0B8 EC9CBC C0B8
+C0B9 C0B9 EC9CBD C0B9
+C0BA C0BA EC9D80 C0BA
+C0BB C0BB EC9D84 C0BB
+C0BC C0BC EC9D8A C0BC
+C0BD C0BD EC9D8C C0BD
+C0BE C0BE EC9D8D C0BE
+C0BF C0BF EC9D8F C0BF
+C0C0 C0C0 EC9D91 C0C0
+C0C1 C0C1 EC9D92 C0C1
+C0C2 C0C2 EC9D93 C0C2
+C0C3 C0C3 EC9D94 C0C3
+C0C4 C0C4 EC9D95 C0C4
+C0C5 C0C5 EC9D96 C0C5
+C0C6 C0C6 EC9D97 C0C6
+C0C7 C0C7 EC9D98 C0C7
+C0C8 C0C8 EC9D9C C0C8
+C0C9 C0C9 EC9DA0 C0C9
+C0CA C0CA EC9DA8 C0CA
+C0CB C0CB EC9DAB C0CB
+C0CC C0CC EC9DB4 C0CC
+C0CD C0CD EC9DB5 C0CD
+C0CE C0CE EC9DB8 C0CE
+C0CF C0CF EC9DBC C0CF
+C0D0 C0D0 EC9DBD C0D0
+C0D1 C0D1 EC9DBE C0D1
+C0D2 C0D2 EC9E83 C0D2
+C0D3 C0D3 EC9E84 C0D3
+C0D4 C0D4 EC9E85 C0D4
+C0D5 C0D5 EC9E87 C0D5
+C0D6 C0D6 EC9E88 C0D6
+C0D7 C0D7 EC9E89 C0D7
+C0D8 C0D8 EC9E8A C0D8
+C0D9 C0D9 EC9E8E C0D9
+C0DA C0DA EC9E90 C0DA
+C0DB C0DB EC9E91 C0DB
+C0DC C0DC EC9E94 C0DC
+C0DD C0DD EC9E96 C0DD
+C0DE C0DE EC9E97 C0DE
+C0DF C0DF EC9E98 C0DF
+C0E0 C0E0 EC9E9A C0E0
+C0E1 C0E1 EC9EA0 C0E1
+C0E2 C0E2 EC9EA1 C0E2
+C0E3 C0E3 EC9EA3 C0E3
+C0E4 C0E4 EC9EA4 C0E4
+C0E5 C0E5 EC9EA5 C0E5
+C0E6 C0E6 EC9EA6 C0E6
+C0E7 C0E7 EC9EAC C0E7
+C0E8 C0E8 EC9EAD C0E8
+C0E9 C0E9 EC9EB0 C0E9
+C0EA C0EA EC9EB4 C0EA
+C0EB C0EB EC9EBC C0EB
+C0EC C0EC EC9EBD C0EC
+C0ED C0ED EC9EBF C0ED
+C0EE C0EE EC9F80 C0EE
+C0EF C0EF EC9F81 C0EF
+C0F0 C0F0 EC9F88 C0F0
+C0F1 C0F1 EC9F89 C0F1
+C0F2 C0F2 EC9F8C C0F2
+C0F3 C0F3 EC9F8E C0F3
+C0F4 C0F4 EC9F90 C0F4
+C0F5 C0F5 EC9F98 C0F5
+C0F6 C0F6 EC9F9D C0F6
+C0F7 C0F7 EC9FA4 C0F7
+C0F8 C0F8 EC9FA8 C0F8
+C0F9 C0F9 EC9FAC C0F9
+C0FA C0FA ECA080 C0FA
+C0FB C0FB ECA081 C0FB
+C0FC C0FC ECA084 C0FC
+C0FD C0FD ECA088 C0FD
+C0FE C0FE ECA08A C0FE
+C141 C141 ED95A4 C141
+C142 C142 ED95A6 C142
+C143 C143 ED95A7 C143
+C144 C144 ED95AA C144
+C145 C145 ED95AC C145
+C146 C146 ED95AE C146
+C147 C147 ED95AF C147
+C148 C148 ED95B0 C148
+C149 C149 ED95B1 C149
+C14A C14A ED95B2 C14A
+C14B C14B ED95B3 C14B
+C14C C14C ED95B6 C14C
+C14D C14D ED95B7 C14D
+C14E C14E ED95B9 C14E
+C14F C14F ED95BA C14F
+C150 C150 ED95BB C150
+C151 C151 ED95BD C151
+C152 C152 ED95BE C152
+C153 C153 ED95BF C153
+C154 C154 ED9680 C154
+C155 C155 ED9681 C155
+C156 C156 ED9682 C156
+C157 C157 ED9683 C157
+C158 C158 ED9686 C158
+C159 C159 ED968A C159
+C15A C15A ED968B C15A
+C161 C161 ED968C C161
+C162 C162 ED968D C162
+C163 C163 ED968E C163
+C164 C164 ED968F C164
+C165 C165 ED9691 C165
+C166 C166 ED9692 C166
+C167 C167 ED9693 C167
+C168 C168 ED9694 C168
+C169 C169 ED9695 C169
+C16A C16A ED9696 C16A
+C16B C16B ED9697 C16B
+C16C C16C ED9698 C16C
+C16D C16D ED9699 C16D
+C16E C16E ED969A C16E
+C16F C16F ED969B C16F
+C170 C170 ED969C C170
+C171 C171 ED969D C171
+C172 C172 ED969E C172
+C173 C173 ED969F C173
+C174 C174 ED96A0 C174
+C175 C175 ED96A1 C175
+C176 C176 ED96A2 C176
+C177 C177 ED96A3 C177
+C178 C178 ED96A4 C178
+C179 C179 ED96A6 C179
+C17A C17A ED96A7 C17A
+C181 C181 ED96A8 C181
+C182 C182 ED96A9 C182
+C183 C183 ED96AA C183
+C184 C184 ED96AB C184
+C185 C185 ED96AC C185
+C186 C186 ED96AD C186
+C187 C187 ED96AE C187
+C188 C188 ED96AF C188
+C189 C189 ED96B0 C189
+C18A C18A ED96B1 C18A
+C18B C18B ED96B2 C18B
+C18C C18C ED96B3 C18C
+C18D C18D ED96B4 C18D
+C18E C18E ED96B5 C18E
+C18F C18F ED96B6 C18F
+C190 C190 ED96B7 C190
+C191 C191 ED96B8 C191
+C192 C192 ED96B9 C192
+C193 C193 ED96BA C193
+C194 C194 ED96BB C194
+C195 C195 ED96BC C195
+C196 C196 ED96BD C196
+C197 C197 ED96BE C197
+C198 C198 ED96BF C198
+C199 C199 ED9780 C199
+C19A C19A ED9781 C19A
+C19B C19B ED9782 C19B
+C19C C19C ED9783 C19C
+C19D C19D ED9784 C19D
+C19E C19E ED9785 C19E
+C19F C19F ED9786 C19F
+C1A0 C1A0 ED9787 C1A0
+C1A1 C1A1 ECA090 C1A1
+C1A2 C1A2 ECA091 C1A2
+C1A3 C1A3 ECA093 C1A3
+C1A4 C1A4 ECA095 C1A4
+C1A5 C1A5 ECA096 C1A5
+C1A6 C1A6 ECA09C C1A6
+C1A7 C1A7 ECA09D C1A7
+C1A8 C1A8 ECA0A0 C1A8
+C1A9 C1A9 ECA0A4 C1A9
+C1AA C1AA ECA0AC C1AA
+C1AB C1AB ECA0AD C1AB
+C1AC C1AC ECA0AF C1AC
+C1AD C1AD ECA0B1 C1AD
+C1AE C1AE ECA0B8 C1AE
+C1AF C1AF ECA0BC C1AF
+C1B0 C1B0 ECA180 C1B0
+C1B1 C1B1 ECA188 C1B1
+C1B2 C1B2 ECA189 C1B2
+C1B3 C1B3 ECA18C C1B3
+C1B4 C1B4 ECA18D C1B4
+C1B5 C1B5 ECA194 C1B5
+C1B6 C1B6 ECA1B0 C1B6
+C1B7 C1B7 ECA1B1 C1B7
+C1B8 C1B8 ECA1B4 C1B8
+C1B9 C1B9 ECA1B8 C1B9
+C1BA C1BA ECA1BA C1BA
+C1BB C1BB ECA280 C1BB
+C1BC C1BC ECA281 C1BC
+C1BD C1BD ECA283 C1BD
+C1BE C1BE ECA285 C1BE
+C1BF C1BF ECA286 C1BF
+C1C0 C1C0 ECA287 C1C0
+C1C1 C1C1 ECA28B C1C1
+C1C2 C1C2 ECA28C C1C2
+C1C3 C1C3 ECA28D C1C3
+C1C4 C1C4 ECA294 C1C4
+C1C5 C1C5 ECA29D C1C5
+C1C6 C1C6 ECA29F C1C6
+C1C7 C1C7 ECA2A1 C1C7
+C1C8 C1C8 ECA2A8 C1C8
+C1C9 C1C9 ECA2BC C1C9
+C1CA C1CA ECA2BD C1CA
+C1CB C1CB ECA384 C1CB
+C1CC C1CC ECA388 C1CC
+C1CD C1CD ECA38C C1CD
+C1CE C1CE ECA394 C1CE
+C1CF C1CF ECA395 C1CF
+C1D0 C1D0 ECA397 C1D0
+C1D1 C1D1 ECA399 C1D1
+C1D2 C1D2 ECA3A0 C1D2
+C1D3 C1D3 ECA3A1 C1D3
+C1D4 C1D4 ECA3A4 C1D4
+C1D5 C1D5 ECA3B5 C1D5
+C1D6 C1D6 ECA3BC C1D6
+C1D7 C1D7 ECA3BD C1D7
+C1D8 C1D8 ECA480 C1D8
+C1D9 C1D9 ECA484 C1D9
+C1DA C1DA ECA485 C1DA
+C1DB C1DB ECA486 C1DB
+C1DC C1DC ECA48C C1DC
+C1DD C1DD ECA48D C1DD
+C1DE C1DE ECA48F C1DE
+C1DF C1DF ECA491 C1DF
+C1E0 C1E0 ECA498 C1E0
+C1E1 C1E1 ECA4AC C1E1
+C1E2 C1E2 ECA4B4 C1E2
+C1E3 C1E3 ECA590 C1E3
+C1E4 C1E4 ECA591 C1E4
+C1E5 C1E5 ECA594 C1E5
+C1E6 C1E6 ECA598 C1E6
+C1E7 C1E7 ECA5A0 C1E7
+C1E8 C1E8 ECA5A1 C1E8
+C1E9 C1E9 ECA5A3 C1E9
+C1EA C1EA ECA5AC C1EA
+C1EB C1EB ECA5B0 C1EB
+C1EC C1EC ECA5B4 C1EC
+C1ED C1ED ECA5BC C1ED
+C1EE C1EE ECA688 C1EE
+C1EF C1EF ECA689 C1EF
+C1F0 C1F0 ECA68C C1F0
+C1F1 C1F1 ECA690 C1F1
+C1F2 C1F2 ECA698 C1F2
+C1F3 C1F3 ECA699 C1F3
+C1F4 C1F4 ECA69B C1F4
+C1F5 C1F5 ECA69D C1F5
+C1F6 C1F6 ECA780 C1F6
+C1F7 C1F7 ECA781 C1F7
+C1F8 C1F8 ECA784 C1F8
+C1F9 C1F9 ECA787 C1F9
+C1FA C1FA ECA788 C1FA
+C1FB C1FB ECA78A C1FB
+C1FC C1FC ECA790 C1FC
+C1FD C1FD ECA791 C1FD
+C1FE C1FE ECA793 C1FE
+C241 C241 ED978A C241
+C242 C242 ED978B C242
+C243 C243 ED978D C243
+C244 C244 ED978E C244
+C245 C245 ED978F C245
+C246 C246 ED9791 C246
+C247 C247 ED9793 C247
+C248 C248 ED9794 C248
+C249 C249 ED9795 C249
+C24A C24A ED9796 C24A
+C24B C24B ED9797 C24B
+C24C C24C ED979A C24C
+C24D C24D ED979C C24D
+C24E C24E ED979E C24E
+C24F C24F ED979F C24F
+C250 C250 ED97A0 C250
+C251 C251 ED97A1 C251
+C252 C252 ED97A2 C252
+C253 C253 ED97A3 C253
+C254 C254 ED97A6 C254
+C255 C255 ED97A7 C255
+C256 C256 ED97A9 C256
+C257 C257 ED97AA C257
+C258 C258 ED97AB C258
+C259 C259 ED97AD C259
+C25A C25A ED97AE C25A
+C261 C261 ED97AF C261
+C262 C262 ED97B0 C262
+C263 C263 ED97B1 C263
+C264 C264 ED97B2 C264
+C265 C265 ED97B3 C265
+C266 C266 ED97B6 C266
+C267 C267 ED97B8 C267
+C268 C268 ED97BA C268
+C269 C269 ED97BB C269
+C26A C26A ED97BC C26A
+C26B C26B ED97BD C26B
+C26C C26C ED97BE C26C
+C26D C26D ED97BF C26D
+C26E C26E ED9882 C26E
+C26F C26F ED9883 C26F
+C270 C270 ED9885 C270
+C271 C271 ED9886 C271
+C272 C272 ED9887 C272
+C273 C273 ED9889 C273
+C274 C274 ED988A C274
+C275 C275 ED988B C275
+C276 C276 ED988C C276
+C277 C277 ED988D C277
+C278 C278 ED988E C278
+C279 C279 ED988F C279
+C27A C27A ED9892 C27A
+C281 C281 ED9896 C281
+C282 C282 ED9897 C282
+C283 C283 ED9898 C283
+C284 C284 ED9899 C284
+C285 C285 ED989A C285
+C286 C286 ED989B C286
+C287 C287 ED989D C287
+C288 C288 ED989E C288
+C289 C289 ED989F C289
+C28A C28A ED98A1 C28A
+C28B C28B ED98A2 C28B
+C28C C28C ED98A3 C28C
+C28D C28D ED98A5 C28D
+C28E C28E ED98A6 C28E
+C28F C28F ED98A7 C28F
+C290 C290 ED98A8 C290
+C291 C291 ED98A9 C291
+C292 C292 ED98AA C292
+C293 C293 ED98AB C293
+C294 C294 ED98AC C294
+C295 C295 ED98AE C295
+C296 C296 ED98AF C296
+C297 C297 ED98B0 C297
+C298 C298 ED98B1 C298
+C299 C299 ED98B2 C299
+C29A C29A ED98B3 C29A
+C29B C29B ED98B4 C29B
+C29C C29C ED98B5 C29C
+C29D C29D ED98B6 C29D
+C29E C29E ED98B7 C29E
+C29F C29F ED98BA C29F
+C2A0 C2A0 ED98BB C2A0
+C2A1 C2A1 ECA795 C2A1
+C2A2 C2A2 ECA796 C2A2
+C2A3 C2A3 ECA799 C2A3
+C2A4 C2A4 ECA79A C2A4
+C2A5 C2A5 ECA79C C2A5
+C2A6 C2A6 ECA79D C2A6
+C2A7 C2A7 ECA7A0 C2A7
+C2A8 C2A8 ECA7A2 C2A8
+C2A9 C2A9 ECA7A4 C2A9
+C2AA C2AA ECA7A7 C2AA
+C2AB C2AB ECA7AC C2AB
+C2AC C2AC ECA7AD C2AC
+C2AD C2AD ECA7AF C2AD
+C2AE C2AE ECA7B0 C2AE
+C2AF C2AF ECA7B1 C2AF
+C2B0 C2B0 ECA7B8 C2B0
+C2B1 C2B1 ECA7B9 C2B1
+C2B2 C2B2 ECA7BC C2B2
+C2B3 C2B3 ECA880 C2B3
+C2B4 C2B4 ECA888 C2B4
+C2B5 C2B5 ECA889 C2B5
+C2B6 C2B6 ECA88B C2B6
+C2B7 C2B7 ECA88C C2B7
+C2B8 C2B8 ECA88D C2B8
+C2B9 C2B9 ECA894 C2B9
+C2BA C2BA ECA898 C2BA
+C2BB C2BB ECA8A9 C2BB
+C2BC C2BC ECA98C C2BC
+C2BD C2BD ECA98D C2BD
+C2BE C2BE ECA990 C2BE
+C2BF C2BF ECA994 C2BF
+C2C0 C2C0 ECA99C C2C0
+C2C1 C2C1 ECA99D C2C1
+C2C2 C2C2 ECA99F C2C2
+C2C3 C2C3 ECA9A0 C2C3
+C2C4 C2C4 ECA9A1 C2C4
+C2C5 C2C5 ECA9A8 C2C5
+C2C6 C2C6 ECA9BD C2C6
+C2C7 C2C7 ECAA84 C2C7
+C2C8 C2C8 ECAA98 C2C8
+C2C9 C2C9 ECAABC C2C9
+C2CA C2CA ECAABD C2CA
+C2CB C2CB ECAB80 C2CB
+C2CC C2CC ECAB84 C2CC
+C2CD C2CD ECAB8C C2CD
+C2CE C2CE ECAB8D C2CE
+C2CF C2CF ECAB8F C2CF
+C2D0 C2D0 ECAB91 C2D0
+C2D1 C2D1 ECAB93 C2D1
+C2D2 C2D2 ECAB98 C2D2
+C2D3 C2D3 ECAB99 C2D3
+C2D4 C2D4 ECABA0 C2D4
+C2D5 C2D5 ECABAC C2D5
+C2D6 C2D6 ECABB4 C2D6
+C2D7 C2D7 ECAC88 C2D7
+C2D8 C2D8 ECAC90 C2D8
+C2D9 C2D9 ECAC94 C2D9
+C2DA C2DA ECAC98 C2DA
+C2DB C2DB ECACA0 C2DB
+C2DC C2DC ECACA1 C2DC
+C2DD C2DD ECAD81 C2DD
+C2DE C2DE ECAD88 C2DE
+C2DF C2DF ECAD89 C2DF
+C2E0 C2E0 ECAD8C C2E0
+C2E1 C2E1 ECAD90 C2E1
+C2E2 C2E2 ECAD98 C2E2
+C2E3 C2E3 ECAD99 C2E3
+C2E4 C2E4 ECAD9D C2E4
+C2E5 C2E5 ECADA4 C2E5
+C2E6 C2E6 ECADB8 C2E6
+C2E7 C2E7 ECADB9 C2E7
+C2E8 C2E8 ECAE9C C2E8
+C2E9 C2E9 ECAEB8 C2E9
+C2EA C2EA ECAF94 C2EA
+C2EB C2EB ECAFA4 C2EB
+C2EC C2EC ECAFA7 C2EC
+C2ED C2ED ECAFA9 C2ED
+C2EE C2EE ECB08C C2EE
+C2EF C2EF ECB08D C2EF
+C2F0 C2F0 ECB090 C2F0
+C2F1 C2F1 ECB094 C2F1
+C2F2 C2F2 ECB09C C2F2
+C2F3 C2F3 ECB09D C2F3
+C2F4 C2F4 ECB0A1 C2F4
+C2F5 C2F5 ECB0A2 C2F5
+C2F6 C2F6 ECB0A7 C2F6
+C2F7 C2F7 ECB0A8 C2F7
+C2F8 C2F8 ECB0A9 C2F8
+C2F9 C2F9 ECB0AC C2F9
+C2FA C2FA ECB0AE C2FA
+C2FB C2FB ECB0B0 C2FB
+C2FC C2FC ECB0B8 C2FC
+C2FD C2FD ECB0B9 C2FD
+C2FE C2FE ECB0BB C2FE
+C341 C341 ED98BD C341
+C342 C342 ED98BE C342
+C343 C343 ED98BF C343
+C344 C344 ED9981 C344
+C345 C345 ED9982 C345
+C346 C346 ED9983 C346
+C347 C347 ED9984 C347
+C348 C348 ED9986 C348
+C349 C349 ED9987 C349
+C34A C34A ED998A C34A
+C34B C34B ED998C C34B
+C34C C34C ED998E C34C
+C34D C34D ED998F C34D
+C34E C34E ED9990 C34E
+C34F C34F ED9992 C34F
+C350 C350 ED9993 C350
+C351 C351 ED9996 C351
+C352 C352 ED9997 C352
+C353 C353 ED9999 C353
+C354 C354 ED999A C354
+C355 C355 ED999B C355
+C356 C356 ED999D C356
+C357 C357 ED999E C357
+C358 C358 ED999F C358
+C359 C359 ED99A0 C359
+C35A C35A ED99A1 C35A
+C361 C361 ED99A2 C361
+C362 C362 ED99A3 C362
+C363 C363 ED99A4 C363
+C364 C364 ED99A5 C364
+C365 C365 ED99A6 C365
+C366 C366 ED99A8 C366
+C367 C367 ED99AA C367
+C368 C368 ED99AB C368
+C369 C369 ED99AC C369
+C36A C36A ED99AD C36A
+C36B C36B ED99AE C36B
+C36C C36C ED99AF C36C
+C36D C36D ED99B2 C36D
+C36E C36E ED99B3 C36E
+C36F C36F ED99B5 C36F
+C370 C370 ED99B6 C370
+C371 C371 ED99B7 C371
+C372 C372 ED99B8 C372
+C373 C373 ED99B9 C373
+C374 C374 ED99BA C374
+C375 C375 ED99BB C375
+C376 C376 ED99BC C376
+C377 C377 ED99BD C377
+C378 C378 ED99BE C378
+C379 C379 ED99BF C379
+C37A C37A ED9A80 C37A
+C381 C381 ED9A81 C381
+C382 C382 ED9A82 C382
+C383 C383 ED9A84 C383
+C384 C384 ED9A86 C384
+C385 C385 ED9A87 C385
+C386 C386 ED9A88 C386
+C387 C387 ED9A89 C387
+C388 C388 ED9A8A C388
+C389 C389 ED9A8B C389
+C38A C38A ED9A8E C38A
+C38B C38B ED9A8F C38B
+C38C C38C ED9A91 C38C
+C38D C38D ED9A92 C38D
+C38E C38E ED9A93 C38E
+C38F C38F ED9A95 C38F
+C390 C390 ED9A96 C390
+C391 C391 ED9A97 C391
+C392 C392 ED9A98 C392
+C393 C393 ED9A99 C393
+C394 C394 ED9A9A C394
+C395 C395 ED9A9B C395
+C396 C396 ED9A9C C396
+C397 C397 ED9A9E C397
+C398 C398 ED9AA0 C398
+C399 C399 ED9AA2 C399
+C39A C39A ED9AA3 C39A
+C39B C39B ED9AA4 C39B
+C39C C39C ED9AA5 C39C
+C39D C39D ED9AA6 C39D
+C39E C39E ED9AA7 C39E
+C39F C39F ED9AA9 C39F
+C3A0 C3A0 ED9AAA C3A0
+C3A1 C3A1 ECB0BC C3A1
+C3A2 C3A2 ECB0BD C3A2
+C3A3 C3A3 ECB0BE C3A3
+C3A4 C3A4 ECB184 C3A4
+C3A5 C3A5 ECB185 C3A5
+C3A6 C3A6 ECB188 C3A6
+C3A7 C3A7 ECB18C C3A7
+C3A8 C3A8 ECB194 C3A8
+C3A9 C3A9 ECB195 C3A9
+C3AA C3AA ECB197 C3AA
+C3AB C3AB ECB198 C3AB
+C3AC C3AC ECB199 C3AC
+C3AD C3AD ECB1A0 C3AD
+C3AE C3AE ECB1A4 C3AE
+C3AF C3AF ECB1A6 C3AF
+C3B0 C3B0 ECB1A8 C3B0
+C3B1 C3B1 ECB1B0 C3B1
+C3B2 C3B2 ECB1B5 C3B2
+C3B3 C3B3 ECB298 C3B3
+C3B4 C3B4 ECB299 C3B4
+C3B5 C3B5 ECB29C C3B5
+C3B6 C3B6 ECB2A0 C3B6
+C3B7 C3B7 ECB2A8 C3B7
+C3B8 C3B8 ECB2A9 C3B8
+C3B9 C3B9 ECB2AB C3B9
+C3BA C3BA ECB2AC C3BA
+C3BB C3BB ECB2AD C3BB
+C3BC C3BC ECB2B4 C3BC
+C3BD C3BD ECB2B5 C3BD
+C3BE C3BE ECB2B8 C3BE
+C3BF C3BF ECB2BC C3BF
+C3C0 C3C0 ECB384 C3C0
+C3C1 C3C1 ECB385 C3C1
+C3C2 C3C2 ECB387 C3C2
+C3C3 C3C3 ECB389 C3C3
+C3C4 C3C4 ECB390 C3C4
+C3C5 C3C5 ECB394 C3C5
+C3C6 C3C6 ECB3A4 C3C6
+C3C7 C3C7 ECB3AC C3C7
+C3C8 C3C8 ECB3B0 C3C8
+C3C9 C3C9 ECB481 C3C9
+C3CA C3CA ECB488 C3CA
+C3CB C3CB ECB489 C3CB
+C3CC C3CC ECB48C C3CC
+C3CD C3CD ECB490 C3CD
+C3CE C3CE ECB498 C3CE
+C3CF C3CF ECB499 C3CF
+C3D0 C3D0 ECB49B C3D0
+C3D1 C3D1 ECB49D C3D1
+C3D2 C3D2 ECB4A4 C3D2
+C3D3 C3D3 ECB4A8 C3D3
+C3D4 C3D4 ECB4AC C3D4
+C3D5 C3D5 ECB4B9 C3D5
+C3D6 C3D6 ECB59C C3D6
+C3D7 C3D7 ECB5A0 C3D7
+C3D8 C3D8 ECB5A4 C3D8
+C3D9 C3D9 ECB5AC C3D9
+C3DA C3DA ECB5AD C3DA
+C3DB C3DB ECB5AF C3DB
+C3DC C3DC ECB5B1 C3DC
+C3DD C3DD ECB5B8 C3DD
+C3DE C3DE ECB688 C3DE
+C3DF C3DF ECB694 C3DF
+C3E0 C3E0 ECB695 C3E0
+C3E1 C3E1 ECB698 C3E1
+C3E2 C3E2 ECB69C C3E2
+C3E3 C3E3 ECB6A4 C3E3
+C3E4 C3E4 ECB6A5 C3E4
+C3E5 C3E5 ECB6A7 C3E5
+C3E6 C3E6 ECB6A9 C3E6
+C3E7 C3E7 ECB6B0 C3E7
+C3E8 C3E8 ECB784 C3E8
+C3E9 C3E9 ECB78C C3E9
+C3EA C3EA ECB790 C3EA
+C3EB C3EB ECB7A8 C3EB
+C3EC C3EC ECB7AC C3EC
+C3ED C3ED ECB7B0 C3ED
+C3EE C3EE ECB7B8 C3EE
+C3EF C3EF ECB7B9 C3EF
+C3F0 C3F0 ECB7BB C3F0
+C3F1 C3F1 ECB7BD C3F1
+C3F2 C3F2 ECB884 C3F2
+C3F3 C3F3 ECB888 C3F3
+C3F4 C3F4 ECB88C C3F4
+C3F5 C3F5 ECB894 C3F5
+C3F6 C3F6 ECB899 C3F6
+C3F7 C3F7 ECB8A0 C3F7
+C3F8 C3F8 ECB8A1 C3F8
+C3F9 C3F9 ECB8A4 C3F9
+C3FA C3FA ECB8A8 C3FA
+C3FB C3FB ECB8B0 C3FB
+C3FC C3FC ECB8B1 C3FC
+C3FD C3FD ECB8B3 C3FD
+C3FE C3FE ECB8B5 C3FE
+C441 C441 ED9AAB C441
+C442 C442 ED9AAD C442
+C443 C443 ED9AAE C443
+C444 C444 ED9AAF C444
+C445 C445 ED9AB1 C445
+C446 C446 ED9AB2 C446
+C447 C447 ED9AB3 C447
+C448 C448 ED9AB4 C448
+C449 C449 ED9AB5 C449
+C44A C44A ED9AB6 C44A
+C44B C44B ED9AB7 C44B
+C44C C44C ED9AB8 C44C
+C44D C44D ED9ABA C44D
+C44E C44E ED9ABC C44E
+C44F C44F ED9ABD C44F
+C450 C450 ED9ABE C450
+C451 C451 ED9ABF C451
+C452 C452 ED9B80 C452
+C453 C453 ED9B81 C453
+C454 C454 ED9B82 C454
+C455 C455 ED9B83 C455
+C456 C456 ED9B86 C456
+C457 C457 ED9B87 C457
+C458 C458 ED9B89 C458
+C459 C459 ED9B8A C459
+C45A C45A ED9B8B C45A
+C461 C461 ED9B8D C461
+C462 C462 ED9B8E C462
+C463 C463 ED9B8F C463
+C464 C464 ED9B90 C464
+C465 C465 ED9B92 C465
+C466 C466 ED9B93 C466
+C467 C467 ED9B95 C467
+C468 C468 ED9B96 C468
+C469 C469 ED9B98 C469
+C46A C46A ED9B9A C46A
+C46B C46B ED9B9B C46B
+C46C C46C ED9B9C C46C
+C46D C46D ED9B9D C46D
+C46E C46E ED9B9E C46E
+C46F C46F ED9B9F C46F
+C470 C470 ED9BA1 C470
+C471 C471 ED9BA2 C471
+C472 C472 ED9BA3 C472
+C473 C473 ED9BA5 C473
+C474 C474 ED9BA6 C474
+C475 C475 ED9BA7 C475
+C476 C476 ED9BA9 C476
+C477 C477 ED9BAA C477
+C478 C478 ED9BAB C478
+C479 C479 ED9BAC C479
+C47A C47A ED9BAD C47A
+C481 C481 ED9BAE C481
+C482 C482 ED9BAF C482
+C483 C483 ED9BB1 C483
+C484 C484 ED9BB2 C484
+C485 C485 ED9BB3 C485
+C486 C486 ED9BB4 C486
+C487 C487 ED9BB6 C487
+C488 C488 ED9BB7 C488
+C489 C489 ED9BB8 C489
+C48A C48A ED9BB9 C48A
+C48B C48B ED9BBA C48B
+C48C C48C ED9BBB C48C
+C48D C48D ED9BBE C48D
+C48E C48E ED9BBF C48E
+C48F C48F ED9C81 C48F
+C490 C490 ED9C82 C490
+C491 C491 ED9C83 C491
+C492 C492 ED9C85 C492
+C493 C493 ED9C86 C493
+C494 C494 ED9C87 C494
+C495 C495 ED9C88 C495
+C496 C496 ED9C89 C496
+C497 C497 ED9C8A C497
+C498 C498 ED9C8B C498
+C499 C499 ED9C8C C499
+C49A C49A ED9C8D C49A
+C49B C49B ED9C8E C49B
+C49C C49C ED9C8F C49C
+C49D C49D ED9C90 C49D
+C49E C49E ED9C92 C49E
+C49F C49F ED9C93 C49F
+C4A0 C4A0 ED9C94 C4A0
+C4A1 C4A1 ECB998 C4A1
+C4A2 C4A2 ECB999 C4A2
+C4A3 C4A3 ECB99C C4A3
+C4A4 C4A4 ECB99F C4A4
+C4A5 C4A5 ECB9A0 C4A5
+C4A6 C4A6 ECB9A1 C4A6
+C4A7 C4A7 ECB9A8 C4A7
+C4A8 C4A8 ECB9A9 C4A8
+C4A9 C4A9 ECB9AB C4A9
+C4AA C4AA ECB9AD C4AA
+C4AB C4AB ECB9B4 C4AB
+C4AC C4AC ECB9B5 C4AC
+C4AD C4AD ECB9B8 C4AD
+C4AE C4AE ECB9BC C4AE
+C4AF C4AF ECBA84 C4AF
+C4B0 C4B0 ECBA85 C4B0
+C4B1 C4B1 ECBA87 C4B1
+C4B2 C4B2 ECBA89 C4B2
+C4B3 C4B3 ECBA90 C4B3
+C4B4 C4B4 ECBA91 C4B4
+C4B5 C4B5 ECBA94 C4B5
+C4B6 C4B6 ECBA98 C4B6
+C4B7 C4B7 ECBAA0 C4B7
+C4B8 C4B8 ECBAA1 C4B8
+C4B9 C4B9 ECBAA3 C4B9
+C4BA C4BA ECBAA4 C4BA
+C4BB C4BB ECBAA5 C4BB
+C4BC C4BC ECBAAC C4BC
+C4BD C4BD ECBAAD C4BD
+C4BE C4BE ECBB81 C4BE
+C4BF C4BF ECBBA4 C4BF
+C4C0 C4C0 ECBBA5 C4C0
+C4C1 C4C1 ECBBA8 C4C1
+C4C2 C4C2 ECBBAB C4C2
+C4C3 C4C3 ECBBAC C4C3
+C4C4 C4C4 ECBBB4 C4C4
+C4C5 C4C5 ECBBB5 C4C5
+C4C6 C4C6 ECBBB7 C4C6
+C4C7 C4C7 ECBBB8 C4C7
+C4C8 C4C8 ECBBB9 C4C8
+C4C9 C4C9 ECBC80 C4C9
+C4CA C4CA ECBC81 C4CA
+C4CB C4CB ECBC84 C4CB
+C4CC C4CC ECBC88 C4CC
+C4CD C4CD ECBC90 C4CD
+C4CE C4CE ECBC91 C4CE
+C4CF C4CF ECBC93 C4CF
+C4D0 C4D0 ECBC95 C4D0
+C4D1 C4D1 ECBC9C C4D1
+C4D2 C4D2 ECBCA0 C4D2
+C4D3 C4D3 ECBCA4 C4D3
+C4D4 C4D4 ECBCAC C4D4
+C4D5 C4D5 ECBCAD C4D5
+C4D6 C4D6 ECBCAF C4D6
+C4D7 C4D7 ECBCB0 C4D7
+C4D8 C4D8 ECBCB1 C4D8
+C4D9 C4D9 ECBCB8 C4D9
+C4DA C4DA ECBD94 C4DA
+C4DB C4DB ECBD95 C4DB
+C4DC C4DC ECBD98 C4DC
+C4DD C4DD ECBD9C C4DD
+C4DE C4DE ECBDA4 C4DE
+C4DF C4DF ECBDA5 C4DF
+C4E0 C4E0 ECBDA7 C4E0
+C4E1 C4E1 ECBDA9 C4E1
+C4E2 C4E2 ECBDB0 C4E2
+C4E3 C4E3 ECBDB1 C4E3
+C4E4 C4E4 ECBDB4 C4E4
+C4E5 C4E5 ECBDB8 C4E5
+C4E6 C4E6 ECBE80 C4E6
+C4E7 C4E7 ECBE85 C4E7
+C4E8 C4E8 ECBE8C C4E8
+C4E9 C4E9 ECBEA1 C4E9
+C4EA C4EA ECBEA8 C4EA
+C4EB C4EB ECBEB0 C4EB
+C4EC C4EC ECBF84 C4EC
+C4ED C4ED ECBFA0 C4ED
+C4EE C4EE ECBFA1 C4EE
+C4EF C4EF ECBFA4 C4EF
+C4F0 C4F0 ECBFA8 C4F0
+C4F1 C4F1 ECBFB0 C4F1
+C4F2 C4F2 ECBFB1 C4F2
+C4F3 C4F3 ECBFB3 C4F3
+C4F4 C4F4 ECBFB5 C4F4
+C4F5 C4F5 ECBFBC C4F5
+C4F6 C4F6 ED8080 C4F6
+C4F7 C4F7 ED8084 C4F7
+C4F8 C4F8 ED8091 C4F8
+C4F9 C4F9 ED8098 C4F9
+C4FA C4FA ED80AD C4FA
+C4FB C4FB ED80B4 C4FB
+C4FC C4FC ED80B5 C4FC
+C4FD C4FD ED80B8 C4FD
+C4FE C4FE ED80BC C4FE
+C541 C541 ED9C95 C541
+C542 C542 ED9C96 C542
+C543 C543 ED9C97 C543
+C544 C544 ED9C9A C544
+C545 C545 ED9C9B C545
+C546 C546 ED9C9D C546
+C547 C547 ED9C9E C547
+C548 C548 ED9C9F C548
+C549 C549 ED9CA1 C549
+C54A C54A ED9CA2 C54A
+C54B C54B ED9CA3 C54B
+C54C C54C ED9CA4 C54C
+C54D C54D ED9CA5 C54D
+C54E C54E ED9CA6 C54E
+C54F C54F ED9CA7 C54F
+C550 C550 ED9CAA C550
+C551 C551 ED9CAC C551
+C552 C552 ED9CAE C552
+C553 C553 ED9CAF C553
+C554 C554 ED9CB0 C554
+C555 C555 ED9CB1 C555
+C556 C556 ED9CB2 C556
+C557 C557 ED9CB3 C557
+C558 C558 ED9CB6 C558
+C559 C559 ED9CB7 C559
+C55A C55A ED9CB9 C55A
+C561 C561 ED9CBA C561
+C562 C562 ED9CBB C562
+C563 C563 ED9CBD C563
+C564 C564 ED9CBE C564
+C565 C565 ED9CBF C565
+C566 C566 ED9D80 C566
+C567 C567 ED9D81 C567
+C568 C568 ED9D82 C568
+C569 C569 ED9D83 C569
+C56A C56A ED9D85 C56A
+C56B C56B ED9D86 C56B
+C56C C56C ED9D88 C56C
+C56D C56D ED9D8A C56D
+C56E C56E ED9D8B C56E
+C56F C56F ED9D8C C56F
+C570 C570 ED9D8D C570
+C571 C571 ED9D8E C571
+C572 C572 ED9D8F C572
+C573 C573 ED9D92 C573
+C574 C574 ED9D93 C574
+C575 C575 ED9D95 C575
+C576 C576 ED9D9A C576
+C577 C577 ED9D9B C577
+C578 C578 ED9D9C C578
+C579 C579 ED9D9D C579
+C57A C57A ED9D9E C57A
+C581 C581 ED9D9F C581
+C582 C582 ED9DA2 C582
+C583 C583 ED9DA4 C583
+C584 C584 ED9DA6 C584
+C585 C585 ED9DA7 C585
+C586 C586 ED9DA8 C586
+C587 C587 ED9DAA C587
+C588 C588 ED9DAB C588
+C589 C589 ED9DAD C589
+C58A C58A ED9DAE C58A
+C58B C58B ED9DAF C58B
+C58C C58C ED9DB1 C58C
+C58D C58D ED9DB2 C58D
+C58E C58E ED9DB3 C58E
+C58F C58F ED9DB5 C58F
+C590 C590 ED9DB6 C590
+C591 C591 ED9DB7 C591
+C592 C592 ED9DB8 C592
+C593 C593 ED9DB9 C593
+C594 C594 ED9DBA C594
+C595 C595 ED9DBB C595
+C596 C596 ED9DBE C596
+C597 C597 ED9DBF C597
+C598 C598 ED9E80 C598
+C599 C599 ED9E82 C599
+C59A C59A ED9E83 C59A
+C59B C59B ED9E84 C59B
+C59C C59C ED9E85 C59C
+C59D C59D ED9E86 C59D
+C59E C59E ED9E87 C59E
+C59F C59F ED9E8A C59F
+C5A0 C5A0 ED9E8B C5A0
+C5A1 C5A1 ED8184 C5A1
+C5A2 C5A2 ED8185 C5A2
+C5A3 C5A3 ED8187 C5A3
+C5A4 C5A4 ED8189 C5A4
+C5A5 C5A5 ED8190 C5A5
+C5A6 C5A6 ED8194 C5A6
+C5A7 C5A7 ED8198 C5A7
+C5A8 C5A8 ED81A0 C5A8
+C5A9 C5A9 ED81AC C5A9
+C5AA C5AA ED81AD C5AA
+C5AB C5AB ED81B0 C5AB
+C5AC C5AC ED81B4 C5AC
+C5AD C5AD ED81BC C5AD
+C5AE C5AE ED81BD C5AE
+C5AF C5AF ED8281 C5AF
+C5B0 C5B0 ED82A4 C5B0
+C5B1 C5B1 ED82A5 C5B1
+C5B2 C5B2 ED82A8 C5B2
+C5B3 C5B3 ED82AC C5B3
+C5B4 C5B4 ED82B4 C5B4
+C5B5 C5B5 ED82B5 C5B5
+C5B6 C5B6 ED82B7 C5B6
+C5B7 C5B7 ED82B9 C5B7
+C5B8 C5B8 ED8380 C5B8
+C5B9 C5B9 ED8381 C5B9
+C5BA C5BA ED8384 C5BA
+C5BB C5BB ED8388 C5BB
+C5BC C5BC ED8389 C5BC
+C5BD C5BD ED8390 C5BD
+C5BE C5BE ED8391 C5BE
+C5BF C5BF ED8393 C5BF
+C5C0 C5C0 ED8394 C5C0
+C5C1 C5C1 ED8395 C5C1
+C5C2 C5C2 ED839C C5C2
+C5C3 C5C3 ED839D C5C3
+C5C4 C5C4 ED83A0 C5C4
+C5C5 C5C5 ED83A4 C5C5
+C5C6 C5C6 ED83AC C5C6
+C5C7 C5C7 ED83AD C5C7
+C5C8 C5C8 ED83AF C5C8
+C5C9 C5C9 ED83B0 C5C9
+C5CA C5CA ED83B1 C5CA
+C5CB C5CB ED83B8 C5CB
+C5CC C5CC ED848D C5CC
+C5CD C5CD ED84B0 C5CD
+C5CE C5CE ED84B1 C5CE
+C5CF C5CF ED84B4 C5CF
+C5D0 C5D0 ED84B8 C5D0
+C5D1 C5D1 ED84BA C5D1
+C5D2 C5D2 ED8580 C5D2
+C5D3 C5D3 ED8581 C5D3
+C5D4 C5D4 ED8583 C5D4
+C5D5 C5D5 ED8584 C5D5
+C5D6 C5D6 ED8585 C5D6
+C5D7 C5D7 ED858C C5D7
+C5D8 C5D8 ED858D C5D8
+C5D9 C5D9 ED8590 C5D9
+C5DA C5DA ED8594 C5DA
+C5DB C5DB ED859C C5DB
+C5DC C5DC ED859D C5DC
+C5DD C5DD ED859F C5DD
+C5DE C5DE ED85A1 C5DE
+C5DF C5DF ED85A8 C5DF
+C5E0 C5E0 ED85AC C5E0
+C5E1 C5E1 ED85BC C5E1
+C5E2 C5E2 ED8684 C5E2
+C5E3 C5E3 ED8688 C5E3
+C5E4 C5E4 ED86A0 C5E4
+C5E5 C5E5 ED86A1 C5E5
+C5E6 C5E6 ED86A4 C5E6
+C5E7 C5E7 ED86A8 C5E7
+C5E8 C5E8 ED86B0 C5E8
+C5E9 C5E9 ED86B1 C5E9
+C5EA C5EA ED86B3 C5EA
+C5EB C5EB ED86B5 C5EB
+C5EC C5EC ED86BA C5EC
+C5ED C5ED ED86BC C5ED
+C5EE C5EE ED8780 C5EE
+C5EF C5EF ED8798 C5EF
+C5F0 C5F0 ED87B4 C5F0
+C5F1 C5F1 ED87B8 C5F1
+C5F2 C5F2 ED8887 C5F2
+C5F3 C5F3 ED8889 C5F3
+C5F4 C5F4 ED8890 C5F4
+C5F5 C5F5 ED88AC C5F5
+C5F6 C5F6 ED88AD C5F6
+C5F7 C5F7 ED88B0 C5F7
+C5F8 C5F8 ED88B4 C5F8
+C5F9 C5F9 ED88BC C5F9
+C5FA C5FA ED88BD C5FA
+C5FB C5FB ED88BF C5FB
+C5FC C5FC ED8981 C5FC
+C5FD C5FD ED8988 C5FD
+C5FE C5FE ED899C C5FE
+C641 C641 ED9E8D C641
+C642 C642 ED9E8E C642
+C643 C643 ED9E8F C643
+C644 C644 ED9E91 C644
+C645 C645 ED9E92 C645
+C646 C646 ED9E93 C646
+C647 C647 ED9E94 C647
+C648 C648 ED9E95 C648
+C649 C649 ED9E96 C649
+C64A C64A ED9E97 C64A
+C64B C64B ED9E9A C64B
+C64C C64C ED9E9C C64C
+C64D C64D ED9E9E C64D
+C64E C64E ED9E9F C64E
+C64F C64F ED9EA0 C64F
+C650 C650 ED9EA1 C650
+C651 C651 ED9EA2 C651
+C652 C652 ED9EA3 C652
+C6A1 C6A1 ED89A4 C6A1
+C6A2 C6A2 ED8A80 C6A2
+C6A3 C6A3 ED8A81 C6A3
+C6A4 C6A4 ED8A84 C6A4
+C6A5 C6A5 ED8A88 C6A5
+C6A6 C6A6 ED8A90 C6A6
+C6A7 C6A7 ED8A91 C6A7
+C6A8 C6A8 ED8A95 C6A8
+C6A9 C6A9 ED8A9C C6A9
+C6AA C6AA ED8AA0 C6AA
+C6AB C6AB ED8AA4 C6AB
+C6AC C6AC ED8AAC C6AC
+C6AD C6AD ED8AB1 C6AD
+C6AE C6AE ED8AB8 C6AE
+C6AF C6AF ED8AB9 C6AF
+C6B0 C6B0 ED8ABC C6B0
+C6B1 C6B1 ED8ABF C6B1
+C6B2 C6B2 ED8B80 C6B2
+C6B3 C6B3 ED8B82 C6B3
+C6B4 C6B4 ED8B88 C6B4
+C6B5 C6B5 ED8B89 C6B5
+C6B6 C6B6 ED8B8B C6B6
+C6B7 C6B7 ED8B94 C6B7
+C6B8 C6B8 ED8B98 C6B8
+C6B9 C6B9 ED8B9C C6B9
+C6BA C6BA ED8BA4 C6BA
+C6BB C6BB ED8BA5 C6BB
+C6BC C6BC ED8BB0 C6BC
+C6BD C6BD ED8BB1 C6BD
+C6BE C6BE ED8BB4 C6BE
+C6BF C6BF ED8BB8 C6BF
+C6C0 C6C0 ED8C80 C6C0
+C6C1 C6C1 ED8C81 C6C1
+C6C2 C6C2 ED8C83 C6C2
+C6C3 C6C3 ED8C85 C6C3
+C6C4 C6C4 ED8C8C C6C4
+C6C5 C6C5 ED8C8D C6C5
+C6C6 C6C6 ED8C8E C6C6
+C6C7 C6C7 ED8C90 C6C7
+C6C8 C6C8 ED8C94 C6C8
+C6C9 C6C9 ED8C96 C6C9
+C6CA C6CA ED8C9C C6CA
+C6CB C6CB ED8C9D C6CB
+C6CC C6CC ED8C9F C6CC
+C6CD C6CD ED8CA0 C6CD
+C6CE C6CE ED8CA1 C6CE
+C6CF C6CF ED8CA5 C6CF
+C6D0 C6D0 ED8CA8 C6D0
+C6D1 C6D1 ED8CA9 C6D1
+C6D2 C6D2 ED8CAC C6D2
+C6D3 C6D3 ED8CB0 C6D3
+C6D4 C6D4 ED8CB8 C6D4
+C6D5 C6D5 ED8CB9 C6D5
+C6D6 C6D6 ED8CBB C6D6
+C6D7 C6D7 ED8CBC C6D7
+C6D8 C6D8 ED8CBD C6D8
+C6D9 C6D9 ED8D84 C6D9
+C6DA C6DA ED8D85 C6DA
+C6DB C6DB ED8DBC C6DB
+C6DC C6DC ED8DBD C6DC
+C6DD C6DD ED8E80 C6DD
+C6DE C6DE ED8E84 C6DE
+C6DF C6DF ED8E8C C6DF
+C6E0 C6E0 ED8E8D C6E0
+C6E1 C6E1 ED8E8F C6E1
+C6E2 C6E2 ED8E90 C6E2
+C6E3 C6E3 ED8E91 C6E3
+C6E4 C6E4 ED8E98 C6E4
+C6E5 C6E5 ED8E99 C6E5
+C6E6 C6E6 ED8E9C C6E6
+C6E7 C6E7 ED8EA0 C6E7
+C6E8 C6E8 ED8EA8 C6E8
+C6E9 C6E9 ED8EA9 C6E9
+C6EA C6EA ED8EAB C6EA
+C6EB C6EB ED8EAD C6EB
+C6EC C6EC ED8EB4 C6EC
+C6ED C6ED ED8EB8 C6ED
+C6EE C6EE ED8EBC C6EE
+C6EF C6EF ED8F84 C6EF
+C6F0 C6F0 ED8F85 C6F0
+C6F1 C6F1 ED8F88 C6F1
+C6F2 C6F2 ED8F89 C6F2
+C6F3 C6F3 ED8F90 C6F3
+C6F4 C6F4 ED8F98 C6F4
+C6F5 C6F5 ED8FA1 C6F5
+C6F6 C6F6 ED8FA3 C6F6
+C6F7 C6F7 ED8FAC C6F7
+C6F8 C6F8 ED8FAD C6F8
+C6F9 C6F9 ED8FB0 C6F9
+C6FA C6FA ED8FB4 C6FA
+C6FB C6FB ED8FBC C6FB
+C6FC C6FC ED8FBD C6FC
+C6FD C6FD ED8FBF C6FD
+C6FE C6FE ED9081 C6FE
+C7A1 C7A1 ED9088 C7A1
+C7A2 C7A2 ED909D C7A2
+C7A3 C7A3 ED9180 C7A3
+C7A4 C7A4 ED9184 C7A4
+C7A5 C7A5 ED919C C7A5
+C7A6 C7A6 ED91A0 C7A6
+C7A7 C7A7 ED91A4 C7A7
+C7A8 C7A8 ED91AD C7A8
+C7A9 C7A9 ED91AF C7A9
+C7AA C7AA ED91B8 C7AA
+C7AB C7AB ED91B9 C7AB
+C7AC C7AC ED91BC C7AC
+C7AD C7AD ED91BF C7AD
+C7AE C7AE ED9280 C7AE
+C7AF C7AF ED9282 C7AF
+C7B0 C7B0 ED9288 C7B0
+C7B1 C7B1 ED9289 C7B1
+C7B2 C7B2 ED928B C7B2
+C7B3 C7B3 ED928D C7B3
+C7B4 C7B4 ED9294 C7B4
+C7B5 C7B5 ED92A9 C7B5
+C7B6 C7B6 ED938C C7B6
+C7B7 C7B7 ED9390 C7B7
+C7B8 C7B8 ED9394 C7B8
+C7B9 C7B9 ED939C C7B9
+C7BA C7BA ED939F C7BA
+C7BB C7BB ED93A8 C7BB
+C7BC C7BC ED93AC C7BC
+C7BD C7BD ED93B0 C7BD
+C7BE C7BE ED93B8 C7BE
+C7BF C7BF ED93BB C7BF
+C7C0 C7C0 ED93BD C7C0
+C7C1 C7C1 ED9484 C7C1
+C7C2 C7C2 ED9488 C7C2
+C7C3 C7C3 ED948C C7C3
+C7C4 C7C4 ED9494 C7C4
+C7C5 C7C5 ED9495 C7C5
+C7C6 C7C6 ED9497 C7C6
+C7C7 C7C7 ED94BC C7C7
+C7C8 C7C8 ED94BD C7C8
+C7C9 C7C9 ED9580 C7C9
+C7CA C7CA ED9584 C7CA
+C7CB C7CB ED958C C7CB
+C7CC C7CC ED958D C7CC
+C7CD C7CD ED958F C7CD
+C7CE C7CE ED9591 C7CE
+C7CF C7CF ED9598 C7CF
+C7D0 C7D0 ED9599 C7D0
+C7D1 C7D1 ED959C C7D1
+C7D2 C7D2 ED95A0 C7D2
+C7D3 C7D3 ED95A5 C7D3
+C7D4 C7D4 ED95A8 C7D4
+C7D5 C7D5 ED95A9 C7D5
+C7D6 C7D6 ED95AB C7D6
+C7D7 C7D7 ED95AD C7D7
+C7D8 C7D8 ED95B4 C7D8
+C7D9 C7D9 ED95B5 C7D9
+C7DA C7DA ED95B8 C7DA
+C7DB C7DB ED95BC C7DB
+C7DC C7DC ED9684 C7DC
+C7DD C7DD ED9685 C7DD
+C7DE C7DE ED9687 C7DE
+C7DF C7DF ED9688 C7DF
+C7E0 C7E0 ED9689 C7E0
+C7E1 C7E1 ED9690 C7E1
+C7E2 C7E2 ED96A5 C7E2
+C7E3 C7E3 ED9788 C7E3
+C7E4 C7E4 ED9789 C7E4
+C7E5 C7E5 ED978C C7E5
+C7E6 C7E6 ED9790 C7E6
+C7E7 C7E7 ED9792 C7E7
+C7E8 C7E8 ED9798 C7E8
+C7E9 C7E9 ED9799 C7E9
+C7EA C7EA ED979B C7EA
+C7EB C7EB ED979D C7EB
+C7EC C7EC ED97A4 C7EC
+C7ED C7ED ED97A5 C7ED
+C7EE C7EE ED97A8 C7EE
+C7EF C7EF ED97AC C7EF
+C7F0 C7F0 ED97B4 C7F0
+C7F1 C7F1 ED97B5 C7F1
+C7F2 C7F2 ED97B7 C7F2
+C7F3 C7F3 ED97B9 C7F3
+C7F4 C7F4 ED9880 C7F4
+C7F5 C7F5 ED9881 C7F5
+C7F6 C7F6 ED9884 C7F6
+C7F7 C7F7 ED9888 C7F7
+C7F8 C7F8 ED9890 C7F8
+C7F9 C7F9 ED9891 C7F9
+C7FA C7FA ED9893 C7FA
+C7FB C7FB ED9894 C7FB
+C7FC C7FC ED9895 C7FC
+C7FD C7FD ED989C C7FD
+C7FE C7FE ED98A0 C7FE
+C8A1 C8A1 ED98A4 C8A1
+C8A2 C8A2 ED98AD C8A2
+C8A3 C8A3 ED98B8 C8A3
+C8A4 C8A4 ED98B9 C8A4
+C8A5 C8A5 ED98BC C8A5
+C8A6 C8A6 ED9980 C8A6
+C8A7 C8A7 ED9985 C8A7
+C8A8 C8A8 ED9988 C8A8
+C8A9 C8A9 ED9989 C8A9
+C8AA C8AA ED998B C8AA
+C8AB C8AB ED998D C8AB
+C8AC C8AC ED9991 C8AC
+C8AD C8AD ED9994 C8AD
+C8AE C8AE ED9995 C8AE
+C8AF C8AF ED9998 C8AF
+C8B0 C8B0 ED999C C8B0
+C8B1 C8B1 ED99A7 C8B1
+C8B2 C8B2 ED99A9 C8B2
+C8B3 C8B3 ED99B0 C8B3
+C8B4 C8B4 ED99B1 C8B4
+C8B5 C8B5 ED99B4 C8B5
+C8B6 C8B6 ED9A83 C8B6
+C8B7 C8B7 ED9A85 C8B7
+C8B8 C8B8 ED9A8C C8B8
+C8B9 C8B9 ED9A8D C8B9
+C8BA C8BA ED9A90 C8BA
+C8BB C8BB ED9A94 C8BB
+C8BC C8BC ED9A9D C8BC
+C8BD C8BD ED9A9F C8BD
+C8BE C8BE ED9AA1 C8BE
+C8BF C8BF ED9AA8 C8BF
+C8C0 C8C0 ED9AAC C8C0
+C8C1 C8C1 ED9AB0 C8C1
+C8C2 C8C2 ED9AB9 C8C2
+C8C3 C8C3 ED9ABB C8C3
+C8C4 C8C4 ED9B84 C8C4
+C8C5 C8C5 ED9B85 C8C5
+C8C6 C8C6 ED9B88 C8C6
+C8C7 C8C7 ED9B8C C8C7
+C8C8 C8C8 ED9B91 C8C8
+C8C9 C8C9 ED9B94 C8C9
+C8CA C8CA ED9B97 C8CA
+C8CB C8CB ED9B99 C8CB
+C8CC C8CC ED9BA0 C8CC
+C8CD C8CD ED9BA4 C8CD
+C8CE C8CE ED9BA8 C8CE
+C8CF C8CF ED9BB0 C8CF
+C8D0 C8D0 ED9BB5 C8D0
+C8D1 C8D1 ED9BBC C8D1
+C8D2 C8D2 ED9BBD C8D2
+C8D3 C8D3 ED9C80 C8D3
+C8D4 C8D4 ED9C84 C8D4
+C8D5 C8D5 ED9C91 C8D5
+C8D6 C8D6 ED9C98 C8D6
+C8D7 C8D7 ED9C99 C8D7
+C8D8 C8D8 ED9C9C C8D8
+C8D9 C8D9 ED9CA0 C8D9
+C8DA C8DA ED9CA8 C8DA
+C8DB C8DB ED9CA9 C8DB
+C8DC C8DC ED9CAB C8DC
+C8DD C8DD ED9CAD C8DD
+C8DE C8DE ED9CB4 C8DE
+C8DF C8DF ED9CB5 C8DF
+C8E0 C8E0 ED9CB8 C8E0
+C8E1 C8E1 ED9CBC C8E1
+C8E2 C8E2 ED9D84 C8E2
+C8E3 C8E3 ED9D87 C8E3
+C8E4 C8E4 ED9D89 C8E4
+C8E5 C8E5 ED9D90 C8E5
+C8E6 C8E6 ED9D91 C8E6
+C8E7 C8E7 ED9D94 C8E7
+C8E8 C8E8 ED9D96 C8E8
+C8E9 C8E9 ED9D97 C8E9
+C8EA C8EA ED9D98 C8EA
+C8EB C8EB ED9D99 C8EB
+C8EC C8EC ED9DA0 C8EC
+C8ED C8ED ED9DA1 C8ED
+C8EE C8EE ED9DA3 C8EE
+C8EF C8EF ED9DA5 C8EF
+C8F0 C8F0 ED9DA9 C8F0
+C8F1 C8F1 ED9DAC C8F1
+C8F2 C8F2 ED9DB0 C8F2
+C8F3 C8F3 ED9DB4 C8F3
+C8F4 C8F4 ED9DBC C8F4
+C8F5 C8F5 ED9DBD C8F5
+C8F6 C8F6 ED9E81 C8F6
+C8F7 C8F7 ED9E88 C8F7
+C8F8 C8F8 ED9E89 C8F8
+C8F9 C8F9 ED9E8C C8F9
+C8FA C8FA ED9E90 C8FA
+C8FB C8FB ED9E98 C8FB
+C8FC C8FC ED9E99 C8FC
+C8FD C8FD ED9E9B C8FD
+C8FE C8FE ED9E9D C8FE
+CAA1 CAA1 E4BCBD CAA1
+CAA2 CAA2 E4BDB3 CAA2
+CAA3 CAA3 E58187 CAA3
+CAA4 CAA4 E583B9 CAA4
+CAA5 CAA5 E58AA0 CAA5
+CAA6 CAA6 E58FAF CAA6
+CAA7 CAA7 E591B5 CAA7
+CAA8 CAA8 E593A5 CAA8
+CAA9 CAA9 E59889 CAA9
+CAAA CAAA E5AB81 CAAA
+CAAB CAAB E5AEB6 CAAB
+CAAC CAAC E69A87 CAAC
+CAAD CAAD E69EB6 CAAD
+CAAE CAAE E69EB7 CAAE
+CAAF CAAF E69FAF CAAF
+CAB0 CAB0 E6AD8C CAB0
+CAB1 CAB1 E78F82 CAB1
+CAB2 CAB2 E79782 CAB2
+CAB3 CAB3 E7A8BC CAB3
+CAB4 CAB4 E88B9B CAB4
+CAB5 CAB5 E88C84 CAB5
+CAB6 CAB6 E8A197 CAB6
+CAB7 CAB7 E8A288 CAB7
+CAB8 CAB8 E8A8B6 CAB8
+CAB9 CAB9 E8B388 CAB9
+CABA CABA E8B78F CABA
+CABB CABB E8BBBB CABB
+CABC CABC E8BFA6 CABC
+CABD CABD E9A795 CABD
+CABE CABE E588BB CABE
+CABF CABF E58DB4 CABF
+CAC0 CAC0 E59084 CAC0
+CAC1 CAC1 E681AA CAC1
+CAC2 CAC2 E685A4 CAC2
+CAC3 CAC3 E6AEBC CAC3
+CAC4 CAC4 E78F8F CAC4
+CAC5 CAC5 E8849A CAC5
+CAC6 CAC6 E8A6BA CAC6
+CAC7 CAC7 E8A792 CAC7
+CAC8 CAC8 E996A3 CAC8
+CAC9 CAC9 E4BE83 CAC9
+CACA CACA E5888A CACA
+CACB CACB E5A2BE CACB
+CACC CACC E5A5B8 CACC
+CACD CACD E5A7A6 CACD
+CACE CACE E5B9B2 CACE
+CACF CACF E5B9B9 CACF
+CAD0 CAD0 E68787 CAD0
+CAD1 CAD1 E68F80 CAD1
+CAD2 CAD2 E69D86 CAD2
+CAD3 CAD3 E69FAC CAD3
+CAD4 CAD4 E6A1BF CAD4
+CAD5 CAD5 E6BE97 CAD5
+CAD6 CAD6 E7998E CAD6
+CAD7 CAD7 E79C8B CAD7
+CAD8 CAD8 E7A3B5 CAD8
+CAD9 CAD9 E7A888 CAD9
+CADA CADA E7ABBF CADA
+CADB CADB E7B0A1 CADB
+CADC CADC E8829D CADC
+CADD CADD E889AE CADD
+CADE CADE E889B1 CADE
+CADF CADF E8ABAB CADF
+CAE0 CAE0 E99693 CAE0
+CAE1 CAE1 E4B9AB CAE1
+CAE2 CAE2 E5969D CAE2
+CAE3 CAE3 E69BB7 CAE3
+CAE4 CAE4 E6B8B4 CAE4
+CAE5 CAE5 E7A2A3 CAE5
+CAE6 CAE6 E7ABAD CAE6
+CAE7 CAE7 E8919B CAE7
+CAE8 CAE8 E8A490 CAE8
+CAE9 CAE9 E89D8E CAE9
+CAEA CAEA E99EA8 CAEA
+CAEB CAEB E58B98 CAEB
+CAEC CAEC E59D8E CAEC
+CAED CAED E5A0AA CAED
+CAEE CAEE E5B58C CAEE
+CAEF CAEF E6849F CAEF
+CAF0 CAF0 E686BE CAF0
+CAF1 CAF1 E688A1 CAF1
+CAF2 CAF2 E695A2 CAF2
+CAF3 CAF3 E69F91 CAF3
+CAF4 CAF4 E6A984 CAF4
+CAF5 CAF5 E6B89B CAF5
+CAF6 CAF6 E79498 CAF6
+CAF7 CAF7 E796B3 CAF7
+CAF8 CAF8 E79BA3 CAF8
+CAF9 CAF9 E79EB0 CAF9
+CAFA CAFA E7B4BA CAFA
+CAFB CAFB E982AF CAFB
+CAFC CAFC E99191 CAFC
+CAFD CAFD E99192 CAFD
+CAFE CAFE E9BE95 CAFE
+CBA1 CBA1 E58CA3 CBA1
+CBA2 CBA2 E5B2AC CBA2
+CBA3 CBA3 E794B2 CBA3
+CBA4 CBA4 E8839B CBA4
+CBA5 CBA5 E98980 CBA5
+CBA6 CBA6 E99698 CBA6
+CBA7 CBA7 E5899B CBA7
+CBA8 CBA8 E5A088 CBA8
+CBA9 CBA9 E5A79C CBA9
+CBAA CBAA E5B2A1 CBAA
+CBAB CBAB E5B497 CBAB
+CBAC CBAC E5BAB7 CBAC
+CBAD CBAD E5BCBA CBAD
+CBAE CBAE E5BD8A CBAE
+CBAF CBAF E685B7 CBAF
+CBB0 CBB0 E6B19F CBB0
+CBB1 CBB1 E795BA CBB1
+CBB2 CBB2 E79686 CBB2
+CBB3 CBB3 E7B3A0 CBB3
+CBB4 CBB4 E7B5B3 CBB4
+CBB5 CBB5 E7B6B1 CBB5
+CBB6 CBB6 E7BE8C CBB6
+CBB7 CBB7 E88594 CBB7
+CBB8 CBB8 E888A1 CBB8
+CBB9 CBB9 E89691 CBB9
+CBBA CBBA E8A581 CBBA
+CBBB CBBB E8AC9B CBBB
+CBBC CBBC E98BBC CBBC
+CBBD CBBD E9998D CBBD
+CBBE CBBE E9B187 CBBE
+CBBF CBBF E4BB8B CBBF
+CBC0 CBC0 E4BBB7 CBC0
+CBC1 CBC1 E5808B CBC1
+CBC2 CBC2 E587B1 CBC2
+CBC3 CBC3 E5A18F CBC3
+CBC4 CBC4 E684B7 CBC4
+CBC5 CBC5 E684BE CBC5
+CBC6 CBC6 E685A8 CBC6
+CBC7 CBC7 E694B9 CBC7
+CBC8 CBC8 E6A7AA CBC8
+CBC9 CBC9 E6BC91 CBC9
+CBCA CBCA E796A5 CBCA
+CBCB CBCB E79A86 CBCB
+CBCC CBCC E79B96 CBCC
+CBCD CBCD E7AE87 CBCD
+CBCE CBCE E88AA5 CBCE
+CBCF CBCF E8938B CBCF
+CBD0 CBD0 EFA480 CBD0
+CBD1 CBD1 E98EA7 CBD1
+CBD2 CBD2 E9968B CBD2
+CBD3 CBD3 E59680 CBD3
+CBD4 CBD4 E5AEA2 CBD4
+CBD5 CBD5 E59D91 CBD5
+CBD6 CBD6 EFA481 CBD6
+CBD7 CBD7 E7B2B3 CBD7
+CBD8 CBD8 E7BEB9 CBD8
+CBD9 CBD9 E986B5 CBD9
+CBDA CBDA E580A8 CBDA
+CBDB CBDB E58EBB CBDB
+CBDC CBDC E5B185 CBDC
+CBDD CBDD E5B7A8 CBDD
+CBDE CBDE E68B92 CBDE
+CBDF CBDF E68DAE CBDF
+CBE0 CBE0 E6939A CBE0
+CBE1 CBE1 E693A7 CBE1
+CBE2 CBE2 E6B8A0 CBE2
+CBE3 CBE3 E782AC CBE3
+CBE4 CBE4 E7A59B CBE4
+CBE5 CBE5 E8B79D CBE5
+CBE6 CBE6 E8B89E CBE6
+CBE7 CBE7 EFA482 CBE7
+CBE8 CBE8 E981BD CBE8
+CBE9 CBE9 E98985 CBE9
+CBEA CBEA E98BB8 CBEA
+CBEB CBEB E4B9BE CBEB
+CBEC CBEC E4BBB6 CBEC
+CBED CBED E581A5 CBED
+CBEE CBEE E5B7BE CBEE
+CBEF CBEF E5BBBA CBEF
+CBF0 CBF0 E68486 CBF0
+CBF1 CBF1 E6A597 CBF1
+CBF2 CBF2 E885B1 CBF2
+CBF3 CBF3 E89994 CBF3
+CBF4 CBF4 E8B987 CBF4
+CBF5 CBF5 E98DB5 CBF5
+CBF6 CBF6 E9A8AB CBF6
+CBF7 CBF7 E4B99E CBF7
+CBF8 CBF8 E58291 CBF8
+CBF9 CBF9 E69DB0 CBF9
+CBFA CBFA E6A180 CBFA
+CBFB CBFB E58489 CBFB
+CBFC CBFC E58A8D CBFC
+CBFD CBFD E58A92 CBFD
+CBFE CBFE E6AAA2 CBFE
+CCA1 CCA1 E79EBC CCA1
+CCA2 CCA2 E98890 CCA2
+CCA3 CCA3 E9BB94 CCA3
+CCA4 CCA4 E58AAB CCA4
+CCA5 CCA5 E680AF CCA5
+CCA6 CCA6 E8BFB2 CCA6
+CCA7 CCA7 E58188 CCA7
+CCA8 CCA8 E686A9 CCA8
+CCA9 CCA9 E68FAD CCA9
+CCAA CCAA E6938A CCAA
+CCAB CCAB E6A0BC CCAB
+CCAC CCAC E6AA84 CCAC
+CCAD CCAD E6BF80 CCAD
+CCAE CCAE E88688 CCAE
+CCAF CCAF E8A6A1 CCAF
+CCB0 CCB0 E99A94 CCB0
+CCB1 CCB1 E5A085 CCB1
+CCB2 CCB2 E789BD CCB2
+CCB3 CCB3 E78AAC CCB3
+CCB4 CCB4 E79484 CCB4
+CCB5 CCB5 E7B5B9 CCB5
+CCB6 CCB6 E7B9AD CCB6
+CCB7 CCB7 E882A9 CCB7
+CCB8 CCB8 E8A68B CCB8
+CCB9 CCB9 E8ADB4 CCB9
+CCBA CCBA E981A3 CCBA
+CCBB CCBB E9B591 CCBB
+CCBC CCBC E68A89 CCBC
+CCBD CCBD E6B1BA CCBD
+CCBE CCBE E6BD94 CCBE
+CCBF CCBF E7B590 CCBF
+CCC0 CCC0 E7BCBA CCC0
+CCC1 CCC1 E8A8A3 CCC1
+CCC2 CCC2 E585BC CCC2
+CCC3 CCC3 E6858A CCC3
+CCC4 CCC4 E7AE9D CCC4
+CCC5 CCC5 E8AC99 CCC5
+CCC6 CCC6 E98997 CCC6
+CCC7 CCC7 E98E8C CCC7
+CCC8 CCC8 E4BAAC CCC8
+CCC9 CCC9 E4BF93 CCC9
+CCCA CCCA E5809E CCCA
+CCCB CCCB E582BE CCCB
+CCCC CCCC E58486 CCCC
+CCCD CCCD E58B81 CCCD
+CCCE CCCE E58B8D CCCE
+CCCF CCCF E58DBF CCCF
+CCD0 CCD0 E59DB0 CCD0
+CCD1 CCD1 E5A283 CCD1
+CCD2 CCD2 E5BA9A CCD2
+CCD3 CCD3 E5BE91 CCD3
+CCD4 CCD4 E685B6 CCD4
+CCD5 CCD5 E686AC CCD5
+CCD6 CCD6 E6938E CCD6
+CCD7 CCD7 E695AC CCD7
+CCD8 CCD8 E699AF CCD8
+CCD9 CCD9 E69ABB CCD9
+CCDA CCDA E69BB4 CCDA
+CCDB CCDB E6A297 CCDB
+CCDC CCDC E6B687 CCDC
+CCDD CCDD E78285 CCDD
+CCDE CCDE E783B1 CCDE
+CCDF CCDF E7929F CCDF
+CCE0 CCE0 E792A5 CCE0
+CCE1 CCE1 E7938A CCE1
+CCE2 CCE2 E79799 CCE2
+CCE3 CCE3 E7A1AC CCE3
+CCE4 CCE4 E7A3AC CCE4
+CCE5 CCE5 E7AB9F CCE5
+CCE6 CCE6 E7ABB6 CCE6
+CCE7 CCE7 E7B585 CCE7
+CCE8 CCE8 E7B693 CCE8
+CCE9 CCE9 E88095 CCE9
+CCEA CCEA E880BF CCEA
+CCEB CCEB E8849B CCEB
+CCEC CCEC E88E96 CCEC
+CCED CCED E8ADA6 CCED
+CCEE CCEE E8BC95 CCEE
+CCEF CCEF E98095 CCEF
+CCF0 CCF0 E98FA1 CCF0
+CCF1 CCF1 E9A083 CCF1
+CCF2 CCF2 E9A0B8 CCF2
+CCF3 CCF3 E9A99A CCF3
+CCF4 CCF4 E9AFA8 CCF4
+CCF5 CCF5 E4BF82 CCF5
+CCF6 CCF6 E59593 CCF6
+CCF7 CCF7 E5A0BA CCF7
+CCF8 CCF8 E5A591 CCF8
+CCF9 CCF9 E5ADA3 CCF9
+CCFA CCFA E5B186 CCFA
+CCFB CCFB E682B8 CCFB
+CCFC CCFC E68892 CCFC
+CCFD CCFD E6A182 CCFD
+CCFE CCFE E6A2B0 CCFE
+CDA1 CDA1 E6A3A8 CDA1
+CDA2 CDA2 E6BAAA CDA2
+CDA3 CDA3 E7958C CDA3
+CDA4 CDA4 E799B8 CDA4
+CDA5 CDA5 E7A38E CDA5
+CDA6 CDA6 E7A8BD CDA6
+CDA7 CDA7 E7B3BB CDA7
+CDA8 CDA8 E7B9AB CDA8
+CDA9 CDA9 E7B9BC CDA9
+CDAA CDAA E8A888 CDAA
+CDAB CDAB E8AAA1 CDAB
+CDAC CDAC E8B0BF CDAC
+CDAD CDAD E99A8E CDAD
+CDAE CDAE E9B784 CDAE
+CDAF CDAF E58FA4 CDAF
+CDB0 CDB0 E58FA9 CDB0
+CDB1 CDB1 E5918A CDB1
+CDB2 CDB2 E591B1 CDB2
+CDB3 CDB3 E59BBA CDB3
+CDB4 CDB4 E5A791 CDB4
+CDB5 CDB5 E5ADA4 CDB5
+CDB6 CDB6 E5B0BB CDB6
+CDB7 CDB7 E5BAAB CDB7
+CDB8 CDB8 E68BB7 CDB8
+CDB9 CDB9 E694B7 CDB9
+CDBA CDBA E69585 CDBA
+CDBB CDBB E695B2 CDBB
+CDBC CDBC E69AA0 CDBC
+CDBD CDBD E69EAF CDBD
+CDBE CDBE E6A781 CDBE
+CDBF CDBF E6B2BD CDBF
+CDC0 CDC0 E797BC CDC0
+CDC1 CDC1 E79A90 CDC1
+CDC2 CDC2 E79DBE CDC2
+CDC3 CDC3 E7A8BF CDC3
+CDC4 CDC4 E7BE94 CDC4
+CDC5 CDC5 E88083 CDC5
+CDC6 CDC6 E882A1 CDC6
+CDC7 CDC7 E8868F CDC7
+CDC8 CDC8 E88BA6 CDC8
+CDC9 CDC9 E88BBD CDC9
+CDCA CDCA E88FB0 CDCA
+CDCB CDCB E89781 CDCB
+CDCC CDCC E8A0B1 CDCC
+CDCD CDCD E8A2B4 CDCD
+CDCE CDCE E8AAA5 CDCE
+CDCF CDCF EFA483 CDCF
+CDD0 CDD0 E8BE9C CDD0
+CDD1 CDD1 E98CAE CDD1
+CDD2 CDD2 E99B87 CDD2
+CDD3 CDD3 E9A1A7 CDD3
+CDD4 CDD4 E9AB98 CDD4
+CDD5 CDD5 E9BC93 CDD5
+CDD6 CDD6 E593AD CDD6
+CDD7 CDD7 E6969B CDD7
+CDD8 CDD8 E69BB2 CDD8
+CDD9 CDD9 E6A28F CDD9
+CDDA CDDA E7A980 CDDA
+CDDB CDDB E8B0B7 CDDB
+CDDC CDDC E9B5A0 CDDC
+CDDD CDDD E59BB0 CDDD
+CDDE CDDE E59DA4 CDDE
+CDDF CDDF E5B491 CDDF
+CDE0 CDE0 E69886 CDE0
+CDE1 CDE1 E6A2B1 CDE1
+CDE2 CDE2 E6A38D CDE2
+CDE3 CDE3 E6BBBE CDE3
+CDE4 CDE4 E790A8 CDE4
+CDE5 CDE5 E8A29E CDE5
+CDE6 CDE6 E9AFA4 CDE6
+CDE7 CDE7 E6B1A8 CDE7
+CDE8 CDE8 EFA484 CDE8
+CDE9 CDE9 E9AAA8 CDE9
+CDEA CDEA E4BE9B CDEA
+CDEB CDEB E585AC CDEB
+CDEC CDEC E585B1 CDEC
+CDED CDED E58A9F CDED
+CDEE CDEE E5AD94 CDEE
+CDEF CDEF E5B7A5 CDEF
+CDF0 CDF0 E68190 CDF0
+CDF1 CDF1 E681AD CDF1
+CDF2 CDF2 E68BB1 CDF2
+CDF3 CDF3 E68EA7 CDF3
+CDF4 CDF4 E694BB CDF4
+CDF5 CDF5 E78F99 CDF5
+CDF6 CDF6 E7A9BA CDF6
+CDF7 CDF7 E89AA3 CDF7
+CDF8 CDF8 E8B2A2 CDF8
+CDF9 CDF9 E99E8F CDF9
+CDFA CDFA E4B8B2 CDFA
+CDFB CDFB E5AFA1 CDFB
+CDFC CDFC E68888 CDFC
+CDFD CDFD E69E9C CDFD
+CDFE CDFE E7939C CDFE
+CEA1 CEA1 E7A791 CEA1
+CEA2 CEA2 E88F93 CEA2
+CEA3 CEA3 E8AA87 CEA3
+CEA4 CEA4 E8AAB2 CEA4
+CEA5 CEA5 E8B7A8 CEA5
+CEA6 CEA6 E9818E CEA6
+CEA7 CEA7 E98D8B CEA7
+CEA8 CEA8 E9A186 CEA8
+CEA9 CEA9 E5BB93 CEA9
+CEAA CEAA E6A7A8 CEAA
+CEAB CEAB E897BF CEAB
+CEAC CEAC E983AD CEAC
+CEAD CEAD EFA485 CEAD
+CEAE CEAE E586A0 CEAE
+CEAF CEAF E5AE98 CEAF
+CEB0 CEB0 E5AFAC CEB0
+CEB1 CEB1 E685A3 CEB1
+CEB2 CEB2 E6A3BA CEB2
+CEB3 CEB3 E6ACBE CEB3
+CEB4 CEB4 E7818C CEB4
+CEB5 CEB5 E790AF CEB5
+CEB6 CEB6 E79398 CEB6
+CEB7 CEB7 E7AEA1 CEB7
+CEB8 CEB8 E7BD90 CEB8
+CEB9 CEB9 E88F85 CEB9
+CEBA CEBA E8A780 CEBA
+CEBB CEBB E8B2AB CEBB
+CEBC CEBC E9979C CEBC
+CEBD CEBD E9A4A8 CEBD
+CEBE CEBE E588AE CEBE
+CEBF CEBF E6819D CEBF
+CEC0 CEC0 E68BAC CEC0
+CEC1 CEC1 E98082 CEC1
+CEC2 CEC2 E4BE8A CEC2
+CEC3 CEC3 E58589 CEC3
+CEC4 CEC4 E58CA1 CEC4
+CEC5 CEC5 E5A399 CEC5
+CEC6 CEC6 E5BBA3 CEC6
+CEC7 CEC7 E69BA0 CEC7
+CEC8 CEC8 E6B4B8 CEC8
+CEC9 CEC9 E7829A CEC9
+CECA CECA E78B82 CECA
+CECB CECB E78F96 CECB
+CECC CECC E7AD90 CECC
+CECD CECD E883B1 CECD
+CECE CECE E9919B CECE
+CECF CECF E58DA6 CECF
+CED0 CED0 E68E9B CED0
+CED1 CED1 E7BDAB CED1
+CED2 CED2 E4B996 CED2
+CED3 CED3 E58280 CED3
+CED4 CED4 E5A18A CED4
+CED5 CED5 E5A39E CED5
+CED6 CED6 E680AA CED6
+CED7 CED7 E684A7 CED7
+CED8 CED8 E68B90 CED8
+CED9 CED9 E6A790 CED9
+CEDA CEDA E9AD81 CEDA
+CEDB CEDB E5AE8F CEDB
+CEDC CEDC E7B498 CEDC
+CEDD CEDD E882B1 CEDD
+CEDE CEDE E8BD9F CEDE
+CEDF CEDF E4BAA4 CEDF
+CEE0 CEE0 E58391 CEE0
+CEE1 CEE1 E592AC CEE1
+CEE2 CEE2 E596AC CEE2
+CEE3 CEE3 E5AC8C CEE3
+CEE4 CEE4 E5B6A0 CEE4
+CEE5 CEE5 E5B7A7 CEE5
+CEE6 CEE6 E694AA CEE6
+CEE7 CEE7 E6958E CEE7
+CEE8 CEE8 E6A0A1 CEE8
+CEE9 CEE9 E6A98B CEE9
+CEEA CEEA E78BA1 CEEA
+CEEB CEEB E79A8E CEEB
+CEEC CEEC E79FAF CEEC
+CEED CEED E7B59E CEED
+CEEE CEEE E7BFB9 CEEE
+CEEF CEEF E886A0 CEEF
+CEF0 CEF0 E8958E CEF0
+CEF1 CEF1 E89B9F CEF1
+CEF2 CEF2 E8BC83 CEF2
+CEF3 CEF3 E8BD8E CEF3
+CEF4 CEF4 E9838A CEF4
+CEF5 CEF5 E9A483 CEF5
+CEF6 CEF6 E9A995 CEF6
+CEF7 CEF7 E9AEAB CEF7
+CEF8 CEF8 E4B898 CEF8
+CEF9 CEF9 E4B985 CEF9
+CEFA CEFA E4B99D CEFA
+CEFB CEFB E4BB87 CEFB
+CEFC CEFC E4BFB1 CEFC
+CEFD CEFD E585B7 CEFD
+CEFE CEFE E58BBE CEFE
+CFA1 CFA1 E58D80 CFA1
+CFA2 CFA2 E58FA3 CFA2
+CFA3 CFA3 E58FA5 CFA3
+CFA4 CFA4 E5928E CFA4
+CFA5 CFA5 E59894 CFA5
+CFA6 CFA6 E59DB5 CFA6
+CFA7 CFA7 E59EA2 CFA7
+CFA8 CFA8 E5AF87 CFA8
+CFA9 CFA9 E5B687 CFA9
+CFAA CFAA E5BB90 CFAA
+CFAB CFAB E687BC CFAB
+CFAC CFAC E68B98 CFAC
+CFAD CFAD E69591 CFAD
+CFAE CFAE E69EB8 CFAE
+CFAF CFAF E69FA9 CFAF
+CFB0 CFB0 E6A78B CFB0
+CFB1 CFB1 E6AD90 CFB1
+CFB2 CFB2 E6AF86 CFB2
+CFB3 CFB3 E6AFAC CFB3
+CFB4 CFB4 E6B182 CFB4
+CFB5 CFB5 E6BA9D CFB5
+CFB6 CFB6 E781B8 CFB6
+CFB7 CFB7 E78B97 CFB7
+CFB8 CFB8 E78E96 CFB8
+CFB9 CFB9 E79083 CFB9
+CFBA CFBA E79EBF CFBA
+CFBB CFBB E79FA9 CFBB
+CFBC CFBC E7A9B6 CFBC
+CFBD CFBD E7B5BF CFBD
+CFBE CFBE E88089 CFBE
+CFBF CFBF E887BC CFBF
+CFC0 CFC0 E88885 CFC0
+CFC1 CFC1 E8888A CFC1
+CFC2 CFC2 E88B9F CFC2
+CFC3 CFC3 E8A1A2 CFC3
+CFC4 CFC4 E8ACB3 CFC4
+CFC5 CFC5 E8B3BC CFC5
+CFC6 CFC6 E8BB80 CFC6
+CFC7 CFC7 E98091 CFC7
+CFC8 CFC8 E982B1 CFC8
+CFC9 CFC9 E989A4 CFC9
+CFCA CFCA E98AB6 CFCA
+CFCB CFCB E9A792 CFCB
+CFCC CFCC E9A985 CFCC
+CFCD CFCD E9B3A9 CFCD
+CFCE CFCE E9B797 CFCE
+CFCF CFCF E9BE9C CFCF
+CFD0 CFD0 E59C8B CFD0
+CFD1 CFD1 E5B180 CFD1
+CFD2 CFD2 E88F8A CFD2
+CFD3 CFD3 E99EA0 CFD3
+CFD4 CFD4 E99EAB CFD4
+CFD5 CFD5 E9BAB4 CFD5
+CFD6 CFD6 E5909B CFD6
+CFD7 CFD7 E7AA98 CFD7
+CFD8 CFD8 E7BEA4 CFD8
+CFD9 CFD9 E8A399 CFD9
+CFDA CFDA E8BB8D CFDA
+CFDB CFDB E983A1 CFDB
+CFDC CFDC E5A080 CFDC
+CFDD CFDD E5B188 CFDD
+CFDE CFDE E68E98 CFDE
+CFDF CFDF E7AA9F CFDF
+CFE0 CFE0 E5AEAE CFE0
+CFE1 CFE1 E5BC93 CFE1
+CFE2 CFE2 E7A9B9 CFE2
+CFE3 CFE3 E7AAAE CFE3
+CFE4 CFE4 E88A8E CFE4
+CFE5 CFE5 E8BAAC CFE5
+CFE6 CFE6 E580A6 CFE6
+CFE7 CFE7 E588B8 CFE7
+CFE8 CFE8 E58BB8 CFE8
+CFE9 CFE9 E58DB7 CFE9
+CFEA CFEA E59C88 CFEA
+CFEB CFEB E68BB3 CFEB
+CFEC CFEC E68DB2 CFEC
+CFED CFED E6AC8A CFED
+CFEE CFEE E6B783 CFEE
+CFEF CFEF E79CB7 CFEF
+CFF0 CFF0 E58EA5 CFF0
+CFF1 CFF1 E78D97 CFF1
+CFF2 CFF2 E895A8 CFF2
+CFF3 CFF3 E8B9B6 CFF3
+CFF4 CFF4 E99795 CFF4
+CFF5 CFF5 E69CBA CFF5
+CFF6 CFF6 E6AB83 CFF6
+CFF7 CFF7 E6BDB0 CFF7
+CFF8 CFF8 E8A9AD CFF8
+CFF9 CFF9 E8BB8C CFF9
+CFFA CFFA E9A58B CFFA
+CFFB CFFB EFA486 CFFB
+CFFC CFFC E699B7 CFFC
+CFFD CFFD E6ADB8 CFFD
+CFFE CFFE E8B2B4 CFFE
+D0A1 D0A1 E9ACBC D0A1
+D0A2 D0A2 EFA487 D0A2
+D0A3 D0A3 E58FAB D0A3
+D0A4 D0A4 E59CAD D0A4
+D0A5 D0A5 E5A58E D0A5
+D0A6 D0A6 E68F86 D0A6
+D0A7 D0A7 E6A7BB D0A7
+D0A8 D0A8 E78FAA D0A8
+D0A9 D0A9 E7A185 D0A9
+D0AA D0AA E7AABA D0AA
+D0AB D0AB E7AB85 D0AB
+D0AC D0AC E7B3BE D0AC
+D0AD D0AD E891B5 D0AD
+D0AE D0AE E8A68F D0AE
+D0AF D0AF E8B5B3 D0AF
+D0B0 D0B0 E980B5 D0B0
+D0B1 D0B1 E996A8 D0B1
+D0B2 D0B2 E58BBB D0B2
+D0B3 D0B3 E59D87 D0B3
+D0B4 D0B4 E79587 D0B4
+D0B5 D0B5 E7ADA0 D0B5
+D0B6 D0B6 E88F8C D0B6
+D0B7 D0B7 E9889E D0B7
+D0B8 D0B8 EFA488 D0B8
+D0B9 D0B9 E6A998 D0B9
+D0BA D0BA E5858B D0BA
+D0BB D0BB E5898B D0BB
+D0BC D0BC E58A87 D0BC
+D0BD D0BD E6889F D0BD
+D0BE D0BE E6A398 D0BE
+D0BF D0BF E6A5B5 D0BF
+D0C0 D0C0 E99A99 D0C0
+D0C1 D0C1 E58385 D0C1
+D0C2 D0C2 E58AA4 D0C2
+D0C3 D0C3 E58BA4 D0C3
+D0C4 D0C4 E68783 D0C4
+D0C5 D0C5 E696A4 D0C5
+D0C6 D0C6 E6A0B9 D0C6
+D0C7 D0C7 E6A7BF D0C7
+D0C8 D0C8 E791BE D0C8
+D0C9 D0C9 E7AD8B D0C9
+D0CA D0CA E88AB9 D0CA
+D0CB D0CB E88FAB D0CB
+D0CC D0CC E8A6B2 D0CC
+D0CD D0CD E8ACB9 D0CD
+D0CE D0CE E8BF91 D0CE
+D0CF D0CF E9A589 D0CF
+D0D0 D0D0 EFA489 D0D0
+D0D1 D0D1 E4BB8A D0D1
+D0D2 D0D2 E5A697 D0D2
+D0D3 D0D3 E69392 D0D3
+D0D4 D0D4 E69891 D0D4
+D0D5 D0D5 E6AA8E D0D5
+D0D6 D0D6 E790B4 D0D6
+D0D7 D0D7 E7A681 D0D7
+D0D8 D0D8 E7A6BD D0D8
+D0D9 D0D9 E88AA9 D0D9
+D0DA D0DA E8A1BE D0DA
+D0DB D0DB E8A1BF D0DB
+D0DC D0DC E8A59F D0DC
+D0DD D0DD EFA48A D0DD
+D0DE D0DE E98CA6 D0DE
+D0DF D0DF E4BC8B D0DF
+D0E0 D0E0 E58F8A D0E0
+D0E1 D0E1 E680A5 D0E1
+D0E2 D0E2 E689B1 D0E2
+D0E3 D0E3 E6B1B2 D0E3
+D0E4 D0E4 E7B49A D0E4
+D0E5 D0E5 E7B5A6 D0E5
+D0E6 D0E6 E4BA98 D0E6
+D0E7 D0E7 E585A2 D0E7
+D0E8 D0E8 E79F9C D0E8
+D0E9 D0E9 E882AF D0E9
+D0EA D0EA E4BC81 D0EA
+D0EB D0EB E4BC8E D0EB
+D0EC D0EC E585B6 D0EC
+D0ED D0ED E58680 D0ED
+D0EE D0EE E5979C D0EE
+D0EF D0EF E599A8 D0EF
+D0F0 D0F0 E59CBB D0F0
+D0F1 D0F1 E59FBA D0F1
+D0F2 D0F2 E59FBC D0F2
+D0F3 D0F3 E5A494 D0F3
+D0F4 D0F4 E5A587 D0F4
+D0F5 D0F5 E5A693 D0F5
+D0F6 D0F6 E5AF84 D0F6
+D0F7 D0F7 E5B290 D0F7
+D0F8 D0F8 E5B48E D0F8
+D0F9 D0F9 E5B7B1 D0F9
+D0FA D0FA E5B9BE D0FA
+D0FB D0FB E5BF8C D0FB
+D0FC D0FC E68A80 D0FC
+D0FD D0FD E69797 D0FD
+D0FE D0FE E697A3 D0FE
+D1A1 D1A1 E69C9E D1A1
+D1A2 D1A2 E69C9F D1A2
+D1A3 D1A3 E69D9E D1A3
+D1A4 D1A4 E6A38B D1A4
+D1A5 D1A5 E6A384 D1A5
+D1A6 D1A6 E6A99F D1A6
+D1A7 D1A7 E6ACBA D1A7
+D1A8 D1A8 E6B0A3 D1A8
+D1A9 D1A9 E6B1BD D1A9
+D1AA D1AA E6B282 D1AA
+D1AB D1AB E6B787 D1AB
+D1AC D1AC E78E98 D1AC
+D1AD D1AD E790A6 D1AD
+D1AE D1AE E790AA D1AE
+D1AF D1AF E79282 D1AF
+D1B0 D1B0 E792A3 D1B0
+D1B1 D1B1 E795B8 D1B1
+D1B2 D1B2 E795BF D1B2
+D1B3 D1B3 E7A281 D1B3
+D1B4 D1B4 E7A3AF D1B4
+D1B5 D1B5 E7A581 D1B5
+D1B6 D1B6 E7A587 D1B6
+D1B7 D1B7 E7A588 D1B7
+D1B8 D1B8 E7A5BA D1B8
+D1B9 D1B9 E7AE95 D1B9
+D1BA D1BA E7B480 D1BA
+D1BB D1BB E7B6BA D1BB
+D1BC D1BC E7BE88 D1BC
+D1BD D1BD E88086 D1BD
+D1BE D1BE E880AD D1BE
+D1BF D1BF E8828C D1BF
+D1C0 D1C0 E8A898 D1C0
+D1C1 D1C1 E8AD8F D1C1
+D1C2 D1C2 E8B188 D1C2
+D1C3 D1C3 E8B5B7 D1C3
+D1C4 D1C4 E98CA1 D1C4
+D1C5 D1C5 E98CA4 D1C5
+D1C6 D1C6 E9A3A2 D1C6
+D1C7 D1C7 E9A591 D1C7
+D1C8 D1C8 E9A88E D1C8
+D1C9 D1C9 E9A88F D1C9
+D1CA D1CA E9A9A5 D1CA
+D1CB D1CB E9BA92 D1CB
+D1CC D1CC E7B78A D1CC
+D1CD D1CD E4BDB6 D1CD
+D1CE D1CE E59089 D1CE
+D1CF D1CF E68BAE D1CF
+D1D0 D1D0 E6A194 D1D0
+D1D1 D1D1 E98791 D1D1
+D1D2 D1D2 E596AB D1D2
+D1D3 D1D3 E584BA D1D3
+D1D4 D1D4 EFA48B D1D4
+D1D5 D1D5 EFA48C D1D5
+D1D6 D1D6 E5A89C D1D6
+D1D7 D1D7 E687A6 D1D7
+D1D8 D1D8 EFA48D D1D8
+D1D9 D1D9 E68B8F D1D9
+D1DA D1DA E68BBF D1DA
+D1DB D1DB EFA48E D1DB
+D1DC D1DC EFA48F D1DC
+D1DD D1DD EFA490 D1DD
+D1DE D1DE EFA491 D1DE
+D1DF D1DF EFA492 D1DF
+D1E0 D1E0 EFA493 D1E0
+D1E1 D1E1 E982A3 D1E1
+D1E2 D1E2 EFA494 D1E2
+D1E3 D1E3 EFA495 D1E3
+D1E4 D1E4 EFA496 D1E4
+D1E5 D1E5 EFA497 D1E5
+D1E6 D1E6 EFA498 D1E6
+D1E7 D1E7 E8ABBE D1E7
+D1E8 D1E8 EFA499 D1E8
+D1E9 D1E9 EFA49A D1E9
+D1EA D1EA EFA49B D1EA
+D1EB D1EB EFA49C D1EB
+D1EC D1EC E69A96 D1EC
+D1ED D1ED EFA49D D1ED
+D1EE D1EE E78596 D1EE
+D1EF D1EF EFA49E D1EF
+D1F0 D1F0 EFA49F D1F0
+D1F1 D1F1 E99BA3 D1F1
+D1F2 D1F2 EFA4A0 D1F2
+D1F3 D1F3 E68D8F D1F3
+D1F4 D1F4 E68DBA D1F4
+D1F5 D1F5 E58D97 D1F5
+D1F6 D1F6 EFA4A1 D1F6
+D1F7 D1F7 E69E8F D1F7
+D1F8 D1F8 E6A5A0 D1F8
+D1F9 D1F9 E6B9B3 D1F9
+D1FA D1FA EFA4A2 D1FA
+D1FB D1FB E794B7 D1FB
+D1FC D1FC EFA4A3 D1FC
+D1FD D1FD EFA4A4 D1FD
+D1FE D1FE EFA4A5 D1FE
+D2A1 D2A1 E7B48D D2A1
+D2A2 D2A2 EFA4A6 D2A2
+D2A3 D2A3 EFA4A7 D2A3
+D2A4 D2A4 E8A1B2 D2A4
+D2A5 D2A5 E59B8A D2A5
+D2A6 D2A6 E5A898 D2A6
+D2A7 D2A7 EFA4A8 D2A7
+D2A8 D2A8 EFA4A9 D2A8
+D2A9 D2A9 EFA4AA D2A9
+D2AA D2AA EFA4AB D2AA
+D2AB D2AB EFA4AC D2AB
+D2AC D2AC E4B983 D2AC
+D2AD D2AD EFA4AD D2AD
+D2AE D2AE E585A7 D2AE
+D2AF D2AF E5A588 D2AF
+D2B0 D2B0 E69FB0 D2B0
+D2B1 D2B1 E88090 D2B1
+D2B2 D2B2 EFA4AE D2B2
+D2B3 D2B3 E5A5B3 D2B3
+D2B4 D2B4 E5B9B4 D2B4
+D2B5 D2B5 E6929A D2B5
+D2B6 D2B6 E7A78A D2B6
+D2B7 D2B7 E5BFB5 D2B7
+D2B8 D2B8 E681AC D2B8
+D2B9 D2B9 E68B88 D2B9
+D2BA D2BA E68DBB D2BA
+D2BB D2BB E5AFA7 D2BB
+D2BC D2BC E5AF97 D2BC
+D2BD D2BD E58AAA D2BD
+D2BE D2BE EFA4AF D2BE
+D2BF D2BF E5A5B4 D2BF
+D2C0 D2C0 E5BCA9 D2C0
+D2C1 D2C1 E68092 D2C1
+D2C2 D2C2 EFA4B0 D2C2
+D2C3 D2C3 EFA4B1 D2C3
+D2C4 D2C4 EFA4B2 D2C4
+D2C5 D2C5 E79199 D2C5
+D2C6 D2C6 EFA4B3 D2C6
+D2C7 D2C7 EFA4B4 D2C7
+D2C8 D2C8 EFA4B5 D2C8
+D2C9 D2C9 EFA4B6 D2C9
+D2CA D2CA EFA4B7 D2CA
+D2CB D2CB EFA4B8 D2CB
+D2CC D2CC E9A791 D2CC
+D2CD D2CD EFA4B9 D2CD
+D2CE D2CE EFA4BA D2CE
+D2CF D2CF EFA4BB D2CF
+D2D0 D2D0 EFA4BC D2D0
+D2D1 D2D1 EFA4BD D2D1
+D2D2 D2D2 EFA4BE D2D2
+D2D3 D2D3 EFA4BF D2D3
+D2D4 D2D4 EFA580 D2D4
+D2D5 D2D5 EFA581 D2D5
+D2D6 D2D6 EFA582 D2D6
+D2D7 D2D7 EFA583 D2D7
+D2D8 D2D8 E6BF83 D2D8
+D2D9 D2D9 EFA584 D2D9
+D2DA D2DA EFA585 D2DA
+D2DB D2DB E886BF D2DB
+D2DC D2DC E8BEB2 D2DC
+D2DD D2DD E683B1 D2DD
+D2DE D2DE EFA586 D2DE
+D2DF D2DF EFA587 D2DF
+D2E0 D2E0 E885A6 D2E0
+D2E1 D2E1 EFA588 D2E1
+D2E2 D2E2 EFA589 D2E2
+D2E3 D2E3 E5B0BF D2E3
+D2E4 D2E4 EFA58A D2E4
+D2E5 D2E5 EFA58B D2E5
+D2E6 D2E6 EFA58C D2E6
+D2E7 D2E7 EFA58D D2E7
+D2E8 D2E8 EFA58E D2E8
+D2E9 D2E9 EFA58F D2E9
+D2EA D2EA EFA590 D2EA
+D2EB D2EB EFA591 D2EB
+D2EC D2EC E5ABA9 D2EC
+D2ED D2ED E8A8A5 D2ED
+D2EE D2EE E69DBB D2EE
+D2EF D2EF E7B490 D2EF
+D2F0 D2F0 EFA592 D2F0
+D2F1 D2F1 EFA593 D2F1
+D2F2 D2F2 EFA594 D2F2
+D2F3 D2F3 EFA595 D2F3
+D2F4 D2F4 EFA596 D2F4
+D2F5 D2F5 EFA597 D2F5
+D2F6 D2F6 E883BD D2F6
+D2F7 D2F7 EFA598 D2F7
+D2F8 D2F8 EFA599 D2F8
+D2F9 D2F9 E5B0BC D2F9
+D2FA D2FA E6B3A5 D2FA
+D2FB D2FB E58CBF D2FB
+D2FC D2FC E6BABA D2FC
+D2FD D2FD E5A49A D2FD
+D2FE D2FE E88CB6 D2FE
+D3A1 D3A1 E4B8B9 D3A1
+D3A2 D3A2 E4BAB6 D3A2
+D3A3 D3A3 E4BD86 D3A3
+D3A4 D3A4 E596AE D3A4
+D3A5 D3A5 E59C98 D3A5
+D3A6 D3A6 E5A387 D3A6
+D3A7 D3A7 E5BD96 D3A7
+D3A8 D3A8 E696B7 D3A8
+D3A9 D3A9 E697A6 D3A9
+D3AA D3AA E6AA80 D3AA
+D3AB D3AB E6AEB5 D3AB
+D3AC D3AC E6B98D D3AC
+D3AD D3AD E79FAD D3AD
+D3AE D3AE E7ABAF D3AE
+D3AF D3AF E7B09E D3AF
+D3B0 D3B0 E7B79E D3B0
+D3B1 D3B1 E89B8B D3B1
+D3B2 D3B2 E8A292 D3B2
+D3B3 D3B3 E984B2 D3B3
+D3B4 D3B4 E98D9B D3B4
+D3B5 D3B5 E692BB D3B5
+D3B6 D3B6 E6BEBE D3B6
+D3B7 D3B7 E78DBA D3B7
+D3B8 D3B8 E796B8 D3B8
+D3B9 D3B9 E98194 D3B9
+D3BA D3BA E59596 D3BA
+D3BB D3BB E59D8D D3BB
+D3BC D3BC E686BA D3BC
+D3BD D3BD E69394 D3BD
+D3BE D3BE E69B87 D3BE
+D3BF D3BF E6B7A1 D3BF
+D3C0 D3C0 E6B99B D3C0
+D3C1 D3C1 E6BDAD D3C1
+D3C2 D3C2 E6BEB9 D3C2
+D3C3 D3C3 E797B0 D3C3
+D3C4 D3C4 E88183 D3C4
+D3C5 D3C5 E886BD D3C5
+D3C6 D3C6 E89581 D3C6
+D3C7 D3C7 E8A683 D3C7
+D3C8 D3C8 E8AB87 D3C8
+D3C9 D3C9 E8AD9A D3C9
+D3CA D3CA E98C9F D3CA
+D3CB D3CB E6B293 D3CB
+D3CC D3CC E79593 D3CC
+D3CD D3CD E7AD94 D3CD
+D3CE D3CE E8B88F D3CE
+D3CF D3CF E9819D D3CF
+D3D0 D3D0 E59490 D3D0
+D3D1 D3D1 E5A082 D3D1
+D3D2 D3D2 E5A198 D3D2
+D3D3 D3D3 E5B9A2 D3D3
+D3D4 D3D4 E68887 D3D4
+D3D5 D3D5 E6929E D3D5
+D3D6 D3D6 E6A3A0 D3D6
+D3D7 D3D7 E795B6 D3D7
+D3D8 D3D8 E7B396 D3D8
+D3D9 D3D9 E89EB3 D3D9
+D3DA D3DA E9BBA8 D3DA
+D3DB D3DB E4BBA3 D3DB
+D3DC D3DC E59E88 D3DC
+D3DD D3DD E59DAE D3DD
+D3DE D3DE E5A4A7 D3DE
+D3DF D3DF E5B08D D3DF
+D3E0 D3E0 E5B2B1 D3E0
+D3E1 D3E1 E5B8B6 D3E1
+D3E2 D3E2 E5BE85 D3E2
+D3E3 D3E3 E688B4 D3E3
+D3E4 D3E4 E693A1 D3E4
+D3E5 D3E5 E78EB3 D3E5
+D3E6 D3E6 E887BA D3E6
+D3E7 D3E7 E8A28B D3E7
+D3E8 D3E8 E8B2B8 D3E8
+D3E9 D3E9 E99A8A D3E9
+D3EA D3EA E9BB9B D3EA
+D3EB D3EB E5AE85 D3EB
+D3EC D3EC E5BEB7 D3EC
+D3ED D3ED E682B3 D3ED
+D3EE D3EE E58092 D3EE
+D3EF D3EF E58880 D3EF
+D3F0 D3F0 E588B0 D3F0
+D3F1 D3F1 E59C96 D3F1
+D3F2 D3F2 E5A0B5 D3F2
+D3F3 D3F3 E5A197 D3F3
+D3F4 D3F4 E5B08E D3F4
+D3F5 D3F5 E5B1A0 D3F5
+D3F6 D3F6 E5B3B6 D3F6
+D3F7 D3F7 E5B68B D3F7
+D3F8 D3F8 E5BAA6 D3F8
+D3F9 D3F9 E5BE92 D3F9
+D3FA D3FA E682BC D3FA
+D3FB D3FB E68C91 D3FB
+D3FC D3FC E68E89 D3FC
+D3FD D3FD E69097 D3FD
+D3FE D3FE E6A183 D3FE
+D4A1 D4A1 E6A3B9 D4A1
+D4A2 D4A2 E6AB82 D4A2
+D4A3 D4A3 E6B798 D4A3
+D4A4 D4A4 E6B8A1 D4A4
+D4A5 D4A5 E6BB94 D4A5
+D4A6 D4A6 E6BFA4 D4A6
+D4A7 D4A7 E787BE D4A7
+D4A8 D4A8 E79B9C D4A8
+D4A9 D4A9 E79DB9 D4A9
+D4AA D4AA E7A6B1 D4AA
+D4AB D4AB E7A8BB D4AB
+D4AC D4AC E89084 D4AC
+D4AD D4AD E8A6A9 D4AD
+D4AE D4AE E8B3AD D4AE
+D4AF D4AF E8B7B3 D4AF
+D4B0 D4B0 E8B988 D4B0
+D4B1 D4B1 E98083 D4B1
+D4B2 D4B2 E98094 D4B2
+D4B3 D4B3 E98193 D4B3
+D4B4 D4B4 E983BD D4B4
+D4B5 D4B5 E98D8D D4B5
+D4B6 D4B6 E999B6 D4B6
+D4B7 D4B7 E99F9C D4B7
+D4B8 D4B8 E6AF92 D4B8
+D4B9 D4B9 E78086 D4B9
+D4BA D4BA E78998 D4BA
+D4BB D4BB E78AA2 D4BB
+D4BC D4BC E78DA8 D4BC
+D4BD D4BD E79DA3 D4BD
+D4BE D4BE E7A6BF D4BE
+D4BF D4BF E7AFA4 D4BF
+D4C0 D4C0 E7BA9B D4C0
+D4C1 D4C1 E8AE80 D4C1
+D4C2 D4C2 E5A2A9 D4C2
+D4C3 D4C3 E68387 D4C3
+D4C4 D4C4 E695A6 D4C4
+D4C5 D4C5 E697BD D4C5
+D4C6 D4C6 E69ABE D4C6
+D4C7 D4C7 E6B28C D4C7
+D4C8 D4C8 E7849E D4C8
+D4C9 D4C9 E78789 D4C9
+D4CA D4CA E8B19A D4CA
+D4CB D4CB E9A093 D4CB
+D4CC D4CC E4B9AD D4CC
+D4CD D4CD E7AA81 D4CD
+D4CE D4CE E4BB9D D4CE
+D4CF D4CF E586AC D4CF
+D4D0 D4D0 E5878D D4D0
+D4D1 D4D1 E58B95 D4D1
+D4D2 D4D2 E5908C D4D2
+D4D3 D4D3 E686A7 D4D3
+D4D4 D4D4 E69DB1 D4D4
+D4D5 D4D5 E6A190 D4D5
+D4D6 D4D6 E6A39F D4D6
+D4D7 D4D7 E6B49E D4D7
+D4D8 D4D8 E6BDBC D4D8
+D4D9 D4D9 E796BC D4D9
+D4DA D4DA E79EB3 D4DA
+D4DB D4DB E7ABA5 D4DB
+D4DC D4DC E883B4 D4DC
+D4DD D4DD E891A3 D4DD
+D4DE D4DE E98A85 D4DE
+D4DF D4DF E5859C D4DF
+D4E0 D4E0 E69697 D4E0
+D4E1 D4E1 E69D9C D4E1
+D4E2 D4E2 E69E93 D4E2
+D4E3 D4E3 E79798 D4E3
+D4E4 D4E4 E7AB87 D4E4
+D4E5 D4E5 E88DB3 D4E5
+D4E6 D4E6 EFA59A D4E6
+D4E7 D4E7 E8B186 D4E7
+D4E8 D4E8 E98097 D4E8
+D4E9 D4E9 E9A0AD D4E9
+D4EA D4EA E5B1AF D4EA
+D4EB D4EB E88780 D4EB
+D4EC D4EC E88A9A D4EC
+D4ED D4ED E98181 D4ED
+D4EE D4EE E981AF D4EE
+D4EF D4EF E9888D D4EF
+D4F0 D4F0 E5BE97 D4F0
+D4F1 D4F1 E5B69D D4F1
+D4F2 D4F2 E6A999 D4F2
+D4F3 D4F3 E78788 D4F3
+D4F4 D4F4 E799BB D4F4
+D4F5 D4F5 E7AD89 D4F5
+D4F6 D4F6 E897A4 D4F6
+D4F7 D4F7 E8AC84 D4F7
+D4F8 D4F8 E984A7 D4F8
+D4F9 D4F9 E9A8B0 D4F9
+D4FA D4FA E59687 D4FA
+D4FB D4FB E687B6 D4FB
+D4FC D4FC EFA59B D4FC
+D4FD D4FD E799A9 D4FD
+D4FE D4FE E7BE85 D4FE
+D5A1 D5A1 E898BF D5A1
+D5A2 D5A2 E89EBA D5A2
+D5A3 D5A3 E8A3B8 D5A3
+D5A4 D5A4 E9828F D5A4
+D5A5 D5A5 EFA59C D5A5
+D5A6 D5A6 E6B49B D5A6
+D5A7 D5A7 E78399 D5A7
+D5A8 D5A8 E78F9E D5A8
+D5A9 D5A9 E7B5A1 D5A9
+D5AA D5AA E890BD D5AA
+D5AB D5AB EFA59D D5AB
+D5AC D5AC E985AA D5AC
+D5AD D5AD E9A7B1 D5AD
+D5AE D5AE EFA59E D5AE
+D5AF D5AF E4BA82 D5AF
+D5B0 D5B0 E58DB5 D5B0
+D5B1 D5B1 E6AC84 D5B1
+D5B2 D5B2 E6AC92 D5B2
+D5B3 D5B3 E780BE D5B3
+D5B4 D5B4 E7889B D5B4
+D5B5 D5B5 E898AD D5B5
+D5B6 D5B6 E9B89E D5B6
+D5B7 D5B7 E5898C D5B7
+D5B8 D5B8 E8BEA3 D5B8
+D5B9 D5B9 E5B590 D5B9
+D5BA D5BA E693A5 D5BA
+D5BB D5BB E694AC D5BB
+D5BC D5BC E6AC96 D5BC
+D5BD D5BD E6BFAB D5BD
+D5BE D5BE E7B183 D5BE
+D5BF D5BF E7BA9C D5BF
+D5C0 D5C0 E8978D D5C0
+D5C1 D5C1 E8A5A4 D5C1
+D5C2 D5C2 E8A6BD D5C2
+D5C3 D5C3 E68B89 D5C3
+D5C4 D5C4 E88798 D5C4
+D5C5 D5C5 E8A09F D5C5
+D5C6 D5C6 E5BB8A D5C6
+D5C7 D5C7 E69C97 D5C7
+D5C8 D5C8 E6B5AA D5C8
+D5C9 D5C9 E78BBC D5C9
+D5CA D5CA E79085 D5CA
+D5CB D5CB E791AF D5CB
+D5CC D5CC E89E82 D5CC
+D5CD D5CD E9839E D5CD
+D5CE D5CE E4BE86 D5CE
+D5CF D5CF E5B48D D5CF
+D5D0 D5D0 E5BEA0 D5D0
+D5D1 D5D1 E8908A D5D1
+D5D2 D5D2 E586B7 D5D2
+D5D3 D5D3 E68EA0 D5D3
+D5D4 D5D4 E795A5 D5D4
+D5D5 D5D5 E4BAAE D5D5
+D5D6 D5D6 E58086 D5D6
+D5D7 D5D7 E585A9 D5D7
+D5D8 D5D8 E58789 D5D8
+D5D9 D5D9 E6A281 D5D9
+D5DA D5DA E6A891 D5DA
+D5DB D5DB E7B2AE D5DB
+D5DC D5DC E7B2B1 D5DC
+D5DD D5DD E7B3A7 D5DD
+D5DE D5DE E889AF D5DE
+D5DF D5DF E8AB92 D5DF
+D5E0 D5E0 E8BC9B D5E0
+D5E1 D5E1 E9878F D5E1
+D5E2 D5E2 E4BEB6 D5E2
+D5E3 D5E3 E584B7 D5E3
+D5E4 D5E4 E58BB5 D5E4
+D5E5 D5E5 E59182 D5E5
+D5E6 D5E6 E5BBAC D5E6
+D5E7 D5E7 E685AE D5E7
+D5E8 D5E8 E688BE D5E8
+D5E9 D5E9 E69785 D5E9
+D5EA D5EA E6AB9A D5EA
+D5EB D5EB E6BFBE D5EB
+D5EC D5EC E7A4AA D5EC
+D5ED D5ED E8979C D5ED
+D5EE D5EE E8A0A3 D5EE
+D5EF D5EF E996AD D5EF
+D5F0 D5F0 E9A9A2 D5F0
+D5F1 D5F1 E9A9AA D5F1
+D5F2 D5F2 E9BA97 D5F2
+D5F3 D5F3 E9BB8E D5F3
+D5F4 D5F4 E58A9B D5F4
+D5F5 D5F5 E69B86 D5F5
+D5F6 D5F6 E6ADB7 D5F6
+D5F7 D5F7 E7809D D5F7
+D5F8 D5F8 E7A4AB D5F8
+D5F9 D5F9 E8BDA2 D5F9
+D5FA D5FA E99D82 D5FA
+D5FB D5FB E68690 D5FB
+D5FC D5FC E68880 D5FC
+D5FD D5FD E694A3 D5FD
+D5FE D5FE E6BCA3 D5FE
+D6A1 D6A1 E78589 D6A1
+D6A2 D6A2 E79289 D6A2
+D6A3 D6A3 E7B7B4 D6A3
+D6A4 D6A4 E881AF D6A4
+D6A5 D6A5 E893AE D6A5
+D6A6 D6A6 E8BCA6 D6A6
+D6A7 D6A7 E980A3 D6A7
+D6A8 D6A8 E98D8A D6A8
+D6A9 D6A9 E586BD D6A9
+D6AA D6AA E58897 D6AA
+D6AB D6AB E58AA3 D6AB
+D6AC D6AC E6B48C D6AC
+D6AD D6AD E78388 D6AD
+D6AE D6AE E8A382 D6AE
+D6AF D6AF E5BB89 D6AF
+D6B0 D6B0 E69682 D6B0
+D6B1 D6B1 E6AEAE D6B1
+D6B2 D6B2 E6BF82 D6B2
+D6B3 D6B3 E7B0BE D6B3
+D6B4 D6B4 E78DB5 D6B4
+D6B5 D6B5 E4BBA4 D6B5
+D6B6 D6B6 E4BCB6 D6B6
+D6B7 D6B7 E59BB9 D6B7
+D6B8 D6B8 EFA59F D6B8
+D6B9 D6B9 E5B2BA D6B9
+D6BA D6BA E5B6BA D6BA
+D6BB D6BB E6809C D6BB
+D6BC D6BC E78EB2 D6BC
+D6BD D6BD E7ACAD D6BD
+D6BE D6BE E7BE9A D6BE
+D6BF D6BF E7BF8E D6BF
+D6C0 D6C0 E88186 D6C0
+D6C1 D6C1 E9809E D6C1
+D6C2 D6C2 E988B4 D6C2
+D6C3 D6C3 E99BB6 D6C3
+D6C4 D6C4 E99D88 D6C4
+D6C5 D6C5 E9A098 D6C5
+D6C6 D6C6 E9BDA1 D6C6
+D6C7 D6C7 E4BE8B D6C7
+D6C8 D6C8 E6BEA7 D6C8
+D6C9 D6C9 E7A6AE D6C9
+D6CA D6CA E986B4 D6CA
+D6CB D6CB E99AB7 D6CB
+D6CC D6CC E58B9E D6CC
+D6CD D6CD EFA5A0 D6CD
+D6CE D6CE E69288 D6CE
+D6CF D6CF E69384 D6CF
+D6D0 D6D0 E6AB93 D6D0
+D6D1 D6D1 E6BD9E D6D1
+D6D2 D6D2 E78098 D6D2
+D6D3 D6D3 E78890 D6D3
+D6D4 D6D4 E79BA7 D6D4
+D6D5 D6D5 E88081 D6D5
+D6D6 D6D6 E89886 D6D6
+D6D7 D6D7 E8999C D6D7
+D6D8 D6D8 E8B7AF D6D8
+D6D9 D6D9 E8BC85 D6D9
+D6DA D6DA E99CB2 D6DA
+D6DB D6DB E9ADAF D6DB
+D6DC D6DC E9B7BA D6DC
+D6DD D6DD E9B9B5 D6DD
+D6DE D6DE E7A28C D6DE
+D6DF D6DF E7A5BF D6DF
+D6E0 D6E0 E7B6A0 D6E0
+D6E1 D6E1 E88F89 D6E1
+D6E2 D6E2 E98C84 D6E2
+D6E3 D6E3 E9B9BF D6E3
+D6E4 D6E4 E9BA93 D6E4
+D6E5 D6E5 E8AB96 D6E5
+D6E6 D6E6 E5A39F D6E6
+D6E7 D6E7 E5BC84 D6E7
+D6E8 D6E8 E69CA7 D6E8
+D6E9 D6E9 E780A7 D6E9
+D6EA D6EA E7938F D6EA
+D6EB D6EB E7B1A0 D6EB
+D6EC D6EC E881BE D6EC
+D6ED D6ED E584A1 D6ED
+D6EE D6EE E780A8 D6EE
+D6EF D6EF E789A2 D6EF
+D6F0 D6F0 E7A38A D6F0
+D6F1 D6F1 E8B382 D6F1
+D6F2 D6F2 E8B39A D6F2
+D6F3 D6F3 E8B3B4 D6F3
+D6F4 D6F4 E99BB7 D6F4
+D6F5 D6F5 E4BA86 D6F5
+D6F6 D6F6 E5839A D6F6
+D6F7 D6F7 E5AFAE D6F7
+D6F8 D6F8 E5BB96 D6F8
+D6F9 D6F9 E69699 D6F9
+D6FA D6FA E7878E D6FA
+D6FB D6FB E79982 D6FB
+D6FC D6FC E79EAD D6FC
+D6FD D6FD E8818A D6FD
+D6FE D6FE E893BC D6FE
+D7A1 D7A1 E981BC D7A1
+D7A2 D7A2 E9ACA7 D7A2
+D7A3 D7A3 E9BE8D D7A3
+D7A4 D7A4 E5A398 D7A4
+D7A5 D7A5 E5A981 D7A5
+D7A6 D7A6 E5B1A2 D7A6
+D7A7 D7A7 E6A893 D7A7
+D7A8 D7A8 E6B79A D7A8
+D7A9 D7A9 E6BC8F D7A9
+D7AA D7AA E798BB D7AA
+D7AB D7AB E7B4AF D7AB
+D7AC D7AC E7B8B7 D7AC
+D7AD D7AD E8949E D7AD
+D7AE D7AE E8A4B8 D7AE
+D7AF D7AF E98FA4 D7AF
+D7B0 D7B0 E9998B D7B0
+D7B1 D7B1 E58A89 D7B1
+D7B2 D7B2 E69792 D7B2
+D7B3 D7B3 E69FB3 D7B3
+D7B4 D7B4 E6A6B4 D7B4
+D7B5 D7B5 E6B581 D7B5
+D7B6 D7B6 E6BA9C D7B6
+D7B7 D7B7 E7808F D7B7
+D7B8 D7B8 E79089 D7B8
+D7B9 D7B9 E791A0 D7B9
+D7BA D7BA E79599 D7BA
+D7BB D7BB E798A4 D7BB
+D7BC D7BC E7A1AB D7BC
+D7BD D7BD E8ACAC D7BD
+D7BE D7BE E9A19E D7BE
+D7BF D7BF E585AD D7BF
+D7C0 D7C0 E688AE D7C0
+D7C1 D7C1 E999B8 D7C1
+D7C2 D7C2 E4BE96 D7C2
+D7C3 D7C3 E580AB D7C3
+D7C4 D7C4 E5B499 D7C4
+D7C5 D7C5 E6B7AA D7C5
+D7C6 D7C6 E7B6B8 D7C6
+D7C7 D7C7 E8BCAA D7C7
+D7C8 D7C8 E5BE8B D7C8
+D7C9 D7C9 E68584 D7C9
+D7CA D7CA E6A097 D7CA
+D7CB D7CB EFA5A1 D7CB
+D7CC D7CC E99A86 D7CC
+D7CD D7CD E58B92 D7CD
+D7CE D7CE E8828B D7CE
+D7CF D7CF E5879C D7CF
+D7D0 D7D0 E5878C D7D0
+D7D1 D7D1 E6A59E D7D1
+D7D2 D7D2 E7A89C D7D2
+D7D3 D7D3 E7B6BE D7D3
+D7D4 D7D4 E88FB1 D7D4
+D7D5 D7D5 E999B5 D7D5
+D7D6 D7D6 E4BF9A D7D6
+D7D7 D7D7 E588A9 D7D7
+D7D8 D7D8 E58E98 D7D8
+D7D9 D7D9 E5908F D7D9
+D7DA D7DA E5948E D7DA
+D7DB D7DB E5B1A5 D7DB
+D7DC D7DC E682A7 D7DC
+D7DD D7DD E69D8E D7DD
+D7DE D7DE E6A2A8 D7DE
+D7DF D7DF E6B5AC D7DF
+D7E0 D7E0 E78A81 D7E0
+D7E1 D7E1 E78BB8 D7E1
+D7E2 D7E2 E79086 D7E2
+D7E3 D7E3 E79283 D7E3
+D7E4 D7E4 EFA5A2 D7E4
+D7E5 D7E5 E797A2 D7E5
+D7E6 D7E6 E7B1AC D7E6
+D7E7 D7E7 E7BDB9 D7E7
+D7E8 D7E8 E7BEB8 D7E8
+D7E9 D7E9 E88E89 D7E9
+D7EA D7EA E8A38F D7EA
+D7EB D7EB E8A3A1 D7EB
+D7EC D7EC E9878C D7EC
+D7ED D7ED E98790 D7ED
+D7EE D7EE E99BA2 D7EE
+D7EF D7EF E9AF89 D7EF
+D7F0 D7F0 E5909D D7F0
+D7F1 D7F1 E6BDBE D7F1
+D7F2 D7F2 E78790 D7F2
+D7F3 D7F3 E79298 D7F3
+D7F4 D7F4 E897BA D7F4
+D7F5 D7F5 E8BAAA D7F5
+D7F6 D7F6 E99AA3 D7F6
+D7F7 D7F7 E9B197 D7F7
+D7F8 D7F8 E9BA9F D7F8
+D7F9 D7F9 E69E97 D7F9
+D7FA D7FA E6B78B D7FA
+D7FB D7FB E790B3 D7FB
+D7FC D7FC E887A8 D7FC
+D7FD D7FD E99C96 D7FD
+D7FE D7FE E7A0AC D7FE
+D8A1 D8A1 E7AB8B D8A1
+D8A2 D8A2 E7ACA0 D8A2
+D8A3 D8A3 E7B292 D8A3
+D8A4 D8A4 E691A9 D8A4
+D8A5 D8A5 E791AA D8A5
+D8A6 D8A6 E797B2 D8A6
+D8A7 D8A7 E7A2BC D8A7
+D8A8 D8A8 E7A3A8 D8A8
+D8A9 D8A9 E9A6AC D8A9
+D8AA D8AA E9AD94 D8AA
+D8AB D8AB E9BABB D8AB
+D8AC D8AC E5AF9E D8AC
+D8AD D8AD E5B995 D8AD
+D8AE D8AE E6BCA0 D8AE
+D8AF D8AF E8869C D8AF
+D8B0 D8B0 E88EAB D8B0
+D8B1 D8B1 E98288 D8B1
+D8B2 D8B2 E4B887 D8B2
+D8B3 D8B3 E58D8D D8B3
+D8B4 D8B4 E5A8A9 D8B4
+D8B5 D8B5 E5B792 D8B5
+D8B6 D8B6 E5BD8E D8B6
+D8B7 D8B7 E685A2 D8B7
+D8B8 D8B8 E68CBD D8B8
+D8B9 D8B9 E699A9 D8B9
+D8BA D8BA E69BBC D8BA
+D8BB D8BB E6BBBF D8BB
+D8BC D8BC E6BCAB D8BC
+D8BD D8BD E781A3 D8BD
+D8BE D8BE E79E9E D8BE
+D8BF D8BF E890AC D8BF
+D8C0 D8C0 E89493 D8C0
+D8C1 D8C1 E8A0BB D8C1
+D8C2 D8C2 E8BC93 D8C2
+D8C3 D8C3 E9A585 D8C3
+D8C4 D8C4 E9B0BB D8C4
+D8C5 D8C5 E5949C D8C5
+D8C6 D8C6 E68AB9 D8C6
+D8C7 D8C7 E69CAB D8C7
+D8C8 D8C8 E6B2AB D8C8
+D8C9 D8C9 E88C89 D8C9
+D8CA D8CA E8A5AA D8CA
+D8CB D8CB E99DBA D8CB
+D8CC D8CC E4BAA1 D8CC
+D8CD D8CD E5A684 D8CD
+D8CE D8CE E5BF98 D8CE
+D8CF D8CF E5BF99 D8CF
+D8D0 D8D0 E69C9B D8D0
+D8D1 D8D1 E7B6B2 D8D1
+D8D2 D8D2 E7BD94 D8D2
+D8D3 D8D3 E88A92 D8D3
+D8D4 D8D4 E88CAB D8D4
+D8D5 D8D5 E88EBD D8D5
+D8D6 D8D6 E8BC9E D8D6
+D8D7 D8D7 E98299 D8D7
+D8D8 D8D8 E59F8B D8D8
+D8D9 D8D9 E5A6B9 D8D9
+D8DA D8DA E5AA92 D8DA
+D8DB D8DB E5AF90 D8DB
+D8DC D8DC E698A7 D8DC
+D8DD D8DD E69E9A D8DD
+D8DE D8DE E6A285 D8DE
+D8DF D8DF E6AF8F D8DF
+D8E0 D8E0 E785A4 D8E0
+D8E1 D8E1 E7BDB5 D8E1
+D8E2 D8E2 E8B2B7 D8E2
+D8E3 D8E3 E8B3A3 D8E3
+D8E4 D8E4 E98281 D8E4
+D8E5 D8E5 E9AD85 D8E5
+D8E6 D8E6 E88488 D8E6
+D8E7 D8E7 E8B28A D8E7
+D8E8 D8E8 E9998C D8E8
+D8E9 D8E9 E9A980 D8E9
+D8EA D8EA E9BAA5 D8EA
+D8EB D8EB E5AD9F D8EB
+D8EC D8EC E6B093 D8EC
+D8ED D8ED E78C9B D8ED
+D8EE D8EE E79BB2 D8EE
+D8EF D8EF E79B9F D8EF
+D8F0 D8F0 E8908C D8F0
+D8F1 D8F1 E586AA D8F1
+D8F2 D8F2 E8A693 D8F2
+D8F3 D8F3 E5858D D8F3
+D8F4 D8F4 E58695 D8F4
+D8F5 D8F5 E58B89 D8F5
+D8F6 D8F6 E6A389 D8F6
+D8F7 D8F7 E6B294 D8F7
+D8F8 D8F8 E79C84 D8F8
+D8F9 D8F9 E79CA0 D8F9
+D8FA D8FA E7B6BF D8FA
+D8FB D8FB E7B7AC D8FB
+D8FC D8FC E99DA2 D8FC
+D8FD D8FD E9BAB5 D8FD
+D8FE D8FE E6BB85 D8FE
+D9A1 D9A1 E89491 D9A1
+D9A2 D9A2 E586A5 D9A2
+D9A3 D9A3 E5908D D9A3
+D9A4 D9A4 E591BD D9A4
+D9A5 D9A5 E6988E D9A5
+D9A6 D9A6 E69A9D D9A6
+D9A7 D9A7 E6A4A7 D9A7
+D9A8 D9A8 E6BA9F D9A8
+D9A9 D9A9 E79ABF D9A9
+D9AA D9AA E79E91 D9AA
+D9AB D9AB E88C97 D9AB
+D9AC D9AC E89382 D9AC
+D9AD D9AD E89E9F D9AD
+D9AE D9AE E985A9 D9AE
+D9AF D9AF E98A98 D9AF
+D9B0 D9B0 E9B3B4 D9B0
+D9B1 D9B1 E8A282 D9B1
+D9B2 D9B2 E4BEAE D9B2
+D9B3 D9B3 E58692 D9B3
+D9B4 D9B4 E58B9F D9B4
+D9B5 D9B5 E5A786 D9B5
+D9B6 D9B6 E5B8BD D9B6
+D9B7 D9B7 E68595 D9B7
+D9B8 D9B8 E691B8 D9B8
+D9B9 D9B9 E691B9 D9B9
+D9BA D9BA E69AAE D9BA
+D9BB D9BB E69F90 D9BB
+D9BC D9BC E6A8A1 D9BC
+D9BD D9BD E6AF8D D9BD
+D9BE D9BE E6AF9B D9BE
+D9BF D9BF E7899F D9BF
+D9C0 D9C0 E789A1 D9C0
+D9C1 D9C1 E79181 D9C1
+D9C2 D9C2 E79CB8 D9C2
+D9C3 D9C3 E79F9B D9C3
+D9C4 D9C4 E88097 D9C4
+D9C5 D9C5 E88ABC D9C5
+D9C6 D9C6 E88C85 D9C6
+D9C7 D9C7 E8AC80 D9C7
+D9C8 D9C8 E8ACA8 D9C8
+D9C9 D9C9 E8B28C D9C9
+D9CA D9CA E69CA8 D9CA
+D9CB D9CB E6B290 D9CB
+D9CC D9CC E789A7 D9CC
+D9CD D9CD E79BAE D9CD
+D9CE D9CE E79DA6 D9CE
+D9CF D9CF E7A986 D9CF
+D9D0 D9D0 E9B6A9 D9D0
+D9D1 D9D1 E6ADBF D9D1
+D9D2 D9D2 E6B292 D9D2
+D9D3 D9D3 E5A4A2 D9D3
+D9D4 D9D4 E69CA6 D9D4
+D9D5 D9D5 E89299 D9D5
+D9D6 D9D6 E58DAF D9D6
+D9D7 D9D7 E5A293 D9D7
+D9D8 D9D8 E5A699 D9D8
+D9D9 D9D9 E5BB9F D9D9
+D9DA D9DA E68F8F D9DA
+D9DB D9DB E698B4 D9DB
+D9DC D9DC E69DB3 D9DC
+D9DD D9DD E6B8BA D9DD
+D9DE D9DE E78CAB D9DE
+D9DF D9DF E7AB97 D9DF
+D9E0 D9E0 E88B97 D9E0
+D9E1 D9E1 E98CA8 D9E1
+D9E2 D9E2 E58B99 D9E2
+D9E3 D9E3 E5B7AB D9E3
+D9E4 D9E4 E686AE D9E4
+D9E5 D9E5 E6878B D9E5
+D9E6 D9E6 E6888A D9E6
+D9E7 D9E7 E68B87 D9E7
+D9E8 D9E8 E692AB D9E8
+D9E9 D9E9 E697A0 D9E9
+D9EA D9EA E6A599 D9EA
+D9EB D9EB E6ADA6 D9EB
+D9EC D9EC E6AF8B D9EC
+D9ED D9ED E784A1 D9ED
+D9EE D9EE E78FB7 D9EE
+D9EF D9EF E7959D D9EF
+D9F0 D9F0 E7B986 D9F0
+D9F1 D9F1 E8889E D9F1
+D9F2 D9F2 E88C82 D9F2
+D9F3 D9F3 E895AA D9F3
+D9F4 D9F4 E8AAA3 D9F4
+D9F5 D9F5 E8B2BF D9F5
+D9F6 D9F6 E99CA7 D9F6
+D9F7 D9F7 E9B5A1 D9F7
+D9F8 D9F8 E5A2A8 D9F8
+D9F9 D9F9 E9BB98 D9F9
+D9FA D9FA E58091 D9FA
+D9FB D9FB E5888E D9FB
+D9FC D9FC E590BB D9FC
+D9FD D9FD E5958F D9FD
+D9FE D9FE E69687 D9FE
+DAA1 DAA1 E6B1B6 DAA1
+DAA2 DAA2 E7B48A DAA2
+DAA3 DAA3 E7B48B DAA3
+DAA4 DAA4 E8819E DAA4
+DAA5 DAA5 E89A8A DAA5
+DAA6 DAA6 E99680 DAA6
+DAA7 DAA7 E99BAF DAA7
+DAA8 DAA8 E58BBF DAA8
+DAA9 DAA9 E6B295 DAA9
+DAAA DAAA E789A9 DAAA
+DAAB DAAB E591B3 DAAB
+DAAC DAAC E5AA9A DAAC
+DAAD DAAD E5B0BE DAAD
+DAAE DAAE E5B58B DAAE
+DAAF DAAF E5BD8C DAAF
+DAB0 DAB0 E5BEAE DAB0
+DAB1 DAB1 E69CAA DAB1
+DAB2 DAB2 E6A2B6 DAB2
+DAB3 DAB3 E6A5A3 DAB3
+DAB4 DAB4 E6B8BC DAB4
+DAB5 DAB5 E6B984 DAB5
+DAB6 DAB6 E79C89 DAB6
+DAB7 DAB7 E7B1B3 DAB7
+DAB8 DAB8 E7BE8E DAB8
+DAB9 DAB9 E89687 DAB9
+DABA DABA E8AC8E DABA
+DABB DABB E8BFB7 DABB
+DABC DABC E99DA1 DABC
+DABD DABD E9BBB4 DABD
+DABE DABE E5B2B7 DABE
+DABF DABF E682B6 DABF
+DAC0 DAC0 E6848D DAC0
+DAC1 DAC1 E686AB DAC1
+DAC2 DAC2 E6958F DAC2
+DAC3 DAC3 E697BB DAC3
+DAC4 DAC4 E697BC DAC4
+DAC5 DAC5 E6B091 DAC5
+DAC6 DAC6 E6B3AF DAC6
+DAC7 DAC7 E78E9F DAC7
+DAC8 DAC8 E78F89 DAC8
+DAC9 DAC9 E7B7A1 DAC9
+DACA DACA E99694 DACA
+DACB DACB E5AF86 DACB
+DACC DACC E89C9C DACC
+DACD DACD E8AC90 DACD
+DACE DACE E5899D DACE
+DACF DACF E58D9A DACF
+DAD0 DAD0 E68B8D DAD0
+DAD1 DAD1 E6908F DAD1
+DAD2 DAD2 E692B2 DAD2
+DAD3 DAD3 E69CB4 DAD3
+DAD4 DAD4 E6A8B8 DAD4
+DAD5 DAD5 E6B38A DAD5
+DAD6 DAD6 E78F80 DAD6
+DAD7 DAD7 E7929E DAD7
+DAD8 DAD8 E7AE94 DAD8
+DAD9 DAD9 E7B295 DAD9
+DADA DADA E7B89B DADA
+DADB DADB E8868A DADB
+DADC DADC E888B6 DADC
+DADD DADD E89684 DADD
+DADE DADE E8BFAB DADE
+DADF DADF E99BB9 DADF
+DAE0 DAE0 E9A781 DAE0
+DAE1 DAE1 E4BCB4 DAE1
+DAE2 DAE2 E58D8A DAE2
+DAE3 DAE3 E58F8D DAE3
+DAE4 DAE4 E58F9B DAE4
+DAE5 DAE5 E68B8C DAE5
+DAE6 DAE6 E690AC DAE6
+DAE7 DAE7 E69480 DAE7
+DAE8 DAE8 E69691 DAE8
+DAE9 DAE9 E6A783 DAE9
+DAEA DAEA E6B3AE DAEA
+DAEB DAEB E6BD98 DAEB
+DAEC DAEC E78FAD DAEC
+DAED DAED E79594 DAED
+DAEE DAEE E798A2 DAEE
+DAEF DAEF E79BA4 DAEF
+DAF0 DAF0 E79BBC DAF0
+DAF1 DAF1 E7A390 DAF1
+DAF2 DAF2 E7A3BB DAF2
+DAF3 DAF3 E7A4AC DAF3
+DAF4 DAF4 E7B586 DAF4
+DAF5 DAF5 E888AC DAF5
+DAF6 DAF6 E89FA0 DAF6
+DAF7 DAF7 E8BF94 DAF7
+DAF8 DAF8 E9A092 DAF8
+DAF9 DAF9 E9A3AF DAF9
+DAFA DAFA E58B83 DAFA
+DAFB DAFB E68B94 DAFB
+DAFC DAFC E692A5 DAFC
+DAFD DAFD E6B8A4 DAFD
+DAFE DAFE E6BD91 DAFE
+DBA1 DBA1 E799BC DBA1
+DBA2 DBA2 E8B78B DBA2
+DBA3 DBA3 E986B1 DBA3
+DBA4 DBA4 E989A2 DBA4
+DBA5 DBA5 E9ABAE DBA5
+DBA6 DBA6 E9AD83 DBA6
+DBA7 DBA7 E580A3 DBA7
+DBA8 DBA8 E5828D DBA8
+DBA9 DBA9 E59D8A DBA9
+DBAA DBAA E5A6A8 DBAA
+DBAB DBAB E5B0A8 DBAB
+DBAC DBAC E5B987 DBAC
+DBAD DBAD E5BDB7 DBAD
+DBAE DBAE E688BF DBAE
+DBAF DBAF E694BE DBAF
+DBB0 DBB0 E696B9 DBB0
+DBB1 DBB1 E69781 DBB1
+DBB2 DBB2 E69889 DBB2
+DBB3 DBB3 E69E8B DBB3
+DBB4 DBB4 E6A69C DBB4
+DBB5 DBB5 E6BB82 DBB5
+DBB6 DBB6 E7A385 DBB6
+DBB7 DBB7 E7B4A1 DBB7
+DBB8 DBB8 E882AA DBB8
+DBB9 DBB9 E88680 DBB9
+DBBA DBBA E888AB DBBA
+DBBB DBBB E88AB3 DBBB
+DBBC DBBC E892A1 DBBC
+DBBD DBBD E89A8C DBBD
+DBBE DBBE E8A8AA DBBE
+DBBF DBBF E8AC97 DBBF
+DBC0 DBC0 E982A6 DBC0
+DBC1 DBC1 E998B2 DBC1
+DBC2 DBC2 E9BE90 DBC2
+DBC3 DBC3 E5808D DBC3
+DBC4 DBC4 E4BFB3 DBC4
+DBC5 DBC5 EFA5A3 DBC5
+DBC6 DBC6 E59FB9 DBC6
+DBC7 DBC7 E5BE98 DBC7
+DBC8 DBC8 E68B9C DBC8
+DBC9 DBC9 E68E92 DBC9
+DBCA DBCA E69DAF DBCA
+DBCB DBCB E6B983 DBCB
+DBCC DBCC E78499 DBCC
+DBCD DBCD E79B83 DBCD
+DBCE DBCE E8838C DBCE
+DBCF DBCF E8839A DBCF
+DBD0 DBD0 E8A3B4 DBD0
+DBD1 DBD1 E8A3B5 DBD1
+DBD2 DBD2 E8A499 DBD2
+DBD3 DBD3 E8B3A0 DBD3
+DBD4 DBD4 E8BCA9 DBD4
+DBD5 DBD5 E9858D DBD5
+DBD6 DBD6 E999AA DBD6
+DBD7 DBD7 E4BCAF DBD7
+DBD8 DBD8 E4BDB0 DBD8
+DBD9 DBD9 E5B89B DBD9
+DBDA DBDA E69F8F DBDA
+DBDB DBDB E6A0A2 DBDB
+DBDC DBDC E799BD DBDC
+DBDD DBDD E799BE DBDD
+DBDE DBDE E9AD84 DBDE
+DBDF DBDF E5B9A1 DBDF
+DBE0 DBE0 E6A88A DBE0
+DBE1 DBE1 E785A9 DBE1
+DBE2 DBE2 E78794 DBE2
+DBE3 DBE3 E795AA DBE3
+DBE4 DBE4 EFA5A4 DBE4
+DBE5 DBE5 E7B981 DBE5
+DBE6 DBE6 E89583 DBE6
+DBE7 DBE7 E897A9 DBE7
+DBE8 DBE8 E9A39C DBE8
+DBE9 DBE9 E4BC90 DBE9
+DBEA DBEA E7AD8F DBEA
+DBEB DBEB E7BDB0 DBEB
+DBEC DBEC E996A5 DBEC
+DBED DBED E587A1 DBED
+DBEE DBEE E5B886 DBEE
+DBEF DBEF E6A2B5 DBEF
+DBF0 DBF0 E6B0BE DBF0
+DBF1 DBF1 E6B18E DBF1
+DBF2 DBF2 E6B39B DBF2
+DBF3 DBF3 E78AAF DBF3
+DBF4 DBF4 E7AF84 DBF4
+DBF5 DBF5 E88C83 DBF5
+DBF6 DBF6 E6B395 DBF6
+DBF7 DBF7 E790BA DBF7
+DBF8 DBF8 E583BB DBF8
+DBF9 DBF9 E58A88 DBF9
+DBFA DBFA E5A381 DBFA
+DBFB DBFB E69398 DBFB
+DBFC DBFC E6AA97 DBFC
+DBFD DBFD E792A7 DBFD
+DBFE DBFE E79996 DBFE
+DCA1 DCA1 E7A2A7 DCA1
+DCA2 DCA2 E89897 DCA2
+DCA3 DCA3 E997A2 DCA3
+DCA4 DCA4 E99CB9 DCA4
+DCA5 DCA5 EFA5A5 DCA5
+DCA6 DCA6 E58D9E DCA6
+DCA7 DCA7 E5BC81 DCA7
+DCA8 DCA8 E8AE8A DCA8
+DCA9 DCA9 E8BEA8 DCA9
+DCAA DCAA E8BEAF DCAA
+DCAB DCAB E9828A DCAB
+DCAC DCAC E588A5 DCAC
+DCAD DCAD E79EA5 DCAD
+DCAE DCAE E9B189 DCAE
+DCAF DCAF E9BC88 DCAF
+DCB0 DCB0 E4B899 DCB0
+DCB1 DCB1 E58082 DCB1
+DCB2 DCB2 E585B5 DCB2
+DCB3 DCB3 E5B19B DCB3
+DCB4 DCB4 E5B9B7 DCB4
+DCB5 DCB5 E6989E DCB5
+DCB6 DCB6 E698BA DCB6
+DCB7 DCB7 E69F84 DCB7
+DCB8 DCB8 E6A385 DCB8
+DCB9 DCB9 E782B3 DCB9
+DCBA DCBA E79481 DCBA
+DCBB DCBB E79785 DCBB
+DCBC DCBC E7A789 DCBC
+DCBD DCBD E7AB9D DCBD
+DCBE DCBE E8BCA7 DCBE
+DCBF DCBF E9A4A0 DCBF
+DCC0 DCC0 E9A888 DCC0
+DCC1 DCC1 E4BF9D DCC1
+DCC2 DCC2 E5A0A1 DCC2
+DCC3 DCC3 E5A0B1 DCC3
+DCC4 DCC4 E5AFB6 DCC4
+DCC5 DCC5 E699AE DCC5
+DCC6 DCC6 E6ADA5 DCC6
+DCC7 DCC7 E6B491 DCC7
+DCC8 DCC8 E6B9BA DCC8
+DCC9 DCC9 E6BDBD DCC9
+DCCA DCCA E78FA4 DCCA
+DCCB DCCB E794AB DCCB
+DCCC DCCC E88FA9 DCCC
+DCCD DCCD E8A39C DCCD
+DCCE DCCE E8A493 DCCE
+DCCF DCCF E8AD9C DCCF
+DCD0 DCD0 E8BC94 DCD0
+DCD1 DCD1 E4BC8F DCD1
+DCD2 DCD2 E58395 DCD2
+DCD3 DCD3 E58C90 DCD3
+DCD4 DCD4 E58D9C DCD4
+DCD5 DCD5 E5AE93 DCD5
+DCD6 DCD6 E5BEA9 DCD6
+DCD7 DCD7 E69C8D DCD7
+DCD8 DCD8 E7A68F DCD8
+DCD9 DCD9 E885B9 DCD9
+DCDA DCDA E88CAF DCDA
+DCDB DCDB E89494 DCDB
+DCDC DCDC E8A487 DCDC
+DCDD DCDD E8A686 DCDD
+DCDE DCDE E8BCB9 DCDE
+DCDF DCDF E8BCBB DCDF
+DCE0 DCE0 E9A6A5 DCE0
+DCE1 DCE1 E9B092 DCE1
+DCE2 DCE2 E69CAC DCE2
+DCE3 DCE3 E4B9B6 DCE3
+DCE4 DCE4 E4BFB8 DCE4
+DCE5 DCE5 E5A589 DCE5
+DCE6 DCE6 E5B081 DCE6
+DCE7 DCE7 E5B3AF DCE7
+DCE8 DCE8 E5B3B0 DCE8
+DCE9 DCE9 E68DA7 DCE9
+DCEA DCEA E6A392 DCEA
+DCEB DCEB E783BD DCEB
+DCEC DCEC E786A2 DCEC
+DCED DCED E790AB DCED
+DCEE DCEE E7B8AB DCEE
+DCEF DCEF E893AC DCEF
+DCF0 DCF0 E89C82 DCF0
+DCF1 DCF1 E980A2 DCF1
+DCF2 DCF2 E98B92 DCF2
+DCF3 DCF3 E9B3B3 DCF3
+DCF4 DCF4 E4B88D DCF4
+DCF5 DCF5 E4BB98 DCF5
+DCF6 DCF6 E4BFAF DCF6
+DCF7 DCF7 E58285 DCF7
+DCF8 DCF8 E58996 DCF8
+DCF9 DCF9 E589AF DCF9
+DCFA DCFA E590A6 DCFA
+DCFB DCFB E59290 DCFB
+DCFC DCFC E59FA0 DCFC
+DCFD DCFD E5A4AB DCFD
+DCFE DCFE E5A9A6 DCFE
+DDA1 DDA1 E5AD9A DDA1
+DDA2 DDA2 E5ADB5 DDA2
+DDA3 DDA3 E5AF8C DDA3
+DDA4 DDA4 E5BA9C DDA4
+DDA5 DDA5 EFA5A6 DDA5
+DDA6 DDA6 E689B6 DDA6
+DDA7 DDA7 E695B7 DDA7
+DDA8 DDA8 E696A7 DDA8
+DDA9 DDA9 E6B5AE DDA9
+DDAA DDAA E6BAA5 DDAA
+DDAB DDAB E788B6 DDAB
+DDAC DDAC E7ACA6 DDAC
+DDAD DDAD E7B0BF DDAD
+DDAE DDAE E7BCB6 DDAE
+DDAF DDAF E88590 DDAF
+DDB0 DDB0 E88591 DDB0
+DDB1 DDB1 E8869A DDB1
+DDB2 DDB2 E88980 DDB2
+DDB3 DDB3 E88A99 DDB3
+DDB4 DDB4 E88EA9 DDB4
+DDB5 DDB5 E8A883 DDB5
+DDB6 DDB6 E8B2A0 DDB6
+DDB7 DDB7 E8B3A6 DDB7
+DDB8 DDB8 E8B3BB DDB8
+DDB9 DDB9 E8B5B4 DDB9
+DDBA DDBA E8B6BA DDBA
+DDBB DDBB E983A8 DDBB
+DDBC DDBC E9879C DDBC
+DDBD DDBD E9989C DDBD
+DDBE DDBE E99984 DDBE
+DDBF DDBF E9A799 DDBF
+DDC0 DDC0 E9B3A7 DDC0
+DDC1 DDC1 E58C97 DDC1
+DDC2 DDC2 E58886 DDC2
+DDC3 DDC3 E590A9 DDC3
+DDC4 DDC4 E599B4 DDC4
+DDC5 DDC5 E5A2B3 DDC5
+DDC6 DDC6 E5A594 DDC6
+DDC7 DDC7 E5A5AE DDC7
+DDC8 DDC8 E5BFBF DDC8
+DDC9 DDC9 E686A4 DDC9
+DDCA DDCA E689AE DDCA
+DDCB DDCB E69890 DDCB
+DDCC DDCC E6B1BE DDCC
+DDCD DDCD E7849A DDCD
+DDCE DDCE E79B86 DDCE
+DDCF DDCF E7B289 DDCF
+DDD0 DDD0 E7B39E DDD0
+DDD1 DDD1 E7B49B DDD1
+DDD2 DDD2 E88AAC DDD2
+DDD3 DDD3 E8B381 DDD3
+DDD4 DDD4 E99BB0 DDD4
+DDD5 DDD5 EFA5A7 DDD5
+DDD6 DDD6 E4BD9B DDD6
+DDD7 DDD7 E5BC97 DDD7
+DDD8 DDD8 E5BDBF DDD8
+DDD9 DDD9 E68B82 DDD9
+DDDA DDDA E5B4A9 DDDA
+DDDB DDDB E69C8B DDDB
+DDDC DDDC E6A39A DDDC
+DDDD DDDD E7A1BC DDDD
+DDDE DDDE E7B983 DDDE
+DDDF DDDF E9B5AC DDDF
+DDE0 DDE0 E4B895 DDE0
+DDE1 DDE1 E58299 DDE1
+DDE2 DDE2 E58C95 DDE2
+DDE3 DDE3 E58CAA DDE3
+DDE4 DDE4 E58D91 DDE4
+DDE5 DDE5 E5A683 DDE5
+DDE6 DDE6 E5A9A2 DDE6
+DDE7 DDE7 E5BA87 DDE7
+DDE8 DDE8 E682B2 DDE8
+DDE9 DDE9 E6868A DDE9
+DDEA DDEA E68989 DDEA
+DDEB DDEB E689B9 DDEB
+DDEC DDEC E69690 DDEC
+DDED DDED E69E87 DDED
+DDEE DDEE E6A6A7 DDEE
+DDEF DDEF E6AF94 DDEF
+DDF0 DDF0 E6AF96 DDF0
+DDF1 DDF1 E6AF97 DDF1
+DDF2 DDF2 E6AF98 DDF2
+DDF3 DDF3 E6B2B8 DDF3
+DDF4 DDF4 EFA5A8 DDF4
+DDF5 DDF5 E790B5 DDF5
+DDF6 DDF6 E797BA DDF6
+DDF7 DDF7 E7A092 DDF7
+DDF8 DDF8 E7A291 DDF8
+DDF9 DDF9 E7A795 DDF9
+DDFA DDFA E7A798 DDFA
+DDFB DDFB E7B283 DDFB
+DDFC DDFC E7B78B DDFC
+DDFD DDFD E7BFA1 DDFD
+DDFE DDFE E882A5 DDFE
+DEA1 DEA1 E884BE DEA1
+DEA2 DEA2 E88782 DEA2
+DEA3 DEA3 E88FB2 DEA3
+DEA4 DEA4 E89C9A DEA4
+DEA5 DEA5 E8A3A8 DEA5
+DEA6 DEA6 E8AAB9 DEA6
+DEA7 DEA7 E8ADAC DEA7
+DEA8 DEA8 E8B2BB DEA8
+DEA9 DEA9 E98499 DEA9
+DEAA DEAA E99D9E DEAA
+DEAB DEAB E9A39B DEAB
+DEAC DEAC E9BCBB DEAC
+DEAD DEAD E59AAC DEAD
+DEAE DEAE E5ACAA DEAE
+DEAF DEAF E5BDAC DEAF
+DEB0 DEB0 E6968C DEB0
+DEB1 DEB1 E6AAB3 DEB1
+DEB2 DEB2 E6AEAF DEB2
+DEB3 DEB3 E6B59C DEB3
+DEB4 DEB4 E6BFB1 DEB4
+DEB5 DEB5 E78095 DEB5
+DEB6 DEB6 E7899D DEB6
+DEB7 DEB7 E78EAD DEB7
+DEB8 DEB8 E8B2A7 DEB8
+DEB9 DEB9 E8B393 DEB9
+DEBA DEBA E9A0BB DEBA
+DEBB DEBB E68691 DEBB
+DEBC DEBC E6B0B7 DEBC
+DEBD DEBD E88198 DEBD
+DEBE DEBE E9A881 DEBE
+DEBF DEBF E4B98D DEBF
+DEC0 DEC0 E4BA8B DEC0
+DEC1 DEC1 E4BA9B DEC1
+DEC2 DEC2 E4BB95 DEC2
+DEC3 DEC3 E4BCBA DEC3
+DEC4 DEC4 E4BCBC DEC4
+DEC5 DEC5 E4BDBF DEC5
+DEC6 DEC6 E4BF9F DEC6
+DEC7 DEC7 E583BF DEC7
+DEC8 DEC8 E58FB2 DEC8
+DEC9 DEC9 E58FB8 DEC9
+DECA DECA E59486 DECA
+DECB DECB E597A3 DECB
+DECC DECC E59B9B DECC
+DECD DECD E5A3AB DECD
+DECE DECE E5A5A2 DECE
+DECF DECF E5A891 DECF
+DED0 DED0 E5AFAB DED0
+DED1 DED1 E5AFBA DED1
+DED2 DED2 E5B084 DED2
+DED3 DED3 E5B7B3 DED3
+DED4 DED4 E5B8AB DED4
+DED5 DED5 E5BE99 DED5
+DED6 DED6 E6809D DED6
+DED7 DED7 E68DA8 DED7
+DED8 DED8 E6969C DED8
+DED9 DED9 E696AF DED9
+DEDA DEDA E69FB6 DEDA
+DEDB DEDB E69FBB DEDB
+DEDC DEDC E6A2AD DEDC
+DEDD DEDD E6ADBB DEDD
+DEDE DEDE E6B299 DEDE
+DEDF DEDF E6B397 DEDF
+DEE0 DEE0 E6B8A3 DEE0
+DEE1 DEE1 E78089 DEE1
+DEE2 DEE2 E78D85 DEE2
+DEE3 DEE3 E7A082 DEE3
+DEE4 DEE4 E7A4BE DEE4
+DEE5 DEE5 E7A580 DEE5
+DEE6 DEE6 E7A5A0 DEE6
+DEE7 DEE7 E7A781 DEE7
+DEE8 DEE8 E7AFA9 DEE8
+DEE9 DEE9 E7B497 DEE9
+DEEA DEEA E7B5B2 DEEA
+DEEB DEEB E88286 DEEB
+DEEC DEEC E8888D DEEC
+DEED DEED E88E8E DEED
+DEEE DEEE E89391 DEEE
+DEEF DEEF E89B87 DEEF
+DEF0 DEF0 E8A39F DEF0
+DEF1 DEF1 E8A990 DEF1
+DEF2 DEF2 E8A99E DEF2
+DEF3 DEF3 E8AC9D DEF3
+DEF4 DEF4 E8B39C DEF4
+DEF5 DEF5 E8B5A6 DEF5
+DEF6 DEF6 E8BEAD DEF6
+DEF7 DEF7 E982AA DEF7
+DEF8 DEF8 E9A3BC DEF8
+DEF9 DEF9 E9A79F DEF9
+DEFA DEFA E9BA9D DEFA
+DEFB DEFB E5898A DEFB
+DEFC DEFC EFA5A9 DEFC
+DEFD DEFD E69C94 DEFD
+DEFE DEFE EFA5AA DEFE
+DFA1 DFA1 E58298 DFA1
+DFA2 DFA2 E588AA DFA2
+DFA3 DFA3 E5B1B1 DFA3
+DFA4 DFA4 E695A3 DFA4
+DFA5 DFA5 E6B195 DFA5
+DFA6 DFA6 E78F8A DFA6
+DFA7 DFA7 E794A3 DFA7
+DFA8 DFA8 E7969D DFA8
+DFA9 DFA9 E7AE97 DFA9
+DFAA DFAA E8929C DFAA
+DFAB DFAB E985B8 DFAB
+DFAC DFAC E99CB0 DFAC
+DFAD DFAD E4B9B7 DFAD
+DFAE DFAE E69292 DFAE
+DFAF DFAF E6AEBA DFAF
+DFB0 DFB0 E7859E DFB0
+DFB1 DFB1 E896A9 DFB1
+DFB2 DFB2 E4B889 DFB2
+DFB3 DFB3 EFA5AB DFB3
+DFB4 DFB4 E69D89 DFB4
+DFB5 DFB5 E6A3AE DFB5
+DFB6 DFB6 E6B897 DFB6
+DFB7 DFB7 E88A9F DFB7
+DFB8 DFB8 E89498 DFB8
+DFB9 DFB9 E8A1AB DFB9
+DFBA DFBA E68FB7 DFBA
+DFBB DFBB E6BE81 DFBB
+DFBC DFBC E98892 DFBC
+DFBD DFBD E9A2AF DFBD
+DFBE DFBE E4B88A DFBE
+DFBF DFBF E582B7 DFBF
+DFC0 DFC0 E5838F DFC0
+DFC1 DFC1 E5849F DFC1
+DFC2 DFC2 E59586 DFC2
+DFC3 DFC3 E596AA DFC3
+DFC4 DFC4 E59897 DFC4
+DFC5 DFC5 E5AD80 DFC5
+DFC6 DFC6 E5B099 DFC6
+DFC7 DFC7 E5B3A0 DFC7
+DFC8 DFC8 E5B8B8 DFC8
+DFC9 DFC9 E5BA8A DFC9
+DFCA DFCA E5BAA0 DFCA
+DFCB DFCB E5BB82 DFCB
+DFCC DFCC E683B3 DFCC
+DFCD DFCD E6A191 DFCD
+DFCE DFCE E6A9A1 DFCE
+DFCF DFCF E6B998 DFCF
+DFD0 DFD0 E788BD DFD0
+DFD1 DFD1 E78980 DFD1
+DFD2 DFD2 E78B80 DFD2
+DFD3 DFD3 E79BB8 DFD3
+DFD4 DFD4 E7A5A5 DFD4
+DFD5 DFD5 E7AEB1 DFD5
+DFD6 DFD6 E7BF94 DFD6
+DFD7 DFD7 E8A3B3 DFD7
+DFD8 DFD8 E8A7B4 DFD8
+DFD9 DFD9 E8A9B3 DFD9
+DFDA DFDA E8B1A1 DFDA
+DFDB DFDB E8B39E DFDB
+DFDC DFDC E99C9C DFDC
+DFDD DFDD E5A19E DFDD
+DFDE DFDE E792BD DFDE
+DFDF DFDF E8B3BD DFDF
+DFE0 DFE0 E59787 DFE0
+DFE1 DFE1 EFA5AC DFE1
+DFE2 DFE2 E7A9A1 DFE2
+DFE3 DFE3 E7B4A2 DFE3
+DFE4 DFE4 E889B2 DFE4
+DFE5 DFE5 E789B2 DFE5
+DFE6 DFE6 E7949F DFE6
+DFE7 DFE7 E794A5 DFE7
+DFE8 DFE8 EFA5AD DFE8
+DFE9 DFE9 E7AC99 DFE9
+DFEA DFEA E5A285 DFEA
+DFEB DFEB E5A3BB DFEB
+DFEC DFEC E5B6BC DFEC
+DFED DFED E5BA8F DFED
+DFEE DFEE E5BAB6 DFEE
+DFEF DFEF E5BE90 DFEF
+DFF0 DFF0 E68195 DFF0
+DFF1 DFF1 E68A92 DFF1
+DFF2 DFF2 E68DBF DFF2
+DFF3 DFF3 E6958D DFF3
+DFF4 DFF4 E69A91 DFF4
+DFF5 DFF5 E69B99 DFF5
+DFF6 DFF6 E69BB8 DFF6
+DFF7 DFF7 E6A096 DFF7
+DFF8 DFF8 E6A3B2 DFF8
+DFF9 DFF9 E78A80 DFF9
+DFFA DFFA E7919E DFFA
+DFFB DFFB E7ADAE DFFB
+DFFC DFFC E7B5AE DFFC
+DFFD DFFD E7B796 DFFD
+DFFE DFFE E7BDB2 DFFE
+E0A1 E0A1 E883A5 E0A1
+E0A2 E0A2 E88892 E0A2
+E0A3 E0A3 E896AF E0A3
+E0A4 E0A4 E8A5BF E0A4
+E0A5 E0A5 E8AA93 E0A5
+E0A6 E0A6 E9809D E0A6
+E0A7 E0A7 E98BA4 E0A7
+E0A8 E0A8 E9BB8D E0A8
+E0A9 E0A9 E9BCA0 E0A9
+E0AA E0AA E5A495 E0AA
+E0AB E0AB E5A5AD E0AB
+E0AC E0AC E5B8AD E0AC
+E0AD E0AD E6839C E0AD
+E0AE E0AE E69894 E0AE
+E0AF E0AF E699B3 E0AF
+E0B0 E0B0 E69E90 E0B0
+E0B1 E0B1 E6B190 E0B1
+E0B2 E0B2 E6B785 E0B2
+E0B3 E0B3 E6BD9F E0B3
+E0B4 E0B4 E79FB3 E0B4
+E0B5 E0B5 E7A2A9 E0B5
+E0B6 E0B6 E89386 E0B6
+E0B7 E0B7 E9878B E0B7
+E0B8 E0B8 E98CAB E0B8
+E0B9 E0B9 E4BB99 E0B9
+E0BA E0BA E5838A E0BA
+E0BB E0BB E58588 E0BB
+E0BC E0BC E59684 E0BC
+E0BD E0BD E5AC8B E0BD
+E0BE E0BE E5AEA3 E0BE
+E0BF E0BF E68987 E0BF
+E0C0 E0C0 E695BE E0C0
+E0C1 E0C1 E6978B E0C1
+E0C2 E0C2 E6B8B2 E0C2
+E0C3 E0C3 E785BD E0C3
+E0C4 E0C4 E79081 E0C4
+E0C5 E0C5 E79184 E0C5
+E0C6 E0C6 E79287 E0C6
+E0C7 E0C7 E792BF E0C7
+E0C8 E0C8 E799AC E0C8
+E0C9 E0C9 E7A6AA E0C9
+E0CA E0CA E7B79A E0CA
+E0CB E0CB E7B995 E0CB
+E0CC E0CC E7BEA8 E0CC
+E0CD E0CD E885BA E0CD
+E0CE E0CE E886B3 E0CE
+E0CF E0CF E888B9 E0CF
+E0D0 E0D0 E8989A E0D0
+E0D1 E0D1 E89FAC E0D1
+E0D2 E0D2 E8A9B5 E0D2
+E0D3 E0D3 E8B7A3 E0D3
+E0D4 E0D4 E981B8 E0D4
+E0D5 E0D5 E98A91 E0D5
+E0D6 E0D6 E990A5 E0D6
+E0D7 E0D7 E9A58D E0D7
+E0D8 E0D8 E9AEAE E0D8
+E0D9 E0D9 E58DA8 E0D9
+E0DA E0DA E5B191 E0DA
+E0DB E0DB E6A594 E0DB
+E0DC E0DC E6B384 E0DC
+E0DD E0DD E6B4A9 E0DD
+E0DE E0DE E6B8AB E0DE
+E0DF E0DF E8888C E0DF
+E0E0 E0E0 E8969B E0E0
+E0E1 E0E1 E8A4BB E0E1
+E0E2 E0E2 E8A8AD E0E2
+E0E3 E0E3 E8AAAA E0E3
+E0E4 E0E4 E99BAA E0E4
+E0E5 E0E5 E9BDA7 E0E5
+E0E6 E0E6 E589A1 E0E6
+E0E7 E0E7 E69AB9 E0E7
+E0E8 E0E8 E6AEB2 E0E8
+E0E9 E0E9 E7BA96 E0E9
+E0EA E0EA E89FBE E0EA
+E0EB E0EB E8B48D E0EB
+E0EC E0EC E99683 E0EC
+E0ED E0ED E9999D E0ED
+E0EE E0EE E6949D E0EE
+E0EF E0EF E6B689 E0EF
+E0F0 E0F0 E787AE E0F0
+E0F1 E0F1 EFA5AE E0F1
+E0F2 E0F2 E59F8E E0F2
+E0F3 E0F3 E5A793 E0F3
+E0F4 E0F4 E5AEAC E0F4
+E0F5 E0F5 E680A7 E0F5
+E0F6 E0F6 E683BA E0F6
+E0F7 E0F7 E68890 E0F7
+E0F8 E0F8 E6989F E0F8
+E0F9 E0F9 E6999F E0F9
+E0FA E0FA E78CA9 E0FA
+E0FB E0FB E78FB9 E0FB
+E0FC E0FC E79B9B E0FC
+E0FD E0FD E79C81 E0FD
+E0FE E0FE E7ADAC E0FE
+E1A1 E1A1 E88196 E1A1
+E1A2 E1A2 E881B2 E1A2
+E1A3 E1A3 E885A5 E1A3
+E1A4 E1A4 E8AAA0 E1A4
+E1A5 E1A5 E98692 E1A5
+E1A6 E1A6 E4B896 E1A6
+E1A7 E1A7 E58BA2 E1A7
+E1A8 E1A8 E6ADB2 E1A8
+E1A9 E1A9 E6B497 E1A9
+E1AA E1AA E7A885 E1AA
+E1AB E1AB E7ACB9 E1AB
+E1AC E1AC E7B4B0 E1AC
+E1AD E1AD EFA5AF E1AD
+E1AE E1AE E8B2B0 E1AE
+E1AF E1AF E58FAC E1AF
+E1B0 E1B0 E598AF E1B0
+E1B1 E1B1 E5A191 E1B1
+E1B2 E1B2 E5AEB5 E1B2
+E1B3 E1B3 E5B08F E1B3
+E1B4 E1B4 E5B091 E1B4
+E1B5 E1B5 E5B7A2 E1B5
+E1B6 E1B6 E68980 E1B6
+E1B7 E1B7 E68E83 E1B7
+E1B8 E1B8 E69094 E1B8
+E1B9 E1B9 E698AD E1B9
+E1BA E1BA E6A2B3 E1BA
+E1BB E1BB E6B2BC E1BB
+E1BC E1BC E6B688 E1BC
+E1BD E1BD E6BAAF E1BD
+E1BE E1BE E7809F E1BE
+E1BF E1BF E782A4 E1BF
+E1C0 E1C0 E78792 E1C0
+E1C1 E1C1 E794A6 E1C1
+E1C2 E1C2 E7968F E1C2
+E1C3 E1C3 E7968E E1C3
+E1C4 E1C4 E79899 E1C4
+E1C5 E1C5 E7AC91 E1C5
+E1C6 E1C6 E7AFA0 E1C6
+E1C7 E1C7 E7B0AB E1C7
+E1C8 E1C8 E7B4A0 E1C8
+E1C9 E1C9 E7B4B9 E1C9
+E1CA E1CA E894AC E1CA
+E1CB E1CB E895AD E1CB
+E1CC E1CC E89887 E1CC
+E1CD E1CD E8A8B4 E1CD
+E1CE E1CE E9808D E1CE
+E1CF E1CF E981A1 E1CF
+E1D0 E1D0 E982B5 E1D0
+E1D1 E1D1 E98AB7 E1D1
+E1D2 E1D2 E99FB6 E1D2
+E1D3 E1D3 E9A8B7 E1D3
+E1D4 E1D4 E4BF97 E1D4
+E1D5 E1D5 E5B1AC E1D5
+E1D6 E1D6 E69D9F E1D6
+E1D7 E1D7 E6B691 E1D7
+E1D8 E1D8 E7B29F E1D8
+E1D9 E1D9 E7BA8C E1D9
+E1DA E1DA E8AC96 E1DA
+E1DB E1DB E8B496 E1DB
+E1DC E1DC E9809F E1DC
+E1DD E1DD E5ADAB E1DD
+E1DE E1DE E5B7BD E1DE
+E1DF E1DF E6908D E1DF
+E1E0 E1E0 E89380 E1E0
+E1E1 E1E1 E9819C E1E1
+E1E2 E1E2 E9A3A1 E1E2
+E1E3 E1E3 E78E87 E1E3
+E1E4 E1E4 E5AE8B E1E4
+E1E5 E1E5 E6829A E1E5
+E1E6 E1E6 E69DBE E1E6
+E1E7 E1E7 E6B79E E1E7
+E1E8 E1E8 E8A89F E1E8
+E1E9 E1E9 E8AAA6 E1E9
+E1EA E1EA E98081 E1EA
+E1EB E1EB E9A08C E1EB
+E1EC E1EC E588B7 E1EC
+E1ED E1ED EFA5B0 E1ED
+E1EE E1EE E78191 E1EE
+E1EF E1EF E7A28E E1EF
+E1F0 E1F0 E98E96 E1F0
+E1F1 E1F1 E8A1B0 E1F1
+E1F2 E1F2 E98797 E1F2
+E1F3 E1F3 E4BFAE E1F3
+E1F4 E1F4 E58F97 E1F4
+E1F5 E1F5 E597BD E1F5
+E1F6 E1F6 E59B9A E1F6
+E1F7 E1F7 E59E82 E1F7
+E1F8 E1F8 E5A3BD E1F8
+E1F9 E1F9 E5AB82 E1F9
+E1FA E1FA E5AE88 E1FA
+E1FB E1FB E5B2AB E1FB
+E1FC E1FC E5B380 E1FC
+E1FD E1FD E5B8A5 E1FD
+E1FE E1FE E68481 E1FE
+E2A1 E2A1 E6888D E2A1
+E2A2 E2A2 E6898B E2A2
+E2A3 E2A3 E68E88 E2A3
+E2A4 E2A4 E6909C E2A4
+E2A5 E2A5 E694B6 E2A5
+E2A6 E2A6 E695B8 E2A6
+E2A7 E2A7 E6A8B9 E2A7
+E2A8 E2A8 E6AE8A E2A8
+E2A9 E2A9 E6B0B4 E2A9
+E2AA E2AA E6B499 E2AA
+E2AB E2AB E6BCB1 E2AB
+E2AC E2AC E787A7 E2AC
+E2AD E2AD E78BA9 E2AD
+E2AE E2AE E78DB8 E2AE
+E2AF E2AF E79087 E2AF
+E2B0 E2B0 E792B2 E2B0
+E2B1 E2B1 E798A6 E2B1
+E2B2 E2B2 E79DA1 E2B2
+E2B3 E2B3 E7A780 E2B3
+E2B4 E2B4 E7A997 E2B4
+E2B5 E2B5 E7ABAA E2B5
+E2B6 E2B6 E7B2B9 E2B6
+E2B7 E2B7 E7B68F E2B7
+E2B8 E2B8 E7B6AC E2B8
+E2B9 E2B9 E7B9A1 E2B9
+E2BA E2BA E7BE9E E2BA
+E2BB E2BB E884A9 E2BB
+E2BC E2BC E88CB1 E2BC
+E2BD E2BD E89290 E2BD
+E2BE E2BE E8939A E2BE
+E2BF E2BF E897AA E2BF
+E2C0 E2C0 E8A296 E2C0
+E2C1 E2C1 E8AAB0 E2C1
+E2C2 E2C2 E8AE90 E2C2
+E2C3 E2C3 E8BCB8 E2C3
+E2C4 E2C4 E98182 E2C4
+E2C5 E2C5 E98283 E2C5
+E2C6 E2C6 E985AC E2C6
+E2C7 E2C7 E98A96 E2C7
+E2C8 E2C8 E98AB9 E2C8
+E2C9 E2C9 E99A8B E2C9
+E2CA E2CA E99AA7 E2CA
+E2CB E2CB E99AA8 E2CB
+E2CC E2CC E99B96 E2CC
+E2CD E2CD E99C80 E2CD
+E2CE E2CE E9A088 E2CE
+E2CF E2CF E9A696 E2CF
+E2D0 E2D0 E9AB93 E2D0
+E2D1 E2D1 E9AC9A E2D1
+E2D2 E2D2 E58F94 E2D2
+E2D3 E2D3 E5A1BE E2D3
+E2D4 E2D4 E5A499 E2D4
+E2D5 E2D5 E5ADB0 E2D5
+E2D6 E2D6 E5AEBF E2D6
+E2D7 E2D7 E6B791 E2D7
+E2D8 E2D8 E6BD9A E2D8
+E2D9 E2D9 E7869F E2D9
+E2DA E2DA E790A1 E2DA
+E2DB E2DB E792B9 E2DB
+E2DC E2DC E88285 E2DC
+E2DD E2DD E88FBD E2DD
+E2DE E2DE E5B7A1 E2DE
+E2DF E2DF E5BE87 E2DF
+E2E0 E2E0 E5BEAA E2E0
+E2E1 E2E1 E68182 E2E1
+E2E2 E2E2 E697AC E2E2
+E2E3 E2E3 E6A092 E2E3
+E2E4 E2E4 E6A5AF E2E4
+E2E5 E2E5 E6A993 E2E5
+E2E6 E2E6 E6AE89 E2E6
+E2E7 E2E7 E6B4B5 E2E7
+E2E8 E2E8 E6B7B3 E2E8
+E2E9 E2E9 E78FA3 E2E9
+E2EA E2EA E79BBE E2EA
+E2EB E2EB E79EAC E2EB
+E2EC E2EC E7AD8D E2EC
+E2ED E2ED E7B494 E2ED
+E2EE E2EE E884A3 E2EE
+E2EF E2EF E8889C E2EF
+E2F0 E2F0 E88D80 E2F0
+E2F1 E2F1 E893B4 E2F1
+E2F2 E2F2 E895A3 E2F2
+E2F3 E2F3 E8A9A2 E2F3
+E2F4 E2F4 E8AB84 E2F4
+E2F5 E2F5 E98687 E2F5
+E2F6 E2F6 E98C9E E2F6
+E2F7 E2F7 E9A086 E2F7
+E2F8 E2F8 E9A6B4 E2F8
+E2F9 E2F9 E6888C E2F9
+E2FA E2FA E8A193 E2FA
+E2FB E2FB E8BFB0 E2FB
+E2FC E2FC E989A5 E2FC
+E2FD E2FD E5B487 E2FD
+E2FE E2FE E5B4A7 E2FE
+E3A1 E3A1 E5B5A9 E3A1
+E3A2 E3A2 E7919F E3A2
+E3A3 E3A3 E8869D E3A3
+E3A4 E3A4 E89DA8 E3A4
+E3A5 E3A5 E6BF95 E3A5
+E3A6 E3A6 E68BBE E3A6
+E3A7 E3A7 E7BF92 E3A7
+E3A8 E3A8 E8A4B6 E3A8
+E3A9 E3A9 E8A5B2 E3A9
+E3AA E3AA E4B89E E3AA
+E3AB E3AB E4B998 E3AB
+E3AC E3AC E583A7 E3AC
+E3AD E3AD E58B9D E3AD
+E3AE E3AE E58D87 E3AE
+E3AF E3AF E689BF E3AF
+E3B0 E3B0 E69887 E3B0
+E3B1 E3B1 E7B9A9 E3B1
+E3B2 E3B2 E8A085 E3B2
+E3B3 E3B3 E9999E E3B3
+E3B4 E3B4 E4BE8D E3B4
+E3B5 E3B5 E58C99 E3B5
+E3B6 E3B6 E598B6 E3B6
+E3B7 E3B7 E5A78B E3B7
+E3B8 E3B8 E5AAA4 E3B8
+E3B9 E3B9 E5B0B8 E3B9
+E3BA E3BA E5B18E E3BA
+E3BB E3BB E5B18D E3BB
+E3BC E3BC E5B882 E3BC
+E3BD E3BD E5BC91 E3BD
+E3BE E3BE E68183 E3BE
+E3BF E3BF E696BD E3BF
+E3C0 E3C0 E698AF E3C0
+E3C1 E3C1 E69982 E3C1
+E3C2 E3C2 E69EBE E3C2
+E3C3 E3C3 E69FB4 E3C3
+E3C4 E3C4 E78C9C E3C4
+E3C5 E3C5 E79FA2 E3C5
+E3C6 E3C6 E7A4BA E3C6
+E3C7 E3C7 E7BF85 E3C7
+E3C8 E3C8 E89294 E3C8
+E3C9 E3C9 E8938D E3C9
+E3CA E3CA E8A696 E3CA
+E3CB E3CB E8A9A6 E3CB
+E3CC E3CC E8A9A9 E3CC
+E3CD E3CD E8ABA1 E3CD
+E3CE E3CE E8B195 E3CE
+E3CF E3CF E8B1BA E3CF
+E3D0 E3D0 E59FB4 E3D0
+E3D1 E3D1 E5AF94 E3D1
+E3D2 E3D2 E5BC8F E3D2
+E3D3 E3D3 E681AF E3D3
+E3D4 E3D4 E68BAD E3D4
+E3D5 E3D5 E6A48D E3D5
+E3D6 E3D6 E6AE96 E3D6
+E3D7 E3D7 E6B99C E3D7
+E3D8 E3D8 E78684 E3D8
+E3D9 E3D9 E7AF92 E3D9
+E3DA E3DA E89D95 E3DA
+E3DB E3DB E8AD98 E3DB
+E3DC E3DC E8BBBE E3DC
+E3DD E3DD E9A39F E3DD
+E3DE E3DE E9A3BE E3DE
+E3DF E3DF E4BCB8 E3DF
+E3E0 E3E0 E4BE81 E3E0
+E3E1 E3E1 E4BFA1 E3E1
+E3E2 E3E2 E591BB E3E2
+E3E3 E3E3 E5A8A0 E3E3
+E3E4 E3E4 E5AEB8 E3E4
+E3E5 E3E5 E684BC E3E5
+E3E6 E3E6 E696B0 E3E6
+E3E7 E3E7 E699A8 E3E7
+E3E8 E3E8 E787BC E3E8
+E3E9 E3E9 E794B3 E3E9
+E3EA E3EA E7A59E E3EA
+E3EB E3EB E7B4B3 E3EB
+E3EC E3EC E8858E E3EC
+E3ED E3ED E887A3 E3ED
+E3EE E3EE E88E98 E3EE
+E3EF E3EF E896AA E3EF
+E3F0 E3F0 E8978E E3F0
+E3F1 E3F1 E89C83 E3F1
+E3F2 E3F2 E8A88A E3F2
+E3F3 E3F3 E8BAAB E3F3
+E3F4 E3F4 E8BE9B E3F4
+E3F5 E3F5 EFA5B1 E3F5
+E3F6 E3F6 E8BF85 E3F6
+E3F7 E3F7 E5A4B1 E3F7
+E3F8 E3F8 E5AEA4 E3F8
+E3F9 E3F9 E5AFA6 E3F9
+E3FA E3FA E68289 E3FA
+E3FB E3FB E5AFA9 E3FB
+E3FC E3FC E5B08B E3FC
+E3FD E3FD E5BF83 E3FD
+E3FE E3FE E6B281 E3FE
+E4A1 E4A1 EFA5B2 E4A1
+E4A2 E4A2 E6B7B1 E4A2
+E4A3 E4A3 E7808B E4A3
+E4A4 E4A4 E7949A E4A4
+E4A5 E4A5 E88AAF E4A5
+E4A6 E4A6 E8ABB6 E4A6
+E4A7 E4A7 E4BB80 E4A7
+E4A8 E4A8 E58D81 E4A8
+E4A9 E4A9 EFA5B3 E4A9
+E4AA E4AA E99B99 E4AA
+E4AB E4AB E6B08F E4AB
+E4AC E4AC E4BA9E E4AC
+E4AD E4AD E4BF84 E4AD
+E4AE E4AE E58592 E4AE
+E4AF E4AF E5959E E4AF
+E4B0 E4B0 E5A8A5 E4B0
+E4B1 E4B1 E5B3A8 E4B1
+E4B2 E4B2 E68891 E4B2
+E4B3 E4B3 E78999 E4B3
+E4B4 E4B4 E88ABD E4B4
+E4B5 E4B5 E88EAA E4B5
+E4B6 E4B6 E89BBE E4B6
+E4B7 E4B7 E8A199 E4B7
+E4B8 E4B8 E8A89D E4B8
+E4B9 E4B9 E998BF E4B9
+E4BA E4BA E99B85 E4BA
+E4BB E4BB E9A493 E4BB
+E4BC E4BC E9B489 E4BC
+E4BD E4BD E9B59D E4BD
+E4BE E4BE E5A08A E4BE
+E4BF E4BF E5B2B3 E4BF
+E4C0 E4C0 E5B6BD E4C0
+E4C1 E4C1 E5B984 E4C1
+E4C2 E4C2 E683A1 E4C2
+E4C3 E4C3 E68495 E4C3
+E4C4 E4C4 E68FA1 E4C4
+E4C5 E4C5 E6A882 E4C5
+E4C6 E4C6 E6B8A5 E4C6
+E4C7 E4C7 E98482 E4C7
+E4C8 E4C8 E98D94 E4C8
+E4C9 E4C9 E9A18E E4C9
+E4CA E4CA E9B090 E4CA
+E4CB E4CB E9BDB7 E4CB
+E4CC E4CC E5AE89 E4CC
+E4CD E4CD E5B2B8 E4CD
+E4CE E4CE E68C89 E4CE
+E4CF E4CF E6998F E4CF
+E4D0 E4D0 E6A188 E4D0
+E4D1 E4D1 E79CBC E4D1
+E4D2 E4D2 E99B81 E4D2
+E4D3 E4D3 E99E8D E4D3
+E4D4 E4D4 E9A194 E4D4
+E4D5 E4D5 E9AE9F E4D5
+E4D6 E4D6 E696A1 E4D6
+E4D7 E4D7 E8AC81 E4D7
+E4D8 E4D8 E8BB8B E4D8
+E4D9 E4D9 E996BC E4D9
+E4DA E4DA E594B5 E4DA
+E4DB E4DB E5B2A9 E4DB
+E4DC E4DC E5B796 E4DC
+E4DD E4DD E5BAB5 E4DD
+E4DE E4DE E69A97 E4DE
+E4DF E4DF E7998C E4DF
+E4E0 E4E0 E88FB4 E4E0
+E4E1 E4E1 E99787 E4E1
+E4E2 E4E2 E5A393 E4E2
+E4E3 E4E3 E68ABC E4E3
+E4E4 E4E4 E78B8E E4E4
+E4E5 E4E5 E9B4A8 E4E5
+E4E6 E4E6 E4BBB0 E4E6
+E4E7 E4E7 E5A4AE E4E7
+E4E8 E4E8 E6808F E4E8
+E4E9 E4E9 E698BB E4E9
+E4EA E4EA E6AE83 E4EA
+E4EB E4EB E7A7A7 E4EB
+E4EC E4EC E9B4A6 E4EC
+E4ED E4ED E58E93 E4ED
+E4EE E4EE E59380 E4EE
+E4EF E4EF E59F83 E4EF
+E4F0 E4F0 E5B496 E4F0
+E4F1 E4F1 E6849B E4F1
+E4F2 E4F2 E69B96 E4F2
+E4F3 E4F3 E6B6AF E4F3
+E4F4 E4F4 E7A28D E4F4
+E4F5 E4F5 E889BE E4F5
+E4F6 E4F6 E99A98 E4F6
+E4F7 E4F7 E99D84 E4F7
+E4F8 E4F8 E58E84 E4F8
+E4F9 E4F9 E689BC E4F9
+E4FA E4FA E68E96 E4FA
+E4FB E4FB E6B6B2 E4FB
+E4FC E4FC E7B88A E4FC
+E4FD E4FD E8858B E4FD
+E4FE E4FE E9A18D E4FE
+E5A1 E5A1 E6ABBB E5A1
+E5A2 E5A2 E7BD8C E5A2
+E5A3 E5A3 E9B6AF E5A3
+E5A4 E5A4 E9B89A E5A4
+E5A5 E5A5 E4B99F E5A5
+E5A6 E5A6 E580BB E5A6
+E5A7 E5A7 E586B6 E5A7
+E5A8 E5A8 E5A49C E5A8
+E5A9 E5A9 E683B9 E5A9
+E5AA E5AA E68FB6 E5AA
+E5AB E5AB E6A4B0 E5AB
+E5AC E5AC E788BA E5AC
+E5AD E5AD E880B6 E5AD
+E5AE E5AE EFA5B4 E5AE
+E5AF E5AF E9878E E5AF
+E5B0 E5B0 E5BCB1 E5B0
+E5B1 E5B1 EFA5B5 E5B1
+E5B2 E5B2 EFA5B6 E5B2
+E5B3 E5B3 E7B484 E5B3
+E5B4 E5B4 E88BA5 E5B4
+E5B5 E5B5 E891AF E5B5
+E5B6 E5B6 E892BB E5B6
+E5B7 E5B7 E897A5 E5B7
+E5B8 E5B8 E8BA8D E5B8
+E5B9 E5B9 EFA5B7 E5B9
+E5BA E5BA E4BDAF E5BA
+E5BB E5BB EFA5B8 E5BB
+E5BC E5BC EFA5B9 E5BC
+E5BD E5BD E5A3A4 E5BD
+E5BE E5BE E5AD83 E5BE
+E5BF E5BF E68199 E5BF
+E5C0 E5C0 E68F9A E5C0
+E5C1 E5C1 E69498 E5C1
+E5C2 E5C2 E695AD E5C2
+E5C3 E5C3 E69A98 E5C3
+E5C4 E5C4 EFA5BA E5C4
+E5C5 E5C5 E6A58A E5C5
+E5C6 E5C6 E6A8A3 E5C6
+E5C7 E5C7 E6B48B E5C7
+E5C8 E5C8 E78081 E5C8
+E5C9 E5C9 E785AC E5C9
+E5CA E5CA E79792 E5CA
+E5CB E5CB E7988D E5CB
+E5CC E5CC E7A6B3 E5CC
+E5CD E5CD E7A9B0 E5CD
+E5CE E5CE EFA5BB E5CE
+E5CF E5CF E7BE8A E5CF
+E5D0 E5D0 EFA5BC E5D0
+E5D1 E5D1 E8A584 E5D1
+E5D2 E5D2 EFA5BD E5D2
+E5D3 E5D3 E8AE93 E5D3
+E5D4 E5D4 E98780 E5D4
+E5D5 E5D5 E999BD E5D5
+E5D6 E5D6 EFA5BE E5D6
+E5D7 E5D7 E9A48A E5D7
+E5D8 E5D8 E59C84 E5D8
+E5D9 E5D9 E5BEA1 E5D9
+E5DA E5DA E696BC E5DA
+E5DB E5DB E6BC81 E5DB
+E5DC E5DC E79880 E5DC
+E5DD E5DD E7A6A6 E5DD
+E5DE E5DE E8AA9E E5DE
+E5DF E5DF E9A6AD E5DF
+E5E0 E5E0 E9AD9A E5E0
+E5E1 E5E1 E9BDAC E5E1
+E5E2 E5E2 E58484 E5E2
+E5E3 E5E3 E686B6 E5E3
+E5E4 E5E4 E68A91 E5E4
+E5E5 E5E5 E6AA8D E5E5
+E5E6 E5E6 E88786 E5E6
+E5E7 E5E7 E58183 E5E7
+E5E8 E5E8 E5A0B0 E5E8
+E5E9 E5E9 E5BDA6 E5E9
+E5EA E5EA E78489 E5EA
+E5EB E5EB E8A880 E5EB
+E5EC E5EC E8ABBA E5EC
+E5ED E5ED E5ADBC E5ED
+E5EE E5EE E89896 E5EE
+E5EF E5EF E4BFBA E5EF
+E5F0 E5F0 E584BC E5F0
+E5F1 E5F1 E59AB4 E5F1
+E5F2 E5F2 E5A584 E5F2
+E5F3 E5F3 E68EA9 E5F3
+E5F4 E5F4 E6B7B9 E5F4
+E5F5 E5F5 E5B6AA E5F5
+E5F6 E5F6 E6A5AD E5F6
+E5F7 E5F7 E58686 E5F7
+E5F8 E5F8 E4BA88 E5F8
+E5F9 E5F9 E4BD99 E5F9
+E5FA E5FA EFA5BF E5FA
+E5FB E5FB EFA680 E5FB
+E5FC E5FC EFA681 E5FC
+E5FD E5FD E5A682 E5FD
+E5FE E5FE EFA682 E5FE
+E6A1 E6A1 EFA683 E6A1
+E6A2 E6A2 E6AD9F E6A2
+E6A3 E6A3 E6B19D E6A3
+E6A4 E6A4 EFA684 E6A4
+E6A5 E6A5 E792B5 E6A5
+E6A6 E6A6 E7A496 E6A6
+E6A7 E6A7 EFA685 E6A7
+E6A8 E6A8 E88887 E6A8
+E6A9 E6A9 E88985 E6A9
+E6AA E6AA E88CB9 E6AA
+E6AB E6AB E8BCBF E6AB
+E6AC E6AC E8BD9D E6AC
+E6AD E6AD EFA686 E6AD
+E6AE E6AE E9A498 E6AE
+E6AF E6AF EFA687 E6AF
+E6B0 E6B0 EFA688 E6B0
+E6B1 E6B1 EFA689 E6B1
+E6B2 E6B2 E4BAA6 E6B2
+E6B3 E6B3 EFA68A E6B3
+E6B4 E6B4 E59F9F E6B4
+E6B5 E6B5 E5BDB9 E6B5
+E6B6 E6B6 E69893 E6B6
+E6B7 E6B7 EFA68B E6B7
+E6B8 E6B8 EFA68C E6B8
+E6B9 E6B9 E796AB E6B9
+E6BA E6BA E7B9B9 E6BA
+E6BB E6BB E8ADAF E6BB
+E6BC E6BC EFA68D E6BC
+E6BD E6BD E98086 E6BD
+E6BE E6BE E9A99B E6BE
+E6BF E6BF E59AA5 E6BF
+E6C0 E6C0 E5A0A7 E6C0
+E6C1 E6C1 E5A7B8 E6C1
+E6C2 E6C2 E5A89F E6C2
+E6C3 E6C3 E5AEB4 E6C3
+E6C4 E6C4 EFA68E E6C4
+E6C5 E6C5 E5BBB6 E6C5
+E6C6 E6C6 EFA68F E6C6
+E6C7 E6C7 EFA690 E6C7
+E6C8 E6C8 E68D90 E6C8
+E6C9 E6C9 E68CBB E6C9
+E6CA E6CA EFA691 E6CA
+E6CB E6CB E6A4BD E6CB
+E6CC E6CC E6B287 E6CC
+E6CD E6CD E6B2BF E6CD
+E6CE E6CE E6B68E E6CE
+E6CF E6CF E6B693 E6CF
+E6D0 E6D0 E6B7B5 E6D0
+E6D1 E6D1 E6BC94 E6D1
+E6D2 E6D2 EFA692 E6D2
+E6D3 E6D3 E7839F E6D3
+E6D4 E6D4 E784B6 E6D4
+E6D5 E6D5 E78599 E6D5
+E6D6 E6D6 EFA693 E6D6
+E6D7 E6D7 E78783 E6D7
+E6D8 E6D8 E78795 E6D8
+E6D9 E6D9 EFA694 E6D9
+E6DA E6DA E7A18F E6DA
+E6DB E6DB E7A1AF E6DB
+E6DC E6DC EFA695 E6DC
+E6DD E6DD E7ADB5 E6DD
+E6DE E6DE E7B7A3 E6DE
+E6DF E6DF EFA696 E6DF
+E6E0 E6E0 E7B8AF E6E0
+E6E1 E6E1 EFA697 E6E1
+E6E2 E6E2 E8A18D E6E2
+E6E3 E6E3 E8BB9F E6E3
+E6E4 E6E4 EFA698 E6E4
+E6E5 E6E5 EFA699 E6E5
+E6E6 E6E6 EFA69A E6E6
+E6E7 E6E7 E9899B E6E7
+E6E8 E6E8 EFA69B E6E8
+E6E9 E6E9 E9B3B6 E6E9
+E6EA E6EA EFA69C E6EA
+E6EB E6EB EFA69D E6EB
+E6EC E6EC EFA69E E6EC
+E6ED E6ED E68285 E6ED
+E6EE E6EE E6B685 E6EE
+E6EF E6EF EFA69F E6EF
+E6F0 E6F0 E786B1 E6F0
+E6F1 E6F1 EFA6A0 E6F1
+E6F2 E6F2 EFA6A1 E6F2
+E6F3 E6F3 E996B1 E6F3
+E6F4 E6F4 E58EAD E6F4
+E6F5 E6F5 EFA6A2 E6F5
+E6F6 E6F6 EFA6A3 E6F6
+E6F7 E6F7 EFA6A4 E6F7
+E6F8 E6F8 E69F93 E6F8
+E6F9 E6F9 EFA6A5 E6F9
+E6FA E6FA E7828E E6FA
+E6FB E6FB E784B0 E6FB
+E6FC E6FC E790B0 E6FC
+E6FD E6FD E889B6 E6FD
+E6FE E6FE E88B92 E6FE
+E7A1 E7A1 EFA6A6 E7A1
+E7A2 E7A2 E996BB E7A2
+E7A3 E7A3 E9ABA5 E7A3
+E7A4 E7A4 E9B9BD E7A4
+E7A5 E7A5 E69B84 E7A5
+E7A6 E7A6 EFA6A7 E7A6
+E7A7 E7A7 E78781 E7A7
+E7A8 E7A8 E89189 E7A8
+E7A9 E7A9 EFA6A8 E7A9
+E7AA E7AA EFA6A9 E7AA
+E7AB E7AB E5A18B E7AB
+E7AC E7AC EFA6AA E7AC
+E7AD E7AD EFA6AB E7AD
+E7AE E7AE E5B6B8 E7AE
+E7AF E7AF E5BDB1 E7AF
+E7B0 E7B0 EFA6AC E7B0
+E7B1 E7B1 E698A0 E7B1
+E7B2 E7B2 E69A8E E7B2
+E7B3 E7B3 E6A5B9 E7B3
+E7B4 E7B4 E6A6AE E7B4
+E7B5 E7B5 E6B0B8 E7B5
+E7B6 E7B6 E6B3B3 E7B6
+E7B7 E7B7 E6B8B6 E7B7
+E7B8 E7B8 E6BD81 E7B8
+E7B9 E7B9 E6BF9A E7B9
+E7BA E7BA E7809B E7BA
+E7BB E7BB E780AF E7BB
+E7BC E7BC E78590 E7BC
+E7BD E7BD E7879F E7BD
+E7BE E7BE E78DB0 E7BE
+E7BF E7BF EFA6AD E7BF
+E7C0 E7C0 E7919B E7C0
+E7C1 E7C1 EFA6AE E7C1
+E7C2 E7C2 E79394 E7C2
+E7C3 E7C3 E79B88 E7C3
+E7C4 E7C4 E7A98E E7C4
+E7C5 E7C5 E7BA93 E7C5
+E7C6 E7C6 EFA6AF E7C6
+E7C7 E7C7 EFA6B0 E7C7
+E7C8 E7C8 E88BB1 E7C8
+E7C9 E7C9 E8A9A0 E7C9
+E7CA E7CA E8BF8E E7CA
+E7CB E7CB EFA6B1 E7CB
+E7CC E7CC E98D88 E7CC
+E7CD E7CD EFA6B2 E7CD
+E7CE E7CE E99C99 E7CE
+E7CF E7CF EFA6B3 E7CF
+E7D0 E7D0 EFA6B4 E7D0
+E7D1 E7D1 E4B982 E7D1
+E7D2 E7D2 E580AA E7D2
+E7D3 E7D3 EFA6B5 E7D3
+E7D4 E7D4 E58888 E7D4
+E7D5 E7D5 E58FA1 E7D5
+E7D6 E7D6 E69BB3 E7D6
+E7D7 E7D7 E6B1AD E7D7
+E7D8 E7D8 E6BF8A E7D8
+E7D9 E7D9 E78C8A E7D9
+E7DA E7DA E79DBF E7DA
+E7DB E7DB E7A9A2 E7DB
+E7DC E7DC E88AAE E7DC
+E7DD E7DD E8979D E7DD
+E7DE E7DE E89882 E7DE
+E7DF E7DF EFA6B6 E7DF
+E7E0 E7E0 E8A394 E7E0
+E7E1 E7E1 E8A9A3 E7E1
+E7E2 E7E2 E8ADBD E7E2
+E7E3 E7E3 E8B1AB E7E3
+E7E4 E7E4 EFA6B7 E7E4
+E7E5 E7E5 E98AB3 E7E5
+E7E6 E7E6 EFA6B8 E7E6
+E7E7 E7E7 E99C93 E7E7
+E7E8 E7E8 E9A090 E7E8
+E7E9 E7E9 E4BA94 E7E9
+E7EA E7EA E4BC8D E7EA
+E7EB E7EB E4BF89 E7EB
+E7EC E7EC E582B2 E7EC
+E7ED E7ED E58D88 E7ED
+E7EE E7EE E590BE E7EE
+E7EF E7EF E590B3 E7EF
+E7F0 E7F0 E5979A E7F0
+E7F1 E7F1 E5A1A2 E7F1
+E7F2 E7F2 E5A2BA E7F2
+E7F3 E7F3 E5A5A7 E7F3
+E7F4 E7F4 E5A89B E7F4
+E7F5 E7F5 E5AFA4 E7F5
+E7F6 E7F6 E6829F E7F6
+E7F7 E7F7 EFA6B9 E7F7
+E7F8 E7F8 E6878A E7F8
+E7F9 E7F9 E69596 E7F9
+E7FA E7FA E697BF E7FA
+E7FB E7FB E699A4 E7FB
+E7FC E7FC E6A2A7 E7FC
+E7FD E7FD E6B19A E7FD
+E7FE E7FE E6BEB3 E7FE
+E8A1 E8A1 E7838F E8A1
+E8A2 E8A2 E786AC E8A2
+E8A3 E8A3 E78D92 E8A3
+E8A4 E8A4 E7ADBD E8A4
+E8A5 E8A5 E89C88 E8A5
+E8A6 E8A6 E8AAA4 E8A6
+E8A7 E8A7 E9B0B2 E8A7
+E8A8 E8A8 E9BC87 E8A8
+E8A9 E8A9 E5B18B E8A9
+E8AA E8AA E6B283 E8AA
+E8AB E8AB E78D84 E8AB
+E8AC E8AC E78E89 E8AC
+E8AD E8AD E988BA E8AD
+E8AE E8AE E6BAAB E8AE
+E8AF E8AF E791A5 E8AF
+E8B0 E8B0 E7989F E8B0
+E8B1 E8B1 E7A9A9 E8B1
+E8B2 E8B2 E7B895 E8B2
+E8B3 E8B3 E8988A E8B3
+E8B4 E8B4 E58580 E8B4
+E8B5 E8B5 E5A385 E8B5
+E8B6 E8B6 E69381 E8B6
+E8B7 E8B7 E793AE E8B7
+E8B8 E8B8 E79495 E8B8
+E8B9 E8B9 E799B0 E8B9
+E8BA E8BA E7BF81 E8BA
+E8BB E8BB E98295 E8BB
+E8BC E8BC E99B8D E8BC
+E8BD E8BD E9A594 E8BD
+E8BE E8BE E6B8A6 E8BE
+E8BF E8BF E793A6 E8BF
+E8C0 E8C0 E7AAA9 E8C0
+E8C1 E8C1 E7AAAA E8C1
+E8C2 E8C2 E887A5 E8C2
+E8C3 E8C3 E89B99 E8C3
+E8C4 E8C4 E89DB8 E8C4
+E8C5 E8C5 E8A89B E8C5
+E8C6 E8C6 E5A989 E8C6
+E8C7 E8C7 E5AE8C E8C7
+E8C8 E8C8 E5AE9B E8C8
+E8C9 E8C9 E6A2A1 E8C9
+E8CA E8CA E6A480 E8CA
+E8CB E8CB E6B5A3 E8CB
+E8CC E8CC E78EA9 E8CC
+E8CD E8CD E79093 E8CD
+E8CE E8CE E790AC E8CE
+E8CF E8CF E7A297 E8CF
+E8D0 E8D0 E7B7A9 E8D0
+E8D1 E8D1 E7BFAB E8D1
+E8D2 E8D2 E88498 E8D2
+E8D3 E8D3 E88595 E8D3
+E8D4 E8D4 E88E9E E8D4
+E8D5 E8D5 E8B18C E8D5
+E8D6 E8D6 E998AE E8D6
+E8D7 E8D7 E9A091 E8D7
+E8D8 E8D8 E69BB0 E8D8
+E8D9 E8D9 E5BE80 E8D9
+E8DA E8DA E697BA E8DA
+E8DB E8DB E69E89 E8DB
+E8DC E8DC E6B1AA E8DC
+E8DD E8DD E78E8B E8DD
+E8DE E8DE E580AD E8DE
+E8DF E8DF E5A883 E8DF
+E8E0 E8E0 E6ADAA E8E0
+E8E1 E8E1 E79FAE E8E1
+E8E2 E8E2 E5A496 E8E2
+E8E3 E8E3 E5B5AC E8E3
+E8E4 E8E4 E5B78D E8E4
+E8E5 E8E5 E78CA5 E8E5
+E8E6 E8E6 E7958F E8E6
+E8E7 E8E7 EFA6BA E8E7
+E8E8 E8E8 EFA6BB E8E8
+E8E9 E8E9 E583A5 E8E9
+E8EA E8EA E587B9 E8EA
+E8EB E8EB E5A0AF E8EB
+E8EC E8EC E5A4AD E8EC
+E8ED E8ED E5A696 E8ED
+E8EE E8EE E5A79A E8EE
+E8EF E8EF E5AFA5 E8EF
+E8F0 E8F0 EFA6BC E8F0
+E8F1 E8F1 EFA6BD E8F1
+E8F2 E8F2 E5B6A2 E8F2
+E8F3 E8F3 E68B97 E8F3
+E8F4 E8F4 E69096 E8F4
+E8F5 E8F5 E69293 E8F5
+E8F6 E8F6 E693BE E8F6
+E8F7 E8F7 EFA6BE E8F7
+E8F8 E8F8 E69B9C E8F8
+E8F9 E8F9 EFA6BF E8F9
+E8FA E8FA E6A988 E8FA
+E8FB E8FB EFA780 E8FB
+E8FC E8FC E787BF E8FC
+E8FD E8FD E791A4 E8FD
+E8FE E8FE EFA781 E8FE
+E9A1 E9A1 E7AA88 E9A1
+E9A2 E9A2 E7AAAF E9A2
+E9A3 E9A3 E7B987 E9A3
+E9A4 E9A4 E7B99E E9A4
+E9A5 E9A5 E88080 E9A5
+E9A6 E9A6 E885B0 E9A6
+E9A7 E9A7 EFA782 E9A7
+E9A8 E9A8 E89FAF E9A8
+E9A9 E9A9 E8A681 E9A9
+E9AA E9AA E8ACA0 E9AA
+E9AB E9AB E98199 E9AB
+E9AC E9AC EFA783 E9AC
+E9AD E9AD E98280 E9AD
+E9AE E9AE E9A592 E9AE
+E9AF E9AF E685BE E9AF
+E9B0 E9B0 E6ACB2 E9B0
+E9B1 E9B1 E6B5B4 E9B1
+E9B2 E9B2 E7B89F E9B2
+E9B3 E9B3 E8A4A5 E9B3
+E9B4 E9B4 E8BEB1 E9B4
+E9B5 E9B5 E4BF91 E9B5
+E9B6 E9B6 E582AD E9B6
+E9B7 E9B7 E58697 E9B7
+E9B8 E9B8 E58B87 E9B8
+E9B9 E9B9 E59F87 E9B9
+E9BA E9BA E5A289 E9BA
+E9BB E9BB E5AEB9 E9BB
+E9BC E9BC E5BAB8 E9BC
+E9BD E9BD E68582 E9BD
+E9BE E9BE E6A695 E9BE
+E9BF E9BF E6B68C E9BF
+E9C0 E9C0 E6B9A7 E9C0
+E9C1 E9C1 E6BAB6 E9C1
+E9C2 E9C2 E78694 E9C2
+E9C3 E9C3 E791A2 E9C3
+E9C4 E9C4 E794A8 E9C4
+E9C5 E9C5 E794AC E9C5
+E9C6 E9C6 E881B3 E9C6
+E9C7 E9C7 E88CB8 E9C7
+E9C8 E9C8 E89389 E9C8
+E9C9 E9C9 E8B88A E9C9
+E9CA E9CA E98E94 E9CA
+E9CB E9CB E98F9E E9CB
+E9CC E9CC EFA784 E9CC
+E9CD E9CD E4BA8E E9CD
+E9CE E9CE E4BD91 E9CE
+E9CF E9CF E581B6 E9CF
+E9D0 E9D0 E584AA E9D0
+E9D1 E9D1 E58F88 E9D1
+E9D2 E9D2 E58F8B E9D2
+E9D3 E9D3 E58FB3 E9D3
+E9D4 E9D4 E5AE87 E9D4
+E9D5 E9D5 E5AF93 E9D5
+E9D6 E9D6 E5B0A4 E9D6
+E9D7 E9D7 E6849A E9D7
+E9D8 E9D8 E68682 E9D8
+E9D9 E9D9 E697B4 E9D9
+E9DA E9DA E7899B E9DA
+E9DB E9DB E78E97 E9DB
+E9DC E9DC E79180 E9DC
+E9DD E9DD E79B82 E9DD
+E9DE E9DE E7A590 E9DE
+E9DF E9DF E7A691 E9DF
+E9E0 E9E0 E7A6B9 E9E0
+E9E1 E9E1 E7B486 E9E1
+E9E2 E9E2 E7BEBD E9E2
+E9E3 E9E3 E88A8B E9E3
+E9E4 E9E4 E89795 E9E4
+E9E5 E9E5 E8999E E9E5
+E9E6 E9E6 E8BF82 E9E6
+E9E7 E9E7 E98187 E9E7
+E9E8 E9E8 E983B5 E9E8
+E9E9 E9E9 E987AA E9E9
+E9EA E9EA E99A85 E9EA
+E9EB E9EB E99BA8 E9EB
+E9EC E9EC E99BA9 E9EC
+E9ED E9ED E58B96 E9ED
+E9EE E9EE E5BDA7 E9EE
+E9EF E9EF E697AD E9EF
+E9F0 E9F0 E698B1 E9F0
+E9F1 E9F1 E6A0AF E9F1
+E9F2 E9F2 E7859C E9F2
+E9F3 E9F3 E7A8B6 E9F3
+E9F4 E9F4 E98381 E9F4
+E9F5 E9F5 E9A08A E9F5
+E9F6 E9F6 E4BA91 E9F6
+E9F7 E9F7 EFA785 E9F7
+E9F8 E9F8 E6A992 E9F8
+E9F9 E9F9 E6AE9E E9F9
+E9FA E9FA E6BE90 E9FA
+E9FB E9FB E78689 E9FB
+E9FC E9FC E88098 E9FC
+E9FD E9FD E88AB8 E9FD
+E9FE E9FE E89593 E9FE
+EAA1 EAA1 E9818B EAA1
+EAA2 EAA2 E99A95 EAA2
+EAA3 EAA3 E99BB2 EAA3
+EAA4 EAA4 E99FBB EAA4
+EAA5 EAA5 E8949A EAA5
+EAA6 EAA6 E9ACB1 EAA6
+EAA7 EAA7 E4BA90 EAA7
+EAA8 EAA8 E7868A EAA8
+EAA9 EAA9 E99B84 EAA9
+EAAA EAAA E58583 EAAA
+EAAB EAAB E58E9F EAAB
+EAAC EAAC E593A1 EAAC
+EAAD EAAD E59C93 EAAD
+EAAE EAAE E59C92 EAAE
+EAAF EAAF E59EA3 EAAF
+EAB0 EAB0 E5AA9B EAB0
+EAB1 EAB1 E5AB84 EAB1
+EAB2 EAB2 E5AF83 EAB2
+EAB3 EAB3 E680A8 EAB3
+EAB4 EAB4 E684BF EAB4
+EAB5 EAB5 E68FB4 EAB5
+EAB6 EAB6 E6B285 EAB6
+EAB7 EAB7 E6B4B9 EAB7
+EAB8 EAB8 E6B9B2 EAB8
+EAB9 EAB9 E6BA90 EAB9
+EABA EABA E788B0 EABA
+EABB EABB E78CBF EABB
+EABC EABC E79197 EABC
+EABD EABD E88B91 EABD
+EABE EABE E8A281 EABE
+EABF EABF E8BD85 EABF
+EAC0 EAC0 E981A0 EAC0
+EAC1 EAC1 EFA786 EAC1
+EAC2 EAC2 E999A2 EAC2
+EAC3 EAC3 E9A198 EAC3
+EAC4 EAC4 E9B49B EAC4
+EAC5 EAC5 E69C88 EAC5
+EAC6 EAC6 E8B68A EAC6
+EAC7 EAC7 E9899E EAC7
+EAC8 EAC8 E4BD8D EAC8
+EAC9 EAC9 E58189 EAC9
+EACA EACA E5839E EACA
+EACB EACB E58DB1 EACB
+EACC EACC E59C8D EACC
+EACD EACD E5A794 EACD
+EACE EACE E5A881 EACE
+EACF EACF E5B089 EACF
+EAD0 EAD0 E685B0 EAD0
+EAD1 EAD1 E69A90 EAD1
+EAD2 EAD2 E6B8AD EAD2
+EAD3 EAD3 E788B2 EAD3
+EAD4 EAD4 E7918B EAD4
+EAD5 EAD5 E7B7AF EAD5
+EAD6 EAD6 E88383 EAD6
+EAD7 EAD7 E8908E EAD7
+EAD8 EAD8 E891A6 EAD8
+EAD9 EAD9 E894BF EAD9
+EADA EADA E89D9F EADA
+EADB EADB E8A19B EADB
+EADC EADC E8A498 EADC
+EADD EADD E8AC82 EADD
+EADE EADE E98195 EADE
+EADF EADF E99F8B EADF
+EAE0 EAE0 E9AD8F EAE0
+EAE1 EAE1 E4B9B3 EAE1
+EAE2 EAE2 E4BE91 EAE2
+EAE3 EAE3 E58492 EAE3
+EAE4 EAE4 E585AA EAE4
+EAE5 EAE5 EFA787 EAE5
+EAE6 EAE6 E594AF EAE6
+EAE7 EAE7 E596A9 EAE7
+EAE8 EAE8 E5ADBA EAE8
+EAE9 EAE9 E5AEA5 EAE9
+EAEA EAEA E5B9BC EAEA
+EAEB EAEB E5B9BD EAEB
+EAEC EAEC E5BABE EAEC
+EAED EAED E682A0 EAED
+EAEE EAEE E6839F EAEE
+EAEF EAEF E68488 EAEF
+EAF0 EAF0 E68489 EAF0
+EAF1 EAF1 E68F84 EAF1
+EAF2 EAF2 E694B8 EAF2
+EAF3 EAF3 E69C89 EAF3
+EAF4 EAF4 EFA788 EAF4
+EAF5 EAF5 E69F94 EAF5
+EAF6 EAF6 E69F9A EAF6
+EAF7 EAF7 EFA789 EAF7
+EAF8 EAF8 E6A5A1 EAF8
+EAF9 EAF9 E6A5A2 EAF9
+EAFA EAFA E6B2B9 EAFA
+EAFB EAFB E6B4A7 EAFB
+EAFC EAFC EFA78A EAFC
+EAFD EAFD E6B8B8 EAFD
+EAFE EAFE EFA78B EAFE
+EBA1 EBA1 E6BFA1 EBA1
+EBA2 EBA2 E78CB6 EBA2
+EBA3 EBA3 E78CB7 EBA3
+EBA4 EBA4 EFA78C EBA4
+EBA5 EBA5 E7919C EBA5
+EBA6 EBA6 E794B1 EBA6
+EBA7 EBA7 EFA78D EBA7
+EBA8 EBA8 E79992 EBA8
+EBA9 EBA9 EFA78E EBA9
+EBAA EBAA EFA78F EBAA
+EBAB EBAB E7B6AD EBAB
+EBAC EBAC E887BE EBAC
+EBAD EBAD E890B8 EBAD
+EBAE EBAE E8A395 EBAE
+EBAF EBAF E8AA98 EBAF
+EBB0 EBB0 E8AB9B EBB0
+EBB1 EBB1 E8ABAD EBB1
+EBB2 EBB2 E8B8B0 EBB2
+EBB3 EBB3 E8B982 EBB3
+EBB4 EBB4 E9818A EBB4
+EBB5 EBB5 E980BE EBB5
+EBB6 EBB6 E981BA EBB6
+EBB7 EBB7 E98589 EBB7
+EBB8 EBB8 E98789 EBB8
+EBB9 EBB9 E98DAE EBB9
+EBBA EBBA EFA790 EBBA
+EBBB EBBB EFA791 EBBB
+EBBC EBBC E5A089 EBBC
+EBBD EBBD EFA792 EBBD
+EBBE EBBE E6AF93 EBBE
+EBBF EBBF E88289 EBBF
+EBC0 EBC0 E882B2 EBC0
+EBC1 EBC1 EFA793 EBC1
+EBC2 EBC2 EFA794 EBC2
+EBC3 EBC3 E58581 EBC3
+EBC4 EBC4 E5A5AB EBC4
+EBC5 EBC5 E5B0B9 EBC5
+EBC6 EBC6 EFA795 EBC6
+EBC7 EBC7 EFA796 EBC7
+EBC8 EBC8 E6BDA4 EBC8
+EBC9 EBC9 E78EA7 EBC9
+EBCA EBCA E883A4 EBCA
+EBCB EBCB E8B487 EBCB
+EBCC EBCC EFA797 EBCC
+EBCD EBCD E98897 EBCD
+EBCE EBCE E9968F EBCE
+EBCF EBCF EFA798 EBCF
+EBD0 EBD0 EFA799 EBD0
+EBD1 EBD1 EFA79A EBD1
+EBD2 EBD2 EFA79B EBD2
+EBD3 EBD3 E881BF EBD3
+EBD4 EBD4 E6888E EBD4
+EBD5 EBD5 E7809C EBD5
+EBD6 EBD6 E7B5A8 EBD6
+EBD7 EBD7 E89E8D EBD7
+EBD8 EBD8 EFA79C EBD8
+EBD9 EBD9 E59EA0 EBD9
+EBDA EBDA E681A9 EBDA
+EBDB EBDB E68587 EBDB
+EBDC EBDC E6AEB7 EBDC
+EBDD EBDD E8AABE EBDD
+EBDE EBDE E98A80 EBDE
+EBDF EBDF E99AB1 EBDF
+EBE0 EBE0 E4B999 EBE0
+EBE1 EBE1 E5909F EBE1
+EBE2 EBE2 E6B7AB EBE2
+EBE3 EBE3 E894AD EBE3
+EBE4 EBE4 E999B0 EBE4
+EBE5 EBE5 E99FB3 EBE5
+EBE6 EBE6 E9A3AE EBE6
+EBE7 EBE7 E68F96 EBE7
+EBE8 EBE8 E6B3A3 EBE8
+EBE9 EBE9 E98291 EBE9
+EBEA EBEA E5879D EBEA
+EBEB EBEB E68789 EBEB
+EBEC EBEC E886BA EBEC
+EBED EBED E9B7B9 EBED
+EBEE EBEE E4BE9D EBEE
+EBEF EBEF E5809A EBEF
+EBF0 EBF0 E58480 EBF0
+EBF1 EBF1 E5AE9C EBF1
+EBF2 EBF2 E6848F EBF2
+EBF3 EBF3 E687BF EBF3
+EBF4 EBF4 E693AC EBF4
+EBF5 EBF5 E6A485 EBF5
+EBF6 EBF6 E6AF85 EBF6
+EBF7 EBF7 E79691 EBF7
+EBF8 EBF8 E79FA3 EBF8
+EBF9 EBF9 E7BEA9 EBF9
+EBFA EBFA E889A4 EBFA
+EBFB EBFB E8968F EBFB
+EBFC EBFC E89FBB EBFC
+EBFD EBFD E8A1A3 EBFD
+EBFE EBFE E8AABC EBFE
+ECA1 ECA1 E8ADB0 ECA1
+ECA2 ECA2 E986AB ECA2
+ECA3 ECA3 E4BA8C ECA3
+ECA4 ECA4 E4BBA5 ECA4
+ECA5 ECA5 E4BC8A ECA5
+ECA6 ECA6 EFA79D ECA6
+ECA7 ECA7 EFA79E ECA7
+ECA8 ECA8 E5A4B7 ECA8
+ECA9 ECA9 E5A7A8 ECA9
+ECAA ECAA EFA79F ECAA
+ECAB ECAB E5B7B2 ECAB
+ECAC ECAC E5BC9B ECAC
+ECAD ECAD E5BD9B ECAD
+ECAE ECAE E680A1 ECAE
+ECAF ECAF EFA7A0 ECAF
+ECB0 ECB0 EFA7A1 ECB0
+ECB1 ECB1 EFA7A2 ECB1
+ECB2 ECB2 EFA7A3 ECB2
+ECB3 ECB3 E788BE ECB3
+ECB4 ECB4 E78FA5 ECB4
+ECB5 ECB5 EFA7A4 ECB5
+ECB6 ECB6 E795B0 ECB6
+ECB7 ECB7 E7978D ECB7
+ECB8 ECB8 EFA7A5 ECB8
+ECB9 ECB9 E7A7BB ECB9
+ECBA ECBA EFA7A6 ECBA
+ECBB ECBB E8808C ECBB
+ECBC ECBC E880B3 ECBC
+ECBD ECBD E88284 ECBD
+ECBE ECBE E88BA1 ECBE
+ECBF ECBF E88D91 ECBF
+ECC0 ECC0 EFA7A7 ECC0
+ECC1 ECC1 EFA7A8 ECC1
+ECC2 ECC2 E8B2BD ECC2
+ECC3 ECC3 E8B2B3 ECC3
+ECC4 ECC4 E98287 ECC4
+ECC5 ECC5 EFA7A9 ECC5
+ECC6 ECC6 EFA7AA ECC6
+ECC7 ECC7 E9A3B4 ECC7
+ECC8 ECC8 E9A48C ECC8
+ECC9 ECC9 EFA7AB ECC9
+ECCA ECCA EFA7AC ECCA
+ECCB ECCB E780B7 ECCB
+ECCC ECCC E79B8A ECCC
+ECCD ECCD E7BF8A ECCD
+ECCE ECCE E7BF8C ECCE
+ECCF ECCF E7BFBC ECCF
+ECD0 ECD0 E8AC9A ECD0
+ECD1 ECD1 E4BABA ECD1
+ECD2 ECD2 E4BB81 ECD2
+ECD3 ECD3 E58883 ECD3
+ECD4 ECD4 E58DB0 ECD4
+ECD5 ECD5 EFA7AD ECD5
+ECD6 ECD6 E592BD ECD6
+ECD7 ECD7 E59BA0 ECD7
+ECD8 ECD8 E5A7BB ECD8
+ECD9 ECD9 E5AF85 ECD9
+ECDA ECDA E5BC95 ECDA
+ECDB ECDB E5BF8D ECDB
+ECDC ECDC E6B9AE ECDC
+ECDD ECDD EFA7AE ECDD
+ECDE ECDE EFA7AF ECDE
+ECDF ECDF E7B5AA ECDF
+ECE0 ECE0 E88CB5 ECE0
+ECE1 ECE1 EFA7B0 ECE1
+ECE2 ECE2 E89A93 ECE2
+ECE3 ECE3 E8AA8D ECE3
+ECE4 ECE4 EFA7B1 ECE4
+ECE5 ECE5 E99DAD ECE5
+ECE6 ECE6 E99DB7 ECE6
+ECE7 ECE7 EFA7B2 ECE7
+ECE8 ECE8 EFA7B3 ECE8
+ECE9 ECE9 E4B880 ECE9
+ECEA ECEA E4BD9A ECEA
+ECEB ECEB E4BDBE ECEB
+ECEC ECEC E5A3B9 ECEC
+ECED ECED E697A5 ECED
+ECEE ECEE E6BAA2 ECEE
+ECEF ECEF E980B8 ECEF
+ECF0 ECF0 E98EB0 ECF0
+ECF1 ECF1 E9A6B9 ECF1
+ECF2 ECF2 E4BBBB ECF2
+ECF3 ECF3 E5A3AC ECF3
+ECF4 ECF4 E5A68A ECF4
+ECF5 ECF5 E5A799 ECF5
+ECF6 ECF6 E68181 ECF6
+ECF7 ECF7 EFA7B4 ECF7
+ECF8 ECF8 EFA7B5 ECF8
+ECF9 ECF9 E7A894 ECF9
+ECFA ECFA EFA7B6 ECFA
+ECFB ECFB E88D8F ECFB
+ECFC ECFC E8B383 ECFC
+ECFD ECFD E585A5 ECFD
+ECFE ECFE E58D84 ECFE
+EDA1 EDA1 EFA7B7 EDA1
+EDA2 EDA2 EFA7B8 EDA2
+EDA3 EDA3 EFA7B9 EDA3
+EDA4 EDA4 E4BB8D EDA4
+EDA5 EDA5 E589A9 EDA5
+EDA6 EDA6 E5AD95 EDA6
+EDA7 EDA7 E88ABF EDA7
+EDA8 EDA8 E4BB94 EDA8
+EDA9 EDA9 E588BA EDA9
+EDAA EDAA E592A8 EDAA
+EDAB EDAB E5A789 EDAB
+EDAC EDAC E5A7BF EDAC
+EDAD EDAD E5AD90 EDAD
+EDAE EDAE E5AD97 EDAE
+EDAF EDAF E5AD9C EDAF
+EDB0 EDB0 E681A3 EDB0
+EDB1 EDB1 E68588 EDB1
+EDB2 EDB2 E6BB8B EDB2
+EDB3 EDB3 E78299 EDB3
+EDB4 EDB4 E785AE EDB4
+EDB5 EDB5 E78E86 EDB5
+EDB6 EDB6 E793B7 EDB6
+EDB7 EDB7 E796B5 EDB7
+EDB8 EDB8 E7A381 EDB8
+EDB9 EDB9 E7B4AB EDB9
+EDBA EDBA E88085 EDBA
+EDBB EDBB E887AA EDBB
+EDBC EDBC E88CA8 EDBC
+EDBD EDBD E89497 EDBD
+EDBE EDBE E89789 EDBE
+EDBF EDBF E8ABAE EDBF
+EDC0 EDC0 E8B387 EDC0
+EDC1 EDC1 E99B8C EDC1
+EDC2 EDC2 E4BD9C EDC2
+EDC3 EDC3 E58BBA EDC3
+EDC4 EDC4 E59ABC EDC4
+EDC5 EDC5 E696AB EDC5
+EDC6 EDC6 E698A8 EDC6
+EDC7 EDC7 E781BC EDC7
+EDC8 EDC8 E782B8 EDC8
+EDC9 EDC9 E788B5 EDC9
+EDCA EDCA E7B6BD EDCA
+EDCB EDCB E88A8D EDCB
+EDCC EDCC E9858C EDCC
+EDCD EDCD E99B80 EDCD
+EDCE EDCE E9B5B2 EDCE
+EDCF EDCF E5ADB1 EDCF
+EDD0 EDD0 E6A3A7 EDD0
+EDD1 EDD1 E6AE98 EDD1
+EDD2 EDD2 E6BDBA EDD2
+EDD3 EDD3 E79B9E EDD3
+EDD4 EDD4 E5B291 EDD4
+EDD5 EDD5 E69AAB EDD5
+EDD6 EDD6 E6BD9B EDD6
+EDD7 EDD7 E7AEB4 EDD7
+EDD8 EDD8 E7B0AA EDD8
+EDD9 EDD9 E8A0B6 EDD9
+EDDA EDDA E99B9C EDDA
+EDDB EDDB E4B888 EDDB
+EDDC EDDC E4BB97 EDDC
+EDDD EDDD E58CA0 EDDD
+EDDE EDDE E5A0B4 EDDE
+EDDF EDDF E5A2BB EDDF
+EDE0 EDE0 E5A3AF EDE0
+EDE1 EDE1 E5A5AC EDE1
+EDE2 EDE2 E5B087 EDE2
+EDE3 EDE3 E5B8B3 EDE3
+EDE4 EDE4 E5BA84 EDE4
+EDE5 EDE5 E5BCB5 EDE5
+EDE6 EDE6 E68E8C EDE6
+EDE7 EDE7 E69AB2 EDE7
+EDE8 EDE8 E69D96 EDE8
+EDE9 EDE9 E6A89F EDE9
+EDEA EDEA E6AAA3 EDEA
+EDEB EDEB E6AC8C EDEB
+EDEC EDEC E6BCBF EDEC
+EDED EDED E78986 EDED
+EDEE EDEE EFA7BA EDEE
+EDEF EDEF E78D90 EDEF
+EDF0 EDF0 E7928B EDF0
+EDF1 EDF1 E7ABA0 EDF1
+EDF2 EDF2 E7B2A7 EDF2
+EDF3 EDF3 E885B8 EDF3
+EDF4 EDF4 E8879F EDF4
+EDF5 EDF5 E887A7 EDF5
+EDF6 EDF6 E88E8A EDF6
+EDF7 EDF7 E891AC EDF7
+EDF8 EDF8 E894A3 EDF8
+EDF9 EDF9 E89694 EDF9
+EDFA EDFA E8978F EDFA
+EDFB EDFB E8A39D EDFB
+EDFC EDFC E8B493 EDFC
+EDFD EDFD E986AC EDFD
+EDFE EDFE E995B7 EDFE
+EEA1 EEA1 E99A9C EEA1
+EEA2 EEA2 E5868D EEA2
+EEA3 EEA3 E59389 EEA3
+EEA4 EEA4 E59CA8 EEA4
+EEA5 EEA5 E5AEB0 EEA5
+EEA6 EEA6 E6898D EEA6
+EEA7 EEA7 E69D90 EEA7
+EEA8 EEA8 E6A0BD EEA8
+EEA9 EEA9 E6A293 EEA9
+EEAA EEAA E6B8BD EEAA
+EEAB EEAB E6BB93 EEAB
+EEAC EEAC E781BD EEAC
+EEAD EEAD E7B8A1 EEAD
+EEAE EEAE E8A381 EEAE
+EEAF EEAF E8B2A1 EEAF
+EEB0 EEB0 E8BC89 EEB0
+EEB1 EEB1 E9BD8B EEB1
+EEB2 EEB2 E9BD8E EEB2
+EEB3 EEB3 E788AD EEB3
+EEB4 EEB4 E7AE8F EEB4
+EEB5 EEB5 E8AB8D EEB5
+EEB6 EEB6 E98C9A EEB6
+EEB7 EEB7 E4BD87 EEB7
+EEB8 EEB8 E4BD8E EEB8
+EEB9 EEB9 E584B2 EEB9
+EEBA EEBA E59280 EEBA
+EEBB EEBB E5A790 EEBB
+EEBC EEBC E5BA95 EEBC
+EEBD EEBD E68AB5 EEBD
+EEBE EEBE E69DB5 EEBE
+EEBF EEBF E6A5AE EEBF
+EEC0 EEC0 E6A897 EEC0
+EEC1 EEC1 E6B2AE EEC1
+EEC2 EEC2 E6B89A EEC2
+EEC3 EEC3 E78B99 EEC3
+EEC4 EEC4 E78CAA EEC4
+EEC5 EEC5 E796BD EEC5
+EEC6 EEC6 E7AEB8 EEC6
+EEC7 EEC7 E7B4B5 EEC7
+EEC8 EEC8 E88BA7 EEC8
+EEC9 EEC9 E88FB9 EEC9
+EECA EECA E89197 EECA
+EECB EECB E897B7 EECB
+EECC EECC E8A99B EECC
+EECD EECD E8B2AF EECD
+EECE EECE E8BA87 EECE
+EECF EECF E98099 EECF
+EED0 EED0 E982B8 EED0
+EED1 EED1 E99B8E EED1
+EED2 EED2 E9BD9F EED2
+EED3 EED3 E58BA3 EED3
+EED4 EED4 E5908A EED4
+EED5 EED5 E5ABA1 EED5
+EED6 EED6 E5AF82 EED6
+EED7 EED7 E69198 EED7
+EED8 EED8 E695B5 EED8
+EED9 EED9 E6BBB4 EED9
+EEDA EEDA E78B84 EEDA
+EEDB EEDB EFA7BB EEDB
+EEDC EEDC E79A84 EEDC
+EEDD EEDD E7A98D EEDD
+EEDE EEDE E7AC9B EEDE
+EEDF EEDF E7B18D EEDF
+EEE0 EEE0 E7B8BE EEE0
+EEE1 EEE1 E7BF9F EEE1
+EEE2 EEE2 E88DBB EEE2
+EEE3 EEE3 E8ACAB EEE3
+EEE4 EEE4 E8B38A EEE4
+EEE5 EEE5 E8B5A4 EEE5
+EEE6 EEE6 E8B7A1 EEE6
+EEE7 EEE7 E8B99F EEE7
+EEE8 EEE8 E8BFAA EEE8
+EEE9 EEE9 E8BFB9 EEE9
+EEEA EEEA E981A9 EEEA
+EEEB EEEB E98F91 EEEB
+EEEC EEEC E4BD83 EEEC
+EEED EEED E4BDBA EEED
+EEEE EEEE E582B3 EEEE
+EEEF EEEF E585A8 EEEF
+EEF0 EEF0 E585B8 EEF0
+EEF1 EEF1 E5898D EEF1
+EEF2 EEF2 E589AA EEF2
+EEF3 EEF3 E5A1A1 EEF3
+EEF4 EEF4 E5A1BC EEF4
+EEF5 EEF5 E5A5A0 EEF5
+EEF6 EEF6 E5B088 EEF6
+EEF7 EEF7 E5B195 EEF7
+EEF8 EEF8 E5BB9B EEF8
+EEF9 EEF9 E6829B EEF9
+EEFA EEFA E688B0 EEFA
+EEFB EEFB E6A093 EEFB
+EEFC EEFC E6AEBF EEFC
+EEFD EEFD E6B088 EEFD
+EEFE EEFE E6BEB1 EEFE
+EFA1 EFA1 E7858E EFA1
+EFA2 EFA2 E790A0 EFA2
+EFA3 EFA3 E794B0 EFA3
+EFA4 EFA4 E794B8 EFA4
+EFA5 EFA5 E79591 EFA5
+EFA6 EFA6 E799B2 EFA6
+EFA7 EFA7 E7AD8C EFA7
+EFA8 EFA8 E7AE8B EFA8
+EFA9 EFA9 E7AEAD EFA9
+EFAA EFAA E7AF86 EFAA
+EFAB EFAB E7BA8F EFAB
+EFAC EFAC E8A9AE EFAC
+EFAD EFAD E8BCBE EFAD
+EFAE EFAE E8BD89 EFAE
+EFAF EFAF E988BF EFAF
+EFB0 EFB0 E98A93 EFB0
+EFB1 EFB1 E98CA2 EFB1
+EFB2 EFB2 E990AB EFB2
+EFB3 EFB3 E99BBB EFB3
+EFB4 EFB4 E9A19A EFB4
+EFB5 EFB5 E9A1AB EFB5
+EFB6 EFB6 E9A49E EFB6
+EFB7 EFB7 E58887 EFB7
+EFB8 EFB8 E688AA EFB8
+EFB9 EFB9 E68A98 EFB9
+EFBA EFBA E6B599 EFBA
+EFBB EFBB E799A4 EFBB
+EFBC EFBC E7AB8A EFBC
+EFBD EFBD E7AF80 EFBD
+EFBE EFBE E7B5B6 EFBE
+EFBF EFBF E58DA0 EFBF
+EFC0 EFC0 E5B2BE EFC0
+EFC1 EFC1 E5BA97 EFC1
+EFC2 EFC2 E6BCB8 EFC2
+EFC3 EFC3 E782B9 EFC3
+EFC4 EFC4 E7B298 EFC4
+EFC5 EFC5 E99C91 EFC5
+EFC6 EFC6 E9AE8E EFC6
+EFC7 EFC7 E9BB9E EFC7
+EFC8 EFC8 E68EA5 EFC8
+EFC9 EFC9 E691BA EFC9
+EFCA EFCA E89DB6 EFCA
+EFCB EFCB E4B881 EFCB
+EFCC EFCC E4BA95 EFCC
+EFCD EFCD E4BAAD EFCD
+EFCE EFCE E5819C EFCE
+EFCF EFCF E581B5 EFCF
+EFD0 EFD0 E59188 EFD0
+EFD1 EFD1 E5A783 EFD1
+EFD2 EFD2 E5AE9A EFD2
+EFD3 EFD3 E5B980 EFD3
+EFD4 EFD4 E5BAAD EFD4
+EFD5 EFD5 E5BBB7 EFD5
+EFD6 EFD6 E5BE81 EFD6
+EFD7 EFD7 E68385 EFD7
+EFD8 EFD8 E68CBA EFD8
+EFD9 EFD9 E694BF EFD9
+EFDA EFDA E695B4 EFDA
+EFDB EFDB E6978C EFDB
+EFDC EFDC E699B6 EFDC
+EFDD EFDD E699B8 EFDD
+EFDE EFDE E69FBE EFDE
+EFDF EFDF E6A5A8 EFDF
+EFE0 EFE0 E6AA89 EFE0
+EFE1 EFE1 E6ADA3 EFE1
+EFE2 EFE2 E6B180 EFE2
+EFE3 EFE3 E6B780 EFE3
+EFE4 EFE4 E6B7A8 EFE4
+EFE5 EFE5 E6B89F EFE5
+EFE6 EFE6 E6B99E EFE6
+EFE7 EFE7 E7809E EFE7
+EFE8 EFE8 E782A1 EFE8
+EFE9 EFE9 E78E8E EFE9
+EFEA EFEA E78FBD EFEA
+EFEB EFEB E794BA EFEB
+EFEC EFEC E79D9B EFEC
+EFED EFED E7A287 EFED
+EFEE EFEE E7A68E EFEE
+EFEF EFEF E7A88B EFEF
+EFF0 EFF0 E7A9BD EFF0
+EFF1 EFF1 E7B2BE EFF1
+EFF2 EFF2 E7B68E EFF2
+EFF3 EFF3 E88987 EFF3
+EFF4 EFF4 E8A882 EFF4
+EFF5 EFF5 E8ABAA EFF5
+EFF6 EFF6 E8B29E EFF6
+EFF7 EFF7 E984AD EFF7
+EFF8 EFF8 E9858A EFF8
+EFF9 EFF9 E98798 EFF9
+EFFA EFFA E989A6 EFFA
+EFFB EFFB E98B8C EFFB
+EFFC EFFC E98CA0 EFFC
+EFFD EFFD E99C86 EFFD
+EFFE EFFE E99D96 EFFE
+F0A1 F0A1 E99D9C F0A1
+F0A2 F0A2 E9A082 F0A2
+F0A3 F0A3 E9BC8E F0A3
+F0A4 F0A4 E588B6 F0A4
+F0A5 F0A5 E58A91 F0A5
+F0A6 F0A6 E595BC F0A6
+F0A7 F0A7 E5A0A4 F0A7
+F0A8 F0A8 E5B89D F0A8
+F0A9 F0A9 E5BC9F F0A9
+F0AA F0AA E6828C F0AA
+F0AB F0AB E68F90 F0AB
+F0AC F0AC E6A2AF F0AC
+F0AD F0AD E6BF9F F0AD
+F0AE F0AE E7A5AD F0AE
+F0AF F0AF E7ACAC F0AF
+F0B0 F0B0 E8878D F0B0
+F0B1 F0B1 E896BA F0B1
+F0B2 F0B2 E8A3BD F0B2
+F0B3 F0B3 E8ABB8 F0B3
+F0B4 F0B4 E8B984 F0B4
+F0B5 F0B5 E9868D F0B5
+F0B6 F0B6 E999A4 F0B6
+F0B7 F0B7 E99A9B F0B7
+F0B8 F0B8 E99CBD F0B8
+F0B9 F0B9 E9A18C F0B9
+F0BA F0BA E9BD8A F0BA
+F0BB F0BB E4BF8E F0BB
+F0BC F0BC E58586 F0BC
+F0BD F0BD E5878B F0BD
+F0BE F0BE E58AA9 F0BE
+F0BF F0BF E598B2 F0BF
+F0C0 F0C0 E5BC94 F0C0
+F0C1 F0C1 E5BDAB F0C1
+F0C2 F0C2 E68EAA F0C2
+F0C3 F0C3 E6938D F0C3
+F0C4 F0C4 E697A9 F0C4
+F0C5 F0C5 E69981 F0C5
+F0C6 F0C6 E69BBA F0C6
+F0C7 F0C7 E69BB9 F0C7
+F0C8 F0C8 E69C9D F0C8
+F0C9 F0C9 E6A29D F0C9
+F0CA F0CA E6A397 F0CA
+F0CB F0CB E6A7BD F0CB
+F0CC F0CC E6BC95 F0CC
+F0CD F0CD E6BDAE F0CD
+F0CE F0CE E785A7 F0CE
+F0CF F0CF E787A5 F0CF
+F0D0 F0D0 E788AA F0D0
+F0D1 F0D1 E792AA F0D1
+F0D2 F0D2 E79CBA F0D2
+F0D3 F0D3 E7A596 F0D3
+F0D4 F0D4 E7A59A F0D4
+F0D5 F0D5 E7A79F F0D5
+F0D6 F0D6 E7A8A0 F0D6
+F0D7 F0D7 E7AA95 F0D7
+F0D8 F0D8 E7B297 F0D8
+F0D9 F0D9 E7B39F F0D9
+F0DA F0DA E7B584 F0DA
+F0DB F0DB E7B9B0 F0DB
+F0DC F0DC E88287 F0DC
+F0DD F0DD E897BB F0DD
+F0DE F0DE E89AA4 F0DE
+F0DF F0DF E8A994 F0DF
+F0E0 F0E0 E8AABF F0E0
+F0E1 F0E1 E8B699 F0E1
+F0E2 F0E2 E8BA81 F0E2
+F0E3 F0E3 E980A0 F0E3
+F0E4 F0E4 E981AD F0E4
+F0E5 F0E5 E987A3 F0E5
+F0E6 F0E6 E998BB F0E6
+F0E7 F0E7 E99B95 F0E7
+F0E8 F0E8 E9B3A5 F0E8
+F0E9 F0E9 E6978F F0E9
+F0EA F0EA E7B087 F0EA
+F0EB F0EB E8B6B3 F0EB
+F0EC F0EC E98F83 F0EC
+F0ED F0ED E5AD98 F0ED
+F0EE F0EE E5B08A F0EE
+F0EF F0EF E58D92 F0EF
+F0F0 F0F0 E68B99 F0F0
+F0F1 F0F1 E78C9D F0F1
+F0F2 F0F2 E580A7 F0F2
+F0F3 F0F3 E5AE97 F0F3
+F0F4 F0F4 E5BE9E F0F4
+F0F5 F0F5 E682B0 F0F5
+F0F6 F0F6 E685AB F0F6
+F0F7 F0F7 E6A395 F0F7
+F0F8 F0F8 E6B799 F0F8
+F0F9 F0F9 E790AE F0F9
+F0FA F0FA E7A8AE F0FA
+F0FB F0FB E7B582 F0FB
+F0FC F0FC E7B69C F0FC
+F0FD F0FD E7B8B1 F0FD
+F0FE F0FE E885AB F0FE
+F1A1 F1A1 E8B8AA F1A1
+F1A2 F1A2 E8B8B5 F1A2
+F1A3 F1A3 E98DBE F1A3
+F1A4 F1A4 E99098 F1A4
+F1A5 F1A5 E4BD90 F1A5
+F1A6 F1A6 E59D90 F1A6
+F1A7 F1A7 E5B7A6 F1A7
+F1A8 F1A8 E5BAA7 F1A8
+F1A9 F1A9 E68CAB F1A9
+F1AA F1AA E7BDAA F1AA
+F1AB F1AB E4B8BB F1AB
+F1AC F1AC E4BD8F F1AC
+F1AD F1AD E4BE8F F1AD
+F1AE F1AE E5819A F1AE
+F1AF F1AF E5A79D F1AF
+F1B0 F1B0 E88384 F1B0
+F1B1 F1B1 E591AA F1B1
+F1B2 F1B2 E591A8 F1B2
+F1B3 F1B3 E597BE F1B3
+F1B4 F1B4 E5A58F F1B4
+F1B5 F1B5 E5AE99 F1B5
+F1B6 F1B6 E5B79E F1B6
+F1B7 F1B7 E5BB9A F1B7
+F1B8 F1B8 E6999D F1B8
+F1B9 F1B9 E69CB1 F1B9
+F1BA F1BA E69FB1 F1BA
+F1BB F1BB E6A0AA F1BB
+F1BC F1BC E6B3A8 F1BC
+F1BD F1BD E6B4B2 F1BD
+F1BE F1BE E6B98A F1BE
+F1BF F1BF E6BE8D F1BF
+F1C0 F1C0 E782B7 F1C0
+F1C1 F1C1 E78FA0 F1C1
+F1C2 F1C2 E79687 F1C2
+F1C3 F1C3 E7B18C F1C3
+F1C4 F1C4 E7B482 F1C4
+F1C5 F1C5 E7B4AC F1C5
+F1C6 F1C6 E7B6A2 F1C6
+F1C7 F1C7 E8889F F1C7
+F1C8 F1C8 E89B9B F1C8
+F1C9 F1C9 E8A8BB F1C9
+F1CA F1CA E8AA85 F1CA
+F1CB F1CB E8B5B0 F1CB
+F1CC F1CC E8BA8A F1CC
+F1CD F1CD E8BCB3 F1CD
+F1CE F1CE E980B1 F1CE
+F1CF F1CF E9858E F1CF
+F1D0 F1D0 E98592 F1D0
+F1D1 F1D1 E99184 F1D1
+F1D2 F1D2 E9A790 F1D2
+F1D3 F1D3 E7ABB9 F1D3
+F1D4 F1D4 E7B2A5 F1D4
+F1D5 F1D5 E4BF8A F1D5
+F1D6 F1D6 E58481 F1D6
+F1D7 F1D7 E58786 F1D7
+F1D8 F1D8 E59F88 F1D8
+F1D9 F1D9 E5AFAF F1D9
+F1DA F1DA E5B3BB F1DA
+F1DB F1DB E69999 F1DB
+F1DC F1DC E6A8BD F1DC
+F1DD F1DD E6B59A F1DD
+F1DE F1DE E6BA96 F1DE
+F1DF F1DF E6BFAC F1DF
+F1E0 F1E0 E7848C F1E0
+F1E1 F1E1 E795AF F1E1
+F1E2 F1E2 E7ABA3 F1E2
+F1E3 F1E3 E8A0A2 F1E3
+F1E4 F1E4 E980A1 F1E4
+F1E5 F1E5 E981B5 F1E5
+F1E6 F1E6 E99B8B F1E6
+F1E7 F1E7 E9A7BF F1E7
+F1E8 F1E8 E88C81 F1E8
+F1E9 F1E9 E4B8AD F1E9
+F1EA F1EA E4BBB2 F1EA
+F1EB F1EB E8A186 F1EB
+F1EC F1EC E9878D F1EC
+F1ED F1ED E58DBD F1ED
+F1EE F1EE E6AB9B F1EE
+F1EF F1EF E6A5AB F1EF
+F1F0 F1F0 E6B181 F1F0
+F1F1 F1F1 E891BA F1F1
+F1F2 F1F2 E5A29E F1F2
+F1F3 F1F3 E6868E F1F3
+F1F4 F1F4 E69BBE F1F4
+F1F5 F1F5 E68BAF F1F5
+F1F6 F1F6 E7839D F1F6
+F1F7 F1F7 E79491 F1F7
+F1F8 F1F8 E79787 F1F8
+F1F9 F1F9 E7B992 F1F9
+F1FA F1FA E892B8 F1FA
+F1FB F1FB E8AD89 F1FB
+F1FC F1FC E8B488 F1FC
+F1FD F1FD E4B98B F1FD
+F1FE F1FE E58FAA F1FE
+F2A1 F2A1 E592AB F2A1
+F2A2 F2A2 E59CB0 F2A2
+F2A3 F2A3 E59D80 F2A3
+F2A4 F2A4 E5BF97 F2A4
+F2A5 F2A5 E68C81 F2A5
+F2A6 F2A6 E68C87 F2A6
+F2A7 F2A7 E691AF F2A7
+F2A8 F2A8 E694AF F2A8
+F2A9 F2A9 E697A8 F2A9
+F2AA F2AA E699BA F2AA
+F2AB F2AB E69E9D F2AB
+F2AC F2AC E69EB3 F2AC
+F2AD F2AD E6ADA2 F2AD
+F2AE F2AE E6B1A0 F2AE
+F2AF F2AF E6B29A F2AF
+F2B0 F2B0 E6BCAC F2B0
+F2B1 F2B1 E79FA5 F2B1
+F2B2 F2B2 E7A0A5 F2B2
+F2B3 F2B3 E7A589 F2B3
+F2B4 F2B4 E7A597 F2B4
+F2B5 F2B5 E7B499 F2B5
+F2B6 F2B6 E882A2 F2B6
+F2B7 F2B7 E88482 F2B7
+F2B8 F2B8 E887B3 F2B8
+F2B9 F2B9 E88A9D F2B9
+F2BA F2BA E88AB7 F2BA
+F2BB F2BB E89C98 F2BB
+F2BC F2BC E8AA8C F2BC
+F2BD F2BD EFA7BC F2BD
+F2BE F2BE E8B484 F2BE
+F2BF F2BF E8B6BE F2BF
+F2C0 F2C0 E981B2 F2C0
+F2C1 F2C1 E79BB4 F2C1
+F2C2 F2C2 E7A899 F2C2
+F2C3 F2C3 E7A8B7 F2C3
+F2C4 F2C4 E7B994 F2C4
+F2C5 F2C5 E881B7 F2C5
+F2C6 F2C6 E59487 F2C6
+F2C7 F2C7 E59794 F2C7
+F2C8 F2C8 E5A1B5 F2C8
+F2C9 F2C9 E68CAF F2C9
+F2CA F2CA E690A2 F2CA
+F2CB F2CB E69989 F2CB
+F2CC F2CC E6998B F2CC
+F2CD F2CD E6A1AD F2CD
+F2CE F2CE E6A69B F2CE
+F2CF F2CF E6AE84 F2CF
+F2D0 F2D0 E6B4A5 F2D0
+F2D1 F2D1 E6BAB1 F2D1
+F2D2 F2D2 E78F8D F2D2
+F2D3 F2D3 E791A8 F2D3
+F2D4 F2D4 E792A1 F2D4
+F2D5 F2D5 E7959B F2D5
+F2D6 F2D6 E796B9 F2D6
+F2D7 F2D7 E79BA1 F2D7
+F2D8 F2D8 E79C9E F2D8
+F2D9 F2D9 E79E8B F2D9
+F2DA F2DA E7A7A6 F2DA
+F2DB F2DB E7B889 F2DB
+F2DC F2DC E7B89D F2DC
+F2DD F2DD E887BB F2DD
+F2DE F2DE E894AF F2DE
+F2DF F2DF E8A297 F2DF
+F2E0 F2E0 E8A8BA F2E0
+F2E1 F2E1 E8B391 F2E1
+F2E2 F2E2 E8BBAB F2E2
+F2E3 F2E3 E8BEB0 F2E3
+F2E4 F2E4 E980B2 F2E4
+F2E5 F2E5 E98EAD F2E5
+F2E6 F2E6 E999A3 F2E6
+F2E7 F2E7 E999B3 F2E7
+F2E8 F2E8 E99C87 F2E8
+F2E9 F2E9 E4BE84 F2E9
+F2EA F2EA E58FB1 F2EA
+F2EB F2EB E5A7AA F2EB
+F2EC F2EC E5AB89 F2EC
+F2ED F2ED E5B899 F2ED
+F2EE F2EE E6A18E F2EE
+F2EF F2EF E79386 F2EF
+F2F0 F2F0 E796BE F2F0
+F2F1 F2F1 E7A7A9 F2F1
+F2F2 F2F2 E7AA92 F2F2
+F2F3 F2F3 E886A3 F2F3
+F2F4 F2F4 E89BAD F2F4
+F2F5 F2F5 E8B3AA F2F5
+F2F6 F2F6 E8B78C F2F6
+F2F7 F2F7 E8BFAD F2F7
+F2F8 F2F8 E6969F F2F8
+F2F9 F2F9 E69C95 F2F9
+F2FA F2FA EFA7BD F2FA
+F2FB F2FB E59FB7 F2FB
+F2FC F2FC E6BD97 F2FC
+F2FD F2FD E7B79D F2FD
+F2FE F2FE E8BCAF F2FE
+F3A1 F3A1 E98FB6 F3A1
+F3A2 F3A2 E99B86 F3A2
+F3A3 F3A3 E5BEB5 F3A3
+F3A4 F3A4 E687B2 F3A4
+F3A5 F3A5 E6BE84 F3A5
+F3A6 F3A6 E4B894 F3A6
+F3A7 F3A7 E4BE98 F3A7
+F3A8 F3A8 E5809F F3A8
+F3A9 F3A9 E58F89 F3A9
+F3AA F3AA E5979F F3AA
+F3AB F3AB E5B5AF F3AB
+F3AC F3AC E5B7AE F3AC
+F3AD F3AD E6ACA1 F3AD
+F3AE F3AE E6ADA4 F3AE
+F3AF F3AF E7A38B F3AF
+F3B0 F3B0 E7AE9A F3B0
+F3B1 F3B1 EFA7BE F3B1
+F3B2 F3B2 E8B989 F3B2
+F3B3 F3B3 E8BB8A F3B3
+F3B4 F3B4 E981AE F3B4
+F3B5 F3B5 E68D89 F3B5
+F3B6 F3B6 E690BE F3B6
+F3B7 F3B7 E79D80 F3B7
+F3B8 F3B8 E7AA84 F3B8
+F3B9 F3B9 E98CAF F3B9
+F3BA F3BA E991BF F3BA
+F3BB F3BB E9BDAA F3BB
+F3BC F3BC E692B0 F3BC
+F3BD F3BD E6BEAF F3BD
+F3BE F3BE E787A6 F3BE
+F3BF F3BF E792A8 F3BF
+F3C0 F3C0 E7939A F3C0
+F3C1 F3C1 E7AB84 F3C1
+F3C2 F3C2 E7B092 F3C2
+F3C3 F3C3 E7BA82 F3C3
+F3C4 F3C4 E7B2B2 F3C4
+F3C5 F3C5 E7BA98 F3C5
+F3C6 F3C6 E8AE9A F3C6
+F3C7 F3C7 E8B48A F3C7
+F3C8 F3C8 E991BD F3C8
+F3C9 F3C9 E9A490 F3C9
+F3CA F3CA E9A58C F3CA
+F3CB F3CB E588B9 F3CB
+F3CC F3CC E5AF9F F3CC
+F3CD F3CD E693A6 F3CD
+F3CE F3CE E69CAD F3CE
+F3CF F3CF E7B4AE F3CF
+F3D0 F3D0 E583AD F3D0
+F3D1 F3D1 E58F83 F3D1
+F3D2 F3D2 E5A1B9 F3D2
+F3D3 F3D3 E68598 F3D3
+F3D4 F3D4 E68599 F3D4
+F3D5 F3D5 E687BA F3D5
+F3D6 F3D6 E696AC F3D6
+F3D7 F3D7 E7AB99 F3D7
+F3D8 F3D8 E8AE92 F3D8
+F3D9 F3D9 E8AE96 F3D9
+F3DA F3DA E58089 F3DA
+F3DB F3DB E580A1 F3DB
+F3DC F3DC E589B5 F3DC
+F3DD F3DD E594B1 F3DD
+F3DE F3DE E5A8BC F3DE
+F3DF F3DF E5BBA0 F3DF
+F3E0 F3E0 E5BDB0 F3E0
+F3E1 F3E1 E684B4 F3E1
+F3E2 F3E2 E6959E F3E2
+F3E3 F3E3 E6988C F3E3
+F3E4 F3E4 E698B6 F3E4
+F3E5 F3E5 E69AA2 F3E5
+F3E6 F3E6 E6A78D F3E6
+F3E7 F3E7 E6BB84 F3E7
+F3E8 F3E8 E6BCB2 F3E8
+F3E9 F3E9 E78C96 F3E9
+F3EA F3EA E798A1 F3EA
+F3EB F3EB E7AA93 F3EB
+F3EC F3EC E884B9 F3EC
+F3ED F3ED E88999 F3ED
+F3EE F3EE E88F96 F3EE
+F3EF F3EF E892BC F3EF
+F3F0 F3F0 E582B5 F3F0
+F3F1 F3F1 E59FB0 F3F1
+F3F2 F3F2 E5AF80 F3F2
+F3F3 F3F3 E5AFA8 F3F3
+F3F4 F3F4 E5BDA9 F3F4
+F3F5 F3F5 E68EA1 F3F5
+F3F6 F3F6 E7A0A6 F3F6
+F3F7 F3F7 E7B6B5 F3F7
+F3F8 F3F8 E88F9C F3F8
+F3F9 F3F9 E894A1 F3F9
+F3FA F3FA E98787 F3FA
+F3FB F3FB E987B5 F3FB
+F3FC F3FC E5868A F3FC
+F3FD F3FD E69FB5 F3FD
+F3FE F3FE E7AD96 F3FE
+F4A1 F4A1 E8B2AC F4A1
+F4A2 F4A2 E58784 F4A2
+F4A3 F4A3 E5A6BB F4A3
+F4A4 F4A4 E682BD F4A4
+F4A5 F4A5 E89995 F4A5
+F4A6 F4A6 E5809C F4A6
+F4A7 F4A7 EFA7BF F4A7
+F4A8 F4A8 E58994 F4A8
+F4A9 F4A9 E5B0BA F4A9
+F4AA F4AA E685BD F4AA
+F4AB F4AB E6889A F4AB
+F4AC F4AC E68B93 F4AC
+F4AD F4AD E693B2 F4AD
+F4AE F4AE E696A5 F4AE
+F4AF F4AF E6BB8C F4AF
+F4B0 F4B0 E798A0 F4B0
+F4B1 F4B1 E8848A F4B1
+F4B2 F4B2 E8B9A0 F4B2
+F4B3 F4B3 E9999F F4B3
+F4B4 F4B4 E99ABB F4B4
+F4B5 F4B5 E4BB9F F4B5
+F4B6 F4B6 E58D83 F4B6
+F4B7 F4B7 E59698 F4B7
+F4B8 F4B8 E5A4A9 F4B8
+F4B9 F4B9 E5B79D F4B9
+F4BA F4BA E69385 F4BA
+F4BB F4BB E6B389 F4BB
+F4BC F4BC E6B7BA F4BC
+F4BD F4BD E78E94 F4BD
+F4BE F4BE E7A9BF F4BE
+F4BF F4BF E8889B F4BF
+F4C0 F4C0 E896A6 F4C0
+F4C1 F4C1 E8B3A4 F4C1
+F4C2 F4C2 E8B890 F4C2
+F4C3 F4C3 E981B7 F4C3
+F4C4 F4C4 E987A7 F4C4
+F4C5 F4C5 E997A1 F4C5
+F4C6 F4C6 E998A1 F4C6
+F4C7 F4C7 E99F86 F4C7
+F4C8 F4C8 E587B8 F4C8
+F4C9 F4C9 E593B2 F4C9
+F4CA F4CA E59686 F4CA
+F4CB F4CB E5BEB9 F4CB
+F4CC F4CC E692A4 F4CC
+F4CD F4CD E6BE88 F4CD
+F4CE F4CE E7B6B4 F4CE
+F4CF F4CF E8BC9F F4CF
+F4D0 F4D0 E8BD8D F4D0
+F4D1 F4D1 E990B5 F4D1
+F4D2 F4D2 E58389 F4D2
+F4D3 F4D3 E5B096 F4D3
+F4D4 F4D4 E6B2BE F4D4
+F4D5 F4D5 E6B7BB F4D5
+F4D6 F4D6 E7949B F4D6
+F4D7 F4D7 E79EBB F4D7
+F4D8 F4D8 E7B0BD F4D8
+F4D9 F4D9 E7B1A4 F4D9
+F4DA F4DA E8A9B9 F4DA
+F4DB F4DB E8AB82 F4DB
+F4DC F4DC E5A09E F4DC
+F4DD F4DD E5A6BE F4DD
+F4DE F4DE E5B896 F4DE
+F4DF F4DF E68DB7 F4DF
+F4E0 F4E0 E78992 F4E0
+F4E1 F4E1 E7968A F4E1
+F4E2 F4E2 E79DAB F4E2
+F4E3 F4E3 E8AB9C F4E3
+F4E4 F4E4 E8B2BC F4E4
+F4E5 F4E5 E8BC92 F4E5
+F4E6 F4E6 E5BBB3 F4E6
+F4E7 F4E7 E699B4 F4E7
+F4E8 F4E8 E6B7B8 F4E8
+F4E9 F4E9 E881BD F4E9
+F4EA F4EA E88F81 F4EA
+F4EB F4EB E8AB8B F4EB
+F4EC F4EC E99D91 F4EC
+F4ED F4ED E9AF96 F4ED
+F4EE F4EE EFA880 F4EE
+F4EF F4EF E58983 F4EF
+F4F0 F4F0 E69BBF F4F0
+F4F1 F4F1 E6B695 F4F1
+F4F2 F4F2 E6BBAF F4F2
+F4F3 F4F3 E7B7A0 F4F3
+F4F4 F4F4 E8ABA6 F4F4
+F4F5 F4F5 E980AE F4F5
+F4F6 F4F6 E9819E F4F6
+F4F7 F4F7 E9AB94 F4F7
+F4F8 F4F8 E5889D F4F8
+F4F9 F4F9 E589BF F4F9
+F4FA F4FA E593A8 F4FA
+F4FB F4FB E68694 F4FB
+F4FC F4FC E68A84 F4FC
+F4FD F4FD E68B9B F4FD
+F4FE F4FE E6A2A2 F4FE
+F5A1 F5A1 E6A492 F5A1
+F5A2 F5A2 E6A59A F5A2
+F5A3 F5A3 E6A8B5 F5A3
+F5A4 F5A4 E78292 F5A4
+F5A5 F5A5 E784A6 F5A5
+F5A6 F5A6 E7A19D F5A6
+F5A7 F5A7 E7A481 F5A7
+F5A8 F5A8 E7A48E F5A8
+F5A9 F5A9 E7A792 F5A9
+F5AA F5AA E7A88D F5AA
+F5AB F5AB E88296 F5AB
+F5AC F5AC E889B8 F5AC
+F5AD F5AD E88B95 F5AD
+F5AE F5AE E88D89 F5AE
+F5AF F5AF E89589 F5AF
+F5B0 F5B0 E8B282 F5B0
+F5B1 F5B1 E8B685 F5B1
+F5B2 F5B2 E985A2 F5B2
+F5B3 F5B3 E9868B F5B3
+F5B4 F5B4 E986AE F5B4
+F5B5 F5B5 E4BF83 F5B5
+F5B6 F5B6 E59B91 F5B6
+F5B7 F5B7 E787AD F5B7
+F5B8 F5B8 E79F97 F5B8
+F5B9 F5B9 E89C80 F5B9
+F5BA F5BA E8A7B8 F5BA
+F5BB F5BB E5AFB8 F5BB
+F5BC F5BC E5BF96 F5BC
+F5BD F5BD E69D91 F5BD
+F5BE F5BE E982A8 F5BE
+F5BF F5BF E58FA2 F5BF
+F5C0 F5C0 E5A19A F5C0
+F5C1 F5C1 E5AFB5 F5C1
+F5C2 F5C2 E682A4 F5C2
+F5C3 F5C3 E68681 F5C3
+F5C4 F5C4 E691A0 F5C4
+F5C5 F5C5 E7B8BD F5C5
+F5C6 F5C6 E881B0 F5C6
+F5C7 F5C7 E894A5 F5C7
+F5C8 F5C8 E98A83 F5C8
+F5C9 F5C9 E692AE F5C9
+F5CA F5CA E582AC F5CA
+F5CB F5CB E5B494 F5CB
+F5CC F5CC E69C80 F5CC
+F5CD F5CD E5A29C F5CD
+F5CE F5CE E68ABD F5CE
+F5CF F5CF E68EA8 F5CF
+F5D0 F5D0 E6A48E F5D0
+F5D1 F5D1 E6A5B8 F5D1
+F5D2 F5D2 E6A89E F5D2
+F5D3 F5D3 E6B9AB F5D3
+F5D4 F5D4 E79ABA F5D4
+F5D5 F5D5 E7A78B F5D5
+F5D6 F5D6 E88ABB F5D6
+F5D7 F5D7 E890A9 F5D7
+F5D8 F5D8 E8AB8F F5D8
+F5D9 F5D9 E8B6A8 F5D9
+F5DA F5DA E8BFBD F5DA
+F5DB F5DB E98492 F5DB
+F5DC F5DC E9858B F5DC
+F5DD F5DD E9869C F5DD
+F5DE F5DE E98C90 F5DE
+F5DF F5DF E98C98 F5DF
+F5E0 F5E0 E98E9A F5E0
+F5E1 F5E1 E99B9B F5E1
+F5E2 F5E2 E9A8B6 F5E2
+F5E3 F5E3 E9B08D F5E3
+F5E4 F5E4 E4B891 F5E4
+F5E5 F5E5 E7959C F5E5
+F5E6 F5E6 E7A59D F5E6
+F5E7 F5E7 E7ABBA F5E7
+F5E8 F5E8 E7AD91 F5E8
+F5E9 F5E9 E7AF89 F5E9
+F5EA F5EA E7B8AE F5EA
+F5EB F5EB E89384 F5EB
+F5EC F5EC E8B999 F5EC
+F5ED F5ED E8B9B4 F5ED
+F5EE F5EE E8BBB8 F5EE
+F5EF F5EF E98090 F5EF
+F5F0 F5F0 E698A5 F5F0
+F5F1 F5F1 E6A4BF F5F1
+F5F2 F5F2 E79183 F5F2
+F5F3 F5F3 E587BA F5F3
+F5F4 F5F4 E69CAE F5F4
+F5F5 F5F5 E9BB9C F5F5
+F5F6 F5F6 E58585 F5F6
+F5F7 F5F7 E5BFA0 F5F7
+F5F8 F5F8 E6B296 F5F8
+F5F9 F5F9 E89FB2 F5F9
+F5FA F5FA E8A19D F5FA
+F5FB F5FB E8A1B7 F5FB
+F5FC F5FC E682B4 F5FC
+F5FD F5FD E886B5 F5FD
+F5FE F5FE E89083 F5FE
+F6A1 F6A1 E8B485 F6A1
+F6A2 F6A2 E58F96 F6A2
+F6A3 F6A3 E590B9 F6A3
+F6A4 F6A4 E598B4 F6A4
+F6A5 F6A5 E5A8B6 F6A5
+F6A6 F6A6 E5B0B1 F6A6
+F6A7 F6A7 E7828A F6A7
+F6A8 F6A8 E7BFA0 F6A8
+F6A9 F6A9 E8819A F6A9
+F6AA F6AA E88486 F6AA
+F6AB F6AB E887AD F6AB
+F6AC F6AC E8B6A3 F6AC
+F6AD F6AD E98689 F6AD
+F6AE F6AE E9A99F F6AE
+F6AF F6AF E9B7B2 F6AF
+F6B0 F6B0 E581B4 F6B0
+F6B1 F6B1 E4BB84 F6B1
+F6B2 F6B2 E58EA0 F6B2
+F6B3 F6B3 E683BB F6B3
+F6B4 F6B4 E6B8AC F6B4
+F6B5 F6B5 E5B1A4 F6B5
+F6B6 F6B6 E4BE88 F6B6
+F6B7 F6B7 E580A4 F6B7
+F6B8 F6B8 E597A4 F6B8
+F6B9 F6B9 E5B399 F6B9
+F6BA F6BA E5B99F F6BA
+F6BB F6BB E681A5 F6BB
+F6BC F6BC E6A294 F6BC
+F6BD F6BD E6B2BB F6BD
+F6BE F6BE E6B784 F6BE
+F6BF F6BF E786BE F6BF
+F6C0 F6C0 E79794 F6C0
+F6C1 F6C1 E797B4 F6C1
+F6C2 F6C2 E799A1 F6C2
+F6C3 F6C3 E7A89A F6C3
+F6C4 F6C4 E7A989 F6C4
+F6C5 F6C5 E7B787 F6C5
+F6C6 F6C6 E7B7BB F6C6
+F6C7 F6C7 E7BDAE F6C7
+F6C8 F6C8 E887B4 F6C8
+F6C9 F6C9 E89AA9 F6C9
+F6CA F6CA E8BC9C F6CA
+F6CB F6CB E99B89 F6CB
+F6CC F6CC E9A6B3 F6CC
+F6CD F6CD E9BD92 F6CD
+F6CE F6CE E58987 F6CE
+F6CF F6CF E58B85 F6CF
+F6D0 F6D0 E9A3AD F6D0
+F6D1 F6D1 E8A6AA F6D1
+F6D2 F6D2 E4B883 F6D2
+F6D3 F6D3 E69F92 F6D3
+F6D4 F6D4 E6BC86 F6D4
+F6D5 F6D5 E4BEB5 F6D5
+F6D6 F6D6 E5AFA2 F6D6
+F6D7 F6D7 E69E95 F6D7
+F6D8 F6D8 E6B288 F6D8
+F6D9 F6D9 E6B5B8 F6D9
+F6DA F6DA E7909B F6DA
+F6DB F6DB E7A0A7 F6DB
+F6DC F6DC E9879D F6DC
+F6DD F6DD E98DBC F6DD
+F6DE F6DE E89F84 F6DE
+F6DF F6DF E7A7A4 F6DF
+F6E0 F6E0 E7A8B1 F6E0
+F6E1 F6E1 E5BFAB F6E1
+F6E2 F6E2 E4BB96 F6E2
+F6E3 F6E3 E592A4 F6E3
+F6E4 F6E4 E594BE F6E4
+F6E5 F6E5 E5A2AE F6E5
+F6E6 F6E6 E5A6A5 F6E6
+F6E7 F6E7 E683B0 F6E7
+F6E8 F6E8 E68993 F6E8
+F6E9 F6E9 E68B96 F6E9
+F6EA F6EA E69CB6 F6EA
+F6EB F6EB E6A595 F6EB
+F6EC F6EC E888B5 F6EC
+F6ED F6ED E99980 F6ED
+F6EE F6EE E9A6B1 F6EE
+F6EF F6EF E9A79D F6EF
+F6F0 F6F0 E580AC F6F0
+F6F1 F6F1 E58D93 F6F1
+F6F2 F6F2 E59584 F6F2
+F6F3 F6F3 E59DBC F6F3
+F6F4 F6F4 EFA881 F6F4
+F6F5 F6F5 E68998 F6F5
+F6F6 F6F6 EFA882 F6F6
+F6F7 F6F7 E693A2 F6F7
+F6F8 F6F8 E699AB F6F8
+F6F9 F6F9 E69F9D F6F9
+F6FA F6FA E6BF81 F6FA
+F6FB F6FB E6BFAF F6FB
+F6FC F6FC E790A2 F6FC
+F6FD F6FD E790B8 F6FD
+F6FE F6FE E8A897 F6FE
+F7A1 F7A1 E990B8 F7A1
+F7A2 F7A2 E59191 F7A2
+F7A3 F7A3 E59886 F7A3
+F7A4 F7A4 E59DA6 F7A4
+F7A5 F7A5 E5BD88 F7A5
+F7A6 F7A6 E6869A F7A6
+F7A7 F7A7 E6AD8E F7A7
+F7A8 F7A8 E78198 F7A8
+F7A9 F7A9 E782AD F7A9
+F7AA F7AA E7B6BB F7AA
+F7AB F7AB E8AA95 F7AB
+F7AC F7AC E5A5AA F7AC
+F7AD F7AD E884AB F7AD
+F7AE F7AE E68EA2 F7AE
+F7AF F7AF E79C88 F7AF
+F7B0 F7B0 E880BD F7B0
+F7B1 F7B1 E8B2AA F7B1
+F7B2 F7B2 E5A194 F7B2
+F7B3 F7B3 E690AD F7B3
+F7B4 F7B4 E6A6BB F7B4
+F7B5 F7B5 E5AE95 F7B5
+F7B6 F7B6 E5B891 F7B6
+F7B7 F7B7 E6B9AF F7B7
+F7B8 F7B8 EFA883 F7B8
+F7B9 F7B9 E895A9 F7B9
+F7BA F7BA E5858C F7BA
+F7BB F7BB E58FB0 F7BB
+F7BC F7BC E5A4AA F7BC
+F7BD F7BD E680A0 F7BD
+F7BE F7BE E6858B F7BE
+F7BF F7BF E6AE86 F7BF
+F7C0 F7C0 E6B1B0 F7C0
+F7C1 F7C1 E6B3B0 F7C1
+F7C2 F7C2 E7AC9E F7C2
+F7C3 F7C3 E8838E F7C3
+F7C4 F7C4 E88B94 F7C4
+F7C5 F7C5 E8B786 F7C5
+F7C6 F7C6 E982B0 F7C6
+F7C7 F7C7 E9A2B1 F7C7
+F7C8 F7C8 EFA884 F7C8
+F7C9 F7C9 E69387 F7C9
+F7CA F7CA E6BEA4 F7CA
+F7CB F7CB E69291 F7CB
+F7CC F7CC E69484 F7CC
+F7CD F7CD E5858E F7CD
+F7CE F7CE E59090 F7CE
+F7CF F7CF E59C9F F7CF
+F7D0 F7D0 E8A88E F7D0
+F7D1 F7D1 E6859F F7D1
+F7D2 F7D2 E6A1B6 F7D2
+F7D3 F7D3 EFA885 F7D3
+F7D4 F7D4 E7979B F7D4
+F7D5 F7D5 E7AD92 F7D5
+F7D6 F7D6 E7B5B1 F7D6
+F7D7 F7D7 E9809A F7D7
+F7D8 F7D8 E5A086 F7D8
+F7D9 F7D9 E6A78C F7D9
+F7DA F7DA E885BF F7DA
+F7DB F7DB E8A4AA F7DB
+F7DC F7DC E98080 F7DC
+F7DD F7DD E9A0B9 F7DD
+F7DE F7DE E581B8 F7DE
+F7DF F7DF E5A597 F7DF
+F7E0 F7E0 E5A6AC F7E0
+F7E1 F7E1 E68A95 F7E1
+F7E2 F7E2 E9808F F7E2
+F7E3 F7E3 E9ACAA F7E3
+F7E4 F7E4 E6859D F7E4
+F7E5 F7E5 E789B9 F7E5
+F7E6 F7E6 E99796 F7E6
+F7E7 F7E7 E59DA1 F7E7
+F7E8 F7E8 E5A986 F7E8
+F7E9 F7E9 E5B7B4 F7E9
+F7EA F7EA E68A8A F7EA
+F7EB F7EB E692AD F7EB
+F7EC F7EC E693BA F7EC
+F7ED F7ED E69DB7 F7ED
+F7EE F7EE E6B3A2 F7EE
+F7EF F7EF E6B4BE F7EF
+F7F0 F7F0 E788AC F7F0
+F7F1 F7F1 E790B6 F7F1
+F7F2 F7F2 E7A0B4 F7F2
+F7F3 F7F3 E7BDB7 F7F3
+F7F4 F7F4 E88AAD F7F4
+F7F5 F7F5 E8B79B F7F5
+F7F6 F7F6 E9A097 F7F6
+F7F7 F7F7 E588A4 F7F7
+F7F8 F7F8 E59D82 F7F8
+F7F9 F7F9 E69DBF F7F9
+F7FA F7FA E78988 F7FA
+F7FB F7FB E793A3 F7FB
+F7FC F7FC E8B2A9 F7FC
+F7FD F7FD E8BEA6 F7FD
+F7FE F7FE E98891 F7FE
+F8A1 F8A1 E998AA F8A1
+F8A2 F8A2 E585AB F8A2
+F8A3 F8A3 E58FAD F8A3
+F8A4 F8A4 E68D8C F8A4
+F8A5 F8A5 E4BDA9 F8A5
+F8A6 F8A6 E59484 F8A6
+F8A7 F8A7 E68296 F8A7
+F8A8 F8A8 E69597 F8A8
+F8A9 F8A9 E6B29B F8A9
+F8AA F8AA E6B5BF F8AA
+F8AB F8AB E7898C F8AB
+F8AC F8AC E78BBD F8AC
+F8AD F8AD E7A897 F8AD
+F8AE F8AE E8A687 F8AE
+F8AF F8AF E8B29D F8AF
+F8B0 F8B0 E5BDAD F8B0
+F8B1 F8B1 E6BE8E F8B1
+F8B2 F8B2 E783B9 F8B2
+F8B3 F8B3 E886A8 F8B3
+F8B4 F8B4 E6848E F8B4
+F8B5 F8B5 E4BEBF F8B5
+F8B6 F8B6 E5818F F8B6
+F8B7 F8B7 E68981 F8B7
+F8B8 F8B8 E78987 F8B8
+F8B9 F8B9 E7AF87 F8B9
+F8BA F8BA E7B7A8 F8BA
+F8BB F8BB E7BFA9 F8BB
+F8BC F8BC E9818D F8BC
+F8BD F8BD E99EAD F8BD
+F8BE F8BE E9A899 F8BE
+F8BF F8BF E8B2B6 F8BF
+F8C0 F8C0 E59DAA F8C0
+F8C1 F8C1 E5B9B3 F8C1
+F8C2 F8C2 E69EB0 F8C2
+F8C3 F8C3 E8908D F8C3
+F8C4 F8C4 E8A995 F8C4
+F8C5 F8C5 E590A0 F8C5
+F8C6 F8C6 E5AC96 F8C6
+F8C7 F8C7 E5B9A3 F8C7
+F8C8 F8C8 E5BBA2 F8C8
+F8C9 F8C9 E5BC8A F8C9
+F8CA F8CA E69683 F8CA
+F8CB F8CB E882BA F8CB
+F8CC F8CC E894BD F8CC
+F8CD F8CD E99689 F8CD
+F8CE F8CE E9999B F8CE
+F8CF F8CF E4BD88 F8CF
+F8D0 F8D0 E58C85 F8D0
+F8D1 F8D1 E58C8D F8D1
+F8D2 F8D2 E58C8F F8D2
+F8D3 F8D3 E59286 F8D3
+F8D4 F8D4 E593BA F8D4
+F8D5 F8D5 E59C83 F8D5
+F8D6 F8D6 E5B883 F8D6
+F8D7 F8D7 E68096 F8D7
+F8D8 F8D8 E68A9B F8D8
+F8D9 F8D9 E68AB1 F8D9
+F8DA F8DA E68D95 F8DA
+F8DB F8DB EFA886 F8DB
+F8DC F8DC E6B3A1 F8DC
+F8DD F8DD E6B5A6 F8DD
+F8DE F8DE E796B1 F8DE
+F8DF F8DF E7A0B2 F8DF
+F8E0 F8E0 E8839E F8E0
+F8E1 F8E1 E884AF F8E1
+F8E2 F8E2 E88B9E F8E2
+F8E3 F8E3 E891A1 F8E3
+F8E4 F8E4 E892B2 F8E4
+F8E5 F8E5 E8A28D F8E5
+F8E6 F8E6 E8A492 F8E6
+F8E7 F8E7 E9808B F8E7
+F8E8 F8E8 E98BAA F8E8
+F8E9 F8E9 E9A3BD F8E9
+F8EA F8EA E9AE91 F8EA
+F8EB F8EB E5B985 F8EB
+F8EC F8EC E69AB4 F8EC
+F8ED F8ED E69B9D F8ED
+F8EE F8EE E78091 F8EE
+F8EF F8EF E78886 F8EF
+F8F0 F8F0 EFA887 F8F0
+F8F1 F8F1 E4BFB5 F8F1
+F8F2 F8F2 E589BD F8F2
+F8F3 F8F3 E5BDAA F8F3
+F8F4 F8F4 E68593 F8F4
+F8F5 F8F5 E69D93 F8F5
+F8F6 F8F6 E6A899 F8F6
+F8F7 F8F7 E6BC82 F8F7
+F8F8 F8F8 E793A2 F8F8
+F8F9 F8F9 E7A5A8 F8F9
+F8FA F8FA E8A1A8 F8FA
+F8FB F8FB E8B1B9 F8FB
+F8FC F8FC E9A387 F8FC
+F8FD F8FD E9A384 F8FD
+F8FE F8FE E9A983 F8FE
+F9A1 F9A1 E59381 F9A1
+F9A2 F9A2 E7A89F F9A2
+F9A3 F9A3 E6A593 F9A3
+F9A4 F9A4 E8ABB7 F9A4
+F9A5 F9A5 E8B18A F9A5
+F9A6 F9A6 E9A2A8 F9A6
+F9A7 F9A7 E9A6AE F9A7
+F9A8 F9A8 E5BDBC F9A8
+F9A9 F9A9 E68AAB F9A9
+F9AA F9AA E796B2 F9AA
+F9AB F9AB E79AAE F9AB
+F9AC F9AC E8A2AB F9AC
+F9AD F9AD E981BF F9AD
+F9AE F9AE E99982 F9AE
+F9AF F9AF E58CB9 F9AF
+F9B0 F9B0 E5BCBC F9B0
+F9B1 F9B1 E5BF85 F9B1
+F9B2 F9B2 E6B38C F9B2
+F9B3 F9B3 E78F8C F9B3
+F9B4 F9B4 E795A2 F9B4
+F9B5 F9B5 E7968B F9B5
+F9B6 F9B6 E7AD86 F9B6
+F9B7 F9B7 E88BBE F9B7
+F9B8 F9B8 E9A69D F9B8
+F9B9 F9B9 E4B98F F9B9
+F9BA F9BA E980BC F9BA
+F9BB F9BB E4B88B F9BB
+F9BC F9BC E4BD95 F9BC
+F9BD F9BD E58EA6 F9BD
+F9BE F9BE E5A48F F9BE
+F9BF F9BF E5BB88 F9BF
+F9C0 F9C0 E698B0 F9C0
+F9C1 F9C1 E6B2B3 F9C1
+F9C2 F9C2 E79195 F9C2
+F9C3 F9C3 E88DB7 F9C3
+F9C4 F9C4 E89DA6 F9C4
+F9C5 F9C5 E8B380 F9C5
+F9C6 F9C6 E98190 F9C6
+F9C7 F9C7 E99C9E F9C7
+F9C8 F9C8 E9B095 F9C8
+F9C9 F9C9 E5A391 F9C9
+F9CA F9CA E5ADB8 F9CA
+F9CB F9CB E89990 F9CB
+F9CC F9CC E8AC94 F9CC
+F9CD F9CD E9B6B4 F9CD
+F9CE F9CE E5AF92 F9CE
+F9CF F9CF E681A8 F9CF
+F9D0 F9D0 E6828D F9D0
+F9D1 F9D1 E697B1 F9D1
+F9D2 F9D2 E6B197 F9D2
+F9D3 F9D3 E6BCA2 F9D3
+F9D4 F9D4 E6BEA3 F9D4
+F9D5 F9D5 E7809A F9D5
+F9D6 F9D6 E7BD95 F9D6
+F9D7 F9D7 E7BFB0 F9D7
+F9D8 F9D8 E99691 F9D8
+F9D9 F9D9 E99692 F9D9
+F9DA F9DA E99990 F9DA
+F9DB F9DB E99F93 F9DB
+F9DC F9DC E589B2 F9DC
+F9DD F9DD E8BD84 F9DD
+F9DE F9DE E587BD F9DE
+F9DF F9DF E590AB F9DF
+F9E0 F9E0 E592B8 F9E0
+F9E1 F9E1 E595A3 F9E1
+F9E2 F9E2 E5968A F9E2
+F9E3 F9E3 E6AABB F9E3
+F9E4 F9E4 E6B6B5 F9E4
+F9E5 F9E5 E7B798 F9E5
+F9E6 F9E6 E889A6 F9E6
+F9E7 F9E7 E98A9C F9E7
+F9E8 F9E8 E999B7 F9E8
+F9E9 F9E9 E9B9B9 F9E9
+F9EA F9EA E59088 F9EA
+F9EB F9EB E59388 F9EB
+F9EC F9EC E79B92 F9EC
+F9ED F9ED E89BA4 F9ED
+F9EE F9EE E996A4 F9EE
+F9EF F9EF E99794 F9EF
+F9F0 F9F0 E9999C F9F0
+F9F1 F9F1 E4BAA2 F9F1
+F9F2 F9F2 E4BC89 F9F2
+F9F3 F9F3 E5A7AE F9F3
+F9F4 F9F4 E5ABA6 F9F4
+F9F5 F9F5 E5B7B7 F9F5
+F9F6 F9F6 E68192 F9F6
+F9F7 F9F7 E68A97 F9F7
+F9F8 F9F8 E69DAD F9F8
+F9F9 F9F9 E6A181 F9F9
+F9FA F9FA E6B286 F9FA
+F9FB F9FB E6B8AF F9FB
+F9FC F9FC E7BCB8 F9FC
+F9FD F9FD E8829B F9FD
+F9FE F9FE E888AA F9FE
+FAA1 FAA1 EFA888 FAA1
+FAA2 FAA2 EFA889 FAA2
+FAA3 FAA3 E9A085 FAA3
+FAA4 FAA4 E4BAA5 FAA4
+FAA5 FAA5 E58195 FAA5
+FAA6 FAA6 E592B3 FAA6
+FAA7 FAA7 E59E93 FAA7
+FAA8 FAA8 E5A59A FAA8
+FAA9 FAA9 E5ADA9 FAA9
+FAAA FAAA E5AEB3 FAAA
+FAAB FAAB E68788 FAAB
+FAAC FAAC E6A5B7 FAAC
+FAAD FAAD E6B5B7 FAAD
+FAAE FAAE E780A3 FAAE
+FAAF FAAF E89FB9 FAAF
+FAB0 FAB0 E8A7A3 FAB0
+FAB1 FAB1 E8A9B2 FAB1
+FAB2 FAB2 E8ABA7 FAB2
+FAB3 FAB3 E98282 FAB3
+FAB4 FAB4 E9A7AD FAB4
+FAB5 FAB5 E9AAB8 FAB5
+FAB6 FAB6 E58ABE FAB6
+FAB7 FAB7 E6A0B8 FAB7
+FAB8 FAB8 E58096 FAB8
+FAB9 FAB9 E5B9B8 FAB9
+FABA FABA E69D8F FABA
+FABB FABB E88D87 FABB
+FABC FABC E8A18C FABC
+FABD FABD E4BAAB FABD
+FABE FABE E59091 FABE
+FABF FABF E59AAE FABF
+FAC0 FAC0 E78FA6 FAC0
+FAC1 FAC1 E98495 FAC1
+FAC2 FAC2 E99FBF FAC2
+FAC3 FAC3 E9A489 FAC3
+FAC4 FAC4 E9A597 FAC4
+FAC5 FAC5 E9A699 FAC5
+FAC6 FAC6 E59993 FAC6
+FAC7 FAC7 E5A29F FAC7
+FAC8 FAC8 E8999B FAC8
+FAC9 FAC9 E8A8B1 FAC9
+FACA FACA E686B2 FACA
+FACB FACB E6ABB6 FACB
+FACC FACC E78DBB FACC
+FACD FACD E8BB92 FACD
+FACE FACE E6AD87 FACE
+FACF FACF E99AAA FACF
+FAD0 FAD0 E9A997 FAD0
+FAD1 FAD1 E5A595 FAD1
+FAD2 FAD2 E78880 FAD2
+FAD3 FAD3 E8B5AB FAD3
+FAD4 FAD4 E99DA9 FAD4
+FAD5 FAD5 E4BF94 FAD5
+FAD6 FAD6 E5B3B4 FAD6
+FAD7 FAD7 E5BCA6 FAD7
+FAD8 FAD8 E687B8 FAD8
+FAD9 FAD9 E6999B FAD9
+FADA FADA E6B3AB FADA
+FADB FADB E782AB FADB
+FADC FADC E78E84 FADC
+FADD FADD E78EB9 FADD
+FADE FADE E78FBE FADE
+FADF FADF E79CA9 FADF
+FAE0 FAE0 E79D8D FAE0
+FAE1 FAE1 E7B583 FAE1
+FAE2 FAE2 E7B5A2 FAE2
+FAE3 FAE3 E7B8A3 FAE3
+FAE4 FAE4 E888B7 FAE4
+FAE5 FAE5 E8A192 FAE5
+FAE6 FAE6 EFA88A FAE6
+FAE7 FAE7 E8B3A2 FAE7
+FAE8 FAE8 E98989 FAE8
+FAE9 FAE9 E9A1AF FAE9
+FAEA FAEA E5AD91 FAEA
+FAEB FAEB E7A9B4 FAEB
+FAEC FAEC E8A180 FAEC
+FAED FAED E9A081 FAED
+FAEE FAEE E5AB8C FAEE
+FAEF FAEF E4BFA0 FAEF
+FAF0 FAF0 E58D94 FAF0
+FAF1 FAF1 E5A4BE FAF1
+FAF2 FAF2 E5B3BD FAF2
+FAF3 FAF3 E68CBE FAF3
+FAF4 FAF4 E6B5B9 FAF4
+FAF5 FAF5 E78BB9 FAF5
+FAF6 FAF6 E88485 FAF6
+FAF7 FAF7 E88487 FAF7
+FAF8 FAF8 E88EA2 FAF8
+FAF9 FAF9 E98B8F FAF9
+FAFA FAFA E9A0B0 FAFA
+FAFB FAFB E4BAA8 FAFB
+FAFC FAFC E58584 FAFC
+FAFD FAFD E58891 FAFD
+FAFE FAFE E59E8B FAFE
+FBA1 FBA1 E5BDA2 FBA1
+FBA2 FBA2 E6B382 FBA2
+FBA3 FBA3 E6BB8E FBA3
+FBA4 FBA4 E78085 FBA4
+FBA5 FBA5 E78190 FBA5
+FBA6 FBA6 E782AF FBA6
+FBA7 FBA7 E78692 FBA7
+FBA8 FBA8 E78FA9 FBA8
+FBA9 FBA9 E791A9 FBA9
+FBAA FBAA E88D8A FBAA
+FBAB FBAB E89EA2 FBAB
+FBAC FBAC E8A1A1 FBAC
+FBAD FBAD E98088 FBAD
+FBAE FBAE E982A2 FBAE
+FBAF FBAF E98EA3 FBAF
+FBB0 FBB0 E9A6A8 FBB0
+FBB1 FBB1 E585AE FBB1
+FBB2 FBB2 E5BD97 FBB2
+FBB3 FBB3 E683A0 FBB3
+FBB4 FBB4 E685A7 FBB4
+FBB5 FBB5 E69AB3 FBB5
+FBB6 FBB6 E89599 FBB6
+FBB7 FBB7 E8B98A FBB7
+FBB8 FBB8 E986AF FBB8
+FBB9 FBB9 E99E8B FBB9
+FBBA FBBA E4B98E FBBA
+FBBB FBBB E4BA92 FBBB
+FBBC FBBC E591BC FBBC
+FBBD FBBD E5A395 FBBD
+FBBE FBBE E5A3BA FBBE
+FBBF FBBF E5A5BD FBBF
+FBC0 FBC0 E5B2B5 FBC0
+FBC1 FBC1 E5BCA7 FBC1
+FBC2 FBC2 E688B6 FBC2
+FBC3 FBC3 E68988 FBC3
+FBC4 FBC4 E6988A FBC4
+FBC5 FBC5 E699A7 FBC5
+FBC6 FBC6 E6AFAB FBC6
+FBC7 FBC7 E6B5A9 FBC7
+FBC8 FBC8 E6B78F FBC8
+FBC9 FBC9 E6B996 FBC9
+FBCA FBCA E6BBB8 FBCA
+FBCB FBCB E6BE94 FBCB
+FBCC FBCC E6BFA0 FBCC
+FBCD FBCD E6BFA9 FBCD
+FBCE FBCE E7819D FBCE
+FBCF FBCF E78B90 FBCF
+FBD0 FBD0 E790A5 FBD0
+FBD1 FBD1 E7919A FBD1
+FBD2 FBD2 E793A0 FBD2
+FBD3 FBD3 E79A93 FBD3
+FBD4 FBD4 E7A59C FBD4
+FBD5 FBD5 E7B38A FBD5
+FBD6 FBD6 E7B89E FBD6
+FBD7 FBD7 E883A1 FBD7
+FBD8 FBD8 E88AA6 FBD8
+FBD9 FBD9 E891AB FBD9
+FBDA FBDA E892BF FBDA
+FBDB FBDB E8998E FBDB
+FBDC FBDC E8999F FBDC
+FBDD FBDD E89DB4 FBDD
+FBDE FBDE E8ADB7 FBDE
+FBDF FBDF E8B1AA FBDF
+FBE0 FBE0 E98EAC FBE0
+FBE1 FBE1 E9A080 FBE1
+FBE2 FBE2 E9A1A5 FBE2
+FBE3 FBE3 E68391 FBE3
+FBE4 FBE4 E68896 FBE4
+FBE5 FBE5 E985B7 FBE5
+FBE6 FBE6 E5A99A FBE6
+FBE7 FBE7 E6988F FBE7
+FBE8 FBE8 E6B7B7 FBE8
+FBE9 FBE9 E6B8BE FBE9
+FBEA FBEA E790BF FBEA
+FBEB FBEB E9AD82 FBEB
+FBEC FBEC E5BFBD FBEC
+FBED FBED E6839A FBED
+FBEE FBEE E7AC8F FBEE
+FBEF FBEF E59384 FBEF
+FBF0 FBF0 E5BC98 FBF0
+FBF1 FBF1 E6B19E FBF1
+FBF2 FBF2 E6B393 FBF2
+FBF3 FBF3 E6B4AA FBF3
+FBF4 FBF4 E78398 FBF4
+FBF5 FBF5 E7B485 FBF5
+FBF6 FBF6 E899B9 FBF6
+FBF7 FBF7 E8A88C FBF7
+FBF8 FBF8 E9B4BB FBF8
+FBF9 FBF9 E58C96 FBF9
+FBFA FBFA E5928C FBFA
+FBFB FBFB E5AC85 FBFB
+FBFC FBFC E6A8BA FBFC
+FBFD FBFD E781AB FBFD
+FBFE FBFE E795B5 FBFE
+FCA1 FCA1 E7A68D FCA1
+FCA2 FCA2 E7A6BE FCA2
+FCA3 FCA3 E88AB1 FCA3
+FCA4 FCA4 E88FAF FCA4
+FCA5 FCA5 E8A9B1 FCA5
+FCA6 FCA6 E8AD81 FCA6
+FCA7 FCA7 E8B2A8 FCA7
+FCA8 FCA8 E99DB4 FCA8
+FCA9 FCA9 EFA88B FCA9
+FCAA FCAA E693B4 FCAA
+FCAB FCAB E694AB FCAB
+FCAC FCAC E7A2BA FCAC
+FCAD FCAD E7A2BB FCAD
+FCAE FCAE E7A9AB FCAE
+FCAF FCAF E4B8B8 FCAF
+FCB0 FCB0 E5969A FCB0
+FCB1 FCB1 E5A590 FCB1
+FCB2 FCB2 E5AEA6 FCB2
+FCB3 FCB3 E5B9BB FCB3
+FCB4 FCB4 E682A3 FCB4
+FCB5 FCB5 E68F9B FCB5
+FCB6 FCB6 E6ADA1 FCB6
+FCB7 FCB7 E699A5 FCB7
+FCB8 FCB8 E6A193 FCB8
+FCB9 FCB9 E6B899 FCB9
+FCBA FCBA E785A5 FCBA
+FCBB FCBB E792B0 FCBB
+FCBC FCBC E7B488 FCBC
+FCBD FCBD E98284 FCBD
+FCBE FCBE E9A9A9 FCBE
+FCBF FCBF E9B0A5 FCBF
+FCC0 FCC0 E6B4BB FCC0
+FCC1 FCC1 E6BB91 FCC1
+FCC2 FCC2 E78CBE FCC2
+FCC3 FCC3 E8B181 FCC3
+FCC4 FCC4 E9978A FCC4
+FCC5 FCC5 E587B0 FCC5
+FCC6 FCC6 E5B98C FCC6
+FCC7 FCC7 E5BEA8 FCC7
+FCC8 FCC8 E6818D FCC8
+FCC9 FCC9 E683B6 FCC9
+FCCA FCCA E684B0 FCCA
+FCCB FCCB E6858C FCCB
+FCCC FCCC E69983 FCCC
+FCCD FCCD E69984 FCCD
+FCCE FCCE E6A6A5 FCCE
+FCCF FCCF E6B381 FCCF
+FCD0 FCD0 E6B99F FCD0
+FCD1 FCD1 E6BB89 FCD1
+FCD2 FCD2 E6BDA2 FCD2
+FCD3 FCD3 E7858C FCD3
+FCD4 FCD4 E7929C FCD4
+FCD5 FCD5 E79A87 FCD5
+FCD6 FCD6 E7AF81 FCD6
+FCD7 FCD7 E7B0A7 FCD7
+FCD8 FCD8 E88D92 FCD8
+FCD9 FCD9 E89D97 FCD9
+FCDA FCDA E98191 FCDA
+FCDB FCDB E99A8D FCDB
+FCDC FCDC E9BB83 FCDC
+FCDD FCDD E58CAF FCDD
+FCDE FCDE E59B9E FCDE
+FCDF FCDF E5BBBB FCDF
+FCE0 FCE0 E5BE8A FCE0
+FCE1 FCE1 E681A2 FCE1
+FCE2 FCE2 E68294 FCE2
+FCE3 FCE3 E687B7 FCE3
+FCE4 FCE4 E699A6 FCE4
+FCE5 FCE5 E69C83 FCE5
+FCE6 FCE6 E6AA9C FCE6
+FCE7 FCE7 E6B7AE FCE7
+FCE8 FCE8 E6BEAE FCE8
+FCE9 FCE9 E781B0 FCE9
+FCEA FCEA E78DAA FCEA
+FCEB FCEB E7B9AA FCEB
+FCEC FCEC E886BE FCEC
+FCED FCED E88CB4 FCED
+FCEE FCEE E89B94 FCEE
+FCEF FCEF E8AAA8 FCEF
+FCF0 FCF0 E8B384 FCF0
+FCF1 FCF1 E58A83 FCF1
+FCF2 FCF2 E78DB2 FCF2
+FCF3 FCF3 E5AE96 FCF3
+FCF4 FCF4 E6A9AB FCF4
+FCF5 FCF5 E99084 FCF5
+FCF6 FCF6 E593AE FCF6
+FCF7 FCF7 E59A86 FCF7
+FCF8 FCF8 E5AD9D FCF8
+FCF9 FCF9 E69588 FCF9
+FCFA FCFA E69685 FCFA
+FCFB FCFB E69B89 FCFB
+FCFC FCFC E6A29F FCFC
+FCFD FCFD E6B68D FCFD
+FCFE FCFE E6B786 FCFE
+FDA1 FDA1 E788BB FDA1
+FDA2 FDA2 E882B4 FDA2
+FDA3 FDA3 E985B5 FDA3
+FDA4 FDA4 E9A98D FDA4
+FDA5 FDA5 E4BEAF FDA5
+FDA6 FDA6 E58099 FDA6
+FDA7 FDA7 E58E9A FDA7
+FDA8 FDA8 E5908E FDA8
+FDA9 FDA9 E590BC FDA9
+FDAA FDAA E59689 FDAA
+FDAB FDAB E59785 FDAB
+FDAC FDAC E5B8BF FDAC
+FDAD FDAD E5BE8C FDAD
+FDAE FDAE E69CBD FDAE
+FDAF FDAF E785A6 FDAF
+FDB0 FDB0 E78F9D FDB0
+FDB1 FDB1 E98085 FDB1
+FDB2 FDB2 E58B9B FDB2
+FDB3 FDB3 E58BB3 FDB3
+FDB4 FDB4 E5A1A4 FDB4
+FDB5 FDB5 E5A38E FDB5
+FDB6 FDB6 E78484 FDB6
+FDB7 FDB7 E7868F FDB7
+FDB8 FDB8 E787BB FDB8
+FDB9 FDB9 E896B0 FDB9
+FDBA FDBA E8A893 FDBA
+FDBB FDBB E69A88 FDBB
+FDBC FDBC E896A8 FDBC
+FDBD FDBD E596A7 FDBD
+FDBE FDBE E69A84 FDBE
+FDBF FDBF E7858A FDBF
+FDC0 FDC0 E890B1 FDC0
+FDC1 FDC1 E58D89 FDC1
+FDC2 FDC2 E59699 FDC2
+FDC3 FDC3 E6AF81 FDC3
+FDC4 FDC4 E5BD99 FDC4
+FDC5 FDC5 E5BEBD FDC5
+FDC6 FDC6 E68FAE FDC6
+FDC7 FDC7 E69A89 FDC7
+FDC8 FDC8 E78587 FDC8
+FDC9 FDC9 E8ABB1 FDC9
+FDCA FDCA E8BC9D FDCA
+FDCB FDCB E9BABE FDCB
+FDCC FDCC E4BC91 FDCC
+FDCD FDCD E690BA FDCD
+FDCE FDCE E7838B FDCE
+FDCF FDCF E795A6 FDCF
+FDD0 FDD0 E899A7 FDD0
+FDD1 FDD1 E681A4 FDD1
+FDD2 FDD2 E8AD8E FDD2
+FDD3 FDD3 E9B7B8 FDD3
+FDD4 FDD4 E58587 FDD4
+FDD5 FDD5 E587B6 FDD5
+FDD6 FDD6 E58C88 FDD6
+FDD7 FDD7 E6B4B6 FDD7
+FDD8 FDD8 E883B8 FDD8
+FDD9 FDD9 E9BB91 FDD9
+FDDA FDDA E69895 FDDA
+FDDB FDDB E6ACA3 FDDB
+FDDC FDDC E78298 FDDC
+FDDD FDDD E79795 FDDD
+FDDE FDDE E59083 FDDE
+FDDF FDDF E5B1B9 FDDF
+FDE0 FDE0 E7B487 FDE0
+FDE1 FDE1 E8A896 FDE1
+FDE2 FDE2 E6ACA0 FDE2
+FDE3 FDE3 E6ACBD FDE3
+FDE4 FDE4 E6AD86 FDE4
+FDE5 FDE5 E590B8 FDE5
+FDE6 FDE6 E681B0 FDE6
+FDE7 FDE7 E6B4BD FDE7
+FDE8 FDE8 E7BF95 FDE8
+FDE9 FDE9 E88888 FDE9
+FDEA FDEA E58396 FDEA
+FDEB FDEB E5879E FDEB
+FDEC FDEC E5969C FDEC
+FDED FDED E599AB FDED
+FDEE FDEE E59B8D FDEE
+FDEF FDEF E5A7AC FDEF
+FDF0 FDF0 E5AC89 FDF0
+FDF1 FDF1 E5B88C FDF1
+FDF2 FDF2 E68699 FDF2
+FDF3 FDF3 E68698 FDF3
+FDF4 FDF4 E688B1 FDF4
+FDF5 FDF5 E6999E FDF5
+FDF6 FDF6 E69BA6 FDF6
+FDF7 FDF7 E78699 FDF7
+FDF8 FDF8 E786B9 FDF8
+FDF9 FDF9 E786BA FDF9
+FDFA FDFA E78AA7 FDFA
+FDFB FDFB E7A6A7 FDFB
+FDFC FDFC E7A880 FDFC
+FDFD FDFD E7BEB2 FDFD
+FDFE FDFE E8A9B0 FDFE
+DROP TABLE t1, t2;
+End of 5.4 tests
diff --git a/mysql-test/r/ctype_filename.result b/mysql-test/r/ctype_filename.result
new file mode 100644
index 00000000000..acc32c7dedf
--- /dev/null
+++ b/mysql-test/r/ctype_filename.result
@@ -0,0 +1,13 @@
+drop table if exists con, aux, nul, lpt1, com1, `clock$`;
+create table con (a int);
+drop table con;
+create table aux (a int);
+drop table aux;
+create table nul (a int);
+drop table nul;
+create table lpt1 (a int);
+drop table lpt1;
+create table com1 (a int);
+drop table com1;
+create table `clock$` (a int);
+drop table `clock$`;
diff --git a/mysql-test/r/ctype_gb2312.result b/mysql-test/r/ctype_gb2312.result
index 85c8f71cfb5..2f789ab5b13 100644
--- a/mysql-test/r/ctype_gb2312.result
+++ b/mysql-test/r/ctype_gb2312.result
@@ -78,8 +78,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=gb2312
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
diff --git a/mysql-test/r/ctype_gbk.result b/mysql-test/r/ctype_gbk.result
index 1b425134095..c144ed6881d 100644
--- a/mysql-test/r/ctype_gbk.result
+++ b/mysql-test/r/ctype_gbk.result
@@ -78,8 +78,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=gbk
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
diff --git a/mysql-test/r/ctype_gbk_binlog.result b/mysql-test/r/ctype_gbk_binlog.result
new file mode 100644
index 00000000000..df927af9a6b
--- /dev/null
+++ b/mysql-test/r/ctype_gbk_binlog.result
@@ -0,0 +1,27 @@
+RESET MASTER;
+SET NAMES gbk;
+CREATE TABLE t1 (
+f1 BLOB
+) ENGINE=MyISAM DEFAULT CHARSET=gbk;
+CREATE PROCEDURE p1(IN val BLOB)
+BEGIN
+SET @tval = val;
+SET @sql_cmd = CONCAT_WS(' ', 'insert into t1(f1) values(?)');
+PREPARE stmt FROM @sql_cmd;
+EXECUTE stmt USING @tval;
+DEALLOCATE PREPARE stmt;
+END|
+SET @`tcontent`:=_binary 0x50434B000900000000000000E9000000 COLLATE `binary`/*!*/;
+CALL p1(@`tcontent`);
+FLUSH LOGS;
+DROP PROCEDURE p1;
+RENAME TABLE t1 to t2;
+SELECT hex(f1) FROM t2;
+hex(f1)
+50434B000900000000000000E9000000
+SELECT hex(f1) FROM t1;
+hex(f1)
+50434B000900000000000000E9000000
+DROP PROCEDURE p1;
+DROP TABLE t1;
+DROP TABLE t2;
diff --git a/mysql-test/r/ctype_latin1.result b/mysql-test/r/ctype_latin1.result
index 0c0b7f81b69..763acd0fea0 100644
--- a/mysql-test/r/ctype_latin1.result
+++ b/mysql-test/r/ctype_latin1.result
@@ -391,6 +391,20 @@ ABC ߲~ @ abc
SELECT convert(@str collate latin1_swedish_ci using utf8);
convert(@str collate latin1_swedish_ci using utf8)
ABC ߲~ @ abc
+SET NAMES latin1;
+DROP TABLE IF EXISTS `abcdef`;
+CREATE TABLE `abcdef` (i int);
+INSERT INTO `abcdef` VALUES (1);
+INSERT INTO abcdef VALUES (2);
+SELECT * FROM `abcdef`;
+i
+1
+2
+SELECT * FROM abcdef;
+i
+1
+2
+DROP TABLE `abcdef`;
select hex(cast(_ascii 0x7f as char(1) character set latin1));
hex(cast(_ascii 0x7f as char(1) character set latin1))
7F
diff --git a/mysql-test/r/ctype_latin1_de.result b/mysql-test/r/ctype_latin1_de.result
index f60dc175cd6..f826199bb1f 100644
--- a/mysql-test/r/ctype_latin1_de.result
+++ b/mysql-test/r/ctype_latin1_de.result
@@ -224,8 +224,8 @@ create table t1 (word varchar(255) not null, word2 varchar(255) not null default
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `word` varchar(255) collate latin1_german2_ci NOT NULL,
- `word2` varchar(255) collate latin1_german2_ci NOT NULL default '',
+ `word` varchar(255) COLLATE latin1_german2_ci NOT NULL,
+ `word2` varchar(255) COLLATE latin1_german2_ci NOT NULL DEFAULT '',
KEY `word` (`word`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci
insert into t1 (word) values ('ss'),(0xDF),(0xE4),('ae');
@@ -299,7 +299,7 @@ s1 CHAR(5) CHARACTER SET latin1 COLLATE latin1_german2_ci
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s1` char(5) collate latin1_german2_ci default NULL
+ `s1` char(5) COLLATE latin1_german2_ci DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci
INSERT INTO t1 VALUES ('');
INSERT INTO t1 VALUES ('ue');
@@ -326,6 +326,41 @@ latin1_german2_ci 6109
latin1_german2_ci 61
latin1_german2_ci 6120
drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+latin1_german2_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ae 6165
+ E4
+o 6F
+oe 6F65
+ F6
+s 73
+ss 7373
+ DF
+u 75
+ue 7565
+ FC
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a
+ae,
+o
+oe,
+s
+ss,
+u
+ue,
+drop table t1;
SET NAMES latin1;
CREATE TABLE t1 (
col1 varchar(255) NOT NULL default ''
diff --git a/mysql-test/r/ctype_ldml.result b/mysql-test/r/ctype_ldml.result
index f3d3ff700f0..d5585dcfad9 100644
--- a/mysql-test/r/ctype_ldml.result
+++ b/mysql-test/r/ctype_ldml.result
@@ -21,6 +21,41 @@ select * from t1 where c1='b';
c1
a
drop table t1;
+CREATE TABLE t1 (
+col1 varchar(100) character set utf8 collate utf8_test_ci
+);
+INSERT INTO t1 (col1) VALUES ('abcd'),('efgh'),('ijkl');
+ALTER TABLE t1 ADD FULLTEXT INDEX (col1);
+SELECT * FROM t1 where match (col1) against ('abcd');
+col1
+abcd
+SELECT * FROM t1 where match (col1) against ('abcd' IN BOOLEAN MODE);
+col1
+abcd
+ALTER TABLE t1 ADD (col2 varchar(100) character set latin1);
+UPDATE t1 SET col2=col1;
+SELECT * FROM t1 WHERE col1=col2 ORDER BY col1;
+col1 col2
+abcd abcd
+efgh efgh
+ijkl ijkl
+DROP TABLE t1;
+#
+# Bug#45645 Mysql server close all connection and restart using lower function
+#
+CREATE TABLE t1 (a VARCHAR(10)) CHARACTER SET utf8 COLLATE utf8_test_ci;
+INSERT INTO t1 (a) VALUES ('hello!');
+SELECT * FROM t1 WHERE LOWER(a)=LOWER('N');
+a
+DROP TABLE t1;
+#
+# Bug#43827 Server closes connections and restarts
+#
+CREATE TABLE t1 (c1 VARCHAR(10) CHARACTER SET utf8 COLLATE utf8_test_ci);
+INSERT INTO t1 SELECT REPEAT('a',11);
+Warnings:
+Warning 1265 Data truncated for column 'c1' at row 1
+DROP TABLE t1;
show collation like 'ucs2_vn_ci';
Collation Charset Id Default Compiled Sortlen
ucs2_vn_ci ucs2 242 8
@@ -294,3 +329,11 @@ Vv
Xx
YyÝýỲỳỴỵỶỷỸỹ
drop table t1;
+Bug#46448 trailing spaces are not ignored when user collation maps space != 0x20
+set names latin1;
+show collation like 'latin1_test';
+Collation Charset Id Default Compiled Sortlen
+latin1_test latin1 99 Yes 1
+select "foo" = "foo " collate latin1_test;
+"foo" = "foo " collate latin1_test
+1
diff --git a/mysql-test/r/ctype_many.result b/mysql-test/r/ctype_many.result
index 125a3fc4286..89e05bf4484 100644
--- a/mysql-test/r/ctype_many.result
+++ b/mysql-test/r/ctype_many.result
@@ -7,22 +7,22 @@ koi8_ru_f CHAR(32) CHARACTER SET koi8r NOT NULL default ''
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `comment` char(32) character set latin1 NOT NULL,
- `koi8_ru_f` char(32) character set koi8r NOT NULL default ''
+ `comment` char(32) CHARACTER SET latin1 NOT NULL,
+ `koi8_ru_f` char(32) CHARACTER SET koi8r NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin5
ALTER TABLE t1 CHANGE comment comment CHAR(32) CHARACTER SET latin2 NOT NULL;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `comment` char(32) character set latin2 NOT NULL,
- `koi8_ru_f` char(32) character set koi8r NOT NULL default ''
+ `comment` char(32) CHARACTER SET latin2 NOT NULL,
+ `koi8_ru_f` char(32) CHARACTER SET koi8r NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin5
ALTER TABLE t1 ADD latin5_f CHAR(32) NOT NULL;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `comment` char(32) character set latin2 NOT NULL,
- `koi8_ru_f` char(32) character set koi8r NOT NULL default '',
+ `comment` char(32) CHARACTER SET latin2 NOT NULL,
+ `koi8_ru_f` char(32) CHARACTER SET koi8r NOT NULL DEFAULT '',
`latin5_f` char(32) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin5
ALTER TABLE t1 DEFAULT CHARSET=latin2;
@@ -31,8 +31,8 @@ SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`comment` char(32) NOT NULL,
- `koi8_ru_f` char(32) character set koi8r NOT NULL default '',
- `latin5_f` char(32) character set latin5 NOT NULL,
+ `koi8_ru_f` char(32) CHARACTER SET koi8r NOT NULL DEFAULT '',
+ `latin5_f` char(32) CHARACTER SET latin5 NOT NULL,
`latin2_f` char(32) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin2
ALTER TABLE t1 DROP latin2_f, DROP latin5_f;
@@ -40,7 +40,7 @@ SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`comment` char(32) NOT NULL,
- `koi8_ru_f` char(32) character set koi8r NOT NULL default ''
+ `koi8_ru_f` char(32) CHARACTER SET koi8r NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin2
INSERT INTO t1 (koi8_ru_f,comment) VALUES ('a','LAT SMALL A');
INSERT INTO t1 (koi8_ru_f,comment) VALUES ('b','LAT SMALL B');
diff --git a/mysql-test/r/ctype_mb.result b/mysql-test/r/ctype_mb.result
index f6e14e1a78f..aa5b4ae8189 100644
--- a/mysql-test/r/ctype_mb.result
+++ b/mysql-test/r/ctype_mb.result
@@ -3,17 +3,17 @@ CREATE TABLE t1 SELECT _utf8'test' as c1, _utf8'тест' as c2;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` varchar(4) character set utf8 NOT NULL default '',
- `c2` varchar(4) character set utf8 NOT NULL default ''
+ `c1` varchar(4) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c2` varchar(4) CHARACTER SET utf8 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DELETE FROM t1;
ALTER TABLE t1 ADD c3 CHAR(4) CHARACTER SET utf8;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` varchar(4) character set utf8 NOT NULL default '',
- `c2` varchar(4) character set utf8 NOT NULL default '',
- `c3` char(4) character set utf8 default NULL
+ `c1` varchar(4) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c2` varchar(4) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `c3` char(4) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
INSERT INTO t1 VALUES ('aaaabbbbccccdddd','aaaabbbbccccdddd','aaaabbbbccccdddd');
Warnings:
@@ -28,7 +28,7 @@ CREATE TABLE t1 (a CHAR(4) CHARACTER SET utf8, KEY key_a(a(3)));
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(4) character set utf8 default NULL,
+ `a` char(4) CHARACTER SET utf8 DEFAULT NULL,
KEY `key_a` (`a`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW KEYS FROM t1;
@@ -38,7 +38,7 @@ ALTER TABLE t1 CHANGE a a CHAR(4);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(4) default NULL,
+ `a` char(4) DEFAULT NULL,
KEY `key_a` (`a`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW KEYS FROM t1;
@@ -48,7 +48,7 @@ ALTER TABLE t1 CHANGE a a CHAR(4) CHARACTER SET utf8;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(4) character set utf8 default NULL,
+ `a` char(4) CHARACTER SET utf8 DEFAULT NULL,
KEY `key_a` (`a`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW KEYS FROM t1;
diff --git a/mysql-test/r/ctype_recoding.result b/mysql-test/r/ctype_recoding.result
index 4d7d33933cf..ee95812c03e 100644
--- a/mysql-test/r/ctype_recoding.result
+++ b/mysql-test/r/ctype_recoding.result
@@ -6,7 +6,7 @@ CREATE TABLE t2 (a CHAR(10) CHARACTER SET utf8);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) character set cp1251 default NULL
+ `a` char(10) CHARACTER SET cp1251 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SELECT a FROM t1;
a
@@ -30,7 +30,7 @@ CREATE TABLE t2 (a TEXT CHARACTER SET utf8);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` text character set cp1251
+ `a` text CHARACTER SET cp1251
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SELECT HEX(a) FROM t1;
HEX(a)
@@ -50,7 +50,7 @@ Tables_in_test
SHOW CREATE TABLE ;
Table Create Table
CREATE TABLE `` (
- `` char(32) character set koi8r NOT NULL COMMENT ' '
+ `` char(32) CHARACTER SET koi8r NOT NULL COMMENT ' '
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT=' '
SHOW FIELDS FROM ;
Field Type Null Key Default Extra
@@ -62,7 +62,7 @@ Tables_in_test
SHOW CREATE TABLE ;
Table Create Table
CREATE TABLE `` (
- `` char(32) character set koi8r NOT NULL COMMENT ' '
+ `` char(32) CHARACTER SET koi8r NOT NULL COMMENT ' '
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT=' '
SHOW FIELDS FROM ;
Field Type Null Key Default Extra
@@ -74,7 +74,7 @@ Tables_in_test
SHOW CREATE TABLE таблица;
Table Create Table
таблица CREATE TABLE `таблица` (
- `поле` char(32) character set koi8r NOT NULL COMMENT 'комментарий поля'
+ `поле` char(32) CHARACTER SET koi8r NOT NULL COMMENT 'комментарий поля'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='комментарий таблицы'
SHOW FIELDS FROM таблица;
Field Type Null Key Default Extra
@@ -117,13 +117,13 @@ CREATE TABLE `тест` (`тест` int);
SHOW CREATE TABLE `тест`;
Table Create Table
тест CREATE TABLE `тест` (
- `тест` int(11) default NULL
+ `тест` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SET NAMES utf8;
SHOW CREATE TABLE `тест`;
Table Create Table
тест CREATE TABLE `тест` (
- `тест` int(11) default NULL
+ `тест` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE `тест`;
SET NAMES binary;
@@ -141,8 +141,8 @@ CREATE TABLE t1 (`` CHAR(128) DEFAULT '', `1` ENUM('1','2') DEFAULT '2');
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `` char(128) default '',
- `1` enum('1','2') default '2'
+ `` char(128) DEFAULT '',
+ `1` enum('1','2') DEFAULT '2'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW COLUMNS FROM t1;
Field Type Null Key Default Extra
@@ -152,8 +152,8 @@ SET NAMES binary;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `ä` char(128) default 'ä',
- `ä1` enum('ä1','ä2') default 'ä2'
+ `ä` char(128) DEFAULT 'ä',
+ `ä1` enum('ä1','ä2') DEFAULT 'ä2'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW COLUMNS FROM t1;
Field Type Null Key Default Extra
@@ -261,7 +261,7 @@ create table t1(a char character set cp1251 default _koi8r 0xFF);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(1) character set cp1251 default ''
+ `a` char(1) CHARACTER SET cp1251 DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1(a char character set latin1 default _cp1251 0xFF);
diff --git a/mysql-test/r/ctype_sjis.result b/mysql-test/r/ctype_sjis.result
index 37750120b31..1469e335f23 100644
--- a/mysql-test/r/ctype_sjis.result
+++ b/mysql-test/r/ctype_sjis.result
@@ -51,7 +51,7 @@ create table t1(c enum(0x9353,0x9373) character set sjis);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` enum('S','s') character set sjis default NULL
+ `c` enum('S','s') CHARACTER SET sjis DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values (0x9353);
insert into t1 values (0x9373);
@@ -209,3 +209,13 @@ SET NAMES sjis;
SELECT HEX('@\') FROM DUAL;
HEX('@\')
8DB2939181408C5C
+# Start of 5.1 tests
+Bug#44352 UPPER/LOWER function doesn't work correctly on cp932 and sjis environment.
+CREATE TABLE t1 (a varchar(16)) character set sjis;
+INSERT INTO t1 VALUES (0x8372835E),(0x8352835E);
+SELECT hex(a), hex(lower(a)), hex(upper(a)) FROM t1 ORDER BY binary(a);
+hex(a) hex(lower(a)) hex(upper(a))
+8352835E 8352835E 8352835E
+8372835E 8372835E 8372835E
+DROP TABLE t1;
+# End of 5.1 tests
diff --git a/mysql-test/r/ctype_tis620.result b/mysql-test/r/ctype_tis620.result
index dae694cf3d5..5699c044d70 100644
--- a/mysql-test/r/ctype_tis620.result
+++ b/mysql-test/r/ctype_tis620.result
@@ -120,9 +120,9 @@ PRIMARY KEY (recid)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `recid` int(11) NOT NULL auto_increment,
+ `recid` int(11) NOT NULL AUTO_INCREMENT,
`dyninfo` text,
- PRIMARY KEY (`recid`)
+ PRIMARY KEY (`recid`)
) ENGINE=MyISAM DEFAULT CHARSET=tis620
INSERT INTO t1 VALUES (1,'color=\"STB,NPG\"\r\nengine=\"J30A13\"\r\nframe=\"MRHCG1640YP4\"\r\ngrade=\"V6\"\r\nmodel=\"ACCORD\"\r\nmodelcode=\"CG164YEN\"\r\ntype=\"VT6\"\r\n');
INSERT INTO t1 VALUES (2,'color=\"HTM,NPG,DEG,RGS\"\r\nengine=\"F23A5YP1\"\r\nframe=\"MRHCF8640YP3\"\r\ngrade=\"EXi AT\"\r\nmodel=\"ACCORD\"\r\nmodelcode=\"CF864YE\"\r\ntype=\"EXA\"\r\n');
diff --git a/mysql-test/r/ctype_uca.result b/mysql-test/r/ctype_uca.result
index 02a5b9a0861..04727f84ff2 100644
--- a/mysql-test/r/ctype_uca.result
+++ b/mysql-test/r/ctype_uca.result
@@ -2613,8 +2613,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) collate utf8_swedish_ci default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) COLLATE utf8_swedish_ci DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_swedish_ci
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
@@ -2666,6 +2666,41 @@ select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
c2h
ab_def
drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8_unicode_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ss 7373
+ß C39F
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s
+ss,ß
+u,ü
+ue
+drop table t1;
CREATE TABLE t1 (id int, a varchar(30) character set utf8);
INSERT INTO t1 VALUES (1, _ucs2 0x01310069), (2, _ucs2 0x01310131);
INSERT INTO t1 VALUES (3, _ucs2 0x00690069), (4, _ucs2 0x01300049);
@@ -2799,8 +2834,8 @@ select null, null;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s1` varchar(64) character set ucs2 collate ucs2_unicode_ci default NULL,
- `s2` varchar(64) character set ucs2 collate ucs2_unicode_ci default NULL
+ `s1` varchar(64) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
delete from t1;
insert into t1 values('aaa','aaa');
diff --git a/mysql-test/r/ctype_ucs.result b/mysql-test/r/ctype_ucs.result
index 8c0f1a108a6..428629e7e9e 100644
--- a/mysql-test/r/ctype_ucs.result
+++ b/mysql-test/r/ctype_ucs.result
@@ -78,8 +78,8 @@ level smallint unsigned);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `name` varchar(10) default NULL,
- `level` smallint(5) unsigned default NULL
+ `name` varchar(10) DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=ucs2
insert into t1 values ('string',1);
select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
@@ -167,8 +167,8 @@ RPAD(_ucs2 X'0420',10,_ucs2 X'0421') r;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `l` varchar(10) character set ucs2 NOT NULL default '',
- `r` varchar(10) character set ucs2 NOT NULL default ''
+ `l` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT '',
+ `r` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
create table t2(f1 Char(30));
@@ -616,7 +616,7 @@ create table t1 (a enum('x','y','z') character set ucs2);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('x','y','z') character set ucs2 default NULL
+ `a` enum('x','y','z') CHARACTER SET ucs2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('x');
insert into t1 values ('y');
@@ -630,7 +630,7 @@ alter table t1 change a a enum('x','y','z','d','e','','','') character set uc
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('x','y','z','d','e','','','') character set ucs2 default NULL
+ `a` enum('x','y','z','d','e','','','') CHARACTER SET ucs2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('D');
insert into t1 values ('E ');
@@ -652,7 +652,7 @@ create table t1 (a set ('x','y','z','','','') character set ucs2);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` set('x','y','z','','','') character set ucs2 default NULL
+ `a` set('x','y','z','','','') CHARACTER SET ucs2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('x');
insert into t1 values ('y');
@@ -706,6 +706,41 @@ select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
c2h
ab_def
drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+ucs2_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 0061
+ 00E4
+ae 00610065
+o 006F
+ 00F6
+oe 006F0065
+s 0073
+ 00DF
+ss 00730073
+u 0075
+ 00FC
+ue 00750065
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,
+ae
+o,
+oe
+s,
+ss
+u,
+ue
+drop table t1;
CREATE TABLE t1 AS
SELECT 10 AS a, REPEAT('a',20) AS b, REPEAT('a',8) AS c, REPEAT('a',8) AS d;
ALTER TABLE t1 ADD PRIMARY KEY(a), ADD KEY(b);
@@ -798,7 +833,7 @@ DROP TABLE t1;
CREATE TABLE t1 (Field1 int(10) unsigned default '0');
INSERT INTO t1 VALUES ('-1');
Warnings:
-Warning 1264 Out of range value adjusted for column 'Field1' at row 1
+Warning 1264 Out of range value for column 'Field1' at row 1
DROP TABLE t1;
SET NAMES latin1;
SELECT CONVERT(103, CHAR(50) UNICODE);
@@ -911,7 +946,7 @@ NOT NULL default 'passive'
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `status` enum('active','passive') character set latin1 collate latin1_general_ci NOT NULL default 'passive'
+ `status` enum('active','passive') CHARACTER SET latin1 COLLATE latin1_general_ci NOT NULL DEFAULT 'passive'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 ADD a int NOT NULL AFTER status;
CREATE TABLE t2 (
@@ -921,7 +956,7 @@ NOT NULL default 'passive'
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `status` enum('active','passive') character set ucs2 collate ucs2_turkish_ci NOT NULL default 'passive'
+ `status` enum('active','passive') CHARACTER SET ucs2 COLLATE ucs2_turkish_ci NOT NULL DEFAULT 'passive'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t2 ADD a int NOT NULL AFTER status;
DROP TABLE t1,t2;
@@ -1063,6 +1098,17 @@ ERROR HY000: Illegal mix of collations (ascii_general_ci,IMPLICIT) and (ucs2_gen
select * from t1 where a=if(b<10,_ucs2 0x0062,_ucs2 0x00C0);
ERROR HY000: Illegal mix of collations (ascii_general_ci,IMPLICIT) and (ucs2_general_ci,COERCIBLE) for operation '='
drop table t1;
+CREATE TABLE t1 (s1 CHAR(5) CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('a');
+SET @@sql_mode=pad_char_to_full_length;
+SELECT HEX(s1) FROM t1;
+HEX(s1)
+00610020002000200020
+SET @@sql_mode=default;
+SELECT HEX(s1) FROM t1;
+HEX(s1)
+0061
+DROP TABLE t1;
set collation_connection=ucs2_general_ci;
drop table if exists t1;
create table t1 as
@@ -1072,8 +1118,8 @@ select null, null;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s1` varchar(64) character set ucs2 default NULL,
- `s2` varchar(64) character set ucs2 default NULL
+ `s1` varchar(64) CHARACTER SET ucs2 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET ucs2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
delete from t1;
insert into t1 values('aaa','aaa');
diff --git a/mysql-test/r/ctype_ucs2_def.result b/mysql-test/r/ctype_ucs2_def.result
index 1bbb354798b..005d46062fb 100644
--- a/mysql-test/r/ctype_ucs2_def.result
+++ b/mysql-test/r/ctype_ucs2_def.result
@@ -19,7 +19,7 @@ col2 VARCHAR(32) CHARACTER SET ucs2 COLLATE ucs2_bin NOT NULL,
UNIQUE KEY key1 USING HASH (col1, col2)) ENGINE=MEMORY;
INSERT INTO t1 VALUES('A', 'A'), ('B', 'B'), ('C', 'C');
INSERT INTO t1 VALUES('A ', 'A ');
-ERROR 23000: Duplicate entry '' for key 1
+ERROR 23000: Duplicate entry '' for key 'key1'
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255) CHARACTER SET UCS2 COLLATE UCS2_BIN NOT NULL,
diff --git a/mysql-test/r/ctype_ucs_binlog.result b/mysql-test/r/ctype_ucs_binlog.result
deleted file mode 100644
index 721a1ae51b7..00000000000
--- a/mysql-test/r/ctype_ucs_binlog.result
+++ /dev/null
@@ -1,27 +0,0 @@
-SET TIMESTAMP=10000;
-create table t2 (c char(30)) charset=ucs2;
-set @v=convert('abc' using ucs2);
-reset master;
-insert into t2 values (@v);
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 98 User var 1 138 @`v`=_ucs2 0x006100620063 COLLATE ucs2_general_ci
-master-bin.000001 138 Query 1 227 use `test`; insert into t2 values (@v)
-/*!40019 SET @@session.max_insert_delayed_threads=0*/;
-/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
-DELIMITER /*!*/;
-ROLLBACK/*!*/;
-SET @`v`:=_ucs2 0x006100620063 COLLATE `ucs2_general_ci`/*!*/;
-use test/*!*/;
-SET TIMESTAMP=10000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
-SET @@session.sql_mode=0/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
-insert into t2 values (@v)
-/*!*/;
-DELIMITER ;
-# End of log file
-ROLLBACK /* added by mysqlbinlog */;
-/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
-drop table t2;
diff --git a/mysql-test/r/ctype_ujis.result b/mysql-test/r/ctype_ujis.result
index 9f3346a8bbf..540ba178756 100644
--- a/mysql-test/r/ctype_ujis.result
+++ b/mysql-test/r/ctype_ujis.result
@@ -118,8 +118,8 @@ b enum('','') default NULL
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(1) NOT NULL default '',
- `b` enum('','') default NULL
+ `a` char(1) NOT NULL DEFAULT '',
+ `b` enum('','') DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=ujis
SHOW COLUMNS FROM t1;
Field Type Null Key Default Extra
@@ -132,7 +132,7 @@ a INTEGER NOT NULL,
b VARCHAR(50) NOT NULL DEFAULT '',
PRIMARY KEY (a),
KEY b (b(10))
-) TYPE=InnoDB CHARACTER SET 'ujis' COLLATE 'ujis_japanese_ci';
+) ENGINE=InnoDB CHARACTER SET 'ujis' COLLATE 'ujis_japanese_ci';
INSERT INTO t1 (a, b) VALUES (0, 'aaabbbcccddd');
INSERT INTO t1 (a, b) VALUES (1, 'eeefffggghhh');
INSERT INTO t1 (a, b) VALUES (2, 'iiijjjkkkl');
@@ -152,7 +152,7 @@ a INTEGER NOT NULL,
b VARCHAR(50) NOT NULL DEFAULT '',
PRIMARY KEY (a),
KEY b (b(10))
-) TYPE=MyISAM CHARACTER SET 'ujis' COLLATE 'ujis_japanese_ci';
+) ENGINE=MyISAM CHARACTER SET 'ujis' COLLATE 'ujis_japanese_ci';
INSERT INTO t1 (a, b) VALUES (0, 'aaabbbcccddd');
INSERT INTO t1 (a, b) VALUES (1, 'eeefffggghhh');
INSERT INTO t1 (a, b) VALUES (2, 'iiijjjkkkl');
diff --git a/mysql-test/r/ctype_ujis_ucs2.result b/mysql-test/r/ctype_ujis_ucs2.result
new file mode 100644
index 00000000000..3c63e7c0441
--- /dev/null
+++ b/mysql-test/r/ctype_ujis_ucs2.result
@@ -0,0 +1,19159 @@
+drop table if exists t1, t2;
+create table t2 (code binary(1));
+insert into t2 values (0xA1),(0xA2),(0xA3),(0xA4),(0xA5),(0xA6),(0xA7);
+insert into t2 values (0xA8),(0xA9),(0xAA),(0xAB),(0xAC),(0xAD),(0xAE),(0xAF);
+insert into t2 values (0xB0),(0xB1),(0xB2),(0xB3),(0xB4),(0xB5),(0xB6),(0xB7);
+insert into t2 values (0xB8),(0xB9),(0xBA),(0xBB),(0xBC),(0xBD),(0xBE),(0xBF);
+insert into t2 values (0xC0),(0xC1),(0xC2),(0xC3),(0xC4),(0xC5),(0xC6),(0xC7);
+insert into t2 values (0xC8),(0xC9),(0xCA),(0xCB),(0xCC),(0xCD),(0xCE),(0xCF);
+insert into t2 values (0xD0),(0xD1),(0xD2),(0xD3),(0xD4),(0xD5),(0xD6),(0xD7);
+insert into t2 values (0xD8),(0xD9),(0xDA),(0xDB),(0xDC),(0xDD),(0xDE),(0xDF);
+insert into t2 values (0xE0),(0xE1),(0xE2),(0xE3),(0xE4),(0xE5),(0xE6),(0xE7);
+insert into t2 values (0xE8),(0xE9),(0xEA),(0xEB),(0xEC),(0xED),(0xEE),(0xEF);
+insert into t2 values (0xF0),(0xF1),(0xF2),(0xF3),(0xF4),(0xF5),(0xF6),(0xF7);
+insert into t2 values (0xF8),(0xF9),(0xFA),(0xFB),(0xFC),(0xFD),(0xFE);
+create table t1
+(
+ujis varchar(1) character set ujis collate ujis_bin primary key,
+ucs2 varchar(1) character set ucs2 not null default '',
+ujis2 varchar(1) character set ujis not null default '',
+name varchar(64) character set ujis not null default ''
+);
+insert into t1 set ujis=0x00, name='U+0000 NULL';
+insert into t1 set ujis=0x01, name='U+0001 START OF HEADING';
+insert into t1 set ujis=0x02, name='U+0002 START OF TEXT';
+insert into t1 set ujis=0x03, name='U+0003 END OF TEXT';
+insert into t1 set ujis=0x04, name='U+0004 END OF TRANSMISSION';
+insert into t1 set ujis=0x05, name='U+0005 ENQUIRY';
+insert into t1 set ujis=0x06, name='U+0006 ACKNOWLEDGE';
+insert into t1 set ujis=0x07, name='U+0007 BELL';
+insert into t1 set ujis=0x08, name='U+0008 BACKSPACE';
+insert into t1 set ujis=0x09, name='U+0009 HORIZONTAL TABULATION';
+insert into t1 set ujis=0x0A, name='U+000A LINE FEED';
+insert into t1 set ujis=0x0B, name='U+000B VERTICAL TABULATION';
+insert into t1 set ujis=0x0C, name='U+000C FORM FEED';
+insert into t1 set ujis=0x0D, name='U+000D CARRIAGE RETURN';
+insert into t1 set ujis=0x0E, name='U+000E SHIFT OUT';
+insert into t1 set ujis=0x0F, name='U+000F SHIFT IN';
+insert into t1 set ujis=0x10, name='U+0010 DATA LINK ESCAPE';
+insert into t1 set ujis=0x11, name='U+0011 DEVICE CONTROL ONE';
+insert into t1 set ujis=0x12, name='U+0012 DEVICE CONTROL TWO';
+insert into t1 set ujis=0x13, name='U+0013 DEVICE CONTROL THREE';
+insert into t1 set ujis=0x14, name='U+0014 DEVICE CONTROL FOUR';
+insert into t1 set ujis=0x15, name='U+0015 NEGATIVE ACKNOWLEDGE';
+insert into t1 set ujis=0x16, name='U+0016 SYNCHRONOUS IDLE';
+insert into t1 set ujis=0x17, name='U+0017 END OF TRANSMISSION BLOCK';
+insert into t1 set ujis=0x18, name='U+0018 CANCEL';
+insert into t1 set ujis=0x19, name='U+0019 END OF MEDIUM';
+insert into t1 set ujis=0x1A, name='U+001A SUBSTITUTE';
+insert into t1 set ujis=0x1B, name='U+001B ESCAPE';
+insert into t1 set ujis=0x1C, name='U+001C FILE SEPARATOR';
+insert into t1 set ujis=0x1D, name='U+001D GROUP SEPARATOR';
+insert into t1 set ujis=0x1E, name='U+001E RECORD SEPARATOR';
+insert into t1 set ujis=0x1F, name='U+001F UNIT SEPARATOR';
+insert into t1 set ujis=0x20, name='U+0020 SPACE';
+insert into t1 set ujis=0x21, name='U+0021 EXCLAMATION MARK';
+insert into t1 set ujis=0x22, name='U+0022 QUOTATION MARK';
+insert into t1 set ujis=0x23, name='U+0023 NUMBER SIGN';
+insert into t1 set ujis=0x24, name='U+0024 DOLLAR SIGN';
+insert into t1 set ujis=0x25, name='U+0025 PERCENT SIGN';
+insert into t1 set ujis=0x26, name='U+0026 AMPERSAND';
+insert into t1 set ujis=0x27, name='U+0027 APOSTROPHE';
+insert into t1 set ujis=0x28, name='U+0028 LEFT PARENTHESIS';
+insert into t1 set ujis=0x29, name='U+0029 RIGHT PARENTHESIS';
+insert into t1 set ujis=0x2A, name='U+002A ASTERISK';
+insert into t1 set ujis=0x2B, name='U+002B PLUS SIGN';
+insert into t1 set ujis=0x2C, name='U+002C COMMA';
+insert into t1 set ujis=0x2D, name='U+002D HYPHEN-MINUS';
+insert into t1 set ujis=0x2E, name='U+002E FULL STOP';
+insert into t1 set ujis=0x2F, name='U+002F SOLIDUS';
+insert into t1 set ujis=0x30, name='U+0030 DIGIT ZERO';
+insert into t1 set ujis=0x31, name='U+0031 DIGIT ONE';
+insert into t1 set ujis=0x32, name='U+0032 DIGIT TWO';
+insert into t1 set ujis=0x33, name='U+0033 DIGIT THREE';
+insert into t1 set ujis=0x34, name='U+0034 DIGIT FOUR';
+insert into t1 set ujis=0x35, name='U+0035 DIGIT FIVE';
+insert into t1 set ujis=0x36, name='U+0036 DIGIT SIX';
+insert into t1 set ujis=0x37, name='U+0037 DIGIT SEVEN';
+insert into t1 set ujis=0x38, name='U+0038 DIGIT EIGHT';
+insert into t1 set ujis=0x39, name='U+0039 DIGIT NINE';
+insert into t1 set ujis=0x3A, name='U+003A COLON';
+insert into t1 set ujis=0x3B, name='U+003B SEMICOLON';
+insert into t1 set ujis=0x3C, name='U+003C LESS-THAN SIGN';
+insert into t1 set ujis=0x3D, name='U+003D EQUALS SIGN';
+insert into t1 set ujis=0x3E, name='U+003E GREATER-THAN SIGN';
+insert into t1 set ujis=0x3F, name='U+003F QUESTION MARK';
+insert into t1 set ujis=0x40, name='U+0040 COMMERCIAL AT';
+insert into t1 set ujis=0x41, name='U+0041 LATIN CAPITAL LETTER A';
+insert into t1 set ujis=0x42, name='U+0042 LATIN CAPITAL LETTER B';
+insert into t1 set ujis=0x43, name='U+0043 LATIN CAPITAL LETTER C';
+insert into t1 set ujis=0x44, name='U+0044 LATIN CAPITAL LETTER D';
+insert into t1 set ujis=0x45, name='U+0045 LATIN CAPITAL LETTER E';
+insert into t1 set ujis=0x46, name='U+0046 LATIN CAPITAL LETTER F';
+insert into t1 set ujis=0x47, name='U+0047 LATIN CAPITAL LETTER G';
+insert into t1 set ujis=0x48, name='U+0048 LATIN CAPITAL LETTER H';
+insert into t1 set ujis=0x49, name='U+0049 LATIN CAPITAL LETTER I';
+insert into t1 set ujis=0x4A, name='U+004A LATIN CAPITAL LETTER J';
+insert into t1 set ujis=0x4B, name='U+004B LATIN CAPITAL LETTER K';
+insert into t1 set ujis=0x4C, name='U+004C LATIN CAPITAL LETTER L';
+insert into t1 set ujis=0x4D, name='U+004D LATIN CAPITAL LETTER M';
+insert into t1 set ujis=0x4E, name='U+004E LATIN CAPITAL LETTER N';
+insert into t1 set ujis=0x4F, name='U+004F LATIN CAPITAL LETTER O';
+insert into t1 set ujis=0x50, name='U+0050 LATIN CAPITAL LETTER P';
+insert into t1 set ujis=0x51, name='U+0051 LATIN CAPITAL LETTER Q';
+insert into t1 set ujis=0x52, name='U+0052 LATIN CAPITAL LETTER R';
+insert into t1 set ujis=0x53, name='U+0053 LATIN CAPITAL LETTER S';
+insert into t1 set ujis=0x54, name='U+0054 LATIN CAPITAL LETTER T';
+insert into t1 set ujis=0x55, name='U+0055 LATIN CAPITAL LETTER U';
+insert into t1 set ujis=0x56, name='U+0056 LATIN CAPITAL LETTER V';
+insert into t1 set ujis=0x57, name='U+0057 LATIN CAPITAL LETTER W';
+insert into t1 set ujis=0x58, name='U+0058 LATIN CAPITAL LETTER X';
+insert into t1 set ujis=0x59, name='U+0059 LATIN CAPITAL LETTER Y';
+insert into t1 set ujis=0x5A, name='U+005A LATIN CAPITAL LETTER Z';
+insert into t1 set ujis=0x5B, name='U+005B LEFT SQUARE BRACKET';
+insert into t1 set ujis=0x5C, name='U+005C REVERSE SOLIDUS';
+insert into t1 set ujis=0x5D, name='U+005D RIGHT SQUARE BRACKET';
+insert into t1 set ujis=0x5E, name='U+005E CIRCUMFLEX ACCENT';
+insert into t1 set ujis=0x5F, name='U+005F LOW LINE';
+insert into t1 set ujis=0x60, name='U+0060 GRAVE ACCENT';
+insert into t1 set ujis=0x61, name='U+0061 LATIN SMALL LETTER A';
+insert into t1 set ujis=0x62, name='U+0062 LATIN SMALL LETTER B';
+insert into t1 set ujis=0x63, name='U+0063 LATIN SMALL LETTER C';
+insert into t1 set ujis=0x64, name='U+0064 LATIN SMALL LETTER D';
+insert into t1 set ujis=0x65, name='U+0065 LATIN SMALL LETTER E';
+insert into t1 set ujis=0x66, name='U+0066 LATIN SMALL LETTER F';
+insert into t1 set ujis=0x67, name='U+0067 LATIN SMALL LETTER G';
+insert into t1 set ujis=0x68, name='U+0068 LATIN SMALL LETTER H';
+insert into t1 set ujis=0x69, name='U+0069 LATIN SMALL LETTER I';
+insert into t1 set ujis=0x6A, name='U+006A LATIN SMALL LETTER J';
+insert into t1 set ujis=0x6B, name='U+006B LATIN SMALL LETTER K';
+insert into t1 set ujis=0x6C, name='U+006C LATIN SMALL LETTER L';
+insert into t1 set ujis=0x6D, name='U+006D LATIN SMALL LETTER M';
+insert into t1 set ujis=0x6E, name='U+006E LATIN SMALL LETTER N';
+insert into t1 set ujis=0x6F, name='U+006F LATIN SMALL LETTER O';
+insert into t1 set ujis=0x70, name='U+0070 LATIN SMALL LETTER P';
+insert into t1 set ujis=0x71, name='U+0071 LATIN SMALL LETTER Q';
+insert into t1 set ujis=0x72, name='U+0072 LATIN SMALL LETTER R';
+insert into t1 set ujis=0x73, name='U+0073 LATIN SMALL LETTER S';
+insert into t1 set ujis=0x74, name='U+0074 LATIN SMALL LETTER T';
+insert into t1 set ujis=0x75, name='U+0075 LATIN SMALL LETTER U';
+insert into t1 set ujis=0x76, name='U+0076 LATIN SMALL LETTER V';
+insert into t1 set ujis=0x77, name='U+0077 LATIN SMALL LETTER W';
+insert into t1 set ujis=0x78, name='U+0078 LATIN SMALL LETTER X';
+insert into t1 set ujis=0x79, name='U+0079 LATIN SMALL LETTER Y';
+insert into t1 set ujis=0x7A, name='U+007A LATIN SMALL LETTER Z';
+insert into t1 set ujis=0x7B, name='U+007B LEFT CURLY BRACKET';
+insert into t1 set ujis=0x7C, name='U+007C VERTICAL LINE';
+insert into t1 set ujis=0x7D, name='U+007D RIGHT CURLY BRACKET';
+insert into t1 set ujis=0x7E, name='U+007E TILDE';
+insert into t1 set ujis=0x7F, name='U+007F DELETE';
+insert into t1 (ujis) select concat(t21.code,t22.code) from t2 t21, t2 t22 order by 1;
+update t1 set name='U+3000 IDEOGRAPHIC SPACE' where ujis=0xA1A1;
+update t1 set name='U+3001 IDEOGRAPHIC COMMA' where ujis=0xA1A2;
+update t1 set name='U+3002 IDEOGRAPHIC FULL STOP' where ujis=0xA1A3;
+update t1 set name='U+FF0C FULLWIDTH COMMA' where ujis=0xA1A4;
+update t1 set name='U+FF0E FULLWIDTH FULL STOP' where ujis=0xA1A5;
+update t1 set name='U+30FB KATAKANA MIDDLE DOT' where ujis=0xA1A6;
+update t1 set name='U+FF1A FULLWIDTH COLON' where ujis=0xA1A7;
+update t1 set name='U+FF1B FULLWIDTH SEMICOLON' where ujis=0xA1A8;
+update t1 set name='U+FF1F FULLWIDTH QUESTION MARK' where ujis=0xA1A9;
+update t1 set name='U+FF01 FULLWIDTH EXCLAMATION MARK' where ujis=0xA1AA;
+update t1 set name='U+309B KATAKANA-HIRAGANA VOICED SOUND MARK' where ujis=0xA1AB;
+update t1 set name='U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK' where ujis=0xA1AC;
+update t1 set name='U+00B4 ACUTE ACCENT' where ujis=0xA1AD;
+update t1 set name='U+FF40 FULLWIDTH GRAVE ACCENT' where ujis=0xA1AE;
+update t1 set name='U+00A8 DIAERESIS' where ujis=0xA1AF;
+update t1 set name='U+FF3E FULLWIDTH CIRCUMFLEX ACCENT' where ujis=0xA1B0;
+update t1 set name='U+FFE3 FULLWIDTH MACRON' where ujis=0xA1B1;
+update t1 set name='U+FF3F FULLWIDTH LOW LINE' where ujis=0xA1B2;
+update t1 set name='U+30FD KATAKANA ITERATION MARK' where ujis=0xA1B3;
+update t1 set name='U+30FE KATAKANA VOICED ITERATION MARK' where ujis=0xA1B4;
+update t1 set name='U+309D HIRAGANA ITERATION MARK' where ujis=0xA1B5;
+update t1 set name='U+309E HIRAGANA VOICED ITERATION MARK' where ujis=0xA1B6;
+update t1 set name='U+3003 DITTO MARK' where ujis=0xA1B7;
+update t1 set name='U+4EDD <CJK>' where ujis=0xA1B8;
+update t1 set name='U+3005 IDEOGRAPHIC ITERATION MARK' where ujis=0xA1B9;
+update t1 set name='U+3006 IDEOGRAPHIC CLOSING MARK' where ujis=0xA1BA;
+update t1 set name='U+3007 IDEOGRAPHIC NUMBER ZERO' where ujis=0xA1BB;
+update t1 set name='U+30FC KATAKANA-HIRAGANA PROLONGED SOUND MARK' where ujis=0xA1BC;
+update t1 set name='U+2015 HORIZONTAL BAR' where ujis=0xA1BD;
+update t1 set name='U+2010 HYPHEN' where ujis=0xA1BE;
+update t1 set name='U+FF0F FULLWIDTH SOLIDUS' where ujis=0xA1BF;
+update t1 set name='U+005C REVERSE SOLIDUS' where ujis=0xA1C0;
+update t1 set name='U+301C WAVE DASH' where ujis=0xA1C1;
+update t1 set name='U+2016 DOUBLE VERTICAL LINE' where ujis=0xA1C2;
+update t1 set name='U+FF5C FULLWIDTH VERTICAL LINE' where ujis=0xA1C3;
+update t1 set name='U+2026 HORIZONTAL ELLIPSIS' where ujis=0xA1C4;
+update t1 set name='U+2025 TWO DOT LEADER' where ujis=0xA1C5;
+update t1 set name='U+2018 LEFT SINGLE QUOTATION MARK' where ujis=0xA1C6;
+update t1 set name='U+2019 RIGHT SINGLE QUOTATION MARK' where ujis=0xA1C7;
+update t1 set name='U+201C LEFT DOUBLE QUOTATION MARK' where ujis=0xA1C8;
+update t1 set name='U+201D RIGHT DOUBLE QUOTATION MARK' where ujis=0xA1C9;
+update t1 set name='U+FF08 FULLWIDTH LEFT PARENTHESIS' where ujis=0xA1CA;
+update t1 set name='U+FF09 FULLWIDTH RIGHT PARENTHESIS' where ujis=0xA1CB;
+update t1 set name='U+3014 LEFT TORTOISE SHELL BRACKET' where ujis=0xA1CC;
+update t1 set name='U+3015 RIGHT TORTOISE SHELL BRACKET' where ujis=0xA1CD;
+update t1 set name='U+FF3B FULLWIDTH LEFT SQUARE BRACKET' where ujis=0xA1CE;
+update t1 set name='U+FF3D FULLWIDTH RIGHT SQUARE BRACKET' where ujis=0xA1CF;
+update t1 set name='U+FF5B FULLWIDTH LEFT CURLY BRACKET' where ujis=0xA1D0;
+update t1 set name='U+FF5D FULLWIDTH RIGHT CURLY BRACKET' where ujis=0xA1D1;
+update t1 set name='U+3008 LEFT ANGLE BRACKET' where ujis=0xA1D2;
+update t1 set name='U+3009 RIGHT ANGLE BRACKET' where ujis=0xA1D3;
+update t1 set name='U+300A LEFT DOUBLE ANGLE BRACKET' where ujis=0xA1D4;
+update t1 set name='U+300B RIGHT DOUBLE ANGLE BRACKET' where ujis=0xA1D5;
+update t1 set name='U+300C LEFT CORNER BRACKET' where ujis=0xA1D6;
+update t1 set name='U+300D RIGHT CORNER BRACKET' where ujis=0xA1D7;
+update t1 set name='U+300E LEFT WHITE CORNER BRACKET' where ujis=0xA1D8;
+update t1 set name='U+300F RIGHT WHITE CORNER BRACKET' where ujis=0xA1D9;
+update t1 set name='U+3010 LEFT BLACK LENTICULAR BRACKET' where ujis=0xA1DA;
+update t1 set name='U+3011 RIGHT BLACK LENTICULAR BRACKET' where ujis=0xA1DB;
+update t1 set name='U+FF0B FULLWIDTH PLUS SIGN' where ujis=0xA1DC;
+update t1 set name='U+2212 MINUS SIGN' where ujis=0xA1DD;
+update t1 set name='U+00B1 PLUS-MINUS SIGN' where ujis=0xA1DE;
+update t1 set name='U+00D7 MULTIPLICATION SIGN' where ujis=0xA1DF;
+update t1 set name='U+00F7 DIVISION SIGN' where ujis=0xA1E0;
+update t1 set name='U+FF1D FULLWIDTH EQUALS SIGN' where ujis=0xA1E1;
+update t1 set name='U+2260 NOT EQUAL TO' where ujis=0xA1E2;
+update t1 set name='U+FF1C FULLWIDTH LESS-THAN SIGN' where ujis=0xA1E3;
+update t1 set name='U+FF1E FULLWIDTH GREATER-THAN SIGN' where ujis=0xA1E4;
+update t1 set name='U+2266 LESS-THAN OVER EQUAL TO' where ujis=0xA1E5;
+update t1 set name='U+2267 GREATER-THAN OVER EQUAL TO' where ujis=0xA1E6;
+update t1 set name='U+221E INFINITY' where ujis=0xA1E7;
+update t1 set name='U+2234 THEREFORE' where ujis=0xA1E8;
+update t1 set name='U+2642 MALE SIGN' where ujis=0xA1E9;
+update t1 set name='U+2640 FEMALE SIGN' where ujis=0xA1EA;
+update t1 set name='U+00B0 DEGREE SIGN' where ujis=0xA1EB;
+update t1 set name='U+2032 PRIME' where ujis=0xA1EC;
+update t1 set name='U+2033 DOUBLE PRIME' where ujis=0xA1ED;
+update t1 set name='U+2103 DEGREE CELSIUS' where ujis=0xA1EE;
+update t1 set name='U+FFE5 FULLWIDTH YEN SIGN' where ujis=0xA1EF;
+update t1 set name='U+FF04 FULLWIDTH DOLLAR SIGN' where ujis=0xA1F0;
+update t1 set name='U+00A2 CENT SIGN' where ujis=0xA1F1;
+update t1 set name='U+00A3 POUND SIGN' where ujis=0xA1F2;
+update t1 set name='U+FF05 FULLWIDTH PERCENT SIGN' where ujis=0xA1F3;
+update t1 set name='U+FF03 FULLWIDTH NUMBER SIGN' where ujis=0xA1F4;
+update t1 set name='U+FF06 FULLWIDTH AMPERSAND' where ujis=0xA1F5;
+update t1 set name='U+FF0A FULLWIDTH ASTERISK' where ujis=0xA1F6;
+update t1 set name='U+FF20 FULLWIDTH COMMERCIAL AT' where ujis=0xA1F7;
+update t1 set name='U+00A7 SECTION SIGN' where ujis=0xA1F8;
+update t1 set name='U+2606 WHITE STAR' where ujis=0xA1F9;
+update t1 set name='U+2605 BLACK STAR' where ujis=0xA1FA;
+update t1 set name='U+25CB WHITE CIRCLE' where ujis=0xA1FB;
+update t1 set name='U+25CF BLACK CIRCLE' where ujis=0xA1FC;
+update t1 set name='U+25CE BULLSEYE' where ujis=0xA1FD;
+update t1 set name='U+25C7 WHITE DIAMOND' where ujis=0xA1FE;
+update t1 set name='U+25C6 BLACK DIAMOND' where ujis=0xA2A1;
+update t1 set name='U+25A1 WHITE SQUARE' where ujis=0xA2A2;
+update t1 set name='U+25A0 BLACK SQUARE' where ujis=0xA2A3;
+update t1 set name='U+25B3 WHITE UP-POINTING TRIANGLE' where ujis=0xA2A4;
+update t1 set name='U+25B2 BLACK UP-POINTING TRIANGLE' where ujis=0xA2A5;
+update t1 set name='U+25BD WHITE DOWN-POINTING TRIANGLE' where ujis=0xA2A6;
+update t1 set name='U+25BC BLACK DOWN-POINTING TRIANGLE' where ujis=0xA2A7;
+update t1 set name='U+203B REFERENCE MARK' where ujis=0xA2A8;
+update t1 set name='U+3012 POSTAL MARK' where ujis=0xA2A9;
+update t1 set name='U+2192 RIGHTWARDS ARROW' where ujis=0xA2AA;
+update t1 set name='U+2190 LEFTWARDS ARROW' where ujis=0xA2AB;
+update t1 set name='U+2191 UPWARDS ARROW' where ujis=0xA2AC;
+update t1 set name='U+2193 DOWNWARDS ARROW' where ujis=0xA2AD;
+update t1 set name='U+3013 GETA MARK' where ujis=0xA2AE;
+update t1 set name='U+2208 ELEMENT OF' where ujis=0xA2BA;
+update t1 set name='U+220B CONTAINS AS MEMBER' where ujis=0xA2BB;
+update t1 set name='U+2286 SUBset OF OR EQUAL TO' where ujis=0xA2BC;
+update t1 set name='U+2287 SUPERset OF OR EQUAL TO' where ujis=0xA2BD;
+update t1 set name='U+2282 SUBset OF' where ujis=0xA2BE;
+update t1 set name='U+2283 SUPERset OF' where ujis=0xA2BF;
+update t1 set name='U+222A UNION' where ujis=0xA2C0;
+update t1 set name='U+2229 INTERSECTION' where ujis=0xA2C1;
+update t1 set name='U+2227 LOGICAL AND' where ujis=0xA2CA;
+update t1 set name='U+2228 LOGICAL OR' where ujis=0xA2CB;
+update t1 set name='U+00AC NOT SIGN' where ujis=0xA2CC;
+update t1 set name='U+21D2 RIGHTWARDS DOUBLE ARROW' where ujis=0xA2CD;
+update t1 set name='U+21D4 LEFT RIGHT DOUBLE ARROW' where ujis=0xA2CE;
+update t1 set name='U+2200 FOR ALL' where ujis=0xA2CF;
+update t1 set name='U+2203 THERE EXISTS' where ujis=0xA2D0;
+update t1 set name='U+2220 ANGLE' where ujis=0xA2DC;
+update t1 set name='U+22A5 UP TACK' where ujis=0xA2DD;
+update t1 set name='U+2312 ARC' where ujis=0xA2DE;
+update t1 set name='U+2202 PARTIAL DIFFERENTIAL' where ujis=0xA2DF;
+update t1 set name='U+2207 NABLA' where ujis=0xA2E0;
+update t1 set name='U+2261 IDENTICAL TO' where ujis=0xA2E1;
+update t1 set name='U+2252 APPROXIMATELY EQUAL TO OR THE IMAGE OF' where ujis=0xA2E2;
+update t1 set name='U+226A MUCH LESS-THAN' where ujis=0xA2E3;
+update t1 set name='U+226B MUCH GREATER-THAN' where ujis=0xA2E4;
+update t1 set name='U+221A SQUARE ROOT' where ujis=0xA2E5;
+update t1 set name='U+223D REVERSED TILDE' where ujis=0xA2E6;
+update t1 set name='U+221D PROPORTIONAL TO' where ujis=0xA2E7;
+update t1 set name='U+2235 BECAUSE' where ujis=0xA2E8;
+update t1 set name='U+222B INTEGRAL' where ujis=0xA2E9;
+update t1 set name='U+222C DOUBLE INTEGRAL' where ujis=0xA2EA;
+update t1 set name='U+212B ANGSTROM SIGN' where ujis=0xA2F2;
+update t1 set name='U+2030 PER MILLE SIGN' where ujis=0xA2F3;
+update t1 set name='U+266F MUSIC SHARP SIGN' where ujis=0xA2F4;
+update t1 set name='U+266D MUSIC FLAT SIGN' where ujis=0xA2F5;
+update t1 set name='U+266A EIGHTH NOTE' where ujis=0xA2F6;
+update t1 set name='U+2020 DAGGER' where ujis=0xA2F7;
+update t1 set name='U+2021 DOUBLE DAGGER' where ujis=0xA2F8;
+update t1 set name='U+00B6 PILCROW SIGN' where ujis=0xA2F9;
+update t1 set name='U+25EF LARGE CIRCLE' where ujis=0xA2FE;
+update t1 set name='U+FF10 FULLWIDTH DIGIT ZERO' where ujis=0xA3B0;
+update t1 set name='U+FF11 FULLWIDTH DIGIT ONE' where ujis=0xA3B1;
+update t1 set name='U+FF12 FULLWIDTH DIGIT TWO' where ujis=0xA3B2;
+update t1 set name='U+FF13 FULLWIDTH DIGIT THREE' where ujis=0xA3B3;
+update t1 set name='U+FF14 FULLWIDTH DIGIT FOUR' where ujis=0xA3B4;
+update t1 set name='U+FF15 FULLWIDTH DIGIT FIVE' where ujis=0xA3B5;
+update t1 set name='U+FF16 FULLWIDTH DIGIT SIX' where ujis=0xA3B6;
+update t1 set name='U+FF17 FULLWIDTH DIGIT SEVEN' where ujis=0xA3B7;
+update t1 set name='U+FF18 FULLWIDTH DIGIT EIGHT' where ujis=0xA3B8;
+update t1 set name='U+FF19 FULLWIDTH DIGIT NINE' where ujis=0xA3B9;
+update t1 set name='U+FF21 FULLWIDTH LATIN CAPITAL LETTER A' where ujis=0xA3C1;
+update t1 set name='U+FF22 FULLWIDTH LATIN CAPITAL LETTER B' where ujis=0xA3C2;
+update t1 set name='U+FF23 FULLWIDTH LATIN CAPITAL LETTER C' where ujis=0xA3C3;
+update t1 set name='U+FF24 FULLWIDTH LATIN CAPITAL LETTER D' where ujis=0xA3C4;
+update t1 set name='U+FF25 FULLWIDTH LATIN CAPITAL LETTER E' where ujis=0xA3C5;
+update t1 set name='U+FF26 FULLWIDTH LATIN CAPITAL LETTER F' where ujis=0xA3C6;
+update t1 set name='U+FF27 FULLWIDTH LATIN CAPITAL LETTER G' where ujis=0xA3C7;
+update t1 set name='U+FF28 FULLWIDTH LATIN CAPITAL LETTER H' where ujis=0xA3C8;
+update t1 set name='U+FF29 FULLWIDTH LATIN CAPITAL LETTER I' where ujis=0xA3C9;
+update t1 set name='U+FF2A FULLWIDTH LATIN CAPITAL LETTER J' where ujis=0xA3CA;
+update t1 set name='U+FF2B FULLWIDTH LATIN CAPITAL LETTER K' where ujis=0xA3CB;
+update t1 set name='U+FF2C FULLWIDTH LATIN CAPITAL LETTER L' where ujis=0xA3CC;
+update t1 set name='U+FF2D FULLWIDTH LATIN CAPITAL LETTER M' where ujis=0xA3CD;
+update t1 set name='U+FF2E FULLWIDTH LATIN CAPITAL LETTER N' where ujis=0xA3CE;
+update t1 set name='U+FF2F FULLWIDTH LATIN CAPITAL LETTER O' where ujis=0xA3CF;
+update t1 set name='U+FF30 FULLWIDTH LATIN CAPITAL LETTER P' where ujis=0xA3D0;
+update t1 set name='U+FF31 FULLWIDTH LATIN CAPITAL LETTER Q' where ujis=0xA3D1;
+update t1 set name='U+FF32 FULLWIDTH LATIN CAPITAL LETTER R' where ujis=0xA3D2;
+update t1 set name='U+FF33 FULLWIDTH LATIN CAPITAL LETTER S' where ujis=0xA3D3;
+update t1 set name='U+FF34 FULLWIDTH LATIN CAPITAL LETTER T' where ujis=0xA3D4;
+update t1 set name='U+FF35 FULLWIDTH LATIN CAPITAL LETTER U' where ujis=0xA3D5;
+update t1 set name='U+FF36 FULLWIDTH LATIN CAPITAL LETTER V' where ujis=0xA3D6;
+update t1 set name='U+FF37 FULLWIDTH LATIN CAPITAL LETTER W' where ujis=0xA3D7;
+update t1 set name='U+FF38 FULLWIDTH LATIN CAPITAL LETTER X' where ujis=0xA3D8;
+update t1 set name='U+FF39 FULLWIDTH LATIN CAPITAL LETTER Y' where ujis=0xA3D9;
+update t1 set name='U+FF3A FULLWIDTH LATIN CAPITAL LETTER Z' where ujis=0xA3DA;
+update t1 set name='U+FF41 FULLWIDTH LATIN SMALL LETTER A' where ujis=0xA3E1;
+update t1 set name='U+FF42 FULLWIDTH LATIN SMALL LETTER B' where ujis=0xA3E2;
+update t1 set name='U+FF43 FULLWIDTH LATIN SMALL LETTER C' where ujis=0xA3E3;
+update t1 set name='U+FF44 FULLWIDTH LATIN SMALL LETTER D' where ujis=0xA3E4;
+update t1 set name='U+FF45 FULLWIDTH LATIN SMALL LETTER E' where ujis=0xA3E5;
+update t1 set name='U+FF46 FULLWIDTH LATIN SMALL LETTER F' where ujis=0xA3E6;
+update t1 set name='U+FF47 FULLWIDTH LATIN SMALL LETTER G' where ujis=0xA3E7;
+update t1 set name='U+FF48 FULLWIDTH LATIN SMALL LETTER H' where ujis=0xA3E8;
+update t1 set name='U+FF49 FULLWIDTH LATIN SMALL LETTER I' where ujis=0xA3E9;
+update t1 set name='U+FF4A FULLWIDTH LATIN SMALL LETTER J' where ujis=0xA3EA;
+update t1 set name='U+FF4B FULLWIDTH LATIN SMALL LETTER K' where ujis=0xA3EB;
+update t1 set name='U+FF4C FULLWIDTH LATIN SMALL LETTER L' where ujis=0xA3EC;
+update t1 set name='U+FF4D FULLWIDTH LATIN SMALL LETTER M' where ujis=0xA3ED;
+update t1 set name='U+FF4E FULLWIDTH LATIN SMALL LETTER N' where ujis=0xA3EE;
+update t1 set name='U+FF4F FULLWIDTH LATIN SMALL LETTER O' where ujis=0xA3EF;
+update t1 set name='U+FF50 FULLWIDTH LATIN SMALL LETTER P' where ujis=0xA3F0;
+update t1 set name='U+FF51 FULLWIDTH LATIN SMALL LETTER Q' where ujis=0xA3F1;
+update t1 set name='U+FF52 FULLWIDTH LATIN SMALL LETTER R' where ujis=0xA3F2;
+update t1 set name='U+FF53 FULLWIDTH LATIN SMALL LETTER S' where ujis=0xA3F3;
+update t1 set name='U+FF54 FULLWIDTH LATIN SMALL LETTER T' where ujis=0xA3F4;
+update t1 set name='U+FF55 FULLWIDTH LATIN SMALL LETTER U' where ujis=0xA3F5;
+update t1 set name='U+FF56 FULLWIDTH LATIN SMALL LETTER V' where ujis=0xA3F6;
+update t1 set name='U+FF57 FULLWIDTH LATIN SMALL LETTER W' where ujis=0xA3F7;
+update t1 set name='U+FF58 FULLWIDTH LATIN SMALL LETTER X' where ujis=0xA3F8;
+update t1 set name='U+FF59 FULLWIDTH LATIN SMALL LETTER Y' where ujis=0xA3F9;
+update t1 set name='U+FF5A FULLWIDTH LATIN SMALL LETTER Z' where ujis=0xA3FA;
+update t1 set name='U+3041 HIRAGANA LETTER SMALL A' where ujis=0xA4A1;
+update t1 set name='U+3042 HIRAGANA LETTER A' where ujis=0xA4A2;
+update t1 set name='U+3043 HIRAGANA LETTER SMALL I' where ujis=0xA4A3;
+update t1 set name='U+3044 HIRAGANA LETTER I' where ujis=0xA4A4;
+update t1 set name='U+3045 HIRAGANA LETTER SMALL U' where ujis=0xA4A5;
+update t1 set name='U+3046 HIRAGANA LETTER U' where ujis=0xA4A6;
+update t1 set name='U+3047 HIRAGANA LETTER SMALL E' where ujis=0xA4A7;
+update t1 set name='U+3048 HIRAGANA LETTER E' where ujis=0xA4A8;
+update t1 set name='U+3049 HIRAGANA LETTER SMALL O' where ujis=0xA4A9;
+update t1 set name='U+304A HIRAGANA LETTER O' where ujis=0xA4AA;
+update t1 set name='U+304B HIRAGANA LETTER KA' where ujis=0xA4AB;
+update t1 set name='U+304C HIRAGANA LETTER GA' where ujis=0xA4AC;
+update t1 set name='U+304D HIRAGANA LETTER KI' where ujis=0xA4AD;
+update t1 set name='U+304E HIRAGANA LETTER GI' where ujis=0xA4AE;
+update t1 set name='U+304F HIRAGANA LETTER KU' where ujis=0xA4AF;
+update t1 set name='U+3050 HIRAGANA LETTER GU' where ujis=0xA4B0;
+update t1 set name='U+3051 HIRAGANA LETTER KE' where ujis=0xA4B1;
+update t1 set name='U+3052 HIRAGANA LETTER GE' where ujis=0xA4B2;
+update t1 set name='U+3053 HIRAGANA LETTER KO' where ujis=0xA4B3;
+update t1 set name='U+3054 HIRAGANA LETTER GO' where ujis=0xA4B4;
+update t1 set name='U+3055 HIRAGANA LETTER SA' where ujis=0xA4B5;
+update t1 set name='U+3056 HIRAGANA LETTER ZA' where ujis=0xA4B6;
+update t1 set name='U+3057 HIRAGANA LETTER SI' where ujis=0xA4B7;
+update t1 set name='U+3058 HIRAGANA LETTER ZI' where ujis=0xA4B8;
+update t1 set name='U+3059 HIRAGANA LETTER SU' where ujis=0xA4B9;
+update t1 set name='U+305A HIRAGANA LETTER ZU' where ujis=0xA4BA;
+update t1 set name='U+305B HIRAGANA LETTER SE' where ujis=0xA4BB;
+update t1 set name='U+305C HIRAGANA LETTER ZE' where ujis=0xA4BC;
+update t1 set name='U+305D HIRAGANA LETTER SO' where ujis=0xA4BD;
+update t1 set name='U+305E HIRAGANA LETTER ZO' where ujis=0xA4BE;
+update t1 set name='U+305F HIRAGANA LETTER TA' where ujis=0xA4BF;
+update t1 set name='U+3060 HIRAGANA LETTER DA' where ujis=0xA4C0;
+update t1 set name='U+3061 HIRAGANA LETTER TI' where ujis=0xA4C1;
+update t1 set name='U+3062 HIRAGANA LETTER DI' where ujis=0xA4C2;
+update t1 set name='U+3063 HIRAGANA LETTER SMALL TU' where ujis=0xA4C3;
+update t1 set name='U+3064 HIRAGANA LETTER TU' where ujis=0xA4C4;
+update t1 set name='U+3065 HIRAGANA LETTER DU' where ujis=0xA4C5;
+update t1 set name='U+3066 HIRAGANA LETTER TE' where ujis=0xA4C6;
+update t1 set name='U+3067 HIRAGANA LETTER DE' where ujis=0xA4C7;
+update t1 set name='U+3068 HIRAGANA LETTER TO' where ujis=0xA4C8;
+update t1 set name='U+3069 HIRAGANA LETTER DO' where ujis=0xA4C9;
+update t1 set name='U+306A HIRAGANA LETTER NA' where ujis=0xA4CA;
+update t1 set name='U+306B HIRAGANA LETTER NI' where ujis=0xA4CB;
+update t1 set name='U+306C HIRAGANA LETTER NU' where ujis=0xA4CC;
+update t1 set name='U+306D HIRAGANA LETTER NE' where ujis=0xA4CD;
+update t1 set name='U+306E HIRAGANA LETTER NO' where ujis=0xA4CE;
+update t1 set name='U+306F HIRAGANA LETTER HA' where ujis=0xA4CF;
+update t1 set name='U+3070 HIRAGANA LETTER BA' where ujis=0xA4D0;
+update t1 set name='U+3071 HIRAGANA LETTER PA' where ujis=0xA4D1;
+update t1 set name='U+3072 HIRAGANA LETTER HI' where ujis=0xA4D2;
+update t1 set name='U+3073 HIRAGANA LETTER BI' where ujis=0xA4D3;
+update t1 set name='U+3074 HIRAGANA LETTER PI' where ujis=0xA4D4;
+update t1 set name='U+3075 HIRAGANA LETTER HU' where ujis=0xA4D5;
+update t1 set name='U+3076 HIRAGANA LETTER BU' where ujis=0xA4D6;
+update t1 set name='U+3077 HIRAGANA LETTER PU' where ujis=0xA4D7;
+update t1 set name='U+3078 HIRAGANA LETTER HE' where ujis=0xA4D8;
+update t1 set name='U+3079 HIRAGANA LETTER BE' where ujis=0xA4D9;
+update t1 set name='U+307A HIRAGANA LETTER PE' where ujis=0xA4DA;
+update t1 set name='U+307B HIRAGANA LETTER HO' where ujis=0xA4DB;
+update t1 set name='U+307C HIRAGANA LETTER BO' where ujis=0xA4DC;
+update t1 set name='U+307D HIRAGANA LETTER PO' where ujis=0xA4DD;
+update t1 set name='U+307E HIRAGANA LETTER MA' where ujis=0xA4DE;
+update t1 set name='U+307F HIRAGANA LETTER MI' where ujis=0xA4DF;
+update t1 set name='U+3080 HIRAGANA LETTER MU' where ujis=0xA4E0;
+update t1 set name='U+3081 HIRAGANA LETTER ME' where ujis=0xA4E1;
+update t1 set name='U+3082 HIRAGANA LETTER MO' where ujis=0xA4E2;
+update t1 set name='U+3083 HIRAGANA LETTER SMALL YA' where ujis=0xA4E3;
+update t1 set name='U+3084 HIRAGANA LETTER YA' where ujis=0xA4E4;
+update t1 set name='U+3085 HIRAGANA LETTER SMALL YU' where ujis=0xA4E5;
+update t1 set name='U+3086 HIRAGANA LETTER YU' where ujis=0xA4E6;
+update t1 set name='U+3087 HIRAGANA LETTER SMALL YO' where ujis=0xA4E7;
+update t1 set name='U+3088 HIRAGANA LETTER YO' where ujis=0xA4E8;
+update t1 set name='U+3089 HIRAGANA LETTER RA' where ujis=0xA4E9;
+update t1 set name='U+308A HIRAGANA LETTER RI' where ujis=0xA4EA;
+update t1 set name='U+308B HIRAGANA LETTER RU' where ujis=0xA4EB;
+update t1 set name='U+308C HIRAGANA LETTER RE' where ujis=0xA4EC;
+update t1 set name='U+308D HIRAGANA LETTER RO' where ujis=0xA4ED;
+update t1 set name='U+308E HIRAGANA LETTER SMALL WA' where ujis=0xA4EE;
+update t1 set name='U+308F HIRAGANA LETTER WA' where ujis=0xA4EF;
+update t1 set name='U+3090 HIRAGANA LETTER WI' where ujis=0xA4F0;
+update t1 set name='U+3091 HIRAGANA LETTER WE' where ujis=0xA4F1;
+update t1 set name='U+3092 HIRAGANA LETTER WO' where ujis=0xA4F2;
+update t1 set name='U+3093 HIRAGANA LETTER N' where ujis=0xA4F3;
+update t1 set name='U+30A1 KATAKANA LETTER SMALL A' where ujis=0xA5A1;
+update t1 set name='U+30A2 KATAKANA LETTER A' where ujis=0xA5A2;
+update t1 set name='U+30A3 KATAKANA LETTER SMALL I' where ujis=0xA5A3;
+update t1 set name='U+30A4 KATAKANA LETTER I' where ujis=0xA5A4;
+update t1 set name='U+30A5 KATAKANA LETTER SMALL U' where ujis=0xA5A5;
+update t1 set name='U+30A6 KATAKANA LETTER U' where ujis=0xA5A6;
+update t1 set name='U+30A7 KATAKANA LETTER SMALL E' where ujis=0xA5A7;
+update t1 set name='U+30A8 KATAKANA LETTER E' where ujis=0xA5A8;
+update t1 set name='U+30A9 KATAKANA LETTER SMALL O' where ujis=0xA5A9;
+update t1 set name='U+30AA KATAKANA LETTER O' where ujis=0xA5AA;
+update t1 set name='U+30AB KATAKANA LETTER KA' where ujis=0xA5AB;
+update t1 set name='U+30AC KATAKANA LETTER GA' where ujis=0xA5AC;
+update t1 set name='U+30AD KATAKANA LETTER KI' where ujis=0xA5AD;
+update t1 set name='U+30AE KATAKANA LETTER GI' where ujis=0xA5AE;
+update t1 set name='U+30AF KATAKANA LETTER KU' where ujis=0xA5AF;
+update t1 set name='U+30B0 KATAKANA LETTER GU' where ujis=0xA5B0;
+update t1 set name='U+30B1 KATAKANA LETTER KE' where ujis=0xA5B1;
+update t1 set name='U+30B2 KATAKANA LETTER GE' where ujis=0xA5B2;
+update t1 set name='U+30B3 KATAKANA LETTER KO' where ujis=0xA5B3;
+update t1 set name='U+30B4 KATAKANA LETTER GO' where ujis=0xA5B4;
+update t1 set name='U+30B5 KATAKANA LETTER SA' where ujis=0xA5B5;
+update t1 set name='U+30B6 KATAKANA LETTER ZA' where ujis=0xA5B6;
+update t1 set name='U+30B7 KATAKANA LETTER SI' where ujis=0xA5B7;
+update t1 set name='U+30B8 KATAKANA LETTER ZI' where ujis=0xA5B8;
+update t1 set name='U+30B9 KATAKANA LETTER SU' where ujis=0xA5B9;
+update t1 set name='U+30BA KATAKANA LETTER ZU' where ujis=0xA5BA;
+update t1 set name='U+30BB KATAKANA LETTER SE' where ujis=0xA5BB;
+update t1 set name='U+30BC KATAKANA LETTER ZE' where ujis=0xA5BC;
+update t1 set name='U+30BD KATAKANA LETTER SO' where ujis=0xA5BD;
+update t1 set name='U+30BE KATAKANA LETTER ZO' where ujis=0xA5BE;
+update t1 set name='U+30BF KATAKANA LETTER TA' where ujis=0xA5BF;
+update t1 set name='U+30C0 KATAKANA LETTER DA' where ujis=0xA5C0;
+update t1 set name='U+30C1 KATAKANA LETTER TI' where ujis=0xA5C1;
+update t1 set name='U+30C2 KATAKANA LETTER DI' where ujis=0xA5C2;
+update t1 set name='U+30C3 KATAKANA LETTER SMALL TU' where ujis=0xA5C3;
+update t1 set name='U+30C4 KATAKANA LETTER TU' where ujis=0xA5C4;
+update t1 set name='U+30C5 KATAKANA LETTER DU' where ujis=0xA5C5;
+update t1 set name='U+30C6 KATAKANA LETTER TE' where ujis=0xA5C6;
+update t1 set name='U+30C7 KATAKANA LETTER DE' where ujis=0xA5C7;
+update t1 set name='U+30C8 KATAKANA LETTER TO' where ujis=0xA5C8;
+update t1 set name='U+30C9 KATAKANA LETTER DO' where ujis=0xA5C9;
+update t1 set name='U+30CA KATAKANA LETTER NA' where ujis=0xA5CA;
+update t1 set name='U+30CB KATAKANA LETTER NI' where ujis=0xA5CB;
+update t1 set name='U+30CC KATAKANA LETTER NU' where ujis=0xA5CC;
+update t1 set name='U+30CD KATAKANA LETTER NE' where ujis=0xA5CD;
+update t1 set name='U+30CE KATAKANA LETTER NO' where ujis=0xA5CE;
+update t1 set name='U+30CF KATAKANA LETTER HA' where ujis=0xA5CF;
+update t1 set name='U+30D0 KATAKANA LETTER BA' where ujis=0xA5D0;
+update t1 set name='U+30D1 KATAKANA LETTER PA' where ujis=0xA5D1;
+update t1 set name='U+30D2 KATAKANA LETTER HI' where ujis=0xA5D2;
+update t1 set name='U+30D3 KATAKANA LETTER BI' where ujis=0xA5D3;
+update t1 set name='U+30D4 KATAKANA LETTER PI' where ujis=0xA5D4;
+update t1 set name='U+30D5 KATAKANA LETTER HU' where ujis=0xA5D5;
+update t1 set name='U+30D6 KATAKANA LETTER BU' where ujis=0xA5D6;
+update t1 set name='U+30D7 KATAKANA LETTER PU' where ujis=0xA5D7;
+update t1 set name='U+30D8 KATAKANA LETTER HE' where ujis=0xA5D8;
+update t1 set name='U+30D9 KATAKANA LETTER BE' where ujis=0xA5D9;
+update t1 set name='U+30DA KATAKANA LETTER PE' where ujis=0xA5DA;
+update t1 set name='U+30DB KATAKANA LETTER HO' where ujis=0xA5DB;
+update t1 set name='U+30DC KATAKANA LETTER BO' where ujis=0xA5DC;
+update t1 set name='U+30DD KATAKANA LETTER PO' where ujis=0xA5DD;
+update t1 set name='U+30DE KATAKANA LETTER MA' where ujis=0xA5DE;
+update t1 set name='U+30DF KATAKANA LETTER MI' where ujis=0xA5DF;
+update t1 set name='U+30E0 KATAKANA LETTER MU' where ujis=0xA5E0;
+update t1 set name='U+30E1 KATAKANA LETTER ME' where ujis=0xA5E1;
+update t1 set name='U+30E2 KATAKANA LETTER MO' where ujis=0xA5E2;
+update t1 set name='U+30E3 KATAKANA LETTER SMALL YA' where ujis=0xA5E3;
+update t1 set name='U+30E4 KATAKANA LETTER YA' where ujis=0xA5E4;
+update t1 set name='U+30E5 KATAKANA LETTER SMALL YU' where ujis=0xA5E5;
+update t1 set name='U+30E6 KATAKANA LETTER YU' where ujis=0xA5E6;
+update t1 set name='U+30E7 KATAKANA LETTER SMALL YO' where ujis=0xA5E7;
+update t1 set name='U+30E8 KATAKANA LETTER YO' where ujis=0xA5E8;
+update t1 set name='U+30E9 KATAKANA LETTER RA' where ujis=0xA5E9;
+update t1 set name='U+30EA KATAKANA LETTER RI' where ujis=0xA5EA;
+update t1 set name='U+30EB KATAKANA LETTER RU' where ujis=0xA5EB;
+update t1 set name='U+30EC KATAKANA LETTER RE' where ujis=0xA5EC;
+update t1 set name='U+30ED KATAKANA LETTER RO' where ujis=0xA5ED;
+update t1 set name='U+30EE KATAKANA LETTER SMALL WA' where ujis=0xA5EE;
+update t1 set name='U+30EF KATAKANA LETTER WA' where ujis=0xA5EF;
+update t1 set name='U+30F0 KATAKANA LETTER WI' where ujis=0xA5F0;
+update t1 set name='U+30F1 KATAKANA LETTER WE' where ujis=0xA5F1;
+update t1 set name='U+30F2 KATAKANA LETTER WO' where ujis=0xA5F2;
+update t1 set name='U+30F3 KATAKANA LETTER N' where ujis=0xA5F3;
+update t1 set name='U+30F4 KATAKANA LETTER VU' where ujis=0xA5F4;
+update t1 set name='U+30F5 KATAKANA LETTER SMALL KA' where ujis=0xA5F5;
+update t1 set name='U+30F6 KATAKANA LETTER SMALL KE' where ujis=0xA5F6;
+update t1 set name='U+0391 GREEK CAPITAL LETTER ALPHA' where ujis=0xA6A1;
+update t1 set name='U+0392 GREEK CAPITAL LETTER BETA' where ujis=0xA6A2;
+update t1 set name='U+0393 GREEK CAPITAL LETTER GAMMA' where ujis=0xA6A3;
+update t1 set name='U+0394 GREEK CAPITAL LETTER DELTA' where ujis=0xA6A4;
+update t1 set name='U+0395 GREEK CAPITAL LETTER EPSILON' where ujis=0xA6A5;
+update t1 set name='U+0396 GREEK CAPITAL LETTER ZETA' where ujis=0xA6A6;
+update t1 set name='U+0397 GREEK CAPITAL LETTER ETA' where ujis=0xA6A7;
+update t1 set name='U+0398 GREEK CAPITAL LETTER THETA' where ujis=0xA6A8;
+update t1 set name='U+0399 GREEK CAPITAL LETTER IOTA' where ujis=0xA6A9;
+update t1 set name='U+039A GREEK CAPITAL LETTER KAPPA' where ujis=0xA6AA;
+update t1 set name='U+039B GREEK CAPITAL LETTER LAMDA' where ujis=0xA6AB;
+update t1 set name='U+039C GREEK CAPITAL LETTER MU' where ujis=0xA6AC;
+update t1 set name='U+039D GREEK CAPITAL LETTER NU' where ujis=0xA6AD;
+update t1 set name='U+039E GREEK CAPITAL LETTER XI' where ujis=0xA6AE;
+update t1 set name='U+039F GREEK CAPITAL LETTER OMICRON' where ujis=0xA6AF;
+update t1 set name='U+03A0 GREEK CAPITAL LETTER PI' where ujis=0xA6B0;
+update t1 set name='U+03A1 GREEK CAPITAL LETTER RHO' where ujis=0xA6B1;
+update t1 set name='U+03A3 GREEK CAPITAL LETTER SIGMA' where ujis=0xA6B2;
+update t1 set name='U+03A4 GREEK CAPITAL LETTER TAU' where ujis=0xA6B3;
+update t1 set name='U+03A5 GREEK CAPITAL LETTER UPSILON' where ujis=0xA6B4;
+update t1 set name='U+03A6 GREEK CAPITAL LETTER PHI' where ujis=0xA6B5;
+update t1 set name='U+03A7 GREEK CAPITAL LETTER CHI' where ujis=0xA6B6;
+update t1 set name='U+03A8 GREEK CAPITAL LETTER PSI' where ujis=0xA6B7;
+update t1 set name='U+03A9 GREEK CAPITAL LETTER OMEGA' where ujis=0xA6B8;
+update t1 set name='U+03B1 GREEK SMALL LETTER ALPHA' where ujis=0xA6C1;
+update t1 set name='U+03B2 GREEK SMALL LETTER BETA' where ujis=0xA6C2;
+update t1 set name='U+03B3 GREEK SMALL LETTER GAMMA' where ujis=0xA6C3;
+update t1 set name='U+03B4 GREEK SMALL LETTER DELTA' where ujis=0xA6C4;
+update t1 set name='U+03B5 GREEK SMALL LETTER EPSILON' where ujis=0xA6C5;
+update t1 set name='U+03B6 GREEK SMALL LETTER ZETA' where ujis=0xA6C6;
+update t1 set name='U+03B7 GREEK SMALL LETTER ETA' where ujis=0xA6C7;
+update t1 set name='U+03B8 GREEK SMALL LETTER THETA' where ujis=0xA6C8;
+update t1 set name='U+03B9 GREEK SMALL LETTER IOTA' where ujis=0xA6C9;
+update t1 set name='U+03BA GREEK SMALL LETTER KAPPA' where ujis=0xA6CA;
+update t1 set name='U+03BB GREEK SMALL LETTER LAMDA' where ujis=0xA6CB;
+update t1 set name='U+03BC GREEK SMALL LETTER MU' where ujis=0xA6CC;
+update t1 set name='U+03BD GREEK SMALL LETTER NU' where ujis=0xA6CD;
+update t1 set name='U+03BE GREEK SMALL LETTER XI' where ujis=0xA6CE;
+update t1 set name='U+03BF GREEK SMALL LETTER OMICRON' where ujis=0xA6CF;
+update t1 set name='U+03C0 GREEK SMALL LETTER PI' where ujis=0xA6D0;
+update t1 set name='U+03C1 GREEK SMALL LETTER RHO' where ujis=0xA6D1;
+update t1 set name='U+03C3 GREEK SMALL LETTER SIGMA' where ujis=0xA6D2;
+update t1 set name='U+03C4 GREEK SMALL LETTER TAU' where ujis=0xA6D3;
+update t1 set name='U+03C5 GREEK SMALL LETTER UPSILON' where ujis=0xA6D4;
+update t1 set name='U+03C6 GREEK SMALL LETTER PHI' where ujis=0xA6D5;
+update t1 set name='U+03C7 GREEK SMALL LETTER CHI' where ujis=0xA6D6;
+update t1 set name='U+03C8 GREEK SMALL LETTER PSI' where ujis=0xA6D7;
+update t1 set name='U+03C9 GREEK SMALL LETTER OMEGA' where ujis=0xA6D8;
+update t1 set name='U+0410 CYRILLIC CAPITAL LETTER A' where ujis=0xA7A1;
+update t1 set name='U+0411 CYRILLIC CAPITAL LETTER BE' where ujis=0xA7A2;
+update t1 set name='U+0412 CYRILLIC CAPITAL LETTER VE' where ujis=0xA7A3;
+update t1 set name='U+0413 CYRILLIC CAPITAL LETTER GHE' where ujis=0xA7A4;
+update t1 set name='U+0414 CYRILLIC CAPITAL LETTER DE' where ujis=0xA7A5;
+update t1 set name='U+0415 CYRILLIC CAPITAL LETTER IE' where ujis=0xA7A6;
+update t1 set name='U+0401 CYRILLIC CAPITAL LETTER IO' where ujis=0xA7A7;
+update t1 set name='U+0416 CYRILLIC CAPITAL LETTER ZHE' where ujis=0xA7A8;
+update t1 set name='U+0417 CYRILLIC CAPITAL LETTER ZE' where ujis=0xA7A9;
+update t1 set name='U+0418 CYRILLIC CAPITAL LETTER I' where ujis=0xA7AA;
+update t1 set name='U+0419 CYRILLIC CAPITAL LETTER SHORT I' where ujis=0xA7AB;
+update t1 set name='U+041A CYRILLIC CAPITAL LETTER KA' where ujis=0xA7AC;
+update t1 set name='U+041B CYRILLIC CAPITAL LETTER EL' where ujis=0xA7AD;
+update t1 set name='U+041C CYRILLIC CAPITAL LETTER EM' where ujis=0xA7AE;
+update t1 set name='U+041D CYRILLIC CAPITAL LETTER EN' where ujis=0xA7AF;
+update t1 set name='U+041E CYRILLIC CAPITAL LETTER O' where ujis=0xA7B0;
+update t1 set name='U+041F CYRILLIC CAPITAL LETTER PE' where ujis=0xA7B1;
+update t1 set name='U+0420 CYRILLIC CAPITAL LETTER ER' where ujis=0xA7B2;
+update t1 set name='U+0421 CYRILLIC CAPITAL LETTER ES' where ujis=0xA7B3;
+update t1 set name='U+0422 CYRILLIC CAPITAL LETTER TE' where ujis=0xA7B4;
+update t1 set name='U+0423 CYRILLIC CAPITAL LETTER U' where ujis=0xA7B5;
+update t1 set name='U+0424 CYRILLIC CAPITAL LETTER EF' where ujis=0xA7B6;
+update t1 set name='U+0425 CYRILLIC CAPITAL LETTER HA' where ujis=0xA7B7;
+update t1 set name='U+0426 CYRILLIC CAPITAL LETTER TSE' where ujis=0xA7B8;
+update t1 set name='U+0427 CYRILLIC CAPITAL LETTER CHE' where ujis=0xA7B9;
+update t1 set name='U+0428 CYRILLIC CAPITAL LETTER SHA' where ujis=0xA7BA;
+update t1 set name='U+0429 CYRILLIC CAPITAL LETTER SHCHA' where ujis=0xA7BB;
+update t1 set name='U+042A CYRILLIC CAPITAL LETTER HARD SIGN' where ujis=0xA7BC;
+update t1 set name='U+042B CYRILLIC CAPITAL LETTER YERU' where ujis=0xA7BD;
+update t1 set name='U+042C CYRILLIC CAPITAL LETTER SOFT SIGN' where ujis=0xA7BE;
+update t1 set name='U+042D CYRILLIC CAPITAL LETTER E' where ujis=0xA7BF;
+update t1 set name='U+042E CYRILLIC CAPITAL LETTER YU' where ujis=0xA7C0;
+update t1 set name='U+042F CYRILLIC CAPITAL LETTER YA' where ujis=0xA7C1;
+update t1 set name='U+0430 CYRILLIC SMALL LETTER A' where ujis=0xA7D1;
+update t1 set name='U+0431 CYRILLIC SMALL LETTER BE' where ujis=0xA7D2;
+update t1 set name='U+0432 CYRILLIC SMALL LETTER VE' where ujis=0xA7D3;
+update t1 set name='U+0433 CYRILLIC SMALL LETTER GHE' where ujis=0xA7D4;
+update t1 set name='U+0434 CYRILLIC SMALL LETTER DE' where ujis=0xA7D5;
+update t1 set name='U+0435 CYRILLIC SMALL LETTER IE' where ujis=0xA7D6;
+update t1 set name='U+0451 CYRILLIC SMALL LETTER IO' where ujis=0xA7D7;
+update t1 set name='U+0436 CYRILLIC SMALL LETTER ZHE' where ujis=0xA7D8;
+update t1 set name='U+0437 CYRILLIC SMALL LETTER ZE' where ujis=0xA7D9;
+update t1 set name='U+0438 CYRILLIC SMALL LETTER I' where ujis=0xA7DA;
+update t1 set name='U+0439 CYRILLIC SMALL LETTER SHORT I' where ujis=0xA7DB;
+update t1 set name='U+043A CYRILLIC SMALL LETTER KA' where ujis=0xA7DC;
+update t1 set name='U+043B CYRILLIC SMALL LETTER EL' where ujis=0xA7DD;
+update t1 set name='U+043C CYRILLIC SMALL LETTER EM' where ujis=0xA7DE;
+update t1 set name='U+043D CYRILLIC SMALL LETTER EN' where ujis=0xA7DF;
+update t1 set name='U+043E CYRILLIC SMALL LETTER O' where ujis=0xA7E0;
+update t1 set name='U+043F CYRILLIC SMALL LETTER PE' where ujis=0xA7E1;
+update t1 set name='U+0440 CYRILLIC SMALL LETTER ER' where ujis=0xA7E2;
+update t1 set name='U+0441 CYRILLIC SMALL LETTER ES' where ujis=0xA7E3;
+update t1 set name='U+0442 CYRILLIC SMALL LETTER TE' where ujis=0xA7E4;
+update t1 set name='U+0443 CYRILLIC SMALL LETTER U' where ujis=0xA7E5;
+update t1 set name='U+0444 CYRILLIC SMALL LETTER EF' where ujis=0xA7E6;
+update t1 set name='U+0445 CYRILLIC SMALL LETTER HA' where ujis=0xA7E7;
+update t1 set name='U+0446 CYRILLIC SMALL LETTER TSE' where ujis=0xA7E8;
+update t1 set name='U+0447 CYRILLIC SMALL LETTER CHE' where ujis=0xA7E9;
+update t1 set name='U+0448 CYRILLIC SMALL LETTER SHA' where ujis=0xA7EA;
+update t1 set name='U+0449 CYRILLIC SMALL LETTER SHCHA' where ujis=0xA7EB;
+update t1 set name='U+044A CYRILLIC SMALL LETTER HARD SIGN' where ujis=0xA7EC;
+update t1 set name='U+044B CYRILLIC SMALL LETTER YERU' where ujis=0xA7ED;
+update t1 set name='U+044C CYRILLIC SMALL LETTER SOFT SIGN' where ujis=0xA7EE;
+update t1 set name='U+044D CYRILLIC SMALL LETTER E' where ujis=0xA7EF;
+update t1 set name='U+044E CYRILLIC SMALL LETTER YU' where ujis=0xA7F0;
+update t1 set name='U+044F CYRILLIC SMALL LETTER YA' where ujis=0xA7F1;
+update t1 set name='U+2500 BOX DRAWINGS LIGHT HORIZONTAL' where ujis=0xA8A1;
+update t1 set name='U+2502 BOX DRAWINGS LIGHT VERTICAL' where ujis=0xA8A2;
+update t1 set name='U+250C BOX DRAWINGS LIGHT DOWN AND RIGHT' where ujis=0xA8A3;
+update t1 set name='U+2510 BOX DRAWINGS LIGHT DOWN AND LEFT' where ujis=0xA8A4;
+update t1 set name='U+2518 BOX DRAWINGS LIGHT UP AND LEFT' where ujis=0xA8A5;
+update t1 set name='U+2514 BOX DRAWINGS LIGHT UP AND RIGHT' where ujis=0xA8A6;
+update t1 set name='U+251C BOX DRAWINGS LIGHT VERTICAL AND RIGHT' where ujis=0xA8A7;
+update t1 set name='U+252C BOX DRAWINGS LIGHT DOWN AND HORIZONTAL' where ujis=0xA8A8;
+update t1 set name='U+2524 BOX DRAWINGS LIGHT VERTICAL AND LEFT' where ujis=0xA8A9;
+update t1 set name='U+2534 BOX DRAWINGS LIGHT UP AND HORIZONTAL' where ujis=0xA8AA;
+update t1 set name='U+253C BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL' where ujis=0xA8AB;
+update t1 set name='U+2501 BOX DRAWINGS HEAVY HORIZONTAL' where ujis=0xA8AC;
+update t1 set name='U+2503 BOX DRAWINGS HEAVY VERTICAL' where ujis=0xA8AD;
+update t1 set name='U+250F BOX DRAWINGS HEAVY DOWN AND RIGHT' where ujis=0xA8AE;
+update t1 set name='U+2513 BOX DRAWINGS HEAVY DOWN AND LEFT' where ujis=0xA8AF;
+update t1 set name='U+251B BOX DRAWINGS HEAVY UP AND LEFT' where ujis=0xA8B0;
+update t1 set name='U+2517 BOX DRAWINGS HEAVY UP AND RIGHT' where ujis=0xA8B1;
+update t1 set name='U+2523 BOX DRAWINGS HEAVY VERTICAL AND RIGHT' where ujis=0xA8B2;
+update t1 set name='U+2533 BOX DRAWINGS HEAVY DOWN AND HORIZONTAL' where ujis=0xA8B3;
+update t1 set name='U+252B BOX DRAWINGS HEAVY VERTICAL AND LEFT' where ujis=0xA8B4;
+update t1 set name='U+253B BOX DRAWINGS HEAVY UP AND HORIZONTAL' where ujis=0xA8B5;
+update t1 set name='U+254B BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL' where ujis=0xA8B6;
+update t1 set name='U+2520 BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT' where ujis=0xA8B7;
+update t1 set name='U+252F BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY' where ujis=0xA8B8;
+update t1 set name='U+2528 BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT' where ujis=0xA8B9;
+update t1 set name='U+2537 BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY' where ujis=0xA8BA;
+update t1 set name='U+253F BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY' where ujis=0xA8BB;
+update t1 set name='U+251D BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY' where ujis=0xA8BC;
+update t1 set name='U+2530 BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT' where ujis=0xA8BD;
+update t1 set name='U+2525 BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY' where ujis=0xA8BE;
+update t1 set name='U+2538 BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT' where ujis=0xA8BF;
+update t1 set name='U+2542 BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT' where ujis=0xA8C0;
+update t1 set name='<CJK>' where ujis >= 0xB0A1 AND ujis <= 0xBFFE;
+update t1 set name='<CJK>' where ujis >= 0xC0A1 AND ujis <= 0xCEFE;
+update t1 set name='U+84EE <CJK>' where ujis=0xCFA1;
+update t1 set name='U+9023 <CJK>' where ujis=0xCFA2;
+update t1 set name='U+932C <CJK>' where ujis=0xCFA3;
+update t1 set name='U+5442 <CJK>' where ujis=0xCFA4;
+update t1 set name='U+9B6F <CJK>' where ujis=0xCFA5;
+update t1 set name='U+6AD3 <CJK>' where ujis=0xCFA6;
+update t1 set name='U+7089 <CJK>' where ujis=0xCFA7;
+update t1 set name='U+8CC2 <CJK>' where ujis=0xCFA8;
+update t1 set name='U+8DEF <CJK>' where ujis=0xCFA9;
+update t1 set name='U+9732 <CJK>' where ujis=0xCFAA;
+update t1 set name='U+52B4 <CJK>' where ujis=0xCFAB;
+update t1 set name='U+5A41 <CJK>' where ujis=0xCFAC;
+update t1 set name='U+5ECA <CJK>' where ujis=0xCFAD;
+update t1 set name='U+5F04 <CJK>' where ujis=0xCFAE;
+update t1 set name='U+6717 <CJK>' where ujis=0xCFAF;
+update t1 set name='U+697C <CJK>' where ujis=0xCFB0;
+update t1 set name='U+6994 <CJK>' where ujis=0xCFB1;
+update t1 set name='U+6D6A <CJK>' where ujis=0xCFB2;
+update t1 set name='U+6F0F <CJK>' where ujis=0xCFB3;
+update t1 set name='U+7262 <CJK>' where ujis=0xCFB4;
+update t1 set name='U+72FC <CJK>' where ujis=0xCFB5;
+update t1 set name='U+7BED <CJK>' where ujis=0xCFB6;
+update t1 set name='U+8001 <CJK>' where ujis=0xCFB7;
+update t1 set name='U+807E <CJK>' where ujis=0xCFB8;
+update t1 set name='U+874B <CJK>' where ujis=0xCFB9;
+update t1 set name='U+90CE <CJK>' where ujis=0xCFBA;
+update t1 set name='U+516D <CJK>' where ujis=0xCFBB;
+update t1 set name='U+9E93 <CJK>' where ujis=0xCFBC;
+update t1 set name='U+7984 <CJK>' where ujis=0xCFBD;
+update t1 set name='U+808B <CJK>' where ujis=0xCFBE;
+update t1 set name='U+9332 <CJK>' where ujis=0xCFBF;
+update t1 set name='U+8AD6 <CJK>' where ujis=0xCFC0;
+update t1 set name='U+502D <CJK>' where ujis=0xCFC1;
+update t1 set name='U+548C <CJK>' where ujis=0xCFC2;
+update t1 set name='U+8A71 <CJK>' where ujis=0xCFC3;
+update t1 set name='U+6B6A <CJK>' where ujis=0xCFC4;
+update t1 set name='U+8CC4 <CJK>' where ujis=0xCFC5;
+update t1 set name='U+8107 <CJK>' where ujis=0xCFC6;
+update t1 set name='U+60D1 <CJK>' where ujis=0xCFC7;
+update t1 set name='U+67A0 <CJK>' where ujis=0xCFC8;
+update t1 set name='U+9DF2 <CJK>' where ujis=0xCFC9;
+update t1 set name='U+4E99 <CJK>' where ujis=0xCFCA;
+update t1 set name='U+4E98 <CJK>' where ujis=0xCFCB;
+update t1 set name='U+9C10 <CJK>' where ujis=0xCFCC;
+update t1 set name='U+8A6B <CJK>' where ujis=0xCFCD;
+update t1 set name='U+85C1 <CJK>' where ujis=0xCFCE;
+update t1 set name='U+8568 <CJK>' where ujis=0xCFCF;
+update t1 set name='U+6900 <CJK>' where ujis=0xCFD0;
+update t1 set name='U+6E7E <CJK>' where ujis=0xCFD1;
+update t1 set name='U+7897 <CJK>' where ujis=0xCFD2;
+update t1 set name='U+8155 <CJK>' where ujis=0xCFD3;
+update t1 set name='<CJK>' where ujis >= 0xD0A1 AND ujis <= 0xDFFE;
+update t1 set name='<CJK>' where ujis >= 0xE0A1 AND ujis <= 0xEFFE;
+update t1 set name='<CJK>' where ujis >= 0xF0A1 AND ujis <= 0xF3FE;
+update t1 set name='U+582F <CJK>' where ujis=0xF4A1;
+update t1 set name='U+69C7 <CJK>' where ujis=0xF4A2;
+update t1 set name='U+9059 <CJK>' where ujis=0xF4A3;
+update t1 set name='U+7464 <CJK>' where ujis=0xF4A4;
+update t1 set name='U+51DC <CJK>' where ujis=0xF4A5;
+update t1 set name='U+7199 <CJK>' where ujis=0xF4A6;
+update t1 set name='User defined range #1' where ujis >= 0xF5A1 AND ujis <= 0xFEFE;
+insert into t1 (ujis,name) values (0x8EA1,'U+FF61 HALFWIDTH IDEOGRAPHIC FULL STOP');
+insert into t1 (ujis,name) values (0x8EA2,'U+FF62 HALFWIDTH LEFT CORNER BRACKET');
+insert into t1 (ujis,name) values (0x8EA3,'U+FF63 HALFWIDTH RIGHT CORNER BRACKET');
+insert into t1 (ujis,name) values (0x8EA4,'U+FF64 HALFWIDTH IDEOGRAPHIC COMMA');
+insert into t1 (ujis,name) values (0x8EA5,'U+FF65 HALFWIDTH KATAKANA MIDDLE DOT');
+insert into t1 (ujis,name) values (0x8EA6,'U+FF66 HALFWIDTH KATAKANA LETTER WO');
+insert into t1 (ujis,name) values (0x8EA7,'U+FF67 HALFWIDTH KATAKANA LETTER SMALL A');
+insert into t1 (ujis,name) values (0x8EA8,'U+FF68 HALFWIDTH KATAKANA LETTER SMALL I');
+insert into t1 (ujis,name) values (0x8EA9,'U+FF69 HALFWIDTH KATAKANA LETTER SMALL U');
+insert into t1 (ujis,name) values (0x8EAA,'U+FF6A HALFWIDTH KATAKANA LETTER SMALL E');
+insert into t1 (ujis,name) values (0x8EAB,'U+FF6B HALFWIDTH KATAKANA LETTER SMALL O');
+insert into t1 (ujis,name) values (0x8EAC,'U+FF6C HALFWIDTH KATAKANA LETTER SMALL YA');
+insert into t1 (ujis,name) values (0x8EAD,'U+FF6D HALFWIDTH KATAKANA LETTER SMALL YU');
+insert into t1 (ujis,name) values (0x8EAE,'U+FF6E HALFWIDTH KATAKANA LETTER SMALL YO');
+insert into t1 (ujis,name) values (0x8EAF,'U+FF6F HALFWIDTH KATAKANA LETTER SMALL TU');
+insert into t1 (ujis,name) values (0x8EB0,'U+FF70 HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK');
+insert into t1 (ujis,name) values (0x8EB1,'U+FF71 HALFWIDTH KATAKANA LETTER A');
+insert into t1 (ujis,name) values (0x8EB2,'U+FF72 HALFWIDTH KATAKANA LETTER I');
+insert into t1 (ujis,name) values (0x8EB3,'U+FF73 HALFWIDTH KATAKANA LETTER U');
+insert into t1 (ujis,name) values (0x8EB4,'U+FF74 HALFWIDTH KATAKANA LETTER E');
+insert into t1 (ujis,name) values (0x8EB5,'U+FF75 HALFWIDTH KATAKANA LETTER O');
+insert into t1 (ujis,name) values (0x8EB6,'U+FF76 HALFWIDTH KATAKANA LETTER KA');
+insert into t1 (ujis,name) values (0x8EB7,'U+FF77 HALFWIDTH KATAKANA LETTER KI');
+insert into t1 (ujis,name) values (0x8EB8,'U+FF78 HALFWIDTH KATAKANA LETTER KU');
+insert into t1 (ujis,name) values (0x8EB9,'U+FF79 HALFWIDTH KATAKANA LETTER KE');
+insert into t1 (ujis,name) values (0x8EBA,'U+FF7A HALFWIDTH KATAKANA LETTER KO');
+insert into t1 (ujis,name) values (0x8EBB,'U+FF7B HALFWIDTH KATAKANA LETTER SA');
+insert into t1 (ujis,name) values (0x8EBC,'U+FF7C HALFWIDTH KATAKANA LETTER SI');
+insert into t1 (ujis,name) values (0x8EBD,'U+FF7D HALFWIDTH KATAKANA LETTER SU');
+insert into t1 (ujis,name) values (0x8EBE,'U+FF7E HALFWIDTH KATAKANA LETTER SE');
+insert into t1 (ujis,name) values (0x8EBF,'U+FF7F HALFWIDTH KATAKANA LETTER SO');
+insert into t1 (ujis,name) values (0x8EC0,'U+FF80 HALFWIDTH KATAKANA LETTER TA');
+insert into t1 (ujis,name) values (0x8EC1,'U+FF81 HALFWIDTH KATAKANA LETTER TI');
+insert into t1 (ujis,name) values (0x8EC2,'U+FF82 HALFWIDTH KATAKANA LETTER TU');
+insert into t1 (ujis,name) values (0x8EC3,'U+FF83 HALFWIDTH KATAKANA LETTER TE');
+insert into t1 (ujis,name) values (0x8EC4,'U+FF84 HALFWIDTH KATAKANA LETTER TO');
+insert into t1 (ujis,name) values (0x8EC5,'U+FF85 HALFWIDTH KATAKANA LETTER NA');
+insert into t1 (ujis,name) values (0x8EC6,'U+FF86 HALFWIDTH KATAKANA LETTER NI');
+insert into t1 (ujis,name) values (0x8EC7,'U+FF87 HALFWIDTH KATAKANA LETTER NU');
+insert into t1 (ujis,name) values (0x8EC8,'U+FF88 HALFWIDTH KATAKANA LETTER NE');
+insert into t1 (ujis,name) values (0x8EC9,'U+FF89 HALFWIDTH KATAKANA LETTER NO');
+insert into t1 (ujis,name) values (0x8ECA,'U+FF8A HALFWIDTH KATAKANA LETTER HA');
+insert into t1 (ujis,name) values (0x8ECB,'U+FF8B HALFWIDTH KATAKANA LETTER HI');
+insert into t1 (ujis,name) values (0x8ECC,'U+FF8C HALFWIDTH KATAKANA LETTER HU');
+insert into t1 (ujis,name) values (0x8ECD,'U+FF8D HALFWIDTH KATAKANA LETTER HE');
+insert into t1 (ujis,name) values (0x8ECE,'U+FF8E HALFWIDTH KATAKANA LETTER HO');
+insert into t1 (ujis,name) values (0x8ECF,'U+FF8F HALFWIDTH KATAKANA LETTER MA');
+insert into t1 (ujis,name) values (0x8ED0,'U+FF90 HALFWIDTH KATAKANA LETTER MI');
+insert into t1 (ujis,name) values (0x8ED1,'U+FF91 HALFWIDTH KATAKANA LETTER MU');
+insert into t1 (ujis,name) values (0x8ED2,'U+FF92 HALFWIDTH KATAKANA LETTER ME');
+insert into t1 (ujis,name) values (0x8ED3,'U+FF93 HALFWIDTH KATAKANA LETTER MO');
+insert into t1 (ujis,name) values (0x8ED4,'U+FF94 HALFWIDTH KATAKANA LETTER YA');
+insert into t1 (ujis,name) values (0x8ED5,'U+FF95 HALFWIDTH KATAKANA LETTER YU');
+insert into t1 (ujis,name) values (0x8ED6,'U+FF96 HALFWIDTH KATAKANA LETTER YO');
+insert into t1 (ujis,name) values (0x8ED7,'U+FF97 HALFWIDTH KATAKANA LETTER RA');
+insert into t1 (ujis,name) values (0x8ED8,'U+FF98 HALFWIDTH KATAKANA LETTER RI');
+insert into t1 (ujis,name) values (0x8ED9,'U+FF99 HALFWIDTH KATAKANA LETTER RU');
+insert into t1 (ujis,name) values (0x8EDA,'U+FF9A HALFWIDTH KATAKANA LETTER RE');
+insert into t1 (ujis,name) values (0x8EDB,'U+FF9B HALFWIDTH KATAKANA LETTER RO');
+insert into t1 (ujis,name) values (0x8EDC,'U+FF9C HALFWIDTH KATAKANA LETTER WA');
+insert into t1 (ujis,name) values (0x8EDD,'U+FF9D HALFWIDTH KATAKANA LETTER N');
+insert into t1 (ujis,name) values (0x8EDE,'U+FF9E HALFWIDTH KATAKANA VOICED SOUND MARK');
+insert into t1 (ujis,name) values (0x8EDF,'U+FF9F HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK');
+insert into t1 (ujis) select concat(0x8F,t21.code,t22.code) from t2 t21, t2 t22 order by 1;
+update t1 set name='U+02D8 BREVE' where ujis=0x8FA2AF;
+update t1 set name='U+02C7 CARON (Mandarin Chinese third tone)' where ujis=0x8FA2B0;
+update t1 set name='U+00B8 CEDILLA' where ujis=0x8FA2B1;
+update t1 set name='U+02D9 DOT ABOVE (Mandarin Chinese light tone)' where ujis=0x8FA2B2;
+update t1 set name='U+02DD DOUBLE ACUTE ACCENT' where ujis=0x8FA2B3;
+update t1 set name='U+00AF MACRON' where ujis=0x8FA2B4;
+update t1 set name='U+02DB OGONEK' where ujis=0x8FA2B5;
+update t1 set name='U+02DA RING ABOVE' where ujis=0x8FA2B6;
+update t1 set name='U+007E TILDE' where ujis=0x8FA2B7;
+update t1 set name='U+0384 GREEK TONOS' where ujis=0x8FA2B8;
+update t1 set name='U+0385 GREEK DIALYTIKA TONOS' where ujis=0x8FA2B9;
+update t1 set name='U+00A1 INVERTED EXCLAMATION MARK' where ujis=0x8FA2C2;
+update t1 set name='U+00A6 BROKEN BAR' where ujis=0x8FA2C3;
+update t1 set name='U+00BF INVERTED QUESTION MARK' where ujis=0x8FA2C4;
+update t1 set name='U+00BA MASCULINE ORDINAL INDICATOR' where ujis=0x8FA2EB;
+update t1 set name='U+00AA FEMININE ORDINAL INDICATOR' where ujis=0x8FA2EC;
+update t1 set name='U+00A9 COPYRIGHT SIGN' where ujis=0x8FA2ED;
+update t1 set name='U+00AE REGISTERED SIGN' where ujis=0x8FA2EE;
+update t1 set name='U+2122 TRADE MARK SIGN' where ujis=0x8FA2EF;
+update t1 set name='U+00A4 CURRENCY SIGN' where ujis=0x8FA2F0;
+update t1 set name='U+2116 NUMERO SIGN' where ujis=0x8FA2F1;
+update t1 set name='U+0386 GREEK CAPITAL LETTER ALPHA WITH TONOS' where ujis=0x8FA6E1;
+update t1 set name='U+0388 GREEK CAPITAL LETTER EPSILON WITH TONOS' where ujis=0x8FA6E2;
+update t1 set name='U+0389 GREEK CAPITAL LETTER ETA WITH TONOS' where ujis=0x8FA6E3;
+update t1 set name='U+038A GREEK CAPITAL LETTER IOTA WITH TONOS' where ujis=0x8FA6E4;
+update t1 set name='U+03AA GREEK CAPITAL LETTER IOTA WITH DIALYTIKA' where ujis=0x8FA6E5;
+update t1 set name='U+038C GREEK CAPITAL LETTER OMICRON WITH TONOS' where ujis=0x8FA6E7;
+update t1 set name='U+038E GREEK CAPITAL LETTER UPSILON WITH TONOS' where ujis=0x8FA6E9;
+update t1 set name='U+03AB GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA' where ujis=0x8FA6EA;
+update t1 set name='U+038F GREEK CAPITAL LETTER OMEGA WITH TONOS' where ujis=0x8FA6EC;
+update t1 set name='U+03AC GREEK SMALL LETTER ALPHA WITH TONOS' where ujis=0x8FA6F1;
+update t1 set name='U+03AD GREEK SMALL LETTER EPSILON WITH TONOS' where ujis=0x8FA6F2;
+update t1 set name='U+03AE GREEK SMALL LETTER ETA WITH TONOS' where ujis=0x8FA6F3;
+update t1 set name='U+03AF GREEK SMALL LETTER IOTA WITH TONOS' where ujis=0x8FA6F4;
+update t1 set name='U+03CA GREEK SMALL LETTER IOTA WITH DIALYTIKA' where ujis=0x8FA6F5;
+update t1 set name='U+0390 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS' where ujis=0x8FA6F6;
+update t1 set name='U+03CC GREEK SMALL LETTER OMICRON WITH TONOS' where ujis=0x8FA6F7;
+update t1 set name='U+03C2 GREEK SMALL LETTER FINAL SIGMA' where ujis=0x8FA6F8;
+update t1 set name='U+03CD GREEK SMALL LETTER UPSILON WITH TONOS' where ujis=0x8FA6F9;
+update t1 set name='U+03CB GREEK SMALL LETTER UPSILON WITH DIALYTIKA' where ujis=0x8FA6FA;
+update t1 set name='U+03B0 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS' where ujis=0x8FA6FB;
+update t1 set name='U+03CE GREEK SMALL LETTER OMEGA WITH TONOS' where ujis=0x8FA6FC;
+update t1 set name='U+0402 CYRILLIC CAPITAL LETTER DJE' where ujis=0x8FA7C2;
+update t1 set name='U+0403 CYRILLIC CAPITAL LETTER GJE' where ujis=0x8FA7C3;
+update t1 set name='U+0404 CYRILLIC CAPITAL LETTER UKRAINIAN IE' where ujis=0x8FA7C4;
+update t1 set name='U+0405 CYRILLIC CAPITAL LETTER DZE' where ujis=0x8FA7C5;
+update t1 set name='U+0406 CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I' where ujis=0x8FA7C6;
+update t1 set name='U+0407 CYRILLIC CAPITAL LETTER YI' where ujis=0x8FA7C7;
+update t1 set name='U+0408 CYRILLIC CAPITAL LETTER JE' where ujis=0x8FA7C8;
+update t1 set name='U+0409 CYRILLIC CAPITAL LETTER LJE' where ujis=0x8FA7C9;
+update t1 set name='U+040A CYRILLIC CAPITAL LETTER NJE' where ujis=0x8FA7CA;
+update t1 set name='U+040B CYRILLIC CAPITAL LETTER TSHE' where ujis=0x8FA7CB;
+update t1 set name='U+040C CYRILLIC CAPITAL LETTER KJE' where ujis=0x8FA7CC;
+update t1 set name='U+040E CYRILLIC CAPITAL LETTER SHORT U' where ujis=0x8FA7CD;
+update t1 set name='U+040F CYRILLIC CAPITAL LETTER DZHE' where ujis=0x8FA7CE;
+update t1 set name='U+0452 CYRILLIC SMALL LETTER DJE' where ujis=0x8FA7F2;
+update t1 set name='U+0453 CYRILLIC SMALL LETTER GJE' where ujis=0x8FA7F3;
+update t1 set name='U+0454 CYRILLIC SMALL LETTER UKRAINIAN IE' where ujis=0x8FA7F4;
+update t1 set name='U+0455 CYRILLIC SMALL LETTER DZE' where ujis=0x8FA7F5;
+update t1 set name='U+0456 CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I' where ujis=0x8FA7F6;
+update t1 set name='U+0457 CYRILLIC SMALL LETTER YI' where ujis=0x8FA7F7;
+update t1 set name='U+0458 CYRILLIC SMALL LETTER JE' where ujis=0x8FA7F8;
+update t1 set name='U+0459 CYRILLIC SMALL LETTER LJE' where ujis=0x8FA7F9;
+update t1 set name='U+045A CYRILLIC SMALL LETTER NJE' where ujis=0x8FA7FA;
+update t1 set name='U+045B CYRILLIC SMALL LETTER TSHE' where ujis=0x8FA7FB;
+update t1 set name='U+045C CYRILLIC SMALL LETTER KJE' where ujis=0x8FA7FC;
+update t1 set name='U+045E CYRILLIC SMALL LETTER SHORT U' where ujis=0x8FA7FD;
+update t1 set name='U+045F CYRILLIC SMALL LETTER DZHE' where ujis=0x8FA7FE;
+update t1 set name='U+00C6 LATIN CAPITAL LIGATURE AE' where ujis=0x8FA9A1;
+update t1 set name='U+0110 LATIN CAPITAL LETTER D WITH STROKE' where ujis=0x8FA9A2;
+update t1 set name='U+0126 LATIN CAPITAL LETTER H WITH STROKE' where ujis=0x8FA9A4;
+update t1 set name='U+0132 LATIN CAPITAL LIGATURE IJ' where ujis=0x8FA9A6;
+update t1 set name='U+0141 LATIN CAPITAL LETTER L WITH STROKE' where ujis=0x8FA9A8;
+update t1 set name='U+013F LATIN CAPITAL LETTER L WITH MIDDLE DOT' where ujis=0x8FA9A9;
+update t1 set name='U+014A LATIN CAPITAL LETTER ENG' where ujis=0x8FA9AB;
+update t1 set name='U+00D8 LATIN CAPITAL LETTER O WITH STROKE' where ujis=0x8FA9AC;
+update t1 set name='U+0152 LATIN CAPITAL LIGATURE OE' where ujis=0x8FA9AD;
+update t1 set name='U+0166 LATIN CAPITAL LETTER T WITH STROKE' where ujis=0x8FA9AF;
+update t1 set name='U+00DE LATIN CAPITAL LETTER THORN' where ujis=0x8FA9B0;
+update t1 set name='U+00E6 LATIN SMALL LIGATURE AE' where ujis=0x8FA9C1;
+update t1 set name='U+0111 LATIN SMALL LETTER D WITH STROKE' where ujis=0x8FA9C2;
+update t1 set name='U+00F0 LATIN SMALL LETTER ETH' where ujis=0x8FA9C3;
+update t1 set name='U+0127 LATIN SMALL LETTER H WITH STROKE' where ujis=0x8FA9C4;
+update t1 set name='U+0131 LATIN SMALL LETTER DOTLESS I' where ujis=0x8FA9C5;
+update t1 set name='U+0133 LATIN SMALL LIGATURE IJ' where ujis=0x8FA9C6;
+update t1 set name='U+0138 LATIN SMALL LETTER KRA' where ujis=0x8FA9C7;
+update t1 set name='U+0142 LATIN SMALL LETTER L WITH STROKE' where ujis=0x8FA9C8;
+update t1 set name='U+0140 LATIN SMALL LETTER L WITH MIDDLE DOT' where ujis=0x8FA9C9;
+update t1 set name='U+0149 LATIN SMALL LETTER N PRECEDED BY APOSTROPHE' where ujis=0x8FA9CA;
+update t1 set name='U+014B LATIN SMALL LETTER ENG' where ujis=0x8FA9CB;
+update t1 set name='U+00F8 LATIN SMALL LETTER O WITH STROKE' where ujis=0x8FA9CC;
+update t1 set name='U+0153 LATIN SMALL LIGATURE OE' where ujis=0x8FA9CD;
+update t1 set name='U+00DF LATIN SMALL LETTER SHARP S' where ujis=0x8FA9CE;
+update t1 set name='U+0167 LATIN SMALL LETTER T WITH STROKE' where ujis=0x8FA9CF;
+update t1 set name='U+00FE LATIN SMALL LETTER THORN' where ujis=0x8FA9D0;
+update t1 set name='U+00C1 LATIN CAPITAL LETTER A WITH ACUTE' where ujis=0x8FAAA1;
+update t1 set name='U+00C0 LATIN CAPITAL LETTER A WITH GRAVE' where ujis=0x8FAAA2;
+update t1 set name='U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS' where ujis=0x8FAAA3;
+update t1 set name='U+00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX' where ujis=0x8FAAA4;
+update t1 set name='U+0102 LATIN CAPITAL LETTER A WITH BREVE' where ujis=0x8FAAA5;
+update t1 set name='U+01CD LATIN CAPITAL LETTER A WITH CARON' where ujis=0x8FAAA6;
+update t1 set name='U+0100 LATIN CAPITAL LETTER A WITH MACRON' where ujis=0x8FAAA7;
+update t1 set name='U+0104 LATIN CAPITAL LETTER A WITH OGONEK' where ujis=0x8FAAA8;
+update t1 set name='U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE' where ujis=0x8FAAA9;
+update t1 set name='U+00C3 LATIN CAPITAL LETTER A WITH TILDE' where ujis=0x8FAAAA;
+update t1 set name='U+0106 LATIN CAPITAL LETTER C WITH ACUTE' where ujis=0x8FAAAB;
+update t1 set name='U+0108 LATIN CAPITAL LETTER C WITH CIRCUMFLEX' where ujis=0x8FAAAC;
+update t1 set name='U+010C LATIN CAPITAL LETTER C WITH CARON' where ujis=0x8FAAAD;
+update t1 set name='U+00C7 LATIN CAPITAL LETTER C WITH CEDILLA' where ujis=0x8FAAAE;
+update t1 set name='U+010A LATIN CAPITAL LETTER C WITH DOT ABOVE' where ujis=0x8FAAAF;
+update t1 set name='U+010E LATIN CAPITAL LETTER D WITH CARON' where ujis=0x8FAAB0;
+update t1 set name='U+00C9 LATIN CAPITAL LETTER E WITH ACUTE' where ujis=0x8FAAB1;
+update t1 set name='U+00C8 LATIN CAPITAL LETTER E WITH GRAVE' where ujis=0x8FAAB2;
+update t1 set name='U+00CB LATIN CAPITAL LETTER E WITH DIAERESIS' where ujis=0x8FAAB3;
+update t1 set name='U+00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX' where ujis=0x8FAAB4;
+update t1 set name='U+011A LATIN CAPITAL LETTER E WITH CARON' where ujis=0x8FAAB5;
+update t1 set name='U+0116 LATIN CAPITAL LETTER E WITH DOT ABOVE' where ujis=0x8FAAB6;
+update t1 set name='U+0112 LATIN CAPITAL LETTER E WITH MACRON' where ujis=0x8FAAB7;
+update t1 set name='U+0118 LATIN CAPITAL LETTER E WITH OGONEK' where ujis=0x8FAAB8;
+update t1 set name='U+011C LATIN CAPITAL LETTER G WITH CIRCUMFLEX' where ujis=0x8FAABA;
+update t1 set name='U+011E LATIN CAPITAL LETTER G WITH BREVE' where ujis=0x8FAABB;
+update t1 set name='U+0122 LATIN CAPITAL LETTER G WITH CEDILLA' where ujis=0x8FAABC;
+update t1 set name='U+0120 LATIN CAPITAL LETTER G WITH DOT ABOVE' where ujis=0x8FAABD;
+update t1 set name='U+0124 LATIN CAPITAL LETTER H WITH CIRCUMFLEX' where ujis=0x8FAABE;
+update t1 set name='U+00CD LATIN CAPITAL LETTER I WITH ACUTE' where ujis=0x8FAABF;
+update t1 set name='U+00CC LATIN CAPITAL LETTER I WITH GRAVE' where ujis=0x8FAAC0;
+update t1 set name='U+00CF LATIN CAPITAL LETTER I WITH DIAERESIS' where ujis=0x8FAAC1;
+update t1 set name='U+00CE LATIN CAPITAL LETTER I WITH CIRCUMFLEX' where ujis=0x8FAAC2;
+update t1 set name='U+01CF LATIN CAPITAL LETTER I WITH CARON' where ujis=0x8FAAC3;
+update t1 set name='U+0130 LATIN CAPITAL LETTER I WITH DOT ABOVE' where ujis=0x8FAAC4;
+update t1 set name='U+012A LATIN CAPITAL LETTER I WITH MACRON' where ujis=0x8FAAC5;
+update t1 set name='U+012E LATIN CAPITAL LETTER I WITH OGONEK' where ujis=0x8FAAC6;
+update t1 set name='U+0128 LATIN CAPITAL LETTER I WITH TILDE' where ujis=0x8FAAC7;
+update t1 set name='U+0134 LATIN CAPITAL LETTER J WITH CIRCUMFLEX' where ujis=0x8FAAC8;
+update t1 set name='U+0136 LATIN CAPITAL LETTER K WITH CEDILLA' where ujis=0x8FAAC9;
+update t1 set name='U+0139 LATIN CAPITAL LETTER L WITH ACUTE' where ujis=0x8FAACA;
+update t1 set name='U+013D LATIN CAPITAL LETTER L WITH CARON' where ujis=0x8FAACB;
+update t1 set name='U+013B LATIN CAPITAL LETTER L WITH CEDILLA' where ujis=0x8FAACC;
+update t1 set name='U+0143 LATIN CAPITAL LETTER N WITH ACUTE' where ujis=0x8FAACD;
+update t1 set name='U+0147 LATIN CAPITAL LETTER N WITH CARON' where ujis=0x8FAACE;
+update t1 set name='U+0145 LATIN CAPITAL LETTER N WITH CEDILLA' where ujis=0x8FAACF;
+update t1 set name='U+00D1 LATIN CAPITAL LETTER N WITH TILDE' where ujis=0x8FAAD0;
+update t1 set name='U+00D3 LATIN CAPITAL LETTER O WITH ACUTE' where ujis=0x8FAAD1;
+update t1 set name='U+00D2 LATIN CAPITAL LETTER O WITH GRAVE' where ujis=0x8FAAD2;
+update t1 set name='U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS' where ujis=0x8FAAD3;
+update t1 set name='U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX' where ujis=0x8FAAD4;
+update t1 set name='U+01D1 LATIN CAPITAL LETTER O WITH CARON' where ujis=0x8FAAD5;
+update t1 set name='U+0150 LATIN CAPITAL LETTER O WITH DOUBLE ACUTE' where ujis=0x8FAAD6;
+update t1 set name='U+014C LATIN CAPITAL LETTER O WITH MACRON' where ujis=0x8FAAD7;
+update t1 set name='U+00D5 LATIN CAPITAL LETTER O WITH TILDE' where ujis=0x8FAAD8;
+update t1 set name='U+0154 LATIN CAPITAL LETTER R WITH ACUTE' where ujis=0x8FAAD9;
+update t1 set name='U+0158 LATIN CAPITAL LETTER R WITH CARON' where ujis=0x8FAADA;
+update t1 set name='U+0156 LATIN CAPITAL LETTER R WITH CEDILLA' where ujis=0x8FAADB;
+update t1 set name='U+015A LATIN CAPITAL LETTER S WITH ACUTE' where ujis=0x8FAADC;
+update t1 set name='U+015C LATIN CAPITAL LETTER S WITH CIRCUMFLEX' where ujis=0x8FAADD;
+update t1 set name='U+0160 LATIN CAPITAL LETTER S WITH CARON' where ujis=0x8FAADE;
+update t1 set name='U+015E LATIN CAPITAL LETTER S WITH CEDILLA' where ujis=0x8FAADF;
+update t1 set name='U+0164 LATIN CAPITAL LETTER T WITH CARON' where ujis=0x8FAAE0;
+update t1 set name='U+0162 LATIN CAPITAL LETTER T WITH CEDILLA' where ujis=0x8FAAE1;
+update t1 set name='U+00DA LATIN CAPITAL LETTER U WITH ACUTE' where ujis=0x8FAAE2;
+update t1 set name='U+00D9 LATIN CAPITAL LETTER U WITH GRAVE' where ujis=0x8FAAE3;
+update t1 set name='U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS' where ujis=0x8FAAE4;
+update t1 set name='U+00DB LATIN CAPITAL LETTER U WITH CIRCUMFLEX' where ujis=0x8FAAE5;
+update t1 set name='U+016C LATIN CAPITAL LETTER U WITH BREVE' where ujis=0x8FAAE6;
+update t1 set name='U+01D3 LATIN CAPITAL LETTER U WITH CARON' where ujis=0x8FAAE7;
+update t1 set name='U+0170 LATIN CAPITAL LETTER U WITH DOUBLE ACUTE' where ujis=0x8FAAE8;
+update t1 set name='U+016A LATIN CAPITAL LETTER U WITH MACRON' where ujis=0x8FAAE9;
+update t1 set name='U+0172 LATIN CAPITAL LETTER U WITH OGONEK' where ujis=0x8FAAEA;
+update t1 set name='U+016E LATIN CAPITAL LETTER U WITH RING ABOVE' where ujis=0x8FAAEB;
+update t1 set name='U+0168 LATIN CAPITAL LETTER U WITH TILDE' where ujis=0x8FAAEC;
+update t1 set name='U+01D7 LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE' where ujis=0x8FAAED;
+update t1 set name='U+01DB LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE' where ujis=0x8FAAEE;
+update t1 set name='U+01D9 LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON' where ujis=0x8FAAEF;
+update t1 set name='U+01D5 LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON' where ujis=0x8FAAF0;
+update t1 set name='U+0174 LATIN CAPITAL LETTER W WITH CIRCUMFLEX' where ujis=0x8FAAF1;
+update t1 set name='U+00DD LATIN CAPITAL LETTER Y WITH ACUTE' where ujis=0x8FAAF2;
+update t1 set name='U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS' where ujis=0x8FAAF3;
+update t1 set name='U+0176 LATIN CAPITAL LETTER Y WITH CIRCUMFLEX' where ujis=0x8FAAF4;
+update t1 set name='U+0179 LATIN CAPITAL LETTER Z WITH ACUTE' where ujis=0x8FAAF5;
+update t1 set name='U+017D LATIN CAPITAL LETTER Z WITH CARON' where ujis=0x8FAAF6;
+update t1 set name='U+017B LATIN CAPITAL LETTER Z WITH DOT ABOVE' where ujis=0x8FAAF7;
+update t1 set name='U+00E1 LATIN SMALL LETTER A WITH ACUTE' where ujis=0x8FABA1;
+update t1 set name='U+00E0 LATIN SMALL LETTER A WITH GRAVE' where ujis=0x8FABA2;
+update t1 set name='U+00E4 LATIN SMALL LETTER A WITH DIAERESIS' where ujis=0x8FABA3;
+update t1 set name='U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX' where ujis=0x8FABA4;
+update t1 set name='U+0103 LATIN SMALL LETTER A WITH BREVE' where ujis=0x8FABA5;
+update t1 set name='U+01CE LATIN SMALL LETTER A WITH CARON' where ujis=0x8FABA6;
+update t1 set name='U+0101 LATIN SMALL LETTER A WITH MACRON' where ujis=0x8FABA7;
+update t1 set name='U+0105 LATIN SMALL LETTER A WITH OGONEK' where ujis=0x8FABA8;
+update t1 set name='U+00E5 LATIN SMALL LETTER A WITH RING ABOVE' where ujis=0x8FABA9;
+update t1 set name='U+00E3 LATIN SMALL LETTER A WITH TILDE' where ujis=0x8FABAA;
+update t1 set name='U+0107 LATIN SMALL LETTER C WITH ACUTE' where ujis=0x8FABAB;
+update t1 set name='U+0109 LATIN SMALL LETTER C WITH CIRCUMFLEX' where ujis=0x8FABAC;
+update t1 set name='U+010D LATIN SMALL LETTER C WITH CARON' where ujis=0x8FABAD;
+update t1 set name='U+00E7 LATIN SMALL LETTER C WITH CEDILLA' where ujis=0x8FABAE;
+update t1 set name='U+010B LATIN SMALL LETTER C WITH DOT ABOVE' where ujis=0x8FABAF;
+update t1 set name='U+010F LATIN SMALL LETTER D WITH CARON' where ujis=0x8FABB0;
+update t1 set name='U+00E9 LATIN SMALL LETTER E WITH ACUTE' where ujis=0x8FABB1;
+update t1 set name='U+00E8 LATIN SMALL LETTER E WITH GRAVE' where ujis=0x8FABB2;
+update t1 set name='U+00EB LATIN SMALL LETTER E WITH DIAERESIS' where ujis=0x8FABB3;
+update t1 set name='U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX' where ujis=0x8FABB4;
+update t1 set name='U+011B LATIN SMALL LETTER E WITH CARON' where ujis=0x8FABB5;
+update t1 set name='U+0117 LATIN SMALL LETTER E WITH DOT ABOVE' where ujis=0x8FABB6;
+update t1 set name='U+0113 LATIN SMALL LETTER E WITH MACRON' where ujis=0x8FABB7;
+update t1 set name='U+0119 LATIN SMALL LETTER E WITH OGONEK' where ujis=0x8FABB8;
+update t1 set name='U+01F5 LATIN SMALL LETTER G WITH ACUTE' where ujis=0x8FABB9;
+update t1 set name='U+011D LATIN SMALL LETTER G WITH CIRCUMFLEX' where ujis=0x8FABBA;
+update t1 set name='U+011F LATIN SMALL LETTER G WITH BREVE' where ujis=0x8FABBB;
+update t1 set name='U+0121 LATIN SMALL LETTER G WITH DOT ABOVE' where ujis=0x8FABBD;
+update t1 set name='U+0125 LATIN SMALL LETTER H WITH CIRCUMFLEX' where ujis=0x8FABBE;
+update t1 set name='U+00ED LATIN SMALL LETTER I WITH ACUTE' where ujis=0x8FABBF;
+update t1 set name='U+00EC LATIN SMALL LETTER I WITH GRAVE' where ujis=0x8FABC0;
+update t1 set name='U+00EF LATIN SMALL LETTER I WITH DIAERESIS' where ujis=0x8FABC1;
+update t1 set name='U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX' where ujis=0x8FABC2;
+update t1 set name='U+01D0 LATIN SMALL LETTER I WITH CARON' where ujis=0x8FABC3;
+update t1 set name='U+012B LATIN SMALL LETTER I WITH MACRON' where ujis=0x8FABC5;
+update t1 set name='U+012F LATIN SMALL LETTER I WITH OGONEK' where ujis=0x8FABC6;
+update t1 set name='U+0129 LATIN SMALL LETTER I WITH TILDE' where ujis=0x8FABC7;
+update t1 set name='U+0135 LATIN SMALL LETTER J WITH CIRCUMFLEX' where ujis=0x8FABC8;
+update t1 set name='U+0137 LATIN SMALL LETTER K WITH CEDILLA' where ujis=0x8FABC9;
+update t1 set name='U+013A LATIN SMALL LETTER L WITH ACUTE' where ujis=0x8FABCA;
+update t1 set name='U+013E LATIN SMALL LETTER L WITH CARON' where ujis=0x8FABCB;
+update t1 set name='U+013C LATIN SMALL LETTER L WITH CEDILLA' where ujis=0x8FABCC;
+update t1 set name='U+0144 LATIN SMALL LETTER N WITH ACUTE' where ujis=0x8FABCD;
+update t1 set name='U+0148 LATIN SMALL LETTER N WITH CARON' where ujis=0x8FABCE;
+update t1 set name='U+0146 LATIN SMALL LETTER N WITH CEDILLA' where ujis=0x8FABCF;
+update t1 set name='U+00F1 LATIN SMALL LETTER N WITH TILDE' where ujis=0x8FABD0;
+update t1 set name='U+00F3 LATIN SMALL LETTER O WITH ACUTE' where ujis=0x8FABD1;
+update t1 set name='U+00F2 LATIN SMALL LETTER O WITH GRAVE' where ujis=0x8FABD2;
+update t1 set name='U+00F6 LATIN SMALL LETTER O WITH DIAERESIS' where ujis=0x8FABD3;
+update t1 set name='U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX' where ujis=0x8FABD4;
+update t1 set name='U+01D2 LATIN SMALL LETTER O WITH CARON' where ujis=0x8FABD5;
+update t1 set name='U+0151 LATIN SMALL LETTER O WITH DOUBLE ACUTE' where ujis=0x8FABD6;
+update t1 set name='U+014D LATIN SMALL LETTER O WITH MACRON' where ujis=0x8FABD7;
+update t1 set name='U+00F5 LATIN SMALL LETTER O WITH TILDE' where ujis=0x8FABD8;
+update t1 set name='U+0155 LATIN SMALL LETTER R WITH ACUTE' where ujis=0x8FABD9;
+update t1 set name='U+0159 LATIN SMALL LETTER R WITH CARON' where ujis=0x8FABDA;
+update t1 set name='U+0157 LATIN SMALL LETTER R WITH CEDILLA' where ujis=0x8FABDB;
+update t1 set name='U+015B LATIN SMALL LETTER S WITH ACUTE' where ujis=0x8FABDC;
+update t1 set name='U+015D LATIN SMALL LETTER S WITH CIRCUMFLEX' where ujis=0x8FABDD;
+update t1 set name='U+0161 LATIN SMALL LETTER S WITH CARON' where ujis=0x8FABDE;
+update t1 set name='U+015F LATIN SMALL LETTER S WITH CEDILLA' where ujis=0x8FABDF;
+update t1 set name='U+0165 LATIN SMALL LETTER T WITH CARON' where ujis=0x8FABE0;
+update t1 set name='U+0163 LATIN SMALL LETTER T WITH CEDILLA' where ujis=0x8FABE1;
+update t1 set name='U+00FA LATIN SMALL LETTER U WITH ACUTE' where ujis=0x8FABE2;
+update t1 set name='U+00F9 LATIN SMALL LETTER U WITH GRAVE' where ujis=0x8FABE3;
+update t1 set name='U+00FC LATIN SMALL LETTER U WITH DIAERESIS' where ujis=0x8FABE4;
+update t1 set name='U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX' where ujis=0x8FABE5;
+update t1 set name='U+016D LATIN SMALL LETTER U WITH BREVE' where ujis=0x8FABE6;
+update t1 set name='U+01D4 LATIN SMALL LETTER U WITH CARON' where ujis=0x8FABE7;
+update t1 set name='U+0171 LATIN SMALL LETTER U WITH DOUBLE ACUTE' where ujis=0x8FABE8;
+update t1 set name='U+016B LATIN SMALL LETTER U WITH MACRON' where ujis=0x8FABE9;
+update t1 set name='U+0173 LATIN SMALL LETTER U WITH OGONEK' where ujis=0x8FABEA;
+update t1 set name='U+016F LATIN SMALL LETTER U WITH RING ABOVE' where ujis=0x8FABEB;
+update t1 set name='U+0169 LATIN SMALL LETTER U WITH TILDE' where ujis=0x8FABEC;
+update t1 set name='U+01D8 LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE' where ujis=0x8FABED;
+update t1 set name='U+01DC LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE' where ujis=0x8FABEE;
+update t1 set name='U+01DA LATIN SMALL LETTER U WITH DIAERESIS AND CARON' where ujis=0x8FABEF;
+update t1 set name='U+01D6 LATIN SMALL LETTER U WITH DIAERESIS AND MACRON' where ujis=0x8FABF0;
+update t1 set name='U+0175 LATIN SMALL LETTER W WITH CIRCUMFLEX' where ujis=0x8FABF1;
+update t1 set name='U+00FD LATIN SMALL LETTER Y WITH ACUTE' where ujis=0x8FABF2;
+update t1 set name='U+00FF LATIN SMALL LETTER Y WITH DIAERESIS' where ujis=0x8FABF3;
+update t1 set name='U+0177 LATIN SMALL LETTER Y WITH CIRCUMFLEX' where ujis=0x8FABF4;
+update t1 set name='U+017A LATIN SMALL LETTER Z WITH ACUTE' where ujis=0x8FABF5;
+update t1 set name='U+017E LATIN SMALL LETTER Z WITH CARON' where ujis=0x8FABF6;
+update t1 set name='U+017C LATIN SMALL LETTER Z WITH DOT ABOVE' where ujis=0x8FABF7;
+update t1 set name='<CJK>' where ujis >= 0x8FB0A1 AND ujis <= 0x8FBFFE;
+update t1 set name='<CJK>' where ujis >= 0x8FC0A1 AND ujis <= 0x8FCFFE;
+update t1 set name='<CJK>' where ujis >= 0x8FD0A1 AND ujis <= 0x8FDFFE;
+update t1 set name='<CJK>' where ujis >= 0x8FE0A1 AND ujis <= 0x8FECFE;
+update t1 set name='U+9EF8 <CJK>' where ujis=0x8FEDA1;
+update t1 set name='U+9EFF <CJK>' where ujis=0x8FEDA2;
+update t1 set name='U+9F02 <CJK>' where ujis=0x8FEDA3;
+update t1 set name='U+9F03 <CJK>' where ujis=0x8FEDA4;
+update t1 set name='U+9F09 <CJK>' where ujis=0x8FEDA5;
+update t1 set name='U+9F0F <CJK>' where ujis=0x8FEDA6;
+update t1 set name='U+9F10 <CJK>' where ujis=0x8FEDA7;
+update t1 set name='U+9F11 <CJK>' where ujis=0x8FEDA8;
+update t1 set name='U+9F12 <CJK>' where ujis=0x8FEDA9;
+update t1 set name='U+9F14 <CJK>' where ujis=0x8FEDAA;
+update t1 set name='U+9F16 <CJK>' where ujis=0x8FEDAB;
+update t1 set name='U+9F17 <CJK>' where ujis=0x8FEDAC;
+update t1 set name='U+9F19 <CJK>' where ujis=0x8FEDAD;
+update t1 set name='U+9F1A <CJK>' where ujis=0x8FEDAE;
+update t1 set name='U+9F1B <CJK>' where ujis=0x8FEDAF;
+update t1 set name='U+9F1F <CJK>' where ujis=0x8FEDB0;
+update t1 set name='U+9F22 <CJK>' where ujis=0x8FEDB1;
+update t1 set name='U+9F26 <CJK>' where ujis=0x8FEDB2;
+update t1 set name='U+9F2A <CJK>' where ujis=0x8FEDB3;
+update t1 set name='U+9F2B <CJK>' where ujis=0x8FEDB4;
+update t1 set name='U+9F2F <CJK>' where ujis=0x8FEDB5;
+update t1 set name='U+9F31 <CJK>' where ujis=0x8FEDB6;
+update t1 set name='U+9F32 <CJK>' where ujis=0x8FEDB7;
+update t1 set name='U+9F34 <CJK>' where ujis=0x8FEDB8;
+update t1 set name='U+9F37 <CJK>' where ujis=0x8FEDB9;
+update t1 set name='U+9F39 <CJK>' where ujis=0x8FEDBA;
+update t1 set name='U+9F3A <CJK>' where ujis=0x8FEDBB;
+update t1 set name='U+9F3C <CJK>' where ujis=0x8FEDBC;
+update t1 set name='U+9F3D <CJK>' where ujis=0x8FEDBD;
+update t1 set name='U+9F3F <CJK>' where ujis=0x8FEDBE;
+update t1 set name='U+9F41 <CJK>' where ujis=0x8FEDBF;
+update t1 set name='U+9F43 <CJK>' where ujis=0x8FEDC0;
+update t1 set name='U+9F44 <CJK>' where ujis=0x8FEDC1;
+update t1 set name='U+9F45 <CJK>' where ujis=0x8FEDC2;
+update t1 set name='U+9F46 <CJK>' where ujis=0x8FEDC3;
+update t1 set name='U+9F47 <CJK>' where ujis=0x8FEDC4;
+update t1 set name='U+9F53 <CJK>' where ujis=0x8FEDC5;
+update t1 set name='U+9F55 <CJK>' where ujis=0x8FEDC6;
+update t1 set name='U+9F56 <CJK>' where ujis=0x8FEDC7;
+update t1 set name='U+9F57 <CJK>' where ujis=0x8FEDC8;
+update t1 set name='U+9F58 <CJK>' where ujis=0x8FEDC9;
+update t1 set name='U+9F5A <CJK>' where ujis=0x8FEDCA;
+update t1 set name='U+9F5D <CJK>' where ujis=0x8FEDCB;
+update t1 set name='U+9F5E <CJK>' where ujis=0x8FEDCC;
+update t1 set name='U+9F68 <CJK>' where ujis=0x8FEDCD;
+update t1 set name='U+9F69 <CJK>' where ujis=0x8FEDCE;
+update t1 set name='U+9F6D <CJK>' where ujis=0x8FEDCF;
+update t1 set name='U+9F6E <CJK>' where ujis=0x8FEDD0;
+update t1 set name='U+9F6F <CJK>' where ujis=0x8FEDD1;
+update t1 set name='U+9F70 <CJK>' where ujis=0x8FEDD2;
+update t1 set name='U+9F71 <CJK>' where ujis=0x8FEDD3;
+update t1 set name='U+9F73 <CJK>' where ujis=0x8FEDD4;
+update t1 set name='U+9F75 <CJK>' where ujis=0x8FEDD5;
+update t1 set name='U+9F7A <CJK>' where ujis=0x8FEDD6;
+update t1 set name='U+9F7D <CJK>' where ujis=0x8FEDD7;
+update t1 set name='U+9F8F <CJK>' where ujis=0x8FEDD8;
+update t1 set name='U+9F90 <CJK>' where ujis=0x8FEDD9;
+update t1 set name='U+9F91 <CJK>' where ujis=0x8FEDDA;
+update t1 set name='U+9F92 <CJK>' where ujis=0x8FEDDB;
+update t1 set name='U+9F94 <CJK>' where ujis=0x8FEDDC;
+update t1 set name='U+9F96 <CJK>' where ujis=0x8FEDDD;
+update t1 set name='U+9F97 <CJK>' where ujis=0x8FEDDE;
+update t1 set name='U+9F9E <CJK>' where ujis=0x8FEDDF;
+update t1 set name='U+9FA1 <CJK>' where ujis=0x8FEDE0;
+update t1 set name='U+9FA2 <CJK>' where ujis=0x8FEDE1;
+update t1 set name='U+9FA3 <CJK>' where ujis=0x8FEDE2;
+update t1 set name='U+9FA5 <CJK>' where ujis=0x8FEDE3;
+update t1 set name='User defined range #2' where ujis >= 0x8FF5A1 and ujis <= 0x8FFEFE;
+update t1 set name='UNASSIGNED' where name='';
+update t1 set ucs2=ujis, ujis2=ucs2;
+Warnings:
+Warning 1366 Incorrect string value: '\xA2\xAF' for column 'ucs2' at row 237
+Warning 1366 Incorrect string value: '\xA2\xB0' for column 'ucs2' at row 238
+Warning 1366 Incorrect string value: '\xA2\xB1' for column 'ucs2' at row 239
+Warning 1366 Incorrect string value: '\xA2\xB2' for column 'ucs2' at row 240
+Warning 1366 Incorrect string value: '\xA2\xB3' for column 'ucs2' at row 241
+Warning 1366 Incorrect string value: '\xA2\xB4' for column 'ucs2' at row 242
+Warning 1366 Incorrect string value: '\xA2\xB5' for column 'ucs2' at row 243
+Warning 1366 Incorrect string value: '\xA2\xB6' for column 'ucs2' at row 244
+Warning 1366 Incorrect string value: '\xA2\xB7' for column 'ucs2' at row 245
+Warning 1366 Incorrect string value: '\xA2\xB8' for column 'ucs2' at row 246
+Warning 1366 Incorrect string value: '\xA2\xB9' for column 'ucs2' at row 247
+Warning 1366 Incorrect string value: '\xA2\xC2' for column 'ucs2' at row 256
+Warning 1366 Incorrect string value: '\xA2\xC3' for column 'ucs2' at row 257
+Warning 1366 Incorrect string value: '\xA2\xC4' for column 'ucs2' at row 258
+Warning 1366 Incorrect string value: '\xA2\xC5' for column 'ucs2' at row 259
+Warning 1366 Incorrect string value: '\xA2\xC6' for column 'ucs2' at row 260
+Warning 1366 Incorrect string value: '\xA2\xC7' for column 'ucs2' at row 261
+Warning 1366 Incorrect string value: '\xA2\xC8' for column 'ucs2' at row 262
+Warning 1366 Incorrect string value: '\xA2\xC9' for column 'ucs2' at row 263
+Warning 1366 Incorrect string value: '\xA2\xD1' for column 'ucs2' at row 271
+Warning 1366 Incorrect string value: '\xA2\xD2' for column 'ucs2' at row 272
+Warning 1366 Incorrect string value: '\xA2\xD3' for column 'ucs2' at row 273
+Warning 1366 Incorrect string value: '\xA2\xD4' for column 'ucs2' at row 274
+Warning 1366 Incorrect string value: '\xA2\xD5' for column 'ucs2' at row 275
+Warning 1366 Incorrect string value: '\xA2\xD6' for column 'ucs2' at row 276
+Warning 1366 Incorrect string value: '\xA2\xD7' for column 'ucs2' at row 277
+Warning 1366 Incorrect string value: '\xA2\xD8' for column 'ucs2' at row 278
+Warning 1366 Incorrect string value: '\xA2\xD9' for column 'ucs2' at row 279
+Warning 1366 Incorrect string value: '\xA2\xDA' for column 'ucs2' at row 280
+Warning 1366 Incorrect string value: '\xA2\xDB' for column 'ucs2' at row 281
+Warning 1366 Incorrect string value: '\xA2\xEB' for column 'ucs2' at row 297
+Warning 1366 Incorrect string value: '\xA2\xEC' for column 'ucs2' at row 298
+Warning 1366 Incorrect string value: '\xA2\xED' for column 'ucs2' at row 299
+Warning 1366 Incorrect string value: '\xA2\xEE' for column 'ucs2' at row 300
+Warning 1366 Incorrect string value: '\xA2\xEF' for column 'ucs2' at row 301
+Warning 1366 Incorrect string value: '\xA2\xF0' for column 'ucs2' at row 302
+Warning 1366 Incorrect string value: '\xA2\xF1' for column 'ucs2' at row 303
+Warning 1366 Incorrect string value: '\xA2\xFA' for column 'ucs2' at row 312
+Warning 1366 Incorrect string value: '\xA2\xFB' for column 'ucs2' at row 313
+Warning 1366 Incorrect string value: '\xA2\xFC' for column 'ucs2' at row 314
+Warning 1366 Incorrect string value: '\xA2\xFD' for column 'ucs2' at row 315
+Warning 1366 Incorrect string value: '\xA3\xA1' for column 'ucs2' at row 317
+Warning 1366 Incorrect string value: '\xA3\xA2' for column 'ucs2' at row 318
+Warning 1366 Incorrect string value: '\xA3\xA3' for column 'ucs2' at row 319
+Warning 1366 Incorrect string value: '\xA3\xA4' for column 'ucs2' at row 320
+Warning 1366 Incorrect string value: '\xA3\xA5' for column 'ucs2' at row 321
+Warning 1366 Incorrect string value: '\xA3\xA6' for column 'ucs2' at row 322
+Warning 1366 Incorrect string value: '\xA3\xA7' for column 'ucs2' at row 323
+Warning 1366 Incorrect string value: '\xA3\xA8' for column 'ucs2' at row 324
+Warning 1366 Incorrect string value: '\xA3\xA9' for column 'ucs2' at row 325
+Warning 1366 Incorrect string value: '\xA3\xAA' for column 'ucs2' at row 326
+Warning 1366 Incorrect string value: '\xA3\xAB' for column 'ucs2' at row 327
+Warning 1366 Incorrect string value: '\xA3\xAC' for column 'ucs2' at row 328
+Warning 1366 Incorrect string value: '\xA3\xAD' for column 'ucs2' at row 329
+Warning 1366 Incorrect string value: '\xA3\xAE' for column 'ucs2' at row 330
+Warning 1366 Incorrect string value: '\xA3\xAF' for column 'ucs2' at row 331
+Warning 1366 Incorrect string value: '\xA3\xBA' for column 'ucs2' at row 342
+Warning 1366 Incorrect string value: '\xA3\xBB' for column 'ucs2' at row 343
+Warning 1366 Incorrect string value: '\xA3\xBC' for column 'ucs2' at row 344
+Warning 1366 Incorrect string value: '\xA3\xBD' for column 'ucs2' at row 345
+Warning 1366 Incorrect string value: '\xA3\xBE' for column 'ucs2' at row 346
+Warning 1366 Incorrect string value: '\xA3\xBF' for column 'ucs2' at row 347
+Warning 1366 Incorrect string value: '\xA3\xC0' for column 'ucs2' at row 348
+Warning 1366 Incorrect string value: '\xA3\xDB' for column 'ucs2' at row 375
+Characters with safe Unicode round trip
+select hex(ujis), hex(ucs2), hex(ujis2), name from t1 where ujis=ujis2 order by ujis;
+hex(ujis) hex(ucs2) hex(ujis2) name
+00 0000 00 U+0000 NULL
+01 0001 01 U+0001 START OF HEADING
+02 0002 02 U+0002 START OF TEXT
+03 0003 03 U+0003 END OF TEXT
+04 0004 04 U+0004 END OF TRANSMISSION
+05 0005 05 U+0005 ENQUIRY
+06 0006 06 U+0006 ACKNOWLEDGE
+07 0007 07 U+0007 BELL
+08 0008 08 U+0008 BACKSPACE
+09 0009 09 U+0009 HORIZONTAL TABULATION
+0A 000A 0A U+000A LINE FEED
+0B 000B 0B U+000B VERTICAL TABULATION
+0C 000C 0C U+000C FORM FEED
+0D 000D 0D U+000D CARRIAGE RETURN
+0E 000E 0E U+000E SHIFT OUT
+0F 000F 0F U+000F SHIFT IN
+10 0010 10 U+0010 DATA LINK ESCAPE
+11 0011 11 U+0011 DEVICE CONTROL ONE
+12 0012 12 U+0012 DEVICE CONTROL TWO
+13 0013 13 U+0013 DEVICE CONTROL THREE
+14 0014 14 U+0014 DEVICE CONTROL FOUR
+15 0015 15 U+0015 NEGATIVE ACKNOWLEDGE
+16 0016 16 U+0016 SYNCHRONOUS IDLE
+17 0017 17 U+0017 END OF TRANSMISSION BLOCK
+18 0018 18 U+0018 CANCEL
+19 0019 19 U+0019 END OF MEDIUM
+1A 001A 1A U+001A SUBSTITUTE
+1B 001B 1B U+001B ESCAPE
+1C 001C 1C U+001C FILE SEPARATOR
+1D 001D 1D U+001D GROUP SEPARATOR
+1E 001E 1E U+001E RECORD SEPARATOR
+1F 001F 1F U+001F UNIT SEPARATOR
+20 0020 20 U+0020 SPACE
+21 0021 21 U+0021 EXCLAMATION MARK
+22 0022 22 U+0022 QUOTATION MARK
+23 0023 23 U+0023 NUMBER SIGN
+24 0024 24 U+0024 DOLLAR SIGN
+25 0025 25 U+0025 PERCENT SIGN
+26 0026 26 U+0026 AMPERSAND
+27 0027 27 U+0027 APOSTROPHE
+28 0028 28 U+0028 LEFT PARENTHESIS
+29 0029 29 U+0029 RIGHT PARENTHESIS
+2A 002A 2A U+002A ASTERISK
+2B 002B 2B U+002B PLUS SIGN
+2C 002C 2C U+002C COMMA
+2D 002D 2D U+002D HYPHEN-MINUS
+2E 002E 2E U+002E FULL STOP
+2F 002F 2F U+002F SOLIDUS
+30 0030 30 U+0030 DIGIT ZERO
+31 0031 31 U+0031 DIGIT ONE
+32 0032 32 U+0032 DIGIT TWO
+33 0033 33 U+0033 DIGIT THREE
+34 0034 34 U+0034 DIGIT FOUR
+35 0035 35 U+0035 DIGIT FIVE
+36 0036 36 U+0036 DIGIT SIX
+37 0037 37 U+0037 DIGIT SEVEN
+38 0038 38 U+0038 DIGIT EIGHT
+39 0039 39 U+0039 DIGIT NINE
+3A 003A 3A U+003A COLON
+3B 003B 3B U+003B SEMICOLON
+3C 003C 3C U+003C LESS-THAN SIGN
+3D 003D 3D U+003D EQUALS SIGN
+3E 003E 3E U+003E GREATER-THAN SIGN
+3F 003F 3F U+003F QUESTION MARK
+40 0040 40 U+0040 COMMERCIAL AT
+41 0041 41 U+0041 LATIN CAPITAL LETTER A
+42 0042 42 U+0042 LATIN CAPITAL LETTER B
+43 0043 43 U+0043 LATIN CAPITAL LETTER C
+44 0044 44 U+0044 LATIN CAPITAL LETTER D
+45 0045 45 U+0045 LATIN CAPITAL LETTER E
+46 0046 46 U+0046 LATIN CAPITAL LETTER F
+47 0047 47 U+0047 LATIN CAPITAL LETTER G
+48 0048 48 U+0048 LATIN CAPITAL LETTER H
+49 0049 49 U+0049 LATIN CAPITAL LETTER I
+4A 004A 4A U+004A LATIN CAPITAL LETTER J
+4B 004B 4B U+004B LATIN CAPITAL LETTER K
+4C 004C 4C U+004C LATIN CAPITAL LETTER L
+4D 004D 4D U+004D LATIN CAPITAL LETTER M
+4E 004E 4E U+004E LATIN CAPITAL LETTER N
+4F 004F 4F U+004F LATIN CAPITAL LETTER O
+50 0050 50 U+0050 LATIN CAPITAL LETTER P
+51 0051 51 U+0051 LATIN CAPITAL LETTER Q
+52 0052 52 U+0052 LATIN CAPITAL LETTER R
+53 0053 53 U+0053 LATIN CAPITAL LETTER S
+54 0054 54 U+0054 LATIN CAPITAL LETTER T
+55 0055 55 U+0055 LATIN CAPITAL LETTER U
+56 0056 56 U+0056 LATIN CAPITAL LETTER V
+57 0057 57 U+0057 LATIN CAPITAL LETTER W
+58 0058 58 U+0058 LATIN CAPITAL LETTER X
+59 0059 59 U+0059 LATIN CAPITAL LETTER Y
+5A 005A 5A U+005A LATIN CAPITAL LETTER Z
+5B 005B 5B U+005B LEFT SQUARE BRACKET
+5C 005C 5C U+005C REVERSE SOLIDUS
+5D 005D 5D U+005D RIGHT SQUARE BRACKET
+5E 005E 5E U+005E CIRCUMFLEX ACCENT
+5F 005F 5F U+005F LOW LINE
+60 0060 60 U+0060 GRAVE ACCENT
+61 0061 61 U+0061 LATIN SMALL LETTER A
+62 0062 62 U+0062 LATIN SMALL LETTER B
+63 0063 63 U+0063 LATIN SMALL LETTER C
+64 0064 64 U+0064 LATIN SMALL LETTER D
+65 0065 65 U+0065 LATIN SMALL LETTER E
+66 0066 66 U+0066 LATIN SMALL LETTER F
+67 0067 67 U+0067 LATIN SMALL LETTER G
+68 0068 68 U+0068 LATIN SMALL LETTER H
+69 0069 69 U+0069 LATIN SMALL LETTER I
+6A 006A 6A U+006A LATIN SMALL LETTER J
+6B 006B 6B U+006B LATIN SMALL LETTER K
+6C 006C 6C U+006C LATIN SMALL LETTER L
+6D 006D 6D U+006D LATIN SMALL LETTER M
+6E 006E 6E U+006E LATIN SMALL LETTER N
+6F 006F 6F U+006F LATIN SMALL LETTER O
+70 0070 70 U+0070 LATIN SMALL LETTER P
+71 0071 71 U+0071 LATIN SMALL LETTER Q
+72 0072 72 U+0072 LATIN SMALL LETTER R
+73 0073 73 U+0073 LATIN SMALL LETTER S
+74 0074 74 U+0074 LATIN SMALL LETTER T
+75 0075 75 U+0075 LATIN SMALL LETTER U
+76 0076 76 U+0076 LATIN SMALL LETTER V
+77 0077 77 U+0077 LATIN SMALL LETTER W
+78 0078 78 U+0078 LATIN SMALL LETTER X
+79 0079 79 U+0079 LATIN SMALL LETTER Y
+7A 007A 7A U+007A LATIN SMALL LETTER Z
+7B 007B 7B U+007B LEFT CURLY BRACKET
+7C 007C 7C U+007C VERTICAL LINE
+7D 007D 7D U+007D RIGHT CURLY BRACKET
+7E 007E 7E U+007E TILDE
+7F 007F 7F U+007F DELETE
+8EA1 FF61 8EA1 U+FF61 HALFWIDTH IDEOGRAPHIC FULL STOP
+8EA2 FF62 8EA2 U+FF62 HALFWIDTH LEFT CORNER BRACKET
+8EA3 FF63 8EA3 U+FF63 HALFWIDTH RIGHT CORNER BRACKET
+8EA4 FF64 8EA4 U+FF64 HALFWIDTH IDEOGRAPHIC COMMA
+8EA5 FF65 8EA5 U+FF65 HALFWIDTH KATAKANA MIDDLE DOT
+8EA6 FF66 8EA6 U+FF66 HALFWIDTH KATAKANA LETTER WO
+8EA7 FF67 8EA7 U+FF67 HALFWIDTH KATAKANA LETTER SMALL A
+8EA8 FF68 8EA8 U+FF68 HALFWIDTH KATAKANA LETTER SMALL I
+8EA9 FF69 8EA9 U+FF69 HALFWIDTH KATAKANA LETTER SMALL U
+8EAA FF6A 8EAA U+FF6A HALFWIDTH KATAKANA LETTER SMALL E
+8EAB FF6B 8EAB U+FF6B HALFWIDTH KATAKANA LETTER SMALL O
+8EAC FF6C 8EAC U+FF6C HALFWIDTH KATAKANA LETTER SMALL YA
+8EAD FF6D 8EAD U+FF6D HALFWIDTH KATAKANA LETTER SMALL YU
+8EAE FF6E 8EAE U+FF6E HALFWIDTH KATAKANA LETTER SMALL YO
+8EAF FF6F 8EAF U+FF6F HALFWIDTH KATAKANA LETTER SMALL TU
+8EB0 FF70 8EB0 U+FF70 HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
+8EB1 FF71 8EB1 U+FF71 HALFWIDTH KATAKANA LETTER A
+8EB2 FF72 8EB2 U+FF72 HALFWIDTH KATAKANA LETTER I
+8EB3 FF73 8EB3 U+FF73 HALFWIDTH KATAKANA LETTER U
+8EB4 FF74 8EB4 U+FF74 HALFWIDTH KATAKANA LETTER E
+8EB5 FF75 8EB5 U+FF75 HALFWIDTH KATAKANA LETTER O
+8EB6 FF76 8EB6 U+FF76 HALFWIDTH KATAKANA LETTER KA
+8EB7 FF77 8EB7 U+FF77 HALFWIDTH KATAKANA LETTER KI
+8EB8 FF78 8EB8 U+FF78 HALFWIDTH KATAKANA LETTER KU
+8EB9 FF79 8EB9 U+FF79 HALFWIDTH KATAKANA LETTER KE
+8EBA FF7A 8EBA U+FF7A HALFWIDTH KATAKANA LETTER KO
+8EBB FF7B 8EBB U+FF7B HALFWIDTH KATAKANA LETTER SA
+8EBC FF7C 8EBC U+FF7C HALFWIDTH KATAKANA LETTER SI
+8EBD FF7D 8EBD U+FF7D HALFWIDTH KATAKANA LETTER SU
+8EBE FF7E 8EBE U+FF7E HALFWIDTH KATAKANA LETTER SE
+8EBF FF7F 8EBF U+FF7F HALFWIDTH KATAKANA LETTER SO
+8EC0 FF80 8EC0 U+FF80 HALFWIDTH KATAKANA LETTER TA
+8EC1 FF81 8EC1 U+FF81 HALFWIDTH KATAKANA LETTER TI
+8EC2 FF82 8EC2 U+FF82 HALFWIDTH KATAKANA LETTER TU
+8EC3 FF83 8EC3 U+FF83 HALFWIDTH KATAKANA LETTER TE
+8EC4 FF84 8EC4 U+FF84 HALFWIDTH KATAKANA LETTER TO
+8EC5 FF85 8EC5 U+FF85 HALFWIDTH KATAKANA LETTER NA
+8EC6 FF86 8EC6 U+FF86 HALFWIDTH KATAKANA LETTER NI
+8EC7 FF87 8EC7 U+FF87 HALFWIDTH KATAKANA LETTER NU
+8EC8 FF88 8EC8 U+FF88 HALFWIDTH KATAKANA LETTER NE
+8EC9 FF89 8EC9 U+FF89 HALFWIDTH KATAKANA LETTER NO
+8ECA FF8A 8ECA U+FF8A HALFWIDTH KATAKANA LETTER HA
+8ECB FF8B 8ECB U+FF8B HALFWIDTH KATAKANA LETTER HI
+8ECC FF8C 8ECC U+FF8C HALFWIDTH KATAKANA LETTER HU
+8ECD FF8D 8ECD U+FF8D HALFWIDTH KATAKANA LETTER HE
+8ECE FF8E 8ECE U+FF8E HALFWIDTH KATAKANA LETTER HO
+8ECF FF8F 8ECF U+FF8F HALFWIDTH KATAKANA LETTER MA
+8ED0 FF90 8ED0 U+FF90 HALFWIDTH KATAKANA LETTER MI
+8ED1 FF91 8ED1 U+FF91 HALFWIDTH KATAKANA LETTER MU
+8ED2 FF92 8ED2 U+FF92 HALFWIDTH KATAKANA LETTER ME
+8ED3 FF93 8ED3 U+FF93 HALFWIDTH KATAKANA LETTER MO
+8ED4 FF94 8ED4 U+FF94 HALFWIDTH KATAKANA LETTER YA
+8ED5 FF95 8ED5 U+FF95 HALFWIDTH KATAKANA LETTER YU
+8ED6 FF96 8ED6 U+FF96 HALFWIDTH KATAKANA LETTER YO
+8ED7 FF97 8ED7 U+FF97 HALFWIDTH KATAKANA LETTER RA
+8ED8 FF98 8ED8 U+FF98 HALFWIDTH KATAKANA LETTER RI
+8ED9 FF99 8ED9 U+FF99 HALFWIDTH KATAKANA LETTER RU
+8EDA FF9A 8EDA U+FF9A HALFWIDTH KATAKANA LETTER RE
+8EDB FF9B 8EDB U+FF9B HALFWIDTH KATAKANA LETTER RO
+8EDC FF9C 8EDC U+FF9C HALFWIDTH KATAKANA LETTER WA
+8EDD FF9D 8EDD U+FF9D HALFWIDTH KATAKANA LETTER N
+8EDE FF9E 8EDE U+FF9E HALFWIDTH KATAKANA VOICED SOUND MARK
+8EDF FF9F 8EDF U+FF9F HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+8FA2AF 02D8 8FA2AF U+02D8 BREVE
+8FA2B0 02C7 8FA2B0 U+02C7 CARON (Mandarin Chinese third tone)
+8FA2B1 00B8 8FA2B1 U+00B8 CEDILLA
+8FA2B2 02D9 8FA2B2 U+02D9 DOT ABOVE (Mandarin Chinese light tone)
+8FA2B3 02DD 8FA2B3 U+02DD DOUBLE ACUTE ACCENT
+8FA2B4 00AF 8FA2B4 U+00AF MACRON
+8FA2B5 02DB 8FA2B5 U+02DB OGONEK
+8FA2B6 02DA 8FA2B6 U+02DA RING ABOVE
+8FA2B8 0384 8FA2B8 U+0384 GREEK TONOS
+8FA2B9 0385 8FA2B9 U+0385 GREEK DIALYTIKA TONOS
+8FA2C2 00A1 8FA2C2 U+00A1 INVERTED EXCLAMATION MARK
+8FA2C3 00A6 8FA2C3 U+00A6 BROKEN BAR
+8FA2C4 00BF 8FA2C4 U+00BF INVERTED QUESTION MARK
+8FA2EB 00BA 8FA2EB U+00BA MASCULINE ORDINAL INDICATOR
+8FA2EC 00AA 8FA2EC U+00AA FEMININE ORDINAL INDICATOR
+8FA2ED 00A9 8FA2ED U+00A9 COPYRIGHT SIGN
+8FA2EE 00AE 8FA2EE U+00AE REGISTERED SIGN
+8FA2EF 2122 8FA2EF U+2122 TRADE MARK SIGN
+8FA2F0 00A4 8FA2F0 U+00A4 CURRENCY SIGN
+8FA2F1 2116 8FA2F1 U+2116 NUMERO SIGN
+8FA6E1 0386 8FA6E1 U+0386 GREEK CAPITAL LETTER ALPHA WITH TONOS
+8FA6E2 0388 8FA6E2 U+0388 GREEK CAPITAL LETTER EPSILON WITH TONOS
+8FA6E3 0389 8FA6E3 U+0389 GREEK CAPITAL LETTER ETA WITH TONOS
+8FA6E4 038A 8FA6E4 U+038A GREEK CAPITAL LETTER IOTA WITH TONOS
+8FA6E5 03AA 8FA6E5 U+03AA GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+8FA6E7 038C 8FA6E7 U+038C GREEK CAPITAL LETTER OMICRON WITH TONOS
+8FA6E9 038E 8FA6E9 U+038E GREEK CAPITAL LETTER UPSILON WITH TONOS
+8FA6EA 03AB 8FA6EA U+03AB GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+8FA6EC 038F 8FA6EC U+038F GREEK CAPITAL LETTER OMEGA WITH TONOS
+8FA6F1 03AC 8FA6F1 U+03AC GREEK SMALL LETTER ALPHA WITH TONOS
+8FA6F2 03AD 8FA6F2 U+03AD GREEK SMALL LETTER EPSILON WITH TONOS
+8FA6F3 03AE 8FA6F3 U+03AE GREEK SMALL LETTER ETA WITH TONOS
+8FA6F4 03AF 8FA6F4 U+03AF GREEK SMALL LETTER IOTA WITH TONOS
+8FA6F5 03CA 8FA6F5 U+03CA GREEK SMALL LETTER IOTA WITH DIALYTIKA
+8FA6F6 0390 8FA6F6 U+0390 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+8FA6F7 03CC 8FA6F7 U+03CC GREEK SMALL LETTER OMICRON WITH TONOS
+8FA6F8 03C2 8FA6F8 U+03C2 GREEK SMALL LETTER FINAL SIGMA
+8FA6F9 03CD 8FA6F9 U+03CD GREEK SMALL LETTER UPSILON WITH TONOS
+8FA6FA 03CB 8FA6FA U+03CB GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+8FA6FB 03B0 8FA6FB U+03B0 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+8FA6FC 03CE 8FA6FC U+03CE GREEK SMALL LETTER OMEGA WITH TONOS
+8FA7C2 0402 8FA7C2 U+0402 CYRILLIC CAPITAL LETTER DJE
+8FA7C3 0403 8FA7C3 U+0403 CYRILLIC CAPITAL LETTER GJE
+8FA7C4 0404 8FA7C4 U+0404 CYRILLIC CAPITAL LETTER UKRAINIAN IE
+8FA7C5 0405 8FA7C5 U+0405 CYRILLIC CAPITAL LETTER DZE
+8FA7C6 0406 8FA7C6 U+0406 CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+8FA7C7 0407 8FA7C7 U+0407 CYRILLIC CAPITAL LETTER YI
+8FA7C8 0408 8FA7C8 U+0408 CYRILLIC CAPITAL LETTER JE
+8FA7C9 0409 8FA7C9 U+0409 CYRILLIC CAPITAL LETTER LJE
+8FA7CA 040A 8FA7CA U+040A CYRILLIC CAPITAL LETTER NJE
+8FA7CB 040B 8FA7CB U+040B CYRILLIC CAPITAL LETTER TSHE
+8FA7CC 040C 8FA7CC U+040C CYRILLIC CAPITAL LETTER KJE
+8FA7CD 040E 8FA7CD U+040E CYRILLIC CAPITAL LETTER SHORT U
+8FA7CE 040F 8FA7CE U+040F CYRILLIC CAPITAL LETTER DZHE
+8FA7F2 0452 8FA7F2 U+0452 CYRILLIC SMALL LETTER DJE
+8FA7F3 0453 8FA7F3 U+0453 CYRILLIC SMALL LETTER GJE
+8FA7F4 0454 8FA7F4 U+0454 CYRILLIC SMALL LETTER UKRAINIAN IE
+8FA7F5 0455 8FA7F5 U+0455 CYRILLIC SMALL LETTER DZE
+8FA7F6 0456 8FA7F6 U+0456 CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+8FA7F7 0457 8FA7F7 U+0457 CYRILLIC SMALL LETTER YI
+8FA7F8 0458 8FA7F8 U+0458 CYRILLIC SMALL LETTER JE
+8FA7F9 0459 8FA7F9 U+0459 CYRILLIC SMALL LETTER LJE
+8FA7FA 045A 8FA7FA U+045A CYRILLIC SMALL LETTER NJE
+8FA7FB 045B 8FA7FB U+045B CYRILLIC SMALL LETTER TSHE
+8FA7FC 045C 8FA7FC U+045C CYRILLIC SMALL LETTER KJE
+8FA7FD 045E 8FA7FD U+045E CYRILLIC SMALL LETTER SHORT U
+8FA7FE 045F 8FA7FE U+045F CYRILLIC SMALL LETTER DZHE
+8FA9A1 00C6 8FA9A1 U+00C6 LATIN CAPITAL LIGATURE AE
+8FA9A2 0110 8FA9A2 U+0110 LATIN CAPITAL LETTER D WITH STROKE
+8FA9A4 0126 8FA9A4 U+0126 LATIN CAPITAL LETTER H WITH STROKE
+8FA9A6 0132 8FA9A6 U+0132 LATIN CAPITAL LIGATURE IJ
+8FA9A8 0141 8FA9A8 U+0141 LATIN CAPITAL LETTER L WITH STROKE
+8FA9A9 013F 8FA9A9 U+013F LATIN CAPITAL LETTER L WITH MIDDLE DOT
+8FA9AB 014A 8FA9AB U+014A LATIN CAPITAL LETTER ENG
+8FA9AC 00D8 8FA9AC U+00D8 LATIN CAPITAL LETTER O WITH STROKE
+8FA9AD 0152 8FA9AD U+0152 LATIN CAPITAL LIGATURE OE
+8FA9AF 0166 8FA9AF U+0166 LATIN CAPITAL LETTER T WITH STROKE
+8FA9B0 00DE 8FA9B0 U+00DE LATIN CAPITAL LETTER THORN
+8FA9C1 00E6 8FA9C1 U+00E6 LATIN SMALL LIGATURE AE
+8FA9C2 0111 8FA9C2 U+0111 LATIN SMALL LETTER D WITH STROKE
+8FA9C3 00F0 8FA9C3 U+00F0 LATIN SMALL LETTER ETH
+8FA9C4 0127 8FA9C4 U+0127 LATIN SMALL LETTER H WITH STROKE
+8FA9C5 0131 8FA9C5 U+0131 LATIN SMALL LETTER DOTLESS I
+8FA9C6 0133 8FA9C6 U+0133 LATIN SMALL LIGATURE IJ
+8FA9C7 0138 8FA9C7 U+0138 LATIN SMALL LETTER KRA
+8FA9C8 0142 8FA9C8 U+0142 LATIN SMALL LETTER L WITH STROKE
+8FA9C9 0140 8FA9C9 U+0140 LATIN SMALL LETTER L WITH MIDDLE DOT
+8FA9CA 0149 8FA9CA U+0149 LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+8FA9CB 014B 8FA9CB U+014B LATIN SMALL LETTER ENG
+8FA9CC 00F8 8FA9CC U+00F8 LATIN SMALL LETTER O WITH STROKE
+8FA9CD 0153 8FA9CD U+0153 LATIN SMALL LIGATURE OE
+8FA9CE 00DF 8FA9CE U+00DF LATIN SMALL LETTER SHARP S
+8FA9CF 0167 8FA9CF U+0167 LATIN SMALL LETTER T WITH STROKE
+8FA9D0 00FE 8FA9D0 U+00FE LATIN SMALL LETTER THORN
+8FAAA1 00C1 8FAAA1 U+00C1 LATIN CAPITAL LETTER A WITH ACUTE
+8FAAA2 00C0 8FAAA2 U+00C0 LATIN CAPITAL LETTER A WITH GRAVE
+8FAAA3 00C4 8FAAA3 U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS
+8FAAA4 00C2 8FAAA4 U+00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+8FAAA5 0102 8FAAA5 U+0102 LATIN CAPITAL LETTER A WITH BREVE
+8FAAA6 01CD 8FAAA6 U+01CD LATIN CAPITAL LETTER A WITH CARON
+8FAAA7 0100 8FAAA7 U+0100 LATIN CAPITAL LETTER A WITH MACRON
+8FAAA8 0104 8FAAA8 U+0104 LATIN CAPITAL LETTER A WITH OGONEK
+8FAAA9 00C5 8FAAA9 U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE
+8FAAAA 00C3 8FAAAA U+00C3 LATIN CAPITAL LETTER A WITH TILDE
+8FAAAB 0106 8FAAAB U+0106 LATIN CAPITAL LETTER C WITH ACUTE
+8FAAAC 0108 8FAAAC U+0108 LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+8FAAAD 010C 8FAAAD U+010C LATIN CAPITAL LETTER C WITH CARON
+8FAAAE 00C7 8FAAAE U+00C7 LATIN CAPITAL LETTER C WITH CEDILLA
+8FAAAF 010A 8FAAAF U+010A LATIN CAPITAL LETTER C WITH DOT ABOVE
+8FAAB0 010E 8FAAB0 U+010E LATIN CAPITAL LETTER D WITH CARON
+8FAAB1 00C9 8FAAB1 U+00C9 LATIN CAPITAL LETTER E WITH ACUTE
+8FAAB2 00C8 8FAAB2 U+00C8 LATIN CAPITAL LETTER E WITH GRAVE
+8FAAB3 00CB 8FAAB3 U+00CB LATIN CAPITAL LETTER E WITH DIAERESIS
+8FAAB4 00CA 8FAAB4 U+00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+8FAAB5 011A 8FAAB5 U+011A LATIN CAPITAL LETTER E WITH CARON
+8FAAB6 0116 8FAAB6 U+0116 LATIN CAPITAL LETTER E WITH DOT ABOVE
+8FAAB7 0112 8FAAB7 U+0112 LATIN CAPITAL LETTER E WITH MACRON
+8FAAB8 0118 8FAAB8 U+0118 LATIN CAPITAL LETTER E WITH OGONEK
+8FAABA 011C 8FAABA U+011C LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+8FAABB 011E 8FAABB U+011E LATIN CAPITAL LETTER G WITH BREVE
+8FAABC 0122 8FAABC U+0122 LATIN CAPITAL LETTER G WITH CEDILLA
+8FAABD 0120 8FAABD U+0120 LATIN CAPITAL LETTER G WITH DOT ABOVE
+8FAABE 0124 8FAABE U+0124 LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+8FAABF 00CD 8FAABF U+00CD LATIN CAPITAL LETTER I WITH ACUTE
+8FAAC0 00CC 8FAAC0 U+00CC LATIN CAPITAL LETTER I WITH GRAVE
+8FAAC1 00CF 8FAAC1 U+00CF LATIN CAPITAL LETTER I WITH DIAERESIS
+8FAAC2 00CE 8FAAC2 U+00CE LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+8FAAC3 01CF 8FAAC3 U+01CF LATIN CAPITAL LETTER I WITH CARON
+8FAAC4 0130 8FAAC4 U+0130 LATIN CAPITAL LETTER I WITH DOT ABOVE
+8FAAC5 012A 8FAAC5 U+012A LATIN CAPITAL LETTER I WITH MACRON
+8FAAC6 012E 8FAAC6 U+012E LATIN CAPITAL LETTER I WITH OGONEK
+8FAAC7 0128 8FAAC7 U+0128 LATIN CAPITAL LETTER I WITH TILDE
+8FAAC8 0134 8FAAC8 U+0134 LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+8FAAC9 0136 8FAAC9 U+0136 LATIN CAPITAL LETTER K WITH CEDILLA
+8FAACA 0139 8FAACA U+0139 LATIN CAPITAL LETTER L WITH ACUTE
+8FAACB 013D 8FAACB U+013D LATIN CAPITAL LETTER L WITH CARON
+8FAACC 013B 8FAACC U+013B LATIN CAPITAL LETTER L WITH CEDILLA
+8FAACD 0143 8FAACD U+0143 LATIN CAPITAL LETTER N WITH ACUTE
+8FAACE 0147 8FAACE U+0147 LATIN CAPITAL LETTER N WITH CARON
+8FAACF 0145 8FAACF U+0145 LATIN CAPITAL LETTER N WITH CEDILLA
+8FAAD0 00D1 8FAAD0 U+00D1 LATIN CAPITAL LETTER N WITH TILDE
+8FAAD1 00D3 8FAAD1 U+00D3 LATIN CAPITAL LETTER O WITH ACUTE
+8FAAD2 00D2 8FAAD2 U+00D2 LATIN CAPITAL LETTER O WITH GRAVE
+8FAAD3 00D6 8FAAD3 U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS
+8FAAD4 00D4 8FAAD4 U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+8FAAD5 01D1 8FAAD5 U+01D1 LATIN CAPITAL LETTER O WITH CARON
+8FAAD6 0150 8FAAD6 U+0150 LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+8FAAD7 014C 8FAAD7 U+014C LATIN CAPITAL LETTER O WITH MACRON
+8FAAD8 00D5 8FAAD8 U+00D5 LATIN CAPITAL LETTER O WITH TILDE
+8FAAD9 0154 8FAAD9 U+0154 LATIN CAPITAL LETTER R WITH ACUTE
+8FAADA 0158 8FAADA U+0158 LATIN CAPITAL LETTER R WITH CARON
+8FAADB 0156 8FAADB U+0156 LATIN CAPITAL LETTER R WITH CEDILLA
+8FAADC 015A 8FAADC U+015A LATIN CAPITAL LETTER S WITH ACUTE
+8FAADD 015C 8FAADD U+015C LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+8FAADE 0160 8FAADE U+0160 LATIN CAPITAL LETTER S WITH CARON
+8FAADF 015E 8FAADF U+015E LATIN CAPITAL LETTER S WITH CEDILLA
+8FAAE0 0164 8FAAE0 U+0164 LATIN CAPITAL LETTER T WITH CARON
+8FAAE1 0162 8FAAE1 U+0162 LATIN CAPITAL LETTER T WITH CEDILLA
+8FAAE2 00DA 8FAAE2 U+00DA LATIN CAPITAL LETTER U WITH ACUTE
+8FAAE3 00D9 8FAAE3 U+00D9 LATIN CAPITAL LETTER U WITH GRAVE
+8FAAE4 00DC 8FAAE4 U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS
+8FAAE5 00DB 8FAAE5 U+00DB LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+8FAAE6 016C 8FAAE6 U+016C LATIN CAPITAL LETTER U WITH BREVE
+8FAAE7 01D3 8FAAE7 U+01D3 LATIN CAPITAL LETTER U WITH CARON
+8FAAE8 0170 8FAAE8 U+0170 LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+8FAAE9 016A 8FAAE9 U+016A LATIN CAPITAL LETTER U WITH MACRON
+8FAAEA 0172 8FAAEA U+0172 LATIN CAPITAL LETTER U WITH OGONEK
+8FAAEB 016E 8FAAEB U+016E LATIN CAPITAL LETTER U WITH RING ABOVE
+8FAAEC 0168 8FAAEC U+0168 LATIN CAPITAL LETTER U WITH TILDE
+8FAAED 01D7 8FAAED U+01D7 LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE
+8FAAEE 01DB 8FAAEE U+01DB LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE
+8FAAEF 01D9 8FAAEF U+01D9 LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON
+8FAAF0 01D5 8FAAF0 U+01D5 LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON
+8FAAF1 0174 8FAAF1 U+0174 LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+8FAAF2 00DD 8FAAF2 U+00DD LATIN CAPITAL LETTER Y WITH ACUTE
+8FAAF3 0178 8FAAF3 U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS
+8FAAF4 0176 8FAAF4 U+0176 LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+8FAAF5 0179 8FAAF5 U+0179 LATIN CAPITAL LETTER Z WITH ACUTE
+8FAAF6 017D 8FAAF6 U+017D LATIN CAPITAL LETTER Z WITH CARON
+8FAAF7 017B 8FAAF7 U+017B LATIN CAPITAL LETTER Z WITH DOT ABOVE
+8FABA1 00E1 8FABA1 U+00E1 LATIN SMALL LETTER A WITH ACUTE
+8FABA2 00E0 8FABA2 U+00E0 LATIN SMALL LETTER A WITH GRAVE
+8FABA3 00E4 8FABA3 U+00E4 LATIN SMALL LETTER A WITH DIAERESIS
+8FABA4 00E2 8FABA4 U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX
+8FABA5 0103 8FABA5 U+0103 LATIN SMALL LETTER A WITH BREVE
+8FABA6 01CE 8FABA6 U+01CE LATIN SMALL LETTER A WITH CARON
+8FABA7 0101 8FABA7 U+0101 LATIN SMALL LETTER A WITH MACRON
+8FABA8 0105 8FABA8 U+0105 LATIN SMALL LETTER A WITH OGONEK
+8FABA9 00E5 8FABA9 U+00E5 LATIN SMALL LETTER A WITH RING ABOVE
+8FABAA 00E3 8FABAA U+00E3 LATIN SMALL LETTER A WITH TILDE
+8FABAB 0107 8FABAB U+0107 LATIN SMALL LETTER C WITH ACUTE
+8FABAC 0109 8FABAC U+0109 LATIN SMALL LETTER C WITH CIRCUMFLEX
+8FABAD 010D 8FABAD U+010D LATIN SMALL LETTER C WITH CARON
+8FABAE 00E7 8FABAE U+00E7 LATIN SMALL LETTER C WITH CEDILLA
+8FABAF 010B 8FABAF U+010B LATIN SMALL LETTER C WITH DOT ABOVE
+8FABB0 010F 8FABB0 U+010F LATIN SMALL LETTER D WITH CARON
+8FABB1 00E9 8FABB1 U+00E9 LATIN SMALL LETTER E WITH ACUTE
+8FABB2 00E8 8FABB2 U+00E8 LATIN SMALL LETTER E WITH GRAVE
+8FABB3 00EB 8FABB3 U+00EB LATIN SMALL LETTER E WITH DIAERESIS
+8FABB4 00EA 8FABB4 U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX
+8FABB5 011B 8FABB5 U+011B LATIN SMALL LETTER E WITH CARON
+8FABB6 0117 8FABB6 U+0117 LATIN SMALL LETTER E WITH DOT ABOVE
+8FABB7 0113 8FABB7 U+0113 LATIN SMALL LETTER E WITH MACRON
+8FABB8 0119 8FABB8 U+0119 LATIN SMALL LETTER E WITH OGONEK
+8FABB9 01F5 8FABB9 U+01F5 LATIN SMALL LETTER G WITH ACUTE
+8FABBA 011D 8FABBA U+011D LATIN SMALL LETTER G WITH CIRCUMFLEX
+8FABBB 011F 8FABBB U+011F LATIN SMALL LETTER G WITH BREVE
+8FABBD 0121 8FABBD U+0121 LATIN SMALL LETTER G WITH DOT ABOVE
+8FABBE 0125 8FABBE U+0125 LATIN SMALL LETTER H WITH CIRCUMFLEX
+8FABBF 00ED 8FABBF U+00ED LATIN SMALL LETTER I WITH ACUTE
+8FABC0 00EC 8FABC0 U+00EC LATIN SMALL LETTER I WITH GRAVE
+8FABC1 00EF 8FABC1 U+00EF LATIN SMALL LETTER I WITH DIAERESIS
+8FABC2 00EE 8FABC2 U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX
+8FABC3 01D0 8FABC3 U+01D0 LATIN SMALL LETTER I WITH CARON
+8FABC5 012B 8FABC5 U+012B LATIN SMALL LETTER I WITH MACRON
+8FABC6 012F 8FABC6 U+012F LATIN SMALL LETTER I WITH OGONEK
+8FABC7 0129 8FABC7 U+0129 LATIN SMALL LETTER I WITH TILDE
+8FABC8 0135 8FABC8 U+0135 LATIN SMALL LETTER J WITH CIRCUMFLEX
+8FABC9 0137 8FABC9 U+0137 LATIN SMALL LETTER K WITH CEDILLA
+8FABCA 013A 8FABCA U+013A LATIN SMALL LETTER L WITH ACUTE
+8FABCB 013E 8FABCB U+013E LATIN SMALL LETTER L WITH CARON
+8FABCC 013C 8FABCC U+013C LATIN SMALL LETTER L WITH CEDILLA
+8FABCD 0144 8FABCD U+0144 LATIN SMALL LETTER N WITH ACUTE
+8FABCE 0148 8FABCE U+0148 LATIN SMALL LETTER N WITH CARON
+8FABCF 0146 8FABCF U+0146 LATIN SMALL LETTER N WITH CEDILLA
+8FABD0 00F1 8FABD0 U+00F1 LATIN SMALL LETTER N WITH TILDE
+8FABD1 00F3 8FABD1 U+00F3 LATIN SMALL LETTER O WITH ACUTE
+8FABD2 00F2 8FABD2 U+00F2 LATIN SMALL LETTER O WITH GRAVE
+8FABD3 00F6 8FABD3 U+00F6 LATIN SMALL LETTER O WITH DIAERESIS
+8FABD4 00F4 8FABD4 U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX
+8FABD5 01D2 8FABD5 U+01D2 LATIN SMALL LETTER O WITH CARON
+8FABD6 0151 8FABD6 U+0151 LATIN SMALL LETTER O WITH DOUBLE ACUTE
+8FABD7 014D 8FABD7 U+014D LATIN SMALL LETTER O WITH MACRON
+8FABD8 00F5 8FABD8 U+00F5 LATIN SMALL LETTER O WITH TILDE
+8FABD9 0155 8FABD9 U+0155 LATIN SMALL LETTER R WITH ACUTE
+8FABDA 0159 8FABDA U+0159 LATIN SMALL LETTER R WITH CARON
+8FABDB 0157 8FABDB U+0157 LATIN SMALL LETTER R WITH CEDILLA
+8FABDC 015B 8FABDC U+015B LATIN SMALL LETTER S WITH ACUTE
+8FABDD 015D 8FABDD U+015D LATIN SMALL LETTER S WITH CIRCUMFLEX
+8FABDE 0161 8FABDE U+0161 LATIN SMALL LETTER S WITH CARON
+8FABDF 015F 8FABDF U+015F LATIN SMALL LETTER S WITH CEDILLA
+8FABE0 0165 8FABE0 U+0165 LATIN SMALL LETTER T WITH CARON
+8FABE1 0163 8FABE1 U+0163 LATIN SMALL LETTER T WITH CEDILLA
+8FABE2 00FA 8FABE2 U+00FA LATIN SMALL LETTER U WITH ACUTE
+8FABE3 00F9 8FABE3 U+00F9 LATIN SMALL LETTER U WITH GRAVE
+8FABE4 00FC 8FABE4 U+00FC LATIN SMALL LETTER U WITH DIAERESIS
+8FABE5 00FB 8FABE5 U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX
+8FABE6 016D 8FABE6 U+016D LATIN SMALL LETTER U WITH BREVE
+8FABE7 01D4 8FABE7 U+01D4 LATIN SMALL LETTER U WITH CARON
+8FABE8 0171 8FABE8 U+0171 LATIN SMALL LETTER U WITH DOUBLE ACUTE
+8FABE9 016B 8FABE9 U+016B LATIN SMALL LETTER U WITH MACRON
+8FABEA 0173 8FABEA U+0173 LATIN SMALL LETTER U WITH OGONEK
+8FABEB 016F 8FABEB U+016F LATIN SMALL LETTER U WITH RING ABOVE
+8FABEC 0169 8FABEC U+0169 LATIN SMALL LETTER U WITH TILDE
+8FABED 01D8 8FABED U+01D8 LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE
+8FABEE 01DC 8FABEE U+01DC LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE
+8FABEF 01DA 8FABEF U+01DA LATIN SMALL LETTER U WITH DIAERESIS AND CARON
+8FABF0 01D6 8FABF0 U+01D6 LATIN SMALL LETTER U WITH DIAERESIS AND MACRON
+8FABF1 0175 8FABF1 U+0175 LATIN SMALL LETTER W WITH CIRCUMFLEX
+8FABF2 00FD 8FABF2 U+00FD LATIN SMALL LETTER Y WITH ACUTE
+8FABF3 00FF 8FABF3 U+00FF LATIN SMALL LETTER Y WITH DIAERESIS
+8FABF4 0177 8FABF4 U+0177 LATIN SMALL LETTER Y WITH CIRCUMFLEX
+8FABF5 017A 8FABF5 U+017A LATIN SMALL LETTER Z WITH ACUTE
+8FABF6 017E 8FABF6 U+017E LATIN SMALL LETTER Z WITH CARON
+8FABF7 017C 8FABF7 U+017C LATIN SMALL LETTER Z WITH DOT ABOVE
+8FB0A1 4E02 8FB0A1 <CJK>
+8FB0A2 4E04 8FB0A2 <CJK>
+8FB0A3 4E05 8FB0A3 <CJK>
+8FB0A4 4E0C 8FB0A4 <CJK>
+8FB0A5 4E12 8FB0A5 <CJK>
+8FB0A6 4E1F 8FB0A6 <CJK>
+8FB0A7 4E23 8FB0A7 <CJK>
+8FB0A8 4E24 8FB0A8 <CJK>
+8FB0A9 4E28 8FB0A9 <CJK>
+8FB0AA 4E2B 8FB0AA <CJK>
+8FB0AB 4E2E 8FB0AB <CJK>
+8FB0AC 4E2F 8FB0AC <CJK>
+8FB0AD 4E30 8FB0AD <CJK>
+8FB0AE 4E35 8FB0AE <CJK>
+8FB0AF 4E40 8FB0AF <CJK>
+8FB0B0 4E41 8FB0B0 <CJK>
+8FB0B1 4E44 8FB0B1 <CJK>
+8FB0B2 4E47 8FB0B2 <CJK>
+8FB0B3 4E51 8FB0B3 <CJK>
+8FB0B4 4E5A 8FB0B4 <CJK>
+8FB0B5 4E5C 8FB0B5 <CJK>
+8FB0B6 4E63 8FB0B6 <CJK>
+8FB0B7 4E68 8FB0B7 <CJK>
+8FB0B8 4E69 8FB0B8 <CJK>
+8FB0B9 4E74 8FB0B9 <CJK>
+8FB0BA 4E75 8FB0BA <CJK>
+8FB0BB 4E79 8FB0BB <CJK>
+8FB0BC 4E7F 8FB0BC <CJK>
+8FB0BD 4E8D 8FB0BD <CJK>
+8FB0BE 4E96 8FB0BE <CJK>
+8FB0BF 4E97 8FB0BF <CJK>
+8FB0C0 4E9D 8FB0C0 <CJK>
+8FB0C1 4EAF 8FB0C1 <CJK>
+8FB0C2 4EB9 8FB0C2 <CJK>
+8FB0C3 4EC3 8FB0C3 <CJK>
+8FB0C4 4ED0 8FB0C4 <CJK>
+8FB0C5 4EDA 8FB0C5 <CJK>
+8FB0C6 4EDB 8FB0C6 <CJK>
+8FB0C7 4EE0 8FB0C7 <CJK>
+8FB0C8 4EE1 8FB0C8 <CJK>
+8FB0C9 4EE2 8FB0C9 <CJK>
+8FB0CA 4EE8 8FB0CA <CJK>
+8FB0CB 4EEF 8FB0CB <CJK>
+8FB0CC 4EF1 8FB0CC <CJK>
+8FB0CD 4EF3 8FB0CD <CJK>
+8FB0CE 4EF5 8FB0CE <CJK>
+8FB0CF 4EFD 8FB0CF <CJK>
+8FB0D0 4EFE 8FB0D0 <CJK>
+8FB0D1 4EFF 8FB0D1 <CJK>
+8FB0D2 4F00 8FB0D2 <CJK>
+8FB0D3 4F02 8FB0D3 <CJK>
+8FB0D4 4F03 8FB0D4 <CJK>
+8FB0D5 4F08 8FB0D5 <CJK>
+8FB0D6 4F0B 8FB0D6 <CJK>
+8FB0D7 4F0C 8FB0D7 <CJK>
+8FB0D8 4F12 8FB0D8 <CJK>
+8FB0D9 4F15 8FB0D9 <CJK>
+8FB0DA 4F16 8FB0DA <CJK>
+8FB0DB 4F17 8FB0DB <CJK>
+8FB0DC 4F19 8FB0DC <CJK>
+8FB0DD 4F2E 8FB0DD <CJK>
+8FB0DE 4F31 8FB0DE <CJK>
+8FB0DF 4F60 8FB0DF <CJK>
+8FB0E0 4F33 8FB0E0 <CJK>
+8FB0E1 4F35 8FB0E1 <CJK>
+8FB0E2 4F37 8FB0E2 <CJK>
+8FB0E3 4F39 8FB0E3 <CJK>
+8FB0E4 4F3B 8FB0E4 <CJK>
+8FB0E5 4F3E 8FB0E5 <CJK>
+8FB0E6 4F40 8FB0E6 <CJK>
+8FB0E7 4F42 8FB0E7 <CJK>
+8FB0E8 4F48 8FB0E8 <CJK>
+8FB0E9 4F49 8FB0E9 <CJK>
+8FB0EA 4F4B 8FB0EA <CJK>
+8FB0EB 4F4C 8FB0EB <CJK>
+8FB0EC 4F52 8FB0EC <CJK>
+8FB0ED 4F54 8FB0ED <CJK>
+8FB0EE 4F56 8FB0EE <CJK>
+8FB0EF 4F58 8FB0EF <CJK>
+8FB0F0 4F5F 8FB0F0 <CJK>
+8FB0F1 4F63 8FB0F1 <CJK>
+8FB0F2 4F6A 8FB0F2 <CJK>
+8FB0F3 4F6C 8FB0F3 <CJK>
+8FB0F4 4F6E 8FB0F4 <CJK>
+8FB0F5 4F71 8FB0F5 <CJK>
+8FB0F6 4F77 8FB0F6 <CJK>
+8FB0F7 4F78 8FB0F7 <CJK>
+8FB0F8 4F79 8FB0F8 <CJK>
+8FB0F9 4F7A 8FB0F9 <CJK>
+8FB0FA 4F7D 8FB0FA <CJK>
+8FB0FB 4F7E 8FB0FB <CJK>
+8FB0FC 4F81 8FB0FC <CJK>
+8FB0FD 4F82 8FB0FD <CJK>
+8FB0FE 4F84 8FB0FE <CJK>
+8FB1A1 4F85 8FB1A1 <CJK>
+8FB1A2 4F89 8FB1A2 <CJK>
+8FB1A3 4F8A 8FB1A3 <CJK>
+8FB1A4 4F8C 8FB1A4 <CJK>
+8FB1A5 4F8E 8FB1A5 <CJK>
+8FB1A6 4F90 8FB1A6 <CJK>
+8FB1A7 4F92 8FB1A7 <CJK>
+8FB1A8 4F93 8FB1A8 <CJK>
+8FB1A9 4F94 8FB1A9 <CJK>
+8FB1AA 4F97 8FB1AA <CJK>
+8FB1AB 4F99 8FB1AB <CJK>
+8FB1AC 4F9A 8FB1AC <CJK>
+8FB1AD 4F9E 8FB1AD <CJK>
+8FB1AE 4F9F 8FB1AE <CJK>
+8FB1AF 4FB2 8FB1AF <CJK>
+8FB1B0 4FB7 8FB1B0 <CJK>
+8FB1B1 4FB9 8FB1B1 <CJK>
+8FB1B2 4FBB 8FB1B2 <CJK>
+8FB1B3 4FBC 8FB1B3 <CJK>
+8FB1B4 4FBD 8FB1B4 <CJK>
+8FB1B5 4FBE 8FB1B5 <CJK>
+8FB1B6 4FC0 8FB1B6 <CJK>
+8FB1B7 4FC1 8FB1B7 <CJK>
+8FB1B8 4FC5 8FB1B8 <CJK>
+8FB1B9 4FC6 8FB1B9 <CJK>
+8FB1BA 4FC8 8FB1BA <CJK>
+8FB1BB 4FC9 8FB1BB <CJK>
+8FB1BC 4FCB 8FB1BC <CJK>
+8FB1BD 4FCC 8FB1BD <CJK>
+8FB1BE 4FCD 8FB1BE <CJK>
+8FB1BF 4FCF 8FB1BF <CJK>
+8FB1C0 4FD2 8FB1C0 <CJK>
+8FB1C1 4FDC 8FB1C1 <CJK>
+8FB1C2 4FE0 8FB1C2 <CJK>
+8FB1C3 4FE2 8FB1C3 <CJK>
+8FB1C4 4FF0 8FB1C4 <CJK>
+8FB1C5 4FF2 8FB1C5 <CJK>
+8FB1C6 4FFC 8FB1C6 <CJK>
+8FB1C7 4FFD 8FB1C7 <CJK>
+8FB1C8 4FFF 8FB1C8 <CJK>
+8FB1C9 5000 8FB1C9 <CJK>
+8FB1CA 5001 8FB1CA <CJK>
+8FB1CB 5004 8FB1CB <CJK>
+8FB1CC 5007 8FB1CC <CJK>
+8FB1CD 500A 8FB1CD <CJK>
+8FB1CE 500C 8FB1CE <CJK>
+8FB1CF 500E 8FB1CF <CJK>
+8FB1D0 5010 8FB1D0 <CJK>
+8FB1D1 5013 8FB1D1 <CJK>
+8FB1D2 5017 8FB1D2 <CJK>
+8FB1D3 5018 8FB1D3 <CJK>
+8FB1D4 501B 8FB1D4 <CJK>
+8FB1D5 501C 8FB1D5 <CJK>
+8FB1D6 501D 8FB1D6 <CJK>
+8FB1D7 501E 8FB1D7 <CJK>
+8FB1D8 5022 8FB1D8 <CJK>
+8FB1D9 5027 8FB1D9 <CJK>
+8FB1DA 502E 8FB1DA <CJK>
+8FB1DB 5030 8FB1DB <CJK>
+8FB1DC 5032 8FB1DC <CJK>
+8FB1DD 5033 8FB1DD <CJK>
+8FB1DE 5035 8FB1DE <CJK>
+8FB1DF 5040 8FB1DF <CJK>
+8FB1E0 5041 8FB1E0 <CJK>
+8FB1E1 5042 8FB1E1 <CJK>
+8FB1E2 5045 8FB1E2 <CJK>
+8FB1E3 5046 8FB1E3 <CJK>
+8FB1E4 504A 8FB1E4 <CJK>
+8FB1E5 504C 8FB1E5 <CJK>
+8FB1E6 504E 8FB1E6 <CJK>
+8FB1E7 5051 8FB1E7 <CJK>
+8FB1E8 5052 8FB1E8 <CJK>
+8FB1E9 5053 8FB1E9 <CJK>
+8FB1EA 5057 8FB1EA <CJK>
+8FB1EB 5059 8FB1EB <CJK>
+8FB1EC 505F 8FB1EC <CJK>
+8FB1ED 5060 8FB1ED <CJK>
+8FB1EE 5062 8FB1EE <CJK>
+8FB1EF 5063 8FB1EF <CJK>
+8FB1F0 5066 8FB1F0 <CJK>
+8FB1F1 5067 8FB1F1 <CJK>
+8FB1F2 506A 8FB1F2 <CJK>
+8FB1F3 506D 8FB1F3 <CJK>
+8FB1F4 5070 8FB1F4 <CJK>
+8FB1F5 5071 8FB1F5 <CJK>
+8FB1F6 503B 8FB1F6 <CJK>
+8FB1F7 5081 8FB1F7 <CJK>
+8FB1F8 5083 8FB1F8 <CJK>
+8FB1F9 5084 8FB1F9 <CJK>
+8FB1FA 5086 8FB1FA <CJK>
+8FB1FB 508A 8FB1FB <CJK>
+8FB1FC 508E 8FB1FC <CJK>
+8FB1FD 508F 8FB1FD <CJK>
+8FB1FE 5090 8FB1FE <CJK>
+8FB2A1 5092 8FB2A1 <CJK>
+8FB2A2 5093 8FB2A2 <CJK>
+8FB2A3 5094 8FB2A3 <CJK>
+8FB2A4 5096 8FB2A4 <CJK>
+8FB2A5 509B 8FB2A5 <CJK>
+8FB2A6 509C 8FB2A6 <CJK>
+8FB2A7 509E 8FB2A7 <CJK>
+8FB2A8 509F 8FB2A8 <CJK>
+8FB2A9 50A0 8FB2A9 <CJK>
+8FB2AA 50A1 8FB2AA <CJK>
+8FB2AB 50A2 8FB2AB <CJK>
+8FB2AC 50AA 8FB2AC <CJK>
+8FB2AD 50AF 8FB2AD <CJK>
+8FB2AE 50B0 8FB2AE <CJK>
+8FB2AF 50B9 8FB2AF <CJK>
+8FB2B0 50BA 8FB2B0 <CJK>
+8FB2B1 50BD 8FB2B1 <CJK>
+8FB2B2 50C0 8FB2B2 <CJK>
+8FB2B3 50C3 8FB2B3 <CJK>
+8FB2B4 50C4 8FB2B4 <CJK>
+8FB2B5 50C7 8FB2B5 <CJK>
+8FB2B6 50CC 8FB2B6 <CJK>
+8FB2B7 50CE 8FB2B7 <CJK>
+8FB2B8 50D0 8FB2B8 <CJK>
+8FB2B9 50D3 8FB2B9 <CJK>
+8FB2BA 50D4 8FB2BA <CJK>
+8FB2BB 50D8 8FB2BB <CJK>
+8FB2BC 50DC 8FB2BC <CJK>
+8FB2BD 50DD 8FB2BD <CJK>
+8FB2BE 50DF 8FB2BE <CJK>
+8FB2BF 50E2 8FB2BF <CJK>
+8FB2C0 50E4 8FB2C0 <CJK>
+8FB2C1 50E6 8FB2C1 <CJK>
+8FB2C2 50E8 8FB2C2 <CJK>
+8FB2C3 50E9 8FB2C3 <CJK>
+8FB2C4 50EF 8FB2C4 <CJK>
+8FB2C5 50F1 8FB2C5 <CJK>
+8FB2C6 50F6 8FB2C6 <CJK>
+8FB2C7 50FA 8FB2C7 <CJK>
+8FB2C8 50FE 8FB2C8 <CJK>
+8FB2C9 5103 8FB2C9 <CJK>
+8FB2CA 5106 8FB2CA <CJK>
+8FB2CB 5107 8FB2CB <CJK>
+8FB2CC 5108 8FB2CC <CJK>
+8FB2CD 510B 8FB2CD <CJK>
+8FB2CE 510C 8FB2CE <CJK>
+8FB2CF 510D 8FB2CF <CJK>
+8FB2D0 510E 8FB2D0 <CJK>
+8FB2D1 50F2 8FB2D1 <CJK>
+8FB2D2 5110 8FB2D2 <CJK>
+8FB2D3 5117 8FB2D3 <CJK>
+8FB2D4 5119 8FB2D4 <CJK>
+8FB2D5 511B 8FB2D5 <CJK>
+8FB2D6 511C 8FB2D6 <CJK>
+8FB2D7 511D 8FB2D7 <CJK>
+8FB2D8 511E 8FB2D8 <CJK>
+8FB2D9 5123 8FB2D9 <CJK>
+8FB2DA 5127 8FB2DA <CJK>
+8FB2DB 5128 8FB2DB <CJK>
+8FB2DC 512C 8FB2DC <CJK>
+8FB2DD 512D 8FB2DD <CJK>
+8FB2DE 512F 8FB2DE <CJK>
+8FB2DF 5131 8FB2DF <CJK>
+8FB2E0 5133 8FB2E0 <CJK>
+8FB2E1 5134 8FB2E1 <CJK>
+8FB2E2 5135 8FB2E2 <CJK>
+8FB2E3 5138 8FB2E3 <CJK>
+8FB2E4 5139 8FB2E4 <CJK>
+8FB2E5 5142 8FB2E5 <CJK>
+8FB2E6 514A 8FB2E6 <CJK>
+8FB2E7 514F 8FB2E7 <CJK>
+8FB2E8 5153 8FB2E8 <CJK>
+8FB2E9 5155 8FB2E9 <CJK>
+8FB2EA 5157 8FB2EA <CJK>
+8FB2EB 5158 8FB2EB <CJK>
+8FB2EC 515F 8FB2EC <CJK>
+8FB2ED 5164 8FB2ED <CJK>
+8FB2EE 5166 8FB2EE <CJK>
+8FB2EF 517E 8FB2EF <CJK>
+8FB2F0 5183 8FB2F0 <CJK>
+8FB2F1 5184 8FB2F1 <CJK>
+8FB2F2 518B 8FB2F2 <CJK>
+8FB2F3 518E 8FB2F3 <CJK>
+8FB2F4 5198 8FB2F4 <CJK>
+8FB2F5 519D 8FB2F5 <CJK>
+8FB2F6 51A1 8FB2F6 <CJK>
+8FB2F7 51A3 8FB2F7 <CJK>
+8FB2F8 51AD 8FB2F8 <CJK>
+8FB2F9 51B8 8FB2F9 <CJK>
+8FB2FA 51BA 8FB2FA <CJK>
+8FB2FB 51BC 8FB2FB <CJK>
+8FB2FC 51BE 8FB2FC <CJK>
+8FB2FD 51BF 8FB2FD <CJK>
+8FB2FE 51C2 8FB2FE <CJK>
+8FB3A1 51C8 8FB3A1 <CJK>
+8FB3A2 51CF 8FB3A2 <CJK>
+8FB3A3 51D1 8FB3A3 <CJK>
+8FB3A4 51D2 8FB3A4 <CJK>
+8FB3A5 51D3 8FB3A5 <CJK>
+8FB3A6 51D5 8FB3A6 <CJK>
+8FB3A7 51D8 8FB3A7 <CJK>
+8FB3A8 51DE 8FB3A8 <CJK>
+8FB3A9 51E2 8FB3A9 <CJK>
+8FB3AA 51E5 8FB3AA <CJK>
+8FB3AB 51EE 8FB3AB <CJK>
+8FB3AC 51F2 8FB3AC <CJK>
+8FB3AD 51F3 8FB3AD <CJK>
+8FB3AE 51F4 8FB3AE <CJK>
+8FB3AF 51F7 8FB3AF <CJK>
+8FB3B0 5201 8FB3B0 <CJK>
+8FB3B1 5202 8FB3B1 <CJK>
+8FB3B2 5205 8FB3B2 <CJK>
+8FB3B3 5212 8FB3B3 <CJK>
+8FB3B4 5213 8FB3B4 <CJK>
+8FB3B5 5215 8FB3B5 <CJK>
+8FB3B6 5216 8FB3B6 <CJK>
+8FB3B7 5218 8FB3B7 <CJK>
+8FB3B8 5222 8FB3B8 <CJK>
+8FB3B9 5228 8FB3B9 <CJK>
+8FB3BA 5231 8FB3BA <CJK>
+8FB3BB 5232 8FB3BB <CJK>
+8FB3BC 5235 8FB3BC <CJK>
+8FB3BD 523C 8FB3BD <CJK>
+8FB3BE 5245 8FB3BE <CJK>
+8FB3BF 5249 8FB3BF <CJK>
+8FB3C0 5255 8FB3C0 <CJK>
+8FB3C1 5257 8FB3C1 <CJK>
+8FB3C2 5258 8FB3C2 <CJK>
+8FB3C3 525A 8FB3C3 <CJK>
+8FB3C4 525C 8FB3C4 <CJK>
+8FB3C5 525F 8FB3C5 <CJK>
+8FB3C6 5260 8FB3C6 <CJK>
+8FB3C7 5261 8FB3C7 <CJK>
+8FB3C8 5266 8FB3C8 <CJK>
+8FB3C9 526E 8FB3C9 <CJK>
+8FB3CA 5277 8FB3CA <CJK>
+8FB3CB 5278 8FB3CB <CJK>
+8FB3CC 5279 8FB3CC <CJK>
+8FB3CD 5280 8FB3CD <CJK>
+8FB3CE 5282 8FB3CE <CJK>
+8FB3CF 5285 8FB3CF <CJK>
+8FB3D0 528A 8FB3D0 <CJK>
+8FB3D1 528C 8FB3D1 <CJK>
+8FB3D2 5293 8FB3D2 <CJK>
+8FB3D3 5295 8FB3D3 <CJK>
+8FB3D4 5296 8FB3D4 <CJK>
+8FB3D5 5297 8FB3D5 <CJK>
+8FB3D6 5298 8FB3D6 <CJK>
+8FB3D7 529A 8FB3D7 <CJK>
+8FB3D8 529C 8FB3D8 <CJK>
+8FB3D9 52A4 8FB3D9 <CJK>
+8FB3DA 52A5 8FB3DA <CJK>
+8FB3DB 52A6 8FB3DB <CJK>
+8FB3DC 52A7 8FB3DC <CJK>
+8FB3DD 52AF 8FB3DD <CJK>
+8FB3DE 52B0 8FB3DE <CJK>
+8FB3DF 52B6 8FB3DF <CJK>
+8FB3E0 52B7 8FB3E0 <CJK>
+8FB3E1 52B8 8FB3E1 <CJK>
+8FB3E2 52BA 8FB3E2 <CJK>
+8FB3E3 52BB 8FB3E3 <CJK>
+8FB3E4 52BD 8FB3E4 <CJK>
+8FB3E5 52C0 8FB3E5 <CJK>
+8FB3E6 52C4 8FB3E6 <CJK>
+8FB3E7 52C6 8FB3E7 <CJK>
+8FB3E8 52C8 8FB3E8 <CJK>
+8FB3E9 52CC 8FB3E9 <CJK>
+8FB3EA 52CF 8FB3EA <CJK>
+8FB3EB 52D1 8FB3EB <CJK>
+8FB3EC 52D4 8FB3EC <CJK>
+8FB3ED 52D6 8FB3ED <CJK>
+8FB3EE 52DB 8FB3EE <CJK>
+8FB3EF 52DC 8FB3EF <CJK>
+8FB3F0 52E1 8FB3F0 <CJK>
+8FB3F1 52E5 8FB3F1 <CJK>
+8FB3F2 52E8 8FB3F2 <CJK>
+8FB3F3 52E9 8FB3F3 <CJK>
+8FB3F4 52EA 8FB3F4 <CJK>
+8FB3F5 52EC 8FB3F5 <CJK>
+8FB3F6 52F0 8FB3F6 <CJK>
+8FB3F7 52F1 8FB3F7 <CJK>
+8FB3F8 52F4 8FB3F8 <CJK>
+8FB3F9 52F6 8FB3F9 <CJK>
+8FB3FA 52F7 8FB3FA <CJK>
+8FB3FB 5300 8FB3FB <CJK>
+8FB3FC 5303 8FB3FC <CJK>
+8FB3FD 530A 8FB3FD <CJK>
+8FB3FE 530B 8FB3FE <CJK>
+8FB4A1 530C 8FB4A1 <CJK>
+8FB4A2 5311 8FB4A2 <CJK>
+8FB4A3 5313 8FB4A3 <CJK>
+8FB4A4 5318 8FB4A4 <CJK>
+8FB4A5 531B 8FB4A5 <CJK>
+8FB4A6 531C 8FB4A6 <CJK>
+8FB4A7 531E 8FB4A7 <CJK>
+8FB4A8 531F 8FB4A8 <CJK>
+8FB4A9 5325 8FB4A9 <CJK>
+8FB4AA 5327 8FB4AA <CJK>
+8FB4AB 5328 8FB4AB <CJK>
+8FB4AC 5329 8FB4AC <CJK>
+8FB4AD 532B 8FB4AD <CJK>
+8FB4AE 532C 8FB4AE <CJK>
+8FB4AF 532D 8FB4AF <CJK>
+8FB4B0 5330 8FB4B0 <CJK>
+8FB4B1 5332 8FB4B1 <CJK>
+8FB4B2 5335 8FB4B2 <CJK>
+8FB4B3 533C 8FB4B3 <CJK>
+8FB4B4 533D 8FB4B4 <CJK>
+8FB4B5 533E 8FB4B5 <CJK>
+8FB4B6 5342 8FB4B6 <CJK>
+8FB4B7 534C 8FB4B7 <CJK>
+8FB4B8 534B 8FB4B8 <CJK>
+8FB4B9 5359 8FB4B9 <CJK>
+8FB4BA 535B 8FB4BA <CJK>
+8FB4BB 5361 8FB4BB <CJK>
+8FB4BC 5363 8FB4BC <CJK>
+8FB4BD 5365 8FB4BD <CJK>
+8FB4BE 536C 8FB4BE <CJK>
+8FB4BF 536D 8FB4BF <CJK>
+8FB4C0 5372 8FB4C0 <CJK>
+8FB4C1 5379 8FB4C1 <CJK>
+8FB4C2 537E 8FB4C2 <CJK>
+8FB4C3 5383 8FB4C3 <CJK>
+8FB4C4 5387 8FB4C4 <CJK>
+8FB4C5 5388 8FB4C5 <CJK>
+8FB4C6 538E 8FB4C6 <CJK>
+8FB4C7 5393 8FB4C7 <CJK>
+8FB4C8 5394 8FB4C8 <CJK>
+8FB4C9 5399 8FB4C9 <CJK>
+8FB4CA 539D 8FB4CA <CJK>
+8FB4CB 53A1 8FB4CB <CJK>
+8FB4CC 53A4 8FB4CC <CJK>
+8FB4CD 53AA 8FB4CD <CJK>
+8FB4CE 53AB 8FB4CE <CJK>
+8FB4CF 53AF 8FB4CF <CJK>
+8FB4D0 53B2 8FB4D0 <CJK>
+8FB4D1 53B4 8FB4D1 <CJK>
+8FB4D2 53B5 8FB4D2 <CJK>
+8FB4D3 53B7 8FB4D3 <CJK>
+8FB4D4 53B8 8FB4D4 <CJK>
+8FB4D5 53BA 8FB4D5 <CJK>
+8FB4D6 53BD 8FB4D6 <CJK>
+8FB4D7 53C0 8FB4D7 <CJK>
+8FB4D8 53C5 8FB4D8 <CJK>
+8FB4D9 53CF 8FB4D9 <CJK>
+8FB4DA 53D2 8FB4DA <CJK>
+8FB4DB 53D3 8FB4DB <CJK>
+8FB4DC 53D5 8FB4DC <CJK>
+8FB4DD 53DA 8FB4DD <CJK>
+8FB4DE 53DD 8FB4DE <CJK>
+8FB4DF 53DE 8FB4DF <CJK>
+8FB4E0 53E0 8FB4E0 <CJK>
+8FB4E1 53E6 8FB4E1 <CJK>
+8FB4E2 53E7 8FB4E2 <CJK>
+8FB4E3 53F5 8FB4E3 <CJK>
+8FB4E4 5402 8FB4E4 <CJK>
+8FB4E5 5413 8FB4E5 <CJK>
+8FB4E6 541A 8FB4E6 <CJK>
+8FB4E7 5421 8FB4E7 <CJK>
+8FB4E8 5427 8FB4E8 <CJK>
+8FB4E9 5428 8FB4E9 <CJK>
+8FB4EA 542A 8FB4EA <CJK>
+8FB4EB 542F 8FB4EB <CJK>
+8FB4EC 5431 8FB4EC <CJK>
+8FB4ED 5434 8FB4ED <CJK>
+8FB4EE 5435 8FB4EE <CJK>
+8FB4EF 5443 8FB4EF <CJK>
+8FB4F0 5444 8FB4F0 <CJK>
+8FB4F1 5447 8FB4F1 <CJK>
+8FB4F2 544D 8FB4F2 <CJK>
+8FB4F3 544F 8FB4F3 <CJK>
+8FB4F4 545E 8FB4F4 <CJK>
+8FB4F5 5462 8FB4F5 <CJK>
+8FB4F6 5464 8FB4F6 <CJK>
+8FB4F7 5466 8FB4F7 <CJK>
+8FB4F8 5467 8FB4F8 <CJK>
+8FB4F9 5469 8FB4F9 <CJK>
+8FB4FA 546B 8FB4FA <CJK>
+8FB4FB 546D 8FB4FB <CJK>
+8FB4FC 546E 8FB4FC <CJK>
+8FB4FD 5474 8FB4FD <CJK>
+8FB4FE 547F 8FB4FE <CJK>
+8FB5A1 5481 8FB5A1 <CJK>
+8FB5A2 5483 8FB5A2 <CJK>
+8FB5A3 5485 8FB5A3 <CJK>
+8FB5A4 5488 8FB5A4 <CJK>
+8FB5A5 5489 8FB5A5 <CJK>
+8FB5A6 548D 8FB5A6 <CJK>
+8FB5A7 5491 8FB5A7 <CJK>
+8FB5A8 5495 8FB5A8 <CJK>
+8FB5A9 5496 8FB5A9 <CJK>
+8FB5AA 549C 8FB5AA <CJK>
+8FB5AB 549F 8FB5AB <CJK>
+8FB5AC 54A1 8FB5AC <CJK>
+8FB5AD 54A6 8FB5AD <CJK>
+8FB5AE 54A7 8FB5AE <CJK>
+8FB5AF 54A9 8FB5AF <CJK>
+8FB5B0 54AA 8FB5B0 <CJK>
+8FB5B1 54AD 8FB5B1 <CJK>
+8FB5B2 54AE 8FB5B2 <CJK>
+8FB5B3 54B1 8FB5B3 <CJK>
+8FB5B4 54B7 8FB5B4 <CJK>
+8FB5B5 54B9 8FB5B5 <CJK>
+8FB5B6 54BA 8FB5B6 <CJK>
+8FB5B7 54BB 8FB5B7 <CJK>
+8FB5B8 54BF 8FB5B8 <CJK>
+8FB5B9 54C6 8FB5B9 <CJK>
+8FB5BA 54CA 8FB5BA <CJK>
+8FB5BB 54CD 8FB5BB <CJK>
+8FB5BC 54CE 8FB5BC <CJK>
+8FB5BD 54E0 8FB5BD <CJK>
+8FB5BE 54EA 8FB5BE <CJK>
+8FB5BF 54EC 8FB5BF <CJK>
+8FB5C0 54EF 8FB5C0 <CJK>
+8FB5C1 54F6 8FB5C1 <CJK>
+8FB5C2 54FC 8FB5C2 <CJK>
+8FB5C3 54FE 8FB5C3 <CJK>
+8FB5C4 54FF 8FB5C4 <CJK>
+8FB5C5 5500 8FB5C5 <CJK>
+8FB5C6 5501 8FB5C6 <CJK>
+8FB5C7 5505 8FB5C7 <CJK>
+8FB5C8 5508 8FB5C8 <CJK>
+8FB5C9 5509 8FB5C9 <CJK>
+8FB5CA 550C 8FB5CA <CJK>
+8FB5CB 550D 8FB5CB <CJK>
+8FB5CC 550E 8FB5CC <CJK>
+8FB5CD 5515 8FB5CD <CJK>
+8FB5CE 552A 8FB5CE <CJK>
+8FB5CF 552B 8FB5CF <CJK>
+8FB5D0 5532 8FB5D0 <CJK>
+8FB5D1 5535 8FB5D1 <CJK>
+8FB5D2 5536 8FB5D2 <CJK>
+8FB5D3 553B 8FB5D3 <CJK>
+8FB5D4 553C 8FB5D4 <CJK>
+8FB5D5 553D 8FB5D5 <CJK>
+8FB5D6 5541 8FB5D6 <CJK>
+8FB5D7 5547 8FB5D7 <CJK>
+8FB5D8 5549 8FB5D8 <CJK>
+8FB5D9 554A 8FB5D9 <CJK>
+8FB5DA 554D 8FB5DA <CJK>
+8FB5DB 5550 8FB5DB <CJK>
+8FB5DC 5551 8FB5DC <CJK>
+8FB5DD 5558 8FB5DD <CJK>
+8FB5DE 555A 8FB5DE <CJK>
+8FB5DF 555B 8FB5DF <CJK>
+8FB5E0 555E 8FB5E0 <CJK>
+8FB5E1 5560 8FB5E1 <CJK>
+8FB5E2 5561 8FB5E2 <CJK>
+8FB5E3 5564 8FB5E3 <CJK>
+8FB5E4 5566 8FB5E4 <CJK>
+8FB5E5 557F 8FB5E5 <CJK>
+8FB5E6 5581 8FB5E6 <CJK>
+8FB5E7 5582 8FB5E7 <CJK>
+8FB5E8 5586 8FB5E8 <CJK>
+8FB5E9 5588 8FB5E9 <CJK>
+8FB5EA 558E 8FB5EA <CJK>
+8FB5EB 558F 8FB5EB <CJK>
+8FB5EC 5591 8FB5EC <CJK>
+8FB5ED 5592 8FB5ED <CJK>
+8FB5EE 5593 8FB5EE <CJK>
+8FB5EF 5594 8FB5EF <CJK>
+8FB5F0 5597 8FB5F0 <CJK>
+8FB5F1 55A3 8FB5F1 <CJK>
+8FB5F2 55A4 8FB5F2 <CJK>
+8FB5F3 55AD 8FB5F3 <CJK>
+8FB5F4 55B2 8FB5F4 <CJK>
+8FB5F5 55BF 8FB5F5 <CJK>
+8FB5F6 55C1 8FB5F6 <CJK>
+8FB5F7 55C3 8FB5F7 <CJK>
+8FB5F8 55C6 8FB5F8 <CJK>
+8FB5F9 55C9 8FB5F9 <CJK>
+8FB5FA 55CB 8FB5FA <CJK>
+8FB5FB 55CC 8FB5FB <CJK>
+8FB5FC 55CE 8FB5FC <CJK>
+8FB5FD 55D1 8FB5FD <CJK>
+8FB5FE 55D2 8FB5FE <CJK>
+8FB6A1 55D3 8FB6A1 <CJK>
+8FB6A2 55D7 8FB6A2 <CJK>
+8FB6A3 55D8 8FB6A3 <CJK>
+8FB6A4 55DB 8FB6A4 <CJK>
+8FB6A5 55DE 8FB6A5 <CJK>
+8FB6A6 55E2 8FB6A6 <CJK>
+8FB6A7 55E9 8FB6A7 <CJK>
+8FB6A8 55F6 8FB6A8 <CJK>
+8FB6A9 55FF 8FB6A9 <CJK>
+8FB6AA 5605 8FB6AA <CJK>
+8FB6AB 5608 8FB6AB <CJK>
+8FB6AC 560A 8FB6AC <CJK>
+8FB6AD 560D 8FB6AD <CJK>
+8FB6AE 560E 8FB6AE <CJK>
+8FB6AF 560F 8FB6AF <CJK>
+8FB6B0 5610 8FB6B0 <CJK>
+8FB6B1 5611 8FB6B1 <CJK>
+8FB6B2 5612 8FB6B2 <CJK>
+8FB6B3 5619 8FB6B3 <CJK>
+8FB6B4 562C 8FB6B4 <CJK>
+8FB6B5 5630 8FB6B5 <CJK>
+8FB6B6 5633 8FB6B6 <CJK>
+8FB6B7 5635 8FB6B7 <CJK>
+8FB6B8 5637 8FB6B8 <CJK>
+8FB6B9 5639 8FB6B9 <CJK>
+8FB6BA 563B 8FB6BA <CJK>
+8FB6BB 563C 8FB6BB <CJK>
+8FB6BC 563D 8FB6BC <CJK>
+8FB6BD 563F 8FB6BD <CJK>
+8FB6BE 5640 8FB6BE <CJK>
+8FB6BF 5641 8FB6BF <CJK>
+8FB6C0 5643 8FB6C0 <CJK>
+8FB6C1 5644 8FB6C1 <CJK>
+8FB6C2 5646 8FB6C2 <CJK>
+8FB6C3 5649 8FB6C3 <CJK>
+8FB6C4 564B 8FB6C4 <CJK>
+8FB6C5 564D 8FB6C5 <CJK>
+8FB6C6 564F 8FB6C6 <CJK>
+8FB6C7 5654 8FB6C7 <CJK>
+8FB6C8 565E 8FB6C8 <CJK>
+8FB6C9 5660 8FB6C9 <CJK>
+8FB6CA 5661 8FB6CA <CJK>
+8FB6CB 5662 8FB6CB <CJK>
+8FB6CC 5663 8FB6CC <CJK>
+8FB6CD 5666 8FB6CD <CJK>
+8FB6CE 5669 8FB6CE <CJK>
+8FB6CF 566D 8FB6CF <CJK>
+8FB6D0 566F 8FB6D0 <CJK>
+8FB6D1 5671 8FB6D1 <CJK>
+8FB6D2 5672 8FB6D2 <CJK>
+8FB6D3 5675 8FB6D3 <CJK>
+8FB6D4 5684 8FB6D4 <CJK>
+8FB6D5 5685 8FB6D5 <CJK>
+8FB6D6 5688 8FB6D6 <CJK>
+8FB6D7 568B 8FB6D7 <CJK>
+8FB6D8 568C 8FB6D8 <CJK>
+8FB6D9 5695 8FB6D9 <CJK>
+8FB6DA 5699 8FB6DA <CJK>
+8FB6DB 569A 8FB6DB <CJK>
+8FB6DC 569D 8FB6DC <CJK>
+8FB6DD 569E 8FB6DD <CJK>
+8FB6DE 569F 8FB6DE <CJK>
+8FB6DF 56A6 8FB6DF <CJK>
+8FB6E0 56A7 8FB6E0 <CJK>
+8FB6E1 56A8 8FB6E1 <CJK>
+8FB6E2 56A9 8FB6E2 <CJK>
+8FB6E3 56AB 8FB6E3 <CJK>
+8FB6E4 56AC 8FB6E4 <CJK>
+8FB6E5 56AD 8FB6E5 <CJK>
+8FB6E6 56B1 8FB6E6 <CJK>
+8FB6E7 56B3 8FB6E7 <CJK>
+8FB6E8 56B7 8FB6E8 <CJK>
+8FB6E9 56BE 8FB6E9 <CJK>
+8FB6EA 56C5 8FB6EA <CJK>
+8FB6EB 56C9 8FB6EB <CJK>
+8FB6EC 56CA 8FB6EC <CJK>
+8FB6ED 56CB 8FB6ED <CJK>
+8FB6EE 56CF 8FB6EE <CJK>
+8FB6EF 56D0 8FB6EF <CJK>
+8FB6F0 56CC 8FB6F0 <CJK>
+8FB6F1 56CD 8FB6F1 <CJK>
+8FB6F2 56D9 8FB6F2 <CJK>
+8FB6F3 56DC 8FB6F3 <CJK>
+8FB6F4 56DD 8FB6F4 <CJK>
+8FB6F5 56DF 8FB6F5 <CJK>
+8FB6F6 56E1 8FB6F6 <CJK>
+8FB6F7 56E4 8FB6F7 <CJK>
+8FB6F8 56E5 8FB6F8 <CJK>
+8FB6F9 56E6 8FB6F9 <CJK>
+8FB6FA 56E7 8FB6FA <CJK>
+8FB6FB 56E8 8FB6FB <CJK>
+8FB6FC 56F1 8FB6FC <CJK>
+8FB6FD 56EB 8FB6FD <CJK>
+8FB6FE 56ED 8FB6FE <CJK>
+8FB7A1 56F6 8FB7A1 <CJK>
+8FB7A2 56F7 8FB7A2 <CJK>
+8FB7A3 5701 8FB7A3 <CJK>
+8FB7A4 5702 8FB7A4 <CJK>
+8FB7A5 5707 8FB7A5 <CJK>
+8FB7A6 570A 8FB7A6 <CJK>
+8FB7A7 570C 8FB7A7 <CJK>
+8FB7A8 5711 8FB7A8 <CJK>
+8FB7A9 5715 8FB7A9 <CJK>
+8FB7AA 571A 8FB7AA <CJK>
+8FB7AB 571B 8FB7AB <CJK>
+8FB7AC 571D 8FB7AC <CJK>
+8FB7AD 5720 8FB7AD <CJK>
+8FB7AE 5722 8FB7AE <CJK>
+8FB7AF 5723 8FB7AF <CJK>
+8FB7B0 5724 8FB7B0 <CJK>
+8FB7B1 5725 8FB7B1 <CJK>
+8FB7B2 5729 8FB7B2 <CJK>
+8FB7B3 572A 8FB7B3 <CJK>
+8FB7B4 572C 8FB7B4 <CJK>
+8FB7B5 572E 8FB7B5 <CJK>
+8FB7B6 572F 8FB7B6 <CJK>
+8FB7B7 5733 8FB7B7 <CJK>
+8FB7B8 5734 8FB7B8 <CJK>
+8FB7B9 573D 8FB7B9 <CJK>
+8FB7BA 573E 8FB7BA <CJK>
+8FB7BB 573F 8FB7BB <CJK>
+8FB7BC 5745 8FB7BC <CJK>
+8FB7BD 5746 8FB7BD <CJK>
+8FB7BE 574C 8FB7BE <CJK>
+8FB7BF 574D 8FB7BF <CJK>
+8FB7C0 5752 8FB7C0 <CJK>
+8FB7C1 5762 8FB7C1 <CJK>
+8FB7C2 5765 8FB7C2 <CJK>
+8FB7C3 5767 8FB7C3 <CJK>
+8FB7C4 5768 8FB7C4 <CJK>
+8FB7C5 576B 8FB7C5 <CJK>
+8FB7C6 576D 8FB7C6 <CJK>
+8FB7C7 576E 8FB7C7 <CJK>
+8FB7C8 576F 8FB7C8 <CJK>
+8FB7C9 5770 8FB7C9 <CJK>
+8FB7CA 5771 8FB7CA <CJK>
+8FB7CB 5773 8FB7CB <CJK>
+8FB7CC 5774 8FB7CC <CJK>
+8FB7CD 5775 8FB7CD <CJK>
+8FB7CE 5777 8FB7CE <CJK>
+8FB7CF 5779 8FB7CF <CJK>
+8FB7D0 577A 8FB7D0 <CJK>
+8FB7D1 577B 8FB7D1 <CJK>
+8FB7D2 577C 8FB7D2 <CJK>
+8FB7D3 577E 8FB7D3 <CJK>
+8FB7D4 5781 8FB7D4 <CJK>
+8FB7D5 5783 8FB7D5 <CJK>
+8FB7D6 578C 8FB7D6 <CJK>
+8FB7D7 5794 8FB7D7 <CJK>
+8FB7D8 5797 8FB7D8 <CJK>
+8FB7D9 5799 8FB7D9 <CJK>
+8FB7DA 579A 8FB7DA <CJK>
+8FB7DB 579C 8FB7DB <CJK>
+8FB7DC 579D 8FB7DC <CJK>
+8FB7DD 579E 8FB7DD <CJK>
+8FB7DE 579F 8FB7DE <CJK>
+8FB7DF 57A1 8FB7DF <CJK>
+8FB7E0 5795 8FB7E0 <CJK>
+8FB7E1 57A7 8FB7E1 <CJK>
+8FB7E2 57A8 8FB7E2 <CJK>
+8FB7E3 57A9 8FB7E3 <CJK>
+8FB7E4 57AC 8FB7E4 <CJK>
+8FB7E5 57B8 8FB7E5 <CJK>
+8FB7E6 57BD 8FB7E6 <CJK>
+8FB7E7 57C7 8FB7E7 <CJK>
+8FB7E8 57C8 8FB7E8 <CJK>
+8FB7E9 57CC 8FB7E9 <CJK>
+8FB7EA 57CF 8FB7EA <CJK>
+8FB7EB 57D5 8FB7EB <CJK>
+8FB7EC 57DD 8FB7EC <CJK>
+8FB7ED 57DE 8FB7ED <CJK>
+8FB7EE 57E4 8FB7EE <CJK>
+8FB7EF 57E6 8FB7EF <CJK>
+8FB7F0 57E7 8FB7F0 <CJK>
+8FB7F1 57E9 8FB7F1 <CJK>
+8FB7F2 57ED 8FB7F2 <CJK>
+8FB7F3 57F0 8FB7F3 <CJK>
+8FB7F4 57F5 8FB7F4 <CJK>
+8FB7F5 57F6 8FB7F5 <CJK>
+8FB7F6 57F8 8FB7F6 <CJK>
+8FB7F7 57FD 8FB7F7 <CJK>
+8FB7F8 57FE 8FB7F8 <CJK>
+8FB7F9 57FF 8FB7F9 <CJK>
+8FB7FA 5803 8FB7FA <CJK>
+8FB7FB 5804 8FB7FB <CJK>
+8FB7FC 5808 8FB7FC <CJK>
+8FB7FD 5809 8FB7FD <CJK>
+8FB7FE 57E1 8FB7FE <CJK>
+8FB8A1 580C 8FB8A1 <CJK>
+8FB8A2 580D 8FB8A2 <CJK>
+8FB8A3 581B 8FB8A3 <CJK>
+8FB8A4 581E 8FB8A4 <CJK>
+8FB8A5 581F 8FB8A5 <CJK>
+8FB8A6 5820 8FB8A6 <CJK>
+8FB8A7 5826 8FB8A7 <CJK>
+8FB8A8 5827 8FB8A8 <CJK>
+8FB8A9 582D 8FB8A9 <CJK>
+8FB8AA 5832 8FB8AA <CJK>
+8FB8AB 5839 8FB8AB <CJK>
+8FB8AC 583F 8FB8AC <CJK>
+8FB8AD 5849 8FB8AD <CJK>
+8FB8AE 584C 8FB8AE <CJK>
+8FB8AF 584D 8FB8AF <CJK>
+8FB8B0 584F 8FB8B0 <CJK>
+8FB8B1 5850 8FB8B1 <CJK>
+8FB8B2 5855 8FB8B2 <CJK>
+8FB8B3 585F 8FB8B3 <CJK>
+8FB8B4 5861 8FB8B4 <CJK>
+8FB8B5 5864 8FB8B5 <CJK>
+8FB8B6 5867 8FB8B6 <CJK>
+8FB8B7 5868 8FB8B7 <CJK>
+8FB8B8 5878 8FB8B8 <CJK>
+8FB8B9 587C 8FB8B9 <CJK>
+8FB8BA 587F 8FB8BA <CJK>
+8FB8BB 5880 8FB8BB <CJK>
+8FB8BC 5881 8FB8BC <CJK>
+8FB8BD 5887 8FB8BD <CJK>
+8FB8BE 5888 8FB8BE <CJK>
+8FB8BF 5889 8FB8BF <CJK>
+8FB8C0 588A 8FB8C0 <CJK>
+8FB8C1 588C 8FB8C1 <CJK>
+8FB8C2 588D 8FB8C2 <CJK>
+8FB8C3 588F 8FB8C3 <CJK>
+8FB8C4 5890 8FB8C4 <CJK>
+8FB8C5 5894 8FB8C5 <CJK>
+8FB8C6 5896 8FB8C6 <CJK>
+8FB8C7 589D 8FB8C7 <CJK>
+8FB8C8 58A0 8FB8C8 <CJK>
+8FB8C9 58A1 8FB8C9 <CJK>
+8FB8CA 58A2 8FB8CA <CJK>
+8FB8CB 58A6 8FB8CB <CJK>
+8FB8CC 58A9 8FB8CC <CJK>
+8FB8CD 58B1 8FB8CD <CJK>
+8FB8CE 58B2 8FB8CE <CJK>
+8FB8CF 58C4 8FB8CF <CJK>
+8FB8D0 58BC 8FB8D0 <CJK>
+8FB8D1 58C2 8FB8D1 <CJK>
+8FB8D2 58C8 8FB8D2 <CJK>
+8FB8D3 58CD 8FB8D3 <CJK>
+8FB8D4 58CE 8FB8D4 <CJK>
+8FB8D5 58D0 8FB8D5 <CJK>
+8FB8D6 58D2 8FB8D6 <CJK>
+8FB8D7 58D4 8FB8D7 <CJK>
+8FB8D8 58D6 8FB8D8 <CJK>
+8FB8D9 58DA 8FB8D9 <CJK>
+8FB8DA 58DD 8FB8DA <CJK>
+8FB8DB 58E1 8FB8DB <CJK>
+8FB8DC 58E2 8FB8DC <CJK>
+8FB8DD 58E9 8FB8DD <CJK>
+8FB8DE 58F3 8FB8DE <CJK>
+8FB8DF 5905 8FB8DF <CJK>
+8FB8E0 5906 8FB8E0 <CJK>
+8FB8E1 590B 8FB8E1 <CJK>
+8FB8E2 590C 8FB8E2 <CJK>
+8FB8E3 5912 8FB8E3 <CJK>
+8FB8E4 5913 8FB8E4 <CJK>
+8FB8E5 5914 8FB8E5 <CJK>
+8FB8E6 8641 8FB8E6 <CJK>
+8FB8E7 591D 8FB8E7 <CJK>
+8FB8E8 5921 8FB8E8 <CJK>
+8FB8E9 5923 8FB8E9 <CJK>
+8FB8EA 5924 8FB8EA <CJK>
+8FB8EB 5928 8FB8EB <CJK>
+8FB8EC 592F 8FB8EC <CJK>
+8FB8ED 5930 8FB8ED <CJK>
+8FB8EE 5933 8FB8EE <CJK>
+8FB8EF 5935 8FB8EF <CJK>
+8FB8F0 5936 8FB8F0 <CJK>
+8FB8F1 593F 8FB8F1 <CJK>
+8FB8F2 5943 8FB8F2 <CJK>
+8FB8F3 5946 8FB8F3 <CJK>
+8FB8F4 5952 8FB8F4 <CJK>
+8FB8F5 5953 8FB8F5 <CJK>
+8FB8F6 5959 8FB8F6 <CJK>
+8FB8F7 595B 8FB8F7 <CJK>
+8FB8F8 595D 8FB8F8 <CJK>
+8FB8F9 595E 8FB8F9 <CJK>
+8FB8FA 595F 8FB8FA <CJK>
+8FB8FB 5961 8FB8FB <CJK>
+8FB8FC 5963 8FB8FC <CJK>
+8FB8FD 596B 8FB8FD <CJK>
+8FB8FE 596D 8FB8FE <CJK>
+8FB9A1 596F 8FB9A1 <CJK>
+8FB9A2 5972 8FB9A2 <CJK>
+8FB9A3 5975 8FB9A3 <CJK>
+8FB9A4 5976 8FB9A4 <CJK>
+8FB9A5 5979 8FB9A5 <CJK>
+8FB9A6 597B 8FB9A6 <CJK>
+8FB9A7 597C 8FB9A7 <CJK>
+8FB9A8 598B 8FB9A8 <CJK>
+8FB9A9 598C 8FB9A9 <CJK>
+8FB9AA 598E 8FB9AA <CJK>
+8FB9AB 5992 8FB9AB <CJK>
+8FB9AC 5995 8FB9AC <CJK>
+8FB9AD 5997 8FB9AD <CJK>
+8FB9AE 599F 8FB9AE <CJK>
+8FB9AF 59A4 8FB9AF <CJK>
+8FB9B0 59A7 8FB9B0 <CJK>
+8FB9B1 59AD 8FB9B1 <CJK>
+8FB9B2 59AE 8FB9B2 <CJK>
+8FB9B3 59AF 8FB9B3 <CJK>
+8FB9B4 59B0 8FB9B4 <CJK>
+8FB9B5 59B3 8FB9B5 <CJK>
+8FB9B6 59B7 8FB9B6 <CJK>
+8FB9B7 59BA 8FB9B7 <CJK>
+8FB9B8 59BC 8FB9B8 <CJK>
+8FB9B9 59C1 8FB9B9 <CJK>
+8FB9BA 59C3 8FB9BA <CJK>
+8FB9BB 59C4 8FB9BB <CJK>
+8FB9BC 59C8 8FB9BC <CJK>
+8FB9BD 59CA 8FB9BD <CJK>
+8FB9BE 59CD 8FB9BE <CJK>
+8FB9BF 59D2 8FB9BF <CJK>
+8FB9C0 59DD 8FB9C0 <CJK>
+8FB9C1 59DE 8FB9C1 <CJK>
+8FB9C2 59DF 8FB9C2 <CJK>
+8FB9C3 59E3 8FB9C3 <CJK>
+8FB9C4 59E4 8FB9C4 <CJK>
+8FB9C5 59E7 8FB9C5 <CJK>
+8FB9C6 59EE 8FB9C6 <CJK>
+8FB9C7 59EF 8FB9C7 <CJK>
+8FB9C8 59F1 8FB9C8 <CJK>
+8FB9C9 59F2 8FB9C9 <CJK>
+8FB9CA 59F4 8FB9CA <CJK>
+8FB9CB 59F7 8FB9CB <CJK>
+8FB9CC 5A00 8FB9CC <CJK>
+8FB9CD 5A04 8FB9CD <CJK>
+8FB9CE 5A0C 8FB9CE <CJK>
+8FB9CF 5A0D 8FB9CF <CJK>
+8FB9D0 5A0E 8FB9D0 <CJK>
+8FB9D1 5A12 8FB9D1 <CJK>
+8FB9D2 5A13 8FB9D2 <CJK>
+8FB9D3 5A1E 8FB9D3 <CJK>
+8FB9D4 5A23 8FB9D4 <CJK>
+8FB9D5 5A24 8FB9D5 <CJK>
+8FB9D6 5A27 8FB9D6 <CJK>
+8FB9D7 5A28 8FB9D7 <CJK>
+8FB9D8 5A2A 8FB9D8 <CJK>
+8FB9D9 5A2D 8FB9D9 <CJK>
+8FB9DA 5A30 8FB9DA <CJK>
+8FB9DB 5A44 8FB9DB <CJK>
+8FB9DC 5A45 8FB9DC <CJK>
+8FB9DD 5A47 8FB9DD <CJK>
+8FB9DE 5A48 8FB9DE <CJK>
+8FB9DF 5A4C 8FB9DF <CJK>
+8FB9E0 5A50 8FB9E0 <CJK>
+8FB9E1 5A55 8FB9E1 <CJK>
+8FB9E2 5A5E 8FB9E2 <CJK>
+8FB9E3 5A63 8FB9E3 <CJK>
+8FB9E4 5A65 8FB9E4 <CJK>
+8FB9E5 5A67 8FB9E5 <CJK>
+8FB9E6 5A6D 8FB9E6 <CJK>
+8FB9E7 5A77 8FB9E7 <CJK>
+8FB9E8 5A7A 8FB9E8 <CJK>
+8FB9E9 5A7B 8FB9E9 <CJK>
+8FB9EA 5A7E 8FB9EA <CJK>
+8FB9EB 5A8B 8FB9EB <CJK>
+8FB9EC 5A90 8FB9EC <CJK>
+8FB9ED 5A93 8FB9ED <CJK>
+8FB9EE 5A96 8FB9EE <CJK>
+8FB9EF 5A99 8FB9EF <CJK>
+8FB9F0 5A9C 8FB9F0 <CJK>
+8FB9F1 5A9E 8FB9F1 <CJK>
+8FB9F2 5A9F 8FB9F2 <CJK>
+8FB9F3 5AA0 8FB9F3 <CJK>
+8FB9F4 5AA2 8FB9F4 <CJK>
+8FB9F5 5AA7 8FB9F5 <CJK>
+8FB9F6 5AAC 8FB9F6 <CJK>
+8FB9F7 5AB1 8FB9F7 <CJK>
+8FB9F8 5AB2 8FB9F8 <CJK>
+8FB9F9 5AB3 8FB9F9 <CJK>
+8FB9FA 5AB5 8FB9FA <CJK>
+8FB9FB 5AB8 8FB9FB <CJK>
+8FB9FC 5ABA 8FB9FC <CJK>
+8FB9FD 5ABB 8FB9FD <CJK>
+8FB9FE 5ABF 8FB9FE <CJK>
+8FBAA1 5AC4 8FBAA1 <CJK>
+8FBAA2 5AC6 8FBAA2 <CJK>
+8FBAA3 5AC8 8FBAA3 <CJK>
+8FBAA4 5ACF 8FBAA4 <CJK>
+8FBAA5 5ADA 8FBAA5 <CJK>
+8FBAA6 5ADC 8FBAA6 <CJK>
+8FBAA7 5AE0 8FBAA7 <CJK>
+8FBAA8 5AE5 8FBAA8 <CJK>
+8FBAA9 5AEA 8FBAA9 <CJK>
+8FBAAA 5AEE 8FBAAA <CJK>
+8FBAAB 5AF5 8FBAAB <CJK>
+8FBAAC 5AF6 8FBAAC <CJK>
+8FBAAD 5AFD 8FBAAD <CJK>
+8FBAAE 5B00 8FBAAE <CJK>
+8FBAAF 5B01 8FBAAF <CJK>
+8FBAB0 5B08 8FBAB0 <CJK>
+8FBAB1 5B17 8FBAB1 <CJK>
+8FBAB2 5B34 8FBAB2 <CJK>
+8FBAB3 5B19 8FBAB3 <CJK>
+8FBAB4 5B1B 8FBAB4 <CJK>
+8FBAB5 5B1D 8FBAB5 <CJK>
+8FBAB6 5B21 8FBAB6 <CJK>
+8FBAB7 5B25 8FBAB7 <CJK>
+8FBAB8 5B2D 8FBAB8 <CJK>
+8FBAB9 5B38 8FBAB9 <CJK>
+8FBABA 5B41 8FBABA <CJK>
+8FBABB 5B4B 8FBABB <CJK>
+8FBABC 5B4C 8FBABC <CJK>
+8FBABD 5B52 8FBABD <CJK>
+8FBABE 5B56 8FBABE <CJK>
+8FBABF 5B5E 8FBABF <CJK>
+8FBAC0 5B68 8FBAC0 <CJK>
+8FBAC1 5B6E 8FBAC1 <CJK>
+8FBAC2 5B6F 8FBAC2 <CJK>
+8FBAC3 5B7C 8FBAC3 <CJK>
+8FBAC4 5B7D 8FBAC4 <CJK>
+8FBAC5 5B7E 8FBAC5 <CJK>
+8FBAC6 5B7F 8FBAC6 <CJK>
+8FBAC7 5B81 8FBAC7 <CJK>
+8FBAC8 5B84 8FBAC8 <CJK>
+8FBAC9 5B86 8FBAC9 <CJK>
+8FBACA 5B8A 8FBACA <CJK>
+8FBACB 5B8E 8FBACB <CJK>
+8FBACC 5B90 8FBACC <CJK>
+8FBACD 5B91 8FBACD <CJK>
+8FBACE 5B93 8FBACE <CJK>
+8FBACF 5B94 8FBACF <CJK>
+8FBAD0 5B96 8FBAD0 <CJK>
+8FBAD1 5BA8 8FBAD1 <CJK>
+8FBAD2 5BA9 8FBAD2 <CJK>
+8FBAD3 5BAC 8FBAD3 <CJK>
+8FBAD4 5BAD 8FBAD4 <CJK>
+8FBAD5 5BAF 8FBAD5 <CJK>
+8FBAD6 5BB1 8FBAD6 <CJK>
+8FBAD7 5BB2 8FBAD7 <CJK>
+8FBAD8 5BB7 8FBAD8 <CJK>
+8FBAD9 5BBA 8FBAD9 <CJK>
+8FBADA 5BBC 8FBADA <CJK>
+8FBADB 5BC0 8FBADB <CJK>
+8FBADC 5BC1 8FBADC <CJK>
+8FBADD 5BCD 8FBADD <CJK>
+8FBADE 5BCF 8FBADE <CJK>
+8FBADF 5BD6 8FBADF <CJK>
+8FBAE0 5BD7 8FBAE0 <CJK>
+8FBAE1 5BD8 8FBAE1 <CJK>
+8FBAE2 5BD9 8FBAE2 <CJK>
+8FBAE3 5BDA 8FBAE3 <CJK>
+8FBAE4 5BE0 8FBAE4 <CJK>
+8FBAE5 5BEF 8FBAE5 <CJK>
+8FBAE6 5BF1 8FBAE6 <CJK>
+8FBAE7 5BF4 8FBAE7 <CJK>
+8FBAE8 5BFD 8FBAE8 <CJK>
+8FBAE9 5C0C 8FBAE9 <CJK>
+8FBAEA 5C17 8FBAEA <CJK>
+8FBAEB 5C1E 8FBAEB <CJK>
+8FBAEC 5C1F 8FBAEC <CJK>
+8FBAED 5C23 8FBAED <CJK>
+8FBAEE 5C26 8FBAEE <CJK>
+8FBAEF 5C29 8FBAEF <CJK>
+8FBAF0 5C2B 8FBAF0 <CJK>
+8FBAF1 5C2C 8FBAF1 <CJK>
+8FBAF2 5C2E 8FBAF2 <CJK>
+8FBAF3 5C30 8FBAF3 <CJK>
+8FBAF4 5C32 8FBAF4 <CJK>
+8FBAF5 5C35 8FBAF5 <CJK>
+8FBAF6 5C36 8FBAF6 <CJK>
+8FBAF7 5C59 8FBAF7 <CJK>
+8FBAF8 5C5A 8FBAF8 <CJK>
+8FBAF9 5C5C 8FBAF9 <CJK>
+8FBAFA 5C62 8FBAFA <CJK>
+8FBAFB 5C63 8FBAFB <CJK>
+8FBAFC 5C67 8FBAFC <CJK>
+8FBAFD 5C68 8FBAFD <CJK>
+8FBAFE 5C69 8FBAFE <CJK>
+8FBBA1 5C6D 8FBBA1 <CJK>
+8FBBA2 5C70 8FBBA2 <CJK>
+8FBBA3 5C74 8FBBA3 <CJK>
+8FBBA4 5C75 8FBBA4 <CJK>
+8FBBA5 5C7A 8FBBA5 <CJK>
+8FBBA6 5C7B 8FBBA6 <CJK>
+8FBBA7 5C7C 8FBBA7 <CJK>
+8FBBA8 5C7D 8FBBA8 <CJK>
+8FBBA9 5C87 8FBBA9 <CJK>
+8FBBAA 5C88 8FBBAA <CJK>
+8FBBAB 5C8A 8FBBAB <CJK>
+8FBBAC 5C8F 8FBBAC <CJK>
+8FBBAD 5C92 8FBBAD <CJK>
+8FBBAE 5C9D 8FBBAE <CJK>
+8FBBAF 5C9F 8FBBAF <CJK>
+8FBBB0 5CA0 8FBBB0 <CJK>
+8FBBB1 5CA2 8FBBB1 <CJK>
+8FBBB2 5CA3 8FBBB2 <CJK>
+8FBBB3 5CA6 8FBBB3 <CJK>
+8FBBB4 5CAA 8FBBB4 <CJK>
+8FBBB5 5CB2 8FBBB5 <CJK>
+8FBBB6 5CB4 8FBBB6 <CJK>
+8FBBB7 5CB5 8FBBB7 <CJK>
+8FBBB8 5CBA 8FBBB8 <CJK>
+8FBBB9 5CC9 8FBBB9 <CJK>
+8FBBBA 5CCB 8FBBBA <CJK>
+8FBBBB 5CD2 8FBBBB <CJK>
+8FBBBC 5CDD 8FBBBC <CJK>
+8FBBBD 5CD7 8FBBBD <CJK>
+8FBBBE 5CEE 8FBBBE <CJK>
+8FBBBF 5CF1 8FBBBF <CJK>
+8FBBC0 5CF2 8FBBC0 <CJK>
+8FBBC1 5CF4 8FBBC1 <CJK>
+8FBBC2 5D01 8FBBC2 <CJK>
+8FBBC3 5D06 8FBBC3 <CJK>
+8FBBC4 5D0D 8FBBC4 <CJK>
+8FBBC5 5D12 8FBBC5 <CJK>
+8FBBC6 5D2B 8FBBC6 <CJK>
+8FBBC7 5D23 8FBBC7 <CJK>
+8FBBC8 5D24 8FBBC8 <CJK>
+8FBBC9 5D26 8FBBC9 <CJK>
+8FBBCA 5D27 8FBBCA <CJK>
+8FBBCB 5D31 8FBBCB <CJK>
+8FBBCC 5D34 8FBBCC <CJK>
+8FBBCD 5D39 8FBBCD <CJK>
+8FBBCE 5D3D 8FBBCE <CJK>
+8FBBCF 5D3F 8FBBCF <CJK>
+8FBBD0 5D42 8FBBD0 <CJK>
+8FBBD1 5D43 8FBBD1 <CJK>
+8FBBD2 5D46 8FBBD2 <CJK>
+8FBBD3 5D48 8FBBD3 <CJK>
+8FBBD4 5D55 8FBBD4 <CJK>
+8FBBD5 5D51 8FBBD5 <CJK>
+8FBBD6 5D59 8FBBD6 <CJK>
+8FBBD7 5D4A 8FBBD7 <CJK>
+8FBBD8 5D5F 8FBBD8 <CJK>
+8FBBD9 5D60 8FBBD9 <CJK>
+8FBBDA 5D61 8FBBDA <CJK>
+8FBBDB 5D62 8FBBDB <CJK>
+8FBBDC 5D64 8FBBDC <CJK>
+8FBBDD 5D6A 8FBBDD <CJK>
+8FBBDE 5D6D 8FBBDE <CJK>
+8FBBDF 5D70 8FBBDF <CJK>
+8FBBE0 5D79 8FBBE0 <CJK>
+8FBBE1 5D7A 8FBBE1 <CJK>
+8FBBE2 5D7E 8FBBE2 <CJK>
+8FBBE3 5D7F 8FBBE3 <CJK>
+8FBBE4 5D81 8FBBE4 <CJK>
+8FBBE5 5D83 8FBBE5 <CJK>
+8FBBE6 5D88 8FBBE6 <CJK>
+8FBBE7 5D8A 8FBBE7 <CJK>
+8FBBE8 5D92 8FBBE8 <CJK>
+8FBBE9 5D93 8FBBE9 <CJK>
+8FBBEA 5D94 8FBBEA <CJK>
+8FBBEB 5D95 8FBBEB <CJK>
+8FBBEC 5D99 8FBBEC <CJK>
+8FBBED 5D9B 8FBBED <CJK>
+8FBBEE 5D9F 8FBBEE <CJK>
+8FBBEF 5DA0 8FBBEF <CJK>
+8FBBF0 5DA7 8FBBF0 <CJK>
+8FBBF1 5DAB 8FBBF1 <CJK>
+8FBBF2 5DB0 8FBBF2 <CJK>
+8FBBF3 5DB4 8FBBF3 <CJK>
+8FBBF4 5DB8 8FBBF4 <CJK>
+8FBBF5 5DB9 8FBBF5 <CJK>
+8FBBF6 5DC3 8FBBF6 <CJK>
+8FBBF7 5DC7 8FBBF7 <CJK>
+8FBBF8 5DCB 8FBBF8 <CJK>
+8FBBF9 5DD0 8FBBF9 <CJK>
+8FBBFA 5DCE 8FBBFA <CJK>
+8FBBFB 5DD8 8FBBFB <CJK>
+8FBBFC 5DD9 8FBBFC <CJK>
+8FBBFD 5DE0 8FBBFD <CJK>
+8FBBFE 5DE4 8FBBFE <CJK>
+8FBCA1 5DE9 8FBCA1 <CJK>
+8FBCA2 5DF8 8FBCA2 <CJK>
+8FBCA3 5DF9 8FBCA3 <CJK>
+8FBCA4 5E00 8FBCA4 <CJK>
+8FBCA5 5E07 8FBCA5 <CJK>
+8FBCA6 5E0D 8FBCA6 <CJK>
+8FBCA7 5E12 8FBCA7 <CJK>
+8FBCA8 5E14 8FBCA8 <CJK>
+8FBCA9 5E15 8FBCA9 <CJK>
+8FBCAA 5E18 8FBCAA <CJK>
+8FBCAB 5E1F 8FBCAB <CJK>
+8FBCAC 5E20 8FBCAC <CJK>
+8FBCAD 5E2E 8FBCAD <CJK>
+8FBCAE 5E28 8FBCAE <CJK>
+8FBCAF 5E32 8FBCAF <CJK>
+8FBCB0 5E35 8FBCB0 <CJK>
+8FBCB1 5E3E 8FBCB1 <CJK>
+8FBCB2 5E4B 8FBCB2 <CJK>
+8FBCB3 5E50 8FBCB3 <CJK>
+8FBCB4 5E49 8FBCB4 <CJK>
+8FBCB5 5E51 8FBCB5 <CJK>
+8FBCB6 5E56 8FBCB6 <CJK>
+8FBCB7 5E58 8FBCB7 <CJK>
+8FBCB8 5E5B 8FBCB8 <CJK>
+8FBCB9 5E5C 8FBCB9 <CJK>
+8FBCBA 5E5E 8FBCBA <CJK>
+8FBCBB 5E68 8FBCBB <CJK>
+8FBCBC 5E6A 8FBCBC <CJK>
+8FBCBD 5E6B 8FBCBD <CJK>
+8FBCBE 5E6C 8FBCBE <CJK>
+8FBCBF 5E6D 8FBCBF <CJK>
+8FBCC0 5E6E 8FBCC0 <CJK>
+8FBCC1 5E70 8FBCC1 <CJK>
+8FBCC2 5E80 8FBCC2 <CJK>
+8FBCC3 5E8B 8FBCC3 <CJK>
+8FBCC4 5E8E 8FBCC4 <CJK>
+8FBCC5 5EA2 8FBCC5 <CJK>
+8FBCC6 5EA4 8FBCC6 <CJK>
+8FBCC7 5EA5 8FBCC7 <CJK>
+8FBCC8 5EA8 8FBCC8 <CJK>
+8FBCC9 5EAA 8FBCC9 <CJK>
+8FBCCA 5EAC 8FBCCA <CJK>
+8FBCCB 5EB1 8FBCCB <CJK>
+8FBCCC 5EB3 8FBCCC <CJK>
+8FBCCD 5EBD 8FBCCD <CJK>
+8FBCCE 5EBE 8FBCCE <CJK>
+8FBCCF 5EBF 8FBCCF <CJK>
+8FBCD0 5EC6 8FBCD0 <CJK>
+8FBCD1 5ECC 8FBCD1 <CJK>
+8FBCD2 5ECB 8FBCD2 <CJK>
+8FBCD3 5ECE 8FBCD3 <CJK>
+8FBCD4 5ED1 8FBCD4 <CJK>
+8FBCD5 5ED2 8FBCD5 <CJK>
+8FBCD6 5ED4 8FBCD6 <CJK>
+8FBCD7 5ED5 8FBCD7 <CJK>
+8FBCD8 5EDC 8FBCD8 <CJK>
+8FBCD9 5EDE 8FBCD9 <CJK>
+8FBCDA 5EE5 8FBCDA <CJK>
+8FBCDB 5EEB 8FBCDB <CJK>
+8FBCDC 5F02 8FBCDC <CJK>
+8FBCDD 5F06 8FBCDD <CJK>
+8FBCDE 5F07 8FBCDE <CJK>
+8FBCDF 5F08 8FBCDF <CJK>
+8FBCE0 5F0E 8FBCE0 <CJK>
+8FBCE1 5F19 8FBCE1 <CJK>
+8FBCE2 5F1C 8FBCE2 <CJK>
+8FBCE3 5F1D 8FBCE3 <CJK>
+8FBCE4 5F21 8FBCE4 <CJK>
+8FBCE5 5F22 8FBCE5 <CJK>
+8FBCE6 5F23 8FBCE6 <CJK>
+8FBCE7 5F24 8FBCE7 <CJK>
+8FBCE8 5F28 8FBCE8 <CJK>
+8FBCE9 5F2B 8FBCE9 <CJK>
+8FBCEA 5F2C 8FBCEA <CJK>
+8FBCEB 5F2E 8FBCEB <CJK>
+8FBCEC 5F30 8FBCEC <CJK>
+8FBCED 5F34 8FBCED <CJK>
+8FBCEE 5F36 8FBCEE <CJK>
+8FBCEF 5F3B 8FBCEF <CJK>
+8FBCF0 5F3D 8FBCF0 <CJK>
+8FBCF1 5F3F 8FBCF1 <CJK>
+8FBCF2 5F40 8FBCF2 <CJK>
+8FBCF3 5F44 8FBCF3 <CJK>
+8FBCF4 5F45 8FBCF4 <CJK>
+8FBCF5 5F47 8FBCF5 <CJK>
+8FBCF6 5F4D 8FBCF6 <CJK>
+8FBCF7 5F50 8FBCF7 <CJK>
+8FBCF8 5F54 8FBCF8 <CJK>
+8FBCF9 5F58 8FBCF9 <CJK>
+8FBCFA 5F5B 8FBCFA <CJK>
+8FBCFB 5F60 8FBCFB <CJK>
+8FBCFC 5F63 8FBCFC <CJK>
+8FBCFD 5F64 8FBCFD <CJK>
+8FBCFE 5F67 8FBCFE <CJK>
+8FBDA1 5F6F 8FBDA1 <CJK>
+8FBDA2 5F72 8FBDA2 <CJK>
+8FBDA3 5F74 8FBDA3 <CJK>
+8FBDA4 5F75 8FBDA4 <CJK>
+8FBDA5 5F78 8FBDA5 <CJK>
+8FBDA6 5F7A 8FBDA6 <CJK>
+8FBDA7 5F7D 8FBDA7 <CJK>
+8FBDA8 5F7E 8FBDA8 <CJK>
+8FBDA9 5F89 8FBDA9 <CJK>
+8FBDAA 5F8D 8FBDAA <CJK>
+8FBDAB 5F8F 8FBDAB <CJK>
+8FBDAC 5F96 8FBDAC <CJK>
+8FBDAD 5F9C 8FBDAD <CJK>
+8FBDAE 5F9D 8FBDAE <CJK>
+8FBDAF 5FA2 8FBDAF <CJK>
+8FBDB0 5FA7 8FBDB0 <CJK>
+8FBDB1 5FAB 8FBDB1 <CJK>
+8FBDB2 5FA4 8FBDB2 <CJK>
+8FBDB3 5FAC 8FBDB3 <CJK>
+8FBDB4 5FAF 8FBDB4 <CJK>
+8FBDB5 5FB0 8FBDB5 <CJK>
+8FBDB6 5FB1 8FBDB6 <CJK>
+8FBDB7 5FB8 8FBDB7 <CJK>
+8FBDB8 5FC4 8FBDB8 <CJK>
+8FBDB9 5FC7 8FBDB9 <CJK>
+8FBDBA 5FC8 8FBDBA <CJK>
+8FBDBB 5FC9 8FBDBB <CJK>
+8FBDBC 5FCB 8FBDBC <CJK>
+8FBDBD 5FD0 8FBDBD <CJK>
+8FBDBE 5FD1 8FBDBE <CJK>
+8FBDBF 5FD2 8FBDBF <CJK>
+8FBDC0 5FD3 8FBDC0 <CJK>
+8FBDC1 5FD4 8FBDC1 <CJK>
+8FBDC2 5FDE 8FBDC2 <CJK>
+8FBDC3 5FE1 8FBDC3 <CJK>
+8FBDC4 5FE2 8FBDC4 <CJK>
+8FBDC5 5FE8 8FBDC5 <CJK>
+8FBDC6 5FE9 8FBDC6 <CJK>
+8FBDC7 5FEA 8FBDC7 <CJK>
+8FBDC8 5FEC 8FBDC8 <CJK>
+8FBDC9 5FED 8FBDC9 <CJK>
+8FBDCA 5FEE 8FBDCA <CJK>
+8FBDCB 5FEF 8FBDCB <CJK>
+8FBDCC 5FF2 8FBDCC <CJK>
+8FBDCD 5FF3 8FBDCD <CJK>
+8FBDCE 5FF6 8FBDCE <CJK>
+8FBDCF 5FFA 8FBDCF <CJK>
+8FBDD0 5FFC 8FBDD0 <CJK>
+8FBDD1 6007 8FBDD1 <CJK>
+8FBDD2 600A 8FBDD2 <CJK>
+8FBDD3 600D 8FBDD3 <CJK>
+8FBDD4 6013 8FBDD4 <CJK>
+8FBDD5 6014 8FBDD5 <CJK>
+8FBDD6 6017 8FBDD6 <CJK>
+8FBDD7 6018 8FBDD7 <CJK>
+8FBDD8 601A 8FBDD8 <CJK>
+8FBDD9 601F 8FBDD9 <CJK>
+8FBDDA 6024 8FBDDA <CJK>
+8FBDDB 602D 8FBDDB <CJK>
+8FBDDC 6033 8FBDDC <CJK>
+8FBDDD 6035 8FBDDD <CJK>
+8FBDDE 6040 8FBDDE <CJK>
+8FBDDF 6047 8FBDDF <CJK>
+8FBDE0 6048 8FBDE0 <CJK>
+8FBDE1 6049 8FBDE1 <CJK>
+8FBDE2 604C 8FBDE2 <CJK>
+8FBDE3 6051 8FBDE3 <CJK>
+8FBDE4 6054 8FBDE4 <CJK>
+8FBDE5 6056 8FBDE5 <CJK>
+8FBDE6 6057 8FBDE6 <CJK>
+8FBDE7 605D 8FBDE7 <CJK>
+8FBDE8 6061 8FBDE8 <CJK>
+8FBDE9 6067 8FBDE9 <CJK>
+8FBDEA 6071 8FBDEA <CJK>
+8FBDEB 607E 8FBDEB <CJK>
+8FBDEC 607F 8FBDEC <CJK>
+8FBDED 6082 8FBDED <CJK>
+8FBDEE 6086 8FBDEE <CJK>
+8FBDEF 6088 8FBDEF <CJK>
+8FBDF0 608A 8FBDF0 <CJK>
+8FBDF1 608E 8FBDF1 <CJK>
+8FBDF2 6091 8FBDF2 <CJK>
+8FBDF3 6093 8FBDF3 <CJK>
+8FBDF4 6095 8FBDF4 <CJK>
+8FBDF5 6098 8FBDF5 <CJK>
+8FBDF6 609D 8FBDF6 <CJK>
+8FBDF7 609E 8FBDF7 <CJK>
+8FBDF8 60A2 8FBDF8 <CJK>
+8FBDF9 60A4 8FBDF9 <CJK>
+8FBDFA 60A5 8FBDFA <CJK>
+8FBDFB 60A8 8FBDFB <CJK>
+8FBDFC 60B0 8FBDFC <CJK>
+8FBDFD 60B1 8FBDFD <CJK>
+8FBDFE 60B7 8FBDFE <CJK>
+8FBEA1 60BB 8FBEA1 <CJK>
+8FBEA2 60BE 8FBEA2 <CJK>
+8FBEA3 60C2 8FBEA3 <CJK>
+8FBEA4 60C4 8FBEA4 <CJK>
+8FBEA5 60C8 8FBEA5 <CJK>
+8FBEA6 60C9 8FBEA6 <CJK>
+8FBEA7 60CA 8FBEA7 <CJK>
+8FBEA8 60CB 8FBEA8 <CJK>
+8FBEA9 60CE 8FBEA9 <CJK>
+8FBEAA 60CF 8FBEAA <CJK>
+8FBEAB 60D4 8FBEAB <CJK>
+8FBEAC 60D5 8FBEAC <CJK>
+8FBEAD 60D9 8FBEAD <CJK>
+8FBEAE 60DB 8FBEAE <CJK>
+8FBEAF 60DD 8FBEAF <CJK>
+8FBEB0 60DE 8FBEB0 <CJK>
+8FBEB1 60E2 8FBEB1 <CJK>
+8FBEB2 60E5 8FBEB2 <CJK>
+8FBEB3 60F2 8FBEB3 <CJK>
+8FBEB4 60F5 8FBEB4 <CJK>
+8FBEB5 60F8 8FBEB5 <CJK>
+8FBEB6 60FC 8FBEB6 <CJK>
+8FBEB7 60FD 8FBEB7 <CJK>
+8FBEB8 6102 8FBEB8 <CJK>
+8FBEB9 6107 8FBEB9 <CJK>
+8FBEBA 610A 8FBEBA <CJK>
+8FBEBB 610C 8FBEBB <CJK>
+8FBEBC 6110 8FBEBC <CJK>
+8FBEBD 6111 8FBEBD <CJK>
+8FBEBE 6112 8FBEBE <CJK>
+8FBEBF 6113 8FBEBF <CJK>
+8FBEC0 6114 8FBEC0 <CJK>
+8FBEC1 6116 8FBEC1 <CJK>
+8FBEC2 6117 8FBEC2 <CJK>
+8FBEC3 6119 8FBEC3 <CJK>
+8FBEC4 611C 8FBEC4 <CJK>
+8FBEC5 611E 8FBEC5 <CJK>
+8FBEC6 6122 8FBEC6 <CJK>
+8FBEC7 612A 8FBEC7 <CJK>
+8FBEC8 612B 8FBEC8 <CJK>
+8FBEC9 6130 8FBEC9 <CJK>
+8FBECA 6131 8FBECA <CJK>
+8FBECB 6135 8FBECB <CJK>
+8FBECC 6136 8FBECC <CJK>
+8FBECD 6137 8FBECD <CJK>
+8FBECE 6139 8FBECE <CJK>
+8FBECF 6141 8FBECF <CJK>
+8FBED0 6145 8FBED0 <CJK>
+8FBED1 6146 8FBED1 <CJK>
+8FBED2 6149 8FBED2 <CJK>
+8FBED3 615E 8FBED3 <CJK>
+8FBED4 6160 8FBED4 <CJK>
+8FBED5 616C 8FBED5 <CJK>
+8FBED6 6172 8FBED6 <CJK>
+8FBED7 6178 8FBED7 <CJK>
+8FBED8 617B 8FBED8 <CJK>
+8FBED9 617C 8FBED9 <CJK>
+8FBEDA 617F 8FBEDA <CJK>
+8FBEDB 6180 8FBEDB <CJK>
+8FBEDC 6181 8FBEDC <CJK>
+8FBEDD 6183 8FBEDD <CJK>
+8FBEDE 6184 8FBEDE <CJK>
+8FBEDF 618B 8FBEDF <CJK>
+8FBEE0 618D 8FBEE0 <CJK>
+8FBEE1 6192 8FBEE1 <CJK>
+8FBEE2 6193 8FBEE2 <CJK>
+8FBEE3 6197 8FBEE3 <CJK>
+8FBEE4 6198 8FBEE4 <CJK>
+8FBEE5 619C 8FBEE5 <CJK>
+8FBEE6 619D 8FBEE6 <CJK>
+8FBEE7 619F 8FBEE7 <CJK>
+8FBEE8 61A0 8FBEE8 <CJK>
+8FBEE9 61A5 8FBEE9 <CJK>
+8FBEEA 61A8 8FBEEA <CJK>
+8FBEEB 61AA 8FBEEB <CJK>
+8FBEEC 61AD 8FBEEC <CJK>
+8FBEED 61B8 8FBEED <CJK>
+8FBEEE 61B9 8FBEEE <CJK>
+8FBEEF 61BC 8FBEEF <CJK>
+8FBEF0 61C0 8FBEF0 <CJK>
+8FBEF1 61C1 8FBEF1 <CJK>
+8FBEF2 61C2 8FBEF2 <CJK>
+8FBEF3 61CE 8FBEF3 <CJK>
+8FBEF4 61CF 8FBEF4 <CJK>
+8FBEF5 61D5 8FBEF5 <CJK>
+8FBEF6 61DC 8FBEF6 <CJK>
+8FBEF7 61DD 8FBEF7 <CJK>
+8FBEF8 61DE 8FBEF8 <CJK>
+8FBEF9 61DF 8FBEF9 <CJK>
+8FBEFA 61E1 8FBEFA <CJK>
+8FBEFB 61E2 8FBEFB <CJK>
+8FBEFC 61E7 8FBEFC <CJK>
+8FBEFD 61E9 8FBEFD <CJK>
+8FBEFE 61E5 8FBEFE <CJK>
+8FBFA1 61EC 8FBFA1 <CJK>
+8FBFA2 61ED 8FBFA2 <CJK>
+8FBFA3 61EF 8FBFA3 <CJK>
+8FBFA4 6201 8FBFA4 <CJK>
+8FBFA5 6203 8FBFA5 <CJK>
+8FBFA6 6204 8FBFA6 <CJK>
+8FBFA7 6207 8FBFA7 <CJK>
+8FBFA8 6213 8FBFA8 <CJK>
+8FBFA9 6215 8FBFA9 <CJK>
+8FBFAA 621C 8FBFAA <CJK>
+8FBFAB 6220 8FBFAB <CJK>
+8FBFAC 6222 8FBFAC <CJK>
+8FBFAD 6223 8FBFAD <CJK>
+8FBFAE 6227 8FBFAE <CJK>
+8FBFAF 6229 8FBFAF <CJK>
+8FBFB0 622B 8FBFB0 <CJK>
+8FBFB1 6239 8FBFB1 <CJK>
+8FBFB2 623D 8FBFB2 <CJK>
+8FBFB3 6242 8FBFB3 <CJK>
+8FBFB4 6243 8FBFB4 <CJK>
+8FBFB5 6244 8FBFB5 <CJK>
+8FBFB6 6246 8FBFB6 <CJK>
+8FBFB7 624C 8FBFB7 <CJK>
+8FBFB8 6250 8FBFB8 <CJK>
+8FBFB9 6251 8FBFB9 <CJK>
+8FBFBA 6252 8FBFBA <CJK>
+8FBFBB 6254 8FBFBB <CJK>
+8FBFBC 6256 8FBFBC <CJK>
+8FBFBD 625A 8FBFBD <CJK>
+8FBFBE 625C 8FBFBE <CJK>
+8FBFBF 6264 8FBFBF <CJK>
+8FBFC0 626D 8FBFC0 <CJK>
+8FBFC1 626F 8FBFC1 <CJK>
+8FBFC2 6273 8FBFC2 <CJK>
+8FBFC3 627A 8FBFC3 <CJK>
+8FBFC4 627D 8FBFC4 <CJK>
+8FBFC5 628D 8FBFC5 <CJK>
+8FBFC6 628E 8FBFC6 <CJK>
+8FBFC7 628F 8FBFC7 <CJK>
+8FBFC8 6290 8FBFC8 <CJK>
+8FBFC9 62A6 8FBFC9 <CJK>
+8FBFCA 62A8 8FBFCA <CJK>
+8FBFCB 62B3 8FBFCB <CJK>
+8FBFCC 62B6 8FBFCC <CJK>
+8FBFCD 62B7 8FBFCD <CJK>
+8FBFCE 62BA 8FBFCE <CJK>
+8FBFCF 62BE 8FBFCF <CJK>
+8FBFD0 62BF 8FBFD0 <CJK>
+8FBFD1 62C4 8FBFD1 <CJK>
+8FBFD2 62CE 8FBFD2 <CJK>
+8FBFD3 62D5 8FBFD3 <CJK>
+8FBFD4 62D6 8FBFD4 <CJK>
+8FBFD5 62DA 8FBFD5 <CJK>
+8FBFD6 62EA 8FBFD6 <CJK>
+8FBFD7 62F2 8FBFD7 <CJK>
+8FBFD8 62F4 8FBFD8 <CJK>
+8FBFD9 62FC 8FBFD9 <CJK>
+8FBFDA 62FD 8FBFDA <CJK>
+8FBFDB 6303 8FBFDB <CJK>
+8FBFDC 6304 8FBFDC <CJK>
+8FBFDD 630A 8FBFDD <CJK>
+8FBFDE 630B 8FBFDE <CJK>
+8FBFDF 630D 8FBFDF <CJK>
+8FBFE0 6310 8FBFE0 <CJK>
+8FBFE1 6313 8FBFE1 <CJK>
+8FBFE2 6316 8FBFE2 <CJK>
+8FBFE3 6318 8FBFE3 <CJK>
+8FBFE4 6329 8FBFE4 <CJK>
+8FBFE5 632A 8FBFE5 <CJK>
+8FBFE6 632D 8FBFE6 <CJK>
+8FBFE7 6335 8FBFE7 <CJK>
+8FBFE8 6336 8FBFE8 <CJK>
+8FBFE9 6339 8FBFE9 <CJK>
+8FBFEA 633C 8FBFEA <CJK>
+8FBFEB 6341 8FBFEB <CJK>
+8FBFEC 6342 8FBFEC <CJK>
+8FBFED 6343 8FBFED <CJK>
+8FBFEE 6344 8FBFEE <CJK>
+8FBFEF 6346 8FBFEF <CJK>
+8FBFF0 634A 8FBFF0 <CJK>
+8FBFF1 634B 8FBFF1 <CJK>
+8FBFF2 634E 8FBFF2 <CJK>
+8FBFF3 6352 8FBFF3 <CJK>
+8FBFF4 6353 8FBFF4 <CJK>
+8FBFF5 6354 8FBFF5 <CJK>
+8FBFF6 6358 8FBFF6 <CJK>
+8FBFF7 635B 8FBFF7 <CJK>
+8FBFF8 6365 8FBFF8 <CJK>
+8FBFF9 6366 8FBFF9 <CJK>
+8FBFFA 636C 8FBFFA <CJK>
+8FBFFB 636D 8FBFFB <CJK>
+8FBFFC 6371 8FBFFC <CJK>
+8FBFFD 6374 8FBFFD <CJK>
+8FBFFE 6375 8FBFFE <CJK>
+8FC0A1 6378 8FC0A1 <CJK>
+8FC0A2 637C 8FC0A2 <CJK>
+8FC0A3 637D 8FC0A3 <CJK>
+8FC0A4 637F 8FC0A4 <CJK>
+8FC0A5 6382 8FC0A5 <CJK>
+8FC0A6 6384 8FC0A6 <CJK>
+8FC0A7 6387 8FC0A7 <CJK>
+8FC0A8 638A 8FC0A8 <CJK>
+8FC0A9 6390 8FC0A9 <CJK>
+8FC0AA 6394 8FC0AA <CJK>
+8FC0AB 6395 8FC0AB <CJK>
+8FC0AC 6399 8FC0AC <CJK>
+8FC0AD 639A 8FC0AD <CJK>
+8FC0AE 639E 8FC0AE <CJK>
+8FC0AF 63A4 8FC0AF <CJK>
+8FC0B0 63A6 8FC0B0 <CJK>
+8FC0B1 63AD 8FC0B1 <CJK>
+8FC0B2 63AE 8FC0B2 <CJK>
+8FC0B3 63AF 8FC0B3 <CJK>
+8FC0B4 63BD 8FC0B4 <CJK>
+8FC0B5 63C1 8FC0B5 <CJK>
+8FC0B6 63C5 8FC0B6 <CJK>
+8FC0B7 63C8 8FC0B7 <CJK>
+8FC0B8 63CE 8FC0B8 <CJK>
+8FC0B9 63D1 8FC0B9 <CJK>
+8FC0BA 63D3 8FC0BA <CJK>
+8FC0BB 63D4 8FC0BB <CJK>
+8FC0BC 63D5 8FC0BC <CJK>
+8FC0BD 63DC 8FC0BD <CJK>
+8FC0BE 63E0 8FC0BE <CJK>
+8FC0BF 63E5 8FC0BF <CJK>
+8FC0C0 63EA 8FC0C0 <CJK>
+8FC0C1 63EC 8FC0C1 <CJK>
+8FC0C2 63F2 8FC0C2 <CJK>
+8FC0C3 63F3 8FC0C3 <CJK>
+8FC0C4 63F5 8FC0C4 <CJK>
+8FC0C5 63F8 8FC0C5 <CJK>
+8FC0C6 63F9 8FC0C6 <CJK>
+8FC0C7 6409 8FC0C7 <CJK>
+8FC0C8 640A 8FC0C8 <CJK>
+8FC0C9 6410 8FC0C9 <CJK>
+8FC0CA 6412 8FC0CA <CJK>
+8FC0CB 6414 8FC0CB <CJK>
+8FC0CC 6418 8FC0CC <CJK>
+8FC0CD 641E 8FC0CD <CJK>
+8FC0CE 6420 8FC0CE <CJK>
+8FC0CF 6422 8FC0CF <CJK>
+8FC0D0 6424 8FC0D0 <CJK>
+8FC0D1 6425 8FC0D1 <CJK>
+8FC0D2 6429 8FC0D2 <CJK>
+8FC0D3 642A 8FC0D3 <CJK>
+8FC0D4 642F 8FC0D4 <CJK>
+8FC0D5 6430 8FC0D5 <CJK>
+8FC0D6 6435 8FC0D6 <CJK>
+8FC0D7 643D 8FC0D7 <CJK>
+8FC0D8 643F 8FC0D8 <CJK>
+8FC0D9 644B 8FC0D9 <CJK>
+8FC0DA 644F 8FC0DA <CJK>
+8FC0DB 6451 8FC0DB <CJK>
+8FC0DC 6452 8FC0DC <CJK>
+8FC0DD 6453 8FC0DD <CJK>
+8FC0DE 6454 8FC0DE <CJK>
+8FC0DF 645A 8FC0DF <CJK>
+8FC0E0 645B 8FC0E0 <CJK>
+8FC0E1 645C 8FC0E1 <CJK>
+8FC0E2 645D 8FC0E2 <CJK>
+8FC0E3 645F 8FC0E3 <CJK>
+8FC0E4 6460 8FC0E4 <CJK>
+8FC0E5 6461 8FC0E5 <CJK>
+8FC0E6 6463 8FC0E6 <CJK>
+8FC0E7 646D 8FC0E7 <CJK>
+8FC0E8 6473 8FC0E8 <CJK>
+8FC0E9 6474 8FC0E9 <CJK>
+8FC0EA 647B 8FC0EA <CJK>
+8FC0EB 647D 8FC0EB <CJK>
+8FC0EC 6485 8FC0EC <CJK>
+8FC0ED 6487 8FC0ED <CJK>
+8FC0EE 648F 8FC0EE <CJK>
+8FC0EF 6490 8FC0EF <CJK>
+8FC0F0 6491 8FC0F0 <CJK>
+8FC0F1 6498 8FC0F1 <CJK>
+8FC0F2 6499 8FC0F2 <CJK>
+8FC0F3 649B 8FC0F3 <CJK>
+8FC0F4 649D 8FC0F4 <CJK>
+8FC0F5 649F 8FC0F5 <CJK>
+8FC0F6 64A1 8FC0F6 <CJK>
+8FC0F7 64A3 8FC0F7 <CJK>
+8FC0F8 64A6 8FC0F8 <CJK>
+8FC0F9 64A8 8FC0F9 <CJK>
+8FC0FA 64AC 8FC0FA <CJK>
+8FC0FB 64B3 8FC0FB <CJK>
+8FC0FC 64BD 8FC0FC <CJK>
+8FC0FD 64BE 8FC0FD <CJK>
+8FC0FE 64BF 8FC0FE <CJK>
+8FC1A1 64C4 8FC1A1 <CJK>
+8FC1A2 64C9 8FC1A2 <CJK>
+8FC1A3 64CA 8FC1A3 <CJK>
+8FC1A4 64CB 8FC1A4 <CJK>
+8FC1A5 64CC 8FC1A5 <CJK>
+8FC1A6 64CE 8FC1A6 <CJK>
+8FC1A7 64D0 8FC1A7 <CJK>
+8FC1A8 64D1 8FC1A8 <CJK>
+8FC1A9 64D5 8FC1A9 <CJK>
+8FC1AA 64D7 8FC1AA <CJK>
+8FC1AB 64E4 8FC1AB <CJK>
+8FC1AC 64E5 8FC1AC <CJK>
+8FC1AD 64E9 8FC1AD <CJK>
+8FC1AE 64EA 8FC1AE <CJK>
+8FC1AF 64ED 8FC1AF <CJK>
+8FC1B0 64F0 8FC1B0 <CJK>
+8FC1B1 64F5 8FC1B1 <CJK>
+8FC1B2 64F7 8FC1B2 <CJK>
+8FC1B3 64FB 8FC1B3 <CJK>
+8FC1B4 64FF 8FC1B4 <CJK>
+8FC1B5 6501 8FC1B5 <CJK>
+8FC1B6 6504 8FC1B6 <CJK>
+8FC1B7 6508 8FC1B7 <CJK>
+8FC1B8 6509 8FC1B8 <CJK>
+8FC1B9 650A 8FC1B9 <CJK>
+8FC1BA 650F 8FC1BA <CJK>
+8FC1BB 6513 8FC1BB <CJK>
+8FC1BC 6514 8FC1BC <CJK>
+8FC1BD 6516 8FC1BD <CJK>
+8FC1BE 6519 8FC1BE <CJK>
+8FC1BF 651B 8FC1BF <CJK>
+8FC1C0 651E 8FC1C0 <CJK>
+8FC1C1 651F 8FC1C1 <CJK>
+8FC1C2 6522 8FC1C2 <CJK>
+8FC1C3 6526 8FC1C3 <CJK>
+8FC1C4 6529 8FC1C4 <CJK>
+8FC1C5 652E 8FC1C5 <CJK>
+8FC1C6 6531 8FC1C6 <CJK>
+8FC1C7 653A 8FC1C7 <CJK>
+8FC1C8 653C 8FC1C8 <CJK>
+8FC1C9 653D 8FC1C9 <CJK>
+8FC1CA 6543 8FC1CA <CJK>
+8FC1CB 6547 8FC1CB <CJK>
+8FC1CC 6549 8FC1CC <CJK>
+8FC1CD 6550 8FC1CD <CJK>
+8FC1CE 6552 8FC1CE <CJK>
+8FC1CF 6554 8FC1CF <CJK>
+8FC1D0 655F 8FC1D0 <CJK>
+8FC1D1 6560 8FC1D1 <CJK>
+8FC1D2 6567 8FC1D2 <CJK>
+8FC1D3 656B 8FC1D3 <CJK>
+8FC1D4 657A 8FC1D4 <CJK>
+8FC1D5 657D 8FC1D5 <CJK>
+8FC1D6 6581 8FC1D6 <CJK>
+8FC1D7 6585 8FC1D7 <CJK>
+8FC1D8 658A 8FC1D8 <CJK>
+8FC1D9 6592 8FC1D9 <CJK>
+8FC1DA 6595 8FC1DA <CJK>
+8FC1DB 6598 8FC1DB <CJK>
+8FC1DC 659D 8FC1DC <CJK>
+8FC1DD 65A0 8FC1DD <CJK>
+8FC1DE 65A3 8FC1DE <CJK>
+8FC1DF 65A6 8FC1DF <CJK>
+8FC1E0 65AE 8FC1E0 <CJK>
+8FC1E1 65B2 8FC1E1 <CJK>
+8FC1E2 65B3 8FC1E2 <CJK>
+8FC1E3 65B4 8FC1E3 <CJK>
+8FC1E4 65BF 8FC1E4 <CJK>
+8FC1E5 65C2 8FC1E5 <CJK>
+8FC1E6 65C8 8FC1E6 <CJK>
+8FC1E7 65C9 8FC1E7 <CJK>
+8FC1E8 65CE 8FC1E8 <CJK>
+8FC1E9 65D0 8FC1E9 <CJK>
+8FC1EA 65D4 8FC1EA <CJK>
+8FC1EB 65D6 8FC1EB <CJK>
+8FC1EC 65D8 8FC1EC <CJK>
+8FC1ED 65DF 8FC1ED <CJK>
+8FC1EE 65F0 8FC1EE <CJK>
+8FC1EF 65F2 8FC1EF <CJK>
+8FC1F0 65F4 8FC1F0 <CJK>
+8FC1F1 65F5 8FC1F1 <CJK>
+8FC1F2 65F9 8FC1F2 <CJK>
+8FC1F3 65FE 8FC1F3 <CJK>
+8FC1F4 65FF 8FC1F4 <CJK>
+8FC1F5 6600 8FC1F5 <CJK>
+8FC1F6 6604 8FC1F6 <CJK>
+8FC1F7 6608 8FC1F7 <CJK>
+8FC1F8 6609 8FC1F8 <CJK>
+8FC1F9 660D 8FC1F9 <CJK>
+8FC1FA 6611 8FC1FA <CJK>
+8FC1FB 6612 8FC1FB <CJK>
+8FC1FC 6615 8FC1FC <CJK>
+8FC1FD 6616 8FC1FD <CJK>
+8FC1FE 661D 8FC1FE <CJK>
+8FC2A1 661E 8FC2A1 <CJK>
+8FC2A2 6621 8FC2A2 <CJK>
+8FC2A3 6622 8FC2A3 <CJK>
+8FC2A4 6623 8FC2A4 <CJK>
+8FC2A5 6624 8FC2A5 <CJK>
+8FC2A6 6626 8FC2A6 <CJK>
+8FC2A7 6629 8FC2A7 <CJK>
+8FC2A8 662A 8FC2A8 <CJK>
+8FC2A9 662B 8FC2A9 <CJK>
+8FC2AA 662C 8FC2AA <CJK>
+8FC2AB 662E 8FC2AB <CJK>
+8FC2AC 6630 8FC2AC <CJK>
+8FC2AD 6631 8FC2AD <CJK>
+8FC2AE 6633 8FC2AE <CJK>
+8FC2AF 6639 8FC2AF <CJK>
+8FC2B0 6637 8FC2B0 <CJK>
+8FC2B1 6640 8FC2B1 <CJK>
+8FC2B2 6645 8FC2B2 <CJK>
+8FC2B3 6646 8FC2B3 <CJK>
+8FC2B4 664A 8FC2B4 <CJK>
+8FC2B5 664C 8FC2B5 <CJK>
+8FC2B6 6651 8FC2B6 <CJK>
+8FC2B7 664E 8FC2B7 <CJK>
+8FC2B8 6657 8FC2B8 <CJK>
+8FC2B9 6658 8FC2B9 <CJK>
+8FC2BA 6659 8FC2BA <CJK>
+8FC2BB 665B 8FC2BB <CJK>
+8FC2BC 665C 8FC2BC <CJK>
+8FC2BD 6660 8FC2BD <CJK>
+8FC2BE 6661 8FC2BE <CJK>
+8FC2BF 66FB 8FC2BF <CJK>
+8FC2C0 666A 8FC2C0 <CJK>
+8FC2C1 666B 8FC2C1 <CJK>
+8FC2C2 666C 8FC2C2 <CJK>
+8FC2C3 667E 8FC2C3 <CJK>
+8FC2C4 6673 8FC2C4 <CJK>
+8FC2C5 6675 8FC2C5 <CJK>
+8FC2C6 667F 8FC2C6 <CJK>
+8FC2C7 6677 8FC2C7 <CJK>
+8FC2C8 6678 8FC2C8 <CJK>
+8FC2C9 6679 8FC2C9 <CJK>
+8FC2CA 667B 8FC2CA <CJK>
+8FC2CB 6680 8FC2CB <CJK>
+8FC2CC 667C 8FC2CC <CJK>
+8FC2CD 668B 8FC2CD <CJK>
+8FC2CE 668C 8FC2CE <CJK>
+8FC2CF 668D 8FC2CF <CJK>
+8FC2D0 6690 8FC2D0 <CJK>
+8FC2D1 6692 8FC2D1 <CJK>
+8FC2D2 6699 8FC2D2 <CJK>
+8FC2D3 669A 8FC2D3 <CJK>
+8FC2D4 669B 8FC2D4 <CJK>
+8FC2D5 669C 8FC2D5 <CJK>
+8FC2D6 669F 8FC2D6 <CJK>
+8FC2D7 66A0 8FC2D7 <CJK>
+8FC2D8 66A4 8FC2D8 <CJK>
+8FC2D9 66AD 8FC2D9 <CJK>
+8FC2DA 66B1 8FC2DA <CJK>
+8FC2DB 66B2 8FC2DB <CJK>
+8FC2DC 66B5 8FC2DC <CJK>
+8FC2DD 66BB 8FC2DD <CJK>
+8FC2DE 66BF 8FC2DE <CJK>
+8FC2DF 66C0 8FC2DF <CJK>
+8FC2E0 66C2 8FC2E0 <CJK>
+8FC2E1 66C3 8FC2E1 <CJK>
+8FC2E2 66C8 8FC2E2 <CJK>
+8FC2E3 66CC 8FC2E3 <CJK>
+8FC2E4 66CE 8FC2E4 <CJK>
+8FC2E5 66CF 8FC2E5 <CJK>
+8FC2E6 66D4 8FC2E6 <CJK>
+8FC2E7 66DB 8FC2E7 <CJK>
+8FC2E8 66DF 8FC2E8 <CJK>
+8FC2E9 66E8 8FC2E9 <CJK>
+8FC2EA 66EB 8FC2EA <CJK>
+8FC2EB 66EC 8FC2EB <CJK>
+8FC2EC 66EE 8FC2EC <CJK>
+8FC2ED 66FA 8FC2ED <CJK>
+8FC2EE 6705 8FC2EE <CJK>
+8FC2EF 6707 8FC2EF <CJK>
+8FC2F0 670E 8FC2F0 <CJK>
+8FC2F1 6713 8FC2F1 <CJK>
+8FC2F2 6719 8FC2F2 <CJK>
+8FC2F3 671C 8FC2F3 <CJK>
+8FC2F4 6720 8FC2F4 <CJK>
+8FC2F5 6722 8FC2F5 <CJK>
+8FC2F6 6733 8FC2F6 <CJK>
+8FC2F7 673E 8FC2F7 <CJK>
+8FC2F8 6745 8FC2F8 <CJK>
+8FC2F9 6747 8FC2F9 <CJK>
+8FC2FA 6748 8FC2FA <CJK>
+8FC2FB 674C 8FC2FB <CJK>
+8FC2FC 6754 8FC2FC <CJK>
+8FC2FD 6755 8FC2FD <CJK>
+8FC2FE 675D 8FC2FE <CJK>
+8FC3A1 6766 8FC3A1 <CJK>
+8FC3A2 676C 8FC3A2 <CJK>
+8FC3A3 676E 8FC3A3 <CJK>
+8FC3A4 6774 8FC3A4 <CJK>
+8FC3A5 6776 8FC3A5 <CJK>
+8FC3A6 677B 8FC3A6 <CJK>
+8FC3A7 6781 8FC3A7 <CJK>
+8FC3A8 6784 8FC3A8 <CJK>
+8FC3A9 678E 8FC3A9 <CJK>
+8FC3AA 678F 8FC3AA <CJK>
+8FC3AB 6791 8FC3AB <CJK>
+8FC3AC 6793 8FC3AC <CJK>
+8FC3AD 6796 8FC3AD <CJK>
+8FC3AE 6798 8FC3AE <CJK>
+8FC3AF 6799 8FC3AF <CJK>
+8FC3B0 679B 8FC3B0 <CJK>
+8FC3B1 67B0 8FC3B1 <CJK>
+8FC3B2 67B1 8FC3B2 <CJK>
+8FC3B3 67B2 8FC3B3 <CJK>
+8FC3B4 67B5 8FC3B4 <CJK>
+8FC3B5 67BB 8FC3B5 <CJK>
+8FC3B6 67BC 8FC3B6 <CJK>
+8FC3B7 67BD 8FC3B7 <CJK>
+8FC3B8 67F9 8FC3B8 <CJK>
+8FC3B9 67C0 8FC3B9 <CJK>
+8FC3BA 67C2 8FC3BA <CJK>
+8FC3BB 67C3 8FC3BB <CJK>
+8FC3BC 67C5 8FC3BC <CJK>
+8FC3BD 67C8 8FC3BD <CJK>
+8FC3BE 67C9 8FC3BE <CJK>
+8FC3BF 67D2 8FC3BF <CJK>
+8FC3C0 67D7 8FC3C0 <CJK>
+8FC3C1 67D9 8FC3C1 <CJK>
+8FC3C2 67DC 8FC3C2 <CJK>
+8FC3C3 67E1 8FC3C3 <CJK>
+8FC3C4 67E6 8FC3C4 <CJK>
+8FC3C5 67F0 8FC3C5 <CJK>
+8FC3C6 67F2 8FC3C6 <CJK>
+8FC3C7 67F6 8FC3C7 <CJK>
+8FC3C8 67F7 8FC3C8 <CJK>
+8FC3C9 6852 8FC3C9 <CJK>
+8FC3CA 6814 8FC3CA <CJK>
+8FC3CB 6819 8FC3CB <CJK>
+8FC3CC 681D 8FC3CC <CJK>
+8FC3CD 681F 8FC3CD <CJK>
+8FC3CE 6828 8FC3CE <CJK>
+8FC3CF 6827 8FC3CF <CJK>
+8FC3D0 682C 8FC3D0 <CJK>
+8FC3D1 682D 8FC3D1 <CJK>
+8FC3D2 682F 8FC3D2 <CJK>
+8FC3D3 6830 8FC3D3 <CJK>
+8FC3D4 6831 8FC3D4 <CJK>
+8FC3D5 6833 8FC3D5 <CJK>
+8FC3D6 683B 8FC3D6 <CJK>
+8FC3D7 683F 8FC3D7 <CJK>
+8FC3D8 6844 8FC3D8 <CJK>
+8FC3D9 6845 8FC3D9 <CJK>
+8FC3DA 684A 8FC3DA <CJK>
+8FC3DB 684C 8FC3DB <CJK>
+8FC3DC 6855 8FC3DC <CJK>
+8FC3DD 6857 8FC3DD <CJK>
+8FC3DE 6858 8FC3DE <CJK>
+8FC3DF 685B 8FC3DF <CJK>
+8FC3E0 686B 8FC3E0 <CJK>
+8FC3E1 686E 8FC3E1 <CJK>
+8FC3E2 686F 8FC3E2 <CJK>
+8FC3E3 6870 8FC3E3 <CJK>
+8FC3E4 6871 8FC3E4 <CJK>
+8FC3E5 6872 8FC3E5 <CJK>
+8FC3E6 6875 8FC3E6 <CJK>
+8FC3E7 6879 8FC3E7 <CJK>
+8FC3E8 687A 8FC3E8 <CJK>
+8FC3E9 687B 8FC3E9 <CJK>
+8FC3EA 687C 8FC3EA <CJK>
+8FC3EB 6882 8FC3EB <CJK>
+8FC3EC 6884 8FC3EC <CJK>
+8FC3ED 6886 8FC3ED <CJK>
+8FC3EE 6888 8FC3EE <CJK>
+8FC3EF 6896 8FC3EF <CJK>
+8FC3F0 6898 8FC3F0 <CJK>
+8FC3F1 689A 8FC3F1 <CJK>
+8FC3F2 689C 8FC3F2 <CJK>
+8FC3F3 68A1 8FC3F3 <CJK>
+8FC3F4 68A3 8FC3F4 <CJK>
+8FC3F5 68A5 8FC3F5 <CJK>
+8FC3F6 68A9 8FC3F6 <CJK>
+8FC3F7 68AA 8FC3F7 <CJK>
+8FC3F8 68AE 8FC3F8 <CJK>
+8FC3F9 68B2 8FC3F9 <CJK>
+8FC3FA 68BB 8FC3FA <CJK>
+8FC3FB 68C5 8FC3FB <CJK>
+8FC3FC 68C8 8FC3FC <CJK>
+8FC3FD 68CC 8FC3FD <CJK>
+8FC3FE 68CF 8FC3FE <CJK>
+8FC4A1 68D0 8FC4A1 <CJK>
+8FC4A2 68D1 8FC4A2 <CJK>
+8FC4A3 68D3 8FC4A3 <CJK>
+8FC4A4 68D6 8FC4A4 <CJK>
+8FC4A5 68D9 8FC4A5 <CJK>
+8FC4A6 68DC 8FC4A6 <CJK>
+8FC4A7 68DD 8FC4A7 <CJK>
+8FC4A8 68E5 8FC4A8 <CJK>
+8FC4A9 68E8 8FC4A9 <CJK>
+8FC4AA 68EA 8FC4AA <CJK>
+8FC4AB 68EB 8FC4AB <CJK>
+8FC4AC 68EC 8FC4AC <CJK>
+8FC4AD 68ED 8FC4AD <CJK>
+8FC4AE 68F0 8FC4AE <CJK>
+8FC4AF 68F1 8FC4AF <CJK>
+8FC4B0 68F5 8FC4B0 <CJK>
+8FC4B1 68F6 8FC4B1 <CJK>
+8FC4B2 68FB 8FC4B2 <CJK>
+8FC4B3 68FC 8FC4B3 <CJK>
+8FC4B4 68FD 8FC4B4 <CJK>
+8FC4B5 6906 8FC4B5 <CJK>
+8FC4B6 6909 8FC4B6 <CJK>
+8FC4B7 690A 8FC4B7 <CJK>
+8FC4B8 6910 8FC4B8 <CJK>
+8FC4B9 6911 8FC4B9 <CJK>
+8FC4BA 6913 8FC4BA <CJK>
+8FC4BB 6916 8FC4BB <CJK>
+8FC4BC 6917 8FC4BC <CJK>
+8FC4BD 6931 8FC4BD <CJK>
+8FC4BE 6933 8FC4BE <CJK>
+8FC4BF 6935 8FC4BF <CJK>
+8FC4C0 6938 8FC4C0 <CJK>
+8FC4C1 693B 8FC4C1 <CJK>
+8FC4C2 6942 8FC4C2 <CJK>
+8FC4C3 6945 8FC4C3 <CJK>
+8FC4C4 6949 8FC4C4 <CJK>
+8FC4C5 694E 8FC4C5 <CJK>
+8FC4C6 6957 8FC4C6 <CJK>
+8FC4C7 695B 8FC4C7 <CJK>
+8FC4C8 6963 8FC4C8 <CJK>
+8FC4C9 6964 8FC4C9 <CJK>
+8FC4CA 6965 8FC4CA <CJK>
+8FC4CB 6966 8FC4CB <CJK>
+8FC4CC 6968 8FC4CC <CJK>
+8FC4CD 6969 8FC4CD <CJK>
+8FC4CE 696C 8FC4CE <CJK>
+8FC4CF 6970 8FC4CF <CJK>
+8FC4D0 6971 8FC4D0 <CJK>
+8FC4D1 6972 8FC4D1 <CJK>
+8FC4D2 697A 8FC4D2 <CJK>
+8FC4D3 697B 8FC4D3 <CJK>
+8FC4D4 697F 8FC4D4 <CJK>
+8FC4D5 6980 8FC4D5 <CJK>
+8FC4D6 698D 8FC4D6 <CJK>
+8FC4D7 6992 8FC4D7 <CJK>
+8FC4D8 6996 8FC4D8 <CJK>
+8FC4D9 6998 8FC4D9 <CJK>
+8FC4DA 69A1 8FC4DA <CJK>
+8FC4DB 69A5 8FC4DB <CJK>
+8FC4DC 69A6 8FC4DC <CJK>
+8FC4DD 69A8 8FC4DD <CJK>
+8FC4DE 69AB 8FC4DE <CJK>
+8FC4DF 69AD 8FC4DF <CJK>
+8FC4E0 69AF 8FC4E0 <CJK>
+8FC4E1 69B7 8FC4E1 <CJK>
+8FC4E2 69B8 8FC4E2 <CJK>
+8FC4E3 69BA 8FC4E3 <CJK>
+8FC4E4 69BC 8FC4E4 <CJK>
+8FC4E5 69C5 8FC4E5 <CJK>
+8FC4E6 69C8 8FC4E6 <CJK>
+8FC4E7 69D1 8FC4E7 <CJK>
+8FC4E8 69D6 8FC4E8 <CJK>
+8FC4E9 69D7 8FC4E9 <CJK>
+8FC4EA 69E2 8FC4EA <CJK>
+8FC4EB 69E5 8FC4EB <CJK>
+8FC4EC 69EE 8FC4EC <CJK>
+8FC4ED 69EF 8FC4ED <CJK>
+8FC4EE 69F1 8FC4EE <CJK>
+8FC4EF 69F3 8FC4EF <CJK>
+8FC4F0 69F5 8FC4F0 <CJK>
+8FC4F1 69FE 8FC4F1 <CJK>
+8FC4F2 6A00 8FC4F2 <CJK>
+8FC4F3 6A01 8FC4F3 <CJK>
+8FC4F4 6A03 8FC4F4 <CJK>
+8FC4F5 6A0F 8FC4F5 <CJK>
+8FC4F6 6A11 8FC4F6 <CJK>
+8FC4F7 6A15 8FC4F7 <CJK>
+8FC4F8 6A1A 8FC4F8 <CJK>
+8FC4F9 6A1D 8FC4F9 <CJK>
+8FC4FA 6A20 8FC4FA <CJK>
+8FC4FB 6A24 8FC4FB <CJK>
+8FC4FC 6A28 8FC4FC <CJK>
+8FC4FD 6A30 8FC4FD <CJK>
+8FC4FE 6A32 8FC4FE <CJK>
+8FC5A1 6A34 8FC5A1 <CJK>
+8FC5A2 6A37 8FC5A2 <CJK>
+8FC5A3 6A3B 8FC5A3 <CJK>
+8FC5A4 6A3E 8FC5A4 <CJK>
+8FC5A5 6A3F 8FC5A5 <CJK>
+8FC5A6 6A45 8FC5A6 <CJK>
+8FC5A7 6A46 8FC5A7 <CJK>
+8FC5A8 6A49 8FC5A8 <CJK>
+8FC5A9 6A4A 8FC5A9 <CJK>
+8FC5AA 6A4E 8FC5AA <CJK>
+8FC5AB 6A50 8FC5AB <CJK>
+8FC5AC 6A51 8FC5AC <CJK>
+8FC5AD 6A52 8FC5AD <CJK>
+8FC5AE 6A55 8FC5AE <CJK>
+8FC5AF 6A56 8FC5AF <CJK>
+8FC5B0 6A5B 8FC5B0 <CJK>
+8FC5B1 6A64 8FC5B1 <CJK>
+8FC5B2 6A67 8FC5B2 <CJK>
+8FC5B3 6A6A 8FC5B3 <CJK>
+8FC5B4 6A71 8FC5B4 <CJK>
+8FC5B5 6A73 8FC5B5 <CJK>
+8FC5B6 6A7E 8FC5B6 <CJK>
+8FC5B7 6A81 8FC5B7 <CJK>
+8FC5B8 6A83 8FC5B8 <CJK>
+8FC5B9 6A86 8FC5B9 <CJK>
+8FC5BA 6A87 8FC5BA <CJK>
+8FC5BB 6A89 8FC5BB <CJK>
+8FC5BC 6A8B 8FC5BC <CJK>
+8FC5BD 6A91 8FC5BD <CJK>
+8FC5BE 6A9B 8FC5BE <CJK>
+8FC5BF 6A9D 8FC5BF <CJK>
+8FC5C0 6A9E 8FC5C0 <CJK>
+8FC5C1 6A9F 8FC5C1 <CJK>
+8FC5C2 6AA5 8FC5C2 <CJK>
+8FC5C3 6AAB 8FC5C3 <CJK>
+8FC5C4 6AAF 8FC5C4 <CJK>
+8FC5C5 6AB0 8FC5C5 <CJK>
+8FC5C6 6AB1 8FC5C6 <CJK>
+8FC5C7 6AB4 8FC5C7 <CJK>
+8FC5C8 6ABD 8FC5C8 <CJK>
+8FC5C9 6ABE 8FC5C9 <CJK>
+8FC5CA 6ABF 8FC5CA <CJK>
+8FC5CB 6AC6 8FC5CB <CJK>
+8FC5CC 6AC9 8FC5CC <CJK>
+8FC5CD 6AC8 8FC5CD <CJK>
+8FC5CE 6ACC 8FC5CE <CJK>
+8FC5CF 6AD0 8FC5CF <CJK>
+8FC5D0 6AD4 8FC5D0 <CJK>
+8FC5D1 6AD5 8FC5D1 <CJK>
+8FC5D2 6AD6 8FC5D2 <CJK>
+8FC5D3 6ADC 8FC5D3 <CJK>
+8FC5D4 6ADD 8FC5D4 <CJK>
+8FC5D5 6AE4 8FC5D5 <CJK>
+8FC5D6 6AE7 8FC5D6 <CJK>
+8FC5D7 6AEC 8FC5D7 <CJK>
+8FC5D8 6AF0 8FC5D8 <CJK>
+8FC5D9 6AF1 8FC5D9 <CJK>
+8FC5DA 6AF2 8FC5DA <CJK>
+8FC5DB 6AFC 8FC5DB <CJK>
+8FC5DC 6AFD 8FC5DC <CJK>
+8FC5DD 6B02 8FC5DD <CJK>
+8FC5DE 6B03 8FC5DE <CJK>
+8FC5DF 6B06 8FC5DF <CJK>
+8FC5E0 6B07 8FC5E0 <CJK>
+8FC5E1 6B09 8FC5E1 <CJK>
+8FC5E2 6B0F 8FC5E2 <CJK>
+8FC5E3 6B10 8FC5E3 <CJK>
+8FC5E4 6B11 8FC5E4 <CJK>
+8FC5E5 6B17 8FC5E5 <CJK>
+8FC5E6 6B1B 8FC5E6 <CJK>
+8FC5E7 6B1E 8FC5E7 <CJK>
+8FC5E8 6B24 8FC5E8 <CJK>
+8FC5E9 6B28 8FC5E9 <CJK>
+8FC5EA 6B2B 8FC5EA <CJK>
+8FC5EB 6B2C 8FC5EB <CJK>
+8FC5EC 6B2F 8FC5EC <CJK>
+8FC5ED 6B35 8FC5ED <CJK>
+8FC5EE 6B36 8FC5EE <CJK>
+8FC5EF 6B3B 8FC5EF <CJK>
+8FC5F0 6B3F 8FC5F0 <CJK>
+8FC5F1 6B46 8FC5F1 <CJK>
+8FC5F2 6B4A 8FC5F2 <CJK>
+8FC5F3 6B4D 8FC5F3 <CJK>
+8FC5F4 6B52 8FC5F4 <CJK>
+8FC5F5 6B56 8FC5F5 <CJK>
+8FC5F6 6B58 8FC5F6 <CJK>
+8FC5F7 6B5D 8FC5F7 <CJK>
+8FC5F8 6B60 8FC5F8 <CJK>
+8FC5F9 6B67 8FC5F9 <CJK>
+8FC5FA 6B6B 8FC5FA <CJK>
+8FC5FB 6B6E 8FC5FB <CJK>
+8FC5FC 6B70 8FC5FC <CJK>
+8FC5FD 6B75 8FC5FD <CJK>
+8FC5FE 6B7D 8FC5FE <CJK>
+8FC6A1 6B7E 8FC6A1 <CJK>
+8FC6A2 6B82 8FC6A2 <CJK>
+8FC6A3 6B85 8FC6A3 <CJK>
+8FC6A4 6B97 8FC6A4 <CJK>
+8FC6A5 6B9B 8FC6A5 <CJK>
+8FC6A6 6B9F 8FC6A6 <CJK>
+8FC6A7 6BA0 8FC6A7 <CJK>
+8FC6A8 6BA2 8FC6A8 <CJK>
+8FC6A9 6BA3 8FC6A9 <CJK>
+8FC6AA 6BA8 8FC6AA <CJK>
+8FC6AB 6BA9 8FC6AB <CJK>
+8FC6AC 6BAC 8FC6AC <CJK>
+8FC6AD 6BAD 8FC6AD <CJK>
+8FC6AE 6BAE 8FC6AE <CJK>
+8FC6AF 6BB0 8FC6AF <CJK>
+8FC6B0 6BB8 8FC6B0 <CJK>
+8FC6B1 6BB9 8FC6B1 <CJK>
+8FC6B2 6BBD 8FC6B2 <CJK>
+8FC6B3 6BBE 8FC6B3 <CJK>
+8FC6B4 6BC3 8FC6B4 <CJK>
+8FC6B5 6BC4 8FC6B5 <CJK>
+8FC6B6 6BC9 8FC6B6 <CJK>
+8FC6B7 6BCC 8FC6B7 <CJK>
+8FC6B8 6BD6 8FC6B8 <CJK>
+8FC6B9 6BDA 8FC6B9 <CJK>
+8FC6BA 6BE1 8FC6BA <CJK>
+8FC6BB 6BE3 8FC6BB <CJK>
+8FC6BC 6BE6 8FC6BC <CJK>
+8FC6BD 6BE7 8FC6BD <CJK>
+8FC6BE 6BEE 8FC6BE <CJK>
+8FC6BF 6BF1 8FC6BF <CJK>
+8FC6C0 6BF7 8FC6C0 <CJK>
+8FC6C1 6BF9 8FC6C1 <CJK>
+8FC6C2 6BFF 8FC6C2 <CJK>
+8FC6C3 6C02 8FC6C3 <CJK>
+8FC6C4 6C04 8FC6C4 <CJK>
+8FC6C5 6C05 8FC6C5 <CJK>
+8FC6C6 6C09 8FC6C6 <CJK>
+8FC6C7 6C0D 8FC6C7 <CJK>
+8FC6C8 6C0E 8FC6C8 <CJK>
+8FC6C9 6C10 8FC6C9 <CJK>
+8FC6CA 6C12 8FC6CA <CJK>
+8FC6CB 6C19 8FC6CB <CJK>
+8FC6CC 6C1F 8FC6CC <CJK>
+8FC6CD 6C26 8FC6CD <CJK>
+8FC6CE 6C27 8FC6CE <CJK>
+8FC6CF 6C28 8FC6CF <CJK>
+8FC6D0 6C2C 8FC6D0 <CJK>
+8FC6D1 6C2E 8FC6D1 <CJK>
+8FC6D2 6C33 8FC6D2 <CJK>
+8FC6D3 6C35 8FC6D3 <CJK>
+8FC6D4 6C36 8FC6D4 <CJK>
+8FC6D5 6C3A 8FC6D5 <CJK>
+8FC6D6 6C3B 8FC6D6 <CJK>
+8FC6D7 6C3F 8FC6D7 <CJK>
+8FC6D8 6C4A 8FC6D8 <CJK>
+8FC6D9 6C4B 8FC6D9 <CJK>
+8FC6DA 6C4D 8FC6DA <CJK>
+8FC6DB 6C4F 8FC6DB <CJK>
+8FC6DC 6C52 8FC6DC <CJK>
+8FC6DD 6C54 8FC6DD <CJK>
+8FC6DE 6C59 8FC6DE <CJK>
+8FC6DF 6C5B 8FC6DF <CJK>
+8FC6E0 6C5C 8FC6E0 <CJK>
+8FC6E1 6C6B 8FC6E1 <CJK>
+8FC6E2 6C6D 8FC6E2 <CJK>
+8FC6E3 6C6F 8FC6E3 <CJK>
+8FC6E4 6C74 8FC6E4 <CJK>
+8FC6E5 6C76 8FC6E5 <CJK>
+8FC6E6 6C78 8FC6E6 <CJK>
+8FC6E7 6C79 8FC6E7 <CJK>
+8FC6E8 6C7B 8FC6E8 <CJK>
+8FC6E9 6C85 8FC6E9 <CJK>
+8FC6EA 6C86 8FC6EA <CJK>
+8FC6EB 6C87 8FC6EB <CJK>
+8FC6EC 6C89 8FC6EC <CJK>
+8FC6ED 6C94 8FC6ED <CJK>
+8FC6EE 6C95 8FC6EE <CJK>
+8FC6EF 6C97 8FC6EF <CJK>
+8FC6F0 6C98 8FC6F0 <CJK>
+8FC6F1 6C9C 8FC6F1 <CJK>
+8FC6F2 6C9F 8FC6F2 <CJK>
+8FC6F3 6CB0 8FC6F3 <CJK>
+8FC6F4 6CB2 8FC6F4 <CJK>
+8FC6F5 6CB4 8FC6F5 <CJK>
+8FC6F6 6CC2 8FC6F6 <CJK>
+8FC6F7 6CC6 8FC6F7 <CJK>
+8FC6F8 6CCD 8FC6F8 <CJK>
+8FC6F9 6CCF 8FC6F9 <CJK>
+8FC6FA 6CD0 8FC6FA <CJK>
+8FC6FB 6CD1 8FC6FB <CJK>
+8FC6FC 6CD2 8FC6FC <CJK>
+8FC6FD 6CD4 8FC6FD <CJK>
+8FC6FE 6CD6 8FC6FE <CJK>
+8FC7A1 6CDA 8FC7A1 <CJK>
+8FC7A2 6CDC 8FC7A2 <CJK>
+8FC7A3 6CE0 8FC7A3 <CJK>
+8FC7A4 6CE7 8FC7A4 <CJK>
+8FC7A5 6CE9 8FC7A5 <CJK>
+8FC7A6 6CEB 8FC7A6 <CJK>
+8FC7A7 6CEC 8FC7A7 <CJK>
+8FC7A8 6CEE 8FC7A8 <CJK>
+8FC7A9 6CF2 8FC7A9 <CJK>
+8FC7AA 6CF4 8FC7AA <CJK>
+8FC7AB 6D04 8FC7AB <CJK>
+8FC7AC 6D07 8FC7AC <CJK>
+8FC7AD 6D0A 8FC7AD <CJK>
+8FC7AE 6D0E 8FC7AE <CJK>
+8FC7AF 6D0F 8FC7AF <CJK>
+8FC7B0 6D11 8FC7B0 <CJK>
+8FC7B1 6D13 8FC7B1 <CJK>
+8FC7B2 6D1A 8FC7B2 <CJK>
+8FC7B3 6D26 8FC7B3 <CJK>
+8FC7B4 6D27 8FC7B4 <CJK>
+8FC7B5 6D28 8FC7B5 <CJK>
+8FC7B6 6C67 8FC7B6 <CJK>
+8FC7B7 6D2E 8FC7B7 <CJK>
+8FC7B8 6D2F 8FC7B8 <CJK>
+8FC7B9 6D31 8FC7B9 <CJK>
+8FC7BA 6D39 8FC7BA <CJK>
+8FC7BB 6D3C 8FC7BB <CJK>
+8FC7BC 6D3F 8FC7BC <CJK>
+8FC7BD 6D57 8FC7BD <CJK>
+8FC7BE 6D5E 8FC7BE <CJK>
+8FC7BF 6D5F 8FC7BF <CJK>
+8FC7C0 6D61 8FC7C0 <CJK>
+8FC7C1 6D65 8FC7C1 <CJK>
+8FC7C2 6D67 8FC7C2 <CJK>
+8FC7C3 6D6F 8FC7C3 <CJK>
+8FC7C4 6D70 8FC7C4 <CJK>
+8FC7C5 6D7C 8FC7C5 <CJK>
+8FC7C6 6D82 8FC7C6 <CJK>
+8FC7C7 6D87 8FC7C7 <CJK>
+8FC7C8 6D91 8FC7C8 <CJK>
+8FC7C9 6D92 8FC7C9 <CJK>
+8FC7CA 6D94 8FC7CA <CJK>
+8FC7CB 6D96 8FC7CB <CJK>
+8FC7CC 6D97 8FC7CC <CJK>
+8FC7CD 6D98 8FC7CD <CJK>
+8FC7CE 6DAA 8FC7CE <CJK>
+8FC7CF 6DAC 8FC7CF <CJK>
+8FC7D0 6DB4 8FC7D0 <CJK>
+8FC7D1 6DB7 8FC7D1 <CJK>
+8FC7D2 6DB9 8FC7D2 <CJK>
+8FC7D3 6DBD 8FC7D3 <CJK>
+8FC7D4 6DBF 8FC7D4 <CJK>
+8FC7D5 6DC4 8FC7D5 <CJK>
+8FC7D6 6DC8 8FC7D6 <CJK>
+8FC7D7 6DCA 8FC7D7 <CJK>
+8FC7D8 6DCE 8FC7D8 <CJK>
+8FC7D9 6DCF 8FC7D9 <CJK>
+8FC7DA 6DD6 8FC7DA <CJK>
+8FC7DB 6DDB 8FC7DB <CJK>
+8FC7DC 6DDD 8FC7DC <CJK>
+8FC7DD 6DDF 8FC7DD <CJK>
+8FC7DE 6DE0 8FC7DE <CJK>
+8FC7DF 6DE2 8FC7DF <CJK>
+8FC7E0 6DE5 8FC7E0 <CJK>
+8FC7E1 6DE9 8FC7E1 <CJK>
+8FC7E2 6DEF 8FC7E2 <CJK>
+8FC7E3 6DF0 8FC7E3 <CJK>
+8FC7E4 6DF4 8FC7E4 <CJK>
+8FC7E5 6DF6 8FC7E5 <CJK>
+8FC7E6 6DFC 8FC7E6 <CJK>
+8FC7E7 6E00 8FC7E7 <CJK>
+8FC7E8 6E04 8FC7E8 <CJK>
+8FC7E9 6E1E 8FC7E9 <CJK>
+8FC7EA 6E22 8FC7EA <CJK>
+8FC7EB 6E27 8FC7EB <CJK>
+8FC7EC 6E32 8FC7EC <CJK>
+8FC7ED 6E36 8FC7ED <CJK>
+8FC7EE 6E39 8FC7EE <CJK>
+8FC7EF 6E3B 8FC7EF <CJK>
+8FC7F0 6E3C 8FC7F0 <CJK>
+8FC7F1 6E44 8FC7F1 <CJK>
+8FC7F2 6E45 8FC7F2 <CJK>
+8FC7F3 6E48 8FC7F3 <CJK>
+8FC7F4 6E49 8FC7F4 <CJK>
+8FC7F5 6E4B 8FC7F5 <CJK>
+8FC7F6 6E4F 8FC7F6 <CJK>
+8FC7F7 6E51 8FC7F7 <CJK>
+8FC7F8 6E52 8FC7F8 <CJK>
+8FC7F9 6E53 8FC7F9 <CJK>
+8FC7FA 6E54 8FC7FA <CJK>
+8FC7FB 6E57 8FC7FB <CJK>
+8FC7FC 6E5C 8FC7FC <CJK>
+8FC7FD 6E5D 8FC7FD <CJK>
+8FC7FE 6E5E 8FC7FE <CJK>
+8FC8A1 6E62 8FC8A1 <CJK>
+8FC8A2 6E63 8FC8A2 <CJK>
+8FC8A3 6E68 8FC8A3 <CJK>
+8FC8A4 6E73 8FC8A4 <CJK>
+8FC8A5 6E7B 8FC8A5 <CJK>
+8FC8A6 6E7D 8FC8A6 <CJK>
+8FC8A7 6E8D 8FC8A7 <CJK>
+8FC8A8 6E93 8FC8A8 <CJK>
+8FC8A9 6E99 8FC8A9 <CJK>
+8FC8AA 6EA0 8FC8AA <CJK>
+8FC8AB 6EA7 8FC8AB <CJK>
+8FC8AC 6EAD 8FC8AC <CJK>
+8FC8AD 6EAE 8FC8AD <CJK>
+8FC8AE 6EB1 8FC8AE <CJK>
+8FC8AF 6EB3 8FC8AF <CJK>
+8FC8B0 6EBB 8FC8B0 <CJK>
+8FC8B1 6EBF 8FC8B1 <CJK>
+8FC8B2 6EC0 8FC8B2 <CJK>
+8FC8B3 6EC1 8FC8B3 <CJK>
+8FC8B4 6EC3 8FC8B4 <CJK>
+8FC8B5 6EC7 8FC8B5 <CJK>
+8FC8B6 6EC8 8FC8B6 <CJK>
+8FC8B7 6ECA 8FC8B7 <CJK>
+8FC8B8 6ECD 8FC8B8 <CJK>
+8FC8B9 6ECE 8FC8B9 <CJK>
+8FC8BA 6ECF 8FC8BA <CJK>
+8FC8BB 6EEB 8FC8BB <CJK>
+8FC8BC 6EED 8FC8BC <CJK>
+8FC8BD 6EEE 8FC8BD <CJK>
+8FC8BE 6EF9 8FC8BE <CJK>
+8FC8BF 6EFB 8FC8BF <CJK>
+8FC8C0 6EFD 8FC8C0 <CJK>
+8FC8C1 6F04 8FC8C1 <CJK>
+8FC8C2 6F08 8FC8C2 <CJK>
+8FC8C3 6F0A 8FC8C3 <CJK>
+8FC8C4 6F0C 8FC8C4 <CJK>
+8FC8C5 6F0D 8FC8C5 <CJK>
+8FC8C6 6F16 8FC8C6 <CJK>
+8FC8C7 6F18 8FC8C7 <CJK>
+8FC8C8 6F1A 8FC8C8 <CJK>
+8FC8C9 6F1B 8FC8C9 <CJK>
+8FC8CA 6F26 8FC8CA <CJK>
+8FC8CB 6F29 8FC8CB <CJK>
+8FC8CC 6F2A 8FC8CC <CJK>
+8FC8CD 6F2F 8FC8CD <CJK>
+8FC8CE 6F30 8FC8CE <CJK>
+8FC8CF 6F33 8FC8CF <CJK>
+8FC8D0 6F36 8FC8D0 <CJK>
+8FC8D1 6F3B 8FC8D1 <CJK>
+8FC8D2 6F3C 8FC8D2 <CJK>
+8FC8D3 6F2D 8FC8D3 <CJK>
+8FC8D4 6F4F 8FC8D4 <CJK>
+8FC8D5 6F51 8FC8D5 <CJK>
+8FC8D6 6F52 8FC8D6 <CJK>
+8FC8D7 6F53 8FC8D7 <CJK>
+8FC8D8 6F57 8FC8D8 <CJK>
+8FC8D9 6F59 8FC8D9 <CJK>
+8FC8DA 6F5A 8FC8DA <CJK>
+8FC8DB 6F5D 8FC8DB <CJK>
+8FC8DC 6F5E 8FC8DC <CJK>
+8FC8DD 6F61 8FC8DD <CJK>
+8FC8DE 6F62 8FC8DE <CJK>
+8FC8DF 6F68 8FC8DF <CJK>
+8FC8E0 6F6C 8FC8E0 <CJK>
+8FC8E1 6F7D 8FC8E1 <CJK>
+8FC8E2 6F7E 8FC8E2 <CJK>
+8FC8E3 6F83 8FC8E3 <CJK>
+8FC8E4 6F87 8FC8E4 <CJK>
+8FC8E5 6F88 8FC8E5 <CJK>
+8FC8E6 6F8B 8FC8E6 <CJK>
+8FC8E7 6F8C 8FC8E7 <CJK>
+8FC8E8 6F8D 8FC8E8 <CJK>
+8FC8E9 6F90 8FC8E9 <CJK>
+8FC8EA 6F92 8FC8EA <CJK>
+8FC8EB 6F93 8FC8EB <CJK>
+8FC8EC 6F94 8FC8EC <CJK>
+8FC8ED 6F96 8FC8ED <CJK>
+8FC8EE 6F9A 8FC8EE <CJK>
+8FC8EF 6F9F 8FC8EF <CJK>
+8FC8F0 6FA0 8FC8F0 <CJK>
+8FC8F1 6FA5 8FC8F1 <CJK>
+8FC8F2 6FA6 8FC8F2 <CJK>
+8FC8F3 6FA7 8FC8F3 <CJK>
+8FC8F4 6FA8 8FC8F4 <CJK>
+8FC8F5 6FAE 8FC8F5 <CJK>
+8FC8F6 6FAF 8FC8F6 <CJK>
+8FC8F7 6FB0 8FC8F7 <CJK>
+8FC8F8 6FB5 8FC8F8 <CJK>
+8FC8F9 6FB6 8FC8F9 <CJK>
+8FC8FA 6FBC 8FC8FA <CJK>
+8FC8FB 6FC5 8FC8FB <CJK>
+8FC8FC 6FC7 8FC8FC <CJK>
+8FC8FD 6FC8 8FC8FD <CJK>
+8FC8FE 6FCA 8FC8FE <CJK>
+8FC9A1 6FDA 8FC9A1 <CJK>
+8FC9A2 6FDE 8FC9A2 <CJK>
+8FC9A3 6FE8 8FC9A3 <CJK>
+8FC9A4 6FE9 8FC9A4 <CJK>
+8FC9A5 6FF0 8FC9A5 <CJK>
+8FC9A6 6FF5 8FC9A6 <CJK>
+8FC9A7 6FF9 8FC9A7 <CJK>
+8FC9A8 6FFC 8FC9A8 <CJK>
+8FC9A9 6FFD 8FC9A9 <CJK>
+8FC9AA 7000 8FC9AA <CJK>
+8FC9AB 7005 8FC9AB <CJK>
+8FC9AC 7006 8FC9AC <CJK>
+8FC9AD 7007 8FC9AD <CJK>
+8FC9AE 700D 8FC9AE <CJK>
+8FC9AF 7017 8FC9AF <CJK>
+8FC9B0 7020 8FC9B0 <CJK>
+8FC9B1 7023 8FC9B1 <CJK>
+8FC9B2 702F 8FC9B2 <CJK>
+8FC9B3 7034 8FC9B3 <CJK>
+8FC9B4 7037 8FC9B4 <CJK>
+8FC9B5 7039 8FC9B5 <CJK>
+8FC9B6 703C 8FC9B6 <CJK>
+8FC9B7 7043 8FC9B7 <CJK>
+8FC9B8 7044 8FC9B8 <CJK>
+8FC9B9 7048 8FC9B9 <CJK>
+8FC9BA 7049 8FC9BA <CJK>
+8FC9BB 704A 8FC9BB <CJK>
+8FC9BC 704B 8FC9BC <CJK>
+8FC9BD 7054 8FC9BD <CJK>
+8FC9BE 7055 8FC9BE <CJK>
+8FC9BF 705D 8FC9BF <CJK>
+8FC9C0 705E 8FC9C0 <CJK>
+8FC9C1 704E 8FC9C1 <CJK>
+8FC9C2 7064 8FC9C2 <CJK>
+8FC9C3 7065 8FC9C3 <CJK>
+8FC9C4 706C 8FC9C4 <CJK>
+8FC9C5 706E 8FC9C5 <CJK>
+8FC9C6 7075 8FC9C6 <CJK>
+8FC9C7 7076 8FC9C7 <CJK>
+8FC9C8 707E 8FC9C8 <CJK>
+8FC9C9 7081 8FC9C9 <CJK>
+8FC9CA 7085 8FC9CA <CJK>
+8FC9CB 7086 8FC9CB <CJK>
+8FC9CC 7094 8FC9CC <CJK>
+8FC9CD 7095 8FC9CD <CJK>
+8FC9CE 7096 8FC9CE <CJK>
+8FC9CF 7097 8FC9CF <CJK>
+8FC9D0 7098 8FC9D0 <CJK>
+8FC9D1 709B 8FC9D1 <CJK>
+8FC9D2 70A4 8FC9D2 <CJK>
+8FC9D3 70AB 8FC9D3 <CJK>
+8FC9D4 70B0 8FC9D4 <CJK>
+8FC9D5 70B1 8FC9D5 <CJK>
+8FC9D6 70B4 8FC9D6 <CJK>
+8FC9D7 70B7 8FC9D7 <CJK>
+8FC9D8 70CA 8FC9D8 <CJK>
+8FC9D9 70D1 8FC9D9 <CJK>
+8FC9DA 70D3 8FC9DA <CJK>
+8FC9DB 70D4 8FC9DB <CJK>
+8FC9DC 70D5 8FC9DC <CJK>
+8FC9DD 70D6 8FC9DD <CJK>
+8FC9DE 70D8 8FC9DE <CJK>
+8FC9DF 70DC 8FC9DF <CJK>
+8FC9E0 70E4 8FC9E0 <CJK>
+8FC9E1 70FA 8FC9E1 <CJK>
+8FC9E2 7103 8FC9E2 <CJK>
+8FC9E3 7104 8FC9E3 <CJK>
+8FC9E4 7105 8FC9E4 <CJK>
+8FC9E5 7106 8FC9E5 <CJK>
+8FC9E6 7107 8FC9E6 <CJK>
+8FC9E7 710B 8FC9E7 <CJK>
+8FC9E8 710C 8FC9E8 <CJK>
+8FC9E9 710F 8FC9E9 <CJK>
+8FC9EA 711E 8FC9EA <CJK>
+8FC9EB 7120 8FC9EB <CJK>
+8FC9EC 712B 8FC9EC <CJK>
+8FC9ED 712D 8FC9ED <CJK>
+8FC9EE 712F 8FC9EE <CJK>
+8FC9EF 7130 8FC9EF <CJK>
+8FC9F0 7131 8FC9F0 <CJK>
+8FC9F1 7138 8FC9F1 <CJK>
+8FC9F2 7141 8FC9F2 <CJK>
+8FC9F3 7145 8FC9F3 <CJK>
+8FC9F4 7146 8FC9F4 <CJK>
+8FC9F5 7147 8FC9F5 <CJK>
+8FC9F6 714A 8FC9F6 <CJK>
+8FC9F7 714B 8FC9F7 <CJK>
+8FC9F8 7150 8FC9F8 <CJK>
+8FC9F9 7152 8FC9F9 <CJK>
+8FC9FA 7157 8FC9FA <CJK>
+8FC9FB 715A 8FC9FB <CJK>
+8FC9FC 715C 8FC9FC <CJK>
+8FC9FD 715E 8FC9FD <CJK>
+8FC9FE 7160 8FC9FE <CJK>
+8FCAA1 7168 8FCAA1 <CJK>
+8FCAA2 7179 8FCAA2 <CJK>
+8FCAA3 7180 8FCAA3 <CJK>
+8FCAA4 7185 8FCAA4 <CJK>
+8FCAA5 7187 8FCAA5 <CJK>
+8FCAA6 718C 8FCAA6 <CJK>
+8FCAA7 7192 8FCAA7 <CJK>
+8FCAA8 719A 8FCAA8 <CJK>
+8FCAA9 719B 8FCAA9 <CJK>
+8FCAAA 71A0 8FCAAA <CJK>
+8FCAAB 71A2 8FCAAB <CJK>
+8FCAAC 71AF 8FCAAC <CJK>
+8FCAAD 71B0 8FCAAD <CJK>
+8FCAAE 71B2 8FCAAE <CJK>
+8FCAAF 71B3 8FCAAF <CJK>
+8FCAB0 71BA 8FCAB0 <CJK>
+8FCAB1 71BF 8FCAB1 <CJK>
+8FCAB2 71C0 8FCAB2 <CJK>
+8FCAB3 71C1 8FCAB3 <CJK>
+8FCAB4 71C4 8FCAB4 <CJK>
+8FCAB5 71CB 8FCAB5 <CJK>
+8FCAB6 71CC 8FCAB6 <CJK>
+8FCAB7 71D3 8FCAB7 <CJK>
+8FCAB8 71D6 8FCAB8 <CJK>
+8FCAB9 71D9 8FCAB9 <CJK>
+8FCABA 71DA 8FCABA <CJK>
+8FCABB 71DC 8FCABB <CJK>
+8FCABC 71F8 8FCABC <CJK>
+8FCABD 71FE 8FCABD <CJK>
+8FCABE 7200 8FCABE <CJK>
+8FCABF 7207 8FCABF <CJK>
+8FCAC0 7208 8FCAC0 <CJK>
+8FCAC1 7209 8FCAC1 <CJK>
+8FCAC2 7213 8FCAC2 <CJK>
+8FCAC3 7217 8FCAC3 <CJK>
+8FCAC4 721A 8FCAC4 <CJK>
+8FCAC5 721D 8FCAC5 <CJK>
+8FCAC6 721F 8FCAC6 <CJK>
+8FCAC7 7224 8FCAC7 <CJK>
+8FCAC8 722B 8FCAC8 <CJK>
+8FCAC9 722F 8FCAC9 <CJK>
+8FCACA 7234 8FCACA <CJK>
+8FCACB 7238 8FCACB <CJK>
+8FCACC 7239 8FCACC <CJK>
+8FCACD 7241 8FCACD <CJK>
+8FCACE 7242 8FCACE <CJK>
+8FCACF 7243 8FCACF <CJK>
+8FCAD0 7245 8FCAD0 <CJK>
+8FCAD1 724E 8FCAD1 <CJK>
+8FCAD2 724F 8FCAD2 <CJK>
+8FCAD3 7250 8FCAD3 <CJK>
+8FCAD4 7253 8FCAD4 <CJK>
+8FCAD5 7255 8FCAD5 <CJK>
+8FCAD6 7256 8FCAD6 <CJK>
+8FCAD7 725A 8FCAD7 <CJK>
+8FCAD8 725C 8FCAD8 <CJK>
+8FCAD9 725E 8FCAD9 <CJK>
+8FCADA 7260 8FCADA <CJK>
+8FCADB 7263 8FCADB <CJK>
+8FCADC 7268 8FCADC <CJK>
+8FCADD 726B 8FCADD <CJK>
+8FCADE 726E 8FCADE <CJK>
+8FCADF 726F 8FCADF <CJK>
+8FCAE0 7271 8FCAE0 <CJK>
+8FCAE1 7277 8FCAE1 <CJK>
+8FCAE2 7278 8FCAE2 <CJK>
+8FCAE3 727B 8FCAE3 <CJK>
+8FCAE4 727C 8FCAE4 <CJK>
+8FCAE5 727F 8FCAE5 <CJK>
+8FCAE6 7284 8FCAE6 <CJK>
+8FCAE7 7289 8FCAE7 <CJK>
+8FCAE8 728D 8FCAE8 <CJK>
+8FCAE9 728E 8FCAE9 <CJK>
+8FCAEA 7293 8FCAEA <CJK>
+8FCAEB 729B 8FCAEB <CJK>
+8FCAEC 72A8 8FCAEC <CJK>
+8FCAED 72AD 8FCAED <CJK>
+8FCAEE 72AE 8FCAEE <CJK>
+8FCAEF 72B1 8FCAEF <CJK>
+8FCAF0 72B4 8FCAF0 <CJK>
+8FCAF1 72BE 8FCAF1 <CJK>
+8FCAF2 72C1 8FCAF2 <CJK>
+8FCAF3 72C7 8FCAF3 <CJK>
+8FCAF4 72C9 8FCAF4 <CJK>
+8FCAF5 72CC 8FCAF5 <CJK>
+8FCAF6 72D5 8FCAF6 <CJK>
+8FCAF7 72D6 8FCAF7 <CJK>
+8FCAF8 72D8 8FCAF8 <CJK>
+8FCAF9 72DF 8FCAF9 <CJK>
+8FCAFA 72E5 8FCAFA <CJK>
+8FCAFB 72F3 8FCAFB <CJK>
+8FCAFC 72F4 8FCAFC <CJK>
+8FCAFD 72FA 8FCAFD <CJK>
+8FCAFE 72FB 8FCAFE <CJK>
+8FCBA1 72FE 8FCBA1 <CJK>
+8FCBA2 7302 8FCBA2 <CJK>
+8FCBA3 7304 8FCBA3 <CJK>
+8FCBA4 7305 8FCBA4 <CJK>
+8FCBA5 7307 8FCBA5 <CJK>
+8FCBA6 730B 8FCBA6 <CJK>
+8FCBA7 730D 8FCBA7 <CJK>
+8FCBA8 7312 8FCBA8 <CJK>
+8FCBA9 7313 8FCBA9 <CJK>
+8FCBAA 7318 8FCBAA <CJK>
+8FCBAB 7319 8FCBAB <CJK>
+8FCBAC 731E 8FCBAC <CJK>
+8FCBAD 7322 8FCBAD <CJK>
+8FCBAE 7324 8FCBAE <CJK>
+8FCBAF 7327 8FCBAF <CJK>
+8FCBB0 7328 8FCBB0 <CJK>
+8FCBB1 732C 8FCBB1 <CJK>
+8FCBB2 7331 8FCBB2 <CJK>
+8FCBB3 7332 8FCBB3 <CJK>
+8FCBB4 7335 8FCBB4 <CJK>
+8FCBB5 733A 8FCBB5 <CJK>
+8FCBB6 733B 8FCBB6 <CJK>
+8FCBB7 733D 8FCBB7 <CJK>
+8FCBB8 7343 8FCBB8 <CJK>
+8FCBB9 734D 8FCBB9 <CJK>
+8FCBBA 7350 8FCBBA <CJK>
+8FCBBB 7352 8FCBBB <CJK>
+8FCBBC 7356 8FCBBC <CJK>
+8FCBBD 7358 8FCBBD <CJK>
+8FCBBE 735D 8FCBBE <CJK>
+8FCBBF 735E 8FCBBF <CJK>
+8FCBC0 735F 8FCBC0 <CJK>
+8FCBC1 7360 8FCBC1 <CJK>
+8FCBC2 7366 8FCBC2 <CJK>
+8FCBC3 7367 8FCBC3 <CJK>
+8FCBC4 7369 8FCBC4 <CJK>
+8FCBC5 736B 8FCBC5 <CJK>
+8FCBC6 736C 8FCBC6 <CJK>
+8FCBC7 736E 8FCBC7 <CJK>
+8FCBC8 736F 8FCBC8 <CJK>
+8FCBC9 7371 8FCBC9 <CJK>
+8FCBCA 7377 8FCBCA <CJK>
+8FCBCB 7379 8FCBCB <CJK>
+8FCBCC 737C 8FCBCC <CJK>
+8FCBCD 7380 8FCBCD <CJK>
+8FCBCE 7381 8FCBCE <CJK>
+8FCBCF 7383 8FCBCF <CJK>
+8FCBD0 7385 8FCBD0 <CJK>
+8FCBD1 7386 8FCBD1 <CJK>
+8FCBD2 738E 8FCBD2 <CJK>
+8FCBD3 7390 8FCBD3 <CJK>
+8FCBD4 7393 8FCBD4 <CJK>
+8FCBD5 7395 8FCBD5 <CJK>
+8FCBD6 7397 8FCBD6 <CJK>
+8FCBD7 7398 8FCBD7 <CJK>
+8FCBD8 739C 8FCBD8 <CJK>
+8FCBD9 739E 8FCBD9 <CJK>
+8FCBDA 739F 8FCBDA <CJK>
+8FCBDB 73A0 8FCBDB <CJK>
+8FCBDC 73A2 8FCBDC <CJK>
+8FCBDD 73A5 8FCBDD <CJK>
+8FCBDE 73A6 8FCBDE <CJK>
+8FCBDF 73AA 8FCBDF <CJK>
+8FCBE0 73AB 8FCBE0 <CJK>
+8FCBE1 73AD 8FCBE1 <CJK>
+8FCBE2 73B5 8FCBE2 <CJK>
+8FCBE3 73B7 8FCBE3 <CJK>
+8FCBE4 73B9 8FCBE4 <CJK>
+8FCBE5 73BC 8FCBE5 <CJK>
+8FCBE6 73BD 8FCBE6 <CJK>
+8FCBE7 73BF 8FCBE7 <CJK>
+8FCBE8 73C5 8FCBE8 <CJK>
+8FCBE9 73C6 8FCBE9 <CJK>
+8FCBEA 73C9 8FCBEA <CJK>
+8FCBEB 73CB 8FCBEB <CJK>
+8FCBEC 73CC 8FCBEC <CJK>
+8FCBED 73CF 8FCBED <CJK>
+8FCBEE 73D2 8FCBEE <CJK>
+8FCBEF 73D3 8FCBEF <CJK>
+8FCBF0 73D6 8FCBF0 <CJK>
+8FCBF1 73D9 8FCBF1 <CJK>
+8FCBF2 73DD 8FCBF2 <CJK>
+8FCBF3 73E1 8FCBF3 <CJK>
+8FCBF4 73E3 8FCBF4 <CJK>
+8FCBF5 73E6 8FCBF5 <CJK>
+8FCBF6 73E7 8FCBF6 <CJK>
+8FCBF7 73E9 8FCBF7 <CJK>
+8FCBF8 73F4 8FCBF8 <CJK>
+8FCBF9 73F5 8FCBF9 <CJK>
+8FCBFA 73F7 8FCBFA <CJK>
+8FCBFB 73F9 8FCBFB <CJK>
+8FCBFC 73FA 8FCBFC <CJK>
+8FCBFD 73FB 8FCBFD <CJK>
+8FCBFE 73FD 8FCBFE <CJK>
+8FCCA1 73FF 8FCCA1 <CJK>
+8FCCA2 7400 8FCCA2 <CJK>
+8FCCA3 7401 8FCCA3 <CJK>
+8FCCA4 7404 8FCCA4 <CJK>
+8FCCA5 7407 8FCCA5 <CJK>
+8FCCA6 740A 8FCCA6 <CJK>
+8FCCA7 7411 8FCCA7 <CJK>
+8FCCA8 741A 8FCCA8 <CJK>
+8FCCA9 741B 8FCCA9 <CJK>
+8FCCAA 7424 8FCCAA <CJK>
+8FCCAB 7426 8FCCAB <CJK>
+8FCCAC 7428 8FCCAC <CJK>
+8FCCAD 7429 8FCCAD <CJK>
+8FCCAE 742A 8FCCAE <CJK>
+8FCCAF 742B 8FCCAF <CJK>
+8FCCB0 742C 8FCCB0 <CJK>
+8FCCB1 742D 8FCCB1 <CJK>
+8FCCB2 742E 8FCCB2 <CJK>
+8FCCB3 742F 8FCCB3 <CJK>
+8FCCB4 7430 8FCCB4 <CJK>
+8FCCB5 7431 8FCCB5 <CJK>
+8FCCB6 7439 8FCCB6 <CJK>
+8FCCB7 7440 8FCCB7 <CJK>
+8FCCB8 7443 8FCCB8 <CJK>
+8FCCB9 7444 8FCCB9 <CJK>
+8FCCBA 7446 8FCCBA <CJK>
+8FCCBB 7447 8FCCBB <CJK>
+8FCCBC 744B 8FCCBC <CJK>
+8FCCBD 744D 8FCCBD <CJK>
+8FCCBE 7451 8FCCBE <CJK>
+8FCCBF 7452 8FCCBF <CJK>
+8FCCC0 7457 8FCCC0 <CJK>
+8FCCC1 745D 8FCCC1 <CJK>
+8FCCC2 7462 8FCCC2 <CJK>
+8FCCC3 7466 8FCCC3 <CJK>
+8FCCC4 7467 8FCCC4 <CJK>
+8FCCC5 7468 8FCCC5 <CJK>
+8FCCC6 746B 8FCCC6 <CJK>
+8FCCC7 746D 8FCCC7 <CJK>
+8FCCC8 746E 8FCCC8 <CJK>
+8FCCC9 7471 8FCCC9 <CJK>
+8FCCCA 7472 8FCCCA <CJK>
+8FCCCB 7480 8FCCCB <CJK>
+8FCCCC 7481 8FCCCC <CJK>
+8FCCCD 7485 8FCCCD <CJK>
+8FCCCE 7486 8FCCCE <CJK>
+8FCCCF 7487 8FCCCF <CJK>
+8FCCD0 7489 8FCCD0 <CJK>
+8FCCD1 748F 8FCCD1 <CJK>
+8FCCD2 7490 8FCCD2 <CJK>
+8FCCD3 7491 8FCCD3 <CJK>
+8FCCD4 7492 8FCCD4 <CJK>
+8FCCD5 7498 8FCCD5 <CJK>
+8FCCD6 7499 8FCCD6 <CJK>
+8FCCD7 749A 8FCCD7 <CJK>
+8FCCD8 749C 8FCCD8 <CJK>
+8FCCD9 749F 8FCCD9 <CJK>
+8FCCDA 74A0 8FCCDA <CJK>
+8FCCDB 74A1 8FCCDB <CJK>
+8FCCDC 74A3 8FCCDC <CJK>
+8FCCDD 74A6 8FCCDD <CJK>
+8FCCDE 74A8 8FCCDE <CJK>
+8FCCDF 74A9 8FCCDF <CJK>
+8FCCE0 74AA 8FCCE0 <CJK>
+8FCCE1 74AB 8FCCE1 <CJK>
+8FCCE2 74AE 8FCCE2 <CJK>
+8FCCE3 74AF 8FCCE3 <CJK>
+8FCCE4 74B1 8FCCE4 <CJK>
+8FCCE5 74B2 8FCCE5 <CJK>
+8FCCE6 74B5 8FCCE6 <CJK>
+8FCCE7 74B9 8FCCE7 <CJK>
+8FCCE8 74BB 8FCCE8 <CJK>
+8FCCE9 74BF 8FCCE9 <CJK>
+8FCCEA 74C8 8FCCEA <CJK>
+8FCCEB 74C9 8FCCEB <CJK>
+8FCCEC 74CC 8FCCEC <CJK>
+8FCCED 74D0 8FCCED <CJK>
+8FCCEE 74D3 8FCCEE <CJK>
+8FCCEF 74D8 8FCCEF <CJK>
+8FCCF0 74DA 8FCCF0 <CJK>
+8FCCF1 74DB 8FCCF1 <CJK>
+8FCCF2 74DE 8FCCF2 <CJK>
+8FCCF3 74DF 8FCCF3 <CJK>
+8FCCF4 74E4 8FCCF4 <CJK>
+8FCCF5 74E8 8FCCF5 <CJK>
+8FCCF6 74EA 8FCCF6 <CJK>
+8FCCF7 74EB 8FCCF7 <CJK>
+8FCCF8 74EF 8FCCF8 <CJK>
+8FCCF9 74F4 8FCCF9 <CJK>
+8FCCFA 74FA 8FCCFA <CJK>
+8FCCFB 74FB 8FCCFB <CJK>
+8FCCFC 74FC 8FCCFC <CJK>
+8FCCFD 74FF 8FCCFD <CJK>
+8FCCFE 7506 8FCCFE <CJK>
+8FCDA1 7512 8FCDA1 <CJK>
+8FCDA2 7516 8FCDA2 <CJK>
+8FCDA3 7517 8FCDA3 <CJK>
+8FCDA4 7520 8FCDA4 <CJK>
+8FCDA5 7521 8FCDA5 <CJK>
+8FCDA6 7524 8FCDA6 <CJK>
+8FCDA7 7527 8FCDA7 <CJK>
+8FCDA8 7529 8FCDA8 <CJK>
+8FCDA9 752A 8FCDA9 <CJK>
+8FCDAA 752F 8FCDAA <CJK>
+8FCDAB 7536 8FCDAB <CJK>
+8FCDAC 7539 8FCDAC <CJK>
+8FCDAD 753D 8FCDAD <CJK>
+8FCDAE 753E 8FCDAE <CJK>
+8FCDAF 753F 8FCDAF <CJK>
+8FCDB0 7540 8FCDB0 <CJK>
+8FCDB1 7543 8FCDB1 <CJK>
+8FCDB2 7547 8FCDB2 <CJK>
+8FCDB3 7548 8FCDB3 <CJK>
+8FCDB4 754E 8FCDB4 <CJK>
+8FCDB5 7550 8FCDB5 <CJK>
+8FCDB6 7552 8FCDB6 <CJK>
+8FCDB7 7557 8FCDB7 <CJK>
+8FCDB8 755E 8FCDB8 <CJK>
+8FCDB9 755F 8FCDB9 <CJK>
+8FCDBA 7561 8FCDBA <CJK>
+8FCDBB 756F 8FCDBB <CJK>
+8FCDBC 7571 8FCDBC <CJK>
+8FCDBD 7579 8FCDBD <CJK>
+8FCDBE 757A 8FCDBE <CJK>
+8FCDBF 757B 8FCDBF <CJK>
+8FCDC0 757C 8FCDC0 <CJK>
+8FCDC1 757D 8FCDC1 <CJK>
+8FCDC2 757E 8FCDC2 <CJK>
+8FCDC3 7581 8FCDC3 <CJK>
+8FCDC4 7585 8FCDC4 <CJK>
+8FCDC5 7590 8FCDC5 <CJK>
+8FCDC6 7592 8FCDC6 <CJK>
+8FCDC7 7593 8FCDC7 <CJK>
+8FCDC8 7595 8FCDC8 <CJK>
+8FCDC9 7599 8FCDC9 <CJK>
+8FCDCA 759C 8FCDCA <CJK>
+8FCDCB 75A2 8FCDCB <CJK>
+8FCDCC 75A4 8FCDCC <CJK>
+8FCDCD 75B4 8FCDCD <CJK>
+8FCDCE 75BA 8FCDCE <CJK>
+8FCDCF 75BF 8FCDCF <CJK>
+8FCDD0 75C0 8FCDD0 <CJK>
+8FCDD1 75C1 8FCDD1 <CJK>
+8FCDD2 75C4 8FCDD2 <CJK>
+8FCDD3 75C6 8FCDD3 <CJK>
+8FCDD4 75CC 8FCDD4 <CJK>
+8FCDD5 75CE 8FCDD5 <CJK>
+8FCDD6 75CF 8FCDD6 <CJK>
+8FCDD7 75D7 8FCDD7 <CJK>
+8FCDD8 75DC 8FCDD8 <CJK>
+8FCDD9 75DF 8FCDD9 <CJK>
+8FCDDA 75E0 8FCDDA <CJK>
+8FCDDB 75E1 8FCDDB <CJK>
+8FCDDC 75E4 8FCDDC <CJK>
+8FCDDD 75E7 8FCDDD <CJK>
+8FCDDE 75EC 8FCDDE <CJK>
+8FCDDF 75EE 8FCDDF <CJK>
+8FCDE0 75EF 8FCDE0 <CJK>
+8FCDE1 75F1 8FCDE1 <CJK>
+8FCDE2 75F9 8FCDE2 <CJK>
+8FCDE3 7600 8FCDE3 <CJK>
+8FCDE4 7602 8FCDE4 <CJK>
+8FCDE5 7603 8FCDE5 <CJK>
+8FCDE6 7604 8FCDE6 <CJK>
+8FCDE7 7607 8FCDE7 <CJK>
+8FCDE8 7608 8FCDE8 <CJK>
+8FCDE9 760A 8FCDE9 <CJK>
+8FCDEA 760C 8FCDEA <CJK>
+8FCDEB 760F 8FCDEB <CJK>
+8FCDEC 7612 8FCDEC <CJK>
+8FCDED 7613 8FCDED <CJK>
+8FCDEE 7615 8FCDEE <CJK>
+8FCDEF 7616 8FCDEF <CJK>
+8FCDF0 7619 8FCDF0 <CJK>
+8FCDF1 761B 8FCDF1 <CJK>
+8FCDF2 761C 8FCDF2 <CJK>
+8FCDF3 761D 8FCDF3 <CJK>
+8FCDF4 761E 8FCDF4 <CJK>
+8FCDF5 7623 8FCDF5 <CJK>
+8FCDF6 7625 8FCDF6 <CJK>
+8FCDF7 7626 8FCDF7 <CJK>
+8FCDF8 7629 8FCDF8 <CJK>
+8FCDF9 762D 8FCDF9 <CJK>
+8FCDFA 7632 8FCDFA <CJK>
+8FCDFB 7633 8FCDFB <CJK>
+8FCDFC 7635 8FCDFC <CJK>
+8FCDFD 7638 8FCDFD <CJK>
+8FCDFE 7639 8FCDFE <CJK>
+8FCEA1 763A 8FCEA1 <CJK>
+8FCEA2 763C 8FCEA2 <CJK>
+8FCEA3 764A 8FCEA3 <CJK>
+8FCEA4 7640 8FCEA4 <CJK>
+8FCEA5 7641 8FCEA5 <CJK>
+8FCEA6 7643 8FCEA6 <CJK>
+8FCEA7 7644 8FCEA7 <CJK>
+8FCEA8 7645 8FCEA8 <CJK>
+8FCEA9 7649 8FCEA9 <CJK>
+8FCEAA 764B 8FCEAA <CJK>
+8FCEAB 7655 8FCEAB <CJK>
+8FCEAC 7659 8FCEAC <CJK>
+8FCEAD 765F 8FCEAD <CJK>
+8FCEAE 7664 8FCEAE <CJK>
+8FCEAF 7665 8FCEAF <CJK>
+8FCEB0 766D 8FCEB0 <CJK>
+8FCEB1 766E 8FCEB1 <CJK>
+8FCEB2 766F 8FCEB2 <CJK>
+8FCEB3 7671 8FCEB3 <CJK>
+8FCEB4 7674 8FCEB4 <CJK>
+8FCEB5 7681 8FCEB5 <CJK>
+8FCEB6 7685 8FCEB6 <CJK>
+8FCEB7 768C 8FCEB7 <CJK>
+8FCEB8 768D 8FCEB8 <CJK>
+8FCEB9 7695 8FCEB9 <CJK>
+8FCEBA 769B 8FCEBA <CJK>
+8FCEBB 769C 8FCEBB <CJK>
+8FCEBC 769D 8FCEBC <CJK>
+8FCEBD 769F 8FCEBD <CJK>
+8FCEBE 76A0 8FCEBE <CJK>
+8FCEBF 76A2 8FCEBF <CJK>
+8FCEC0 76A3 8FCEC0 <CJK>
+8FCEC1 76A4 8FCEC1 <CJK>
+8FCEC2 76A5 8FCEC2 <CJK>
+8FCEC3 76A6 8FCEC3 <CJK>
+8FCEC4 76A7 8FCEC4 <CJK>
+8FCEC5 76A8 8FCEC5 <CJK>
+8FCEC6 76AA 8FCEC6 <CJK>
+8FCEC7 76AD 8FCEC7 <CJK>
+8FCEC8 76BD 8FCEC8 <CJK>
+8FCEC9 76C1 8FCEC9 <CJK>
+8FCECA 76C5 8FCECA <CJK>
+8FCECB 76C9 8FCECB <CJK>
+8FCECC 76CB 8FCECC <CJK>
+8FCECD 76CC 8FCECD <CJK>
+8FCECE 76CE 8FCECE <CJK>
+8FCECF 76D4 8FCECF <CJK>
+8FCED0 76D9 8FCED0 <CJK>
+8FCED1 76E0 8FCED1 <CJK>
+8FCED2 76E6 8FCED2 <CJK>
+8FCED3 76E8 8FCED3 <CJK>
+8FCED4 76EC 8FCED4 <CJK>
+8FCED5 76F0 8FCED5 <CJK>
+8FCED6 76F1 8FCED6 <CJK>
+8FCED7 76F6 8FCED7 <CJK>
+8FCED8 76F9 8FCED8 <CJK>
+8FCED9 76FC 8FCED9 <CJK>
+8FCEDA 7700 8FCEDA <CJK>
+8FCEDB 7706 8FCEDB <CJK>
+8FCEDC 770A 8FCEDC <CJK>
+8FCEDD 770E 8FCEDD <CJK>
+8FCEDE 7712 8FCEDE <CJK>
+8FCEDF 7714 8FCEDF <CJK>
+8FCEE0 7715 8FCEE0 <CJK>
+8FCEE1 7717 8FCEE1 <CJK>
+8FCEE2 7719 8FCEE2 <CJK>
+8FCEE3 771A 8FCEE3 <CJK>
+8FCEE4 771C 8FCEE4 <CJK>
+8FCEE5 7722 8FCEE5 <CJK>
+8FCEE6 7728 8FCEE6 <CJK>
+8FCEE7 772D 8FCEE7 <CJK>
+8FCEE8 772E 8FCEE8 <CJK>
+8FCEE9 772F 8FCEE9 <CJK>
+8FCEEA 7734 8FCEEA <CJK>
+8FCEEB 7735 8FCEEB <CJK>
+8FCEEC 7736 8FCEEC <CJK>
+8FCEED 7739 8FCEED <CJK>
+8FCEEE 773D 8FCEEE <CJK>
+8FCEEF 773E 8FCEEF <CJK>
+8FCEF0 7742 8FCEF0 <CJK>
+8FCEF1 7745 8FCEF1 <CJK>
+8FCEF2 7746 8FCEF2 <CJK>
+8FCEF3 774A 8FCEF3 <CJK>
+8FCEF4 774D 8FCEF4 <CJK>
+8FCEF5 774E 8FCEF5 <CJK>
+8FCEF6 774F 8FCEF6 <CJK>
+8FCEF7 7752 8FCEF7 <CJK>
+8FCEF8 7756 8FCEF8 <CJK>
+8FCEF9 7757 8FCEF9 <CJK>
+8FCEFA 775C 8FCEFA <CJK>
+8FCEFB 775E 8FCEFB <CJK>
+8FCEFC 775F 8FCEFC <CJK>
+8FCEFD 7760 8FCEFD <CJK>
+8FCEFE 7762 8FCEFE <CJK>
+8FCFA1 7764 8FCFA1 <CJK>
+8FCFA2 7767 8FCFA2 <CJK>
+8FCFA3 776A 8FCFA3 <CJK>
+8FCFA4 776C 8FCFA4 <CJK>
+8FCFA5 7770 8FCFA5 <CJK>
+8FCFA6 7772 8FCFA6 <CJK>
+8FCFA7 7773 8FCFA7 <CJK>
+8FCFA8 7774 8FCFA8 <CJK>
+8FCFA9 777A 8FCFA9 <CJK>
+8FCFAA 777D 8FCFAA <CJK>
+8FCFAB 7780 8FCFAB <CJK>
+8FCFAC 7784 8FCFAC <CJK>
+8FCFAD 778C 8FCFAD <CJK>
+8FCFAE 778D 8FCFAE <CJK>
+8FCFAF 7794 8FCFAF <CJK>
+8FCFB0 7795 8FCFB0 <CJK>
+8FCFB1 7796 8FCFB1 <CJK>
+8FCFB2 779A 8FCFB2 <CJK>
+8FCFB3 779F 8FCFB3 <CJK>
+8FCFB4 77A2 8FCFB4 <CJK>
+8FCFB5 77A7 8FCFB5 <CJK>
+8FCFB6 77AA 8FCFB6 <CJK>
+8FCFB7 77AE 8FCFB7 <CJK>
+8FCFB8 77AF 8FCFB8 <CJK>
+8FCFB9 77B1 8FCFB9 <CJK>
+8FCFBA 77B5 8FCFBA <CJK>
+8FCFBB 77BE 8FCFBB <CJK>
+8FCFBC 77C3 8FCFBC <CJK>
+8FCFBD 77C9 8FCFBD <CJK>
+8FCFBE 77D1 8FCFBE <CJK>
+8FCFBF 77D2 8FCFBF <CJK>
+8FCFC0 77D5 8FCFC0 <CJK>
+8FCFC1 77D9 8FCFC1 <CJK>
+8FCFC2 77DE 8FCFC2 <CJK>
+8FCFC3 77DF 8FCFC3 <CJK>
+8FCFC4 77E0 8FCFC4 <CJK>
+8FCFC5 77E4 8FCFC5 <CJK>
+8FCFC6 77E6 8FCFC6 <CJK>
+8FCFC7 77EA 8FCFC7 <CJK>
+8FCFC8 77EC 8FCFC8 <CJK>
+8FCFC9 77F0 8FCFC9 <CJK>
+8FCFCA 77F1 8FCFCA <CJK>
+8FCFCB 77F4 8FCFCB <CJK>
+8FCFCC 77F8 8FCFCC <CJK>
+8FCFCD 77FB 8FCFCD <CJK>
+8FCFCE 7805 8FCFCE <CJK>
+8FCFCF 7806 8FCFCF <CJK>
+8FCFD0 7809 8FCFD0 <CJK>
+8FCFD1 780D 8FCFD1 <CJK>
+8FCFD2 780E 8FCFD2 <CJK>
+8FCFD3 7811 8FCFD3 <CJK>
+8FCFD4 781D 8FCFD4 <CJK>
+8FCFD5 7821 8FCFD5 <CJK>
+8FCFD6 7822 8FCFD6 <CJK>
+8FCFD7 7823 8FCFD7 <CJK>
+8FCFD8 782D 8FCFD8 <CJK>
+8FCFD9 782E 8FCFD9 <CJK>
+8FCFDA 7830 8FCFDA <CJK>
+8FCFDB 7835 8FCFDB <CJK>
+8FCFDC 7837 8FCFDC <CJK>
+8FCFDD 7843 8FCFDD <CJK>
+8FCFDE 7844 8FCFDE <CJK>
+8FCFDF 7847 8FCFDF <CJK>
+8FCFE0 7848 8FCFE0 <CJK>
+8FCFE1 784C 8FCFE1 <CJK>
+8FCFE2 784E 8FCFE2 <CJK>
+8FCFE3 7852 8FCFE3 <CJK>
+8FCFE4 785C 8FCFE4 <CJK>
+8FCFE5 785E 8FCFE5 <CJK>
+8FCFE6 7860 8FCFE6 <CJK>
+8FCFE7 7861 8FCFE7 <CJK>
+8FCFE8 7863 8FCFE8 <CJK>
+8FCFE9 7864 8FCFE9 <CJK>
+8FCFEA 7868 8FCFEA <CJK>
+8FCFEB 786A 8FCFEB <CJK>
+8FCFEC 786E 8FCFEC <CJK>
+8FCFED 787A 8FCFED <CJK>
+8FCFEE 787E 8FCFEE <CJK>
+8FCFEF 788A 8FCFEF <CJK>
+8FCFF0 788F 8FCFF0 <CJK>
+8FCFF1 7894 8FCFF1 <CJK>
+8FCFF2 7898 8FCFF2 <CJK>
+8FCFF3 78A1 8FCFF3 <CJK>
+8FCFF4 789D 8FCFF4 <CJK>
+8FCFF5 789E 8FCFF5 <CJK>
+8FCFF6 789F 8FCFF6 <CJK>
+8FCFF7 78A4 8FCFF7 <CJK>
+8FCFF8 78A8 8FCFF8 <CJK>
+8FCFF9 78AC 8FCFF9 <CJK>
+8FCFFA 78AD 8FCFFA <CJK>
+8FCFFB 78B0 8FCFFB <CJK>
+8FCFFC 78B1 8FCFFC <CJK>
+8FCFFD 78B2 8FCFFD <CJK>
+8FCFFE 78B3 8FCFFE <CJK>
+8FD0A1 78BB 8FD0A1 <CJK>
+8FD0A2 78BD 8FD0A2 <CJK>
+8FD0A3 78BF 8FD0A3 <CJK>
+8FD0A4 78C7 8FD0A4 <CJK>
+8FD0A5 78C8 8FD0A5 <CJK>
+8FD0A6 78C9 8FD0A6 <CJK>
+8FD0A7 78CC 8FD0A7 <CJK>
+8FD0A8 78CE 8FD0A8 <CJK>
+8FD0A9 78D2 8FD0A9 <CJK>
+8FD0AA 78D3 8FD0AA <CJK>
+8FD0AB 78D5 8FD0AB <CJK>
+8FD0AC 78D6 8FD0AC <CJK>
+8FD0AD 78E4 8FD0AD <CJK>
+8FD0AE 78DB 8FD0AE <CJK>
+8FD0AF 78DF 8FD0AF <CJK>
+8FD0B0 78E0 8FD0B0 <CJK>
+8FD0B1 78E1 8FD0B1 <CJK>
+8FD0B2 78E6 8FD0B2 <CJK>
+8FD0B3 78EA 8FD0B3 <CJK>
+8FD0B4 78F2 8FD0B4 <CJK>
+8FD0B5 78F3 8FD0B5 <CJK>
+8FD0B6 7900 8FD0B6 <CJK>
+8FD0B7 78F6 8FD0B7 <CJK>
+8FD0B8 78F7 8FD0B8 <CJK>
+8FD0B9 78FA 8FD0B9 <CJK>
+8FD0BA 78FB 8FD0BA <CJK>
+8FD0BB 78FF 8FD0BB <CJK>
+8FD0BC 7906 8FD0BC <CJK>
+8FD0BD 790C 8FD0BD <CJK>
+8FD0BE 7910 8FD0BE <CJK>
+8FD0BF 791A 8FD0BF <CJK>
+8FD0C0 791C 8FD0C0 <CJK>
+8FD0C1 791E 8FD0C1 <CJK>
+8FD0C2 791F 8FD0C2 <CJK>
+8FD0C3 7920 8FD0C3 <CJK>
+8FD0C4 7925 8FD0C4 <CJK>
+8FD0C5 7927 8FD0C5 <CJK>
+8FD0C6 7929 8FD0C6 <CJK>
+8FD0C7 792D 8FD0C7 <CJK>
+8FD0C8 7931 8FD0C8 <CJK>
+8FD0C9 7934 8FD0C9 <CJK>
+8FD0CA 7935 8FD0CA <CJK>
+8FD0CB 793B 8FD0CB <CJK>
+8FD0CC 793D 8FD0CC <CJK>
+8FD0CD 793F 8FD0CD <CJK>
+8FD0CE 7944 8FD0CE <CJK>
+8FD0CF 7945 8FD0CF <CJK>
+8FD0D0 7946 8FD0D0 <CJK>
+8FD0D1 794A 8FD0D1 <CJK>
+8FD0D2 794B 8FD0D2 <CJK>
+8FD0D3 794F 8FD0D3 <CJK>
+8FD0D4 7951 8FD0D4 <CJK>
+8FD0D5 7954 8FD0D5 <CJK>
+8FD0D6 7958 8FD0D6 <CJK>
+8FD0D7 795B 8FD0D7 <CJK>
+8FD0D8 795C 8FD0D8 <CJK>
+8FD0D9 7967 8FD0D9 <CJK>
+8FD0DA 7969 8FD0DA <CJK>
+8FD0DB 796B 8FD0DB <CJK>
+8FD0DC 7972 8FD0DC <CJK>
+8FD0DD 7979 8FD0DD <CJK>
+8FD0DE 797B 8FD0DE <CJK>
+8FD0DF 797C 8FD0DF <CJK>
+8FD0E0 797E 8FD0E0 <CJK>
+8FD0E1 798B 8FD0E1 <CJK>
+8FD0E2 798C 8FD0E2 <CJK>
+8FD0E3 7991 8FD0E3 <CJK>
+8FD0E4 7993 8FD0E4 <CJK>
+8FD0E5 7994 8FD0E5 <CJK>
+8FD0E6 7995 8FD0E6 <CJK>
+8FD0E7 7996 8FD0E7 <CJK>
+8FD0E8 7998 8FD0E8 <CJK>
+8FD0E9 799B 8FD0E9 <CJK>
+8FD0EA 799C 8FD0EA <CJK>
+8FD0EB 79A1 8FD0EB <CJK>
+8FD0EC 79A8 8FD0EC <CJK>
+8FD0ED 79A9 8FD0ED <CJK>
+8FD0EE 79AB 8FD0EE <CJK>
+8FD0EF 79AF 8FD0EF <CJK>
+8FD0F0 79B1 8FD0F0 <CJK>
+8FD0F1 79B4 8FD0F1 <CJK>
+8FD0F2 79B8 8FD0F2 <CJK>
+8FD0F3 79BB 8FD0F3 <CJK>
+8FD0F4 79C2 8FD0F4 <CJK>
+8FD0F5 79C4 8FD0F5 <CJK>
+8FD0F6 79C7 8FD0F6 <CJK>
+8FD0F7 79C8 8FD0F7 <CJK>
+8FD0F8 79CA 8FD0F8 <CJK>
+8FD0F9 79CF 8FD0F9 <CJK>
+8FD0FA 79D4 8FD0FA <CJK>
+8FD0FB 79D6 8FD0FB <CJK>
+8FD0FC 79DA 8FD0FC <CJK>
+8FD0FD 79DD 8FD0FD <CJK>
+8FD0FE 79DE 8FD0FE <CJK>
+8FD1A1 79E0 8FD1A1 <CJK>
+8FD1A2 79E2 8FD1A2 <CJK>
+8FD1A3 79E5 8FD1A3 <CJK>
+8FD1A4 79EA 8FD1A4 <CJK>
+8FD1A5 79EB 8FD1A5 <CJK>
+8FD1A6 79ED 8FD1A6 <CJK>
+8FD1A7 79F1 8FD1A7 <CJK>
+8FD1A8 79F8 8FD1A8 <CJK>
+8FD1A9 79FC 8FD1A9 <CJK>
+8FD1AA 7A02 8FD1AA <CJK>
+8FD1AB 7A03 8FD1AB <CJK>
+8FD1AC 7A07 8FD1AC <CJK>
+8FD1AD 7A09 8FD1AD <CJK>
+8FD1AE 7A0A 8FD1AE <CJK>
+8FD1AF 7A0C 8FD1AF <CJK>
+8FD1B0 7A11 8FD1B0 <CJK>
+8FD1B1 7A15 8FD1B1 <CJK>
+8FD1B2 7A1B 8FD1B2 <CJK>
+8FD1B3 7A1E 8FD1B3 <CJK>
+8FD1B4 7A21 8FD1B4 <CJK>
+8FD1B5 7A27 8FD1B5 <CJK>
+8FD1B6 7A2B 8FD1B6 <CJK>
+8FD1B7 7A2D 8FD1B7 <CJK>
+8FD1B8 7A2F 8FD1B8 <CJK>
+8FD1B9 7A30 8FD1B9 <CJK>
+8FD1BA 7A34 8FD1BA <CJK>
+8FD1BB 7A35 8FD1BB <CJK>
+8FD1BC 7A38 8FD1BC <CJK>
+8FD1BD 7A39 8FD1BD <CJK>
+8FD1BE 7A3A 8FD1BE <CJK>
+8FD1BF 7A44 8FD1BF <CJK>
+8FD1C0 7A45 8FD1C0 <CJK>
+8FD1C1 7A47 8FD1C1 <CJK>
+8FD1C2 7A48 8FD1C2 <CJK>
+8FD1C3 7A4C 8FD1C3 <CJK>
+8FD1C4 7A55 8FD1C4 <CJK>
+8FD1C5 7A56 8FD1C5 <CJK>
+8FD1C6 7A59 8FD1C6 <CJK>
+8FD1C7 7A5C 8FD1C7 <CJK>
+8FD1C8 7A5D 8FD1C8 <CJK>
+8FD1C9 7A5F 8FD1C9 <CJK>
+8FD1CA 7A60 8FD1CA <CJK>
+8FD1CB 7A65 8FD1CB <CJK>
+8FD1CC 7A67 8FD1CC <CJK>
+8FD1CD 7A6A 8FD1CD <CJK>
+8FD1CE 7A6D 8FD1CE <CJK>
+8FD1CF 7A75 8FD1CF <CJK>
+8FD1D0 7A78 8FD1D0 <CJK>
+8FD1D1 7A7E 8FD1D1 <CJK>
+8FD1D2 7A80 8FD1D2 <CJK>
+8FD1D3 7A82 8FD1D3 <CJK>
+8FD1D4 7A85 8FD1D4 <CJK>
+8FD1D5 7A86 8FD1D5 <CJK>
+8FD1D6 7A8A 8FD1D6 <CJK>
+8FD1D7 7A8B 8FD1D7 <CJK>
+8FD1D8 7A90 8FD1D8 <CJK>
+8FD1D9 7A91 8FD1D9 <CJK>
+8FD1DA 7A94 8FD1DA <CJK>
+8FD1DB 7A9E 8FD1DB <CJK>
+8FD1DC 7AA0 8FD1DC <CJK>
+8FD1DD 7AA3 8FD1DD <CJK>
+8FD1DE 7AAC 8FD1DE <CJK>
+8FD1DF 7AB3 8FD1DF <CJK>
+8FD1E0 7AB5 8FD1E0 <CJK>
+8FD1E1 7AB9 8FD1E1 <CJK>
+8FD1E2 7ABB 8FD1E2 <CJK>
+8FD1E3 7ABC 8FD1E3 <CJK>
+8FD1E4 7AC6 8FD1E4 <CJK>
+8FD1E5 7AC9 8FD1E5 <CJK>
+8FD1E6 7ACC 8FD1E6 <CJK>
+8FD1E7 7ACE 8FD1E7 <CJK>
+8FD1E8 7AD1 8FD1E8 <CJK>
+8FD1E9 7ADB 8FD1E9 <CJK>
+8FD1EA 7AE8 8FD1EA <CJK>
+8FD1EB 7AE9 8FD1EB <CJK>
+8FD1EC 7AEB 8FD1EC <CJK>
+8FD1ED 7AEC 8FD1ED <CJK>
+8FD1EE 7AF1 8FD1EE <CJK>
+8FD1EF 7AF4 8FD1EF <CJK>
+8FD1F0 7AFB 8FD1F0 <CJK>
+8FD1F1 7AFD 8FD1F1 <CJK>
+8FD1F2 7AFE 8FD1F2 <CJK>
+8FD1F3 7B07 8FD1F3 <CJK>
+8FD1F4 7B14 8FD1F4 <CJK>
+8FD1F5 7B1F 8FD1F5 <CJK>
+8FD1F6 7B23 8FD1F6 <CJK>
+8FD1F7 7B27 8FD1F7 <CJK>
+8FD1F8 7B29 8FD1F8 <CJK>
+8FD1F9 7B2A 8FD1F9 <CJK>
+8FD1FA 7B2B 8FD1FA <CJK>
+8FD1FB 7B2D 8FD1FB <CJK>
+8FD1FC 7B2E 8FD1FC <CJK>
+8FD1FD 7B2F 8FD1FD <CJK>
+8FD1FE 7B30 8FD1FE <CJK>
+8FD2A1 7B31 8FD2A1 <CJK>
+8FD2A2 7B34 8FD2A2 <CJK>
+8FD2A3 7B3D 8FD2A3 <CJK>
+8FD2A4 7B3F 8FD2A4 <CJK>
+8FD2A5 7B40 8FD2A5 <CJK>
+8FD2A6 7B41 8FD2A6 <CJK>
+8FD2A7 7B47 8FD2A7 <CJK>
+8FD2A8 7B4E 8FD2A8 <CJK>
+8FD2A9 7B55 8FD2A9 <CJK>
+8FD2AA 7B60 8FD2AA <CJK>
+8FD2AB 7B64 8FD2AB <CJK>
+8FD2AC 7B66 8FD2AC <CJK>
+8FD2AD 7B69 8FD2AD <CJK>
+8FD2AE 7B6A 8FD2AE <CJK>
+8FD2AF 7B6D 8FD2AF <CJK>
+8FD2B0 7B6F 8FD2B0 <CJK>
+8FD2B1 7B72 8FD2B1 <CJK>
+8FD2B2 7B73 8FD2B2 <CJK>
+8FD2B3 7B77 8FD2B3 <CJK>
+8FD2B4 7B84 8FD2B4 <CJK>
+8FD2B5 7B89 8FD2B5 <CJK>
+8FD2B6 7B8E 8FD2B6 <CJK>
+8FD2B7 7B90 8FD2B7 <CJK>
+8FD2B8 7B91 8FD2B8 <CJK>
+8FD2B9 7B96 8FD2B9 <CJK>
+8FD2BA 7B9B 8FD2BA <CJK>
+8FD2BB 7B9E 8FD2BB <CJK>
+8FD2BC 7BA0 8FD2BC <CJK>
+8FD2BD 7BA5 8FD2BD <CJK>
+8FD2BE 7BAC 8FD2BE <CJK>
+8FD2BF 7BAF 8FD2BF <CJK>
+8FD2C0 7BB0 8FD2C0 <CJK>
+8FD2C1 7BB2 8FD2C1 <CJK>
+8FD2C2 7BB5 8FD2C2 <CJK>
+8FD2C3 7BB6 8FD2C3 <CJK>
+8FD2C4 7BBA 8FD2C4 <CJK>
+8FD2C5 7BBB 8FD2C5 <CJK>
+8FD2C6 7BBC 8FD2C6 <CJK>
+8FD2C7 7BBD 8FD2C7 <CJK>
+8FD2C8 7BC2 8FD2C8 <CJK>
+8FD2C9 7BC5 8FD2C9 <CJK>
+8FD2CA 7BC8 8FD2CA <CJK>
+8FD2CB 7BCA 8FD2CB <CJK>
+8FD2CC 7BD4 8FD2CC <CJK>
+8FD2CD 7BD6 8FD2CD <CJK>
+8FD2CE 7BD7 8FD2CE <CJK>
+8FD2CF 7BD9 8FD2CF <CJK>
+8FD2D0 7BDA 8FD2D0 <CJK>
+8FD2D1 7BDB 8FD2D1 <CJK>
+8FD2D2 7BE8 8FD2D2 <CJK>
+8FD2D3 7BEA 8FD2D3 <CJK>
+8FD2D4 7BF2 8FD2D4 <CJK>
+8FD2D5 7BF4 8FD2D5 <CJK>
+8FD2D6 7BF5 8FD2D6 <CJK>
+8FD2D7 7BF8 8FD2D7 <CJK>
+8FD2D8 7BF9 8FD2D8 <CJK>
+8FD2D9 7BFA 8FD2D9 <CJK>
+8FD2DA 7BFC 8FD2DA <CJK>
+8FD2DB 7BFE 8FD2DB <CJK>
+8FD2DC 7C01 8FD2DC <CJK>
+8FD2DD 7C02 8FD2DD <CJK>
+8FD2DE 7C03 8FD2DE <CJK>
+8FD2DF 7C04 8FD2DF <CJK>
+8FD2E0 7C06 8FD2E0 <CJK>
+8FD2E1 7C09 8FD2E1 <CJK>
+8FD2E2 7C0B 8FD2E2 <CJK>
+8FD2E3 7C0C 8FD2E3 <CJK>
+8FD2E4 7C0E 8FD2E4 <CJK>
+8FD2E5 7C0F 8FD2E5 <CJK>
+8FD2E6 7C19 8FD2E6 <CJK>
+8FD2E7 7C1B 8FD2E7 <CJK>
+8FD2E8 7C20 8FD2E8 <CJK>
+8FD2E9 7C25 8FD2E9 <CJK>
+8FD2EA 7C26 8FD2EA <CJK>
+8FD2EB 7C28 8FD2EB <CJK>
+8FD2EC 7C2C 8FD2EC <CJK>
+8FD2ED 7C31 8FD2ED <CJK>
+8FD2EE 7C33 8FD2EE <CJK>
+8FD2EF 7C34 8FD2EF <CJK>
+8FD2F0 7C36 8FD2F0 <CJK>
+8FD2F1 7C39 8FD2F1 <CJK>
+8FD2F2 7C3A 8FD2F2 <CJK>
+8FD2F3 7C46 8FD2F3 <CJK>
+8FD2F4 7C4A 8FD2F4 <CJK>
+8FD2F5 7C55 8FD2F5 <CJK>
+8FD2F6 7C51 8FD2F6 <CJK>
+8FD2F7 7C52 8FD2F7 <CJK>
+8FD2F8 7C53 8FD2F8 <CJK>
+8FD2F9 7C59 8FD2F9 <CJK>
+8FD2FA 7C5A 8FD2FA <CJK>
+8FD2FB 7C5B 8FD2FB <CJK>
+8FD2FC 7C5C 8FD2FC <CJK>
+8FD2FD 7C5D 8FD2FD <CJK>
+8FD2FE 7C5E 8FD2FE <CJK>
+8FD3A1 7C61 8FD3A1 <CJK>
+8FD3A2 7C63 8FD3A2 <CJK>
+8FD3A3 7C67 8FD3A3 <CJK>
+8FD3A4 7C69 8FD3A4 <CJK>
+8FD3A5 7C6D 8FD3A5 <CJK>
+8FD3A6 7C6E 8FD3A6 <CJK>
+8FD3A7 7C70 8FD3A7 <CJK>
+8FD3A8 7C72 8FD3A8 <CJK>
+8FD3A9 7C79 8FD3A9 <CJK>
+8FD3AA 7C7C 8FD3AA <CJK>
+8FD3AB 7C7D 8FD3AB <CJK>
+8FD3AC 7C86 8FD3AC <CJK>
+8FD3AD 7C87 8FD3AD <CJK>
+8FD3AE 7C8F 8FD3AE <CJK>
+8FD3AF 7C94 8FD3AF <CJK>
+8FD3B0 7C9E 8FD3B0 <CJK>
+8FD3B1 7CA0 8FD3B1 <CJK>
+8FD3B2 7CA6 8FD3B2 <CJK>
+8FD3B3 7CB0 8FD3B3 <CJK>
+8FD3B4 7CB6 8FD3B4 <CJK>
+8FD3B5 7CB7 8FD3B5 <CJK>
+8FD3B6 7CBA 8FD3B6 <CJK>
+8FD3B7 7CBB 8FD3B7 <CJK>
+8FD3B8 7CBC 8FD3B8 <CJK>
+8FD3B9 7CBF 8FD3B9 <CJK>
+8FD3BA 7CC4 8FD3BA <CJK>
+8FD3BB 7CC7 8FD3BB <CJK>
+8FD3BC 7CC8 8FD3BC <CJK>
+8FD3BD 7CC9 8FD3BD <CJK>
+8FD3BE 7CCD 8FD3BE <CJK>
+8FD3BF 7CCF 8FD3BF <CJK>
+8FD3C0 7CD3 8FD3C0 <CJK>
+8FD3C1 7CD4 8FD3C1 <CJK>
+8FD3C2 7CD5 8FD3C2 <CJK>
+8FD3C3 7CD7 8FD3C3 <CJK>
+8FD3C4 7CD9 8FD3C4 <CJK>
+8FD3C5 7CDA 8FD3C5 <CJK>
+8FD3C6 7CDD 8FD3C6 <CJK>
+8FD3C7 7CE6 8FD3C7 <CJK>
+8FD3C8 7CE9 8FD3C8 <CJK>
+8FD3C9 7CEB 8FD3C9 <CJK>
+8FD3CA 7CF5 8FD3CA <CJK>
+8FD3CB 7D03 8FD3CB <CJK>
+8FD3CC 7D07 8FD3CC <CJK>
+8FD3CD 7D08 8FD3CD <CJK>
+8FD3CE 7D09 8FD3CE <CJK>
+8FD3CF 7D0F 8FD3CF <CJK>
+8FD3D0 7D11 8FD3D0 <CJK>
+8FD3D1 7D12 8FD3D1 <CJK>
+8FD3D2 7D13 8FD3D2 <CJK>
+8FD3D3 7D16 8FD3D3 <CJK>
+8FD3D4 7D1D 8FD3D4 <CJK>
+8FD3D5 7D1E 8FD3D5 <CJK>
+8FD3D6 7D23 8FD3D6 <CJK>
+8FD3D7 7D26 8FD3D7 <CJK>
+8FD3D8 7D2A 8FD3D8 <CJK>
+8FD3D9 7D2D 8FD3D9 <CJK>
+8FD3DA 7D31 8FD3DA <CJK>
+8FD3DB 7D3C 8FD3DB <CJK>
+8FD3DC 7D3D 8FD3DC <CJK>
+8FD3DD 7D3E 8FD3DD <CJK>
+8FD3DE 7D40 8FD3DE <CJK>
+8FD3DF 7D41 8FD3DF <CJK>
+8FD3E0 7D47 8FD3E0 <CJK>
+8FD3E1 7D48 8FD3E1 <CJK>
+8FD3E2 7D4D 8FD3E2 <CJK>
+8FD3E3 7D51 8FD3E3 <CJK>
+8FD3E4 7D53 8FD3E4 <CJK>
+8FD3E5 7D57 8FD3E5 <CJK>
+8FD3E6 7D59 8FD3E6 <CJK>
+8FD3E7 7D5A 8FD3E7 <CJK>
+8FD3E8 7D5C 8FD3E8 <CJK>
+8FD3E9 7D5D 8FD3E9 <CJK>
+8FD3EA 7D65 8FD3EA <CJK>
+8FD3EB 7D67 8FD3EB <CJK>
+8FD3EC 7D6A 8FD3EC <CJK>
+8FD3ED 7D70 8FD3ED <CJK>
+8FD3EE 7D78 8FD3EE <CJK>
+8FD3EF 7D7A 8FD3EF <CJK>
+8FD3F0 7D7B 8FD3F0 <CJK>
+8FD3F1 7D7F 8FD3F1 <CJK>
+8FD3F2 7D81 8FD3F2 <CJK>
+8FD3F3 7D82 8FD3F3 <CJK>
+8FD3F4 7D83 8FD3F4 <CJK>
+8FD3F5 7D85 8FD3F5 <CJK>
+8FD3F6 7D86 8FD3F6 <CJK>
+8FD3F7 7D88 8FD3F7 <CJK>
+8FD3F8 7D8B 8FD3F8 <CJK>
+8FD3F9 7D8C 8FD3F9 <CJK>
+8FD3FA 7D8D 8FD3FA <CJK>
+8FD3FB 7D91 8FD3FB <CJK>
+8FD3FC 7D96 8FD3FC <CJK>
+8FD3FD 7D97 8FD3FD <CJK>
+8FD3FE 7D9D 8FD3FE <CJK>
+8FD4A1 7D9E 8FD4A1 <CJK>
+8FD4A2 7DA6 8FD4A2 <CJK>
+8FD4A3 7DA7 8FD4A3 <CJK>
+8FD4A4 7DAA 8FD4A4 <CJK>
+8FD4A5 7DB3 8FD4A5 <CJK>
+8FD4A6 7DB6 8FD4A6 <CJK>
+8FD4A7 7DB7 8FD4A7 <CJK>
+8FD4A8 7DB9 8FD4A8 <CJK>
+8FD4A9 7DC2 8FD4A9 <CJK>
+8FD4AA 7DC3 8FD4AA <CJK>
+8FD4AB 7DC4 8FD4AB <CJK>
+8FD4AC 7DC5 8FD4AC <CJK>
+8FD4AD 7DC6 8FD4AD <CJK>
+8FD4AE 7DCC 8FD4AE <CJK>
+8FD4AF 7DCD 8FD4AF <CJK>
+8FD4B0 7DCE 8FD4B0 <CJK>
+8FD4B1 7DD7 8FD4B1 <CJK>
+8FD4B2 7DD9 8FD4B2 <CJK>
+8FD4B3 7E00 8FD4B3 <CJK>
+8FD4B4 7DE2 8FD4B4 <CJK>
+8FD4B5 7DE5 8FD4B5 <CJK>
+8FD4B6 7DE6 8FD4B6 <CJK>
+8FD4B7 7DEA 8FD4B7 <CJK>
+8FD4B8 7DEB 8FD4B8 <CJK>
+8FD4B9 7DED 8FD4B9 <CJK>
+8FD4BA 7DF1 8FD4BA <CJK>
+8FD4BB 7DF5 8FD4BB <CJK>
+8FD4BC 7DF6 8FD4BC <CJK>
+8FD4BD 7DF9 8FD4BD <CJK>
+8FD4BE 7DFA 8FD4BE <CJK>
+8FD4BF 7E08 8FD4BF <CJK>
+8FD4C0 7E10 8FD4C0 <CJK>
+8FD4C1 7E11 8FD4C1 <CJK>
+8FD4C2 7E15 8FD4C2 <CJK>
+8FD4C3 7E17 8FD4C3 <CJK>
+8FD4C4 7E1C 8FD4C4 <CJK>
+8FD4C5 7E1D 8FD4C5 <CJK>
+8FD4C6 7E20 8FD4C6 <CJK>
+8FD4C7 7E27 8FD4C7 <CJK>
+8FD4C8 7E28 8FD4C8 <CJK>
+8FD4C9 7E2C 8FD4C9 <CJK>
+8FD4CA 7E2D 8FD4CA <CJK>
+8FD4CB 7E2F 8FD4CB <CJK>
+8FD4CC 7E33 8FD4CC <CJK>
+8FD4CD 7E36 8FD4CD <CJK>
+8FD4CE 7E3F 8FD4CE <CJK>
+8FD4CF 7E44 8FD4CF <CJK>
+8FD4D0 7E45 8FD4D0 <CJK>
+8FD4D1 7E47 8FD4D1 <CJK>
+8FD4D2 7E4E 8FD4D2 <CJK>
+8FD4D3 7E50 8FD4D3 <CJK>
+8FD4D4 7E52 8FD4D4 <CJK>
+8FD4D5 7E58 8FD4D5 <CJK>
+8FD4D6 7E5F 8FD4D6 <CJK>
+8FD4D7 7E61 8FD4D7 <CJK>
+8FD4D8 7E62 8FD4D8 <CJK>
+8FD4D9 7E65 8FD4D9 <CJK>
+8FD4DA 7E6B 8FD4DA <CJK>
+8FD4DB 7E6E 8FD4DB <CJK>
+8FD4DC 7E6F 8FD4DC <CJK>
+8FD4DD 7E73 8FD4DD <CJK>
+8FD4DE 7E78 8FD4DE <CJK>
+8FD4DF 7E7E 8FD4DF <CJK>
+8FD4E0 7E81 8FD4E0 <CJK>
+8FD4E1 7E86 8FD4E1 <CJK>
+8FD4E2 7E87 8FD4E2 <CJK>
+8FD4E3 7E8A 8FD4E3 <CJK>
+8FD4E4 7E8D 8FD4E4 <CJK>
+8FD4E5 7E91 8FD4E5 <CJK>
+8FD4E6 7E95 8FD4E6 <CJK>
+8FD4E7 7E98 8FD4E7 <CJK>
+8FD4E8 7E9A 8FD4E8 <CJK>
+8FD4E9 7E9D 8FD4E9 <CJK>
+8FD4EA 7E9E 8FD4EA <CJK>
+8FD4EB 7F3C 8FD4EB <CJK>
+8FD4EC 7F3B 8FD4EC <CJK>
+8FD4ED 7F3D 8FD4ED <CJK>
+8FD4EE 7F3E 8FD4EE <CJK>
+8FD4EF 7F3F 8FD4EF <CJK>
+8FD4F0 7F43 8FD4F0 <CJK>
+8FD4F1 7F44 8FD4F1 <CJK>
+8FD4F2 7F47 8FD4F2 <CJK>
+8FD4F3 7F4F 8FD4F3 <CJK>
+8FD4F4 7F52 8FD4F4 <CJK>
+8FD4F5 7F53 8FD4F5 <CJK>
+8FD4F6 7F5B 8FD4F6 <CJK>
+8FD4F7 7F5C 8FD4F7 <CJK>
+8FD4F8 7F5D 8FD4F8 <CJK>
+8FD4F9 7F61 8FD4F9 <CJK>
+8FD4FA 7F63 8FD4FA <CJK>
+8FD4FB 7F64 8FD4FB <CJK>
+8FD4FC 7F65 8FD4FC <CJK>
+8FD4FD 7F66 8FD4FD <CJK>
+8FD4FE 7F6D 8FD4FE <CJK>
+8FD5A1 7F71 8FD5A1 <CJK>
+8FD5A2 7F7D 8FD5A2 <CJK>
+8FD5A3 7F7E 8FD5A3 <CJK>
+8FD5A4 7F7F 8FD5A4 <CJK>
+8FD5A5 7F80 8FD5A5 <CJK>
+8FD5A6 7F8B 8FD5A6 <CJK>
+8FD5A7 7F8D 8FD5A7 <CJK>
+8FD5A8 7F8F 8FD5A8 <CJK>
+8FD5A9 7F90 8FD5A9 <CJK>
+8FD5AA 7F91 8FD5AA <CJK>
+8FD5AB 7F96 8FD5AB <CJK>
+8FD5AC 7F97 8FD5AC <CJK>
+8FD5AD 7F9C 8FD5AD <CJK>
+8FD5AE 7FA1 8FD5AE <CJK>
+8FD5AF 7FA2 8FD5AF <CJK>
+8FD5B0 7FA6 8FD5B0 <CJK>
+8FD5B1 7FAA 8FD5B1 <CJK>
+8FD5B2 7FAD 8FD5B2 <CJK>
+8FD5B3 7FB4 8FD5B3 <CJK>
+8FD5B4 7FBC 8FD5B4 <CJK>
+8FD5B5 7FBF 8FD5B5 <CJK>
+8FD5B6 7FC0 8FD5B6 <CJK>
+8FD5B7 7FC3 8FD5B7 <CJK>
+8FD5B8 7FC8 8FD5B8 <CJK>
+8FD5B9 7FCE 8FD5B9 <CJK>
+8FD5BA 7FCF 8FD5BA <CJK>
+8FD5BB 7FDB 8FD5BB <CJK>
+8FD5BC 7FDF 8FD5BC <CJK>
+8FD5BD 7FE3 8FD5BD <CJK>
+8FD5BE 7FE5 8FD5BE <CJK>
+8FD5BF 7FE8 8FD5BF <CJK>
+8FD5C0 7FEC 8FD5C0 <CJK>
+8FD5C1 7FEE 8FD5C1 <CJK>
+8FD5C2 7FEF 8FD5C2 <CJK>
+8FD5C3 7FF2 8FD5C3 <CJK>
+8FD5C4 7FFA 8FD5C4 <CJK>
+8FD5C5 7FFD 8FD5C5 <CJK>
+8FD5C6 7FFE 8FD5C6 <CJK>
+8FD5C7 7FFF 8FD5C7 <CJK>
+8FD5C8 8007 8FD5C8 <CJK>
+8FD5C9 8008 8FD5C9 <CJK>
+8FD5CA 800A 8FD5CA <CJK>
+8FD5CB 800D 8FD5CB <CJK>
+8FD5CC 800E 8FD5CC <CJK>
+8FD5CD 800F 8FD5CD <CJK>
+8FD5CE 8011 8FD5CE <CJK>
+8FD5CF 8013 8FD5CF <CJK>
+8FD5D0 8014 8FD5D0 <CJK>
+8FD5D1 8016 8FD5D1 <CJK>
+8FD5D2 801D 8FD5D2 <CJK>
+8FD5D3 801E 8FD5D3 <CJK>
+8FD5D4 801F 8FD5D4 <CJK>
+8FD5D5 8020 8FD5D5 <CJK>
+8FD5D6 8024 8FD5D6 <CJK>
+8FD5D7 8026 8FD5D7 <CJK>
+8FD5D8 802C 8FD5D8 <CJK>
+8FD5D9 802E 8FD5D9 <CJK>
+8FD5DA 8030 8FD5DA <CJK>
+8FD5DB 8034 8FD5DB <CJK>
+8FD5DC 8035 8FD5DC <CJK>
+8FD5DD 8037 8FD5DD <CJK>
+8FD5DE 8039 8FD5DE <CJK>
+8FD5DF 803A 8FD5DF <CJK>
+8FD5E0 803C 8FD5E0 <CJK>
+8FD5E1 803E 8FD5E1 <CJK>
+8FD5E2 8040 8FD5E2 <CJK>
+8FD5E3 8044 8FD5E3 <CJK>
+8FD5E4 8060 8FD5E4 <CJK>
+8FD5E5 8064 8FD5E5 <CJK>
+8FD5E6 8066 8FD5E6 <CJK>
+8FD5E7 806D 8FD5E7 <CJK>
+8FD5E8 8071 8FD5E8 <CJK>
+8FD5E9 8075 8FD5E9 <CJK>
+8FD5EA 8081 8FD5EA <CJK>
+8FD5EB 8088 8FD5EB <CJK>
+8FD5EC 808E 8FD5EC <CJK>
+8FD5ED 809C 8FD5ED <CJK>
+8FD5EE 809E 8FD5EE <CJK>
+8FD5EF 80A6 8FD5EF <CJK>
+8FD5F0 80A7 8FD5F0 <CJK>
+8FD5F1 80AB 8FD5F1 <CJK>
+8FD5F2 80B8 8FD5F2 <CJK>
+8FD5F3 80B9 8FD5F3 <CJK>
+8FD5F4 80C8 8FD5F4 <CJK>
+8FD5F5 80CD 8FD5F5 <CJK>
+8FD5F6 80CF 8FD5F6 <CJK>
+8FD5F7 80D2 8FD5F7 <CJK>
+8FD5F8 80D4 8FD5F8 <CJK>
+8FD5F9 80D5 8FD5F9 <CJK>
+8FD5FA 80D7 8FD5FA <CJK>
+8FD5FB 80D8 8FD5FB <CJK>
+8FD5FC 80E0 8FD5FC <CJK>
+8FD5FD 80ED 8FD5FD <CJK>
+8FD5FE 80EE 8FD5FE <CJK>
+8FD6A1 80F0 8FD6A1 <CJK>
+8FD6A2 80F2 8FD6A2 <CJK>
+8FD6A3 80F3 8FD6A3 <CJK>
+8FD6A4 80F6 8FD6A4 <CJK>
+8FD6A5 80F9 8FD6A5 <CJK>
+8FD6A6 80FA 8FD6A6 <CJK>
+8FD6A7 80FE 8FD6A7 <CJK>
+8FD6A8 8103 8FD6A8 <CJK>
+8FD6A9 810B 8FD6A9 <CJK>
+8FD6AA 8116 8FD6AA <CJK>
+8FD6AB 8117 8FD6AB <CJK>
+8FD6AC 8118 8FD6AC <CJK>
+8FD6AD 811C 8FD6AD <CJK>
+8FD6AE 811E 8FD6AE <CJK>
+8FD6AF 8120 8FD6AF <CJK>
+8FD6B0 8124 8FD6B0 <CJK>
+8FD6B1 8127 8FD6B1 <CJK>
+8FD6B2 812C 8FD6B2 <CJK>
+8FD6B3 8130 8FD6B3 <CJK>
+8FD6B4 8135 8FD6B4 <CJK>
+8FD6B5 813A 8FD6B5 <CJK>
+8FD6B6 813C 8FD6B6 <CJK>
+8FD6B7 8145 8FD6B7 <CJK>
+8FD6B8 8147 8FD6B8 <CJK>
+8FD6B9 814A 8FD6B9 <CJK>
+8FD6BA 814C 8FD6BA <CJK>
+8FD6BB 8152 8FD6BB <CJK>
+8FD6BC 8157 8FD6BC <CJK>
+8FD6BD 8160 8FD6BD <CJK>
+8FD6BE 8161 8FD6BE <CJK>
+8FD6BF 8167 8FD6BF <CJK>
+8FD6C0 8168 8FD6C0 <CJK>
+8FD6C1 8169 8FD6C1 <CJK>
+8FD6C2 816D 8FD6C2 <CJK>
+8FD6C3 816F 8FD6C3 <CJK>
+8FD6C4 8177 8FD6C4 <CJK>
+8FD6C5 8181 8FD6C5 <CJK>
+8FD6C6 8190 8FD6C6 <CJK>
+8FD6C7 8184 8FD6C7 <CJK>
+8FD6C8 8185 8FD6C8 <CJK>
+8FD6C9 8186 8FD6C9 <CJK>
+8FD6CA 818B 8FD6CA <CJK>
+8FD6CB 818E 8FD6CB <CJK>
+8FD6CC 8196 8FD6CC <CJK>
+8FD6CD 8198 8FD6CD <CJK>
+8FD6CE 819B 8FD6CE <CJK>
+8FD6CF 819E 8FD6CF <CJK>
+8FD6D0 81A2 8FD6D0 <CJK>
+8FD6D1 81AE 8FD6D1 <CJK>
+8FD6D2 81B2 8FD6D2 <CJK>
+8FD6D3 81B4 8FD6D3 <CJK>
+8FD6D4 81BB 8FD6D4 <CJK>
+8FD6D5 81CB 8FD6D5 <CJK>
+8FD6D6 81C3 8FD6D6 <CJK>
+8FD6D7 81C5 8FD6D7 <CJK>
+8FD6D8 81CA 8FD6D8 <CJK>
+8FD6D9 81CE 8FD6D9 <CJK>
+8FD6DA 81CF 8FD6DA <CJK>
+8FD6DB 81D5 8FD6DB <CJK>
+8FD6DC 81D7 8FD6DC <CJK>
+8FD6DD 81DB 8FD6DD <CJK>
+8FD6DE 81DD 8FD6DE <CJK>
+8FD6DF 81DE 8FD6DF <CJK>
+8FD6E0 81E1 8FD6E0 <CJK>
+8FD6E1 81E4 8FD6E1 <CJK>
+8FD6E2 81EB 8FD6E2 <CJK>
+8FD6E3 81EC 8FD6E3 <CJK>
+8FD6E4 81F0 8FD6E4 <CJK>
+8FD6E5 81F1 8FD6E5 <CJK>
+8FD6E6 81F2 8FD6E6 <CJK>
+8FD6E7 81F5 8FD6E7 <CJK>
+8FD6E8 81F6 8FD6E8 <CJK>
+8FD6E9 81F8 8FD6E9 <CJK>
+8FD6EA 81F9 8FD6EA <CJK>
+8FD6EB 81FD 8FD6EB <CJK>
+8FD6EC 81FF 8FD6EC <CJK>
+8FD6ED 8200 8FD6ED <CJK>
+8FD6EE 8203 8FD6EE <CJK>
+8FD6EF 820F 8FD6EF <CJK>
+8FD6F0 8213 8FD6F0 <CJK>
+8FD6F1 8214 8FD6F1 <CJK>
+8FD6F2 8219 8FD6F2 <CJK>
+8FD6F3 821A 8FD6F3 <CJK>
+8FD6F4 821D 8FD6F4 <CJK>
+8FD6F5 8221 8FD6F5 <CJK>
+8FD6F6 8222 8FD6F6 <CJK>
+8FD6F7 8228 8FD6F7 <CJK>
+8FD6F8 8232 8FD6F8 <CJK>
+8FD6F9 8234 8FD6F9 <CJK>
+8FD6FA 823A 8FD6FA <CJK>
+8FD6FB 8243 8FD6FB <CJK>
+8FD6FC 8244 8FD6FC <CJK>
+8FD6FD 8245 8FD6FD <CJK>
+8FD6FE 8246 8FD6FE <CJK>
+8FD7A1 824B 8FD7A1 <CJK>
+8FD7A2 824E 8FD7A2 <CJK>
+8FD7A3 824F 8FD7A3 <CJK>
+8FD7A4 8251 8FD7A4 <CJK>
+8FD7A5 8256 8FD7A5 <CJK>
+8FD7A6 825C 8FD7A6 <CJK>
+8FD7A7 8260 8FD7A7 <CJK>
+8FD7A8 8263 8FD7A8 <CJK>
+8FD7A9 8267 8FD7A9 <CJK>
+8FD7AA 826D 8FD7AA <CJK>
+8FD7AB 8274 8FD7AB <CJK>
+8FD7AC 827B 8FD7AC <CJK>
+8FD7AD 827D 8FD7AD <CJK>
+8FD7AE 827F 8FD7AE <CJK>
+8FD7AF 8280 8FD7AF <CJK>
+8FD7B0 8281 8FD7B0 <CJK>
+8FD7B1 8283 8FD7B1 <CJK>
+8FD7B2 8284 8FD7B2 <CJK>
+8FD7B3 8287 8FD7B3 <CJK>
+8FD7B4 8289 8FD7B4 <CJK>
+8FD7B5 828A 8FD7B5 <CJK>
+8FD7B6 828E 8FD7B6 <CJK>
+8FD7B7 8291 8FD7B7 <CJK>
+8FD7B8 8294 8FD7B8 <CJK>
+8FD7B9 8296 8FD7B9 <CJK>
+8FD7BA 8298 8FD7BA <CJK>
+8FD7BB 829A 8FD7BB <CJK>
+8FD7BC 829B 8FD7BC <CJK>
+8FD7BD 82A0 8FD7BD <CJK>
+8FD7BE 82A1 8FD7BE <CJK>
+8FD7BF 82A3 8FD7BF <CJK>
+8FD7C0 82A4 8FD7C0 <CJK>
+8FD7C1 82A7 8FD7C1 <CJK>
+8FD7C2 82A8 8FD7C2 <CJK>
+8FD7C3 82A9 8FD7C3 <CJK>
+8FD7C4 82AA 8FD7C4 <CJK>
+8FD7C5 82AE 8FD7C5 <CJK>
+8FD7C6 82B0 8FD7C6 <CJK>
+8FD7C7 82B2 8FD7C7 <CJK>
+8FD7C8 82B4 8FD7C8 <CJK>
+8FD7C9 82B7 8FD7C9 <CJK>
+8FD7CA 82BA 8FD7CA <CJK>
+8FD7CB 82BC 8FD7CB <CJK>
+8FD7CC 82BE 8FD7CC <CJK>
+8FD7CD 82BF 8FD7CD <CJK>
+8FD7CE 82C6 8FD7CE <CJK>
+8FD7CF 82D0 8FD7CF <CJK>
+8FD7D0 82D5 8FD7D0 <CJK>
+8FD7D1 82DA 8FD7D1 <CJK>
+8FD7D2 82E0 8FD7D2 <CJK>
+8FD7D3 82E2 8FD7D3 <CJK>
+8FD7D4 82E4 8FD7D4 <CJK>
+8FD7D5 82E8 8FD7D5 <CJK>
+8FD7D6 82EA 8FD7D6 <CJK>
+8FD7D7 82ED 8FD7D7 <CJK>
+8FD7D8 82EF 8FD7D8 <CJK>
+8FD7D9 82F6 8FD7D9 <CJK>
+8FD7DA 82F7 8FD7DA <CJK>
+8FD7DB 82FD 8FD7DB <CJK>
+8FD7DC 82FE 8FD7DC <CJK>
+8FD7DD 8300 8FD7DD <CJK>
+8FD7DE 8301 8FD7DE <CJK>
+8FD7DF 8307 8FD7DF <CJK>
+8FD7E0 8308 8FD7E0 <CJK>
+8FD7E1 830A 8FD7E1 <CJK>
+8FD7E2 830B 8FD7E2 <CJK>
+8FD7E3 8354 8FD7E3 <CJK>
+8FD7E4 831B 8FD7E4 <CJK>
+8FD7E5 831D 8FD7E5 <CJK>
+8FD7E6 831E 8FD7E6 <CJK>
+8FD7E7 831F 8FD7E7 <CJK>
+8FD7E8 8321 8FD7E8 <CJK>
+8FD7E9 8322 8FD7E9 <CJK>
+8FD7EA 832C 8FD7EA <CJK>
+8FD7EB 832D 8FD7EB <CJK>
+8FD7EC 832E 8FD7EC <CJK>
+8FD7ED 8330 8FD7ED <CJK>
+8FD7EE 8333 8FD7EE <CJK>
+8FD7EF 8337 8FD7EF <CJK>
+8FD7F0 833A 8FD7F0 <CJK>
+8FD7F1 833C 8FD7F1 <CJK>
+8FD7F2 833D 8FD7F2 <CJK>
+8FD7F3 8342 8FD7F3 <CJK>
+8FD7F4 8343 8FD7F4 <CJK>
+8FD7F5 8344 8FD7F5 <CJK>
+8FD7F6 8347 8FD7F6 <CJK>
+8FD7F7 834D 8FD7F7 <CJK>
+8FD7F8 834E 8FD7F8 <CJK>
+8FD7F9 8351 8FD7F9 <CJK>
+8FD7FA 8355 8FD7FA <CJK>
+8FD7FB 8356 8FD7FB <CJK>
+8FD7FC 8357 8FD7FC <CJK>
+8FD7FD 8370 8FD7FD <CJK>
+8FD7FE 8378 8FD7FE <CJK>
+8FD8A1 837D 8FD8A1 <CJK>
+8FD8A2 837F 8FD8A2 <CJK>
+8FD8A3 8380 8FD8A3 <CJK>
+8FD8A4 8382 8FD8A4 <CJK>
+8FD8A5 8384 8FD8A5 <CJK>
+8FD8A6 8386 8FD8A6 <CJK>
+8FD8A7 838D 8FD8A7 <CJK>
+8FD8A8 8392 8FD8A8 <CJK>
+8FD8A9 8394 8FD8A9 <CJK>
+8FD8AA 8395 8FD8AA <CJK>
+8FD8AB 8398 8FD8AB <CJK>
+8FD8AC 8399 8FD8AC <CJK>
+8FD8AD 839B 8FD8AD <CJK>
+8FD8AE 839C 8FD8AE <CJK>
+8FD8AF 839D 8FD8AF <CJK>
+8FD8B0 83A6 8FD8B0 <CJK>
+8FD8B1 83A7 8FD8B1 <CJK>
+8FD8B2 83A9 8FD8B2 <CJK>
+8FD8B3 83AC 8FD8B3 <CJK>
+8FD8B4 83BE 8FD8B4 <CJK>
+8FD8B5 83BF 8FD8B5 <CJK>
+8FD8B6 83C0 8FD8B6 <CJK>
+8FD8B7 83C7 8FD8B7 <CJK>
+8FD8B8 83C9 8FD8B8 <CJK>
+8FD8B9 83CF 8FD8B9 <CJK>
+8FD8BA 83D0 8FD8BA <CJK>
+8FD8BB 83D1 8FD8BB <CJK>
+8FD8BC 83D4 8FD8BC <CJK>
+8FD8BD 83DD 8FD8BD <CJK>
+8FD8BE 8353 8FD8BE <CJK>
+8FD8BF 83E8 8FD8BF <CJK>
+8FD8C0 83EA 8FD8C0 <CJK>
+8FD8C1 83F6 8FD8C1 <CJK>
+8FD8C2 83F8 8FD8C2 <CJK>
+8FD8C3 83F9 8FD8C3 <CJK>
+8FD8C4 83FC 8FD8C4 <CJK>
+8FD8C5 8401 8FD8C5 <CJK>
+8FD8C6 8406 8FD8C6 <CJK>
+8FD8C7 840A 8FD8C7 <CJK>
+8FD8C8 840F 8FD8C8 <CJK>
+8FD8C9 8411 8FD8C9 <CJK>
+8FD8CA 8415 8FD8CA <CJK>
+8FD8CB 8419 8FD8CB <CJK>
+8FD8CC 83AD 8FD8CC <CJK>
+8FD8CD 842F 8FD8CD <CJK>
+8FD8CE 8439 8FD8CE <CJK>
+8FD8CF 8445 8FD8CF <CJK>
+8FD8D0 8447 8FD8D0 <CJK>
+8FD8D1 8448 8FD8D1 <CJK>
+8FD8D2 844A 8FD8D2 <CJK>
+8FD8D3 844D 8FD8D3 <CJK>
+8FD8D4 844F 8FD8D4 <CJK>
+8FD8D5 8451 8FD8D5 <CJK>
+8FD8D6 8452 8FD8D6 <CJK>
+8FD8D7 8456 8FD8D7 <CJK>
+8FD8D8 8458 8FD8D8 <CJK>
+8FD8D9 8459 8FD8D9 <CJK>
+8FD8DA 845A 8FD8DA <CJK>
+8FD8DB 845C 8FD8DB <CJK>
+8FD8DC 8460 8FD8DC <CJK>
+8FD8DD 8464 8FD8DD <CJK>
+8FD8DE 8465 8FD8DE <CJK>
+8FD8DF 8467 8FD8DF <CJK>
+8FD8E0 846A 8FD8E0 <CJK>
+8FD8E1 8470 8FD8E1 <CJK>
+8FD8E2 8473 8FD8E2 <CJK>
+8FD8E3 8474 8FD8E3 <CJK>
+8FD8E4 8476 8FD8E4 <CJK>
+8FD8E5 8478 8FD8E5 <CJK>
+8FD8E6 847C 8FD8E6 <CJK>
+8FD8E7 847D 8FD8E7 <CJK>
+8FD8E8 8481 8FD8E8 <CJK>
+8FD8E9 8485 8FD8E9 <CJK>
+8FD8EA 8492 8FD8EA <CJK>
+8FD8EB 8493 8FD8EB <CJK>
+8FD8EC 8495 8FD8EC <CJK>
+8FD8ED 849E 8FD8ED <CJK>
+8FD8EE 84A6 8FD8EE <CJK>
+8FD8EF 84A8 8FD8EF <CJK>
+8FD8F0 84A9 8FD8F0 <CJK>
+8FD8F1 84AA 8FD8F1 <CJK>
+8FD8F2 84AF 8FD8F2 <CJK>
+8FD8F3 84B1 8FD8F3 <CJK>
+8FD8F4 84B4 8FD8F4 <CJK>
+8FD8F5 84BA 8FD8F5 <CJK>
+8FD8F6 84BD 8FD8F6 <CJK>
+8FD8F7 84BE 8FD8F7 <CJK>
+8FD8F8 84C0 8FD8F8 <CJK>
+8FD8F9 84C2 8FD8F9 <CJK>
+8FD8FA 84C7 8FD8FA <CJK>
+8FD8FB 84C8 8FD8FB <CJK>
+8FD8FC 84CC 8FD8FC <CJK>
+8FD8FD 84CF 8FD8FD <CJK>
+8FD8FE 84D3 8FD8FE <CJK>
+8FD9A1 84DC 8FD9A1 <CJK>
+8FD9A2 84E7 8FD9A2 <CJK>
+8FD9A3 84EA 8FD9A3 <CJK>
+8FD9A4 84EF 8FD9A4 <CJK>
+8FD9A5 84F0 8FD9A5 <CJK>
+8FD9A6 84F1 8FD9A6 <CJK>
+8FD9A7 84F2 8FD9A7 <CJK>
+8FD9A8 84F7 8FD9A8 <CJK>
+8FD9A9 8532 8FD9A9 <CJK>
+8FD9AA 84FA 8FD9AA <CJK>
+8FD9AB 84FB 8FD9AB <CJK>
+8FD9AC 84FD 8FD9AC <CJK>
+8FD9AD 8502 8FD9AD <CJK>
+8FD9AE 8503 8FD9AE <CJK>
+8FD9AF 8507 8FD9AF <CJK>
+8FD9B0 850C 8FD9B0 <CJK>
+8FD9B1 850E 8FD9B1 <CJK>
+8FD9B2 8510 8FD9B2 <CJK>
+8FD9B3 851C 8FD9B3 <CJK>
+8FD9B4 851E 8FD9B4 <CJK>
+8FD9B5 8522 8FD9B5 <CJK>
+8FD9B6 8523 8FD9B6 <CJK>
+8FD9B7 8524 8FD9B7 <CJK>
+8FD9B8 8525 8FD9B8 <CJK>
+8FD9B9 8527 8FD9B9 <CJK>
+8FD9BA 852A 8FD9BA <CJK>
+8FD9BB 852B 8FD9BB <CJK>
+8FD9BC 852F 8FD9BC <CJK>
+8FD9BD 8533 8FD9BD <CJK>
+8FD9BE 8534 8FD9BE <CJK>
+8FD9BF 8536 8FD9BF <CJK>
+8FD9C0 853F 8FD9C0 <CJK>
+8FD9C1 8546 8FD9C1 <CJK>
+8FD9C2 854F 8FD9C2 <CJK>
+8FD9C3 8550 8FD9C3 <CJK>
+8FD9C4 8551 8FD9C4 <CJK>
+8FD9C5 8552 8FD9C5 <CJK>
+8FD9C6 8553 8FD9C6 <CJK>
+8FD9C7 8556 8FD9C7 <CJK>
+8FD9C8 8559 8FD9C8 <CJK>
+8FD9C9 855C 8FD9C9 <CJK>
+8FD9CA 855D 8FD9CA <CJK>
+8FD9CB 855E 8FD9CB <CJK>
+8FD9CC 855F 8FD9CC <CJK>
+8FD9CD 8560 8FD9CD <CJK>
+8FD9CE 8561 8FD9CE <CJK>
+8FD9CF 8562 8FD9CF <CJK>
+8FD9D0 8564 8FD9D0 <CJK>
+8FD9D1 856B 8FD9D1 <CJK>
+8FD9D2 856F 8FD9D2 <CJK>
+8FD9D3 8579 8FD9D3 <CJK>
+8FD9D4 857A 8FD9D4 <CJK>
+8FD9D5 857B 8FD9D5 <CJK>
+8FD9D6 857D 8FD9D6 <CJK>
+8FD9D7 857F 8FD9D7 <CJK>
+8FD9D8 8581 8FD9D8 <CJK>
+8FD9D9 8585 8FD9D9 <CJK>
+8FD9DA 8586 8FD9DA <CJK>
+8FD9DB 8589 8FD9DB <CJK>
+8FD9DC 858B 8FD9DC <CJK>
+8FD9DD 858C 8FD9DD <CJK>
+8FD9DE 858F 8FD9DE <CJK>
+8FD9DF 8593 8FD9DF <CJK>
+8FD9E0 8598 8FD9E0 <CJK>
+8FD9E1 859D 8FD9E1 <CJK>
+8FD9E2 859F 8FD9E2 <CJK>
+8FD9E3 85A0 8FD9E3 <CJK>
+8FD9E4 85A2 8FD9E4 <CJK>
+8FD9E5 85A5 8FD9E5 <CJK>
+8FD9E6 85A7 8FD9E6 <CJK>
+8FD9E7 85B4 8FD9E7 <CJK>
+8FD9E8 85B6 8FD9E8 <CJK>
+8FD9E9 85B7 8FD9E9 <CJK>
+8FD9EA 85B8 8FD9EA <CJK>
+8FD9EB 85BC 8FD9EB <CJK>
+8FD9EC 85BD 8FD9EC <CJK>
+8FD9ED 85BE 8FD9ED <CJK>
+8FD9EE 85BF 8FD9EE <CJK>
+8FD9EF 85C2 8FD9EF <CJK>
+8FD9F0 85C7 8FD9F0 <CJK>
+8FD9F1 85CA 8FD9F1 <CJK>
+8FD9F2 85CB 8FD9F2 <CJK>
+8FD9F3 85CE 8FD9F3 <CJK>
+8FD9F4 85AD 8FD9F4 <CJK>
+8FD9F5 85D8 8FD9F5 <CJK>
+8FD9F6 85DA 8FD9F6 <CJK>
+8FD9F7 85DF 8FD9F7 <CJK>
+8FD9F8 85E0 8FD9F8 <CJK>
+8FD9F9 85E6 8FD9F9 <CJK>
+8FD9FA 85E8 8FD9FA <CJK>
+8FD9FB 85ED 8FD9FB <CJK>
+8FD9FC 85F3 8FD9FC <CJK>
+8FD9FD 85F6 8FD9FD <CJK>
+8FD9FE 85FC 8FD9FE <CJK>
+8FDAA1 85FF 8FDAA1 <CJK>
+8FDAA2 8600 8FDAA2 <CJK>
+8FDAA3 8604 8FDAA3 <CJK>
+8FDAA4 8605 8FDAA4 <CJK>
+8FDAA5 860D 8FDAA5 <CJK>
+8FDAA6 860E 8FDAA6 <CJK>
+8FDAA7 8610 8FDAA7 <CJK>
+8FDAA8 8611 8FDAA8 <CJK>
+8FDAA9 8612 8FDAA9 <CJK>
+8FDAAA 8618 8FDAAA <CJK>
+8FDAAB 8619 8FDAAB <CJK>
+8FDAAC 861B 8FDAAC <CJK>
+8FDAAD 861E 8FDAAD <CJK>
+8FDAAE 8621 8FDAAE <CJK>
+8FDAAF 8627 8FDAAF <CJK>
+8FDAB0 8629 8FDAB0 <CJK>
+8FDAB1 8636 8FDAB1 <CJK>
+8FDAB2 8638 8FDAB2 <CJK>
+8FDAB3 863A 8FDAB3 <CJK>
+8FDAB4 863C 8FDAB4 <CJK>
+8FDAB5 863D 8FDAB5 <CJK>
+8FDAB6 8640 8FDAB6 <CJK>
+8FDAB7 8642 8FDAB7 <CJK>
+8FDAB8 8646 8FDAB8 <CJK>
+8FDAB9 8652 8FDAB9 <CJK>
+8FDABA 8653 8FDABA <CJK>
+8FDABB 8656 8FDABB <CJK>
+8FDABC 8657 8FDABC <CJK>
+8FDABD 8658 8FDABD <CJK>
+8FDABE 8659 8FDABE <CJK>
+8FDABF 865D 8FDABF <CJK>
+8FDAC0 8660 8FDAC0 <CJK>
+8FDAC1 8661 8FDAC1 <CJK>
+8FDAC2 8662 8FDAC2 <CJK>
+8FDAC3 8663 8FDAC3 <CJK>
+8FDAC4 8664 8FDAC4 <CJK>
+8FDAC5 8669 8FDAC5 <CJK>
+8FDAC6 866C 8FDAC6 <CJK>
+8FDAC7 866F 8FDAC7 <CJK>
+8FDAC8 8675 8FDAC8 <CJK>
+8FDAC9 8676 8FDAC9 <CJK>
+8FDACA 8677 8FDACA <CJK>
+8FDACB 867A 8FDACB <CJK>
+8FDACC 868D 8FDACC <CJK>
+8FDACD 8691 8FDACD <CJK>
+8FDACE 8696 8FDACE <CJK>
+8FDACF 8698 8FDACF <CJK>
+8FDAD0 869A 8FDAD0 <CJK>
+8FDAD1 869C 8FDAD1 <CJK>
+8FDAD2 86A1 8FDAD2 <CJK>
+8FDAD3 86A6 8FDAD3 <CJK>
+8FDAD4 86A7 8FDAD4 <CJK>
+8FDAD5 86A8 8FDAD5 <CJK>
+8FDAD6 86AD 8FDAD6 <CJK>
+8FDAD7 86B1 8FDAD7 <CJK>
+8FDAD8 86B3 8FDAD8 <CJK>
+8FDAD9 86B4 8FDAD9 <CJK>
+8FDADA 86B5 8FDADA <CJK>
+8FDADB 86B7 8FDADB <CJK>
+8FDADC 86B8 8FDADC <CJK>
+8FDADD 86B9 8FDADD <CJK>
+8FDADE 86BF 8FDADE <CJK>
+8FDADF 86C0 8FDADF <CJK>
+8FDAE0 86C1 8FDAE0 <CJK>
+8FDAE1 86C3 8FDAE1 <CJK>
+8FDAE2 86C5 8FDAE2 <CJK>
+8FDAE3 86D1 8FDAE3 <CJK>
+8FDAE4 86D2 8FDAE4 <CJK>
+8FDAE5 86D5 8FDAE5 <CJK>
+8FDAE6 86D7 8FDAE6 <CJK>
+8FDAE7 86DA 8FDAE7 <CJK>
+8FDAE8 86DC 8FDAE8 <CJK>
+8FDAE9 86E0 8FDAE9 <CJK>
+8FDAEA 86E3 8FDAEA <CJK>
+8FDAEB 86E5 8FDAEB <CJK>
+8FDAEC 86E7 8FDAEC <CJK>
+8FDAED 8688 8FDAED <CJK>
+8FDAEE 86FA 8FDAEE <CJK>
+8FDAEF 86FC 8FDAEF <CJK>
+8FDAF0 86FD 8FDAF0 <CJK>
+8FDAF1 8704 8FDAF1 <CJK>
+8FDAF2 8705 8FDAF2 <CJK>
+8FDAF3 8707 8FDAF3 <CJK>
+8FDAF4 870B 8FDAF4 <CJK>
+8FDAF5 870E 8FDAF5 <CJK>
+8FDAF6 870F 8FDAF6 <CJK>
+8FDAF7 8710 8FDAF7 <CJK>
+8FDAF8 8713 8FDAF8 <CJK>
+8FDAF9 8714 8FDAF9 <CJK>
+8FDAFA 8719 8FDAFA <CJK>
+8FDAFB 871E 8FDAFB <CJK>
+8FDAFC 871F 8FDAFC <CJK>
+8FDAFD 8721 8FDAFD <CJK>
+8FDAFE 8723 8FDAFE <CJK>
+8FDBA1 8728 8FDBA1 <CJK>
+8FDBA2 872E 8FDBA2 <CJK>
+8FDBA3 872F 8FDBA3 <CJK>
+8FDBA4 8731 8FDBA4 <CJK>
+8FDBA5 8732 8FDBA5 <CJK>
+8FDBA6 8739 8FDBA6 <CJK>
+8FDBA7 873A 8FDBA7 <CJK>
+8FDBA8 873C 8FDBA8 <CJK>
+8FDBA9 873D 8FDBA9 <CJK>
+8FDBAA 873E 8FDBAA <CJK>
+8FDBAB 8740 8FDBAB <CJK>
+8FDBAC 8743 8FDBAC <CJK>
+8FDBAD 8745 8FDBAD <CJK>
+8FDBAE 874D 8FDBAE <CJK>
+8FDBAF 8758 8FDBAF <CJK>
+8FDBB0 875D 8FDBB0 <CJK>
+8FDBB1 8761 8FDBB1 <CJK>
+8FDBB2 8764 8FDBB2 <CJK>
+8FDBB3 8765 8FDBB3 <CJK>
+8FDBB4 876F 8FDBB4 <CJK>
+8FDBB5 8771 8FDBB5 <CJK>
+8FDBB6 8772 8FDBB6 <CJK>
+8FDBB7 877B 8FDBB7 <CJK>
+8FDBB8 8783 8FDBB8 <CJK>
+8FDBB9 8784 8FDBB9 <CJK>
+8FDBBA 8785 8FDBBA <CJK>
+8FDBBB 8786 8FDBBB <CJK>
+8FDBBC 8787 8FDBBC <CJK>
+8FDBBD 8788 8FDBBD <CJK>
+8FDBBE 8789 8FDBBE <CJK>
+8FDBBF 878B 8FDBBF <CJK>
+8FDBC0 878C 8FDBC0 <CJK>
+8FDBC1 8790 8FDBC1 <CJK>
+8FDBC2 8793 8FDBC2 <CJK>
+8FDBC3 8795 8FDBC3 <CJK>
+8FDBC4 8797 8FDBC4 <CJK>
+8FDBC5 8798 8FDBC5 <CJK>
+8FDBC6 8799 8FDBC6 <CJK>
+8FDBC7 879E 8FDBC7 <CJK>
+8FDBC8 87A0 8FDBC8 <CJK>
+8FDBC9 87A3 8FDBC9 <CJK>
+8FDBCA 87A7 8FDBCA <CJK>
+8FDBCB 87AC 8FDBCB <CJK>
+8FDBCC 87AD 8FDBCC <CJK>
+8FDBCD 87AE 8FDBCD <CJK>
+8FDBCE 87B1 8FDBCE <CJK>
+8FDBCF 87B5 8FDBCF <CJK>
+8FDBD0 87BE 8FDBD0 <CJK>
+8FDBD1 87BF 8FDBD1 <CJK>
+8FDBD2 87C1 8FDBD2 <CJK>
+8FDBD3 87C8 8FDBD3 <CJK>
+8FDBD4 87C9 8FDBD4 <CJK>
+8FDBD5 87CA 8FDBD5 <CJK>
+8FDBD6 87CE 8FDBD6 <CJK>
+8FDBD7 87D5 8FDBD7 <CJK>
+8FDBD8 87D6 8FDBD8 <CJK>
+8FDBD9 87D9 8FDBD9 <CJK>
+8FDBDA 87DA 8FDBDA <CJK>
+8FDBDB 87DC 8FDBDB <CJK>
+8FDBDC 87DF 8FDBDC <CJK>
+8FDBDD 87E2 8FDBDD <CJK>
+8FDBDE 87E3 8FDBDE <CJK>
+8FDBDF 87E4 8FDBDF <CJK>
+8FDBE0 87EA 8FDBE0 <CJK>
+8FDBE1 87EB 8FDBE1 <CJK>
+8FDBE2 87ED 8FDBE2 <CJK>
+8FDBE3 87F1 8FDBE3 <CJK>
+8FDBE4 87F3 8FDBE4 <CJK>
+8FDBE5 87F8 8FDBE5 <CJK>
+8FDBE6 87FA 8FDBE6 <CJK>
+8FDBE7 87FF 8FDBE7 <CJK>
+8FDBE8 8801 8FDBE8 <CJK>
+8FDBE9 8803 8FDBE9 <CJK>
+8FDBEA 8806 8FDBEA <CJK>
+8FDBEB 8809 8FDBEB <CJK>
+8FDBEC 880A 8FDBEC <CJK>
+8FDBED 880B 8FDBED <CJK>
+8FDBEE 8810 8FDBEE <CJK>
+8FDBEF 8819 8FDBEF <CJK>
+8FDBF0 8812 8FDBF0 <CJK>
+8FDBF1 8813 8FDBF1 <CJK>
+8FDBF2 8814 8FDBF2 <CJK>
+8FDBF3 8818 8FDBF3 <CJK>
+8FDBF4 881A 8FDBF4 <CJK>
+8FDBF5 881B 8FDBF5 <CJK>
+8FDBF6 881C 8FDBF6 <CJK>
+8FDBF7 881E 8FDBF7 <CJK>
+8FDBF8 881F 8FDBF8 <CJK>
+8FDBF9 8828 8FDBF9 <CJK>
+8FDBFA 882D 8FDBFA <CJK>
+8FDBFB 882E 8FDBFB <CJK>
+8FDBFC 8830 8FDBFC <CJK>
+8FDBFD 8832 8FDBFD <CJK>
+8FDBFE 8835 8FDBFE <CJK>
+8FDCA1 883A 8FDCA1 <CJK>
+8FDCA2 883C 8FDCA2 <CJK>
+8FDCA3 8841 8FDCA3 <CJK>
+8FDCA4 8843 8FDCA4 <CJK>
+8FDCA5 8845 8FDCA5 <CJK>
+8FDCA6 8848 8FDCA6 <CJK>
+8FDCA7 8849 8FDCA7 <CJK>
+8FDCA8 884A 8FDCA8 <CJK>
+8FDCA9 884B 8FDCA9 <CJK>
+8FDCAA 884E 8FDCAA <CJK>
+8FDCAB 8851 8FDCAB <CJK>
+8FDCAC 8855 8FDCAC <CJK>
+8FDCAD 8856 8FDCAD <CJK>
+8FDCAE 8858 8FDCAE <CJK>
+8FDCAF 885A 8FDCAF <CJK>
+8FDCB0 885C 8FDCB0 <CJK>
+8FDCB1 885F 8FDCB1 <CJK>
+8FDCB2 8860 8FDCB2 <CJK>
+8FDCB3 8864 8FDCB3 <CJK>
+8FDCB4 8869 8FDCB4 <CJK>
+8FDCB5 8871 8FDCB5 <CJK>
+8FDCB6 8879 8FDCB6 <CJK>
+8FDCB7 887B 8FDCB7 <CJK>
+8FDCB8 8880 8FDCB8 <CJK>
+8FDCB9 8898 8FDCB9 <CJK>
+8FDCBA 889A 8FDCBA <CJK>
+8FDCBB 889B 8FDCBB <CJK>
+8FDCBC 889C 8FDCBC <CJK>
+8FDCBD 889F 8FDCBD <CJK>
+8FDCBE 88A0 8FDCBE <CJK>
+8FDCBF 88A8 8FDCBF <CJK>
+8FDCC0 88AA 8FDCC0 <CJK>
+8FDCC1 88BA 8FDCC1 <CJK>
+8FDCC2 88BD 8FDCC2 <CJK>
+8FDCC3 88BE 8FDCC3 <CJK>
+8FDCC4 88C0 8FDCC4 <CJK>
+8FDCC5 88CA 8FDCC5 <CJK>
+8FDCC6 88CB 8FDCC6 <CJK>
+8FDCC7 88CC 8FDCC7 <CJK>
+8FDCC8 88CD 8FDCC8 <CJK>
+8FDCC9 88CE 8FDCC9 <CJK>
+8FDCCA 88D1 8FDCCA <CJK>
+8FDCCB 88D2 8FDCCB <CJK>
+8FDCCC 88D3 8FDCCC <CJK>
+8FDCCD 88DB 8FDCCD <CJK>
+8FDCCE 88DE 8FDCCE <CJK>
+8FDCCF 88E7 8FDCCF <CJK>
+8FDCD0 88EF 8FDCD0 <CJK>
+8FDCD1 88F0 8FDCD1 <CJK>
+8FDCD2 88F1 8FDCD2 <CJK>
+8FDCD3 88F5 8FDCD3 <CJK>
+8FDCD4 88F7 8FDCD4 <CJK>
+8FDCD5 8901 8FDCD5 <CJK>
+8FDCD6 8906 8FDCD6 <CJK>
+8FDCD7 890D 8FDCD7 <CJK>
+8FDCD8 890E 8FDCD8 <CJK>
+8FDCD9 890F 8FDCD9 <CJK>
+8FDCDA 8915 8FDCDA <CJK>
+8FDCDB 8916 8FDCDB <CJK>
+8FDCDC 8918 8FDCDC <CJK>
+8FDCDD 8919 8FDCDD <CJK>
+8FDCDE 891A 8FDCDE <CJK>
+8FDCDF 891C 8FDCDF <CJK>
+8FDCE0 8920 8FDCE0 <CJK>
+8FDCE1 8926 8FDCE1 <CJK>
+8FDCE2 8927 8FDCE2 <CJK>
+8FDCE3 8928 8FDCE3 <CJK>
+8FDCE4 8930 8FDCE4 <CJK>
+8FDCE5 8931 8FDCE5 <CJK>
+8FDCE6 8932 8FDCE6 <CJK>
+8FDCE7 8935 8FDCE7 <CJK>
+8FDCE8 8939 8FDCE8 <CJK>
+8FDCE9 893A 8FDCE9 <CJK>
+8FDCEA 893E 8FDCEA <CJK>
+8FDCEB 8940 8FDCEB <CJK>
+8FDCEC 8942 8FDCEC <CJK>
+8FDCED 8945 8FDCED <CJK>
+8FDCEE 8946 8FDCEE <CJK>
+8FDCEF 8949 8FDCEF <CJK>
+8FDCF0 894F 8FDCF0 <CJK>
+8FDCF1 8952 8FDCF1 <CJK>
+8FDCF2 8957 8FDCF2 <CJK>
+8FDCF3 895A 8FDCF3 <CJK>
+8FDCF4 895B 8FDCF4 <CJK>
+8FDCF5 895C 8FDCF5 <CJK>
+8FDCF6 8961 8FDCF6 <CJK>
+8FDCF7 8962 8FDCF7 <CJK>
+8FDCF8 8963 8FDCF8 <CJK>
+8FDCF9 896B 8FDCF9 <CJK>
+8FDCFA 896E 8FDCFA <CJK>
+8FDCFB 8970 8FDCFB <CJK>
+8FDCFC 8973 8FDCFC <CJK>
+8FDCFD 8975 8FDCFD <CJK>
+8FDCFE 897A 8FDCFE <CJK>
+8FDDA1 897B 8FDDA1 <CJK>
+8FDDA2 897C 8FDDA2 <CJK>
+8FDDA3 897D 8FDDA3 <CJK>
+8FDDA4 8989 8FDDA4 <CJK>
+8FDDA5 898D 8FDDA5 <CJK>
+8FDDA6 8990 8FDDA6 <CJK>
+8FDDA7 8994 8FDDA7 <CJK>
+8FDDA8 8995 8FDDA8 <CJK>
+8FDDA9 899B 8FDDA9 <CJK>
+8FDDAA 899C 8FDDAA <CJK>
+8FDDAB 899F 8FDDAB <CJK>
+8FDDAC 89A0 8FDDAC <CJK>
+8FDDAD 89A5 8FDDAD <CJK>
+8FDDAE 89B0 8FDDAE <CJK>
+8FDDAF 89B4 8FDDAF <CJK>
+8FDDB0 89B5 8FDDB0 <CJK>
+8FDDB1 89B6 8FDDB1 <CJK>
+8FDDB2 89B7 8FDDB2 <CJK>
+8FDDB3 89BC 8FDDB3 <CJK>
+8FDDB4 89D4 8FDDB4 <CJK>
+8FDDB5 89D5 8FDDB5 <CJK>
+8FDDB6 89D6 8FDDB6 <CJK>
+8FDDB7 89D7 8FDDB7 <CJK>
+8FDDB8 89D8 8FDDB8 <CJK>
+8FDDB9 89E5 8FDDB9 <CJK>
+8FDDBA 89E9 8FDDBA <CJK>
+8FDDBB 89EB 8FDDBB <CJK>
+8FDDBC 89ED 8FDDBC <CJK>
+8FDDBD 89F1 8FDDBD <CJK>
+8FDDBE 89F3 8FDDBE <CJK>
+8FDDBF 89F6 8FDDBF <CJK>
+8FDDC0 89F9 8FDDC0 <CJK>
+8FDDC1 89FD 8FDDC1 <CJK>
+8FDDC2 89FF 8FDDC2 <CJK>
+8FDDC3 8A04 8FDDC3 <CJK>
+8FDDC4 8A05 8FDDC4 <CJK>
+8FDDC5 8A07 8FDDC5 <CJK>
+8FDDC6 8A0F 8FDDC6 <CJK>
+8FDDC7 8A11 8FDDC7 <CJK>
+8FDDC8 8A12 8FDDC8 <CJK>
+8FDDC9 8A14 8FDDC9 <CJK>
+8FDDCA 8A15 8FDDCA <CJK>
+8FDDCB 8A1E 8FDDCB <CJK>
+8FDDCC 8A20 8FDDCC <CJK>
+8FDDCD 8A22 8FDDCD <CJK>
+8FDDCE 8A24 8FDDCE <CJK>
+8FDDCF 8A26 8FDDCF <CJK>
+8FDDD0 8A2B 8FDDD0 <CJK>
+8FDDD1 8A2C 8FDDD1 <CJK>
+8FDDD2 8A2F 8FDDD2 <CJK>
+8FDDD3 8A35 8FDDD3 <CJK>
+8FDDD4 8A37 8FDDD4 <CJK>
+8FDDD5 8A3D 8FDDD5 <CJK>
+8FDDD6 8A3E 8FDDD6 <CJK>
+8FDDD7 8A40 8FDDD7 <CJK>
+8FDDD8 8A43 8FDDD8 <CJK>
+8FDDD9 8A45 8FDDD9 <CJK>
+8FDDDA 8A47 8FDDDA <CJK>
+8FDDDB 8A49 8FDDDB <CJK>
+8FDDDC 8A4D 8FDDDC <CJK>
+8FDDDD 8A4E 8FDDDD <CJK>
+8FDDDE 8A53 8FDDDE <CJK>
+8FDDDF 8A56 8FDDDF <CJK>
+8FDDE0 8A57 8FDDE0 <CJK>
+8FDDE1 8A58 8FDDE1 <CJK>
+8FDDE2 8A5C 8FDDE2 <CJK>
+8FDDE3 8A5D 8FDDE3 <CJK>
+8FDDE4 8A61 8FDDE4 <CJK>
+8FDDE5 8A65 8FDDE5 <CJK>
+8FDDE6 8A67 8FDDE6 <CJK>
+8FDDE7 8A75 8FDDE7 <CJK>
+8FDDE8 8A76 8FDDE8 <CJK>
+8FDDE9 8A77 8FDDE9 <CJK>
+8FDDEA 8A79 8FDDEA <CJK>
+8FDDEB 8A7A 8FDDEB <CJK>
+8FDDEC 8A7B 8FDDEC <CJK>
+8FDDED 8A7E 8FDDED <CJK>
+8FDDEE 8A7F 8FDDEE <CJK>
+8FDDEF 8A80 8FDDEF <CJK>
+8FDDF0 8A83 8FDDF0 <CJK>
+8FDDF1 8A86 8FDDF1 <CJK>
+8FDDF2 8A8B 8FDDF2 <CJK>
+8FDDF3 8A8F 8FDDF3 <CJK>
+8FDDF4 8A90 8FDDF4 <CJK>
+8FDDF5 8A92 8FDDF5 <CJK>
+8FDDF6 8A96 8FDDF6 <CJK>
+8FDDF7 8A97 8FDDF7 <CJK>
+8FDDF8 8A99 8FDDF8 <CJK>
+8FDDF9 8A9F 8FDDF9 <CJK>
+8FDDFA 8AA7 8FDDFA <CJK>
+8FDDFB 8AA9 8FDDFB <CJK>
+8FDDFC 8AAE 8FDDFC <CJK>
+8FDDFD 8AAF 8FDDFD <CJK>
+8FDDFE 8AB3 8FDDFE <CJK>
+8FDEA1 8AB6 8FDEA1 <CJK>
+8FDEA2 8AB7 8FDEA2 <CJK>
+8FDEA3 8ABB 8FDEA3 <CJK>
+8FDEA4 8ABE 8FDEA4 <CJK>
+8FDEA5 8AC3 8FDEA5 <CJK>
+8FDEA6 8AC6 8FDEA6 <CJK>
+8FDEA7 8AC8 8FDEA7 <CJK>
+8FDEA8 8AC9 8FDEA8 <CJK>
+8FDEA9 8ACA 8FDEA9 <CJK>
+8FDEAA 8AD1 8FDEAA <CJK>
+8FDEAB 8AD3 8FDEAB <CJK>
+8FDEAC 8AD4 8FDEAC <CJK>
+8FDEAD 8AD5 8FDEAD <CJK>
+8FDEAE 8AD7 8FDEAE <CJK>
+8FDEAF 8ADD 8FDEAF <CJK>
+8FDEB0 8ADF 8FDEB0 <CJK>
+8FDEB1 8AEC 8FDEB1 <CJK>
+8FDEB2 8AF0 8FDEB2 <CJK>
+8FDEB3 8AF4 8FDEB3 <CJK>
+8FDEB4 8AF5 8FDEB4 <CJK>
+8FDEB5 8AF6 8FDEB5 <CJK>
+8FDEB6 8AFC 8FDEB6 <CJK>
+8FDEB7 8AFF 8FDEB7 <CJK>
+8FDEB8 8B05 8FDEB8 <CJK>
+8FDEB9 8B06 8FDEB9 <CJK>
+8FDEBA 8B0B 8FDEBA <CJK>
+8FDEBB 8B11 8FDEBB <CJK>
+8FDEBC 8B1C 8FDEBC <CJK>
+8FDEBD 8B1E 8FDEBD <CJK>
+8FDEBE 8B1F 8FDEBE <CJK>
+8FDEBF 8B0A 8FDEBF <CJK>
+8FDEC0 8B2D 8FDEC0 <CJK>
+8FDEC1 8B30 8FDEC1 <CJK>
+8FDEC2 8B37 8FDEC2 <CJK>
+8FDEC3 8B3C 8FDEC3 <CJK>
+8FDEC4 8B42 8FDEC4 <CJK>
+8FDEC5 8B43 8FDEC5 <CJK>
+8FDEC6 8B44 8FDEC6 <CJK>
+8FDEC7 8B45 8FDEC7 <CJK>
+8FDEC8 8B46 8FDEC8 <CJK>
+8FDEC9 8B48 8FDEC9 <CJK>
+8FDECA 8B52 8FDECA <CJK>
+8FDECB 8B53 8FDECB <CJK>
+8FDECC 8B54 8FDECC <CJK>
+8FDECD 8B59 8FDECD <CJK>
+8FDECE 8B4D 8FDECE <CJK>
+8FDECF 8B5E 8FDECF <CJK>
+8FDED0 8B63 8FDED0 <CJK>
+8FDED1 8B6D 8FDED1 <CJK>
+8FDED2 8B76 8FDED2 <CJK>
+8FDED3 8B78 8FDED3 <CJK>
+8FDED4 8B79 8FDED4 <CJK>
+8FDED5 8B7C 8FDED5 <CJK>
+8FDED6 8B7E 8FDED6 <CJK>
+8FDED7 8B81 8FDED7 <CJK>
+8FDED8 8B84 8FDED8 <CJK>
+8FDED9 8B85 8FDED9 <CJK>
+8FDEDA 8B8B 8FDEDA <CJK>
+8FDEDB 8B8D 8FDEDB <CJK>
+8FDEDC 8B8F 8FDEDC <CJK>
+8FDEDD 8B94 8FDEDD <CJK>
+8FDEDE 8B95 8FDEDE <CJK>
+8FDEDF 8B9C 8FDEDF <CJK>
+8FDEE0 8B9E 8FDEE0 <CJK>
+8FDEE1 8B9F 8FDEE1 <CJK>
+8FDEE2 8C38 8FDEE2 <CJK>
+8FDEE3 8C39 8FDEE3 <CJK>
+8FDEE4 8C3D 8FDEE4 <CJK>
+8FDEE5 8C3E 8FDEE5 <CJK>
+8FDEE6 8C45 8FDEE6 <CJK>
+8FDEE7 8C47 8FDEE7 <CJK>
+8FDEE8 8C49 8FDEE8 <CJK>
+8FDEE9 8C4B 8FDEE9 <CJK>
+8FDEEA 8C4F 8FDEEA <CJK>
+8FDEEB 8C51 8FDEEB <CJK>
+8FDEEC 8C53 8FDEEC <CJK>
+8FDEED 8C54 8FDEED <CJK>
+8FDEEE 8C57 8FDEEE <CJK>
+8FDEEF 8C58 8FDEEF <CJK>
+8FDEF0 8C5B 8FDEF0 <CJK>
+8FDEF1 8C5D 8FDEF1 <CJK>
+8FDEF2 8C59 8FDEF2 <CJK>
+8FDEF3 8C63 8FDEF3 <CJK>
+8FDEF4 8C64 8FDEF4 <CJK>
+8FDEF5 8C66 8FDEF5 <CJK>
+8FDEF6 8C68 8FDEF6 <CJK>
+8FDEF7 8C69 8FDEF7 <CJK>
+8FDEF8 8C6D 8FDEF8 <CJK>
+8FDEF9 8C73 8FDEF9 <CJK>
+8FDEFA 8C75 8FDEFA <CJK>
+8FDEFB 8C76 8FDEFB <CJK>
+8FDEFC 8C7B 8FDEFC <CJK>
+8FDEFD 8C7E 8FDEFD <CJK>
+8FDEFE 8C86 8FDEFE <CJK>
+8FDFA1 8C87 8FDFA1 <CJK>
+8FDFA2 8C8B 8FDFA2 <CJK>
+8FDFA3 8C90 8FDFA3 <CJK>
+8FDFA4 8C92 8FDFA4 <CJK>
+8FDFA5 8C93 8FDFA5 <CJK>
+8FDFA6 8C99 8FDFA6 <CJK>
+8FDFA7 8C9B 8FDFA7 <CJK>
+8FDFA8 8C9C 8FDFA8 <CJK>
+8FDFA9 8CA4 8FDFA9 <CJK>
+8FDFAA 8CB9 8FDFAA <CJK>
+8FDFAB 8CBA 8FDFAB <CJK>
+8FDFAC 8CC5 8FDFAC <CJK>
+8FDFAD 8CC6 8FDFAD <CJK>
+8FDFAE 8CC9 8FDFAE <CJK>
+8FDFAF 8CCB 8FDFAF <CJK>
+8FDFB0 8CCF 8FDFB0 <CJK>
+8FDFB1 8CD6 8FDFB1 <CJK>
+8FDFB2 8CD5 8FDFB2 <CJK>
+8FDFB3 8CD9 8FDFB3 <CJK>
+8FDFB4 8CDD 8FDFB4 <CJK>
+8FDFB5 8CE1 8FDFB5 <CJK>
+8FDFB6 8CE8 8FDFB6 <CJK>
+8FDFB7 8CEC 8FDFB7 <CJK>
+8FDFB8 8CEF 8FDFB8 <CJK>
+8FDFB9 8CF0 8FDFB9 <CJK>
+8FDFBA 8CF2 8FDFBA <CJK>
+8FDFBB 8CF5 8FDFBB <CJK>
+8FDFBC 8CF7 8FDFBC <CJK>
+8FDFBD 8CF8 8FDFBD <CJK>
+8FDFBE 8CFE 8FDFBE <CJK>
+8FDFBF 8CFF 8FDFBF <CJK>
+8FDFC0 8D01 8FDFC0 <CJK>
+8FDFC1 8D03 8FDFC1 <CJK>
+8FDFC2 8D09 8FDFC2 <CJK>
+8FDFC3 8D12 8FDFC3 <CJK>
+8FDFC4 8D17 8FDFC4 <CJK>
+8FDFC5 8D1B 8FDFC5 <CJK>
+8FDFC6 8D65 8FDFC6 <CJK>
+8FDFC7 8D69 8FDFC7 <CJK>
+8FDFC8 8D6C 8FDFC8 <CJK>
+8FDFC9 8D6E 8FDFC9 <CJK>
+8FDFCA 8D7F 8FDFCA <CJK>
+8FDFCB 8D82 8FDFCB <CJK>
+8FDFCC 8D84 8FDFCC <CJK>
+8FDFCD 8D88 8FDFCD <CJK>
+8FDFCE 8D8D 8FDFCE <CJK>
+8FDFCF 8D90 8FDFCF <CJK>
+8FDFD0 8D91 8FDFD0 <CJK>
+8FDFD1 8D95 8FDFD1 <CJK>
+8FDFD2 8D9E 8FDFD2 <CJK>
+8FDFD3 8D9F 8FDFD3 <CJK>
+8FDFD4 8DA0 8FDFD4 <CJK>
+8FDFD5 8DA6 8FDFD5 <CJK>
+8FDFD6 8DAB 8FDFD6 <CJK>
+8FDFD7 8DAC 8FDFD7 <CJK>
+8FDFD8 8DAF 8FDFD8 <CJK>
+8FDFD9 8DB2 8FDFD9 <CJK>
+8FDFDA 8DB5 8FDFDA <CJK>
+8FDFDB 8DB7 8FDFDB <CJK>
+8FDFDC 8DB9 8FDFDC <CJK>
+8FDFDD 8DBB 8FDFDD <CJK>
+8FDFDE 8DC0 8FDFDE <CJK>
+8FDFDF 8DC5 8FDFDF <CJK>
+8FDFE0 8DC6 8FDFE0 <CJK>
+8FDFE1 8DC7 8FDFE1 <CJK>
+8FDFE2 8DC8 8FDFE2 <CJK>
+8FDFE3 8DCA 8FDFE3 <CJK>
+8FDFE4 8DCE 8FDFE4 <CJK>
+8FDFE5 8DD1 8FDFE5 <CJK>
+8FDFE6 8DD4 8FDFE6 <CJK>
+8FDFE7 8DD5 8FDFE7 <CJK>
+8FDFE8 8DD7 8FDFE8 <CJK>
+8FDFE9 8DD9 8FDFE9 <CJK>
+8FDFEA 8DE4 8FDFEA <CJK>
+8FDFEB 8DE5 8FDFEB <CJK>
+8FDFEC 8DE7 8FDFEC <CJK>
+8FDFED 8DEC 8FDFED <CJK>
+8FDFEE 8DF0 8FDFEE <CJK>
+8FDFEF 8DBC 8FDFEF <CJK>
+8FDFF0 8DF1 8FDFF0 <CJK>
+8FDFF1 8DF2 8FDFF1 <CJK>
+8FDFF2 8DF4 8FDFF2 <CJK>
+8FDFF3 8DFD 8FDFF3 <CJK>
+8FDFF4 8E01 8FDFF4 <CJK>
+8FDFF5 8E04 8FDFF5 <CJK>
+8FDFF6 8E05 8FDFF6 <CJK>
+8FDFF7 8E06 8FDFF7 <CJK>
+8FDFF8 8E0B 8FDFF8 <CJK>
+8FDFF9 8E11 8FDFF9 <CJK>
+8FDFFA 8E14 8FDFFA <CJK>
+8FDFFB 8E16 8FDFFB <CJK>
+8FDFFC 8E20 8FDFFC <CJK>
+8FDFFD 8E21 8FDFFD <CJK>
+8FDFFE 8E22 8FDFFE <CJK>
+8FE0A1 8E23 8FE0A1 <CJK>
+8FE0A2 8E26 8FE0A2 <CJK>
+8FE0A3 8E27 8FE0A3 <CJK>
+8FE0A4 8E31 8FE0A4 <CJK>
+8FE0A5 8E33 8FE0A5 <CJK>
+8FE0A6 8E36 8FE0A6 <CJK>
+8FE0A7 8E37 8FE0A7 <CJK>
+8FE0A8 8E38 8FE0A8 <CJK>
+8FE0A9 8E39 8FE0A9 <CJK>
+8FE0AA 8E3D 8FE0AA <CJK>
+8FE0AB 8E40 8FE0AB <CJK>
+8FE0AC 8E41 8FE0AC <CJK>
+8FE0AD 8E4B 8FE0AD <CJK>
+8FE0AE 8E4D 8FE0AE <CJK>
+8FE0AF 8E4E 8FE0AF <CJK>
+8FE0B0 8E4F 8FE0B0 <CJK>
+8FE0B1 8E54 8FE0B1 <CJK>
+8FE0B2 8E5B 8FE0B2 <CJK>
+8FE0B3 8E5C 8FE0B3 <CJK>
+8FE0B4 8E5D 8FE0B4 <CJK>
+8FE0B5 8E5E 8FE0B5 <CJK>
+8FE0B6 8E61 8FE0B6 <CJK>
+8FE0B7 8E62 8FE0B7 <CJK>
+8FE0B8 8E69 8FE0B8 <CJK>
+8FE0B9 8E6C 8FE0B9 <CJK>
+8FE0BA 8E6D 8FE0BA <CJK>
+8FE0BB 8E6F 8FE0BB <CJK>
+8FE0BC 8E70 8FE0BC <CJK>
+8FE0BD 8E71 8FE0BD <CJK>
+8FE0BE 8E79 8FE0BE <CJK>
+8FE0BF 8E7A 8FE0BF <CJK>
+8FE0C0 8E7B 8FE0C0 <CJK>
+8FE0C1 8E82 8FE0C1 <CJK>
+8FE0C2 8E83 8FE0C2 <CJK>
+8FE0C3 8E89 8FE0C3 <CJK>
+8FE0C4 8E90 8FE0C4 <CJK>
+8FE0C5 8E92 8FE0C5 <CJK>
+8FE0C6 8E95 8FE0C6 <CJK>
+8FE0C7 8E9A 8FE0C7 <CJK>
+8FE0C8 8E9B 8FE0C8 <CJK>
+8FE0C9 8E9D 8FE0C9 <CJK>
+8FE0CA 8E9E 8FE0CA <CJK>
+8FE0CB 8EA2 8FE0CB <CJK>
+8FE0CC 8EA7 8FE0CC <CJK>
+8FE0CD 8EA9 8FE0CD <CJK>
+8FE0CE 8EAD 8FE0CE <CJK>
+8FE0CF 8EAE 8FE0CF <CJK>
+8FE0D0 8EB3 8FE0D0 <CJK>
+8FE0D1 8EB5 8FE0D1 <CJK>
+8FE0D2 8EBA 8FE0D2 <CJK>
+8FE0D3 8EBB 8FE0D3 <CJK>
+8FE0D4 8EC0 8FE0D4 <CJK>
+8FE0D5 8EC1 8FE0D5 <CJK>
+8FE0D6 8EC3 8FE0D6 <CJK>
+8FE0D7 8EC4 8FE0D7 <CJK>
+8FE0D8 8EC7 8FE0D8 <CJK>
+8FE0D9 8ECF 8FE0D9 <CJK>
+8FE0DA 8ED1 8FE0DA <CJK>
+8FE0DB 8ED4 8FE0DB <CJK>
+8FE0DC 8EDC 8FE0DC <CJK>
+8FE0DD 8EE8 8FE0DD <CJK>
+8FE0DE 8EEE 8FE0DE <CJK>
+8FE0DF 8EF0 8FE0DF <CJK>
+8FE0E0 8EF1 8FE0E0 <CJK>
+8FE0E1 8EF7 8FE0E1 <CJK>
+8FE0E2 8EF9 8FE0E2 <CJK>
+8FE0E3 8EFA 8FE0E3 <CJK>
+8FE0E4 8EED 8FE0E4 <CJK>
+8FE0E5 8F00 8FE0E5 <CJK>
+8FE0E6 8F02 8FE0E6 <CJK>
+8FE0E7 8F07 8FE0E7 <CJK>
+8FE0E8 8F08 8FE0E8 <CJK>
+8FE0E9 8F0F 8FE0E9 <CJK>
+8FE0EA 8F10 8FE0EA <CJK>
+8FE0EB 8F16 8FE0EB <CJK>
+8FE0EC 8F17 8FE0EC <CJK>
+8FE0ED 8F18 8FE0ED <CJK>
+8FE0EE 8F1E 8FE0EE <CJK>
+8FE0EF 8F20 8FE0EF <CJK>
+8FE0F0 8F21 8FE0F0 <CJK>
+8FE0F1 8F23 8FE0F1 <CJK>
+8FE0F2 8F25 8FE0F2 <CJK>
+8FE0F3 8F27 8FE0F3 <CJK>
+8FE0F4 8F28 8FE0F4 <CJK>
+8FE0F5 8F2C 8FE0F5 <CJK>
+8FE0F6 8F2D 8FE0F6 <CJK>
+8FE0F7 8F2E 8FE0F7 <CJK>
+8FE0F8 8F34 8FE0F8 <CJK>
+8FE0F9 8F35 8FE0F9 <CJK>
+8FE0FA 8F36 8FE0FA <CJK>
+8FE0FB 8F37 8FE0FB <CJK>
+8FE0FC 8F3A 8FE0FC <CJK>
+8FE0FD 8F40 8FE0FD <CJK>
+8FE0FE 8F41 8FE0FE <CJK>
+8FE1A1 8F43 8FE1A1 <CJK>
+8FE1A2 8F47 8FE1A2 <CJK>
+8FE1A3 8F4F 8FE1A3 <CJK>
+8FE1A4 8F51 8FE1A4 <CJK>
+8FE1A5 8F52 8FE1A5 <CJK>
+8FE1A6 8F53 8FE1A6 <CJK>
+8FE1A7 8F54 8FE1A7 <CJK>
+8FE1A8 8F55 8FE1A8 <CJK>
+8FE1A9 8F58 8FE1A9 <CJK>
+8FE1AA 8F5D 8FE1AA <CJK>
+8FE1AB 8F5E 8FE1AB <CJK>
+8FE1AC 8F65 8FE1AC <CJK>
+8FE1AD 8F9D 8FE1AD <CJK>
+8FE1AE 8FA0 8FE1AE <CJK>
+8FE1AF 8FA1 8FE1AF <CJK>
+8FE1B0 8FA4 8FE1B0 <CJK>
+8FE1B1 8FA5 8FE1B1 <CJK>
+8FE1B2 8FA6 8FE1B2 <CJK>
+8FE1B3 8FB5 8FE1B3 <CJK>
+8FE1B4 8FB6 8FE1B4 <CJK>
+8FE1B5 8FB8 8FE1B5 <CJK>
+8FE1B6 8FBE 8FE1B6 <CJK>
+8FE1B7 8FC0 8FE1B7 <CJK>
+8FE1B8 8FC1 8FE1B8 <CJK>
+8FE1B9 8FC6 8FE1B9 <CJK>
+8FE1BA 8FCA 8FE1BA <CJK>
+8FE1BB 8FCB 8FE1BB <CJK>
+8FE1BC 8FCD 8FE1BC <CJK>
+8FE1BD 8FD0 8FE1BD <CJK>
+8FE1BE 8FD2 8FE1BE <CJK>
+8FE1BF 8FD3 8FE1BF <CJK>
+8FE1C0 8FD5 8FE1C0 <CJK>
+8FE1C1 8FE0 8FE1C1 <CJK>
+8FE1C2 8FE3 8FE1C2 <CJK>
+8FE1C3 8FE4 8FE1C3 <CJK>
+8FE1C4 8FE8 8FE1C4 <CJK>
+8FE1C5 8FEE 8FE1C5 <CJK>
+8FE1C6 8FF1 8FE1C6 <CJK>
+8FE1C7 8FF5 8FE1C7 <CJK>
+8FE1C8 8FF6 8FE1C8 <CJK>
+8FE1C9 8FFB 8FE1C9 <CJK>
+8FE1CA 8FFE 8FE1CA <CJK>
+8FE1CB 9002 8FE1CB <CJK>
+8FE1CC 9004 8FE1CC <CJK>
+8FE1CD 9008 8FE1CD <CJK>
+8FE1CE 900C 8FE1CE <CJK>
+8FE1CF 9018 8FE1CF <CJK>
+8FE1D0 901B 8FE1D0 <CJK>
+8FE1D1 9028 8FE1D1 <CJK>
+8FE1D2 9029 8FE1D2 <CJK>
+8FE1D3 902F 8FE1D3 <CJK>
+8FE1D4 902A 8FE1D4 <CJK>
+8FE1D5 902C 8FE1D5 <CJK>
+8FE1D6 902D 8FE1D6 <CJK>
+8FE1D7 9033 8FE1D7 <CJK>
+8FE1D8 9034 8FE1D8 <CJK>
+8FE1D9 9037 8FE1D9 <CJK>
+8FE1DA 903F 8FE1DA <CJK>
+8FE1DB 9043 8FE1DB <CJK>
+8FE1DC 9044 8FE1DC <CJK>
+8FE1DD 904C 8FE1DD <CJK>
+8FE1DE 905B 8FE1DE <CJK>
+8FE1DF 905D 8FE1DF <CJK>
+8FE1E0 9062 8FE1E0 <CJK>
+8FE1E1 9066 8FE1E1 <CJK>
+8FE1E2 9067 8FE1E2 <CJK>
+8FE1E3 906C 8FE1E3 <CJK>
+8FE1E4 9070 8FE1E4 <CJK>
+8FE1E5 9074 8FE1E5 <CJK>
+8FE1E6 9079 8FE1E6 <CJK>
+8FE1E7 9085 8FE1E7 <CJK>
+8FE1E8 9088 8FE1E8 <CJK>
+8FE1E9 908B 8FE1E9 <CJK>
+8FE1EA 908C 8FE1EA <CJK>
+8FE1EB 908E 8FE1EB <CJK>
+8FE1EC 9090 8FE1EC <CJK>
+8FE1ED 9095 8FE1ED <CJK>
+8FE1EE 9097 8FE1EE <CJK>
+8FE1EF 9098 8FE1EF <CJK>
+8FE1F0 9099 8FE1F0 <CJK>
+8FE1F1 909B 8FE1F1 <CJK>
+8FE1F2 90A0 8FE1F2 <CJK>
+8FE1F3 90A1 8FE1F3 <CJK>
+8FE1F4 90A2 8FE1F4 <CJK>
+8FE1F5 90A5 8FE1F5 <CJK>
+8FE1F6 90B0 8FE1F6 <CJK>
+8FE1F7 90B2 8FE1F7 <CJK>
+8FE1F8 90B3 8FE1F8 <CJK>
+8FE1F9 90B4 8FE1F9 <CJK>
+8FE1FA 90B6 8FE1FA <CJK>
+8FE1FB 90BD 8FE1FB <CJK>
+8FE1FC 90CC 8FE1FC <CJK>
+8FE1FD 90BE 8FE1FD <CJK>
+8FE1FE 90C3 8FE1FE <CJK>
+8FE2A1 90C4 8FE2A1 <CJK>
+8FE2A2 90C5 8FE2A2 <CJK>
+8FE2A3 90C7 8FE2A3 <CJK>
+8FE2A4 90C8 8FE2A4 <CJK>
+8FE2A5 90D5 8FE2A5 <CJK>
+8FE2A6 90D7 8FE2A6 <CJK>
+8FE2A7 90D8 8FE2A7 <CJK>
+8FE2A8 90D9 8FE2A8 <CJK>
+8FE2A9 90DC 8FE2A9 <CJK>
+8FE2AA 90DD 8FE2AA <CJK>
+8FE2AB 90DF 8FE2AB <CJK>
+8FE2AC 90E5 8FE2AC <CJK>
+8FE2AD 90D2 8FE2AD <CJK>
+8FE2AE 90F6 8FE2AE <CJK>
+8FE2AF 90EB 8FE2AF <CJK>
+8FE2B0 90EF 8FE2B0 <CJK>
+8FE2B1 90F0 8FE2B1 <CJK>
+8FE2B2 90F4 8FE2B2 <CJK>
+8FE2B3 90FE 8FE2B3 <CJK>
+8FE2B4 90FF 8FE2B4 <CJK>
+8FE2B5 9100 8FE2B5 <CJK>
+8FE2B6 9104 8FE2B6 <CJK>
+8FE2B7 9105 8FE2B7 <CJK>
+8FE2B8 9106 8FE2B8 <CJK>
+8FE2B9 9108 8FE2B9 <CJK>
+8FE2BA 910D 8FE2BA <CJK>
+8FE2BB 9110 8FE2BB <CJK>
+8FE2BC 9114 8FE2BC <CJK>
+8FE2BD 9116 8FE2BD <CJK>
+8FE2BE 9117 8FE2BE <CJK>
+8FE2BF 9118 8FE2BF <CJK>
+8FE2C0 911A 8FE2C0 <CJK>
+8FE2C1 911C 8FE2C1 <CJK>
+8FE2C2 911E 8FE2C2 <CJK>
+8FE2C3 9120 8FE2C3 <CJK>
+8FE2C4 9125 8FE2C4 <CJK>
+8FE2C5 9122 8FE2C5 <CJK>
+8FE2C6 9123 8FE2C6 <CJK>
+8FE2C7 9127 8FE2C7 <CJK>
+8FE2C8 9129 8FE2C8 <CJK>
+8FE2C9 912E 8FE2C9 <CJK>
+8FE2CA 912F 8FE2CA <CJK>
+8FE2CB 9131 8FE2CB <CJK>
+8FE2CC 9134 8FE2CC <CJK>
+8FE2CD 9136 8FE2CD <CJK>
+8FE2CE 9137 8FE2CE <CJK>
+8FE2CF 9139 8FE2CF <CJK>
+8FE2D0 913A 8FE2D0 <CJK>
+8FE2D1 913C 8FE2D1 <CJK>
+8FE2D2 913D 8FE2D2 <CJK>
+8FE2D3 9143 8FE2D3 <CJK>
+8FE2D4 9147 8FE2D4 <CJK>
+8FE2D5 9148 8FE2D5 <CJK>
+8FE2D6 914F 8FE2D6 <CJK>
+8FE2D7 9153 8FE2D7 <CJK>
+8FE2D8 9157 8FE2D8 <CJK>
+8FE2D9 9159 8FE2D9 <CJK>
+8FE2DA 915A 8FE2DA <CJK>
+8FE2DB 915B 8FE2DB <CJK>
+8FE2DC 9161 8FE2DC <CJK>
+8FE2DD 9164 8FE2DD <CJK>
+8FE2DE 9167 8FE2DE <CJK>
+8FE2DF 916D 8FE2DF <CJK>
+8FE2E0 9174 8FE2E0 <CJK>
+8FE2E1 9179 8FE2E1 <CJK>
+8FE2E2 917A 8FE2E2 <CJK>
+8FE2E3 917B 8FE2E3 <CJK>
+8FE2E4 9181 8FE2E4 <CJK>
+8FE2E5 9183 8FE2E5 <CJK>
+8FE2E6 9185 8FE2E6 <CJK>
+8FE2E7 9186 8FE2E7 <CJK>
+8FE2E8 918A 8FE2E8 <CJK>
+8FE2E9 918E 8FE2E9 <CJK>
+8FE2EA 9191 8FE2EA <CJK>
+8FE2EB 9193 8FE2EB <CJK>
+8FE2EC 9194 8FE2EC <CJK>
+8FE2ED 9195 8FE2ED <CJK>
+8FE2EE 9198 8FE2EE <CJK>
+8FE2EF 919E 8FE2EF <CJK>
+8FE2F0 91A1 8FE2F0 <CJK>
+8FE2F1 91A6 8FE2F1 <CJK>
+8FE2F2 91A8 8FE2F2 <CJK>
+8FE2F3 91AC 8FE2F3 <CJK>
+8FE2F4 91AD 8FE2F4 <CJK>
+8FE2F5 91AE 8FE2F5 <CJK>
+8FE2F6 91B0 8FE2F6 <CJK>
+8FE2F7 91B1 8FE2F7 <CJK>
+8FE2F8 91B2 8FE2F8 <CJK>
+8FE2F9 91B3 8FE2F9 <CJK>
+8FE2FA 91B6 8FE2FA <CJK>
+8FE2FB 91BB 8FE2FB <CJK>
+8FE2FC 91BC 8FE2FC <CJK>
+8FE2FD 91BD 8FE2FD <CJK>
+8FE2FE 91BF 8FE2FE <CJK>
+8FE3A1 91C2 8FE3A1 <CJK>
+8FE3A2 91C3 8FE3A2 <CJK>
+8FE3A3 91C5 8FE3A3 <CJK>
+8FE3A4 91D3 8FE3A4 <CJK>
+8FE3A5 91D4 8FE3A5 <CJK>
+8FE3A6 91D7 8FE3A6 <CJK>
+8FE3A7 91D9 8FE3A7 <CJK>
+8FE3A8 91DA 8FE3A8 <CJK>
+8FE3A9 91DE 8FE3A9 <CJK>
+8FE3AA 91E4 8FE3AA <CJK>
+8FE3AB 91E5 8FE3AB <CJK>
+8FE3AC 91E9 8FE3AC <CJK>
+8FE3AD 91EA 8FE3AD <CJK>
+8FE3AE 91EC 8FE3AE <CJK>
+8FE3AF 91ED 8FE3AF <CJK>
+8FE3B0 91EE 8FE3B0 <CJK>
+8FE3B1 91EF 8FE3B1 <CJK>
+8FE3B2 91F0 8FE3B2 <CJK>
+8FE3B3 91F1 8FE3B3 <CJK>
+8FE3B4 91F7 8FE3B4 <CJK>
+8FE3B5 91F9 8FE3B5 <CJK>
+8FE3B6 91FB 8FE3B6 <CJK>
+8FE3B7 91FD 8FE3B7 <CJK>
+8FE3B8 9200 8FE3B8 <CJK>
+8FE3B9 9201 8FE3B9 <CJK>
+8FE3BA 9204 8FE3BA <CJK>
+8FE3BB 9205 8FE3BB <CJK>
+8FE3BC 9206 8FE3BC <CJK>
+8FE3BD 9207 8FE3BD <CJK>
+8FE3BE 9209 8FE3BE <CJK>
+8FE3BF 920A 8FE3BF <CJK>
+8FE3C0 920C 8FE3C0 <CJK>
+8FE3C1 9210 8FE3C1 <CJK>
+8FE3C2 9212 8FE3C2 <CJK>
+8FE3C3 9213 8FE3C3 <CJK>
+8FE3C4 9216 8FE3C4 <CJK>
+8FE3C5 9218 8FE3C5 <CJK>
+8FE3C6 921C 8FE3C6 <CJK>
+8FE3C7 921D 8FE3C7 <CJK>
+8FE3C8 9223 8FE3C8 <CJK>
+8FE3C9 9224 8FE3C9 <CJK>
+8FE3CA 9225 8FE3CA <CJK>
+8FE3CB 9226 8FE3CB <CJK>
+8FE3CC 9228 8FE3CC <CJK>
+8FE3CD 922E 8FE3CD <CJK>
+8FE3CE 922F 8FE3CE <CJK>
+8FE3CF 9230 8FE3CF <CJK>
+8FE3D0 9233 8FE3D0 <CJK>
+8FE3D1 9235 8FE3D1 <CJK>
+8FE3D2 9236 8FE3D2 <CJK>
+8FE3D3 9238 8FE3D3 <CJK>
+8FE3D4 9239 8FE3D4 <CJK>
+8FE3D5 923A 8FE3D5 <CJK>
+8FE3D6 923C 8FE3D6 <CJK>
+8FE3D7 923E 8FE3D7 <CJK>
+8FE3D8 9240 8FE3D8 <CJK>
+8FE3D9 9242 8FE3D9 <CJK>
+8FE3DA 9243 8FE3DA <CJK>
+8FE3DB 9246 8FE3DB <CJK>
+8FE3DC 9247 8FE3DC <CJK>
+8FE3DD 924A 8FE3DD <CJK>
+8FE3DE 924D 8FE3DE <CJK>
+8FE3DF 924E 8FE3DF <CJK>
+8FE3E0 924F 8FE3E0 <CJK>
+8FE3E1 9251 8FE3E1 <CJK>
+8FE3E2 9258 8FE3E2 <CJK>
+8FE3E3 9259 8FE3E3 <CJK>
+8FE3E4 925C 8FE3E4 <CJK>
+8FE3E5 925D 8FE3E5 <CJK>
+8FE3E6 9260 8FE3E6 <CJK>
+8FE3E7 9261 8FE3E7 <CJK>
+8FE3E8 9265 8FE3E8 <CJK>
+8FE3E9 9267 8FE3E9 <CJK>
+8FE3EA 9268 8FE3EA <CJK>
+8FE3EB 9269 8FE3EB <CJK>
+8FE3EC 926E 8FE3EC <CJK>
+8FE3ED 926F 8FE3ED <CJK>
+8FE3EE 9270 8FE3EE <CJK>
+8FE3EF 9275 8FE3EF <CJK>
+8FE3F0 9276 8FE3F0 <CJK>
+8FE3F1 9277 8FE3F1 <CJK>
+8FE3F2 9278 8FE3F2 <CJK>
+8FE3F3 9279 8FE3F3 <CJK>
+8FE3F4 927B 8FE3F4 <CJK>
+8FE3F5 927C 8FE3F5 <CJK>
+8FE3F6 927D 8FE3F6 <CJK>
+8FE3F7 927F 8FE3F7 <CJK>
+8FE3F8 9288 8FE3F8 <CJK>
+8FE3F9 9289 8FE3F9 <CJK>
+8FE3FA 928A 8FE3FA <CJK>
+8FE3FB 928D 8FE3FB <CJK>
+8FE3FC 928E 8FE3FC <CJK>
+8FE3FD 9292 8FE3FD <CJK>
+8FE3FE 9297 8FE3FE <CJK>
+8FE4A1 9299 8FE4A1 <CJK>
+8FE4A2 929F 8FE4A2 <CJK>
+8FE4A3 92A0 8FE4A3 <CJK>
+8FE4A4 92A4 8FE4A4 <CJK>
+8FE4A5 92A5 8FE4A5 <CJK>
+8FE4A6 92A7 8FE4A6 <CJK>
+8FE4A7 92A8 8FE4A7 <CJK>
+8FE4A8 92AB 8FE4A8 <CJK>
+8FE4A9 92AF 8FE4A9 <CJK>
+8FE4AA 92B2 8FE4AA <CJK>
+8FE4AB 92B6 8FE4AB <CJK>
+8FE4AC 92B8 8FE4AC <CJK>
+8FE4AD 92BA 8FE4AD <CJK>
+8FE4AE 92BB 8FE4AE <CJK>
+8FE4AF 92BC 8FE4AF <CJK>
+8FE4B0 92BD 8FE4B0 <CJK>
+8FE4B1 92BF 8FE4B1 <CJK>
+8FE4B2 92C0 8FE4B2 <CJK>
+8FE4B3 92C1 8FE4B3 <CJK>
+8FE4B4 92C2 8FE4B4 <CJK>
+8FE4B5 92C3 8FE4B5 <CJK>
+8FE4B6 92C5 8FE4B6 <CJK>
+8FE4B7 92C6 8FE4B7 <CJK>
+8FE4B8 92C7 8FE4B8 <CJK>
+8FE4B9 92C8 8FE4B9 <CJK>
+8FE4BA 92CB 8FE4BA <CJK>
+8FE4BB 92CC 8FE4BB <CJK>
+8FE4BC 92CD 8FE4BC <CJK>
+8FE4BD 92CE 8FE4BD <CJK>
+8FE4BE 92D0 8FE4BE <CJK>
+8FE4BF 92D3 8FE4BF <CJK>
+8FE4C0 92D5 8FE4C0 <CJK>
+8FE4C1 92D7 8FE4C1 <CJK>
+8FE4C2 92D8 8FE4C2 <CJK>
+8FE4C3 92D9 8FE4C3 <CJK>
+8FE4C4 92DC 8FE4C4 <CJK>
+8FE4C5 92DD 8FE4C5 <CJK>
+8FE4C6 92DF 8FE4C6 <CJK>
+8FE4C7 92E0 8FE4C7 <CJK>
+8FE4C8 92E1 8FE4C8 <CJK>
+8FE4C9 92E3 8FE4C9 <CJK>
+8FE4CA 92E5 8FE4CA <CJK>
+8FE4CB 92E7 8FE4CB <CJK>
+8FE4CC 92E8 8FE4CC <CJK>
+8FE4CD 92EC 8FE4CD <CJK>
+8FE4CE 92EE 8FE4CE <CJK>
+8FE4CF 92F0 8FE4CF <CJK>
+8FE4D0 92F9 8FE4D0 <CJK>
+8FE4D1 92FB 8FE4D1 <CJK>
+8FE4D2 92FF 8FE4D2 <CJK>
+8FE4D3 9300 8FE4D3 <CJK>
+8FE4D4 9302 8FE4D4 <CJK>
+8FE4D5 9308 8FE4D5 <CJK>
+8FE4D6 930D 8FE4D6 <CJK>
+8FE4D7 9311 8FE4D7 <CJK>
+8FE4D8 9314 8FE4D8 <CJK>
+8FE4D9 9315 8FE4D9 <CJK>
+8FE4DA 931C 8FE4DA <CJK>
+8FE4DB 931D 8FE4DB <CJK>
+8FE4DC 931E 8FE4DC <CJK>
+8FE4DD 931F 8FE4DD <CJK>
+8FE4DE 9321 8FE4DE <CJK>
+8FE4DF 9324 8FE4DF <CJK>
+8FE4E0 9325 8FE4E0 <CJK>
+8FE4E1 9327 8FE4E1 <CJK>
+8FE4E2 9329 8FE4E2 <CJK>
+8FE4E3 932A 8FE4E3 <CJK>
+8FE4E4 9333 8FE4E4 <CJK>
+8FE4E5 9334 8FE4E5 <CJK>
+8FE4E6 9336 8FE4E6 <CJK>
+8FE4E7 9337 8FE4E7 <CJK>
+8FE4E8 9347 8FE4E8 <CJK>
+8FE4E9 9348 8FE4E9 <CJK>
+8FE4EA 9349 8FE4EA <CJK>
+8FE4EB 9350 8FE4EB <CJK>
+8FE4EC 9351 8FE4EC <CJK>
+8FE4ED 9352 8FE4ED <CJK>
+8FE4EE 9355 8FE4EE <CJK>
+8FE4EF 9357 8FE4EF <CJK>
+8FE4F0 9358 8FE4F0 <CJK>
+8FE4F1 935A 8FE4F1 <CJK>
+8FE4F2 935E 8FE4F2 <CJK>
+8FE4F3 9364 8FE4F3 <CJK>
+8FE4F4 9365 8FE4F4 <CJK>
+8FE4F5 9367 8FE4F5 <CJK>
+8FE4F6 9369 8FE4F6 <CJK>
+8FE4F7 936A 8FE4F7 <CJK>
+8FE4F8 936D 8FE4F8 <CJK>
+8FE4F9 936F 8FE4F9 <CJK>
+8FE4FA 9370 8FE4FA <CJK>
+8FE4FB 9371 8FE4FB <CJK>
+8FE4FC 9373 8FE4FC <CJK>
+8FE4FD 9374 8FE4FD <CJK>
+8FE4FE 9376 8FE4FE <CJK>
+8FE5A1 937A 8FE5A1 <CJK>
+8FE5A2 937D 8FE5A2 <CJK>
+8FE5A3 937F 8FE5A3 <CJK>
+8FE5A4 9380 8FE5A4 <CJK>
+8FE5A5 9381 8FE5A5 <CJK>
+8FE5A6 9382 8FE5A6 <CJK>
+8FE5A7 9388 8FE5A7 <CJK>
+8FE5A8 938A 8FE5A8 <CJK>
+8FE5A9 938B 8FE5A9 <CJK>
+8FE5AA 938D 8FE5AA <CJK>
+8FE5AB 938F 8FE5AB <CJK>
+8FE5AC 9392 8FE5AC <CJK>
+8FE5AD 9395 8FE5AD <CJK>
+8FE5AE 9398 8FE5AE <CJK>
+8FE5AF 939B 8FE5AF <CJK>
+8FE5B0 939E 8FE5B0 <CJK>
+8FE5B1 93A1 8FE5B1 <CJK>
+8FE5B2 93A3 8FE5B2 <CJK>
+8FE5B3 93A4 8FE5B3 <CJK>
+8FE5B4 93A6 8FE5B4 <CJK>
+8FE5B5 93A8 8FE5B5 <CJK>
+8FE5B6 93AB 8FE5B6 <CJK>
+8FE5B7 93B4 8FE5B7 <CJK>
+8FE5B8 93B5 8FE5B8 <CJK>
+8FE5B9 93B6 8FE5B9 <CJK>
+8FE5BA 93BA 8FE5BA <CJK>
+8FE5BB 93A9 8FE5BB <CJK>
+8FE5BC 93C1 8FE5BC <CJK>
+8FE5BD 93C4 8FE5BD <CJK>
+8FE5BE 93C5 8FE5BE <CJK>
+8FE5BF 93C6 8FE5BF <CJK>
+8FE5C0 93C7 8FE5C0 <CJK>
+8FE5C1 93C9 8FE5C1 <CJK>
+8FE5C2 93CA 8FE5C2 <CJK>
+8FE5C3 93CB 8FE5C3 <CJK>
+8FE5C4 93CC 8FE5C4 <CJK>
+8FE5C5 93CD 8FE5C5 <CJK>
+8FE5C6 93D3 8FE5C6 <CJK>
+8FE5C7 93D9 8FE5C7 <CJK>
+8FE5C8 93DC 8FE5C8 <CJK>
+8FE5C9 93DE 8FE5C9 <CJK>
+8FE5CA 93DF 8FE5CA <CJK>
+8FE5CB 93E2 8FE5CB <CJK>
+8FE5CC 93E6 8FE5CC <CJK>
+8FE5CD 93E7 8FE5CD <CJK>
+8FE5CE 93F9 8FE5CE <CJK>
+8FE5CF 93F7 8FE5CF <CJK>
+8FE5D0 93F8 8FE5D0 <CJK>
+8FE5D1 93FA 8FE5D1 <CJK>
+8FE5D2 93FB 8FE5D2 <CJK>
+8FE5D3 93FD 8FE5D3 <CJK>
+8FE5D4 9401 8FE5D4 <CJK>
+8FE5D5 9402 8FE5D5 <CJK>
+8FE5D6 9404 8FE5D6 <CJK>
+8FE5D7 9408 8FE5D7 <CJK>
+8FE5D8 9409 8FE5D8 <CJK>
+8FE5D9 940D 8FE5D9 <CJK>
+8FE5DA 940E 8FE5DA <CJK>
+8FE5DB 940F 8FE5DB <CJK>
+8FE5DC 9415 8FE5DC <CJK>
+8FE5DD 9416 8FE5DD <CJK>
+8FE5DE 9417 8FE5DE <CJK>
+8FE5DF 941F 8FE5DF <CJK>
+8FE5E0 942E 8FE5E0 <CJK>
+8FE5E1 942F 8FE5E1 <CJK>
+8FE5E2 9431 8FE5E2 <CJK>
+8FE5E3 9432 8FE5E3 <CJK>
+8FE5E4 9433 8FE5E4 <CJK>
+8FE5E5 9434 8FE5E5 <CJK>
+8FE5E6 943B 8FE5E6 <CJK>
+8FE5E7 943F 8FE5E7 <CJK>
+8FE5E8 943D 8FE5E8 <CJK>
+8FE5E9 9443 8FE5E9 <CJK>
+8FE5EA 9445 8FE5EA <CJK>
+8FE5EB 9448 8FE5EB <CJK>
+8FE5EC 944A 8FE5EC <CJK>
+8FE5ED 944C 8FE5ED <CJK>
+8FE5EE 9455 8FE5EE <CJK>
+8FE5EF 9459 8FE5EF <CJK>
+8FE5F0 945C 8FE5F0 <CJK>
+8FE5F1 945F 8FE5F1 <CJK>
+8FE5F2 9461 8FE5F2 <CJK>
+8FE5F3 9463 8FE5F3 <CJK>
+8FE5F4 9468 8FE5F4 <CJK>
+8FE5F5 946B 8FE5F5 <CJK>
+8FE5F6 946D 8FE5F6 <CJK>
+8FE5F7 946E 8FE5F7 <CJK>
+8FE5F8 946F 8FE5F8 <CJK>
+8FE5F9 9471 8FE5F9 <CJK>
+8FE5FA 9472 8FE5FA <CJK>
+8FE5FB 9484 8FE5FB <CJK>
+8FE5FC 9483 8FE5FC <CJK>
+8FE5FD 9578 8FE5FD <CJK>
+8FE5FE 9579 8FE5FE <CJK>
+8FE6A1 957E 8FE6A1 <CJK>
+8FE6A2 9584 8FE6A2 <CJK>
+8FE6A3 9588 8FE6A3 <CJK>
+8FE6A4 958C 8FE6A4 <CJK>
+8FE6A5 958D 8FE6A5 <CJK>
+8FE6A6 958E 8FE6A6 <CJK>
+8FE6A7 959D 8FE6A7 <CJK>
+8FE6A8 959E 8FE6A8 <CJK>
+8FE6A9 959F 8FE6A9 <CJK>
+8FE6AA 95A1 8FE6AA <CJK>
+8FE6AB 95A6 8FE6AB <CJK>
+8FE6AC 95A9 8FE6AC <CJK>
+8FE6AD 95AB 8FE6AD <CJK>
+8FE6AE 95AC 8FE6AE <CJK>
+8FE6AF 95B4 8FE6AF <CJK>
+8FE6B0 95B6 8FE6B0 <CJK>
+8FE6B1 95BA 8FE6B1 <CJK>
+8FE6B2 95BD 8FE6B2 <CJK>
+8FE6B3 95BF 8FE6B3 <CJK>
+8FE6B4 95C6 8FE6B4 <CJK>
+8FE6B5 95C8 8FE6B5 <CJK>
+8FE6B6 95C9 8FE6B6 <CJK>
+8FE6B7 95CB 8FE6B7 <CJK>
+8FE6B8 95D0 8FE6B8 <CJK>
+8FE6B9 95D1 8FE6B9 <CJK>
+8FE6BA 95D2 8FE6BA <CJK>
+8FE6BB 95D3 8FE6BB <CJK>
+8FE6BC 95D9 8FE6BC <CJK>
+8FE6BD 95DA 8FE6BD <CJK>
+8FE6BE 95DD 8FE6BE <CJK>
+8FE6BF 95DE 8FE6BF <CJK>
+8FE6C0 95DF 8FE6C0 <CJK>
+8FE6C1 95E0 8FE6C1 <CJK>
+8FE6C2 95E4 8FE6C2 <CJK>
+8FE6C3 95E6 8FE6C3 <CJK>
+8FE6C4 961D 8FE6C4 <CJK>
+8FE6C5 961E 8FE6C5 <CJK>
+8FE6C6 9622 8FE6C6 <CJK>
+8FE6C7 9624 8FE6C7 <CJK>
+8FE6C8 9625 8FE6C8 <CJK>
+8FE6C9 9626 8FE6C9 <CJK>
+8FE6CA 962C 8FE6CA <CJK>
+8FE6CB 9631 8FE6CB <CJK>
+8FE6CC 9633 8FE6CC <CJK>
+8FE6CD 9637 8FE6CD <CJK>
+8FE6CE 9638 8FE6CE <CJK>
+8FE6CF 9639 8FE6CF <CJK>
+8FE6D0 963A 8FE6D0 <CJK>
+8FE6D1 963C 8FE6D1 <CJK>
+8FE6D2 963D 8FE6D2 <CJK>
+8FE6D3 9641 8FE6D3 <CJK>
+8FE6D4 9652 8FE6D4 <CJK>
+8FE6D5 9654 8FE6D5 <CJK>
+8FE6D6 9656 8FE6D6 <CJK>
+8FE6D7 9657 8FE6D7 <CJK>
+8FE6D8 9658 8FE6D8 <CJK>
+8FE6D9 9661 8FE6D9 <CJK>
+8FE6DA 966E 8FE6DA <CJK>
+8FE6DB 9674 8FE6DB <CJK>
+8FE6DC 967B 8FE6DC <CJK>
+8FE6DD 967C 8FE6DD <CJK>
+8FE6DE 967E 8FE6DE <CJK>
+8FE6DF 967F 8FE6DF <CJK>
+8FE6E0 9681 8FE6E0 <CJK>
+8FE6E1 9682 8FE6E1 <CJK>
+8FE6E2 9683 8FE6E2 <CJK>
+8FE6E3 9684 8FE6E3 <CJK>
+8FE6E4 9689 8FE6E4 <CJK>
+8FE6E5 9691 8FE6E5 <CJK>
+8FE6E6 9696 8FE6E6 <CJK>
+8FE6E7 969A 8FE6E7 <CJK>
+8FE6E8 969D 8FE6E8 <CJK>
+8FE6E9 969F 8FE6E9 <CJK>
+8FE6EA 96A4 8FE6EA <CJK>
+8FE6EB 96A5 8FE6EB <CJK>
+8FE6EC 96A6 8FE6EC <CJK>
+8FE6ED 96A9 8FE6ED <CJK>
+8FE6EE 96AE 8FE6EE <CJK>
+8FE6EF 96AF 8FE6EF <CJK>
+8FE6F0 96B3 8FE6F0 <CJK>
+8FE6F1 96BA 8FE6F1 <CJK>
+8FE6F2 96CA 8FE6F2 <CJK>
+8FE6F3 96D2 8FE6F3 <CJK>
+8FE6F4 5DB2 8FE6F4 <CJK>
+8FE6F5 96D8 8FE6F5 <CJK>
+8FE6F6 96DA 8FE6F6 <CJK>
+8FE6F7 96DD 8FE6F7 <CJK>
+8FE6F8 96DE 8FE6F8 <CJK>
+8FE6F9 96DF 8FE6F9 <CJK>
+8FE6FA 96E9 8FE6FA <CJK>
+8FE6FB 96EF 8FE6FB <CJK>
+8FE6FC 96F1 8FE6FC <CJK>
+8FE6FD 96FA 8FE6FD <CJK>
+8FE6FE 9702 8FE6FE <CJK>
+8FE7A1 9703 8FE7A1 <CJK>
+8FE7A2 9705 8FE7A2 <CJK>
+8FE7A3 9709 8FE7A3 <CJK>
+8FE7A4 971A 8FE7A4 <CJK>
+8FE7A5 971B 8FE7A5 <CJK>
+8FE7A6 971D 8FE7A6 <CJK>
+8FE7A7 9721 8FE7A7 <CJK>
+8FE7A8 9722 8FE7A8 <CJK>
+8FE7A9 9723 8FE7A9 <CJK>
+8FE7AA 9728 8FE7AA <CJK>
+8FE7AB 9731 8FE7AB <CJK>
+8FE7AC 9733 8FE7AC <CJK>
+8FE7AD 9741 8FE7AD <CJK>
+8FE7AE 9743 8FE7AE <CJK>
+8FE7AF 974A 8FE7AF <CJK>
+8FE7B0 974E 8FE7B0 <CJK>
+8FE7B1 974F 8FE7B1 <CJK>
+8FE7B2 9755 8FE7B2 <CJK>
+8FE7B3 9757 8FE7B3 <CJK>
+8FE7B4 9758 8FE7B4 <CJK>
+8FE7B5 975A 8FE7B5 <CJK>
+8FE7B6 975B 8FE7B6 <CJK>
+8FE7B7 9763 8FE7B7 <CJK>
+8FE7B8 9767 8FE7B8 <CJK>
+8FE7B9 976A 8FE7B9 <CJK>
+8FE7BA 976E 8FE7BA <CJK>
+8FE7BB 9773 8FE7BB <CJK>
+8FE7BC 9776 8FE7BC <CJK>
+8FE7BD 9777 8FE7BD <CJK>
+8FE7BE 9778 8FE7BE <CJK>
+8FE7BF 977B 8FE7BF <CJK>
+8FE7C0 977D 8FE7C0 <CJK>
+8FE7C1 977F 8FE7C1 <CJK>
+8FE7C2 9780 8FE7C2 <CJK>
+8FE7C3 9789 8FE7C3 <CJK>
+8FE7C4 9795 8FE7C4 <CJK>
+8FE7C5 9796 8FE7C5 <CJK>
+8FE7C6 9797 8FE7C6 <CJK>
+8FE7C7 9799 8FE7C7 <CJK>
+8FE7C8 979A 8FE7C8 <CJK>
+8FE7C9 979E 8FE7C9 <CJK>
+8FE7CA 979F 8FE7CA <CJK>
+8FE7CB 97A2 8FE7CB <CJK>
+8FE7CC 97AC 8FE7CC <CJK>
+8FE7CD 97AE 8FE7CD <CJK>
+8FE7CE 97B1 8FE7CE <CJK>
+8FE7CF 97B2 8FE7CF <CJK>
+8FE7D0 97B5 8FE7D0 <CJK>
+8FE7D1 97B6 8FE7D1 <CJK>
+8FE7D2 97B8 8FE7D2 <CJK>
+8FE7D3 97B9 8FE7D3 <CJK>
+8FE7D4 97BA 8FE7D4 <CJK>
+8FE7D5 97BC 8FE7D5 <CJK>
+8FE7D6 97BE 8FE7D6 <CJK>
+8FE7D7 97BF 8FE7D7 <CJK>
+8FE7D8 97C1 8FE7D8 <CJK>
+8FE7D9 97C4 8FE7D9 <CJK>
+8FE7DA 97C5 8FE7DA <CJK>
+8FE7DB 97C7 8FE7DB <CJK>
+8FE7DC 97C9 8FE7DC <CJK>
+8FE7DD 97CA 8FE7DD <CJK>
+8FE7DE 97CC 8FE7DE <CJK>
+8FE7DF 97CD 8FE7DF <CJK>
+8FE7E0 97CE 8FE7E0 <CJK>
+8FE7E1 97D0 8FE7E1 <CJK>
+8FE7E2 97D1 8FE7E2 <CJK>
+8FE7E3 97D4 8FE7E3 <CJK>
+8FE7E4 97D7 8FE7E4 <CJK>
+8FE7E5 97D8 8FE7E5 <CJK>
+8FE7E6 97D9 8FE7E6 <CJK>
+8FE7E7 97DD 8FE7E7 <CJK>
+8FE7E8 97DE 8FE7E8 <CJK>
+8FE7E9 97E0 8FE7E9 <CJK>
+8FE7EA 97DB 8FE7EA <CJK>
+8FE7EB 97E1 8FE7EB <CJK>
+8FE7EC 97E4 8FE7EC <CJK>
+8FE7ED 97EF 8FE7ED <CJK>
+8FE7EE 97F1 8FE7EE <CJK>
+8FE7EF 97F4 8FE7EF <CJK>
+8FE7F0 97F7 8FE7F0 <CJK>
+8FE7F1 97F8 8FE7F1 <CJK>
+8FE7F2 97FA 8FE7F2 <CJK>
+8FE7F3 9807 8FE7F3 <CJK>
+8FE7F4 980A 8FE7F4 <CJK>
+8FE7F5 9819 8FE7F5 <CJK>
+8FE7F6 980D 8FE7F6 <CJK>
+8FE7F7 980E 8FE7F7 <CJK>
+8FE7F8 9814 8FE7F8 <CJK>
+8FE7F9 9816 8FE7F9 <CJK>
+8FE7FA 981C 8FE7FA <CJK>
+8FE7FB 981E 8FE7FB <CJK>
+8FE7FC 9820 8FE7FC <CJK>
+8FE7FD 9823 8FE7FD <CJK>
+8FE7FE 9826 8FE7FE <CJK>
+8FE8A1 982B 8FE8A1 <CJK>
+8FE8A2 982E 8FE8A2 <CJK>
+8FE8A3 982F 8FE8A3 <CJK>
+8FE8A4 9830 8FE8A4 <CJK>
+8FE8A5 9832 8FE8A5 <CJK>
+8FE8A6 9833 8FE8A6 <CJK>
+8FE8A7 9835 8FE8A7 <CJK>
+8FE8A8 9825 8FE8A8 <CJK>
+8FE8A9 983E 8FE8A9 <CJK>
+8FE8AA 9844 8FE8AA <CJK>
+8FE8AB 9847 8FE8AB <CJK>
+8FE8AC 984A 8FE8AC <CJK>
+8FE8AD 9851 8FE8AD <CJK>
+8FE8AE 9852 8FE8AE <CJK>
+8FE8AF 9853 8FE8AF <CJK>
+8FE8B0 9856 8FE8B0 <CJK>
+8FE8B1 9857 8FE8B1 <CJK>
+8FE8B2 9859 8FE8B2 <CJK>
+8FE8B3 985A 8FE8B3 <CJK>
+8FE8B4 9862 8FE8B4 <CJK>
+8FE8B5 9863 8FE8B5 <CJK>
+8FE8B6 9865 8FE8B6 <CJK>
+8FE8B7 9866 8FE8B7 <CJK>
+8FE8B8 986A 8FE8B8 <CJK>
+8FE8B9 986C 8FE8B9 <CJK>
+8FE8BA 98AB 8FE8BA <CJK>
+8FE8BB 98AD 8FE8BB <CJK>
+8FE8BC 98AE 8FE8BC <CJK>
+8FE8BD 98B0 8FE8BD <CJK>
+8FE8BE 98B4 8FE8BE <CJK>
+8FE8BF 98B7 8FE8BF <CJK>
+8FE8C0 98B8 8FE8C0 <CJK>
+8FE8C1 98BA 8FE8C1 <CJK>
+8FE8C2 98BB 8FE8C2 <CJK>
+8FE8C3 98BF 8FE8C3 <CJK>
+8FE8C4 98C2 8FE8C4 <CJK>
+8FE8C5 98C5 8FE8C5 <CJK>
+8FE8C6 98C8 8FE8C6 <CJK>
+8FE8C7 98CC 8FE8C7 <CJK>
+8FE8C8 98E1 8FE8C8 <CJK>
+8FE8C9 98E3 8FE8C9 <CJK>
+8FE8CA 98E5 8FE8CA <CJK>
+8FE8CB 98E6 8FE8CB <CJK>
+8FE8CC 98E7 8FE8CC <CJK>
+8FE8CD 98EA 8FE8CD <CJK>
+8FE8CE 98F3 8FE8CE <CJK>
+8FE8CF 98F6 8FE8CF <CJK>
+8FE8D0 9902 8FE8D0 <CJK>
+8FE8D1 9907 8FE8D1 <CJK>
+8FE8D2 9908 8FE8D2 <CJK>
+8FE8D3 9911 8FE8D3 <CJK>
+8FE8D4 9915 8FE8D4 <CJK>
+8FE8D5 9916 8FE8D5 <CJK>
+8FE8D6 9917 8FE8D6 <CJK>
+8FE8D7 991A 8FE8D7 <CJK>
+8FE8D8 991B 8FE8D8 <CJK>
+8FE8D9 991C 8FE8D9 <CJK>
+8FE8DA 991F 8FE8DA <CJK>
+8FE8DB 9922 8FE8DB <CJK>
+8FE8DC 9926 8FE8DC <CJK>
+8FE8DD 9927 8FE8DD <CJK>
+8FE8DE 992B 8FE8DE <CJK>
+8FE8DF 9931 8FE8DF <CJK>
+8FE8E0 9932 8FE8E0 <CJK>
+8FE8E1 9933 8FE8E1 <CJK>
+8FE8E2 9934 8FE8E2 <CJK>
+8FE8E3 9935 8FE8E3 <CJK>
+8FE8E4 9939 8FE8E4 <CJK>
+8FE8E5 993A 8FE8E5 <CJK>
+8FE8E6 993B 8FE8E6 <CJK>
+8FE8E7 993C 8FE8E7 <CJK>
+8FE8E8 9940 8FE8E8 <CJK>
+8FE8E9 9941 8FE8E9 <CJK>
+8FE8EA 9946 8FE8EA <CJK>
+8FE8EB 9947 8FE8EB <CJK>
+8FE8EC 9948 8FE8EC <CJK>
+8FE8ED 994D 8FE8ED <CJK>
+8FE8EE 994E 8FE8EE <CJK>
+8FE8EF 9954 8FE8EF <CJK>
+8FE8F0 9958 8FE8F0 <CJK>
+8FE8F1 9959 8FE8F1 <CJK>
+8FE8F2 995B 8FE8F2 <CJK>
+8FE8F3 995C 8FE8F3 <CJK>
+8FE8F4 995E 8FE8F4 <CJK>
+8FE8F5 995F 8FE8F5 <CJK>
+8FE8F6 9960 8FE8F6 <CJK>
+8FE8F7 999B 8FE8F7 <CJK>
+8FE8F8 999D 8FE8F8 <CJK>
+8FE8F9 999F 8FE8F9 <CJK>
+8FE8FA 99A6 8FE8FA <CJK>
+8FE8FB 99B0 8FE8FB <CJK>
+8FE8FC 99B1 8FE8FC <CJK>
+8FE8FD 99B2 8FE8FD <CJK>
+8FE8FE 99B5 8FE8FE <CJK>
+8FE9A1 99B9 8FE9A1 <CJK>
+8FE9A2 99BA 8FE9A2 <CJK>
+8FE9A3 99BD 8FE9A3 <CJK>
+8FE9A4 99BF 8FE9A4 <CJK>
+8FE9A5 99C3 8FE9A5 <CJK>
+8FE9A6 99C9 8FE9A6 <CJK>
+8FE9A7 99D3 8FE9A7 <CJK>
+8FE9A8 99D4 8FE9A8 <CJK>
+8FE9A9 99D9 8FE9A9 <CJK>
+8FE9AA 99DA 8FE9AA <CJK>
+8FE9AB 99DC 8FE9AB <CJK>
+8FE9AC 99DE 8FE9AC <CJK>
+8FE9AD 99E7 8FE9AD <CJK>
+8FE9AE 99EA 8FE9AE <CJK>
+8FE9AF 99EB 8FE9AF <CJK>
+8FE9B0 99EC 8FE9B0 <CJK>
+8FE9B1 99F0 8FE9B1 <CJK>
+8FE9B2 99F4 8FE9B2 <CJK>
+8FE9B3 99F5 8FE9B3 <CJK>
+8FE9B4 99F9 8FE9B4 <CJK>
+8FE9B5 99FD 8FE9B5 <CJK>
+8FE9B6 99FE 8FE9B6 <CJK>
+8FE9B7 9A02 8FE9B7 <CJK>
+8FE9B8 9A03 8FE9B8 <CJK>
+8FE9B9 9A04 8FE9B9 <CJK>
+8FE9BA 9A0B 8FE9BA <CJK>
+8FE9BB 9A0C 8FE9BB <CJK>
+8FE9BC 9A10 8FE9BC <CJK>
+8FE9BD 9A11 8FE9BD <CJK>
+8FE9BE 9A16 8FE9BE <CJK>
+8FE9BF 9A1E 8FE9BF <CJK>
+8FE9C0 9A20 8FE9C0 <CJK>
+8FE9C1 9A22 8FE9C1 <CJK>
+8FE9C2 9A23 8FE9C2 <CJK>
+8FE9C3 9A24 8FE9C3 <CJK>
+8FE9C4 9A27 8FE9C4 <CJK>
+8FE9C5 9A2D 8FE9C5 <CJK>
+8FE9C6 9A2E 8FE9C6 <CJK>
+8FE9C7 9A33 8FE9C7 <CJK>
+8FE9C8 9A35 8FE9C8 <CJK>
+8FE9C9 9A36 8FE9C9 <CJK>
+8FE9CA 9A38 8FE9CA <CJK>
+8FE9CB 9A47 8FE9CB <CJK>
+8FE9CC 9A41 8FE9CC <CJK>
+8FE9CD 9A44 8FE9CD <CJK>
+8FE9CE 9A4A 8FE9CE <CJK>
+8FE9CF 9A4B 8FE9CF <CJK>
+8FE9D0 9A4C 8FE9D0 <CJK>
+8FE9D1 9A4E 8FE9D1 <CJK>
+8FE9D2 9A51 8FE9D2 <CJK>
+8FE9D3 9A54 8FE9D3 <CJK>
+8FE9D4 9A56 8FE9D4 <CJK>
+8FE9D5 9A5D 8FE9D5 <CJK>
+8FE9D6 9AAA 8FE9D6 <CJK>
+8FE9D7 9AAC 8FE9D7 <CJK>
+8FE9D8 9AAE 8FE9D8 <CJK>
+8FE9D9 9AAF 8FE9D9 <CJK>
+8FE9DA 9AB2 8FE9DA <CJK>
+8FE9DB 9AB4 8FE9DB <CJK>
+8FE9DC 9AB5 8FE9DC <CJK>
+8FE9DD 9AB6 8FE9DD <CJK>
+8FE9DE 9AB9 8FE9DE <CJK>
+8FE9DF 9ABB 8FE9DF <CJK>
+8FE9E0 9ABE 8FE9E0 <CJK>
+8FE9E1 9ABF 8FE9E1 <CJK>
+8FE9E2 9AC1 8FE9E2 <CJK>
+8FE9E3 9AC3 8FE9E3 <CJK>
+8FE9E4 9AC6 8FE9E4 <CJK>
+8FE9E5 9AC8 8FE9E5 <CJK>
+8FE9E6 9ACE 8FE9E6 <CJK>
+8FE9E7 9AD0 8FE9E7 <CJK>
+8FE9E8 9AD2 8FE9E8 <CJK>
+8FE9E9 9AD5 8FE9E9 <CJK>
+8FE9EA 9AD6 8FE9EA <CJK>
+8FE9EB 9AD7 8FE9EB <CJK>
+8FE9EC 9ADB 8FE9EC <CJK>
+8FE9ED 9ADC 8FE9ED <CJK>
+8FE9EE 9AE0 8FE9EE <CJK>
+8FE9EF 9AE4 8FE9EF <CJK>
+8FE9F0 9AE5 8FE9F0 <CJK>
+8FE9F1 9AE7 8FE9F1 <CJK>
+8FE9F2 9AE9 8FE9F2 <CJK>
+8FE9F3 9AEC 8FE9F3 <CJK>
+8FE9F4 9AF2 8FE9F4 <CJK>
+8FE9F5 9AF3 8FE9F5 <CJK>
+8FE9F6 9AF5 8FE9F6 <CJK>
+8FE9F7 9AF9 8FE9F7 <CJK>
+8FE9F8 9AFA 8FE9F8 <CJK>
+8FE9F9 9AFD 8FE9F9 <CJK>
+8FE9FA 9AFF 8FE9FA <CJK>
+8FE9FB 9B00 8FE9FB <CJK>
+8FE9FC 9B01 8FE9FC <CJK>
+8FE9FD 9B02 8FE9FD <CJK>
+8FE9FE 9B03 8FE9FE <CJK>
+8FEAA1 9B04 8FEAA1 <CJK>
+8FEAA2 9B05 8FEAA2 <CJK>
+8FEAA3 9B08 8FEAA3 <CJK>
+8FEAA4 9B09 8FEAA4 <CJK>
+8FEAA5 9B0B 8FEAA5 <CJK>
+8FEAA6 9B0C 8FEAA6 <CJK>
+8FEAA7 9B0D 8FEAA7 <CJK>
+8FEAA8 9B0E 8FEAA8 <CJK>
+8FEAA9 9B10 8FEAA9 <CJK>
+8FEAAA 9B12 8FEAAA <CJK>
+8FEAAB 9B16 8FEAAB <CJK>
+8FEAAC 9B19 8FEAAC <CJK>
+8FEAAD 9B1B 8FEAAD <CJK>
+8FEAAE 9B1C 8FEAAE <CJK>
+8FEAAF 9B20 8FEAAF <CJK>
+8FEAB0 9B26 8FEAB0 <CJK>
+8FEAB1 9B2B 8FEAB1 <CJK>
+8FEAB2 9B2D 8FEAB2 <CJK>
+8FEAB3 9B33 8FEAB3 <CJK>
+8FEAB4 9B34 8FEAB4 <CJK>
+8FEAB5 9B35 8FEAB5 <CJK>
+8FEAB6 9B37 8FEAB6 <CJK>
+8FEAB7 9B39 8FEAB7 <CJK>
+8FEAB8 9B3A 8FEAB8 <CJK>
+8FEAB9 9B3D 8FEAB9 <CJK>
+8FEABA 9B48 8FEABA <CJK>
+8FEABB 9B4B 8FEABB <CJK>
+8FEABC 9B4C 8FEABC <CJK>
+8FEABD 9B55 8FEABD <CJK>
+8FEABE 9B56 8FEABE <CJK>
+8FEABF 9B57 8FEABF <CJK>
+8FEAC0 9B5B 8FEAC0 <CJK>
+8FEAC1 9B5E 8FEAC1 <CJK>
+8FEAC2 9B61 8FEAC2 <CJK>
+8FEAC3 9B63 8FEAC3 <CJK>
+8FEAC4 9B65 8FEAC4 <CJK>
+8FEAC5 9B66 8FEAC5 <CJK>
+8FEAC6 9B68 8FEAC6 <CJK>
+8FEAC7 9B6A 8FEAC7 <CJK>
+8FEAC8 9B6B 8FEAC8 <CJK>
+8FEAC9 9B6C 8FEAC9 <CJK>
+8FEACA 9B6D 8FEACA <CJK>
+8FEACB 9B6E 8FEACB <CJK>
+8FEACC 9B73 8FEACC <CJK>
+8FEACD 9B75 8FEACD <CJK>
+8FEACE 9B77 8FEACE <CJK>
+8FEACF 9B78 8FEACF <CJK>
+8FEAD0 9B79 8FEAD0 <CJK>
+8FEAD1 9B7F 8FEAD1 <CJK>
+8FEAD2 9B80 8FEAD2 <CJK>
+8FEAD3 9B84 8FEAD3 <CJK>
+8FEAD4 9B85 8FEAD4 <CJK>
+8FEAD5 9B86 8FEAD5 <CJK>
+8FEAD6 9B87 8FEAD6 <CJK>
+8FEAD7 9B89 8FEAD7 <CJK>
+8FEAD8 9B8A 8FEAD8 <CJK>
+8FEAD9 9B8B 8FEAD9 <CJK>
+8FEADA 9B8D 8FEADA <CJK>
+8FEADB 9B8F 8FEADB <CJK>
+8FEADC 9B90 8FEADC <CJK>
+8FEADD 9B94 8FEADD <CJK>
+8FEADE 9B9A 8FEADE <CJK>
+8FEADF 9B9D 8FEADF <CJK>
+8FEAE0 9B9E 8FEAE0 <CJK>
+8FEAE1 9BA6 8FEAE1 <CJK>
+8FEAE2 9BA7 8FEAE2 <CJK>
+8FEAE3 9BA9 8FEAE3 <CJK>
+8FEAE4 9BAC 8FEAE4 <CJK>
+8FEAE5 9BB0 8FEAE5 <CJK>
+8FEAE6 9BB1 8FEAE6 <CJK>
+8FEAE7 9BB2 8FEAE7 <CJK>
+8FEAE8 9BB7 8FEAE8 <CJK>
+8FEAE9 9BB8 8FEAE9 <CJK>
+8FEAEA 9BBB 8FEAEA <CJK>
+8FEAEB 9BBC 8FEAEB <CJK>
+8FEAEC 9BBE 8FEAEC <CJK>
+8FEAED 9BBF 8FEAED <CJK>
+8FEAEE 9BC1 8FEAEE <CJK>
+8FEAEF 9BC7 8FEAEF <CJK>
+8FEAF0 9BC8 8FEAF0 <CJK>
+8FEAF1 9BCE 8FEAF1 <CJK>
+8FEAF2 9BD0 8FEAF2 <CJK>
+8FEAF3 9BD7 8FEAF3 <CJK>
+8FEAF4 9BD8 8FEAF4 <CJK>
+8FEAF5 9BDD 8FEAF5 <CJK>
+8FEAF6 9BDF 8FEAF6 <CJK>
+8FEAF7 9BE5 8FEAF7 <CJK>
+8FEAF8 9BE7 8FEAF8 <CJK>
+8FEAF9 9BEA 8FEAF9 <CJK>
+8FEAFA 9BEB 8FEAFA <CJK>
+8FEAFB 9BEF 8FEAFB <CJK>
+8FEAFC 9BF3 8FEAFC <CJK>
+8FEAFD 9BF7 8FEAFD <CJK>
+8FEAFE 9BF8 8FEAFE <CJK>
+8FEBA1 9BF9 8FEBA1 <CJK>
+8FEBA2 9BFA 8FEBA2 <CJK>
+8FEBA3 9BFD 8FEBA3 <CJK>
+8FEBA4 9BFF 8FEBA4 <CJK>
+8FEBA5 9C00 8FEBA5 <CJK>
+8FEBA6 9C02 8FEBA6 <CJK>
+8FEBA7 9C0B 8FEBA7 <CJK>
+8FEBA8 9C0F 8FEBA8 <CJK>
+8FEBA9 9C11 8FEBA9 <CJK>
+8FEBAA 9C16 8FEBAA <CJK>
+8FEBAB 9C18 8FEBAB <CJK>
+8FEBAC 9C19 8FEBAC <CJK>
+8FEBAD 9C1A 8FEBAD <CJK>
+8FEBAE 9C1C 8FEBAE <CJK>
+8FEBAF 9C1E 8FEBAF <CJK>
+8FEBB0 9C22 8FEBB0 <CJK>
+8FEBB1 9C23 8FEBB1 <CJK>
+8FEBB2 9C26 8FEBB2 <CJK>
+8FEBB3 9C27 8FEBB3 <CJK>
+8FEBB4 9C28 8FEBB4 <CJK>
+8FEBB5 9C29 8FEBB5 <CJK>
+8FEBB6 9C2A 8FEBB6 <CJK>
+8FEBB7 9C31 8FEBB7 <CJK>
+8FEBB8 9C35 8FEBB8 <CJK>
+8FEBB9 9C36 8FEBB9 <CJK>
+8FEBBA 9C37 8FEBBA <CJK>
+8FEBBB 9C3D 8FEBBB <CJK>
+8FEBBC 9C41 8FEBBC <CJK>
+8FEBBD 9C43 8FEBBD <CJK>
+8FEBBE 9C44 8FEBBE <CJK>
+8FEBBF 9C45 8FEBBF <CJK>
+8FEBC0 9C49 8FEBC0 <CJK>
+8FEBC1 9C4A 8FEBC1 <CJK>
+8FEBC2 9C4E 8FEBC2 <CJK>
+8FEBC3 9C4F 8FEBC3 <CJK>
+8FEBC4 9C50 8FEBC4 <CJK>
+8FEBC5 9C53 8FEBC5 <CJK>
+8FEBC6 9C54 8FEBC6 <CJK>
+8FEBC7 9C56 8FEBC7 <CJK>
+8FEBC8 9C58 8FEBC8 <CJK>
+8FEBC9 9C5B 8FEBC9 <CJK>
+8FEBCA 9C5D 8FEBCA <CJK>
+8FEBCB 9C5E 8FEBCB <CJK>
+8FEBCC 9C5F 8FEBCC <CJK>
+8FEBCD 9C63 8FEBCD <CJK>
+8FEBCE 9C69 8FEBCE <CJK>
+8FEBCF 9C6A 8FEBCF <CJK>
+8FEBD0 9C5C 8FEBD0 <CJK>
+8FEBD1 9C6B 8FEBD1 <CJK>
+8FEBD2 9C68 8FEBD2 <CJK>
+8FEBD3 9C6E 8FEBD3 <CJK>
+8FEBD4 9C70 8FEBD4 <CJK>
+8FEBD5 9C72 8FEBD5 <CJK>
+8FEBD6 9C75 8FEBD6 <CJK>
+8FEBD7 9C77 8FEBD7 <CJK>
+8FEBD8 9C7B 8FEBD8 <CJK>
+8FEBD9 9CE6 8FEBD9 <CJK>
+8FEBDA 9CF2 8FEBDA <CJK>
+8FEBDB 9CF7 8FEBDB <CJK>
+8FEBDC 9CF9 8FEBDC <CJK>
+8FEBDD 9D0B 8FEBDD <CJK>
+8FEBDE 9D02 8FEBDE <CJK>
+8FEBDF 9D11 8FEBDF <CJK>
+8FEBE0 9D17 8FEBE0 <CJK>
+8FEBE1 9D18 8FEBE1 <CJK>
+8FEBE2 9D1C 8FEBE2 <CJK>
+8FEBE3 9D1D 8FEBE3 <CJK>
+8FEBE4 9D1E 8FEBE4 <CJK>
+8FEBE5 9D2F 8FEBE5 <CJK>
+8FEBE6 9D30 8FEBE6 <CJK>
+8FEBE7 9D32 8FEBE7 <CJK>
+8FEBE8 9D33 8FEBE8 <CJK>
+8FEBE9 9D34 8FEBE9 <CJK>
+8FEBEA 9D3A 8FEBEA <CJK>
+8FEBEB 9D3C 8FEBEB <CJK>
+8FEBEC 9D45 8FEBEC <CJK>
+8FEBED 9D3D 8FEBED <CJK>
+8FEBEE 9D42 8FEBEE <CJK>
+8FEBEF 9D43 8FEBEF <CJK>
+8FEBF0 9D47 8FEBF0 <CJK>
+8FEBF1 9D4A 8FEBF1 <CJK>
+8FEBF2 9D53 8FEBF2 <CJK>
+8FEBF3 9D54 8FEBF3 <CJK>
+8FEBF4 9D5F 8FEBF4 <CJK>
+8FEBF5 9D63 8FEBF5 <CJK>
+8FEBF6 9D62 8FEBF6 <CJK>
+8FEBF7 9D65 8FEBF7 <CJK>
+8FEBF8 9D69 8FEBF8 <CJK>
+8FEBF9 9D6A 8FEBF9 <CJK>
+8FEBFA 9D6B 8FEBFA <CJK>
+8FEBFB 9D70 8FEBFB <CJK>
+8FEBFC 9D76 8FEBFC <CJK>
+8FEBFD 9D77 8FEBFD <CJK>
+8FEBFE 9D7B 8FEBFE <CJK>
+8FECA1 9D7C 8FECA1 <CJK>
+8FECA2 9D7E 8FECA2 <CJK>
+8FECA3 9D83 8FECA3 <CJK>
+8FECA4 9D84 8FECA4 <CJK>
+8FECA5 9D86 8FECA5 <CJK>
+8FECA6 9D8A 8FECA6 <CJK>
+8FECA7 9D8D 8FECA7 <CJK>
+8FECA8 9D8E 8FECA8 <CJK>
+8FECA9 9D92 8FECA9 <CJK>
+8FECAA 9D93 8FECAA <CJK>
+8FECAB 9D95 8FECAB <CJK>
+8FECAC 9D96 8FECAC <CJK>
+8FECAD 9D97 8FECAD <CJK>
+8FECAE 9D98 8FECAE <CJK>
+8FECAF 9DA1 8FECAF <CJK>
+8FECB0 9DAA 8FECB0 <CJK>
+8FECB1 9DAC 8FECB1 <CJK>
+8FECB2 9DAE 8FECB2 <CJK>
+8FECB3 9DB1 8FECB3 <CJK>
+8FECB4 9DB5 8FECB4 <CJK>
+8FECB5 9DB9 8FECB5 <CJK>
+8FECB6 9DBC 8FECB6 <CJK>
+8FECB7 9DBF 8FECB7 <CJK>
+8FECB8 9DC3 8FECB8 <CJK>
+8FECB9 9DC7 8FECB9 <CJK>
+8FECBA 9DC9 8FECBA <CJK>
+8FECBB 9DCA 8FECBB <CJK>
+8FECBC 9DD4 8FECBC <CJK>
+8FECBD 9DD5 8FECBD <CJK>
+8FECBE 9DD6 8FECBE <CJK>
+8FECBF 9DD7 8FECBF <CJK>
+8FECC0 9DDA 8FECC0 <CJK>
+8FECC1 9DDE 8FECC1 <CJK>
+8FECC2 9DDF 8FECC2 <CJK>
+8FECC3 9DE0 8FECC3 <CJK>
+8FECC4 9DE5 8FECC4 <CJK>
+8FECC5 9DE7 8FECC5 <CJK>
+8FECC6 9DE9 8FECC6 <CJK>
+8FECC7 9DEB 8FECC7 <CJK>
+8FECC8 9DEE 8FECC8 <CJK>
+8FECC9 9DF0 8FECC9 <CJK>
+8FECCA 9DF3 8FECCA <CJK>
+8FECCB 9DF4 8FECCB <CJK>
+8FECCC 9DFE 8FECCC <CJK>
+8FECCD 9E0A 8FECCD <CJK>
+8FECCE 9E02 8FECCE <CJK>
+8FECCF 9E07 8FECCF <CJK>
+8FECD0 9E0E 8FECD0 <CJK>
+8FECD1 9E10 8FECD1 <CJK>
+8FECD2 9E11 8FECD2 <CJK>
+8FECD3 9E12 8FECD3 <CJK>
+8FECD4 9E15 8FECD4 <CJK>
+8FECD5 9E16 8FECD5 <CJK>
+8FECD6 9E19 8FECD6 <CJK>
+8FECD7 9E1C 8FECD7 <CJK>
+8FECD8 9E1D 8FECD8 <CJK>
+8FECD9 9E7A 8FECD9 <CJK>
+8FECDA 9E7B 8FECDA <CJK>
+8FECDB 9E7C 8FECDB <CJK>
+8FECDC 9E80 8FECDC <CJK>
+8FECDD 9E82 8FECDD <CJK>
+8FECDE 9E83 8FECDE <CJK>
+8FECDF 9E84 8FECDF <CJK>
+8FECE0 9E85 8FECE0 <CJK>
+8FECE1 9E87 8FECE1 <CJK>
+8FECE2 9E8E 8FECE2 <CJK>
+8FECE3 9E8F 8FECE3 <CJK>
+8FECE4 9E96 8FECE4 <CJK>
+8FECE5 9E98 8FECE5 <CJK>
+8FECE6 9E9B 8FECE6 <CJK>
+8FECE7 9E9E 8FECE7 <CJK>
+8FECE8 9EA4 8FECE8 <CJK>
+8FECE9 9EA8 8FECE9 <CJK>
+8FECEA 9EAC 8FECEA <CJK>
+8FECEB 9EAE 8FECEB <CJK>
+8FECEC 9EAF 8FECEC <CJK>
+8FECED 9EB0 8FECED <CJK>
+8FECEE 9EB3 8FECEE <CJK>
+8FECEF 9EB4 8FECEF <CJK>
+8FECF0 9EB5 8FECF0 <CJK>
+8FECF1 9EC6 8FECF1 <CJK>
+8FECF2 9EC8 8FECF2 <CJK>
+8FECF3 9ECB 8FECF3 <CJK>
+8FECF4 9ED5 8FECF4 <CJK>
+8FECF5 9EDF 8FECF5 <CJK>
+8FECF6 9EE4 8FECF6 <CJK>
+8FECF7 9EE7 8FECF7 <CJK>
+8FECF8 9EEC 8FECF8 <CJK>
+8FECF9 9EED 8FECF9 <CJK>
+8FECFA 9EEE 8FECFA <CJK>
+8FECFB 9EF0 8FECFB <CJK>
+8FECFC 9EF1 8FECFC <CJK>
+8FECFD 9EF2 8FECFD <CJK>
+8FECFE 9EF5 8FECFE <CJK>
+8FEDA1 9EF8 8FEDA1 U+9EF8 <CJK>
+8FEDA2 9EFF 8FEDA2 U+9EFF <CJK>
+8FEDA3 9F02 8FEDA3 U+9F02 <CJK>
+8FEDA4 9F03 8FEDA4 U+9F03 <CJK>
+8FEDA5 9F09 8FEDA5 U+9F09 <CJK>
+8FEDA6 9F0F 8FEDA6 U+9F0F <CJK>
+8FEDA7 9F10 8FEDA7 U+9F10 <CJK>
+8FEDA8 9F11 8FEDA8 U+9F11 <CJK>
+8FEDA9 9F12 8FEDA9 U+9F12 <CJK>
+8FEDAA 9F14 8FEDAA U+9F14 <CJK>
+8FEDAB 9F16 8FEDAB U+9F16 <CJK>
+8FEDAC 9F17 8FEDAC U+9F17 <CJK>
+8FEDAD 9F19 8FEDAD U+9F19 <CJK>
+8FEDAE 9F1A 8FEDAE U+9F1A <CJK>
+8FEDAF 9F1B 8FEDAF U+9F1B <CJK>
+8FEDB0 9F1F 8FEDB0 U+9F1F <CJK>
+8FEDB1 9F22 8FEDB1 U+9F22 <CJK>
+8FEDB2 9F26 8FEDB2 U+9F26 <CJK>
+8FEDB3 9F2A 8FEDB3 U+9F2A <CJK>
+8FEDB4 9F2B 8FEDB4 U+9F2B <CJK>
+8FEDB5 9F2F 8FEDB5 U+9F2F <CJK>
+8FEDB6 9F31 8FEDB6 U+9F31 <CJK>
+8FEDB7 9F32 8FEDB7 U+9F32 <CJK>
+8FEDB8 9F34 8FEDB8 U+9F34 <CJK>
+8FEDB9 9F37 8FEDB9 U+9F37 <CJK>
+8FEDBA 9F39 8FEDBA U+9F39 <CJK>
+8FEDBB 9F3A 8FEDBB U+9F3A <CJK>
+8FEDBC 9F3C 8FEDBC U+9F3C <CJK>
+8FEDBD 9F3D 8FEDBD U+9F3D <CJK>
+8FEDBE 9F3F 8FEDBE U+9F3F <CJK>
+8FEDBF 9F41 8FEDBF U+9F41 <CJK>
+8FEDC0 9F43 8FEDC0 U+9F43 <CJK>
+8FEDC1 9F44 8FEDC1 U+9F44 <CJK>
+8FEDC2 9F45 8FEDC2 U+9F45 <CJK>
+8FEDC3 9F46 8FEDC3 U+9F46 <CJK>
+8FEDC4 9F47 8FEDC4 U+9F47 <CJK>
+8FEDC5 9F53 8FEDC5 U+9F53 <CJK>
+8FEDC6 9F55 8FEDC6 U+9F55 <CJK>
+8FEDC7 9F56 8FEDC7 U+9F56 <CJK>
+8FEDC8 9F57 8FEDC8 U+9F57 <CJK>
+8FEDC9 9F58 8FEDC9 U+9F58 <CJK>
+8FEDCA 9F5A 8FEDCA U+9F5A <CJK>
+8FEDCB 9F5D 8FEDCB U+9F5D <CJK>
+8FEDCC 9F5E 8FEDCC U+9F5E <CJK>
+8FEDCD 9F68 8FEDCD U+9F68 <CJK>
+8FEDCE 9F69 8FEDCE U+9F69 <CJK>
+8FEDCF 9F6D 8FEDCF U+9F6D <CJK>
+8FEDD0 9F6E 8FEDD0 U+9F6E <CJK>
+8FEDD1 9F6F 8FEDD1 U+9F6F <CJK>
+8FEDD2 9F70 8FEDD2 U+9F70 <CJK>
+8FEDD3 9F71 8FEDD3 U+9F71 <CJK>
+8FEDD4 9F73 8FEDD4 U+9F73 <CJK>
+8FEDD5 9F75 8FEDD5 U+9F75 <CJK>
+8FEDD6 9F7A 8FEDD6 U+9F7A <CJK>
+8FEDD7 9F7D 8FEDD7 U+9F7D <CJK>
+8FEDD8 9F8F 8FEDD8 U+9F8F <CJK>
+8FEDD9 9F90 8FEDD9 U+9F90 <CJK>
+8FEDDA 9F91 8FEDDA U+9F91 <CJK>
+8FEDDB 9F92 8FEDDB U+9F92 <CJK>
+8FEDDC 9F94 8FEDDC U+9F94 <CJK>
+8FEDDD 9F96 8FEDDD U+9F96 <CJK>
+8FEDDE 9F97 8FEDDE U+9F97 <CJK>
+8FEDDF 9F9E 8FEDDF U+9F9E <CJK>
+8FEDE0 9FA1 8FEDE0 U+9FA1 <CJK>
+8FEDE1 9FA2 8FEDE1 U+9FA2 <CJK>
+8FEDE2 9FA3 8FEDE2 U+9FA3 <CJK>
+8FEDE3 9FA5 8FEDE3 U+9FA5 <CJK>
+8FF5A1 E3AC 8FF5A1 User defined range #2
+8FF5A2 E3AD 8FF5A2 User defined range #2
+8FF5A3 E3AE 8FF5A3 User defined range #2
+8FF5A4 E3AF 8FF5A4 User defined range #2
+8FF5A5 E3B0 8FF5A5 User defined range #2
+8FF5A6 E3B1 8FF5A6 User defined range #2
+8FF5A7 E3B2 8FF5A7 User defined range #2
+8FF5A8 E3B3 8FF5A8 User defined range #2
+8FF5A9 E3B4 8FF5A9 User defined range #2
+8FF5AA E3B5 8FF5AA User defined range #2
+8FF5AB E3B6 8FF5AB User defined range #2
+8FF5AC E3B7 8FF5AC User defined range #2
+8FF5AD E3B8 8FF5AD User defined range #2
+8FF5AE E3B9 8FF5AE User defined range #2
+8FF5AF E3BA 8FF5AF User defined range #2
+8FF5B0 E3BB 8FF5B0 User defined range #2
+8FF5B1 E3BC 8FF5B1 User defined range #2
+8FF5B2 E3BD 8FF5B2 User defined range #2
+8FF5B3 E3BE 8FF5B3 User defined range #2
+8FF5B4 E3BF 8FF5B4 User defined range #2
+8FF5B5 E3C0 8FF5B5 User defined range #2
+8FF5B6 E3C1 8FF5B6 User defined range #2
+8FF5B7 E3C2 8FF5B7 User defined range #2
+8FF5B8 E3C3 8FF5B8 User defined range #2
+8FF5B9 E3C4 8FF5B9 User defined range #2
+8FF5BA E3C5 8FF5BA User defined range #2
+8FF5BB E3C6 8FF5BB User defined range #2
+8FF5BC E3C7 8FF5BC User defined range #2
+8FF5BD E3C8 8FF5BD User defined range #2
+8FF5BE E3C9 8FF5BE User defined range #2
+8FF5BF E3CA 8FF5BF User defined range #2
+8FF5C0 E3CB 8FF5C0 User defined range #2
+8FF5C1 E3CC 8FF5C1 User defined range #2
+8FF5C2 E3CD 8FF5C2 User defined range #2
+8FF5C3 E3CE 8FF5C3 User defined range #2
+8FF5C4 E3CF 8FF5C4 User defined range #2
+8FF5C5 E3D0 8FF5C5 User defined range #2
+8FF5C6 E3D1 8FF5C6 User defined range #2
+8FF5C7 E3D2 8FF5C7 User defined range #2
+8FF5C8 E3D3 8FF5C8 User defined range #2
+8FF5C9 E3D4 8FF5C9 User defined range #2
+8FF5CA E3D5 8FF5CA User defined range #2
+8FF5CB E3D6 8FF5CB User defined range #2
+8FF5CC E3D7 8FF5CC User defined range #2
+8FF5CD E3D8 8FF5CD User defined range #2
+8FF5CE E3D9 8FF5CE User defined range #2
+8FF5CF E3DA 8FF5CF User defined range #2
+8FF5D0 E3DB 8FF5D0 User defined range #2
+8FF5D1 E3DC 8FF5D1 User defined range #2
+8FF5D2 E3DD 8FF5D2 User defined range #2
+8FF5D3 E3DE 8FF5D3 User defined range #2
+8FF5D4 E3DF 8FF5D4 User defined range #2
+8FF5D5 E3E0 8FF5D5 User defined range #2
+8FF5D6 E3E1 8FF5D6 User defined range #2
+8FF5D7 E3E2 8FF5D7 User defined range #2
+8FF5D8 E3E3 8FF5D8 User defined range #2
+8FF5D9 E3E4 8FF5D9 User defined range #2
+8FF5DA E3E5 8FF5DA User defined range #2
+8FF5DB E3E6 8FF5DB User defined range #2
+8FF5DC E3E7 8FF5DC User defined range #2
+8FF5DD E3E8 8FF5DD User defined range #2
+8FF5DE E3E9 8FF5DE User defined range #2
+8FF5DF E3EA 8FF5DF User defined range #2
+8FF5E0 E3EB 8FF5E0 User defined range #2
+8FF5E1 E3EC 8FF5E1 User defined range #2
+8FF5E2 E3ED 8FF5E2 User defined range #2
+8FF5E3 E3EE 8FF5E3 User defined range #2
+8FF5E4 E3EF 8FF5E4 User defined range #2
+8FF5E5 E3F0 8FF5E5 User defined range #2
+8FF5E6 E3F1 8FF5E6 User defined range #2
+8FF5E7 E3F2 8FF5E7 User defined range #2
+8FF5E8 E3F3 8FF5E8 User defined range #2
+8FF5E9 E3F4 8FF5E9 User defined range #2
+8FF5EA E3F5 8FF5EA User defined range #2
+8FF5EB E3F6 8FF5EB User defined range #2
+8FF5EC E3F7 8FF5EC User defined range #2
+8FF5ED E3F8 8FF5ED User defined range #2
+8FF5EE E3F9 8FF5EE User defined range #2
+8FF5EF E3FA 8FF5EF User defined range #2
+8FF5F0 E3FB 8FF5F0 User defined range #2
+8FF5F1 E3FC 8FF5F1 User defined range #2
+8FF5F2 E3FD 8FF5F2 User defined range #2
+8FF5F3 E3FE 8FF5F3 User defined range #2
+8FF5F4 E3FF 8FF5F4 User defined range #2
+8FF5F5 E400 8FF5F5 User defined range #2
+8FF5F6 E401 8FF5F6 User defined range #2
+8FF5F7 E402 8FF5F7 User defined range #2
+8FF5F8 E403 8FF5F8 User defined range #2
+8FF5F9 E404 8FF5F9 User defined range #2
+8FF5FA E405 8FF5FA User defined range #2
+8FF5FB E406 8FF5FB User defined range #2
+8FF5FC E407 8FF5FC User defined range #2
+8FF5FD E408 8FF5FD User defined range #2
+8FF5FE E409 8FF5FE User defined range #2
+8FF6A1 E40A 8FF6A1 User defined range #2
+8FF6A2 E40B 8FF6A2 User defined range #2
+8FF6A3 E40C 8FF6A3 User defined range #2
+8FF6A4 E40D 8FF6A4 User defined range #2
+8FF6A5 E40E 8FF6A5 User defined range #2
+8FF6A6 E40F 8FF6A6 User defined range #2
+8FF6A7 E410 8FF6A7 User defined range #2
+8FF6A8 E411 8FF6A8 User defined range #2
+8FF6A9 E412 8FF6A9 User defined range #2
+8FF6AA E413 8FF6AA User defined range #2
+8FF6AB E414 8FF6AB User defined range #2
+8FF6AC E415 8FF6AC User defined range #2
+8FF6AD E416 8FF6AD User defined range #2
+8FF6AE E417 8FF6AE User defined range #2
+8FF6AF E418 8FF6AF User defined range #2
+8FF6B0 E419 8FF6B0 User defined range #2
+8FF6B1 E41A 8FF6B1 User defined range #2
+8FF6B2 E41B 8FF6B2 User defined range #2
+8FF6B3 E41C 8FF6B3 User defined range #2
+8FF6B4 E41D 8FF6B4 User defined range #2
+8FF6B5 E41E 8FF6B5 User defined range #2
+8FF6B6 E41F 8FF6B6 User defined range #2
+8FF6B7 E420 8FF6B7 User defined range #2
+8FF6B8 E421 8FF6B8 User defined range #2
+8FF6B9 E422 8FF6B9 User defined range #2
+8FF6BA E423 8FF6BA User defined range #2
+8FF6BB E424 8FF6BB User defined range #2
+8FF6BC E425 8FF6BC User defined range #2
+8FF6BD E426 8FF6BD User defined range #2
+8FF6BE E427 8FF6BE User defined range #2
+8FF6BF E428 8FF6BF User defined range #2
+8FF6C0 E429 8FF6C0 User defined range #2
+8FF6C1 E42A 8FF6C1 User defined range #2
+8FF6C2 E42B 8FF6C2 User defined range #2
+8FF6C3 E42C 8FF6C3 User defined range #2
+8FF6C4 E42D 8FF6C4 User defined range #2
+8FF6C5 E42E 8FF6C5 User defined range #2
+8FF6C6 E42F 8FF6C6 User defined range #2
+8FF6C7 E430 8FF6C7 User defined range #2
+8FF6C8 E431 8FF6C8 User defined range #2
+8FF6C9 E432 8FF6C9 User defined range #2
+8FF6CA E433 8FF6CA User defined range #2
+8FF6CB E434 8FF6CB User defined range #2
+8FF6CC E435 8FF6CC User defined range #2
+8FF6CD E436 8FF6CD User defined range #2
+8FF6CE E437 8FF6CE User defined range #2
+8FF6CF E438 8FF6CF User defined range #2
+8FF6D0 E439 8FF6D0 User defined range #2
+8FF6D1 E43A 8FF6D1 User defined range #2
+8FF6D2 E43B 8FF6D2 User defined range #2
+8FF6D3 E43C 8FF6D3 User defined range #2
+8FF6D4 E43D 8FF6D4 User defined range #2
+8FF6D5 E43E 8FF6D5 User defined range #2
+8FF6D6 E43F 8FF6D6 User defined range #2
+8FF6D7 E440 8FF6D7 User defined range #2
+8FF6D8 E441 8FF6D8 User defined range #2
+8FF6D9 E442 8FF6D9 User defined range #2
+8FF6DA E443 8FF6DA User defined range #2
+8FF6DB E444 8FF6DB User defined range #2
+8FF6DC E445 8FF6DC User defined range #2
+8FF6DD E446 8FF6DD User defined range #2
+8FF6DE E447 8FF6DE User defined range #2
+8FF6DF E448 8FF6DF User defined range #2
+8FF6E0 E449 8FF6E0 User defined range #2
+8FF6E1 E44A 8FF6E1 User defined range #2
+8FF6E2 E44B 8FF6E2 User defined range #2
+8FF6E3 E44C 8FF6E3 User defined range #2
+8FF6E4 E44D 8FF6E4 User defined range #2
+8FF6E5 E44E 8FF6E5 User defined range #2
+8FF6E6 E44F 8FF6E6 User defined range #2
+8FF6E7 E450 8FF6E7 User defined range #2
+8FF6E8 E451 8FF6E8 User defined range #2
+8FF6E9 E452 8FF6E9 User defined range #2
+8FF6EA E453 8FF6EA User defined range #2
+8FF6EB E454 8FF6EB User defined range #2
+8FF6EC E455 8FF6EC User defined range #2
+8FF6ED E456 8FF6ED User defined range #2
+8FF6EE E457 8FF6EE User defined range #2
+8FF6EF E458 8FF6EF User defined range #2
+8FF6F0 E459 8FF6F0 User defined range #2
+8FF6F1 E45A 8FF6F1 User defined range #2
+8FF6F2 E45B 8FF6F2 User defined range #2
+8FF6F3 E45C 8FF6F3 User defined range #2
+8FF6F4 E45D 8FF6F4 User defined range #2
+8FF6F5 E45E 8FF6F5 User defined range #2
+8FF6F6 E45F 8FF6F6 User defined range #2
+8FF6F7 E460 8FF6F7 User defined range #2
+8FF6F8 E461 8FF6F8 User defined range #2
+8FF6F9 E462 8FF6F9 User defined range #2
+8FF6FA E463 8FF6FA User defined range #2
+8FF6FB E464 8FF6FB User defined range #2
+8FF6FC E465 8FF6FC User defined range #2
+8FF6FD E466 8FF6FD User defined range #2
+8FF6FE E467 8FF6FE User defined range #2
+8FF7A1 E468 8FF7A1 User defined range #2
+8FF7A2 E469 8FF7A2 User defined range #2
+8FF7A3 E46A 8FF7A3 User defined range #2
+8FF7A4 E46B 8FF7A4 User defined range #2
+8FF7A5 E46C 8FF7A5 User defined range #2
+8FF7A6 E46D 8FF7A6 User defined range #2
+8FF7A7 E46E 8FF7A7 User defined range #2
+8FF7A8 E46F 8FF7A8 User defined range #2
+8FF7A9 E470 8FF7A9 User defined range #2
+8FF7AA E471 8FF7AA User defined range #2
+8FF7AB E472 8FF7AB User defined range #2
+8FF7AC E473 8FF7AC User defined range #2
+8FF7AD E474 8FF7AD User defined range #2
+8FF7AE E475 8FF7AE User defined range #2
+8FF7AF E476 8FF7AF User defined range #2
+8FF7B0 E477 8FF7B0 User defined range #2
+8FF7B1 E478 8FF7B1 User defined range #2
+8FF7B2 E479 8FF7B2 User defined range #2
+8FF7B3 E47A 8FF7B3 User defined range #2
+8FF7B4 E47B 8FF7B4 User defined range #2
+8FF7B5 E47C 8FF7B5 User defined range #2
+8FF7B6 E47D 8FF7B6 User defined range #2
+8FF7B7 E47E 8FF7B7 User defined range #2
+8FF7B8 E47F 8FF7B8 User defined range #2
+8FF7B9 E480 8FF7B9 User defined range #2
+8FF7BA E481 8FF7BA User defined range #2
+8FF7BB E482 8FF7BB User defined range #2
+8FF7BC E483 8FF7BC User defined range #2
+8FF7BD E484 8FF7BD User defined range #2
+8FF7BE E485 8FF7BE User defined range #2
+8FF7BF E486 8FF7BF User defined range #2
+8FF7C0 E487 8FF7C0 User defined range #2
+8FF7C1 E488 8FF7C1 User defined range #2
+8FF7C2 E489 8FF7C2 User defined range #2
+8FF7C3 E48A 8FF7C3 User defined range #2
+8FF7C4 E48B 8FF7C4 User defined range #2
+8FF7C5 E48C 8FF7C5 User defined range #2
+8FF7C6 E48D 8FF7C6 User defined range #2
+8FF7C7 E48E 8FF7C7 User defined range #2
+8FF7C8 E48F 8FF7C8 User defined range #2
+8FF7C9 E490 8FF7C9 User defined range #2
+8FF7CA E491 8FF7CA User defined range #2
+8FF7CB E492 8FF7CB User defined range #2
+8FF7CC E493 8FF7CC User defined range #2
+8FF7CD E494 8FF7CD User defined range #2
+8FF7CE E495 8FF7CE User defined range #2
+8FF7CF E496 8FF7CF User defined range #2
+8FF7D0 E497 8FF7D0 User defined range #2
+8FF7D1 E498 8FF7D1 User defined range #2
+8FF7D2 E499 8FF7D2 User defined range #2
+8FF7D3 E49A 8FF7D3 User defined range #2
+8FF7D4 E49B 8FF7D4 User defined range #2
+8FF7D5 E49C 8FF7D5 User defined range #2
+8FF7D6 E49D 8FF7D6 User defined range #2
+8FF7D7 E49E 8FF7D7 User defined range #2
+8FF7D8 E49F 8FF7D8 User defined range #2
+8FF7D9 E4A0 8FF7D9 User defined range #2
+8FF7DA E4A1 8FF7DA User defined range #2
+8FF7DB E4A2 8FF7DB User defined range #2
+8FF7DC E4A3 8FF7DC User defined range #2
+8FF7DD E4A4 8FF7DD User defined range #2
+8FF7DE E4A5 8FF7DE User defined range #2
+8FF7DF E4A6 8FF7DF User defined range #2
+8FF7E0 E4A7 8FF7E0 User defined range #2
+8FF7E1 E4A8 8FF7E1 User defined range #2
+8FF7E2 E4A9 8FF7E2 User defined range #2
+8FF7E3 E4AA 8FF7E3 User defined range #2
+8FF7E4 E4AB 8FF7E4 User defined range #2
+8FF7E5 E4AC 8FF7E5 User defined range #2
+8FF7E6 E4AD 8FF7E6 User defined range #2
+8FF7E7 E4AE 8FF7E7 User defined range #2
+8FF7E8 E4AF 8FF7E8 User defined range #2
+8FF7E9 E4B0 8FF7E9 User defined range #2
+8FF7EA E4B1 8FF7EA User defined range #2
+8FF7EB E4B2 8FF7EB User defined range #2
+8FF7EC E4B3 8FF7EC User defined range #2
+8FF7ED E4B4 8FF7ED User defined range #2
+8FF7EE E4B5 8FF7EE User defined range #2
+8FF7EF E4B6 8FF7EF User defined range #2
+8FF7F0 E4B7 8FF7F0 User defined range #2
+8FF7F1 E4B8 8FF7F1 User defined range #2
+8FF7F2 E4B9 8FF7F2 User defined range #2
+8FF7F3 E4BA 8FF7F3 User defined range #2
+8FF7F4 E4BB 8FF7F4 User defined range #2
+8FF7F5 E4BC 8FF7F5 User defined range #2
+8FF7F6 E4BD 8FF7F6 User defined range #2
+8FF7F7 E4BE 8FF7F7 User defined range #2
+8FF7F8 E4BF 8FF7F8 User defined range #2
+8FF7F9 E4C0 8FF7F9 User defined range #2
+8FF7FA E4C1 8FF7FA User defined range #2
+8FF7FB E4C2 8FF7FB User defined range #2
+8FF7FC E4C3 8FF7FC User defined range #2
+8FF7FD E4C4 8FF7FD User defined range #2
+8FF7FE E4C5 8FF7FE User defined range #2
+8FF8A1 E4C6 8FF8A1 User defined range #2
+8FF8A2 E4C7 8FF8A2 User defined range #2
+8FF8A3 E4C8 8FF8A3 User defined range #2
+8FF8A4 E4C9 8FF8A4 User defined range #2
+8FF8A5 E4CA 8FF8A5 User defined range #2
+8FF8A6 E4CB 8FF8A6 User defined range #2
+8FF8A7 E4CC 8FF8A7 User defined range #2
+8FF8A8 E4CD 8FF8A8 User defined range #2
+8FF8A9 E4CE 8FF8A9 User defined range #2
+8FF8AA E4CF 8FF8AA User defined range #2
+8FF8AB E4D0 8FF8AB User defined range #2
+8FF8AC E4D1 8FF8AC User defined range #2
+8FF8AD E4D2 8FF8AD User defined range #2
+8FF8AE E4D3 8FF8AE User defined range #2
+8FF8AF E4D4 8FF8AF User defined range #2
+8FF8B0 E4D5 8FF8B0 User defined range #2
+8FF8B1 E4D6 8FF8B1 User defined range #2
+8FF8B2 E4D7 8FF8B2 User defined range #2
+8FF8B3 E4D8 8FF8B3 User defined range #2
+8FF8B4 E4D9 8FF8B4 User defined range #2
+8FF8B5 E4DA 8FF8B5 User defined range #2
+8FF8B6 E4DB 8FF8B6 User defined range #2
+8FF8B7 E4DC 8FF8B7 User defined range #2
+8FF8B8 E4DD 8FF8B8 User defined range #2
+8FF8B9 E4DE 8FF8B9 User defined range #2
+8FF8BA E4DF 8FF8BA User defined range #2
+8FF8BB E4E0 8FF8BB User defined range #2
+8FF8BC E4E1 8FF8BC User defined range #2
+8FF8BD E4E2 8FF8BD User defined range #2
+8FF8BE E4E3 8FF8BE User defined range #2
+8FF8BF E4E4 8FF8BF User defined range #2
+8FF8C0 E4E5 8FF8C0 User defined range #2
+8FF8C1 E4E6 8FF8C1 User defined range #2
+8FF8C2 E4E7 8FF8C2 User defined range #2
+8FF8C3 E4E8 8FF8C3 User defined range #2
+8FF8C4 E4E9 8FF8C4 User defined range #2
+8FF8C5 E4EA 8FF8C5 User defined range #2
+8FF8C6 E4EB 8FF8C6 User defined range #2
+8FF8C7 E4EC 8FF8C7 User defined range #2
+8FF8C8 E4ED 8FF8C8 User defined range #2
+8FF8C9 E4EE 8FF8C9 User defined range #2
+8FF8CA E4EF 8FF8CA User defined range #2
+8FF8CB E4F0 8FF8CB User defined range #2
+8FF8CC E4F1 8FF8CC User defined range #2
+8FF8CD E4F2 8FF8CD User defined range #2
+8FF8CE E4F3 8FF8CE User defined range #2
+8FF8CF E4F4 8FF8CF User defined range #2
+8FF8D0 E4F5 8FF8D0 User defined range #2
+8FF8D1 E4F6 8FF8D1 User defined range #2
+8FF8D2 E4F7 8FF8D2 User defined range #2
+8FF8D3 E4F8 8FF8D3 User defined range #2
+8FF8D4 E4F9 8FF8D4 User defined range #2
+8FF8D5 E4FA 8FF8D5 User defined range #2
+8FF8D6 E4FB 8FF8D6 User defined range #2
+8FF8D7 E4FC 8FF8D7 User defined range #2
+8FF8D8 E4FD 8FF8D8 User defined range #2
+8FF8D9 E4FE 8FF8D9 User defined range #2
+8FF8DA E4FF 8FF8DA User defined range #2
+8FF8DB E500 8FF8DB User defined range #2
+8FF8DC E501 8FF8DC User defined range #2
+8FF8DD E502 8FF8DD User defined range #2
+8FF8DE E503 8FF8DE User defined range #2
+8FF8DF E504 8FF8DF User defined range #2
+8FF8E0 E505 8FF8E0 User defined range #2
+8FF8E1 E506 8FF8E1 User defined range #2
+8FF8E2 E507 8FF8E2 User defined range #2
+8FF8E3 E508 8FF8E3 User defined range #2
+8FF8E4 E509 8FF8E4 User defined range #2
+8FF8E5 E50A 8FF8E5 User defined range #2
+8FF8E6 E50B 8FF8E6 User defined range #2
+8FF8E7 E50C 8FF8E7 User defined range #2
+8FF8E8 E50D 8FF8E8 User defined range #2
+8FF8E9 E50E 8FF8E9 User defined range #2
+8FF8EA E50F 8FF8EA User defined range #2
+8FF8EB E510 8FF8EB User defined range #2
+8FF8EC E511 8FF8EC User defined range #2
+8FF8ED E512 8FF8ED User defined range #2
+8FF8EE E513 8FF8EE User defined range #2
+8FF8EF E514 8FF8EF User defined range #2
+8FF8F0 E515 8FF8F0 User defined range #2
+8FF8F1 E516 8FF8F1 User defined range #2
+8FF8F2 E517 8FF8F2 User defined range #2
+8FF8F3 E518 8FF8F3 User defined range #2
+8FF8F4 E519 8FF8F4 User defined range #2
+8FF8F5 E51A 8FF8F5 User defined range #2
+8FF8F6 E51B 8FF8F6 User defined range #2
+8FF8F7 E51C 8FF8F7 User defined range #2
+8FF8F8 E51D 8FF8F8 User defined range #2
+8FF8F9 E51E 8FF8F9 User defined range #2
+8FF8FA E51F 8FF8FA User defined range #2
+8FF8FB E520 8FF8FB User defined range #2
+8FF8FC E521 8FF8FC User defined range #2
+8FF8FD E522 8FF8FD User defined range #2
+8FF8FE E523 8FF8FE User defined range #2
+8FF9A1 E524 8FF9A1 User defined range #2
+8FF9A2 E525 8FF9A2 User defined range #2
+8FF9A3 E526 8FF9A3 User defined range #2
+8FF9A4 E527 8FF9A4 User defined range #2
+8FF9A5 E528 8FF9A5 User defined range #2
+8FF9A6 E529 8FF9A6 User defined range #2
+8FF9A7 E52A 8FF9A7 User defined range #2
+8FF9A8 E52B 8FF9A8 User defined range #2
+8FF9A9 E52C 8FF9A9 User defined range #2
+8FF9AA E52D 8FF9AA User defined range #2
+8FF9AB E52E 8FF9AB User defined range #2
+8FF9AC E52F 8FF9AC User defined range #2
+8FF9AD E530 8FF9AD User defined range #2
+8FF9AE E531 8FF9AE User defined range #2
+8FF9AF E532 8FF9AF User defined range #2
+8FF9B0 E533 8FF9B0 User defined range #2
+8FF9B1 E534 8FF9B1 User defined range #2
+8FF9B2 E535 8FF9B2 User defined range #2
+8FF9B3 E536 8FF9B3 User defined range #2
+8FF9B4 E537 8FF9B4 User defined range #2
+8FF9B5 E538 8FF9B5 User defined range #2
+8FF9B6 E539 8FF9B6 User defined range #2
+8FF9B7 E53A 8FF9B7 User defined range #2
+8FF9B8 E53B 8FF9B8 User defined range #2
+8FF9B9 E53C 8FF9B9 User defined range #2
+8FF9BA E53D 8FF9BA User defined range #2
+8FF9BB E53E 8FF9BB User defined range #2
+8FF9BC E53F 8FF9BC User defined range #2
+8FF9BD E540 8FF9BD User defined range #2
+8FF9BE E541 8FF9BE User defined range #2
+8FF9BF E542 8FF9BF User defined range #2
+8FF9C0 E543 8FF9C0 User defined range #2
+8FF9C1 E544 8FF9C1 User defined range #2
+8FF9C2 E545 8FF9C2 User defined range #2
+8FF9C3 E546 8FF9C3 User defined range #2
+8FF9C4 E547 8FF9C4 User defined range #2
+8FF9C5 E548 8FF9C5 User defined range #2
+8FF9C6 E549 8FF9C6 User defined range #2
+8FF9C7 E54A 8FF9C7 User defined range #2
+8FF9C8 E54B 8FF9C8 User defined range #2
+8FF9C9 E54C 8FF9C9 User defined range #2
+8FF9CA E54D 8FF9CA User defined range #2
+8FF9CB E54E 8FF9CB User defined range #2
+8FF9CC E54F 8FF9CC User defined range #2
+8FF9CD E550 8FF9CD User defined range #2
+8FF9CE E551 8FF9CE User defined range #2
+8FF9CF E552 8FF9CF User defined range #2
+8FF9D0 E553 8FF9D0 User defined range #2
+8FF9D1 E554 8FF9D1 User defined range #2
+8FF9D2 E555 8FF9D2 User defined range #2
+8FF9D3 E556 8FF9D3 User defined range #2
+8FF9D4 E557 8FF9D4 User defined range #2
+8FF9D5 E558 8FF9D5 User defined range #2
+8FF9D6 E559 8FF9D6 User defined range #2
+8FF9D7 E55A 8FF9D7 User defined range #2
+8FF9D8 E55B 8FF9D8 User defined range #2
+8FF9D9 E55C 8FF9D9 User defined range #2
+8FF9DA E55D 8FF9DA User defined range #2
+8FF9DB E55E 8FF9DB User defined range #2
+8FF9DC E55F 8FF9DC User defined range #2
+8FF9DD E560 8FF9DD User defined range #2
+8FF9DE E561 8FF9DE User defined range #2
+8FF9DF E562 8FF9DF User defined range #2
+8FF9E0 E563 8FF9E0 User defined range #2
+8FF9E1 E564 8FF9E1 User defined range #2
+8FF9E2 E565 8FF9E2 User defined range #2
+8FF9E3 E566 8FF9E3 User defined range #2
+8FF9E4 E567 8FF9E4 User defined range #2
+8FF9E5 E568 8FF9E5 User defined range #2
+8FF9E6 E569 8FF9E6 User defined range #2
+8FF9E7 E56A 8FF9E7 User defined range #2
+8FF9E8 E56B 8FF9E8 User defined range #2
+8FF9E9 E56C 8FF9E9 User defined range #2
+8FF9EA E56D 8FF9EA User defined range #2
+8FF9EB E56E 8FF9EB User defined range #2
+8FF9EC E56F 8FF9EC User defined range #2
+8FF9ED E570 8FF9ED User defined range #2
+8FF9EE E571 8FF9EE User defined range #2
+8FF9EF E572 8FF9EF User defined range #2
+8FF9F0 E573 8FF9F0 User defined range #2
+8FF9F1 E574 8FF9F1 User defined range #2
+8FF9F2 E575 8FF9F2 User defined range #2
+8FF9F3 E576 8FF9F3 User defined range #2
+8FF9F4 E577 8FF9F4 User defined range #2
+8FF9F5 E578 8FF9F5 User defined range #2
+8FF9F6 E579 8FF9F6 User defined range #2
+8FF9F7 E57A 8FF9F7 User defined range #2
+8FF9F8 E57B 8FF9F8 User defined range #2
+8FF9F9 E57C 8FF9F9 User defined range #2
+8FF9FA E57D 8FF9FA User defined range #2
+8FF9FB E57E 8FF9FB User defined range #2
+8FF9FC E57F 8FF9FC User defined range #2
+8FF9FD E580 8FF9FD User defined range #2
+8FF9FE E581 8FF9FE User defined range #2
+8FFAA1 E582 8FFAA1 User defined range #2
+8FFAA2 E583 8FFAA2 User defined range #2
+8FFAA3 E584 8FFAA3 User defined range #2
+8FFAA4 E585 8FFAA4 User defined range #2
+8FFAA5 E586 8FFAA5 User defined range #2
+8FFAA6 E587 8FFAA6 User defined range #2
+8FFAA7 E588 8FFAA7 User defined range #2
+8FFAA8 E589 8FFAA8 User defined range #2
+8FFAA9 E58A 8FFAA9 User defined range #2
+8FFAAA E58B 8FFAAA User defined range #2
+8FFAAB E58C 8FFAAB User defined range #2
+8FFAAC E58D 8FFAAC User defined range #2
+8FFAAD E58E 8FFAAD User defined range #2
+8FFAAE E58F 8FFAAE User defined range #2
+8FFAAF E590 8FFAAF User defined range #2
+8FFAB0 E591 8FFAB0 User defined range #2
+8FFAB1 E592 8FFAB1 User defined range #2
+8FFAB2 E593 8FFAB2 User defined range #2
+8FFAB3 E594 8FFAB3 User defined range #2
+8FFAB4 E595 8FFAB4 User defined range #2
+8FFAB5 E596 8FFAB5 User defined range #2
+8FFAB6 E597 8FFAB6 User defined range #2
+8FFAB7 E598 8FFAB7 User defined range #2
+8FFAB8 E599 8FFAB8 User defined range #2
+8FFAB9 E59A 8FFAB9 User defined range #2
+8FFABA E59B 8FFABA User defined range #2
+8FFABB E59C 8FFABB User defined range #2
+8FFABC E59D 8FFABC User defined range #2
+8FFABD E59E 8FFABD User defined range #2
+8FFABE E59F 8FFABE User defined range #2
+8FFABF E5A0 8FFABF User defined range #2
+8FFAC0 E5A1 8FFAC0 User defined range #2
+8FFAC1 E5A2 8FFAC1 User defined range #2
+8FFAC2 E5A3 8FFAC2 User defined range #2
+8FFAC3 E5A4 8FFAC3 User defined range #2
+8FFAC4 E5A5 8FFAC4 User defined range #2
+8FFAC5 E5A6 8FFAC5 User defined range #2
+8FFAC6 E5A7 8FFAC6 User defined range #2
+8FFAC7 E5A8 8FFAC7 User defined range #2
+8FFAC8 E5A9 8FFAC8 User defined range #2
+8FFAC9 E5AA 8FFAC9 User defined range #2
+8FFACA E5AB 8FFACA User defined range #2
+8FFACB E5AC 8FFACB User defined range #2
+8FFACC E5AD 8FFACC User defined range #2
+8FFACD E5AE 8FFACD User defined range #2
+8FFACE E5AF 8FFACE User defined range #2
+8FFACF E5B0 8FFACF User defined range #2
+8FFAD0 E5B1 8FFAD0 User defined range #2
+8FFAD1 E5B2 8FFAD1 User defined range #2
+8FFAD2 E5B3 8FFAD2 User defined range #2
+8FFAD3 E5B4 8FFAD3 User defined range #2
+8FFAD4 E5B5 8FFAD4 User defined range #2
+8FFAD5 E5B6 8FFAD5 User defined range #2
+8FFAD6 E5B7 8FFAD6 User defined range #2
+8FFAD7 E5B8 8FFAD7 User defined range #2
+8FFAD8 E5B9 8FFAD8 User defined range #2
+8FFAD9 E5BA 8FFAD9 User defined range #2
+8FFADA E5BB 8FFADA User defined range #2
+8FFADB E5BC 8FFADB User defined range #2
+8FFADC E5BD 8FFADC User defined range #2
+8FFADD E5BE 8FFADD User defined range #2
+8FFADE E5BF 8FFADE User defined range #2
+8FFADF E5C0 8FFADF User defined range #2
+8FFAE0 E5C1 8FFAE0 User defined range #2
+8FFAE1 E5C2 8FFAE1 User defined range #2
+8FFAE2 E5C3 8FFAE2 User defined range #2
+8FFAE3 E5C4 8FFAE3 User defined range #2
+8FFAE4 E5C5 8FFAE4 User defined range #2
+8FFAE5 E5C6 8FFAE5 User defined range #2
+8FFAE6 E5C7 8FFAE6 User defined range #2
+8FFAE7 E5C8 8FFAE7 User defined range #2
+8FFAE8 E5C9 8FFAE8 User defined range #2
+8FFAE9 E5CA 8FFAE9 User defined range #2
+8FFAEA E5CB 8FFAEA User defined range #2
+8FFAEB E5CC 8FFAEB User defined range #2
+8FFAEC E5CD 8FFAEC User defined range #2
+8FFAED E5CE 8FFAED User defined range #2
+8FFAEE E5CF 8FFAEE User defined range #2
+8FFAEF E5D0 8FFAEF User defined range #2
+8FFAF0 E5D1 8FFAF0 User defined range #2
+8FFAF1 E5D2 8FFAF1 User defined range #2
+8FFAF2 E5D3 8FFAF2 User defined range #2
+8FFAF3 E5D4 8FFAF3 User defined range #2
+8FFAF4 E5D5 8FFAF4 User defined range #2
+8FFAF5 E5D6 8FFAF5 User defined range #2
+8FFAF6 E5D7 8FFAF6 User defined range #2
+8FFAF7 E5D8 8FFAF7 User defined range #2
+8FFAF8 E5D9 8FFAF8 User defined range #2
+8FFAF9 E5DA 8FFAF9 User defined range #2
+8FFAFA E5DB 8FFAFA User defined range #2
+8FFAFB E5DC 8FFAFB User defined range #2
+8FFAFC E5DD 8FFAFC User defined range #2
+8FFAFD E5DE 8FFAFD User defined range #2
+8FFAFE E5DF 8FFAFE User defined range #2
+8FFBA1 E5E0 8FFBA1 User defined range #2
+8FFBA2 E5E1 8FFBA2 User defined range #2
+8FFBA3 E5E2 8FFBA3 User defined range #2
+8FFBA4 E5E3 8FFBA4 User defined range #2
+8FFBA5 E5E4 8FFBA5 User defined range #2
+8FFBA6 E5E5 8FFBA6 User defined range #2
+8FFBA7 E5E6 8FFBA7 User defined range #2
+8FFBA8 E5E7 8FFBA8 User defined range #2
+8FFBA9 E5E8 8FFBA9 User defined range #2
+8FFBAA E5E9 8FFBAA User defined range #2
+8FFBAB E5EA 8FFBAB User defined range #2
+8FFBAC E5EB 8FFBAC User defined range #2
+8FFBAD E5EC 8FFBAD User defined range #2
+8FFBAE E5ED 8FFBAE User defined range #2
+8FFBAF E5EE 8FFBAF User defined range #2
+8FFBB0 E5EF 8FFBB0 User defined range #2
+8FFBB1 E5F0 8FFBB1 User defined range #2
+8FFBB2 E5F1 8FFBB2 User defined range #2
+8FFBB3 E5F2 8FFBB3 User defined range #2
+8FFBB4 E5F3 8FFBB4 User defined range #2
+8FFBB5 E5F4 8FFBB5 User defined range #2
+8FFBB6 E5F5 8FFBB6 User defined range #2
+8FFBB7 E5F6 8FFBB7 User defined range #2
+8FFBB8 E5F7 8FFBB8 User defined range #2
+8FFBB9 E5F8 8FFBB9 User defined range #2
+8FFBBA E5F9 8FFBBA User defined range #2
+8FFBBB E5FA 8FFBBB User defined range #2
+8FFBBC E5FB 8FFBBC User defined range #2
+8FFBBD E5FC 8FFBBD User defined range #2
+8FFBBE E5FD 8FFBBE User defined range #2
+8FFBBF E5FE 8FFBBF User defined range #2
+8FFBC0 E5FF 8FFBC0 User defined range #2
+8FFBC1 E600 8FFBC1 User defined range #2
+8FFBC2 E601 8FFBC2 User defined range #2
+8FFBC3 E602 8FFBC3 User defined range #2
+8FFBC4 E603 8FFBC4 User defined range #2
+8FFBC5 E604 8FFBC5 User defined range #2
+8FFBC6 E605 8FFBC6 User defined range #2
+8FFBC7 E606 8FFBC7 User defined range #2
+8FFBC8 E607 8FFBC8 User defined range #2
+8FFBC9 E608 8FFBC9 User defined range #2
+8FFBCA E609 8FFBCA User defined range #2
+8FFBCB E60A 8FFBCB User defined range #2
+8FFBCC E60B 8FFBCC User defined range #2
+8FFBCD E60C 8FFBCD User defined range #2
+8FFBCE E60D 8FFBCE User defined range #2
+8FFBCF E60E 8FFBCF User defined range #2
+8FFBD0 E60F 8FFBD0 User defined range #2
+8FFBD1 E610 8FFBD1 User defined range #2
+8FFBD2 E611 8FFBD2 User defined range #2
+8FFBD3 E612 8FFBD3 User defined range #2
+8FFBD4 E613 8FFBD4 User defined range #2
+8FFBD5 E614 8FFBD5 User defined range #2
+8FFBD6 E615 8FFBD6 User defined range #2
+8FFBD7 E616 8FFBD7 User defined range #2
+8FFBD8 E617 8FFBD8 User defined range #2
+8FFBD9 E618 8FFBD9 User defined range #2
+8FFBDA E619 8FFBDA User defined range #2
+8FFBDB E61A 8FFBDB User defined range #2
+8FFBDC E61B 8FFBDC User defined range #2
+8FFBDD E61C 8FFBDD User defined range #2
+8FFBDE E61D 8FFBDE User defined range #2
+8FFBDF E61E 8FFBDF User defined range #2
+8FFBE0 E61F 8FFBE0 User defined range #2
+8FFBE1 E620 8FFBE1 User defined range #2
+8FFBE2 E621 8FFBE2 User defined range #2
+8FFBE3 E622 8FFBE3 User defined range #2
+8FFBE4 E623 8FFBE4 User defined range #2
+8FFBE5 E624 8FFBE5 User defined range #2
+8FFBE6 E625 8FFBE6 User defined range #2
+8FFBE7 E626 8FFBE7 User defined range #2
+8FFBE8 E627 8FFBE8 User defined range #2
+8FFBE9 E628 8FFBE9 User defined range #2
+8FFBEA E629 8FFBEA User defined range #2
+8FFBEB E62A 8FFBEB User defined range #2
+8FFBEC E62B 8FFBEC User defined range #2
+8FFBED E62C 8FFBED User defined range #2
+8FFBEE E62D 8FFBEE User defined range #2
+8FFBEF E62E 8FFBEF User defined range #2
+8FFBF0 E62F 8FFBF0 User defined range #2
+8FFBF1 E630 8FFBF1 User defined range #2
+8FFBF2 E631 8FFBF2 User defined range #2
+8FFBF3 E632 8FFBF3 User defined range #2
+8FFBF4 E633 8FFBF4 User defined range #2
+8FFBF5 E634 8FFBF5 User defined range #2
+8FFBF6 E635 8FFBF6 User defined range #2
+8FFBF7 E636 8FFBF7 User defined range #2
+8FFBF8 E637 8FFBF8 User defined range #2
+8FFBF9 E638 8FFBF9 User defined range #2
+8FFBFA E639 8FFBFA User defined range #2
+8FFBFB E63A 8FFBFB User defined range #2
+8FFBFC E63B 8FFBFC User defined range #2
+8FFBFD E63C 8FFBFD User defined range #2
+8FFBFE E63D 8FFBFE User defined range #2
+8FFCA1 E63E 8FFCA1 User defined range #2
+8FFCA2 E63F 8FFCA2 User defined range #2
+8FFCA3 E640 8FFCA3 User defined range #2
+8FFCA4 E641 8FFCA4 User defined range #2
+8FFCA5 E642 8FFCA5 User defined range #2
+8FFCA6 E643 8FFCA6 User defined range #2
+8FFCA7 E644 8FFCA7 User defined range #2
+8FFCA8 E645 8FFCA8 User defined range #2
+8FFCA9 E646 8FFCA9 User defined range #2
+8FFCAA E647 8FFCAA User defined range #2
+8FFCAB E648 8FFCAB User defined range #2
+8FFCAC E649 8FFCAC User defined range #2
+8FFCAD E64A 8FFCAD User defined range #2
+8FFCAE E64B 8FFCAE User defined range #2
+8FFCAF E64C 8FFCAF User defined range #2
+8FFCB0 E64D 8FFCB0 User defined range #2
+8FFCB1 E64E 8FFCB1 User defined range #2
+8FFCB2 E64F 8FFCB2 User defined range #2
+8FFCB3 E650 8FFCB3 User defined range #2
+8FFCB4 E651 8FFCB4 User defined range #2
+8FFCB5 E652 8FFCB5 User defined range #2
+8FFCB6 E653 8FFCB6 User defined range #2
+8FFCB7 E654 8FFCB7 User defined range #2
+8FFCB8 E655 8FFCB8 User defined range #2
+8FFCB9 E656 8FFCB9 User defined range #2
+8FFCBA E657 8FFCBA User defined range #2
+8FFCBB E658 8FFCBB User defined range #2
+8FFCBC E659 8FFCBC User defined range #2
+8FFCBD E65A 8FFCBD User defined range #2
+8FFCBE E65B 8FFCBE User defined range #2
+8FFCBF E65C 8FFCBF User defined range #2
+8FFCC0 E65D 8FFCC0 User defined range #2
+8FFCC1 E65E 8FFCC1 User defined range #2
+8FFCC2 E65F 8FFCC2 User defined range #2
+8FFCC3 E660 8FFCC3 User defined range #2
+8FFCC4 E661 8FFCC4 User defined range #2
+8FFCC5 E662 8FFCC5 User defined range #2
+8FFCC6 E663 8FFCC6 User defined range #2
+8FFCC7 E664 8FFCC7 User defined range #2
+8FFCC8 E665 8FFCC8 User defined range #2
+8FFCC9 E666 8FFCC9 User defined range #2
+8FFCCA E667 8FFCCA User defined range #2
+8FFCCB E668 8FFCCB User defined range #2
+8FFCCC E669 8FFCCC User defined range #2
+8FFCCD E66A 8FFCCD User defined range #2
+8FFCCE E66B 8FFCCE User defined range #2
+8FFCCF E66C 8FFCCF User defined range #2
+8FFCD0 E66D 8FFCD0 User defined range #2
+8FFCD1 E66E 8FFCD1 User defined range #2
+8FFCD2 E66F 8FFCD2 User defined range #2
+8FFCD3 E670 8FFCD3 User defined range #2
+8FFCD4 E671 8FFCD4 User defined range #2
+8FFCD5 E672 8FFCD5 User defined range #2
+8FFCD6 E673 8FFCD6 User defined range #2
+8FFCD7 E674 8FFCD7 User defined range #2
+8FFCD8 E675 8FFCD8 User defined range #2
+8FFCD9 E676 8FFCD9 User defined range #2
+8FFCDA E677 8FFCDA User defined range #2
+8FFCDB E678 8FFCDB User defined range #2
+8FFCDC E679 8FFCDC User defined range #2
+8FFCDD E67A 8FFCDD User defined range #2
+8FFCDE E67B 8FFCDE User defined range #2
+8FFCDF E67C 8FFCDF User defined range #2
+8FFCE0 E67D 8FFCE0 User defined range #2
+8FFCE1 E67E 8FFCE1 User defined range #2
+8FFCE2 E67F 8FFCE2 User defined range #2
+8FFCE3 E680 8FFCE3 User defined range #2
+8FFCE4 E681 8FFCE4 User defined range #2
+8FFCE5 E682 8FFCE5 User defined range #2
+8FFCE6 E683 8FFCE6 User defined range #2
+8FFCE7 E684 8FFCE7 User defined range #2
+8FFCE8 E685 8FFCE8 User defined range #2
+8FFCE9 E686 8FFCE9 User defined range #2
+8FFCEA E687 8FFCEA User defined range #2
+8FFCEB E688 8FFCEB User defined range #2
+8FFCEC E689 8FFCEC User defined range #2
+8FFCED E68A 8FFCED User defined range #2
+8FFCEE E68B 8FFCEE User defined range #2
+8FFCEF E68C 8FFCEF User defined range #2
+8FFCF0 E68D 8FFCF0 User defined range #2
+8FFCF1 E68E 8FFCF1 User defined range #2
+8FFCF2 E68F 8FFCF2 User defined range #2
+8FFCF3 E690 8FFCF3 User defined range #2
+8FFCF4 E691 8FFCF4 User defined range #2
+8FFCF5 E692 8FFCF5 User defined range #2
+8FFCF6 E693 8FFCF6 User defined range #2
+8FFCF7 E694 8FFCF7 User defined range #2
+8FFCF8 E695 8FFCF8 User defined range #2
+8FFCF9 E696 8FFCF9 User defined range #2
+8FFCFA E697 8FFCFA User defined range #2
+8FFCFB E698 8FFCFB User defined range #2
+8FFCFC E699 8FFCFC User defined range #2
+8FFCFD E69A 8FFCFD User defined range #2
+8FFCFE E69B 8FFCFE User defined range #2
+8FFDA1 E69C 8FFDA1 User defined range #2
+8FFDA2 E69D 8FFDA2 User defined range #2
+8FFDA3 E69E 8FFDA3 User defined range #2
+8FFDA4 E69F 8FFDA4 User defined range #2
+8FFDA5 E6A0 8FFDA5 User defined range #2
+8FFDA6 E6A1 8FFDA6 User defined range #2
+8FFDA7 E6A2 8FFDA7 User defined range #2
+8FFDA8 E6A3 8FFDA8 User defined range #2
+8FFDA9 E6A4 8FFDA9 User defined range #2
+8FFDAA E6A5 8FFDAA User defined range #2
+8FFDAB E6A6 8FFDAB User defined range #2
+8FFDAC E6A7 8FFDAC User defined range #2
+8FFDAD E6A8 8FFDAD User defined range #2
+8FFDAE E6A9 8FFDAE User defined range #2
+8FFDAF E6AA 8FFDAF User defined range #2
+8FFDB0 E6AB 8FFDB0 User defined range #2
+8FFDB1 E6AC 8FFDB1 User defined range #2
+8FFDB2 E6AD 8FFDB2 User defined range #2
+8FFDB3 E6AE 8FFDB3 User defined range #2
+8FFDB4 E6AF 8FFDB4 User defined range #2
+8FFDB5 E6B0 8FFDB5 User defined range #2
+8FFDB6 E6B1 8FFDB6 User defined range #2
+8FFDB7 E6B2 8FFDB7 User defined range #2
+8FFDB8 E6B3 8FFDB8 User defined range #2
+8FFDB9 E6B4 8FFDB9 User defined range #2
+8FFDBA E6B5 8FFDBA User defined range #2
+8FFDBB E6B6 8FFDBB User defined range #2
+8FFDBC E6B7 8FFDBC User defined range #2
+8FFDBD E6B8 8FFDBD User defined range #2
+8FFDBE E6B9 8FFDBE User defined range #2
+8FFDBF E6BA 8FFDBF User defined range #2
+8FFDC0 E6BB 8FFDC0 User defined range #2
+8FFDC1 E6BC 8FFDC1 User defined range #2
+8FFDC2 E6BD 8FFDC2 User defined range #2
+8FFDC3 E6BE 8FFDC3 User defined range #2
+8FFDC4 E6BF 8FFDC4 User defined range #2
+8FFDC5 E6C0 8FFDC5 User defined range #2
+8FFDC6 E6C1 8FFDC6 User defined range #2
+8FFDC7 E6C2 8FFDC7 User defined range #2
+8FFDC8 E6C3 8FFDC8 User defined range #2
+8FFDC9 E6C4 8FFDC9 User defined range #2
+8FFDCA E6C5 8FFDCA User defined range #2
+8FFDCB E6C6 8FFDCB User defined range #2
+8FFDCC E6C7 8FFDCC User defined range #2
+8FFDCD E6C8 8FFDCD User defined range #2
+8FFDCE E6C9 8FFDCE User defined range #2
+8FFDCF E6CA 8FFDCF User defined range #2
+8FFDD0 E6CB 8FFDD0 User defined range #2
+8FFDD1 E6CC 8FFDD1 User defined range #2
+8FFDD2 E6CD 8FFDD2 User defined range #2
+8FFDD3 E6CE 8FFDD3 User defined range #2
+8FFDD4 E6CF 8FFDD4 User defined range #2
+8FFDD5 E6D0 8FFDD5 User defined range #2
+8FFDD6 E6D1 8FFDD6 User defined range #2
+8FFDD7 E6D2 8FFDD7 User defined range #2
+8FFDD8 E6D3 8FFDD8 User defined range #2
+8FFDD9 E6D4 8FFDD9 User defined range #2
+8FFDDA E6D5 8FFDDA User defined range #2
+8FFDDB E6D6 8FFDDB User defined range #2
+8FFDDC E6D7 8FFDDC User defined range #2
+8FFDDD E6D8 8FFDDD User defined range #2
+8FFDDE E6D9 8FFDDE User defined range #2
+8FFDDF E6DA 8FFDDF User defined range #2
+8FFDE0 E6DB 8FFDE0 User defined range #2
+8FFDE1 E6DC 8FFDE1 User defined range #2
+8FFDE2 E6DD 8FFDE2 User defined range #2
+8FFDE3 E6DE 8FFDE3 User defined range #2
+8FFDE4 E6DF 8FFDE4 User defined range #2
+8FFDE5 E6E0 8FFDE5 User defined range #2
+8FFDE6 E6E1 8FFDE6 User defined range #2
+8FFDE7 E6E2 8FFDE7 User defined range #2
+8FFDE8 E6E3 8FFDE8 User defined range #2
+8FFDE9 E6E4 8FFDE9 User defined range #2
+8FFDEA E6E5 8FFDEA User defined range #2
+8FFDEB E6E6 8FFDEB User defined range #2
+8FFDEC E6E7 8FFDEC User defined range #2
+8FFDED E6E8 8FFDED User defined range #2
+8FFDEE E6E9 8FFDEE User defined range #2
+8FFDEF E6EA 8FFDEF User defined range #2
+8FFDF0 E6EB 8FFDF0 User defined range #2
+8FFDF1 E6EC 8FFDF1 User defined range #2
+8FFDF2 E6ED 8FFDF2 User defined range #2
+8FFDF3 E6EE 8FFDF3 User defined range #2
+8FFDF4 E6EF 8FFDF4 User defined range #2
+8FFDF5 E6F0 8FFDF5 User defined range #2
+8FFDF6 E6F1 8FFDF6 User defined range #2
+8FFDF7 E6F2 8FFDF7 User defined range #2
+8FFDF8 E6F3 8FFDF8 User defined range #2
+8FFDF9 E6F4 8FFDF9 User defined range #2
+8FFDFA E6F5 8FFDFA User defined range #2
+8FFDFB E6F6 8FFDFB User defined range #2
+8FFDFC E6F7 8FFDFC User defined range #2
+8FFDFD E6F8 8FFDFD User defined range #2
+8FFDFE E6F9 8FFDFE User defined range #2
+8FFEA1 E6FA 8FFEA1 User defined range #2
+8FFEA2 E6FB 8FFEA2 User defined range #2
+8FFEA3 E6FC 8FFEA3 User defined range #2
+8FFEA4 E6FD 8FFEA4 User defined range #2
+8FFEA5 E6FE 8FFEA5 User defined range #2
+8FFEA6 E6FF 8FFEA6 User defined range #2
+8FFEA7 E700 8FFEA7 User defined range #2
+8FFEA8 E701 8FFEA8 User defined range #2
+8FFEA9 E702 8FFEA9 User defined range #2
+8FFEAA E703 8FFEAA User defined range #2
+8FFEAB E704 8FFEAB User defined range #2
+8FFEAC E705 8FFEAC User defined range #2
+8FFEAD E706 8FFEAD User defined range #2
+8FFEAE E707 8FFEAE User defined range #2
+8FFEAF E708 8FFEAF User defined range #2
+8FFEB0 E709 8FFEB0 User defined range #2
+8FFEB1 E70A 8FFEB1 User defined range #2
+8FFEB2 E70B 8FFEB2 User defined range #2
+8FFEB3 E70C 8FFEB3 User defined range #2
+8FFEB4 E70D 8FFEB4 User defined range #2
+8FFEB5 E70E 8FFEB5 User defined range #2
+8FFEB6 E70F 8FFEB6 User defined range #2
+8FFEB7 E710 8FFEB7 User defined range #2
+8FFEB8 E711 8FFEB8 User defined range #2
+8FFEB9 E712 8FFEB9 User defined range #2
+8FFEBA E713 8FFEBA User defined range #2
+8FFEBB E714 8FFEBB User defined range #2
+8FFEBC E715 8FFEBC User defined range #2
+8FFEBD E716 8FFEBD User defined range #2
+8FFEBE E717 8FFEBE User defined range #2
+8FFEBF E718 8FFEBF User defined range #2
+8FFEC0 E719 8FFEC0 User defined range #2
+8FFEC1 E71A 8FFEC1 User defined range #2
+8FFEC2 E71B 8FFEC2 User defined range #2
+8FFEC3 E71C 8FFEC3 User defined range #2
+8FFEC4 E71D 8FFEC4 User defined range #2
+8FFEC5 E71E 8FFEC5 User defined range #2
+8FFEC6 E71F 8FFEC6 User defined range #2
+8FFEC7 E720 8FFEC7 User defined range #2
+8FFEC8 E721 8FFEC8 User defined range #2
+8FFEC9 E722 8FFEC9 User defined range #2
+8FFECA E723 8FFECA User defined range #2
+8FFECB E724 8FFECB User defined range #2
+8FFECC E725 8FFECC User defined range #2
+8FFECD E726 8FFECD User defined range #2
+8FFECE E727 8FFECE User defined range #2
+8FFECF E728 8FFECF User defined range #2
+8FFED0 E729 8FFED0 User defined range #2
+8FFED1 E72A 8FFED1 User defined range #2
+8FFED2 E72B 8FFED2 User defined range #2
+8FFED3 E72C 8FFED3 User defined range #2
+8FFED4 E72D 8FFED4 User defined range #2
+8FFED5 E72E 8FFED5 User defined range #2
+8FFED6 E72F 8FFED6 User defined range #2
+8FFED7 E730 8FFED7 User defined range #2
+8FFED8 E731 8FFED8 User defined range #2
+8FFED9 E732 8FFED9 User defined range #2
+8FFEDA E733 8FFEDA User defined range #2
+8FFEDB E734 8FFEDB User defined range #2
+8FFEDC E735 8FFEDC User defined range #2
+8FFEDD E736 8FFEDD User defined range #2
+8FFEDE E737 8FFEDE User defined range #2
+8FFEDF E738 8FFEDF User defined range #2
+8FFEE0 E739 8FFEE0 User defined range #2
+8FFEE1 E73A 8FFEE1 User defined range #2
+8FFEE2 E73B 8FFEE2 User defined range #2
+8FFEE3 E73C 8FFEE3 User defined range #2
+8FFEE4 E73D 8FFEE4 User defined range #2
+8FFEE5 E73E 8FFEE5 User defined range #2
+8FFEE6 E73F 8FFEE6 User defined range #2
+8FFEE7 E740 8FFEE7 User defined range #2
+8FFEE8 E741 8FFEE8 User defined range #2
+8FFEE9 E742 8FFEE9 User defined range #2
+8FFEEA E743 8FFEEA User defined range #2
+8FFEEB E744 8FFEEB User defined range #2
+8FFEEC E745 8FFEEC User defined range #2
+8FFEED E746 8FFEED User defined range #2
+8FFEEE E747 8FFEEE User defined range #2
+8FFEEF E748 8FFEEF User defined range #2
+8FFEF0 E749 8FFEF0 User defined range #2
+8FFEF1 E74A 8FFEF1 User defined range #2
+8FFEF2 E74B 8FFEF2 User defined range #2
+8FFEF3 E74C 8FFEF3 User defined range #2
+8FFEF4 E74D 8FFEF4 User defined range #2
+8FFEF5 E74E 8FFEF5 User defined range #2
+8FFEF6 E74F 8FFEF6 User defined range #2
+8FFEF7 E750 8FFEF7 User defined range #2
+8FFEF8 E751 8FFEF8 User defined range #2
+8FFEF9 E752 8FFEF9 User defined range #2
+8FFEFA E753 8FFEFA User defined range #2
+8FFEFB E754 8FFEFB User defined range #2
+8FFEFC E755 8FFEFC User defined range #2
+8FFEFD E756 8FFEFD User defined range #2
+8FFEFE E757 8FFEFE User defined range #2
+A1A1 3000 A1A1 U+3000 IDEOGRAPHIC SPACE
+A1A2 3001 A1A2 U+3001 IDEOGRAPHIC COMMA
+A1A3 3002 A1A3 U+3002 IDEOGRAPHIC FULL STOP
+A1A4 FF0C A1A4 U+FF0C FULLWIDTH COMMA
+A1A5 FF0E A1A5 U+FF0E FULLWIDTH FULL STOP
+A1A6 30FB A1A6 U+30FB KATAKANA MIDDLE DOT
+A1A7 FF1A A1A7 U+FF1A FULLWIDTH COLON
+A1A8 FF1B A1A8 U+FF1B FULLWIDTH SEMICOLON
+A1A9 FF1F A1A9 U+FF1F FULLWIDTH QUESTION MARK
+A1AA FF01 A1AA U+FF01 FULLWIDTH EXCLAMATION MARK
+A1AB 309B A1AB U+309B KATAKANA-HIRAGANA VOICED SOUND MARK
+A1AC 309C A1AC U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+A1AD 00B4 A1AD U+00B4 ACUTE ACCENT
+A1AE FF40 A1AE U+FF40 FULLWIDTH GRAVE ACCENT
+A1AF 00A8 A1AF U+00A8 DIAERESIS
+A1B0 FF3E A1B0 U+FF3E FULLWIDTH CIRCUMFLEX ACCENT
+A1B1 FFE3 A1B1 U+FFE3 FULLWIDTH MACRON
+A1B2 FF3F A1B2 U+FF3F FULLWIDTH LOW LINE
+A1B3 30FD A1B3 U+30FD KATAKANA ITERATION MARK
+A1B4 30FE A1B4 U+30FE KATAKANA VOICED ITERATION MARK
+A1B5 309D A1B5 U+309D HIRAGANA ITERATION MARK
+A1B6 309E A1B6 U+309E HIRAGANA VOICED ITERATION MARK
+A1B7 3003 A1B7 U+3003 DITTO MARK
+A1B8 4EDD A1B8 U+4EDD <CJK>
+A1B9 3005 A1B9 U+3005 IDEOGRAPHIC ITERATION MARK
+A1BA 3006 A1BA U+3006 IDEOGRAPHIC CLOSING MARK
+A1BB 3007 A1BB U+3007 IDEOGRAPHIC NUMBER ZERO
+A1BC 30FC A1BC U+30FC KATAKANA-HIRAGANA PROLONGED SOUND MARK
+A1BD 2015 A1BD U+2015 HORIZONTAL BAR
+A1BE 2010 A1BE U+2010 HYPHEN
+A1BF FF0F A1BF U+FF0F FULLWIDTH SOLIDUS
+A1C1 301C A1C1 U+301C WAVE DASH
+A1C2 2016 A1C2 U+2016 DOUBLE VERTICAL LINE
+A1C3 FF5C A1C3 U+FF5C FULLWIDTH VERTICAL LINE
+A1C4 2026 A1C4 U+2026 HORIZONTAL ELLIPSIS
+A1C5 2025 A1C5 U+2025 TWO DOT LEADER
+A1C6 2018 A1C6 U+2018 LEFT SINGLE QUOTATION MARK
+A1C7 2019 A1C7 U+2019 RIGHT SINGLE QUOTATION MARK
+A1C8 201C A1C8 U+201C LEFT DOUBLE QUOTATION MARK
+A1C9 201D A1C9 U+201D RIGHT DOUBLE QUOTATION MARK
+A1CA FF08 A1CA U+FF08 FULLWIDTH LEFT PARENTHESIS
+A1CB FF09 A1CB U+FF09 FULLWIDTH RIGHT PARENTHESIS
+A1CC 3014 A1CC U+3014 LEFT TORTOISE SHELL BRACKET
+A1CD 3015 A1CD U+3015 RIGHT TORTOISE SHELL BRACKET
+A1CE FF3B A1CE U+FF3B FULLWIDTH LEFT SQUARE BRACKET
+A1CF FF3D A1CF U+FF3D FULLWIDTH RIGHT SQUARE BRACKET
+A1D0 FF5B A1D0 U+FF5B FULLWIDTH LEFT CURLY BRACKET
+A1D1 FF5D A1D1 U+FF5D FULLWIDTH RIGHT CURLY BRACKET
+A1D2 3008 A1D2 U+3008 LEFT ANGLE BRACKET
+A1D3 3009 A1D3 U+3009 RIGHT ANGLE BRACKET
+A1D4 300A A1D4 U+300A LEFT DOUBLE ANGLE BRACKET
+A1D5 300B A1D5 U+300B RIGHT DOUBLE ANGLE BRACKET
+A1D6 300C A1D6 U+300C LEFT CORNER BRACKET
+A1D7 300D A1D7 U+300D RIGHT CORNER BRACKET
+A1D8 300E A1D8 U+300E LEFT WHITE CORNER BRACKET
+A1D9 300F A1D9 U+300F RIGHT WHITE CORNER BRACKET
+A1DA 3010 A1DA U+3010 LEFT BLACK LENTICULAR BRACKET
+A1DB 3011 A1DB U+3011 RIGHT BLACK LENTICULAR BRACKET
+A1DC FF0B A1DC U+FF0B FULLWIDTH PLUS SIGN
+A1DD 2212 A1DD U+2212 MINUS SIGN
+A1DE 00B1 A1DE U+00B1 PLUS-MINUS SIGN
+A1DF 00D7 A1DF U+00D7 MULTIPLICATION SIGN
+A1E0 00F7 A1E0 U+00F7 DIVISION SIGN
+A1E1 FF1D A1E1 U+FF1D FULLWIDTH EQUALS SIGN
+A1E2 2260 A1E2 U+2260 NOT EQUAL TO
+A1E3 FF1C A1E3 U+FF1C FULLWIDTH LESS-THAN SIGN
+A1E4 FF1E A1E4 U+FF1E FULLWIDTH GREATER-THAN SIGN
+A1E5 2266 A1E5 U+2266 LESS-THAN OVER EQUAL TO
+A1E6 2267 A1E6 U+2267 GREATER-THAN OVER EQUAL TO
+A1E7 221E A1E7 U+221E INFINITY
+A1E8 2234 A1E8 U+2234 THEREFORE
+A1E9 2642 A1E9 U+2642 MALE SIGN
+A1EA 2640 A1EA U+2640 FEMALE SIGN
+A1EB 00B0 A1EB U+00B0 DEGREE SIGN
+A1EC 2032 A1EC U+2032 PRIME
+A1ED 2033 A1ED U+2033 DOUBLE PRIME
+A1EE 2103 A1EE U+2103 DEGREE CELSIUS
+A1EF FFE5 A1EF U+FFE5 FULLWIDTH YEN SIGN
+A1F0 FF04 A1F0 U+FF04 FULLWIDTH DOLLAR SIGN
+A1F1 00A2 A1F1 U+00A2 CENT SIGN
+A1F2 00A3 A1F2 U+00A3 POUND SIGN
+A1F3 FF05 A1F3 U+FF05 FULLWIDTH PERCENT SIGN
+A1F4 FF03 A1F4 U+FF03 FULLWIDTH NUMBER SIGN
+A1F5 FF06 A1F5 U+FF06 FULLWIDTH AMPERSAND
+A1F6 FF0A A1F6 U+FF0A FULLWIDTH ASTERISK
+A1F7 FF20 A1F7 U+FF20 FULLWIDTH COMMERCIAL AT
+A1F8 00A7 A1F8 U+00A7 SECTION SIGN
+A1F9 2606 A1F9 U+2606 WHITE STAR
+A1FA 2605 A1FA U+2605 BLACK STAR
+A1FB 25CB A1FB U+25CB WHITE CIRCLE
+A1FC 25CF A1FC U+25CF BLACK CIRCLE
+A1FD 25CE A1FD U+25CE BULLSEYE
+A1FE 25C7 A1FE U+25C7 WHITE DIAMOND
+A2A1 25C6 A2A1 U+25C6 BLACK DIAMOND
+A2A2 25A1 A2A2 U+25A1 WHITE SQUARE
+A2A3 25A0 A2A3 U+25A0 BLACK SQUARE
+A2A4 25B3 A2A4 U+25B3 WHITE UP-POINTING TRIANGLE
+A2A5 25B2 A2A5 U+25B2 BLACK UP-POINTING TRIANGLE
+A2A6 25BD A2A6 U+25BD WHITE DOWN-POINTING TRIANGLE
+A2A7 25BC A2A7 U+25BC BLACK DOWN-POINTING TRIANGLE
+A2A8 203B A2A8 U+203B REFERENCE MARK
+A2A9 3012 A2A9 U+3012 POSTAL MARK
+A2AA 2192 A2AA U+2192 RIGHTWARDS ARROW
+A2AB 2190 A2AB U+2190 LEFTWARDS ARROW
+A2AC 2191 A2AC U+2191 UPWARDS ARROW
+A2AD 2193 A2AD U+2193 DOWNWARDS ARROW
+A2AE 3013 A2AE U+3013 GETA MARK
+A2BA 2208 A2BA U+2208 ELEMENT OF
+A2BB 220B A2BB U+220B CONTAINS AS MEMBER
+A2BC 2286 A2BC U+2286 SUBset OF OR EQUAL TO
+A2BD 2287 A2BD U+2287 SUPERset OF OR EQUAL TO
+A2BE 2282 A2BE U+2282 SUBset OF
+A2BF 2283 A2BF U+2283 SUPERset OF
+A2C0 222A A2C0 U+222A UNION
+A2C1 2229 A2C1 U+2229 INTERSECTION
+A2CA 2227 A2CA U+2227 LOGICAL AND
+A2CB 2228 A2CB U+2228 LOGICAL OR
+A2CC 00AC A2CC U+00AC NOT SIGN
+A2CD 21D2 A2CD U+21D2 RIGHTWARDS DOUBLE ARROW
+A2CE 21D4 A2CE U+21D4 LEFT RIGHT DOUBLE ARROW
+A2CF 2200 A2CF U+2200 FOR ALL
+A2D0 2203 A2D0 U+2203 THERE EXISTS
+A2DC 2220 A2DC U+2220 ANGLE
+A2DD 22A5 A2DD U+22A5 UP TACK
+A2DE 2312 A2DE U+2312 ARC
+A2DF 2202 A2DF U+2202 PARTIAL DIFFERENTIAL
+A2E0 2207 A2E0 U+2207 NABLA
+A2E1 2261 A2E1 U+2261 IDENTICAL TO
+A2E2 2252 A2E2 U+2252 APPROXIMATELY EQUAL TO OR THE IMAGE OF
+A2E3 226A A2E3 U+226A MUCH LESS-THAN
+A2E4 226B A2E4 U+226B MUCH GREATER-THAN
+A2E5 221A A2E5 U+221A SQUARE ROOT
+A2E6 223D A2E6 U+223D REVERSED TILDE
+A2E7 221D A2E7 U+221D PROPORTIONAL TO
+A2E8 2235 A2E8 U+2235 BECAUSE
+A2E9 222B A2E9 U+222B INTEGRAL
+A2EA 222C A2EA U+222C DOUBLE INTEGRAL
+A2F2 212B A2F2 U+212B ANGSTROM SIGN
+A2F3 2030 A2F3 U+2030 PER MILLE SIGN
+A2F4 266F A2F4 U+266F MUSIC SHARP SIGN
+A2F5 266D A2F5 U+266D MUSIC FLAT SIGN
+A2F6 266A A2F6 U+266A EIGHTH NOTE
+A2F7 2020 A2F7 U+2020 DAGGER
+A2F8 2021 A2F8 U+2021 DOUBLE DAGGER
+A2F9 00B6 A2F9 U+00B6 PILCROW SIGN
+A2FE 25EF A2FE U+25EF LARGE CIRCLE
+A3B0 FF10 A3B0 U+FF10 FULLWIDTH DIGIT ZERO
+A3B1 FF11 A3B1 U+FF11 FULLWIDTH DIGIT ONE
+A3B2 FF12 A3B2 U+FF12 FULLWIDTH DIGIT TWO
+A3B3 FF13 A3B3 U+FF13 FULLWIDTH DIGIT THREE
+A3B4 FF14 A3B4 U+FF14 FULLWIDTH DIGIT FOUR
+A3B5 FF15 A3B5 U+FF15 FULLWIDTH DIGIT FIVE
+A3B6 FF16 A3B6 U+FF16 FULLWIDTH DIGIT SIX
+A3B7 FF17 A3B7 U+FF17 FULLWIDTH DIGIT SEVEN
+A3B8 FF18 A3B8 U+FF18 FULLWIDTH DIGIT EIGHT
+A3B9 FF19 A3B9 U+FF19 FULLWIDTH DIGIT NINE
+A3C1 FF21 A3C1 U+FF21 FULLWIDTH LATIN CAPITAL LETTER A
+A3C2 FF22 A3C2 U+FF22 FULLWIDTH LATIN CAPITAL LETTER B
+A3C3 FF23 A3C3 U+FF23 FULLWIDTH LATIN CAPITAL LETTER C
+A3C4 FF24 A3C4 U+FF24 FULLWIDTH LATIN CAPITAL LETTER D
+A3C5 FF25 A3C5 U+FF25 FULLWIDTH LATIN CAPITAL LETTER E
+A3C6 FF26 A3C6 U+FF26 FULLWIDTH LATIN CAPITAL LETTER F
+A3C7 FF27 A3C7 U+FF27 FULLWIDTH LATIN CAPITAL LETTER G
+A3C8 FF28 A3C8 U+FF28 FULLWIDTH LATIN CAPITAL LETTER H
+A3C9 FF29 A3C9 U+FF29 FULLWIDTH LATIN CAPITAL LETTER I
+A3CA FF2A A3CA U+FF2A FULLWIDTH LATIN CAPITAL LETTER J
+A3CB FF2B A3CB U+FF2B FULLWIDTH LATIN CAPITAL LETTER K
+A3CC FF2C A3CC U+FF2C FULLWIDTH LATIN CAPITAL LETTER L
+A3CD FF2D A3CD U+FF2D FULLWIDTH LATIN CAPITAL LETTER M
+A3CE FF2E A3CE U+FF2E FULLWIDTH LATIN CAPITAL LETTER N
+A3CF FF2F A3CF U+FF2F FULLWIDTH LATIN CAPITAL LETTER O
+A3D0 FF30 A3D0 U+FF30 FULLWIDTH LATIN CAPITAL LETTER P
+A3D1 FF31 A3D1 U+FF31 FULLWIDTH LATIN CAPITAL LETTER Q
+A3D2 FF32 A3D2 U+FF32 FULLWIDTH LATIN CAPITAL LETTER R
+A3D3 FF33 A3D3 U+FF33 FULLWIDTH LATIN CAPITAL LETTER S
+A3D4 FF34 A3D4 U+FF34 FULLWIDTH LATIN CAPITAL LETTER T
+A3D5 FF35 A3D5 U+FF35 FULLWIDTH LATIN CAPITAL LETTER U
+A3D6 FF36 A3D6 U+FF36 FULLWIDTH LATIN CAPITAL LETTER V
+A3D7 FF37 A3D7 U+FF37 FULLWIDTH LATIN CAPITAL LETTER W
+A3D8 FF38 A3D8 U+FF38 FULLWIDTH LATIN CAPITAL LETTER X
+A3D9 FF39 A3D9 U+FF39 FULLWIDTH LATIN CAPITAL LETTER Y
+A3DA FF3A A3DA U+FF3A FULLWIDTH LATIN CAPITAL LETTER Z
+A3E1 FF41 A3E1 U+FF41 FULLWIDTH LATIN SMALL LETTER A
+A3E2 FF42 A3E2 U+FF42 FULLWIDTH LATIN SMALL LETTER B
+A3E3 FF43 A3E3 U+FF43 FULLWIDTH LATIN SMALL LETTER C
+A3E4 FF44 A3E4 U+FF44 FULLWIDTH LATIN SMALL LETTER D
+A3E5 FF45 A3E5 U+FF45 FULLWIDTH LATIN SMALL LETTER E
+A3E6 FF46 A3E6 U+FF46 FULLWIDTH LATIN SMALL LETTER F
+A3E7 FF47 A3E7 U+FF47 FULLWIDTH LATIN SMALL LETTER G
+A3E8 FF48 A3E8 U+FF48 FULLWIDTH LATIN SMALL LETTER H
+A3E9 FF49 A3E9 U+FF49 FULLWIDTH LATIN SMALL LETTER I
+A3EA FF4A A3EA U+FF4A FULLWIDTH LATIN SMALL LETTER J
+A3EB FF4B A3EB U+FF4B FULLWIDTH LATIN SMALL LETTER K
+A3EC FF4C A3EC U+FF4C FULLWIDTH LATIN SMALL LETTER L
+A3ED FF4D A3ED U+FF4D FULLWIDTH LATIN SMALL LETTER M
+A3EE FF4E A3EE U+FF4E FULLWIDTH LATIN SMALL LETTER N
+A3EF FF4F A3EF U+FF4F FULLWIDTH LATIN SMALL LETTER O
+A3F0 FF50 A3F0 U+FF50 FULLWIDTH LATIN SMALL LETTER P
+A3F1 FF51 A3F1 U+FF51 FULLWIDTH LATIN SMALL LETTER Q
+A3F2 FF52 A3F2 U+FF52 FULLWIDTH LATIN SMALL LETTER R
+A3F3 FF53 A3F3 U+FF53 FULLWIDTH LATIN SMALL LETTER S
+A3F4 FF54 A3F4 U+FF54 FULLWIDTH LATIN SMALL LETTER T
+A3F5 FF55 A3F5 U+FF55 FULLWIDTH LATIN SMALL LETTER U
+A3F6 FF56 A3F6 U+FF56 FULLWIDTH LATIN SMALL LETTER V
+A3F7 FF57 A3F7 U+FF57 FULLWIDTH LATIN SMALL LETTER W
+A3F8 FF58 A3F8 U+FF58 FULLWIDTH LATIN SMALL LETTER X
+A3F9 FF59 A3F9 U+FF59 FULLWIDTH LATIN SMALL LETTER Y
+A3FA FF5A A3FA U+FF5A FULLWIDTH LATIN SMALL LETTER Z
+A4A1 3041 A4A1 U+3041 HIRAGANA LETTER SMALL A
+A4A2 3042 A4A2 U+3042 HIRAGANA LETTER A
+A4A3 3043 A4A3 U+3043 HIRAGANA LETTER SMALL I
+A4A4 3044 A4A4 U+3044 HIRAGANA LETTER I
+A4A5 3045 A4A5 U+3045 HIRAGANA LETTER SMALL U
+A4A6 3046 A4A6 U+3046 HIRAGANA LETTER U
+A4A7 3047 A4A7 U+3047 HIRAGANA LETTER SMALL E
+A4A8 3048 A4A8 U+3048 HIRAGANA LETTER E
+A4A9 3049 A4A9 U+3049 HIRAGANA LETTER SMALL O
+A4AA 304A A4AA U+304A HIRAGANA LETTER O
+A4AB 304B A4AB U+304B HIRAGANA LETTER KA
+A4AC 304C A4AC U+304C HIRAGANA LETTER GA
+A4AD 304D A4AD U+304D HIRAGANA LETTER KI
+A4AE 304E A4AE U+304E HIRAGANA LETTER GI
+A4AF 304F A4AF U+304F HIRAGANA LETTER KU
+A4B0 3050 A4B0 U+3050 HIRAGANA LETTER GU
+A4B1 3051 A4B1 U+3051 HIRAGANA LETTER KE
+A4B2 3052 A4B2 U+3052 HIRAGANA LETTER GE
+A4B3 3053 A4B3 U+3053 HIRAGANA LETTER KO
+A4B4 3054 A4B4 U+3054 HIRAGANA LETTER GO
+A4B5 3055 A4B5 U+3055 HIRAGANA LETTER SA
+A4B6 3056 A4B6 U+3056 HIRAGANA LETTER ZA
+A4B7 3057 A4B7 U+3057 HIRAGANA LETTER SI
+A4B8 3058 A4B8 U+3058 HIRAGANA LETTER ZI
+A4B9 3059 A4B9 U+3059 HIRAGANA LETTER SU
+A4BA 305A A4BA U+305A HIRAGANA LETTER ZU
+A4BB 305B A4BB U+305B HIRAGANA LETTER SE
+A4BC 305C A4BC U+305C HIRAGANA LETTER ZE
+A4BD 305D A4BD U+305D HIRAGANA LETTER SO
+A4BE 305E A4BE U+305E HIRAGANA LETTER ZO
+A4BF 305F A4BF U+305F HIRAGANA LETTER TA
+A4C0 3060 A4C0 U+3060 HIRAGANA LETTER DA
+A4C1 3061 A4C1 U+3061 HIRAGANA LETTER TI
+A4C2 3062 A4C2 U+3062 HIRAGANA LETTER DI
+A4C3 3063 A4C3 U+3063 HIRAGANA LETTER SMALL TU
+A4C4 3064 A4C4 U+3064 HIRAGANA LETTER TU
+A4C5 3065 A4C5 U+3065 HIRAGANA LETTER DU
+A4C6 3066 A4C6 U+3066 HIRAGANA LETTER TE
+A4C7 3067 A4C7 U+3067 HIRAGANA LETTER DE
+A4C8 3068 A4C8 U+3068 HIRAGANA LETTER TO
+A4C9 3069 A4C9 U+3069 HIRAGANA LETTER DO
+A4CA 306A A4CA U+306A HIRAGANA LETTER NA
+A4CB 306B A4CB U+306B HIRAGANA LETTER NI
+A4CC 306C A4CC U+306C HIRAGANA LETTER NU
+A4CD 306D A4CD U+306D HIRAGANA LETTER NE
+A4CE 306E A4CE U+306E HIRAGANA LETTER NO
+A4CF 306F A4CF U+306F HIRAGANA LETTER HA
+A4D0 3070 A4D0 U+3070 HIRAGANA LETTER BA
+A4D1 3071 A4D1 U+3071 HIRAGANA LETTER PA
+A4D2 3072 A4D2 U+3072 HIRAGANA LETTER HI
+A4D3 3073 A4D3 U+3073 HIRAGANA LETTER BI
+A4D4 3074 A4D4 U+3074 HIRAGANA LETTER PI
+A4D5 3075 A4D5 U+3075 HIRAGANA LETTER HU
+A4D6 3076 A4D6 U+3076 HIRAGANA LETTER BU
+A4D7 3077 A4D7 U+3077 HIRAGANA LETTER PU
+A4D8 3078 A4D8 U+3078 HIRAGANA LETTER HE
+A4D9 3079 A4D9 U+3079 HIRAGANA LETTER BE
+A4DA 307A A4DA U+307A HIRAGANA LETTER PE
+A4DB 307B A4DB U+307B HIRAGANA LETTER HO
+A4DC 307C A4DC U+307C HIRAGANA LETTER BO
+A4DD 307D A4DD U+307D HIRAGANA LETTER PO
+A4DE 307E A4DE U+307E HIRAGANA LETTER MA
+A4DF 307F A4DF U+307F HIRAGANA LETTER MI
+A4E0 3080 A4E0 U+3080 HIRAGANA LETTER MU
+A4E1 3081 A4E1 U+3081 HIRAGANA LETTER ME
+A4E2 3082 A4E2 U+3082 HIRAGANA LETTER MO
+A4E3 3083 A4E3 U+3083 HIRAGANA LETTER SMALL YA
+A4E4 3084 A4E4 U+3084 HIRAGANA LETTER YA
+A4E5 3085 A4E5 U+3085 HIRAGANA LETTER SMALL YU
+A4E6 3086 A4E6 U+3086 HIRAGANA LETTER YU
+A4E7 3087 A4E7 U+3087 HIRAGANA LETTER SMALL YO
+A4E8 3088 A4E8 U+3088 HIRAGANA LETTER YO
+A4E9 3089 A4E9 U+3089 HIRAGANA LETTER RA
+A4EA 308A A4EA U+308A HIRAGANA LETTER RI
+A4EB 308B A4EB U+308B HIRAGANA LETTER RU
+A4EC 308C A4EC U+308C HIRAGANA LETTER RE
+A4ED 308D A4ED U+308D HIRAGANA LETTER RO
+A4EE 308E A4EE U+308E HIRAGANA LETTER SMALL WA
+A4EF 308F A4EF U+308F HIRAGANA LETTER WA
+A4F0 3090 A4F0 U+3090 HIRAGANA LETTER WI
+A4F1 3091 A4F1 U+3091 HIRAGANA LETTER WE
+A4F2 3092 A4F2 U+3092 HIRAGANA LETTER WO
+A4F3 3093 A4F3 U+3093 HIRAGANA LETTER N
+A5A1 30A1 A5A1 U+30A1 KATAKANA LETTER SMALL A
+A5A2 30A2 A5A2 U+30A2 KATAKANA LETTER A
+A5A3 30A3 A5A3 U+30A3 KATAKANA LETTER SMALL I
+A5A4 30A4 A5A4 U+30A4 KATAKANA LETTER I
+A5A5 30A5 A5A5 U+30A5 KATAKANA LETTER SMALL U
+A5A6 30A6 A5A6 U+30A6 KATAKANA LETTER U
+A5A7 30A7 A5A7 U+30A7 KATAKANA LETTER SMALL E
+A5A8 30A8 A5A8 U+30A8 KATAKANA LETTER E
+A5A9 30A9 A5A9 U+30A9 KATAKANA LETTER SMALL O
+A5AA 30AA A5AA U+30AA KATAKANA LETTER O
+A5AB 30AB A5AB U+30AB KATAKANA LETTER KA
+A5AC 30AC A5AC U+30AC KATAKANA LETTER GA
+A5AD 30AD A5AD U+30AD KATAKANA LETTER KI
+A5AE 30AE A5AE U+30AE KATAKANA LETTER GI
+A5AF 30AF A5AF U+30AF KATAKANA LETTER KU
+A5B0 30B0 A5B0 U+30B0 KATAKANA LETTER GU
+A5B1 30B1 A5B1 U+30B1 KATAKANA LETTER KE
+A5B2 30B2 A5B2 U+30B2 KATAKANA LETTER GE
+A5B3 30B3 A5B3 U+30B3 KATAKANA LETTER KO
+A5B4 30B4 A5B4 U+30B4 KATAKANA LETTER GO
+A5B5 30B5 A5B5 U+30B5 KATAKANA LETTER SA
+A5B6 30B6 A5B6 U+30B6 KATAKANA LETTER ZA
+A5B7 30B7 A5B7 U+30B7 KATAKANA LETTER SI
+A5B8 30B8 A5B8 U+30B8 KATAKANA LETTER ZI
+A5B9 30B9 A5B9 U+30B9 KATAKANA LETTER SU
+A5BA 30BA A5BA U+30BA KATAKANA LETTER ZU
+A5BB 30BB A5BB U+30BB KATAKANA LETTER SE
+A5BC 30BC A5BC U+30BC KATAKANA LETTER ZE
+A5BD 30BD A5BD U+30BD KATAKANA LETTER SO
+A5BE 30BE A5BE U+30BE KATAKANA LETTER ZO
+A5BF 30BF A5BF U+30BF KATAKANA LETTER TA
+A5C0 30C0 A5C0 U+30C0 KATAKANA LETTER DA
+A5C1 30C1 A5C1 U+30C1 KATAKANA LETTER TI
+A5C2 30C2 A5C2 U+30C2 KATAKANA LETTER DI
+A5C3 30C3 A5C3 U+30C3 KATAKANA LETTER SMALL TU
+A5C4 30C4 A5C4 U+30C4 KATAKANA LETTER TU
+A5C5 30C5 A5C5 U+30C5 KATAKANA LETTER DU
+A5C6 30C6 A5C6 U+30C6 KATAKANA LETTER TE
+A5C7 30C7 A5C7 U+30C7 KATAKANA LETTER DE
+A5C8 30C8 A5C8 U+30C8 KATAKANA LETTER TO
+A5C9 30C9 A5C9 U+30C9 KATAKANA LETTER DO
+A5CA 30CA A5CA U+30CA KATAKANA LETTER NA
+A5CB 30CB A5CB U+30CB KATAKANA LETTER NI
+A5CC 30CC A5CC U+30CC KATAKANA LETTER NU
+A5CD 30CD A5CD U+30CD KATAKANA LETTER NE
+A5CE 30CE A5CE U+30CE KATAKANA LETTER NO
+A5CF 30CF A5CF U+30CF KATAKANA LETTER HA
+A5D0 30D0 A5D0 U+30D0 KATAKANA LETTER BA
+A5D1 30D1 A5D1 U+30D1 KATAKANA LETTER PA
+A5D2 30D2 A5D2 U+30D2 KATAKANA LETTER HI
+A5D3 30D3 A5D3 U+30D3 KATAKANA LETTER BI
+A5D4 30D4 A5D4 U+30D4 KATAKANA LETTER PI
+A5D5 30D5 A5D5 U+30D5 KATAKANA LETTER HU
+A5D6 30D6 A5D6 U+30D6 KATAKANA LETTER BU
+A5D7 30D7 A5D7 U+30D7 KATAKANA LETTER PU
+A5D8 30D8 A5D8 U+30D8 KATAKANA LETTER HE
+A5D9 30D9 A5D9 U+30D9 KATAKANA LETTER BE
+A5DA 30DA A5DA U+30DA KATAKANA LETTER PE
+A5DB 30DB A5DB U+30DB KATAKANA LETTER HO
+A5DC 30DC A5DC U+30DC KATAKANA LETTER BO
+A5DD 30DD A5DD U+30DD KATAKANA LETTER PO
+A5DE 30DE A5DE U+30DE KATAKANA LETTER MA
+A5DF 30DF A5DF U+30DF KATAKANA LETTER MI
+A5E0 30E0 A5E0 U+30E0 KATAKANA LETTER MU
+A5E1 30E1 A5E1 U+30E1 KATAKANA LETTER ME
+A5E2 30E2 A5E2 U+30E2 KATAKANA LETTER MO
+A5E3 30E3 A5E3 U+30E3 KATAKANA LETTER SMALL YA
+A5E4 30E4 A5E4 U+30E4 KATAKANA LETTER YA
+A5E5 30E5 A5E5 U+30E5 KATAKANA LETTER SMALL YU
+A5E6 30E6 A5E6 U+30E6 KATAKANA LETTER YU
+A5E7 30E7 A5E7 U+30E7 KATAKANA LETTER SMALL YO
+A5E8 30E8 A5E8 U+30E8 KATAKANA LETTER YO
+A5E9 30E9 A5E9 U+30E9 KATAKANA LETTER RA
+A5EA 30EA A5EA U+30EA KATAKANA LETTER RI
+A5EB 30EB A5EB U+30EB KATAKANA LETTER RU
+A5EC 30EC A5EC U+30EC KATAKANA LETTER RE
+A5ED 30ED A5ED U+30ED KATAKANA LETTER RO
+A5EE 30EE A5EE U+30EE KATAKANA LETTER SMALL WA
+A5EF 30EF A5EF U+30EF KATAKANA LETTER WA
+A5F0 30F0 A5F0 U+30F0 KATAKANA LETTER WI
+A5F1 30F1 A5F1 U+30F1 KATAKANA LETTER WE
+A5F2 30F2 A5F2 U+30F2 KATAKANA LETTER WO
+A5F3 30F3 A5F3 U+30F3 KATAKANA LETTER N
+A5F4 30F4 A5F4 U+30F4 KATAKANA LETTER VU
+A5F5 30F5 A5F5 U+30F5 KATAKANA LETTER SMALL KA
+A5F6 30F6 A5F6 U+30F6 KATAKANA LETTER SMALL KE
+A6A1 0391 A6A1 U+0391 GREEK CAPITAL LETTER ALPHA
+A6A2 0392 A6A2 U+0392 GREEK CAPITAL LETTER BETA
+A6A3 0393 A6A3 U+0393 GREEK CAPITAL LETTER GAMMA
+A6A4 0394 A6A4 U+0394 GREEK CAPITAL LETTER DELTA
+A6A5 0395 A6A5 U+0395 GREEK CAPITAL LETTER EPSILON
+A6A6 0396 A6A6 U+0396 GREEK CAPITAL LETTER ZETA
+A6A7 0397 A6A7 U+0397 GREEK CAPITAL LETTER ETA
+A6A8 0398 A6A8 U+0398 GREEK CAPITAL LETTER THETA
+A6A9 0399 A6A9 U+0399 GREEK CAPITAL LETTER IOTA
+A6AA 039A A6AA U+039A GREEK CAPITAL LETTER KAPPA
+A6AB 039B A6AB U+039B GREEK CAPITAL LETTER LAMDA
+A6AC 039C A6AC U+039C GREEK CAPITAL LETTER MU
+A6AD 039D A6AD U+039D GREEK CAPITAL LETTER NU
+A6AE 039E A6AE U+039E GREEK CAPITAL LETTER XI
+A6AF 039F A6AF U+039F GREEK CAPITAL LETTER OMICRON
+A6B0 03A0 A6B0 U+03A0 GREEK CAPITAL LETTER PI
+A6B1 03A1 A6B1 U+03A1 GREEK CAPITAL LETTER RHO
+A6B2 03A3 A6B2 U+03A3 GREEK CAPITAL LETTER SIGMA
+A6B3 03A4 A6B3 U+03A4 GREEK CAPITAL LETTER TAU
+A6B4 03A5 A6B4 U+03A5 GREEK CAPITAL LETTER UPSILON
+A6B5 03A6 A6B5 U+03A6 GREEK CAPITAL LETTER PHI
+A6B6 03A7 A6B6 U+03A7 GREEK CAPITAL LETTER CHI
+A6B7 03A8 A6B7 U+03A8 GREEK CAPITAL LETTER PSI
+A6B8 03A9 A6B8 U+03A9 GREEK CAPITAL LETTER OMEGA
+A6C1 03B1 A6C1 U+03B1 GREEK SMALL LETTER ALPHA
+A6C2 03B2 A6C2 U+03B2 GREEK SMALL LETTER BETA
+A6C3 03B3 A6C3 U+03B3 GREEK SMALL LETTER GAMMA
+A6C4 03B4 A6C4 U+03B4 GREEK SMALL LETTER DELTA
+A6C5 03B5 A6C5 U+03B5 GREEK SMALL LETTER EPSILON
+A6C6 03B6 A6C6 U+03B6 GREEK SMALL LETTER ZETA
+A6C7 03B7 A6C7 U+03B7 GREEK SMALL LETTER ETA
+A6C8 03B8 A6C8 U+03B8 GREEK SMALL LETTER THETA
+A6C9 03B9 A6C9 U+03B9 GREEK SMALL LETTER IOTA
+A6CA 03BA A6CA U+03BA GREEK SMALL LETTER KAPPA
+A6CB 03BB A6CB U+03BB GREEK SMALL LETTER LAMDA
+A6CC 03BC A6CC U+03BC GREEK SMALL LETTER MU
+A6CD 03BD A6CD U+03BD GREEK SMALL LETTER NU
+A6CE 03BE A6CE U+03BE GREEK SMALL LETTER XI
+A6CF 03BF A6CF U+03BF GREEK SMALL LETTER OMICRON
+A6D0 03C0 A6D0 U+03C0 GREEK SMALL LETTER PI
+A6D1 03C1 A6D1 U+03C1 GREEK SMALL LETTER RHO
+A6D2 03C3 A6D2 U+03C3 GREEK SMALL LETTER SIGMA
+A6D3 03C4 A6D3 U+03C4 GREEK SMALL LETTER TAU
+A6D4 03C5 A6D4 U+03C5 GREEK SMALL LETTER UPSILON
+A6D5 03C6 A6D5 U+03C6 GREEK SMALL LETTER PHI
+A6D6 03C7 A6D6 U+03C7 GREEK SMALL LETTER CHI
+A6D7 03C8 A6D7 U+03C8 GREEK SMALL LETTER PSI
+A6D8 03C9 A6D8 U+03C9 GREEK SMALL LETTER OMEGA
+A7A1 0410 A7A1 U+0410 CYRILLIC CAPITAL LETTER A
+A7A2 0411 A7A2 U+0411 CYRILLIC CAPITAL LETTER BE
+A7A3 0412 A7A3 U+0412 CYRILLIC CAPITAL LETTER VE
+A7A4 0413 A7A4 U+0413 CYRILLIC CAPITAL LETTER GHE
+A7A5 0414 A7A5 U+0414 CYRILLIC CAPITAL LETTER DE
+A7A6 0415 A7A6 U+0415 CYRILLIC CAPITAL LETTER IE
+A7A7 0401 A7A7 U+0401 CYRILLIC CAPITAL LETTER IO
+A7A8 0416 A7A8 U+0416 CYRILLIC CAPITAL LETTER ZHE
+A7A9 0417 A7A9 U+0417 CYRILLIC CAPITAL LETTER ZE
+A7AA 0418 A7AA U+0418 CYRILLIC CAPITAL LETTER I
+A7AB 0419 A7AB U+0419 CYRILLIC CAPITAL LETTER SHORT I
+A7AC 041A A7AC U+041A CYRILLIC CAPITAL LETTER KA
+A7AD 041B A7AD U+041B CYRILLIC CAPITAL LETTER EL
+A7AE 041C A7AE U+041C CYRILLIC CAPITAL LETTER EM
+A7AF 041D A7AF U+041D CYRILLIC CAPITAL LETTER EN
+A7B0 041E A7B0 U+041E CYRILLIC CAPITAL LETTER O
+A7B1 041F A7B1 U+041F CYRILLIC CAPITAL LETTER PE
+A7B2 0420 A7B2 U+0420 CYRILLIC CAPITAL LETTER ER
+A7B3 0421 A7B3 U+0421 CYRILLIC CAPITAL LETTER ES
+A7B4 0422 A7B4 U+0422 CYRILLIC CAPITAL LETTER TE
+A7B5 0423 A7B5 U+0423 CYRILLIC CAPITAL LETTER U
+A7B6 0424 A7B6 U+0424 CYRILLIC CAPITAL LETTER EF
+A7B7 0425 A7B7 U+0425 CYRILLIC CAPITAL LETTER HA
+A7B8 0426 A7B8 U+0426 CYRILLIC CAPITAL LETTER TSE
+A7B9 0427 A7B9 U+0427 CYRILLIC CAPITAL LETTER CHE
+A7BA 0428 A7BA U+0428 CYRILLIC CAPITAL LETTER SHA
+A7BB 0429 A7BB U+0429 CYRILLIC CAPITAL LETTER SHCHA
+A7BC 042A A7BC U+042A CYRILLIC CAPITAL LETTER HARD SIGN
+A7BD 042B A7BD U+042B CYRILLIC CAPITAL LETTER YERU
+A7BE 042C A7BE U+042C CYRILLIC CAPITAL LETTER SOFT SIGN
+A7BF 042D A7BF U+042D CYRILLIC CAPITAL LETTER E
+A7C0 042E A7C0 U+042E CYRILLIC CAPITAL LETTER YU
+A7C1 042F A7C1 U+042F CYRILLIC CAPITAL LETTER YA
+A7D1 0430 A7D1 U+0430 CYRILLIC SMALL LETTER A
+A7D2 0431 A7D2 U+0431 CYRILLIC SMALL LETTER BE
+A7D3 0432 A7D3 U+0432 CYRILLIC SMALL LETTER VE
+A7D4 0433 A7D4 U+0433 CYRILLIC SMALL LETTER GHE
+A7D5 0434 A7D5 U+0434 CYRILLIC SMALL LETTER DE
+A7D6 0435 A7D6 U+0435 CYRILLIC SMALL LETTER IE
+A7D7 0451 A7D7 U+0451 CYRILLIC SMALL LETTER IO
+A7D8 0436 A7D8 U+0436 CYRILLIC SMALL LETTER ZHE
+A7D9 0437 A7D9 U+0437 CYRILLIC SMALL LETTER ZE
+A7DA 0438 A7DA U+0438 CYRILLIC SMALL LETTER I
+A7DB 0439 A7DB U+0439 CYRILLIC SMALL LETTER SHORT I
+A7DC 043A A7DC U+043A CYRILLIC SMALL LETTER KA
+A7DD 043B A7DD U+043B CYRILLIC SMALL LETTER EL
+A7DE 043C A7DE U+043C CYRILLIC SMALL LETTER EM
+A7DF 043D A7DF U+043D CYRILLIC SMALL LETTER EN
+A7E0 043E A7E0 U+043E CYRILLIC SMALL LETTER O
+A7E1 043F A7E1 U+043F CYRILLIC SMALL LETTER PE
+A7E2 0440 A7E2 U+0440 CYRILLIC SMALL LETTER ER
+A7E3 0441 A7E3 U+0441 CYRILLIC SMALL LETTER ES
+A7E4 0442 A7E4 U+0442 CYRILLIC SMALL LETTER TE
+A7E5 0443 A7E5 U+0443 CYRILLIC SMALL LETTER U
+A7E6 0444 A7E6 U+0444 CYRILLIC SMALL LETTER EF
+A7E7 0445 A7E7 U+0445 CYRILLIC SMALL LETTER HA
+A7E8 0446 A7E8 U+0446 CYRILLIC SMALL LETTER TSE
+A7E9 0447 A7E9 U+0447 CYRILLIC SMALL LETTER CHE
+A7EA 0448 A7EA U+0448 CYRILLIC SMALL LETTER SHA
+A7EB 0449 A7EB U+0449 CYRILLIC SMALL LETTER SHCHA
+A7EC 044A A7EC U+044A CYRILLIC SMALL LETTER HARD SIGN
+A7ED 044B A7ED U+044B CYRILLIC SMALL LETTER YERU
+A7EE 044C A7EE U+044C CYRILLIC SMALL LETTER SOFT SIGN
+A7EF 044D A7EF U+044D CYRILLIC SMALL LETTER E
+A7F0 044E A7F0 U+044E CYRILLIC SMALL LETTER YU
+A7F1 044F A7F1 U+044F CYRILLIC SMALL LETTER YA
+A8A1 2500 A8A1 U+2500 BOX DRAWINGS LIGHT HORIZONTAL
+A8A2 2502 A8A2 U+2502 BOX DRAWINGS LIGHT VERTICAL
+A8A3 250C A8A3 U+250C BOX DRAWINGS LIGHT DOWN AND RIGHT
+A8A4 2510 A8A4 U+2510 BOX DRAWINGS LIGHT DOWN AND LEFT
+A8A5 2518 A8A5 U+2518 BOX DRAWINGS LIGHT UP AND LEFT
+A8A6 2514 A8A6 U+2514 BOX DRAWINGS LIGHT UP AND RIGHT
+A8A7 251C A8A7 U+251C BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+A8A8 252C A8A8 U+252C BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+A8A9 2524 A8A9 U+2524 BOX DRAWINGS LIGHT VERTICAL AND LEFT
+A8AA 2534 A8AA U+2534 BOX DRAWINGS LIGHT UP AND HORIZONTAL
+A8AB 253C A8AB U+253C BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+A8AC 2501 A8AC U+2501 BOX DRAWINGS HEAVY HORIZONTAL
+A8AD 2503 A8AD U+2503 BOX DRAWINGS HEAVY VERTICAL
+A8AE 250F A8AE U+250F BOX DRAWINGS HEAVY DOWN AND RIGHT
+A8AF 2513 A8AF U+2513 BOX DRAWINGS HEAVY DOWN AND LEFT
+A8B0 251B A8B0 U+251B BOX DRAWINGS HEAVY UP AND LEFT
+A8B1 2517 A8B1 U+2517 BOX DRAWINGS HEAVY UP AND RIGHT
+A8B2 2523 A8B2 U+2523 BOX DRAWINGS HEAVY VERTICAL AND RIGHT
+A8B3 2533 A8B3 U+2533 BOX DRAWINGS HEAVY DOWN AND HORIZONTAL
+A8B4 252B A8B4 U+252B BOX DRAWINGS HEAVY VERTICAL AND LEFT
+A8B5 253B A8B5 U+253B BOX DRAWINGS HEAVY UP AND HORIZONTAL
+A8B6 254B A8B6 U+254B BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL
+A8B7 2520 A8B7 U+2520 BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT
+A8B8 252F A8B8 U+252F BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY
+A8B9 2528 A8B9 U+2528 BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT
+A8BA 2537 A8BA U+2537 BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY
+A8BB 253F A8BB U+253F BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY
+A8BC 251D A8BC U+251D BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY
+A8BD 2530 A8BD U+2530 BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT
+A8BE 2525 A8BE U+2525 BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY
+A8BF 2538 A8BF U+2538 BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT
+A8C0 2542 A8C0 U+2542 BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT
+B0A1 4E9C B0A1 <CJK>
+B0A2 5516 B0A2 <CJK>
+B0A3 5A03 B0A3 <CJK>
+B0A4 963F B0A4 <CJK>
+B0A5 54C0 B0A5 <CJK>
+B0A6 611B B0A6 <CJK>
+B0A7 6328 B0A7 <CJK>
+B0A8 59F6 B0A8 <CJK>
+B0A9 9022 B0A9 <CJK>
+B0AA 8475 B0AA <CJK>
+B0AB 831C B0AB <CJK>
+B0AC 7A50 B0AC <CJK>
+B0AD 60AA B0AD <CJK>
+B0AE 63E1 B0AE <CJK>
+B0AF 6E25 B0AF <CJK>
+B0B0 65ED B0B0 <CJK>
+B0B1 8466 B0B1 <CJK>
+B0B2 82A6 B0B2 <CJK>
+B0B3 9BF5 B0B3 <CJK>
+B0B4 6893 B0B4 <CJK>
+B0B5 5727 B0B5 <CJK>
+B0B6 65A1 B0B6 <CJK>
+B0B7 6271 B0B7 <CJK>
+B0B8 5B9B B0B8 <CJK>
+B0B9 59D0 B0B9 <CJK>
+B0BA 867B B0BA <CJK>
+B0BB 98F4 B0BB <CJK>
+B0BC 7D62 B0BC <CJK>
+B0BD 7DBE B0BD <CJK>
+B0BE 9B8E B0BE <CJK>
+B0BF 6216 B0BF <CJK>
+B0C0 7C9F B0C0 <CJK>
+B0C1 88B7 B0C1 <CJK>
+B0C2 5B89 B0C2 <CJK>
+B0C3 5EB5 B0C3 <CJK>
+B0C4 6309 B0C4 <CJK>
+B0C5 6697 B0C5 <CJK>
+B0C6 6848 B0C6 <CJK>
+B0C7 95C7 B0C7 <CJK>
+B0C8 978D B0C8 <CJK>
+B0C9 674F B0C9 <CJK>
+B0CA 4EE5 B0CA <CJK>
+B0CB 4F0A B0CB <CJK>
+B0CC 4F4D B0CC <CJK>
+B0CD 4F9D B0CD <CJK>
+B0CE 5049 B0CE <CJK>
+B0CF 56F2 B0CF <CJK>
+B0D0 5937 B0D0 <CJK>
+B0D1 59D4 B0D1 <CJK>
+B0D2 5A01 B0D2 <CJK>
+B0D3 5C09 B0D3 <CJK>
+B0D4 60DF B0D4 <CJK>
+B0D5 610F B0D5 <CJK>
+B0D6 6170 B0D6 <CJK>
+B0D7 6613 B0D7 <CJK>
+B0D8 6905 B0D8 <CJK>
+B0D9 70BA B0D9 <CJK>
+B0DA 754F B0DA <CJK>
+B0DB 7570 B0DB <CJK>
+B0DC 79FB B0DC <CJK>
+B0DD 7DAD B0DD <CJK>
+B0DE 7DEF B0DE <CJK>
+B0DF 80C3 B0DF <CJK>
+B0E0 840E B0E0 <CJK>
+B0E1 8863 B0E1 <CJK>
+B0E2 8B02 B0E2 <CJK>
+B0E3 9055 B0E3 <CJK>
+B0E4 907A B0E4 <CJK>
+B0E5 533B B0E5 <CJK>
+B0E6 4E95 B0E6 <CJK>
+B0E7 4EA5 B0E7 <CJK>
+B0E8 57DF B0E8 <CJK>
+B0E9 80B2 B0E9 <CJK>
+B0EA 90C1 B0EA <CJK>
+B0EB 78EF B0EB <CJK>
+B0EC 4E00 B0EC <CJK>
+B0ED 58F1 B0ED <CJK>
+B0EE 6EA2 B0EE <CJK>
+B0EF 9038 B0EF <CJK>
+B0F0 7A32 B0F0 <CJK>
+B0F1 8328 B0F1 <CJK>
+B0F2 828B B0F2 <CJK>
+B0F3 9C2F B0F3 <CJK>
+B0F4 5141 B0F4 <CJK>
+B0F5 5370 B0F5 <CJK>
+B0F6 54BD B0F6 <CJK>
+B0F7 54E1 B0F7 <CJK>
+B0F8 56E0 B0F8 <CJK>
+B0F9 59FB B0F9 <CJK>
+B0FA 5F15 B0FA <CJK>
+B0FB 98F2 B0FB <CJK>
+B0FC 6DEB B0FC <CJK>
+B0FD 80E4 B0FD <CJK>
+B0FE 852D B0FE <CJK>
+B1A1 9662 B1A1 <CJK>
+B1A2 9670 B1A2 <CJK>
+B1A3 96A0 B1A3 <CJK>
+B1A4 97FB B1A4 <CJK>
+B1A5 540B B1A5 <CJK>
+B1A6 53F3 B1A6 <CJK>
+B1A7 5B87 B1A7 <CJK>
+B1A8 70CF B1A8 <CJK>
+B1A9 7FBD B1A9 <CJK>
+B1AA 8FC2 B1AA <CJK>
+B1AB 96E8 B1AB <CJK>
+B1AC 536F B1AC <CJK>
+B1AD 9D5C B1AD <CJK>
+B1AE 7ABA B1AE <CJK>
+B1AF 4E11 B1AF <CJK>
+B1B0 7893 B1B0 <CJK>
+B1B1 81FC B1B1 <CJK>
+B1B2 6E26 B1B2 <CJK>
+B1B3 5618 B1B3 <CJK>
+B1B4 5504 B1B4 <CJK>
+B1B5 6B1D B1B5 <CJK>
+B1B6 851A B1B6 <CJK>
+B1B7 9C3B B1B7 <CJK>
+B1B8 59E5 B1B8 <CJK>
+B1B9 53A9 B1B9 <CJK>
+B1BA 6D66 B1BA <CJK>
+B1BB 74DC B1BB <CJK>
+B1BC 958F B1BC <CJK>
+B1BD 5642 B1BD <CJK>
+B1BE 4E91 B1BE <CJK>
+B1BF 904B B1BF <CJK>
+B1C0 96F2 B1C0 <CJK>
+B1C1 834F B1C1 <CJK>
+B1C2 990C B1C2 <CJK>
+B1C3 53E1 B1C3 <CJK>
+B1C4 55B6 B1C4 <CJK>
+B1C5 5B30 B1C5 <CJK>
+B1C6 5F71 B1C6 <CJK>
+B1C7 6620 B1C7 <CJK>
+B1C8 66F3 B1C8 <CJK>
+B1C9 6804 B1C9 <CJK>
+B1CA 6C38 B1CA <CJK>
+B1CB 6CF3 B1CB <CJK>
+B1CC 6D29 B1CC <CJK>
+B1CD 745B B1CD <CJK>
+B1CE 76C8 B1CE <CJK>
+B1CF 7A4E B1CF <CJK>
+B1D0 9834 B1D0 <CJK>
+B1D1 82F1 B1D1 <CJK>
+B1D2 885B B1D2 <CJK>
+B1D3 8A60 B1D3 <CJK>
+B1D4 92ED B1D4 <CJK>
+B1D5 6DB2 B1D5 <CJK>
+B1D6 75AB B1D6 <CJK>
+B1D7 76CA B1D7 <CJK>
+B1D8 99C5 B1D8 <CJK>
+B1D9 60A6 B1D9 <CJK>
+B1DA 8B01 B1DA <CJK>
+B1DB 8D8A B1DB <CJK>
+B1DC 95B2 B1DC <CJK>
+B1DD 698E B1DD <CJK>
+B1DE 53AD B1DE <CJK>
+B1DF 5186 B1DF <CJK>
+B1E0 5712 B1E0 <CJK>
+B1E1 5830 B1E1 <CJK>
+B1E2 5944 B1E2 <CJK>
+B1E3 5BB4 B1E3 <CJK>
+B1E4 5EF6 B1E4 <CJK>
+B1E5 6028 B1E5 <CJK>
+B1E6 63A9 B1E6 <CJK>
+B1E7 63F4 B1E7 <CJK>
+B1E8 6CBF B1E8 <CJK>
+B1E9 6F14 B1E9 <CJK>
+B1EA 708E B1EA <CJK>
+B1EB 7114 B1EB <CJK>
+B1EC 7159 B1EC <CJK>
+B1ED 71D5 B1ED <CJK>
+B1EE 733F B1EE <CJK>
+B1EF 7E01 B1EF <CJK>
+B1F0 8276 B1F0 <CJK>
+B1F1 82D1 B1F1 <CJK>
+B1F2 8597 B1F2 <CJK>
+B1F3 9060 B1F3 <CJK>
+B1F4 925B B1F4 <CJK>
+B1F5 9D1B B1F5 <CJK>
+B1F6 5869 B1F6 <CJK>
+B1F7 65BC B1F7 <CJK>
+B1F8 6C5A B1F8 <CJK>
+B1F9 7525 B1F9 <CJK>
+B1FA 51F9 B1FA <CJK>
+B1FB 592E B1FB <CJK>
+B1FC 5965 B1FC <CJK>
+B1FD 5F80 B1FD <CJK>
+B1FE 5FDC B1FE <CJK>
+B2A1 62BC B2A1 <CJK>
+B2A2 65FA B2A2 <CJK>
+B2A3 6A2A B2A3 <CJK>
+B2A4 6B27 B2A4 <CJK>
+B2A5 6BB4 B2A5 <CJK>
+B2A6 738B B2A6 <CJK>
+B2A7 7FC1 B2A7 <CJK>
+B2A8 8956 B2A8 <CJK>
+B2A9 9D2C B2A9 <CJK>
+B2AA 9D0E B2AA <CJK>
+B2AB 9EC4 B2AB <CJK>
+B2AC 5CA1 B2AC <CJK>
+B2AD 6C96 B2AD <CJK>
+B2AE 837B B2AE <CJK>
+B2AF 5104 B2AF <CJK>
+B2B0 5C4B B2B0 <CJK>
+B2B1 61B6 B2B1 <CJK>
+B2B2 81C6 B2B2 <CJK>
+B2B3 6876 B2B3 <CJK>
+B2B4 7261 B2B4 <CJK>
+B2B5 4E59 B2B5 <CJK>
+B2B6 4FFA B2B6 <CJK>
+B2B7 5378 B2B7 <CJK>
+B2B8 6069 B2B8 <CJK>
+B2B9 6E29 B2B9 <CJK>
+B2BA 7A4F B2BA <CJK>
+B2BB 97F3 B2BB <CJK>
+B2BC 4E0B B2BC <CJK>
+B2BD 5316 B2BD <CJK>
+B2BE 4EEE B2BE <CJK>
+B2BF 4F55 B2BF <CJK>
+B2C0 4F3D B2C0 <CJK>
+B2C1 4FA1 B2C1 <CJK>
+B2C2 4F73 B2C2 <CJK>
+B2C3 52A0 B2C3 <CJK>
+B2C4 53EF B2C4 <CJK>
+B2C5 5609 B2C5 <CJK>
+B2C6 590F B2C6 <CJK>
+B2C7 5AC1 B2C7 <CJK>
+B2C8 5BB6 B2C8 <CJK>
+B2C9 5BE1 B2C9 <CJK>
+B2CA 79D1 B2CA <CJK>
+B2CB 6687 B2CB <CJK>
+B2CC 679C B2CC <CJK>
+B2CD 67B6 B2CD <CJK>
+B2CE 6B4C B2CE <CJK>
+B2CF 6CB3 B2CF <CJK>
+B2D0 706B B2D0 <CJK>
+B2D1 73C2 B2D1 <CJK>
+B2D2 798D B2D2 <CJK>
+B2D3 79BE B2D3 <CJK>
+B2D4 7A3C B2D4 <CJK>
+B2D5 7B87 B2D5 <CJK>
+B2D6 82B1 B2D6 <CJK>
+B2D7 82DB B2D7 <CJK>
+B2D8 8304 B2D8 <CJK>
+B2D9 8377 B2D9 <CJK>
+B2DA 83EF B2DA <CJK>
+B2DB 83D3 B2DB <CJK>
+B2DC 8766 B2DC <CJK>
+B2DD 8AB2 B2DD <CJK>
+B2DE 5629 B2DE <CJK>
+B2DF 8CA8 B2DF <CJK>
+B2E0 8FE6 B2E0 <CJK>
+B2E1 904E B2E1 <CJK>
+B2E2 971E B2E2 <CJK>
+B2E3 868A B2E3 <CJK>
+B2E4 4FC4 B2E4 <CJK>
+B2E5 5CE8 B2E5 <CJK>
+B2E6 6211 B2E6 <CJK>
+B2E7 7259 B2E7 <CJK>
+B2E8 753B B2E8 <CJK>
+B2E9 81E5 B2E9 <CJK>
+B2EA 82BD B2EA <CJK>
+B2EB 86FE B2EB <CJK>
+B2EC 8CC0 B2EC <CJK>
+B2ED 96C5 B2ED <CJK>
+B2EE 9913 B2EE <CJK>
+B2EF 99D5 B2EF <CJK>
+B2F0 4ECB B2F0 <CJK>
+B2F1 4F1A B2F1 <CJK>
+B2F2 89E3 B2F2 <CJK>
+B2F3 56DE B2F3 <CJK>
+B2F4 584A B2F4 <CJK>
+B2F5 58CA B2F5 <CJK>
+B2F6 5EFB B2F6 <CJK>
+B2F7 5FEB B2F7 <CJK>
+B2F8 602A B2F8 <CJK>
+B2F9 6094 B2F9 <CJK>
+B2FA 6062 B2FA <CJK>
+B2FB 61D0 B2FB <CJK>
+B2FC 6212 B2FC <CJK>
+B2FD 62D0 B2FD <CJK>
+B2FE 6539 B2FE <CJK>
+B3A1 9B41 B3A1 <CJK>
+B3A2 6666 B3A2 <CJK>
+B3A3 68B0 B3A3 <CJK>
+B3A4 6D77 B3A4 <CJK>
+B3A5 7070 B3A5 <CJK>
+B3A6 754C B3A6 <CJK>
+B3A7 7686 B3A7 <CJK>
+B3A8 7D75 B3A8 <CJK>
+B3A9 82A5 B3A9 <CJK>
+B3AA 87F9 B3AA <CJK>
+B3AB 958B B3AB <CJK>
+B3AC 968E B3AC <CJK>
+B3AD 8C9D B3AD <CJK>
+B3AE 51F1 B3AE <CJK>
+B3AF 52BE B3AF <CJK>
+B3B0 5916 B3B0 <CJK>
+B3B1 54B3 B3B1 <CJK>
+B3B2 5BB3 B3B2 <CJK>
+B3B3 5D16 B3B3 <CJK>
+B3B4 6168 B3B4 <CJK>
+B3B5 6982 B3B5 <CJK>
+B3B6 6DAF B3B6 <CJK>
+B3B7 788D B3B7 <CJK>
+B3B8 84CB B3B8 <CJK>
+B3B9 8857 B3B9 <CJK>
+B3BA 8A72 B3BA <CJK>
+B3BB 93A7 B3BB <CJK>
+B3BC 9AB8 B3BC <CJK>
+B3BD 6D6C B3BD <CJK>
+B3BE 99A8 B3BE <CJK>
+B3BF 86D9 B3BF <CJK>
+B3C0 57A3 B3C0 <CJK>
+B3C1 67FF B3C1 <CJK>
+B3C2 86CE B3C2 <CJK>
+B3C3 920E B3C3 <CJK>
+B3C4 5283 B3C4 <CJK>
+B3C5 5687 B3C5 <CJK>
+B3C6 5404 B3C6 <CJK>
+B3C7 5ED3 B3C7 <CJK>
+B3C8 62E1 B3C8 <CJK>
+B3C9 64B9 B3C9 <CJK>
+B3CA 683C B3CA <CJK>
+B3CB 6838 B3CB <CJK>
+B3CC 6BBB B3CC <CJK>
+B3CD 7372 B3CD <CJK>
+B3CE 78BA B3CE <CJK>
+B3CF 7A6B B3CF <CJK>
+B3D0 899A B3D0 <CJK>
+B3D1 89D2 B3D1 <CJK>
+B3D2 8D6B B3D2 <CJK>
+B3D3 8F03 B3D3 <CJK>
+B3D4 90ED B3D4 <CJK>
+B3D5 95A3 B3D5 <CJK>
+B3D6 9694 B3D6 <CJK>
+B3D7 9769 B3D7 <CJK>
+B3D8 5B66 B3D8 <CJK>
+B3D9 5CB3 B3D9 <CJK>
+B3DA 697D B3DA <CJK>
+B3DB 984D B3DB <CJK>
+B3DC 984E B3DC <CJK>
+B3DD 639B B3DD <CJK>
+B3DE 7B20 B3DE <CJK>
+B3DF 6A2B B3DF <CJK>
+B3E0 6A7F B3E0 <CJK>
+B3E1 68B6 B3E1 <CJK>
+B3E2 9C0D B3E2 <CJK>
+B3E3 6F5F B3E3 <CJK>
+B3E4 5272 B3E4 <CJK>
+B3E5 559D B3E5 <CJK>
+B3E6 6070 B3E6 <CJK>
+B3E7 62EC B3E7 <CJK>
+B3E8 6D3B B3E8 <CJK>
+B3E9 6E07 B3E9 <CJK>
+B3EA 6ED1 B3EA <CJK>
+B3EB 845B B3EB <CJK>
+B3EC 8910 B3EC <CJK>
+B3ED 8F44 B3ED <CJK>
+B3EE 4E14 B3EE <CJK>
+B3EF 9C39 B3EF <CJK>
+B3F0 53F6 B3F0 <CJK>
+B3F1 691B B3F1 <CJK>
+B3F2 6A3A B3F2 <CJK>
+B3F3 9784 B3F3 <CJK>
+B3F4 682A B3F4 <CJK>
+B3F5 515C B3F5 <CJK>
+B3F6 7AC3 B3F6 <CJK>
+B3F7 84B2 B3F7 <CJK>
+B3F8 91DC B3F8 <CJK>
+B3F9 938C B3F9 <CJK>
+B3FA 565B B3FA <CJK>
+B3FB 9D28 B3FB <CJK>
+B3FC 6822 B3FC <CJK>
+B3FD 8305 B3FD <CJK>
+B3FE 8431 B3FE <CJK>
+B4A1 7CA5 B4A1 <CJK>
+B4A2 5208 B4A2 <CJK>
+B4A3 82C5 B4A3 <CJK>
+B4A4 74E6 B4A4 <CJK>
+B4A5 4E7E B4A5 <CJK>
+B4A6 4F83 B4A6 <CJK>
+B4A7 51A0 B4A7 <CJK>
+B4A8 5BD2 B4A8 <CJK>
+B4A9 520A B4A9 <CJK>
+B4AA 52D8 B4AA <CJK>
+B4AB 52E7 B4AB <CJK>
+B4AC 5DFB B4AC <CJK>
+B4AD 559A B4AD <CJK>
+B4AE 582A B4AE <CJK>
+B4AF 59E6 B4AF <CJK>
+B4B0 5B8C B4B0 <CJK>
+B4B1 5B98 B4B1 <CJK>
+B4B2 5BDB B4B2 <CJK>
+B4B3 5E72 B4B3 <CJK>
+B4B4 5E79 B4B4 <CJK>
+B4B5 60A3 B4B5 <CJK>
+B4B6 611F B4B6 <CJK>
+B4B7 6163 B4B7 <CJK>
+B4B8 61BE B4B8 <CJK>
+B4B9 63DB B4B9 <CJK>
+B4BA 6562 B4BA <CJK>
+B4BB 67D1 B4BB <CJK>
+B4BC 6853 B4BC <CJK>
+B4BD 68FA B4BD <CJK>
+B4BE 6B3E B4BE <CJK>
+B4BF 6B53 B4BF <CJK>
+B4C0 6C57 B4C0 <CJK>
+B4C1 6F22 B4C1 <CJK>
+B4C2 6F97 B4C2 <CJK>
+B4C3 6F45 B4C3 <CJK>
+B4C4 74B0 B4C4 <CJK>
+B4C5 7518 B4C5 <CJK>
+B4C6 76E3 B4C6 <CJK>
+B4C7 770B B4C7 <CJK>
+B4C8 7AFF B4C8 <CJK>
+B4C9 7BA1 B4C9 <CJK>
+B4CA 7C21 B4CA <CJK>
+B4CB 7DE9 B4CB <CJK>
+B4CC 7F36 B4CC <CJK>
+B4CD 7FF0 B4CD <CJK>
+B4CE 809D B4CE <CJK>
+B4CF 8266 B4CF <CJK>
+B4D0 839E B4D0 <CJK>
+B4D1 89B3 B4D1 <CJK>
+B4D2 8ACC B4D2 <CJK>
+B4D3 8CAB B4D3 <CJK>
+B4D4 9084 B4D4 <CJK>
+B4D5 9451 B4D5 <CJK>
+B4D6 9593 B4D6 <CJK>
+B4D7 9591 B4D7 <CJK>
+B4D8 95A2 B4D8 <CJK>
+B4D9 9665 B4D9 <CJK>
+B4DA 97D3 B4DA <CJK>
+B4DB 9928 B4DB <CJK>
+B4DC 8218 B4DC <CJK>
+B4DD 4E38 B4DD <CJK>
+B4DE 542B B4DE <CJK>
+B4DF 5CB8 B4DF <CJK>
+B4E0 5DCC B4E0 <CJK>
+B4E1 73A9 B4E1 <CJK>
+B4E2 764C B4E2 <CJK>
+B4E3 773C B4E3 <CJK>
+B4E4 5CA9 B4E4 <CJK>
+B4E5 7FEB B4E5 <CJK>
+B4E6 8D0B B4E6 <CJK>
+B4E7 96C1 B4E7 <CJK>
+B4E8 9811 B4E8 <CJK>
+B4E9 9854 B4E9 <CJK>
+B4EA 9858 B4EA <CJK>
+B4EB 4F01 B4EB <CJK>
+B4EC 4F0E B4EC <CJK>
+B4ED 5371 B4ED <CJK>
+B4EE 559C B4EE <CJK>
+B4EF 5668 B4EF <CJK>
+B4F0 57FA B4F0 <CJK>
+B4F1 5947 B4F1 <CJK>
+B4F2 5B09 B4F2 <CJK>
+B4F3 5BC4 B4F3 <CJK>
+B4F4 5C90 B4F4 <CJK>
+B4F5 5E0C B4F5 <CJK>
+B4F6 5E7E B4F6 <CJK>
+B4F7 5FCC B4F7 <CJK>
+B4F8 63EE B4F8 <CJK>
+B4F9 673A B4F9 <CJK>
+B4FA 65D7 B4FA <CJK>
+B4FB 65E2 B4FB <CJK>
+B4FC 671F B4FC <CJK>
+B4FD 68CB B4FD <CJK>
+B4FE 68C4 B4FE <CJK>
+B5A1 6A5F B5A1 <CJK>
+B5A2 5E30 B5A2 <CJK>
+B5A3 6BC5 B5A3 <CJK>
+B5A4 6C17 B5A4 <CJK>
+B5A5 6C7D B5A5 <CJK>
+B5A6 757F B5A6 <CJK>
+B5A7 7948 B5A7 <CJK>
+B5A8 5B63 B5A8 <CJK>
+B5A9 7A00 B5A9 <CJK>
+B5AA 7D00 B5AA <CJK>
+B5AB 5FBD B5AB <CJK>
+B5AC 898F B5AC <CJK>
+B5AD 8A18 B5AD <CJK>
+B5AE 8CB4 B5AE <CJK>
+B5AF 8D77 B5AF <CJK>
+B5B0 8ECC B5B0 <CJK>
+B5B1 8F1D B5B1 <CJK>
+B5B2 98E2 B5B2 <CJK>
+B5B3 9A0E B5B3 <CJK>
+B5B4 9B3C B5B4 <CJK>
+B5B5 4E80 B5B5 <CJK>
+B5B6 507D B5B6 <CJK>
+B5B7 5100 B5B7 <CJK>
+B5B8 5993 B5B8 <CJK>
+B5B9 5B9C B5B9 <CJK>
+B5BA 622F B5BA <CJK>
+B5BB 6280 B5BB <CJK>
+B5BC 64EC B5BC <CJK>
+B5BD 6B3A B5BD <CJK>
+B5BE 72A0 B5BE <CJK>
+B5BF 7591 B5BF <CJK>
+B5C0 7947 B5C0 <CJK>
+B5C1 7FA9 B5C1 <CJK>
+B5C2 87FB B5C2 <CJK>
+B5C3 8ABC B5C3 <CJK>
+B5C4 8B70 B5C4 <CJK>
+B5C5 63AC B5C5 <CJK>
+B5C6 83CA B5C6 <CJK>
+B5C7 97A0 B5C7 <CJK>
+B5C8 5409 B5C8 <CJK>
+B5C9 5403 B5C9 <CJK>
+B5CA 55AB B5CA <CJK>
+B5CB 6854 B5CB <CJK>
+B5CC 6A58 B5CC <CJK>
+B5CD 8A70 B5CD <CJK>
+B5CE 7827 B5CE <CJK>
+B5CF 6775 B5CF <CJK>
+B5D0 9ECD B5D0 <CJK>
+B5D1 5374 B5D1 <CJK>
+B5D2 5BA2 B5D2 <CJK>
+B5D3 811A B5D3 <CJK>
+B5D4 8650 B5D4 <CJK>
+B5D5 9006 B5D5 <CJK>
+B5D6 4E18 B5D6 <CJK>
+B5D7 4E45 B5D7 <CJK>
+B5D8 4EC7 B5D8 <CJK>
+B5D9 4F11 B5D9 <CJK>
+B5DA 53CA B5DA <CJK>
+B5DB 5438 B5DB <CJK>
+B5DC 5BAE B5DC <CJK>
+B5DD 5F13 B5DD <CJK>
+B5DE 6025 B5DE <CJK>
+B5DF 6551 B5DF <CJK>
+B5E0 673D B5E0 <CJK>
+B5E1 6C42 B5E1 <CJK>
+B5E2 6C72 B5E2 <CJK>
+B5E3 6CE3 B5E3 <CJK>
+B5E4 7078 B5E4 <CJK>
+B5E5 7403 B5E5 <CJK>
+B5E6 7A76 B5E6 <CJK>
+B5E7 7AAE B5E7 <CJK>
+B5E8 7B08 B5E8 <CJK>
+B5E9 7D1A B5E9 <CJK>
+B5EA 7CFE B5EA <CJK>
+B5EB 7D66 B5EB <CJK>
+B5EC 65E7 B5EC <CJK>
+B5ED 725B B5ED <CJK>
+B5EE 53BB B5EE <CJK>
+B5EF 5C45 B5EF <CJK>
+B5F0 5DE8 B5F0 <CJK>
+B5F1 62D2 B5F1 <CJK>
+B5F2 62E0 B5F2 <CJK>
+B5F3 6319 B5F3 <CJK>
+B5F4 6E20 B5F4 <CJK>
+B5F5 865A B5F5 <CJK>
+B5F6 8A31 B5F6 <CJK>
+B5F7 8DDD B5F7 <CJK>
+B5F8 92F8 B5F8 <CJK>
+B5F9 6F01 B5F9 <CJK>
+B5FA 79A6 B5FA <CJK>
+B5FB 9B5A B5FB <CJK>
+B5FC 4EA8 B5FC <CJK>
+B5FD 4EAB B5FD <CJK>
+B5FE 4EAC B5FE <CJK>
+B6A1 4F9B B6A1 <CJK>
+B6A2 4FA0 B6A2 <CJK>
+B6A3 50D1 B6A3 <CJK>
+B6A4 5147 B6A4 <CJK>
+B6A5 7AF6 B6A5 <CJK>
+B6A6 5171 B6A6 <CJK>
+B6A7 51F6 B6A7 <CJK>
+B6A8 5354 B6A8 <CJK>
+B6A9 5321 B6A9 <CJK>
+B6AA 537F B6AA <CJK>
+B6AB 53EB B6AB <CJK>
+B6AC 55AC B6AC <CJK>
+B6AD 5883 B6AD <CJK>
+B6AE 5CE1 B6AE <CJK>
+B6AF 5F37 B6AF <CJK>
+B6B0 5F4A B6B0 <CJK>
+B6B1 602F B6B1 <CJK>
+B6B2 6050 B6B2 <CJK>
+B6B3 606D B6B3 <CJK>
+B6B4 631F B6B4 <CJK>
+B6B5 6559 B6B5 <CJK>
+B6B6 6A4B B6B6 <CJK>
+B6B7 6CC1 B6B7 <CJK>
+B6B8 72C2 B6B8 <CJK>
+B6B9 72ED B6B9 <CJK>
+B6BA 77EF B6BA <CJK>
+B6BB 80F8 B6BB <CJK>
+B6BC 8105 B6BC <CJK>
+B6BD 8208 B6BD <CJK>
+B6BE 854E B6BE <CJK>
+B6BF 90F7 B6BF <CJK>
+B6C0 93E1 B6C0 <CJK>
+B6C1 97FF B6C1 <CJK>
+B6C2 9957 B6C2 <CJK>
+B6C3 9A5A B6C3 <CJK>
+B6C4 4EF0 B6C4 <CJK>
+B6C5 51DD B6C5 <CJK>
+B6C6 5C2D B6C6 <CJK>
+B6C7 6681 B6C7 <CJK>
+B6C8 696D B6C8 <CJK>
+B6C9 5C40 B6C9 <CJK>
+B6CA 66F2 B6CA <CJK>
+B6CB 6975 B6CB <CJK>
+B6CC 7389 B6CC <CJK>
+B6CD 6850 B6CD <CJK>
+B6CE 7C81 B6CE <CJK>
+B6CF 50C5 B6CF <CJK>
+B6D0 52E4 B6D0 <CJK>
+B6D1 5747 B6D1 <CJK>
+B6D2 5DFE B6D2 <CJK>
+B6D3 9326 B6D3 <CJK>
+B6D4 65A4 B6D4 <CJK>
+B6D5 6B23 B6D5 <CJK>
+B6D6 6B3D B6D6 <CJK>
+B6D7 7434 B6D7 <CJK>
+B6D8 7981 B6D8 <CJK>
+B6D9 79BD B6D9 <CJK>
+B6DA 7B4B B6DA <CJK>
+B6DB 7DCA B6DB <CJK>
+B6DC 82B9 B6DC <CJK>
+B6DD 83CC B6DD <CJK>
+B6DE 887F B6DE <CJK>
+B6DF 895F B6DF <CJK>
+B6E0 8B39 B6E0 <CJK>
+B6E1 8FD1 B6E1 <CJK>
+B6E2 91D1 B6E2 <CJK>
+B6E3 541F B6E3 <CJK>
+B6E4 9280 B6E4 <CJK>
+B6E5 4E5D B6E5 <CJK>
+B6E6 5036 B6E6 <CJK>
+B6E7 53E5 B6E7 <CJK>
+B6E8 533A B6E8 <CJK>
+B6E9 72D7 B6E9 <CJK>
+B6EA 7396 B6EA <CJK>
+B6EB 77E9 B6EB <CJK>
+B6EC 82E6 B6EC <CJK>
+B6ED 8EAF B6ED <CJK>
+B6EE 99C6 B6EE <CJK>
+B6EF 99C8 B6EF <CJK>
+B6F0 99D2 B6F0 <CJK>
+B6F1 5177 B6F1 <CJK>
+B6F2 611A B6F2 <CJK>
+B6F3 865E B6F3 <CJK>
+B6F4 55B0 B6F4 <CJK>
+B6F5 7A7A B6F5 <CJK>
+B6F6 5076 B6F6 <CJK>
+B6F7 5BD3 B6F7 <CJK>
+B6F8 9047 B6F8 <CJK>
+B6F9 9685 B6F9 <CJK>
+B6FA 4E32 B6FA <CJK>
+B6FB 6ADB B6FB <CJK>
+B6FC 91E7 B6FC <CJK>
+B6FD 5C51 B6FD <CJK>
+B6FE 5C48 B6FE <CJK>
+B7A1 6398 B7A1 <CJK>
+B7A2 7A9F B7A2 <CJK>
+B7A3 6C93 B7A3 <CJK>
+B7A4 9774 B7A4 <CJK>
+B7A5 8F61 B7A5 <CJK>
+B7A6 7AAA B7A6 <CJK>
+B7A7 718A B7A7 <CJK>
+B7A8 9688 B7A8 <CJK>
+B7A9 7C82 B7A9 <CJK>
+B7AA 6817 B7AA <CJK>
+B7AB 7E70 B7AB <CJK>
+B7AC 6851 B7AC <CJK>
+B7AD 936C B7AD <CJK>
+B7AE 52F2 B7AE <CJK>
+B7AF 541B B7AF <CJK>
+B7B0 85AB B7B0 <CJK>
+B7B1 8A13 B7B1 <CJK>
+B7B2 7FA4 B7B2 <CJK>
+B7B3 8ECD B7B3 <CJK>
+B7B4 90E1 B7B4 <CJK>
+B7B5 5366 B7B5 <CJK>
+B7B6 8888 B7B6 <CJK>
+B7B7 7941 B7B7 <CJK>
+B7B8 4FC2 B7B8 <CJK>
+B7B9 50BE B7B9 <CJK>
+B7BA 5211 B7BA <CJK>
+B7BB 5144 B7BB <CJK>
+B7BC 5553 B7BC <CJK>
+B7BD 572D B7BD <CJK>
+B7BE 73EA B7BE <CJK>
+B7BF 578B B7BF <CJK>
+B7C0 5951 B7C0 <CJK>
+B7C1 5F62 B7C1 <CJK>
+B7C2 5F84 B7C2 <CJK>
+B7C3 6075 B7C3 <CJK>
+B7C4 6176 B7C4 <CJK>
+B7C5 6167 B7C5 <CJK>
+B7C6 61A9 B7C6 <CJK>
+B7C7 63B2 B7C7 <CJK>
+B7C8 643A B7C8 <CJK>
+B7C9 656C B7C9 <CJK>
+B7CA 666F B7CA <CJK>
+B7CB 6842 B7CB <CJK>
+B7CC 6E13 B7CC <CJK>
+B7CD 7566 B7CD <CJK>
+B7CE 7A3D B7CE <CJK>
+B7CF 7CFB B7CF <CJK>
+B7D0 7D4C B7D0 <CJK>
+B7D1 7D99 B7D1 <CJK>
+B7D2 7E4B B7D2 <CJK>
+B7D3 7F6B B7D3 <CJK>
+B7D4 830E B7D4 <CJK>
+B7D5 834A B7D5 <CJK>
+B7D6 86CD B7D6 <CJK>
+B7D7 8A08 B7D7 <CJK>
+B7D8 8A63 B7D8 <CJK>
+B7D9 8B66 B7D9 <CJK>
+B7DA 8EFD B7DA <CJK>
+B7DB 981A B7DB <CJK>
+B7DC 9D8F B7DC <CJK>
+B7DD 82B8 B7DD <CJK>
+B7DE 8FCE B7DE <CJK>
+B7DF 9BE8 B7DF <CJK>
+B7E0 5287 B7E0 <CJK>
+B7E1 621F B7E1 <CJK>
+B7E2 6483 B7E2 <CJK>
+B7E3 6FC0 B7E3 <CJK>
+B7E4 9699 B7E4 <CJK>
+B7E5 6841 B7E5 <CJK>
+B7E6 5091 B7E6 <CJK>
+B7E7 6B20 B7E7 <CJK>
+B7E8 6C7A B7E8 <CJK>
+B7E9 6F54 B7E9 <CJK>
+B7EA 7A74 B7EA <CJK>
+B7EB 7D50 B7EB <CJK>
+B7EC 8840 B7EC <CJK>
+B7ED 8A23 B7ED <CJK>
+B7EE 6708 B7EE <CJK>
+B7EF 4EF6 B7EF <CJK>
+B7F0 5039 B7F0 <CJK>
+B7F1 5026 B7F1 <CJK>
+B7F2 5065 B7F2 <CJK>
+B7F3 517C B7F3 <CJK>
+B7F4 5238 B7F4 <CJK>
+B7F5 5263 B7F5 <CJK>
+B7F6 55A7 B7F6 <CJK>
+B7F7 570F B7F7 <CJK>
+B7F8 5805 B7F8 <CJK>
+B7F9 5ACC B7F9 <CJK>
+B7FA 5EFA B7FA <CJK>
+B7FB 61B2 B7FB <CJK>
+B7FC 61F8 B7FC <CJK>
+B7FD 62F3 B7FD <CJK>
+B7FE 6372 B7FE <CJK>
+B8A1 691C B8A1 <CJK>
+B8A2 6A29 B8A2 <CJK>
+B8A3 727D B8A3 <CJK>
+B8A4 72AC B8A4 <CJK>
+B8A5 732E B8A5 <CJK>
+B8A6 7814 B8A6 <CJK>
+B8A7 786F B8A7 <CJK>
+B8A8 7D79 B8A8 <CJK>
+B8A9 770C B8A9 <CJK>
+B8AA 80A9 B8AA <CJK>
+B8AB 898B B8AB <CJK>
+B8AC 8B19 B8AC <CJK>
+B8AD 8CE2 B8AD <CJK>
+B8AE 8ED2 B8AE <CJK>
+B8AF 9063 B8AF <CJK>
+B8B0 9375 B8B0 <CJK>
+B8B1 967A B8B1 <CJK>
+B8B2 9855 B8B2 <CJK>
+B8B3 9A13 B8B3 <CJK>
+B8B4 9E78 B8B4 <CJK>
+B8B5 5143 B8B5 <CJK>
+B8B6 539F B8B6 <CJK>
+B8B7 53B3 B8B7 <CJK>
+B8B8 5E7B B8B8 <CJK>
+B8B9 5F26 B8B9 <CJK>
+B8BA 6E1B B8BA <CJK>
+B8BB 6E90 B8BB <CJK>
+B8BC 7384 B8BC <CJK>
+B8BD 73FE B8BD <CJK>
+B8BE 7D43 B8BE <CJK>
+B8BF 8237 B8BF <CJK>
+B8C0 8A00 B8C0 <CJK>
+B8C1 8AFA B8C1 <CJK>
+B8C2 9650 B8C2 <CJK>
+B8C3 4E4E B8C3 <CJK>
+B8C4 500B B8C4 <CJK>
+B8C5 53E4 B8C5 <CJK>
+B8C6 547C B8C6 <CJK>
+B8C7 56FA B8C7 <CJK>
+B8C8 59D1 B8C8 <CJK>
+B8C9 5B64 B8C9 <CJK>
+B8CA 5DF1 B8CA <CJK>
+B8CB 5EAB B8CB <CJK>
+B8CC 5F27 B8CC <CJK>
+B8CD 6238 B8CD <CJK>
+B8CE 6545 B8CE <CJK>
+B8CF 67AF B8CF <CJK>
+B8D0 6E56 B8D0 <CJK>
+B8D1 72D0 B8D1 <CJK>
+B8D2 7CCA B8D2 <CJK>
+B8D3 88B4 B8D3 <CJK>
+B8D4 80A1 B8D4 <CJK>
+B8D5 80E1 B8D5 <CJK>
+B8D6 83F0 B8D6 <CJK>
+B8D7 864E B8D7 <CJK>
+B8D8 8A87 B8D8 <CJK>
+B8D9 8DE8 B8D9 <CJK>
+B8DA 9237 B8DA <CJK>
+B8DB 96C7 B8DB <CJK>
+B8DC 9867 B8DC <CJK>
+B8DD 9F13 B8DD <CJK>
+B8DE 4E94 B8DE <CJK>
+B8DF 4E92 B8DF <CJK>
+B8E0 4F0D B8E0 <CJK>
+B8E1 5348 B8E1 <CJK>
+B8E2 5449 B8E2 <CJK>
+B8E3 543E B8E3 <CJK>
+B8E4 5A2F B8E4 <CJK>
+B8E5 5F8C B8E5 <CJK>
+B8E6 5FA1 B8E6 <CJK>
+B8E7 609F B8E7 <CJK>
+B8E8 68A7 B8E8 <CJK>
+B8E9 6A8E B8E9 <CJK>
+B8EA 745A B8EA <CJK>
+B8EB 7881 B8EB <CJK>
+B8EC 8A9E B8EC <CJK>
+B8ED 8AA4 B8ED <CJK>
+B8EE 8B77 B8EE <CJK>
+B8EF 9190 B8EF <CJK>
+B8F0 4E5E B8F0 <CJK>
+B8F1 9BC9 B8F1 <CJK>
+B8F2 4EA4 B8F2 <CJK>
+B8F3 4F7C B8F3 <CJK>
+B8F4 4FAF B8F4 <CJK>
+B8F5 5019 B8F5 <CJK>
+B8F6 5016 B8F6 <CJK>
+B8F7 5149 B8F7 <CJK>
+B8F8 516C B8F8 <CJK>
+B8F9 529F B8F9 <CJK>
+B8FA 52B9 B8FA <CJK>
+B8FB 52FE B8FB <CJK>
+B8FC 539A B8FC <CJK>
+B8FD 53E3 B8FD <CJK>
+B8FE 5411 B8FE <CJK>
+B9A1 540E B9A1 <CJK>
+B9A2 5589 B9A2 <CJK>
+B9A3 5751 B9A3 <CJK>
+B9A4 57A2 B9A4 <CJK>
+B9A5 597D B9A5 <CJK>
+B9A6 5B54 B9A6 <CJK>
+B9A7 5B5D B9A7 <CJK>
+B9A8 5B8F B9A8 <CJK>
+B9A9 5DE5 B9A9 <CJK>
+B9AA 5DE7 B9AA <CJK>
+B9AB 5DF7 B9AB <CJK>
+B9AC 5E78 B9AC <CJK>
+B9AD 5E83 B9AD <CJK>
+B9AE 5E9A B9AE <CJK>
+B9AF 5EB7 B9AF <CJK>
+B9B0 5F18 B9B0 <CJK>
+B9B1 6052 B9B1 <CJK>
+B9B2 614C B9B2 <CJK>
+B9B3 6297 B9B3 <CJK>
+B9B4 62D8 B9B4 <CJK>
+B9B5 63A7 B9B5 <CJK>
+B9B6 653B B9B6 <CJK>
+B9B7 6602 B9B7 <CJK>
+B9B8 6643 B9B8 <CJK>
+B9B9 66F4 B9B9 <CJK>
+B9BA 676D B9BA <CJK>
+B9BB 6821 B9BB <CJK>
+B9BC 6897 B9BC <CJK>
+B9BD 69CB B9BD <CJK>
+B9BE 6C5F B9BE <CJK>
+B9BF 6D2A B9BF <CJK>
+B9C0 6D69 B9C0 <CJK>
+B9C1 6E2F B9C1 <CJK>
+B9C2 6E9D B9C2 <CJK>
+B9C3 7532 B9C3 <CJK>
+B9C4 7687 B9C4 <CJK>
+B9C5 786C B9C5 <CJK>
+B9C6 7A3F B9C6 <CJK>
+B9C7 7CE0 B9C7 <CJK>
+B9C8 7D05 B9C8 <CJK>
+B9C9 7D18 B9C9 <CJK>
+B9CA 7D5E B9CA <CJK>
+B9CB 7DB1 B9CB <CJK>
+B9CC 8015 B9CC <CJK>
+B9CD 8003 B9CD <CJK>
+B9CE 80AF B9CE <CJK>
+B9CF 80B1 B9CF <CJK>
+B9D0 8154 B9D0 <CJK>
+B9D1 818F B9D1 <CJK>
+B9D2 822A B9D2 <CJK>
+B9D3 8352 B9D3 <CJK>
+B9D4 884C B9D4 <CJK>
+B9D5 8861 B9D5 <CJK>
+B9D6 8B1B B9D6 <CJK>
+B9D7 8CA2 B9D7 <CJK>
+B9D8 8CFC B9D8 <CJK>
+B9D9 90CA B9D9 <CJK>
+B9DA 9175 B9DA <CJK>
+B9DB 9271 B9DB <CJK>
+B9DC 783F B9DC <CJK>
+B9DD 92FC B9DD <CJK>
+B9DE 95A4 B9DE <CJK>
+B9DF 964D B9DF <CJK>
+B9E0 9805 B9E0 <CJK>
+B9E1 9999 B9E1 <CJK>
+B9E2 9AD8 B9E2 <CJK>
+B9E3 9D3B B9E3 <CJK>
+B9E4 525B B9E4 <CJK>
+B9E5 52AB B9E5 <CJK>
+B9E6 53F7 B9E6 <CJK>
+B9E7 5408 B9E7 <CJK>
+B9E8 58D5 B9E8 <CJK>
+B9E9 62F7 B9E9 <CJK>
+B9EA 6FE0 B9EA <CJK>
+B9EB 8C6A B9EB <CJK>
+B9EC 8F5F B9EC <CJK>
+B9ED 9EB9 B9ED <CJK>
+B9EE 514B B9EE <CJK>
+B9EF 523B B9EF <CJK>
+B9F0 544A B9F0 <CJK>
+B9F1 56FD B9F1 <CJK>
+B9F2 7A40 B9F2 <CJK>
+B9F3 9177 B9F3 <CJK>
+B9F4 9D60 B9F4 <CJK>
+B9F5 9ED2 B9F5 <CJK>
+B9F6 7344 B9F6 <CJK>
+B9F7 6F09 B9F7 <CJK>
+B9F8 8170 B9F8 <CJK>
+B9F9 7511 B9F9 <CJK>
+B9FA 5FFD B9FA <CJK>
+B9FB 60DA B9FB <CJK>
+B9FC 9AA8 B9FC <CJK>
+B9FD 72DB B9FD <CJK>
+B9FE 8FBC B9FE <CJK>
+BAA1 6B64 BAA1 <CJK>
+BAA2 9803 BAA2 <CJK>
+BAA3 4ECA BAA3 <CJK>
+BAA4 56F0 BAA4 <CJK>
+BAA5 5764 BAA5 <CJK>
+BAA6 58BE BAA6 <CJK>
+BAA7 5A5A BAA7 <CJK>
+BAA8 6068 BAA8 <CJK>
+BAA9 61C7 BAA9 <CJK>
+BAAA 660F BAAA <CJK>
+BAAB 6606 BAAB <CJK>
+BAAC 6839 BAAC <CJK>
+BAAD 68B1 BAAD <CJK>
+BAAE 6DF7 BAAE <CJK>
+BAAF 75D5 BAAF <CJK>
+BAB0 7D3A BAB0 <CJK>
+BAB1 826E BAB1 <CJK>
+BAB2 9B42 BAB2 <CJK>
+BAB3 4E9B BAB3 <CJK>
+BAB4 4F50 BAB4 <CJK>
+BAB5 53C9 BAB5 <CJK>
+BAB6 5506 BAB6 <CJK>
+BAB7 5D6F BAB7 <CJK>
+BAB8 5DE6 BAB8 <CJK>
+BAB9 5DEE BAB9 <CJK>
+BABA 67FB BABA <CJK>
+BABB 6C99 BABB <CJK>
+BABC 7473 BABC <CJK>
+BABD 7802 BABD <CJK>
+BABE 8A50 BABE <CJK>
+BABF 9396 BABF <CJK>
+BAC0 88DF BAC0 <CJK>
+BAC1 5750 BAC1 <CJK>
+BAC2 5EA7 BAC2 <CJK>
+BAC3 632B BAC3 <CJK>
+BAC4 50B5 BAC4 <CJK>
+BAC5 50AC BAC5 <CJK>
+BAC6 518D BAC6 <CJK>
+BAC7 6700 BAC7 <CJK>
+BAC8 54C9 BAC8 <CJK>
+BAC9 585E BAC9 <CJK>
+BACA 59BB BACA <CJK>
+BACB 5BB0 BACB <CJK>
+BACC 5F69 BACC <CJK>
+BACD 624D BACD <CJK>
+BACE 63A1 BACE <CJK>
+BACF 683D BACF <CJK>
+BAD0 6B73 BAD0 <CJK>
+BAD1 6E08 BAD1 <CJK>
+BAD2 707D BAD2 <CJK>
+BAD3 91C7 BAD3 <CJK>
+BAD4 7280 BAD4 <CJK>
+BAD5 7815 BAD5 <CJK>
+BAD6 7826 BAD6 <CJK>
+BAD7 796D BAD7 <CJK>
+BAD8 658E BAD8 <CJK>
+BAD9 7D30 BAD9 <CJK>
+BADA 83DC BADA <CJK>
+BADB 88C1 BADB <CJK>
+BADC 8F09 BADC <CJK>
+BADD 969B BADD <CJK>
+BADE 5264 BADE <CJK>
+BADF 5728 BADF <CJK>
+BAE0 6750 BAE0 <CJK>
+BAE1 7F6A BAE1 <CJK>
+BAE2 8CA1 BAE2 <CJK>
+BAE3 51B4 BAE3 <CJK>
+BAE4 5742 BAE4 <CJK>
+BAE5 962A BAE5 <CJK>
+BAE6 583A BAE6 <CJK>
+BAE7 698A BAE7 <CJK>
+BAE8 80B4 BAE8 <CJK>
+BAE9 54B2 BAE9 <CJK>
+BAEA 5D0E BAEA <CJK>
+BAEB 57FC BAEB <CJK>
+BAEC 7895 BAEC <CJK>
+BAED 9DFA BAED <CJK>
+BAEE 4F5C BAEE <CJK>
+BAEF 524A BAEF <CJK>
+BAF0 548B BAF0 <CJK>
+BAF1 643E BAF1 <CJK>
+BAF2 6628 BAF2 <CJK>
+BAF3 6714 BAF3 <CJK>
+BAF4 67F5 BAF4 <CJK>
+BAF5 7A84 BAF5 <CJK>
+BAF6 7B56 BAF6 <CJK>
+BAF7 7D22 BAF7 <CJK>
+BAF8 932F BAF8 <CJK>
+BAF9 685C BAF9 <CJK>
+BAFA 9BAD BAFA <CJK>
+BAFB 7B39 BAFB <CJK>
+BAFC 5319 BAFC <CJK>
+BAFD 518A BAFD <CJK>
+BAFE 5237 BAFE <CJK>
+BBA1 5BDF BBA1 <CJK>
+BBA2 62F6 BBA2 <CJK>
+BBA3 64AE BBA3 <CJK>
+BBA4 64E6 BBA4 <CJK>
+BBA5 672D BBA5 <CJK>
+BBA6 6BBA BBA6 <CJK>
+BBA7 85A9 BBA7 <CJK>
+BBA8 96D1 BBA8 <CJK>
+BBA9 7690 BBA9 <CJK>
+BBAA 9BD6 BBAA <CJK>
+BBAB 634C BBAB <CJK>
+BBAC 9306 BBAC <CJK>
+BBAD 9BAB BBAD <CJK>
+BBAE 76BF BBAE <CJK>
+BBAF 6652 BBAF <CJK>
+BBB0 4E09 BBB0 <CJK>
+BBB1 5098 BBB1 <CJK>
+BBB2 53C2 BBB2 <CJK>
+BBB3 5C71 BBB3 <CJK>
+BBB4 60E8 BBB4 <CJK>
+BBB5 6492 BBB5 <CJK>
+BBB6 6563 BBB6 <CJK>
+BBB7 685F BBB7 <CJK>
+BBB8 71E6 BBB8 <CJK>
+BBB9 73CA BBB9 <CJK>
+BBBA 7523 BBBA <CJK>
+BBBB 7B97 BBBB <CJK>
+BBBC 7E82 BBBC <CJK>
+BBBD 8695 BBBD <CJK>
+BBBE 8B83 BBBE <CJK>
+BBBF 8CDB BBBF <CJK>
+BBC0 9178 BBC0 <CJK>
+BBC1 9910 BBC1 <CJK>
+BBC2 65AC BBC2 <CJK>
+BBC3 66AB BBC3 <CJK>
+BBC4 6B8B BBC4 <CJK>
+BBC5 4ED5 BBC5 <CJK>
+BBC6 4ED4 BBC6 <CJK>
+BBC7 4F3A BBC7 <CJK>
+BBC8 4F7F BBC8 <CJK>
+BBC9 523A BBC9 <CJK>
+BBCA 53F8 BBCA <CJK>
+BBCB 53F2 BBCB <CJK>
+BBCC 55E3 BBCC <CJK>
+BBCD 56DB BBCD <CJK>
+BBCE 58EB BBCE <CJK>
+BBCF 59CB BBCF <CJK>
+BBD0 59C9 BBD0 <CJK>
+BBD1 59FF BBD1 <CJK>
+BBD2 5B50 BBD2 <CJK>
+BBD3 5C4D BBD3 <CJK>
+BBD4 5E02 BBD4 <CJK>
+BBD5 5E2B BBD5 <CJK>
+BBD6 5FD7 BBD6 <CJK>
+BBD7 601D BBD7 <CJK>
+BBD8 6307 BBD8 <CJK>
+BBD9 652F BBD9 <CJK>
+BBDA 5B5C BBDA <CJK>
+BBDB 65AF BBDB <CJK>
+BBDC 65BD BBDC <CJK>
+BBDD 65E8 BBDD <CJK>
+BBDE 679D BBDE <CJK>
+BBDF 6B62 BBDF <CJK>
+BBE0 6B7B BBE0 <CJK>
+BBE1 6C0F BBE1 <CJK>
+BBE2 7345 BBE2 <CJK>
+BBE3 7949 BBE3 <CJK>
+BBE4 79C1 BBE4 <CJK>
+BBE5 7CF8 BBE5 <CJK>
+BBE6 7D19 BBE6 <CJK>
+BBE7 7D2B BBE7 <CJK>
+BBE8 80A2 BBE8 <CJK>
+BBE9 8102 BBE9 <CJK>
+BBEA 81F3 BBEA <CJK>
+BBEB 8996 BBEB <CJK>
+BBEC 8A5E BBEC <CJK>
+BBED 8A69 BBED <CJK>
+BBEE 8A66 BBEE <CJK>
+BBEF 8A8C BBEF <CJK>
+BBF0 8AEE BBF0 <CJK>
+BBF1 8CC7 BBF1 <CJK>
+BBF2 8CDC BBF2 <CJK>
+BBF3 96CC BBF3 <CJK>
+BBF4 98FC BBF4 <CJK>
+BBF5 6B6F BBF5 <CJK>
+BBF6 4E8B BBF6 <CJK>
+BBF7 4F3C BBF7 <CJK>
+BBF8 4F8D BBF8 <CJK>
+BBF9 5150 BBF9 <CJK>
+BBFA 5B57 BBFA <CJK>
+BBFB 5BFA BBFB <CJK>
+BBFC 6148 BBFC <CJK>
+BBFD 6301 BBFD <CJK>
+BBFE 6642 BBFE <CJK>
+BCA1 6B21 BCA1 <CJK>
+BCA2 6ECB BCA2 <CJK>
+BCA3 6CBB BCA3 <CJK>
+BCA4 723E BCA4 <CJK>
+BCA5 74BD BCA5 <CJK>
+BCA6 75D4 BCA6 <CJK>
+BCA7 78C1 BCA7 <CJK>
+BCA8 793A BCA8 <CJK>
+BCA9 800C BCA9 <CJK>
+BCAA 8033 BCAA <CJK>
+BCAB 81EA BCAB <CJK>
+BCAC 8494 BCAC <CJK>
+BCAD 8F9E BCAD <CJK>
+BCAE 6C50 BCAE <CJK>
+BCAF 9E7F BCAF <CJK>
+BCB0 5F0F BCB0 <CJK>
+BCB1 8B58 BCB1 <CJK>
+BCB2 9D2B BCB2 <CJK>
+BCB3 7AFA BCB3 <CJK>
+BCB4 8EF8 BCB4 <CJK>
+BCB5 5B8D BCB5 <CJK>
+BCB6 96EB BCB6 <CJK>
+BCB7 4E03 BCB7 <CJK>
+BCB8 53F1 BCB8 <CJK>
+BCB9 57F7 BCB9 <CJK>
+BCBA 5931 BCBA <CJK>
+BCBB 5AC9 BCBB <CJK>
+BCBC 5BA4 BCBC <CJK>
+BCBD 6089 BCBD <CJK>
+BCBE 6E7F BCBE <CJK>
+BCBF 6F06 BCBF <CJK>
+BCC0 75BE BCC0 <CJK>
+BCC1 8CEA BCC1 <CJK>
+BCC2 5B9F BCC2 <CJK>
+BCC3 8500 BCC3 <CJK>
+BCC4 7BE0 BCC4 <CJK>
+BCC5 5072 BCC5 <CJK>
+BCC6 67F4 BCC6 <CJK>
+BCC7 829D BCC7 <CJK>
+BCC8 5C61 BCC8 <CJK>
+BCC9 854A BCC9 <CJK>
+BCCA 7E1E BCCA <CJK>
+BCCB 820E BCCB <CJK>
+BCCC 5199 BCCC <CJK>
+BCCD 5C04 BCCD <CJK>
+BCCE 6368 BCCE <CJK>
+BCCF 8D66 BCCF <CJK>
+BCD0 659C BCD0 <CJK>
+BCD1 716E BCD1 <CJK>
+BCD2 793E BCD2 <CJK>
+BCD3 7D17 BCD3 <CJK>
+BCD4 8005 BCD4 <CJK>
+BCD5 8B1D BCD5 <CJK>
+BCD6 8ECA BCD6 <CJK>
+BCD7 906E BCD7 <CJK>
+BCD8 86C7 BCD8 <CJK>
+BCD9 90AA BCD9 <CJK>
+BCDA 501F BCDA <CJK>
+BCDB 52FA BCDB <CJK>
+BCDC 5C3A BCDC <CJK>
+BCDD 6753 BCDD <CJK>
+BCDE 707C BCDE <CJK>
+BCDF 7235 BCDF <CJK>
+BCE0 914C BCE0 <CJK>
+BCE1 91C8 BCE1 <CJK>
+BCE2 932B BCE2 <CJK>
+BCE3 82E5 BCE3 <CJK>
+BCE4 5BC2 BCE4 <CJK>
+BCE5 5F31 BCE5 <CJK>
+BCE6 60F9 BCE6 <CJK>
+BCE7 4E3B BCE7 <CJK>
+BCE8 53D6 BCE8 <CJK>
+BCE9 5B88 BCE9 <CJK>
+BCEA 624B BCEA <CJK>
+BCEB 6731 BCEB <CJK>
+BCEC 6B8A BCEC <CJK>
+BCED 72E9 BCED <CJK>
+BCEE 73E0 BCEE <CJK>
+BCEF 7A2E BCEF <CJK>
+BCF0 816B BCF0 <CJK>
+BCF1 8DA3 BCF1 <CJK>
+BCF2 9152 BCF2 <CJK>
+BCF3 9996 BCF3 <CJK>
+BCF4 5112 BCF4 <CJK>
+BCF5 53D7 BCF5 <CJK>
+BCF6 546A BCF6 <CJK>
+BCF7 5BFF BCF7 <CJK>
+BCF8 6388 BCF8 <CJK>
+BCF9 6A39 BCF9 <CJK>
+BCFA 7DAC BCFA <CJK>
+BCFB 9700 BCFB <CJK>
+BCFC 56DA BCFC <CJK>
+BCFD 53CE BCFD <CJK>
+BCFE 5468 BCFE <CJK>
+BDA1 5B97 BDA1 <CJK>
+BDA2 5C31 BDA2 <CJK>
+BDA3 5DDE BDA3 <CJK>
+BDA4 4FEE BDA4 <CJK>
+BDA5 6101 BDA5 <CJK>
+BDA6 62FE BDA6 <CJK>
+BDA7 6D32 BDA7 <CJK>
+BDA8 79C0 BDA8 <CJK>
+BDA9 79CB BDA9 <CJK>
+BDAA 7D42 BDAA <CJK>
+BDAB 7E4D BDAB <CJK>
+BDAC 7FD2 BDAC <CJK>
+BDAD 81ED BDAD <CJK>
+BDAE 821F BDAE <CJK>
+BDAF 8490 BDAF <CJK>
+BDB0 8846 BDB0 <CJK>
+BDB1 8972 BDB1 <CJK>
+BDB2 8B90 BDB2 <CJK>
+BDB3 8E74 BDB3 <CJK>
+BDB4 8F2F BDB4 <CJK>
+BDB5 9031 BDB5 <CJK>
+BDB6 914B BDB6 <CJK>
+BDB7 916C BDB7 <CJK>
+BDB8 96C6 BDB8 <CJK>
+BDB9 919C BDB9 <CJK>
+BDBA 4EC0 BDBA <CJK>
+BDBB 4F4F BDBB <CJK>
+BDBC 5145 BDBC <CJK>
+BDBD 5341 BDBD <CJK>
+BDBE 5F93 BDBE <CJK>
+BDBF 620E BDBF <CJK>
+BDC0 67D4 BDC0 <CJK>
+BDC1 6C41 BDC1 <CJK>
+BDC2 6E0B BDC2 <CJK>
+BDC3 7363 BDC3 <CJK>
+BDC4 7E26 BDC4 <CJK>
+BDC5 91CD BDC5 <CJK>
+BDC6 9283 BDC6 <CJK>
+BDC7 53D4 BDC7 <CJK>
+BDC8 5919 BDC8 <CJK>
+BDC9 5BBF BDC9 <CJK>
+BDCA 6DD1 BDCA <CJK>
+BDCB 795D BDCB <CJK>
+BDCC 7E2E BDCC <CJK>
+BDCD 7C9B BDCD <CJK>
+BDCE 587E BDCE <CJK>
+BDCF 719F BDCF <CJK>
+BDD0 51FA BDD0 <CJK>
+BDD1 8853 BDD1 <CJK>
+BDD2 8FF0 BDD2 <CJK>
+BDD3 4FCA BDD3 <CJK>
+BDD4 5CFB BDD4 <CJK>
+BDD5 6625 BDD5 <CJK>
+BDD6 77AC BDD6 <CJK>
+BDD7 7AE3 BDD7 <CJK>
+BDD8 821C BDD8 <CJK>
+BDD9 99FF BDD9 <CJK>
+BDDA 51C6 BDDA <CJK>
+BDDB 5FAA BDDB <CJK>
+BDDC 65EC BDDC <CJK>
+BDDD 696F BDDD <CJK>
+BDDE 6B89 BDDE <CJK>
+BDDF 6DF3 BDDF <CJK>
+BDE0 6E96 BDE0 <CJK>
+BDE1 6F64 BDE1 <CJK>
+BDE2 76FE BDE2 <CJK>
+BDE3 7D14 BDE3 <CJK>
+BDE4 5DE1 BDE4 <CJK>
+BDE5 9075 BDE5 <CJK>
+BDE6 9187 BDE6 <CJK>
+BDE7 9806 BDE7 <CJK>
+BDE8 51E6 BDE8 <CJK>
+BDE9 521D BDE9 <CJK>
+BDEA 6240 BDEA <CJK>
+BDEB 6691 BDEB <CJK>
+BDEC 66D9 BDEC <CJK>
+BDED 6E1A BDED <CJK>
+BDEE 5EB6 BDEE <CJK>
+BDEF 7DD2 BDEF <CJK>
+BDF0 7F72 BDF0 <CJK>
+BDF1 66F8 BDF1 <CJK>
+BDF2 85AF BDF2 <CJK>
+BDF3 85F7 BDF3 <CJK>
+BDF4 8AF8 BDF4 <CJK>
+BDF5 52A9 BDF5 <CJK>
+BDF6 53D9 BDF6 <CJK>
+BDF7 5973 BDF7 <CJK>
+BDF8 5E8F BDF8 <CJK>
+BDF9 5F90 BDF9 <CJK>
+BDFA 6055 BDFA <CJK>
+BDFB 92E4 BDFB <CJK>
+BDFC 9664 BDFC <CJK>
+BDFD 50B7 BDFD <CJK>
+BDFE 511F BDFE <CJK>
+BEA1 52DD BEA1 <CJK>
+BEA2 5320 BEA2 <CJK>
+BEA3 5347 BEA3 <CJK>
+BEA4 53EC BEA4 <CJK>
+BEA5 54E8 BEA5 <CJK>
+BEA6 5546 BEA6 <CJK>
+BEA7 5531 BEA7 <CJK>
+BEA8 5617 BEA8 <CJK>
+BEA9 5968 BEA9 <CJK>
+BEAA 59BE BEAA <CJK>
+BEAB 5A3C BEAB <CJK>
+BEAC 5BB5 BEAC <CJK>
+BEAD 5C06 BEAD <CJK>
+BEAE 5C0F BEAE <CJK>
+BEAF 5C11 BEAF <CJK>
+BEB0 5C1A BEB0 <CJK>
+BEB1 5E84 BEB1 <CJK>
+BEB2 5E8A BEB2 <CJK>
+BEB3 5EE0 BEB3 <CJK>
+BEB4 5F70 BEB4 <CJK>
+BEB5 627F BEB5 <CJK>
+BEB6 6284 BEB6 <CJK>
+BEB7 62DB BEB7 <CJK>
+BEB8 638C BEB8 <CJK>
+BEB9 6377 BEB9 <CJK>
+BEBA 6607 BEBA <CJK>
+BEBB 660C BEBB <CJK>
+BEBC 662D BEBC <CJK>
+BEBD 6676 BEBD <CJK>
+BEBE 677E BEBE <CJK>
+BEBF 68A2 BEBF <CJK>
+BEC0 6A1F BEC0 <CJK>
+BEC1 6A35 BEC1 <CJK>
+BEC2 6CBC BEC2 <CJK>
+BEC3 6D88 BEC3 <CJK>
+BEC4 6E09 BEC4 <CJK>
+BEC5 6E58 BEC5 <CJK>
+BEC6 713C BEC6 <CJK>
+BEC7 7126 BEC7 <CJK>
+BEC8 7167 BEC8 <CJK>
+BEC9 75C7 BEC9 <CJK>
+BECA 7701 BECA <CJK>
+BECB 785D BECB <CJK>
+BECC 7901 BECC <CJK>
+BECD 7965 BECD <CJK>
+BECE 79F0 BECE <CJK>
+BECF 7AE0 BECF <CJK>
+BED0 7B11 BED0 <CJK>
+BED1 7CA7 BED1 <CJK>
+BED2 7D39 BED2 <CJK>
+BED3 8096 BED3 <CJK>
+BED4 83D6 BED4 <CJK>
+BED5 848B BED5 <CJK>
+BED6 8549 BED6 <CJK>
+BED7 885D BED7 <CJK>
+BED8 88F3 BED8 <CJK>
+BED9 8A1F BED9 <CJK>
+BEDA 8A3C BEDA <CJK>
+BEDB 8A54 BEDB <CJK>
+BEDC 8A73 BEDC <CJK>
+BEDD 8C61 BEDD <CJK>
+BEDE 8CDE BEDE <CJK>
+BEDF 91A4 BEDF <CJK>
+BEE0 9266 BEE0 <CJK>
+BEE1 937E BEE1 <CJK>
+BEE2 9418 BEE2 <CJK>
+BEE3 969C BEE3 <CJK>
+BEE4 9798 BEE4 <CJK>
+BEE5 4E0A BEE5 <CJK>
+BEE6 4E08 BEE6 <CJK>
+BEE7 4E1E BEE7 <CJK>
+BEE8 4E57 BEE8 <CJK>
+BEE9 5197 BEE9 <CJK>
+BEEA 5270 BEEA <CJK>
+BEEB 57CE BEEB <CJK>
+BEEC 5834 BEEC <CJK>
+BEED 58CC BEED <CJK>
+BEEE 5B22 BEEE <CJK>
+BEEF 5E38 BEEF <CJK>
+BEF0 60C5 BEF0 <CJK>
+BEF1 64FE BEF1 <CJK>
+BEF2 6761 BEF2 <CJK>
+BEF3 6756 BEF3 <CJK>
+BEF4 6D44 BEF4 <CJK>
+BEF5 72B6 BEF5 <CJK>
+BEF6 7573 BEF6 <CJK>
+BEF7 7A63 BEF7 <CJK>
+BEF8 84B8 BEF8 <CJK>
+BEF9 8B72 BEF9 <CJK>
+BEFA 91B8 BEFA <CJK>
+BEFB 9320 BEFB <CJK>
+BEFC 5631 BEFC <CJK>
+BEFD 57F4 BEFD <CJK>
+BEFE 98FE BEFE <CJK>
+BFA1 62ED BFA1 <CJK>
+BFA2 690D BFA2 <CJK>
+BFA3 6B96 BFA3 <CJK>
+BFA4 71ED BFA4 <CJK>
+BFA5 7E54 BFA5 <CJK>
+BFA6 8077 BFA6 <CJK>
+BFA7 8272 BFA7 <CJK>
+BFA8 89E6 BFA8 <CJK>
+BFA9 98DF BFA9 <CJK>
+BFAA 8755 BFAA <CJK>
+BFAB 8FB1 BFAB <CJK>
+BFAC 5C3B BFAC <CJK>
+BFAD 4F38 BFAD <CJK>
+BFAE 4FE1 BFAE <CJK>
+BFAF 4FB5 BFAF <CJK>
+BFB0 5507 BFB0 <CJK>
+BFB1 5A20 BFB1 <CJK>
+BFB2 5BDD BFB2 <CJK>
+BFB3 5BE9 BFB3 <CJK>
+BFB4 5FC3 BFB4 <CJK>
+BFB5 614E BFB5 <CJK>
+BFB6 632F BFB6 <CJK>
+BFB7 65B0 BFB7 <CJK>
+BFB8 664B BFB8 <CJK>
+BFB9 68EE BFB9 <CJK>
+BFBA 699B BFBA <CJK>
+BFBB 6D78 BFBB <CJK>
+BFBC 6DF1 BFBC <CJK>
+BFBD 7533 BFBD <CJK>
+BFBE 75B9 BFBE <CJK>
+BFBF 771F BFBF <CJK>
+BFC0 795E BFC0 <CJK>
+BFC1 79E6 BFC1 <CJK>
+BFC2 7D33 BFC2 <CJK>
+BFC3 81E3 BFC3 <CJK>
+BFC4 82AF BFC4 <CJK>
+BFC5 85AA BFC5 <CJK>
+BFC6 89AA BFC6 <CJK>
+BFC7 8A3A BFC7 <CJK>
+BFC8 8EAB BFC8 <CJK>
+BFC9 8F9B BFC9 <CJK>
+BFCA 9032 BFCA <CJK>
+BFCB 91DD BFCB <CJK>
+BFCC 9707 BFCC <CJK>
+BFCD 4EBA BFCD <CJK>
+BFCE 4EC1 BFCE <CJK>
+BFCF 5203 BFCF <CJK>
+BFD0 5875 BFD0 <CJK>
+BFD1 58EC BFD1 <CJK>
+BFD2 5C0B BFD2 <CJK>
+BFD3 751A BFD3 <CJK>
+BFD4 5C3D BFD4 <CJK>
+BFD5 814E BFD5 <CJK>
+BFD6 8A0A BFD6 <CJK>
+BFD7 8FC5 BFD7 <CJK>
+BFD8 9663 BFD8 <CJK>
+BFD9 976D BFD9 <CJK>
+BFDA 7B25 BFDA <CJK>
+BFDB 8ACF BFDB <CJK>
+BFDC 9808 BFDC <CJK>
+BFDD 9162 BFDD <CJK>
+BFDE 56F3 BFDE <CJK>
+BFDF 53A8 BFDF <CJK>
+BFE0 9017 BFE0 <CJK>
+BFE1 5439 BFE1 <CJK>
+BFE2 5782 BFE2 <CJK>
+BFE3 5E25 BFE3 <CJK>
+BFE4 63A8 BFE4 <CJK>
+BFE5 6C34 BFE5 <CJK>
+BFE6 708A BFE6 <CJK>
+BFE7 7761 BFE7 <CJK>
+BFE8 7C8B BFE8 <CJK>
+BFE9 7FE0 BFE9 <CJK>
+BFEA 8870 BFEA <CJK>
+BFEB 9042 BFEB <CJK>
+BFEC 9154 BFEC <CJK>
+BFED 9310 BFED <CJK>
+BFEE 9318 BFEE <CJK>
+BFEF 968F BFEF <CJK>
+BFF0 745E BFF0 <CJK>
+BFF1 9AC4 BFF1 <CJK>
+BFF2 5D07 BFF2 <CJK>
+BFF3 5D69 BFF3 <CJK>
+BFF4 6570 BFF4 <CJK>
+BFF5 67A2 BFF5 <CJK>
+BFF6 8DA8 BFF6 <CJK>
+BFF7 96DB BFF7 <CJK>
+BFF8 636E BFF8 <CJK>
+BFF9 6749 BFF9 <CJK>
+BFFA 6919 BFFA <CJK>
+BFFB 83C5 BFFB <CJK>
+BFFC 9817 BFFC <CJK>
+BFFD 96C0 BFFD <CJK>
+BFFE 88FE BFFE <CJK>
+C0A1 6F84 C0A1 <CJK>
+C0A2 647A C0A2 <CJK>
+C0A3 5BF8 C0A3 <CJK>
+C0A4 4E16 C0A4 <CJK>
+C0A5 702C C0A5 <CJK>
+C0A6 755D C0A6 <CJK>
+C0A7 662F C0A7 <CJK>
+C0A8 51C4 C0A8 <CJK>
+C0A9 5236 C0A9 <CJK>
+C0AA 52E2 C0AA <CJK>
+C0AB 59D3 C0AB <CJK>
+C0AC 5F81 C0AC <CJK>
+C0AD 6027 C0AD <CJK>
+C0AE 6210 C0AE <CJK>
+C0AF 653F C0AF <CJK>
+C0B0 6574 C0B0 <CJK>
+C0B1 661F C0B1 <CJK>
+C0B2 6674 C0B2 <CJK>
+C0B3 68F2 C0B3 <CJK>
+C0B4 6816 C0B4 <CJK>
+C0B5 6B63 C0B5 <CJK>
+C0B6 6E05 C0B6 <CJK>
+C0B7 7272 C0B7 <CJK>
+C0B8 751F C0B8 <CJK>
+C0B9 76DB C0B9 <CJK>
+C0BA 7CBE C0BA <CJK>
+C0BB 8056 C0BB <CJK>
+C0BC 58F0 C0BC <CJK>
+C0BD 88FD C0BD <CJK>
+C0BE 897F C0BE <CJK>
+C0BF 8AA0 C0BF <CJK>
+C0C0 8A93 C0C0 <CJK>
+C0C1 8ACB C0C1 <CJK>
+C0C2 901D C0C2 <CJK>
+C0C3 9192 C0C3 <CJK>
+C0C4 9752 C0C4 <CJK>
+C0C5 9759 C0C5 <CJK>
+C0C6 6589 C0C6 <CJK>
+C0C7 7A0E C0C7 <CJK>
+C0C8 8106 C0C8 <CJK>
+C0C9 96BB C0C9 <CJK>
+C0CA 5E2D C0CA <CJK>
+C0CB 60DC C0CB <CJK>
+C0CC 621A C0CC <CJK>
+C0CD 65A5 C0CD <CJK>
+C0CE 6614 C0CE <CJK>
+C0CF 6790 C0CF <CJK>
+C0D0 77F3 C0D0 <CJK>
+C0D1 7A4D C0D1 <CJK>
+C0D2 7C4D C0D2 <CJK>
+C0D3 7E3E C0D3 <CJK>
+C0D4 810A C0D4 <CJK>
+C0D5 8CAC C0D5 <CJK>
+C0D6 8D64 C0D6 <CJK>
+C0D7 8DE1 C0D7 <CJK>
+C0D8 8E5F C0D8 <CJK>
+C0D9 78A9 C0D9 <CJK>
+C0DA 5207 C0DA <CJK>
+C0DB 62D9 C0DB <CJK>
+C0DC 63A5 C0DC <CJK>
+C0DD 6442 C0DD <CJK>
+C0DE 6298 C0DE <CJK>
+C0DF 8A2D C0DF <CJK>
+C0E0 7A83 C0E0 <CJK>
+C0E1 7BC0 C0E1 <CJK>
+C0E2 8AAC C0E2 <CJK>
+C0E3 96EA C0E3 <CJK>
+C0E4 7D76 C0E4 <CJK>
+C0E5 820C C0E5 <CJK>
+C0E6 8749 C0E6 <CJK>
+C0E7 4ED9 C0E7 <CJK>
+C0E8 5148 C0E8 <CJK>
+C0E9 5343 C0E9 <CJK>
+C0EA 5360 C0EA <CJK>
+C0EB 5BA3 C0EB <CJK>
+C0EC 5C02 C0EC <CJK>
+C0ED 5C16 C0ED <CJK>
+C0EE 5DDD C0EE <CJK>
+C0EF 6226 C0EF <CJK>
+C0F0 6247 C0F0 <CJK>
+C0F1 64B0 C0F1 <CJK>
+C0F2 6813 C0F2 <CJK>
+C0F3 6834 C0F3 <CJK>
+C0F4 6CC9 C0F4 <CJK>
+C0F5 6D45 C0F5 <CJK>
+C0F6 6D17 C0F6 <CJK>
+C0F7 67D3 C0F7 <CJK>
+C0F8 6F5C C0F8 <CJK>
+C0F9 714E C0F9 <CJK>
+C0FA 717D C0FA <CJK>
+C0FB 65CB C0FB <CJK>
+C0FC 7A7F C0FC <CJK>
+C0FD 7BAD C0FD <CJK>
+C0FE 7DDA C0FE <CJK>
+C1A1 7E4A C1A1 <CJK>
+C1A2 7FA8 C1A2 <CJK>
+C1A3 817A C1A3 <CJK>
+C1A4 821B C1A4 <CJK>
+C1A5 8239 C1A5 <CJK>
+C1A6 85A6 C1A6 <CJK>
+C1A7 8A6E C1A7 <CJK>
+C1A8 8CCE C1A8 <CJK>
+C1A9 8DF5 C1A9 <CJK>
+C1AA 9078 C1AA <CJK>
+C1AB 9077 C1AB <CJK>
+C1AC 92AD C1AC <CJK>
+C1AD 9291 C1AD <CJK>
+C1AE 9583 C1AE <CJK>
+C1AF 9BAE C1AF <CJK>
+C1B0 524D C1B0 <CJK>
+C1B1 5584 C1B1 <CJK>
+C1B2 6F38 C1B2 <CJK>
+C1B3 7136 C1B3 <CJK>
+C1B4 5168 C1B4 <CJK>
+C1B5 7985 C1B5 <CJK>
+C1B6 7E55 C1B6 <CJK>
+C1B7 81B3 C1B7 <CJK>
+C1B8 7CCE C1B8 <CJK>
+C1B9 564C C1B9 <CJK>
+C1BA 5851 C1BA <CJK>
+C1BB 5CA8 C1BB <CJK>
+C1BC 63AA C1BC <CJK>
+C1BD 66FE C1BD <CJK>
+C1BE 66FD C1BE <CJK>
+C1BF 695A C1BF <CJK>
+C1C0 72D9 C1C0 <CJK>
+C1C1 758F C1C1 <CJK>
+C1C2 758E C1C2 <CJK>
+C1C3 790E C1C3 <CJK>
+C1C4 7956 C1C4 <CJK>
+C1C5 79DF C1C5 <CJK>
+C1C6 7C97 C1C6 <CJK>
+C1C7 7D20 C1C7 <CJK>
+C1C8 7D44 C1C8 <CJK>
+C1C9 8607 C1C9 <CJK>
+C1CA 8A34 C1CA <CJK>
+C1CB 963B C1CB <CJK>
+C1CC 9061 C1CC <CJK>
+C1CD 9F20 C1CD <CJK>
+C1CE 50E7 C1CE <CJK>
+C1CF 5275 C1CF <CJK>
+C1D0 53CC C1D0 <CJK>
+C1D1 53E2 C1D1 <CJK>
+C1D2 5009 C1D2 <CJK>
+C1D3 55AA C1D3 <CJK>
+C1D4 58EE C1D4 <CJK>
+C1D5 594F C1D5 <CJK>
+C1D6 723D C1D6 <CJK>
+C1D7 5B8B C1D7 <CJK>
+C1D8 5C64 C1D8 <CJK>
+C1D9 531D C1D9 <CJK>
+C1DA 60E3 C1DA <CJK>
+C1DB 60F3 C1DB <CJK>
+C1DC 635C C1DC <CJK>
+C1DD 6383 C1DD <CJK>
+C1DE 633F C1DE <CJK>
+C1DF 63BB C1DF <CJK>
+C1E0 64CD C1E0 <CJK>
+C1E1 65E9 C1E1 <CJK>
+C1E2 66F9 C1E2 <CJK>
+C1E3 5DE3 C1E3 <CJK>
+C1E4 69CD C1E4 <CJK>
+C1E5 69FD C1E5 <CJK>
+C1E6 6F15 C1E6 <CJK>
+C1E7 71E5 C1E7 <CJK>
+C1E8 4E89 C1E8 <CJK>
+C1E9 75E9 C1E9 <CJK>
+C1EA 76F8 C1EA <CJK>
+C1EB 7A93 C1EB <CJK>
+C1EC 7CDF C1EC <CJK>
+C1ED 7DCF C1ED <CJK>
+C1EE 7D9C C1EE <CJK>
+C1EF 8061 C1EF <CJK>
+C1F0 8349 C1F0 <CJK>
+C1F1 8358 C1F1 <CJK>
+C1F2 846C C1F2 <CJK>
+C1F3 84BC C1F3 <CJK>
+C1F4 85FB C1F4 <CJK>
+C1F5 88C5 C1F5 <CJK>
+C1F6 8D70 C1F6 <CJK>
+C1F7 9001 C1F7 <CJK>
+C1F8 906D C1F8 <CJK>
+C1F9 9397 C1F9 <CJK>
+C1FA 971C C1FA <CJK>
+C1FB 9A12 C1FB <CJK>
+C1FC 50CF C1FC <CJK>
+C1FD 5897 C1FD <CJK>
+C1FE 618E C1FE <CJK>
+C2A1 81D3 C2A1 <CJK>
+C2A2 8535 C2A2 <CJK>
+C2A3 8D08 C2A3 <CJK>
+C2A4 9020 C2A4 <CJK>
+C2A5 4FC3 C2A5 <CJK>
+C2A6 5074 C2A6 <CJK>
+C2A7 5247 C2A7 <CJK>
+C2A8 5373 C2A8 <CJK>
+C2A9 606F C2A9 <CJK>
+C2AA 6349 C2AA <CJK>
+C2AB 675F C2AB <CJK>
+C2AC 6E2C C2AC <CJK>
+C2AD 8DB3 C2AD <CJK>
+C2AE 901F C2AE <CJK>
+C2AF 4FD7 C2AF <CJK>
+C2B0 5C5E C2B0 <CJK>
+C2B1 8CCA C2B1 <CJK>
+C2B2 65CF C2B2 <CJK>
+C2B3 7D9A C2B3 <CJK>
+C2B4 5352 C2B4 <CJK>
+C2B5 8896 C2B5 <CJK>
+C2B6 5176 C2B6 <CJK>
+C2B7 63C3 C2B7 <CJK>
+C2B8 5B58 C2B8 <CJK>
+C2B9 5B6B C2B9 <CJK>
+C2BA 5C0A C2BA <CJK>
+C2BB 640D C2BB <CJK>
+C2BC 6751 C2BC <CJK>
+C2BD 905C C2BD <CJK>
+C2BE 4ED6 C2BE <CJK>
+C2BF 591A C2BF <CJK>
+C2C0 592A C2C0 <CJK>
+C2C1 6C70 C2C1 <CJK>
+C2C2 8A51 C2C2 <CJK>
+C2C3 553E C2C3 <CJK>
+C2C4 5815 C2C4 <CJK>
+C2C5 59A5 C2C5 <CJK>
+C2C6 60F0 C2C6 <CJK>
+C2C7 6253 C2C7 <CJK>
+C2C8 67C1 C2C8 <CJK>
+C2C9 8235 C2C9 <CJK>
+C2CA 6955 C2CA <CJK>
+C2CB 9640 C2CB <CJK>
+C2CC 99C4 C2CC <CJK>
+C2CD 9A28 C2CD <CJK>
+C2CE 4F53 C2CE <CJK>
+C2CF 5806 C2CF <CJK>
+C2D0 5BFE C2D0 <CJK>
+C2D1 8010 C2D1 <CJK>
+C2D2 5CB1 C2D2 <CJK>
+C2D3 5E2F C2D3 <CJK>
+C2D4 5F85 C2D4 <CJK>
+C2D5 6020 C2D5 <CJK>
+C2D6 614B C2D6 <CJK>
+C2D7 6234 C2D7 <CJK>
+C2D8 66FF C2D8 <CJK>
+C2D9 6CF0 C2D9 <CJK>
+C2DA 6EDE C2DA <CJK>
+C2DB 80CE C2DB <CJK>
+C2DC 817F C2DC <CJK>
+C2DD 82D4 C2DD <CJK>
+C2DE 888B C2DE <CJK>
+C2DF 8CB8 C2DF <CJK>
+C2E0 9000 C2E0 <CJK>
+C2E1 902E C2E1 <CJK>
+C2E2 968A C2E2 <CJK>
+C2E3 9EDB C2E3 <CJK>
+C2E4 9BDB C2E4 <CJK>
+C2E5 4EE3 C2E5 <CJK>
+C2E6 53F0 C2E6 <CJK>
+C2E7 5927 C2E7 <CJK>
+C2E8 7B2C C2E8 <CJK>
+C2E9 918D C2E9 <CJK>
+C2EA 984C C2EA <CJK>
+C2EB 9DF9 C2EB <CJK>
+C2EC 6EDD C2EC <CJK>
+C2ED 7027 C2ED <CJK>
+C2EE 5353 C2EE <CJK>
+C2EF 5544 C2EF <CJK>
+C2F0 5B85 C2F0 <CJK>
+C2F1 6258 C2F1 <CJK>
+C2F2 629E C2F2 <CJK>
+C2F3 62D3 C2F3 <CJK>
+C2F4 6CA2 C2F4 <CJK>
+C2F5 6FEF C2F5 <CJK>
+C2F6 7422 C2F6 <CJK>
+C2F7 8A17 C2F7 <CJK>
+C2F8 9438 C2F8 <CJK>
+C2F9 6FC1 C2F9 <CJK>
+C2FA 8AFE C2FA <CJK>
+C2FB 8338 C2FB <CJK>
+C2FC 51E7 C2FC <CJK>
+C2FD 86F8 C2FD <CJK>
+C2FE 53EA C2FE <CJK>
+C3A1 53E9 C3A1 <CJK>
+C3A2 4F46 C3A2 <CJK>
+C3A3 9054 C3A3 <CJK>
+C3A4 8FB0 C3A4 <CJK>
+C3A5 596A C3A5 <CJK>
+C3A6 8131 C3A6 <CJK>
+C3A7 5DFD C3A7 <CJK>
+C3A8 7AEA C3A8 <CJK>
+C3A9 8FBF C3A9 <CJK>
+C3AA 68DA C3AA <CJK>
+C3AB 8C37 C3AB <CJK>
+C3AC 72F8 C3AC <CJK>
+C3AD 9C48 C3AD <CJK>
+C3AE 6A3D C3AE <CJK>
+C3AF 8AB0 C3AF <CJK>
+C3B0 4E39 C3B0 <CJK>
+C3B1 5358 C3B1 <CJK>
+C3B2 5606 C3B2 <CJK>
+C3B3 5766 C3B3 <CJK>
+C3B4 62C5 C3B4 <CJK>
+C3B5 63A2 C3B5 <CJK>
+C3B6 65E6 C3B6 <CJK>
+C3B7 6B4E C3B7 <CJK>
+C3B8 6DE1 C3B8 <CJK>
+C3B9 6E5B C3B9 <CJK>
+C3BA 70AD C3BA <CJK>
+C3BB 77ED C3BB <CJK>
+C3BC 7AEF C3BC <CJK>
+C3BD 7BAA C3BD <CJK>
+C3BE 7DBB C3BE <CJK>
+C3BF 803D C3BF <CJK>
+C3C0 80C6 C3C0 <CJK>
+C3C1 86CB C3C1 <CJK>
+C3C2 8A95 C3C2 <CJK>
+C3C3 935B C3C3 <CJK>
+C3C4 56E3 C3C4 <CJK>
+C3C5 58C7 C3C5 <CJK>
+C3C6 5F3E C3C6 <CJK>
+C3C7 65AD C3C7 <CJK>
+C3C8 6696 C3C8 <CJK>
+C3C9 6A80 C3C9 <CJK>
+C3CA 6BB5 C3CA <CJK>
+C3CB 7537 C3CB <CJK>
+C3CC 8AC7 C3CC <CJK>
+C3CD 5024 C3CD <CJK>
+C3CE 77E5 C3CE <CJK>
+C3CF 5730 C3CF <CJK>
+C3D0 5F1B C3D0 <CJK>
+C3D1 6065 C3D1 <CJK>
+C3D2 667A C3D2 <CJK>
+C3D3 6C60 C3D3 <CJK>
+C3D4 75F4 C3D4 <CJK>
+C3D5 7A1A C3D5 <CJK>
+C3D6 7F6E C3D6 <CJK>
+C3D7 81F4 C3D7 <CJK>
+C3D8 8718 C3D8 <CJK>
+C3D9 9045 C3D9 <CJK>
+C3DA 99B3 C3DA <CJK>
+C3DB 7BC9 C3DB <CJK>
+C3DC 755C C3DC <CJK>
+C3DD 7AF9 C3DD <CJK>
+C3DE 7B51 C3DE <CJK>
+C3DF 84C4 C3DF <CJK>
+C3E0 9010 C3E0 <CJK>
+C3E1 79E9 C3E1 <CJK>
+C3E2 7A92 C3E2 <CJK>
+C3E3 8336 C3E3 <CJK>
+C3E4 5AE1 C3E4 <CJK>
+C3E5 7740 C3E5 <CJK>
+C3E6 4E2D C3E6 <CJK>
+C3E7 4EF2 C3E7 <CJK>
+C3E8 5B99 C3E8 <CJK>
+C3E9 5FE0 C3E9 <CJK>
+C3EA 62BD C3EA <CJK>
+C3EB 663C C3EB <CJK>
+C3EC 67F1 C3EC <CJK>
+C3ED 6CE8 C3ED <CJK>
+C3EE 866B C3EE <CJK>
+C3EF 8877 C3EF <CJK>
+C3F0 8A3B C3F0 <CJK>
+C3F1 914E C3F1 <CJK>
+C3F2 92F3 C3F2 <CJK>
+C3F3 99D0 C3F3 <CJK>
+C3F4 6A17 C3F4 <CJK>
+C3F5 7026 C3F5 <CJK>
+C3F6 732A C3F6 <CJK>
+C3F7 82E7 C3F7 <CJK>
+C3F8 8457 C3F8 <CJK>
+C3F9 8CAF C3F9 <CJK>
+C3FA 4E01 C3FA <CJK>
+C3FB 5146 C3FB <CJK>
+C3FC 51CB C3FC <CJK>
+C3FD 558B C3FD <CJK>
+C3FE 5BF5 C3FE <CJK>
+C4A1 5E16 C4A1 <CJK>
+C4A2 5E33 C4A2 <CJK>
+C4A3 5E81 C4A3 <CJK>
+C4A4 5F14 C4A4 <CJK>
+C4A5 5F35 C4A5 <CJK>
+C4A6 5F6B C4A6 <CJK>
+C4A7 5FB4 C4A7 <CJK>
+C4A8 61F2 C4A8 <CJK>
+C4A9 6311 C4A9 <CJK>
+C4AA 66A2 C4AA <CJK>
+C4AB 671D C4AB <CJK>
+C4AC 6F6E C4AC <CJK>
+C4AD 7252 C4AD <CJK>
+C4AE 753A C4AE <CJK>
+C4AF 773A C4AF <CJK>
+C4B0 8074 C4B0 <CJK>
+C4B1 8139 C4B1 <CJK>
+C4B2 8178 C4B2 <CJK>
+C4B3 8776 C4B3 <CJK>
+C4B4 8ABF C4B4 <CJK>
+C4B5 8ADC C4B5 <CJK>
+C4B6 8D85 C4B6 <CJK>
+C4B7 8DF3 C4B7 <CJK>
+C4B8 929A C4B8 <CJK>
+C4B9 9577 C4B9 <CJK>
+C4BA 9802 C4BA <CJK>
+C4BB 9CE5 C4BB <CJK>
+C4BC 52C5 C4BC <CJK>
+C4BD 6357 C4BD <CJK>
+C4BE 76F4 C4BE <CJK>
+C4BF 6715 C4BF <CJK>
+C4C0 6C88 C4C0 <CJK>
+C4C1 73CD C4C1 <CJK>
+C4C2 8CC3 C4C2 <CJK>
+C4C3 93AE C4C3 <CJK>
+C4C4 9673 C4C4 <CJK>
+C4C5 6D25 C4C5 <CJK>
+C4C6 589C C4C6 <CJK>
+C4C7 690E C4C7 <CJK>
+C4C8 69CC C4C8 <CJK>
+C4C9 8FFD C4C9 <CJK>
+C4CA 939A C4CA <CJK>
+C4CB 75DB C4CB <CJK>
+C4CC 901A C4CC <CJK>
+C4CD 585A C4CD <CJK>
+C4CE 6802 C4CE <CJK>
+C4CF 63B4 C4CF <CJK>
+C4D0 69FB C4D0 <CJK>
+C4D1 4F43 C4D1 <CJK>
+C4D2 6F2C C4D2 <CJK>
+C4D3 67D8 C4D3 <CJK>
+C4D4 8FBB C4D4 <CJK>
+C4D5 8526 C4D5 <CJK>
+C4D6 7DB4 C4D6 <CJK>
+C4D7 9354 C4D7 <CJK>
+C4D8 693F C4D8 <CJK>
+C4D9 6F70 C4D9 <CJK>
+C4DA 576A C4DA <CJK>
+C4DB 58F7 C4DB <CJK>
+C4DC 5B2C C4DC <CJK>
+C4DD 7D2C C4DD <CJK>
+C4DE 722A C4DE <CJK>
+C4DF 540A C4DF <CJK>
+C4E0 91E3 C4E0 <CJK>
+C4E1 9DB4 C4E1 <CJK>
+C4E2 4EAD C4E2 <CJK>
+C4E3 4F4E C4E3 <CJK>
+C4E4 505C C4E4 <CJK>
+C4E5 5075 C4E5 <CJK>
+C4E6 5243 C4E6 <CJK>
+C4E7 8C9E C4E7 <CJK>
+C4E8 5448 C4E8 <CJK>
+C4E9 5824 C4E9 <CJK>
+C4EA 5B9A C4EA <CJK>
+C4EB 5E1D C4EB <CJK>
+C4EC 5E95 C4EC <CJK>
+C4ED 5EAD C4ED <CJK>
+C4EE 5EF7 C4EE <CJK>
+C4EF 5F1F C4EF <CJK>
+C4F0 608C C4F0 <CJK>
+C4F1 62B5 C4F1 <CJK>
+C4F2 633A C4F2 <CJK>
+C4F3 63D0 C4F3 <CJK>
+C4F4 68AF C4F4 <CJK>
+C4F5 6C40 C4F5 <CJK>
+C4F6 7887 C4F6 <CJK>
+C4F7 798E C4F7 <CJK>
+C4F8 7A0B C4F8 <CJK>
+C4F9 7DE0 C4F9 <CJK>
+C4FA 8247 C4FA <CJK>
+C4FB 8A02 C4FB <CJK>
+C4FC 8AE6 C4FC <CJK>
+C4FD 8E44 C4FD <CJK>
+C4FE 9013 C4FE <CJK>
+C5A1 90B8 C5A1 <CJK>
+C5A2 912D C5A2 <CJK>
+C5A3 91D8 C5A3 <CJK>
+C5A4 9F0E C5A4 <CJK>
+C5A5 6CE5 C5A5 <CJK>
+C5A6 6458 C5A6 <CJK>
+C5A7 64E2 C5A7 <CJK>
+C5A8 6575 C5A8 <CJK>
+C5A9 6EF4 C5A9 <CJK>
+C5AA 7684 C5AA <CJK>
+C5AB 7B1B C5AB <CJK>
+C5AC 9069 C5AC <CJK>
+C5AD 93D1 C5AD <CJK>
+C5AE 6EBA C5AE <CJK>
+C5AF 54F2 C5AF <CJK>
+C5B0 5FB9 C5B0 <CJK>
+C5B1 64A4 C5B1 <CJK>
+C5B2 8F4D C5B2 <CJK>
+C5B3 8FED C5B3 <CJK>
+C5B4 9244 C5B4 <CJK>
+C5B5 5178 C5B5 <CJK>
+C5B6 586B C5B6 <CJK>
+C5B7 5929 C5B7 <CJK>
+C5B8 5C55 C5B8 <CJK>
+C5B9 5E97 C5B9 <CJK>
+C5BA 6DFB C5BA <CJK>
+C5BB 7E8F C5BB <CJK>
+C5BC 751C C5BC <CJK>
+C5BD 8CBC C5BD <CJK>
+C5BE 8EE2 C5BE <CJK>
+C5BF 985B C5BF <CJK>
+C5C0 70B9 C5C0 <CJK>
+C5C1 4F1D C5C1 <CJK>
+C5C2 6BBF C5C2 <CJK>
+C5C3 6FB1 C5C3 <CJK>
+C5C4 7530 C5C4 <CJK>
+C5C5 96FB C5C5 <CJK>
+C5C6 514E C5C6 <CJK>
+C5C7 5410 C5C7 <CJK>
+C5C8 5835 C5C8 <CJK>
+C5C9 5857 C5C9 <CJK>
+C5CA 59AC C5CA <CJK>
+C5CB 5C60 C5CB <CJK>
+C5CC 5F92 C5CC <CJK>
+C5CD 6597 C5CD <CJK>
+C5CE 675C C5CE <CJK>
+C5CF 6E21 C5CF <CJK>
+C5D0 767B C5D0 <CJK>
+C5D1 83DF C5D1 <CJK>
+C5D2 8CED C5D2 <CJK>
+C5D3 9014 C5D3 <CJK>
+C5D4 90FD C5D4 <CJK>
+C5D5 934D C5D5 <CJK>
+C5D6 7825 C5D6 <CJK>
+C5D7 783A C5D7 <CJK>
+C5D8 52AA C5D8 <CJK>
+C5D9 5EA6 C5D9 <CJK>
+C5DA 571F C5DA <CJK>
+C5DB 5974 C5DB <CJK>
+C5DC 6012 C5DC <CJK>
+C5DD 5012 C5DD <CJK>
+C5DE 515A C5DE <CJK>
+C5DF 51AC C5DF <CJK>
+C5E0 51CD C5E0 <CJK>
+C5E1 5200 C5E1 <CJK>
+C5E2 5510 C5E2 <CJK>
+C5E3 5854 C5E3 <CJK>
+C5E4 5858 C5E4 <CJK>
+C5E5 5957 C5E5 <CJK>
+C5E6 5B95 C5E6 <CJK>
+C5E7 5CF6 C5E7 <CJK>
+C5E8 5D8B C5E8 <CJK>
+C5E9 60BC C5E9 <CJK>
+C5EA 6295 C5EA <CJK>
+C5EB 642D C5EB <CJK>
+C5EC 6771 C5EC <CJK>
+C5ED 6843 C5ED <CJK>
+C5EE 68BC C5EE <CJK>
+C5EF 68DF C5EF <CJK>
+C5F0 76D7 C5F0 <CJK>
+C5F1 6DD8 C5F1 <CJK>
+C5F2 6E6F C5F2 <CJK>
+C5F3 6D9B C5F3 <CJK>
+C5F4 706F C5F4 <CJK>
+C5F5 71C8 C5F5 <CJK>
+C5F6 5F53 C5F6 <CJK>
+C5F7 75D8 C5F7 <CJK>
+C5F8 7977 C5F8 <CJK>
+C5F9 7B49 C5F9 <CJK>
+C5FA 7B54 C5FA <CJK>
+C5FB 7B52 C5FB <CJK>
+C5FC 7CD6 C5FC <CJK>
+C5FD 7D71 C5FD <CJK>
+C5FE 5230 C5FE <CJK>
+C6A1 8463 C6A1 <CJK>
+C6A2 8569 C6A2 <CJK>
+C6A3 85E4 C6A3 <CJK>
+C6A4 8A0E C6A4 <CJK>
+C6A5 8B04 C6A5 <CJK>
+C6A6 8C46 C6A6 <CJK>
+C6A7 8E0F C6A7 <CJK>
+C6A8 9003 C6A8 <CJK>
+C6A9 900F C6A9 <CJK>
+C6AA 9419 C6AA <CJK>
+C6AB 9676 C6AB <CJK>
+C6AC 982D C6AC <CJK>
+C6AD 9A30 C6AD <CJK>
+C6AE 95D8 C6AE <CJK>
+C6AF 50CD C6AF <CJK>
+C6B0 52D5 C6B0 <CJK>
+C6B1 540C C6B1 <CJK>
+C6B2 5802 C6B2 <CJK>
+C6B3 5C0E C6B3 <CJK>
+C6B4 61A7 C6B4 <CJK>
+C6B5 649E C6B5 <CJK>
+C6B6 6D1E C6B6 <CJK>
+C6B7 77B3 C6B7 <CJK>
+C6B8 7AE5 C6B8 <CJK>
+C6B9 80F4 C6B9 <CJK>
+C6BA 8404 C6BA <CJK>
+C6BB 9053 C6BB <CJK>
+C6BC 9285 C6BC <CJK>
+C6BD 5CE0 C6BD <CJK>
+C6BE 9D07 C6BE <CJK>
+C6BF 533F C6BF <CJK>
+C6C0 5F97 C6C0 <CJK>
+C6C1 5FB3 C6C1 <CJK>
+C6C2 6D9C C6C2 <CJK>
+C6C3 7279 C6C3 <CJK>
+C6C4 7763 C6C4 <CJK>
+C6C5 79BF C6C5 <CJK>
+C6C6 7BE4 C6C6 <CJK>
+C6C7 6BD2 C6C7 <CJK>
+C6C8 72EC C6C8 <CJK>
+C6C9 8AAD C6C9 <CJK>
+C6CA 6803 C6CA <CJK>
+C6CB 6A61 C6CB <CJK>
+C6CC 51F8 C6CC <CJK>
+C6CD 7A81 C6CD <CJK>
+C6CE 6934 C6CE <CJK>
+C6CF 5C4A C6CF <CJK>
+C6D0 9CF6 C6D0 <CJK>
+C6D1 82EB C6D1 <CJK>
+C6D2 5BC5 C6D2 <CJK>
+C6D3 9149 C6D3 <CJK>
+C6D4 701E C6D4 <CJK>
+C6D5 5678 C6D5 <CJK>
+C6D6 5C6F C6D6 <CJK>
+C6D7 60C7 C6D7 <CJK>
+C6D8 6566 C6D8 <CJK>
+C6D9 6C8C C6D9 <CJK>
+C6DA 8C5A C6DA <CJK>
+C6DB 9041 C6DB <CJK>
+C6DC 9813 C6DC <CJK>
+C6DD 5451 C6DD <CJK>
+C6DE 66C7 C6DE <CJK>
+C6DF 920D C6DF <CJK>
+C6E0 5948 C6E0 <CJK>
+C6E1 90A3 C6E1 <CJK>
+C6E2 5185 C6E2 <CJK>
+C6E3 4E4D C6E3 <CJK>
+C6E4 51EA C6E4 <CJK>
+C6E5 8599 C6E5 <CJK>
+C6E6 8B0E C6E6 <CJK>
+C6E7 7058 C6E7 <CJK>
+C6E8 637A C6E8 <CJK>
+C6E9 934B C6E9 <CJK>
+C6EA 6962 C6EA <CJK>
+C6EB 99B4 C6EB <CJK>
+C6EC 7E04 C6EC <CJK>
+C6ED 7577 C6ED <CJK>
+C6EE 5357 C6EE <CJK>
+C6EF 6960 C6EF <CJK>
+C6F0 8EDF C6F0 <CJK>
+C6F1 96E3 C6F1 <CJK>
+C6F2 6C5D C6F2 <CJK>
+C6F3 4E8C C6F3 <CJK>
+C6F4 5C3C C6F4 <CJK>
+C6F5 5F10 C6F5 <CJK>
+C6F6 8FE9 C6F6 <CJK>
+C6F7 5302 C6F7 <CJK>
+C6F8 8CD1 C6F8 <CJK>
+C6F9 8089 C6F9 <CJK>
+C6FA 8679 C6FA <CJK>
+C6FB 5EFF C6FB <CJK>
+C6FC 65E5 C6FC <CJK>
+C6FD 4E73 C6FD <CJK>
+C6FE 5165 C6FE <CJK>
+C7A1 5982 C7A1 <CJK>
+C7A2 5C3F C7A2 <CJK>
+C7A3 97EE C7A3 <CJK>
+C7A4 4EFB C7A4 <CJK>
+C7A5 598A C7A5 <CJK>
+C7A6 5FCD C7A6 <CJK>
+C7A7 8A8D C7A7 <CJK>
+C7A8 6FE1 C7A8 <CJK>
+C7A9 79B0 C7A9 <CJK>
+C7AA 7962 C7AA <CJK>
+C7AB 5BE7 C7AB <CJK>
+C7AC 8471 C7AC <CJK>
+C7AD 732B C7AD <CJK>
+C7AE 71B1 C7AE <CJK>
+C7AF 5E74 C7AF <CJK>
+C7B0 5FF5 C7B0 <CJK>
+C7B1 637B C7B1 <CJK>
+C7B2 649A C7B2 <CJK>
+C7B3 71C3 C7B3 <CJK>
+C7B4 7C98 C7B4 <CJK>
+C7B5 4E43 C7B5 <CJK>
+C7B6 5EFC C7B6 <CJK>
+C7B7 4E4B C7B7 <CJK>
+C7B8 57DC C7B8 <CJK>
+C7B9 56A2 C7B9 <CJK>
+C7BA 60A9 C7BA <CJK>
+C7BB 6FC3 C7BB <CJK>
+C7BC 7D0D C7BC <CJK>
+C7BD 80FD C7BD <CJK>
+C7BE 8133 C7BE <CJK>
+C7BF 81BF C7BF <CJK>
+C7C0 8FB2 C7C0 <CJK>
+C7C1 8997 C7C1 <CJK>
+C7C2 86A4 C7C2 <CJK>
+C7C3 5DF4 C7C3 <CJK>
+C7C4 628A C7C4 <CJK>
+C7C5 64AD C7C5 <CJK>
+C7C6 8987 C7C6 <CJK>
+C7C7 6777 C7C7 <CJK>
+C7C8 6CE2 C7C8 <CJK>
+C7C9 6D3E C7C9 <CJK>
+C7CA 7436 C7CA <CJK>
+C7CB 7834 C7CB <CJK>
+C7CC 5A46 C7CC <CJK>
+C7CD 7F75 C7CD <CJK>
+C7CE 82AD C7CE <CJK>
+C7CF 99AC C7CF <CJK>
+C7D0 4FF3 C7D0 <CJK>
+C7D1 5EC3 C7D1 <CJK>
+C7D2 62DD C7D2 <CJK>
+C7D3 6392 C7D3 <CJK>
+C7D4 6557 C7D4 <CJK>
+C7D5 676F C7D5 <CJK>
+C7D6 76C3 C7D6 <CJK>
+C7D7 724C C7D7 <CJK>
+C7D8 80CC C7D8 <CJK>
+C7D9 80BA C7D9 <CJK>
+C7DA 8F29 C7DA <CJK>
+C7DB 914D C7DB <CJK>
+C7DC 500D C7DC <CJK>
+C7DD 57F9 C7DD <CJK>
+C7DE 5A92 C7DE <CJK>
+C7DF 6885 C7DF <CJK>
+C7E0 6973 C7E0 <CJK>
+C7E1 7164 C7E1 <CJK>
+C7E2 72FD C7E2 <CJK>
+C7E3 8CB7 C7E3 <CJK>
+C7E4 58F2 C7E4 <CJK>
+C7E5 8CE0 C7E5 <CJK>
+C7E6 966A C7E6 <CJK>
+C7E7 9019 C7E7 <CJK>
+C7E8 877F C7E8 <CJK>
+C7E9 79E4 C7E9 <CJK>
+C7EA 77E7 C7EA <CJK>
+C7EB 8429 C7EB <CJK>
+C7EC 4F2F C7EC <CJK>
+C7ED 5265 C7ED <CJK>
+C7EE 535A C7EE <CJK>
+C7EF 62CD C7EF <CJK>
+C7F0 67CF C7F0 <CJK>
+C7F1 6CCA C7F1 <CJK>
+C7F2 767D C7F2 <CJK>
+C7F3 7B94 C7F3 <CJK>
+C7F4 7C95 C7F4 <CJK>
+C7F5 8236 C7F5 <CJK>
+C7F6 8584 C7F6 <CJK>
+C7F7 8FEB C7F7 <CJK>
+C7F8 66DD C7F8 <CJK>
+C7F9 6F20 C7F9 <CJK>
+C7FA 7206 C7FA <CJK>
+C7FB 7E1B C7FB <CJK>
+C7FC 83AB C7FC <CJK>
+C7FD 99C1 C7FD <CJK>
+C7FE 9EA6 C7FE <CJK>
+C8A1 51FD C8A1 <CJK>
+C8A2 7BB1 C8A2 <CJK>
+C8A3 7872 C8A3 <CJK>
+C8A4 7BB8 C8A4 <CJK>
+C8A5 8087 C8A5 <CJK>
+C8A6 7B48 C8A6 <CJK>
+C8A7 6AE8 C8A7 <CJK>
+C8A8 5E61 C8A8 <CJK>
+C8A9 808C C8A9 <CJK>
+C8AA 7551 C8AA <CJK>
+C8AB 7560 C8AB <CJK>
+C8AC 516B C8AC <CJK>
+C8AD 9262 C8AD <CJK>
+C8AE 6E8C C8AE <CJK>
+C8AF 767A C8AF <CJK>
+C8B0 9197 C8B0 <CJK>
+C8B1 9AEA C8B1 <CJK>
+C8B2 4F10 C8B2 <CJK>
+C8B3 7F70 C8B3 <CJK>
+C8B4 629C C8B4 <CJK>
+C8B5 7B4F C8B5 <CJK>
+C8B6 95A5 C8B6 <CJK>
+C8B7 9CE9 C8B7 <CJK>
+C8B8 567A C8B8 <CJK>
+C8B9 5859 C8B9 <CJK>
+C8BA 86E4 C8BA <CJK>
+C8BB 96BC C8BB <CJK>
+C8BC 4F34 C8BC <CJK>
+C8BD 5224 C8BD <CJK>
+C8BE 534A C8BE <CJK>
+C8BF 53CD C8BF <CJK>
+C8C0 53DB C8C0 <CJK>
+C8C1 5E06 C8C1 <CJK>
+C8C2 642C C8C2 <CJK>
+C8C3 6591 C8C3 <CJK>
+C8C4 677F C8C4 <CJK>
+C8C5 6C3E C8C5 <CJK>
+C8C6 6C4E C8C6 <CJK>
+C8C7 7248 C8C7 <CJK>
+C8C8 72AF C8C8 <CJK>
+C8C9 73ED C8C9 <CJK>
+C8CA 7554 C8CA <CJK>
+C8CB 7E41 C8CB <CJK>
+C8CC 822C C8CC <CJK>
+C8CD 85E9 C8CD <CJK>
+C8CE 8CA9 C8CE <CJK>
+C8CF 7BC4 C8CF <CJK>
+C8D0 91C6 C8D0 <CJK>
+C8D1 7169 C8D1 <CJK>
+C8D2 9812 C8D2 <CJK>
+C8D3 98EF C8D3 <CJK>
+C8D4 633D C8D4 <CJK>
+C8D5 6669 C8D5 <CJK>
+C8D6 756A C8D6 <CJK>
+C8D7 76E4 C8D7 <CJK>
+C8D8 78D0 C8D8 <CJK>
+C8D9 8543 C8D9 <CJK>
+C8DA 86EE C8DA <CJK>
+C8DB 532A C8DB <CJK>
+C8DC 5351 C8DC <CJK>
+C8DD 5426 C8DD <CJK>
+C8DE 5983 C8DE <CJK>
+C8DF 5E87 C8DF <CJK>
+C8E0 5F7C C8E0 <CJK>
+C8E1 60B2 C8E1 <CJK>
+C8E2 6249 C8E2 <CJK>
+C8E3 6279 C8E3 <CJK>
+C8E4 62AB C8E4 <CJK>
+C8E5 6590 C8E5 <CJK>
+C8E6 6BD4 C8E6 <CJK>
+C8E7 6CCC C8E7 <CJK>
+C8E8 75B2 C8E8 <CJK>
+C8E9 76AE C8E9 <CJK>
+C8EA 7891 C8EA <CJK>
+C8EB 79D8 C8EB <CJK>
+C8EC 7DCB C8EC <CJK>
+C8ED 7F77 C8ED <CJK>
+C8EE 80A5 C8EE <CJK>
+C8EF 88AB C8EF <CJK>
+C8F0 8AB9 C8F0 <CJK>
+C8F1 8CBB C8F1 <CJK>
+C8F2 907F C8F2 <CJK>
+C8F3 975E C8F3 <CJK>
+C8F4 98DB C8F4 <CJK>
+C8F5 6A0B C8F5 <CJK>
+C8F6 7C38 C8F6 <CJK>
+C8F7 5099 C8F7 <CJK>
+C8F8 5C3E C8F8 <CJK>
+C8F9 5FAE C8F9 <CJK>
+C8FA 6787 C8FA <CJK>
+C8FB 6BD8 C8FB <CJK>
+C8FC 7435 C8FC <CJK>
+C8FD 7709 C8FD <CJK>
+C8FE 7F8E C8FE <CJK>
+C9A1 9F3B C9A1 <CJK>
+C9A2 67CA C9A2 <CJK>
+C9A3 7A17 C9A3 <CJK>
+C9A4 5339 C9A4 <CJK>
+C9A5 758B C9A5 <CJK>
+C9A6 9AED C9A6 <CJK>
+C9A7 5F66 C9A7 <CJK>
+C9A8 819D C9A8 <CJK>
+C9A9 83F1 C9A9 <CJK>
+C9AA 8098 C9AA <CJK>
+C9AB 5F3C C9AB <CJK>
+C9AC 5FC5 C9AC <CJK>
+C9AD 7562 C9AD <CJK>
+C9AE 7B46 C9AE <CJK>
+C9AF 903C C9AF <CJK>
+C9B0 6867 C9B0 <CJK>
+C9B1 59EB C9B1 <CJK>
+C9B2 5A9B C9B2 <CJK>
+C9B3 7D10 C9B3 <CJK>
+C9B4 767E C9B4 <CJK>
+C9B5 8B2C C9B5 <CJK>
+C9B6 4FF5 C9B6 <CJK>
+C9B7 5F6A C9B7 <CJK>
+C9B8 6A19 C9B8 <CJK>
+C9B9 6C37 C9B9 <CJK>
+C9BA 6F02 C9BA <CJK>
+C9BB 74E2 C9BB <CJK>
+C9BC 7968 C9BC <CJK>
+C9BD 8868 C9BD <CJK>
+C9BE 8A55 C9BE <CJK>
+C9BF 8C79 C9BF <CJK>
+C9C0 5EDF C9C0 <CJK>
+C9C1 63CF C9C1 <CJK>
+C9C2 75C5 C9C2 <CJK>
+C9C3 79D2 C9C3 <CJK>
+C9C4 82D7 C9C4 <CJK>
+C9C5 9328 C9C5 <CJK>
+C9C6 92F2 C9C6 <CJK>
+C9C7 849C C9C7 <CJK>
+C9C8 86ED C9C8 <CJK>
+C9C9 9C2D C9C9 <CJK>
+C9CA 54C1 C9CA <CJK>
+C9CB 5F6C C9CB <CJK>
+C9CC 658C C9CC <CJK>
+C9CD 6D5C C9CD <CJK>
+C9CE 7015 C9CE <CJK>
+C9CF 8CA7 C9CF <CJK>
+C9D0 8CD3 C9D0 <CJK>
+C9D1 983B C9D1 <CJK>
+C9D2 654F C9D2 <CJK>
+C9D3 74F6 C9D3 <CJK>
+C9D4 4E0D C9D4 <CJK>
+C9D5 4ED8 C9D5 <CJK>
+C9D6 57E0 C9D6 <CJK>
+C9D7 592B C9D7 <CJK>
+C9D8 5A66 C9D8 <CJK>
+C9D9 5BCC C9D9 <CJK>
+C9DA 51A8 C9DA <CJK>
+C9DB 5E03 C9DB <CJK>
+C9DC 5E9C C9DC <CJK>
+C9DD 6016 C9DD <CJK>
+C9DE 6276 C9DE <CJK>
+C9DF 6577 C9DF <CJK>
+C9E0 65A7 C9E0 <CJK>
+C9E1 666E C9E1 <CJK>
+C9E2 6D6E C9E2 <CJK>
+C9E3 7236 C9E3 <CJK>
+C9E4 7B26 C9E4 <CJK>
+C9E5 8150 C9E5 <CJK>
+C9E6 819A C9E6 <CJK>
+C9E7 8299 C9E7 <CJK>
+C9E8 8B5C C9E8 <CJK>
+C9E9 8CA0 C9E9 <CJK>
+C9EA 8CE6 C9EA <CJK>
+C9EB 8D74 C9EB <CJK>
+C9EC 961C C9EC <CJK>
+C9ED 9644 C9ED <CJK>
+C9EE 4FAE C9EE <CJK>
+C9EF 64AB C9EF <CJK>
+C9F0 6B66 C9F0 <CJK>
+C9F1 821E C9F1 <CJK>
+C9F2 8461 C9F2 <CJK>
+C9F3 856A C9F3 <CJK>
+C9F4 90E8 C9F4 <CJK>
+C9F5 5C01 C9F5 <CJK>
+C9F6 6953 C9F6 <CJK>
+C9F7 98A8 C9F7 <CJK>
+C9F8 847A C9F8 <CJK>
+C9F9 8557 C9F9 <CJK>
+C9FA 4F0F C9FA <CJK>
+C9FB 526F C9FB <CJK>
+C9FC 5FA9 C9FC <CJK>
+C9FD 5E45 C9FD <CJK>
+C9FE 670D C9FE <CJK>
+CAA1 798F CAA1 <CJK>
+CAA2 8179 CAA2 <CJK>
+CAA3 8907 CAA3 <CJK>
+CAA4 8986 CAA4 <CJK>
+CAA5 6DF5 CAA5 <CJK>
+CAA6 5F17 CAA6 <CJK>
+CAA7 6255 CAA7 <CJK>
+CAA8 6CB8 CAA8 <CJK>
+CAA9 4ECF CAA9 <CJK>
+CAAA 7269 CAAA <CJK>
+CAAB 9B92 CAAB <CJK>
+CAAC 5206 CAAC <CJK>
+CAAD 543B CAAD <CJK>
+CAAE 5674 CAAE <CJK>
+CAAF 58B3 CAAF <CJK>
+CAB0 61A4 CAB0 <CJK>
+CAB1 626E CAB1 <CJK>
+CAB2 711A CAB2 <CJK>
+CAB3 596E CAB3 <CJK>
+CAB4 7C89 CAB4 <CJK>
+CAB5 7CDE CAB5 <CJK>
+CAB6 7D1B CAB6 <CJK>
+CAB7 96F0 CAB7 <CJK>
+CAB8 6587 CAB8 <CJK>
+CAB9 805E CAB9 <CJK>
+CABA 4E19 CABA <CJK>
+CABB 4F75 CABB <CJK>
+CABC 5175 CABC <CJK>
+CABD 5840 CABD <CJK>
+CABE 5E63 CABE <CJK>
+CABF 5E73 CABF <CJK>
+CAC0 5F0A CAC0 <CJK>
+CAC1 67C4 CAC1 <CJK>
+CAC2 4E26 CAC2 <CJK>
+CAC3 853D CAC3 <CJK>
+CAC4 9589 CAC4 <CJK>
+CAC5 965B CAC5 <CJK>
+CAC6 7C73 CAC6 <CJK>
+CAC7 9801 CAC7 <CJK>
+CAC8 50FB CAC8 <CJK>
+CAC9 58C1 CAC9 <CJK>
+CACA 7656 CACA <CJK>
+CACB 78A7 CACB <CJK>
+CACC 5225 CACC <CJK>
+CACD 77A5 CACD <CJK>
+CACE 8511 CACE <CJK>
+CACF 7B86 CACF <CJK>
+CAD0 504F CAD0 <CJK>
+CAD1 5909 CAD1 <CJK>
+CAD2 7247 CAD2 <CJK>
+CAD3 7BC7 CAD3 <CJK>
+CAD4 7DE8 CAD4 <CJK>
+CAD5 8FBA CAD5 <CJK>
+CAD6 8FD4 CAD6 <CJK>
+CAD7 904D CAD7 <CJK>
+CAD8 4FBF CAD8 <CJK>
+CAD9 52C9 CAD9 <CJK>
+CADA 5A29 CADA <CJK>
+CADB 5F01 CADB <CJK>
+CADC 97AD CADC <CJK>
+CADD 4FDD CADD <CJK>
+CADE 8217 CADE <CJK>
+CADF 92EA CADF <CJK>
+CAE0 5703 CAE0 <CJK>
+CAE1 6355 CAE1 <CJK>
+CAE2 6B69 CAE2 <CJK>
+CAE3 752B CAE3 <CJK>
+CAE4 88DC CAE4 <CJK>
+CAE5 8F14 CAE5 <CJK>
+CAE6 7A42 CAE6 <CJK>
+CAE7 52DF CAE7 <CJK>
+CAE8 5893 CAE8 <CJK>
+CAE9 6155 CAE9 <CJK>
+CAEA 620A CAEA <CJK>
+CAEB 66AE CAEB <CJK>
+CAEC 6BCD CAEC <CJK>
+CAED 7C3F CAED <CJK>
+CAEE 83E9 CAEE <CJK>
+CAEF 5023 CAEF <CJK>
+CAF0 4FF8 CAF0 <CJK>
+CAF1 5305 CAF1 <CJK>
+CAF2 5446 CAF2 <CJK>
+CAF3 5831 CAF3 <CJK>
+CAF4 5949 CAF4 <CJK>
+CAF5 5B9D CAF5 <CJK>
+CAF6 5CF0 CAF6 <CJK>
+CAF7 5CEF CAF7 <CJK>
+CAF8 5D29 CAF8 <CJK>
+CAF9 5E96 CAF9 <CJK>
+CAFA 62B1 CAFA <CJK>
+CAFB 6367 CAFB <CJK>
+CAFC 653E CAFC <CJK>
+CAFD 65B9 CAFD <CJK>
+CAFE 670B CAFE <CJK>
+CBA1 6CD5 CBA1 <CJK>
+CBA2 6CE1 CBA2 <CJK>
+CBA3 70F9 CBA3 <CJK>
+CBA4 7832 CBA4 <CJK>
+CBA5 7E2B CBA5 <CJK>
+CBA6 80DE CBA6 <CJK>
+CBA7 82B3 CBA7 <CJK>
+CBA8 840C CBA8 <CJK>
+CBA9 84EC CBA9 <CJK>
+CBAA 8702 CBAA <CJK>
+CBAB 8912 CBAB <CJK>
+CBAC 8A2A CBAC <CJK>
+CBAD 8C4A CBAD <CJK>
+CBAE 90A6 CBAE <CJK>
+CBAF 92D2 CBAF <CJK>
+CBB0 98FD CBB0 <CJK>
+CBB1 9CF3 CBB1 <CJK>
+CBB2 9D6C CBB2 <CJK>
+CBB3 4E4F CBB3 <CJK>
+CBB4 4EA1 CBB4 <CJK>
+CBB5 508D CBB5 <CJK>
+CBB6 5256 CBB6 <CJK>
+CBB7 574A CBB7 <CJK>
+CBB8 59A8 CBB8 <CJK>
+CBB9 5E3D CBB9 <CJK>
+CBBA 5FD8 CBBA <CJK>
+CBBB 5FD9 CBBB <CJK>
+CBBC 623F CBBC <CJK>
+CBBD 66B4 CBBD <CJK>
+CBBE 671B CBBE <CJK>
+CBBF 67D0 CBBF <CJK>
+CBC0 68D2 CBC0 <CJK>
+CBC1 5192 CBC1 <CJK>
+CBC2 7D21 CBC2 <CJK>
+CBC3 80AA CBC3 <CJK>
+CBC4 81A8 CBC4 <CJK>
+CBC5 8B00 CBC5 <CJK>
+CBC6 8C8C CBC6 <CJK>
+CBC7 8CBF CBC7 <CJK>
+CBC8 927E CBC8 <CJK>
+CBC9 9632 CBC9 <CJK>
+CBCA 5420 CBCA <CJK>
+CBCB 982C CBCB <CJK>
+CBCC 5317 CBCC <CJK>
+CBCD 50D5 CBCD <CJK>
+CBCE 535C CBCE <CJK>
+CBCF 58A8 CBCF <CJK>
+CBD0 64B2 CBD0 <CJK>
+CBD1 6734 CBD1 <CJK>
+CBD2 7267 CBD2 <CJK>
+CBD3 7766 CBD3 <CJK>
+CBD4 7A46 CBD4 <CJK>
+CBD5 91E6 CBD5 <CJK>
+CBD6 52C3 CBD6 <CJK>
+CBD7 6CA1 CBD7 <CJK>
+CBD8 6B86 CBD8 <CJK>
+CBD9 5800 CBD9 <CJK>
+CBDA 5E4C CBDA <CJK>
+CBDB 5954 CBDB <CJK>
+CBDC 672C CBDC <CJK>
+CBDD 7FFB CBDD <CJK>
+CBDE 51E1 CBDE <CJK>
+CBDF 76C6 CBDF <CJK>
+CBE0 6469 CBE0 <CJK>
+CBE1 78E8 CBE1 <CJK>
+CBE2 9B54 CBE2 <CJK>
+CBE3 9EBB CBE3 <CJK>
+CBE4 57CB CBE4 <CJK>
+CBE5 59B9 CBE5 <CJK>
+CBE6 6627 CBE6 <CJK>
+CBE7 679A CBE7 <CJK>
+CBE8 6BCE CBE8 <CJK>
+CBE9 54E9 CBE9 <CJK>
+CBEA 69D9 CBEA <CJK>
+CBEB 5E55 CBEB <CJK>
+CBEC 819C CBEC <CJK>
+CBED 6795 CBED <CJK>
+CBEE 9BAA CBEE <CJK>
+CBEF 67FE CBEF <CJK>
+CBF0 9C52 CBF0 <CJK>
+CBF1 685D CBF1 <CJK>
+CBF2 4EA6 CBF2 <CJK>
+CBF3 4FE3 CBF3 <CJK>
+CBF4 53C8 CBF4 <CJK>
+CBF5 62B9 CBF5 <CJK>
+CBF6 672B CBF6 <CJK>
+CBF7 6CAB CBF7 <CJK>
+CBF8 8FC4 CBF8 <CJK>
+CBF9 4FAD CBF9 <CJK>
+CBFA 7E6D CBFA <CJK>
+CBFB 9EBF CBFB <CJK>
+CBFC 4E07 CBFC <CJK>
+CBFD 6162 CBFD <CJK>
+CBFE 6E80 CBFE <CJK>
+CCA1 6F2B CCA1 <CJK>
+CCA2 8513 CCA2 <CJK>
+CCA3 5473 CCA3 <CJK>
+CCA4 672A CCA4 <CJK>
+CCA5 9B45 CCA5 <CJK>
+CCA6 5DF3 CCA6 <CJK>
+CCA7 7B95 CCA7 <CJK>
+CCA8 5CAC CCA8 <CJK>
+CCA9 5BC6 CCA9 <CJK>
+CCAA 871C CCAA <CJK>
+CCAB 6E4A CCAB <CJK>
+CCAC 84D1 CCAC <CJK>
+CCAD 7A14 CCAD <CJK>
+CCAE 8108 CCAE <CJK>
+CCAF 5999 CCAF <CJK>
+CCB0 7C8D CCB0 <CJK>
+CCB1 6C11 CCB1 <CJK>
+CCB2 7720 CCB2 <CJK>
+CCB3 52D9 CCB3 <CJK>
+CCB4 5922 CCB4 <CJK>
+CCB5 7121 CCB5 <CJK>
+CCB6 725F CCB6 <CJK>
+CCB7 77DB CCB7 <CJK>
+CCB8 9727 CCB8 <CJK>
+CCB9 9D61 CCB9 <CJK>
+CCBA 690B CCBA <CJK>
+CCBB 5A7F CCBB <CJK>
+CCBC 5A18 CCBC <CJK>
+CCBD 51A5 CCBD <CJK>
+CCBE 540D CCBE <CJK>
+CCBF 547D CCBF <CJK>
+CCC0 660E CCC0 <CJK>
+CCC1 76DF CCC1 <CJK>
+CCC2 8FF7 CCC2 <CJK>
+CCC3 9298 CCC3 <CJK>
+CCC4 9CF4 CCC4 <CJK>
+CCC5 59EA CCC5 <CJK>
+CCC6 725D CCC6 <CJK>
+CCC7 6EC5 CCC7 <CJK>
+CCC8 514D CCC8 <CJK>
+CCC9 68C9 CCC9 <CJK>
+CCCA 7DBF CCCA <CJK>
+CCCB 7DEC CCCB <CJK>
+CCCC 9762 CCCC <CJK>
+CCCD 9EBA CCCD <CJK>
+CCCE 6478 CCCE <CJK>
+CCCF 6A21 CCCF <CJK>
+CCD0 8302 CCD0 <CJK>
+CCD1 5984 CCD1 <CJK>
+CCD2 5B5F CCD2 <CJK>
+CCD3 6BDB CCD3 <CJK>
+CCD4 731B CCD4 <CJK>
+CCD5 76F2 CCD5 <CJK>
+CCD6 7DB2 CCD6 <CJK>
+CCD7 8017 CCD7 <CJK>
+CCD8 8499 CCD8 <CJK>
+CCD9 5132 CCD9 <CJK>
+CCDA 6728 CCDA <CJK>
+CCDB 9ED9 CCDB <CJK>
+CCDC 76EE CCDC <CJK>
+CCDD 6762 CCDD <CJK>
+CCDE 52FF CCDE <CJK>
+CCDF 9905 CCDF <CJK>
+CCE0 5C24 CCE0 <CJK>
+CCE1 623B CCE1 <CJK>
+CCE2 7C7E CCE2 <CJK>
+CCE3 8CB0 CCE3 <CJK>
+CCE4 554F CCE4 <CJK>
+CCE5 60B6 CCE5 <CJK>
+CCE6 7D0B CCE6 <CJK>
+CCE7 9580 CCE7 <CJK>
+CCE8 5301 CCE8 <CJK>
+CCE9 4E5F CCE9 <CJK>
+CCEA 51B6 CCEA <CJK>
+CCEB 591C CCEB <CJK>
+CCEC 723A CCEC <CJK>
+CCED 8036 CCED <CJK>
+CCEE 91CE CCEE <CJK>
+CCEF 5F25 CCEF <CJK>
+CCF0 77E2 CCF0 <CJK>
+CCF1 5384 CCF1 <CJK>
+CCF2 5F79 CCF2 <CJK>
+CCF3 7D04 CCF3 <CJK>
+CCF4 85AC CCF4 <CJK>
+CCF5 8A33 CCF5 <CJK>
+CCF6 8E8D CCF6 <CJK>
+CCF7 9756 CCF7 <CJK>
+CCF8 67F3 CCF8 <CJK>
+CCF9 85AE CCF9 <CJK>
+CCFA 9453 CCFA <CJK>
+CCFB 6109 CCFB <CJK>
+CCFC 6108 CCFC <CJK>
+CCFD 6CB9 CCFD <CJK>
+CCFE 7652 CCFE <CJK>
+CDA1 8AED CDA1 <CJK>
+CDA2 8F38 CDA2 <CJK>
+CDA3 552F CDA3 <CJK>
+CDA4 4F51 CDA4 <CJK>
+CDA5 512A CDA5 <CJK>
+CDA6 52C7 CDA6 <CJK>
+CDA7 53CB CDA7 <CJK>
+CDA8 5BA5 CDA8 <CJK>
+CDA9 5E7D CDA9 <CJK>
+CDAA 60A0 CDAA <CJK>
+CDAB 6182 CDAB <CJK>
+CDAC 63D6 CDAC <CJK>
+CDAD 6709 CDAD <CJK>
+CDAE 67DA CDAE <CJK>
+CDAF 6E67 CDAF <CJK>
+CDB0 6D8C CDB0 <CJK>
+CDB1 7336 CDB1 <CJK>
+CDB2 7337 CDB2 <CJK>
+CDB3 7531 CDB3 <CJK>
+CDB4 7950 CDB4 <CJK>
+CDB5 88D5 CDB5 <CJK>
+CDB6 8A98 CDB6 <CJK>
+CDB7 904A CDB7 <CJK>
+CDB8 9091 CDB8 <CJK>
+CDB9 90F5 CDB9 <CJK>
+CDBA 96C4 CDBA <CJK>
+CDBB 878D CDBB <CJK>
+CDBC 5915 CDBC <CJK>
+CDBD 4E88 CDBD <CJK>
+CDBE 4F59 CDBE <CJK>
+CDBF 4E0E CDBF <CJK>
+CDC0 8A89 CDC0 <CJK>
+CDC1 8F3F CDC1 <CJK>
+CDC2 9810 CDC2 <CJK>
+CDC3 50AD CDC3 <CJK>
+CDC4 5E7C CDC4 <CJK>
+CDC5 5996 CDC5 <CJK>
+CDC6 5BB9 CDC6 <CJK>
+CDC7 5EB8 CDC7 <CJK>
+CDC8 63DA CDC8 <CJK>
+CDC9 63FA CDC9 <CJK>
+CDCA 64C1 CDCA <CJK>
+CDCB 66DC CDCB <CJK>
+CDCC 694A CDCC <CJK>
+CDCD 69D8 CDCD <CJK>
+CDCE 6D0B CDCE <CJK>
+CDCF 6EB6 CDCF <CJK>
+CDD0 7194 CDD0 <CJK>
+CDD1 7528 CDD1 <CJK>
+CDD2 7AAF CDD2 <CJK>
+CDD3 7F8A CDD3 <CJK>
+CDD4 8000 CDD4 <CJK>
+CDD5 8449 CDD5 <CJK>
+CDD6 84C9 CDD6 <CJK>
+CDD7 8981 CDD7 <CJK>
+CDD8 8B21 CDD8 <CJK>
+CDD9 8E0A CDD9 <CJK>
+CDDA 9065 CDDA <CJK>
+CDDB 967D CDDB <CJK>
+CDDC 990A CDDC <CJK>
+CDDD 617E CDDD <CJK>
+CDDE 6291 CDDE <CJK>
+CDDF 6B32 CDDF <CJK>
+CDE0 6C83 CDE0 <CJK>
+CDE1 6D74 CDE1 <CJK>
+CDE2 7FCC CDE2 <CJK>
+CDE3 7FFC CDE3 <CJK>
+CDE4 6DC0 CDE4 <CJK>
+CDE5 7F85 CDE5 <CJK>
+CDE6 87BA CDE6 <CJK>
+CDE7 88F8 CDE7 <CJK>
+CDE8 6765 CDE8 <CJK>
+CDE9 83B1 CDE9 <CJK>
+CDEA 983C CDEA <CJK>
+CDEB 96F7 CDEB <CJK>
+CDEC 6D1B CDEC <CJK>
+CDED 7D61 CDED <CJK>
+CDEE 843D CDEE <CJK>
+CDEF 916A CDEF <CJK>
+CDF0 4E71 CDF0 <CJK>
+CDF1 5375 CDF1 <CJK>
+CDF2 5D50 CDF2 <CJK>
+CDF3 6B04 CDF3 <CJK>
+CDF4 6FEB CDF4 <CJK>
+CDF5 85CD CDF5 <CJK>
+CDF6 862D CDF6 <CJK>
+CDF7 89A7 CDF7 <CJK>
+CDF8 5229 CDF8 <CJK>
+CDF9 540F CDF9 <CJK>
+CDFA 5C65 CDFA <CJK>
+CDFB 674E CDFB <CJK>
+CDFC 68A8 CDFC <CJK>
+CDFD 7406 CDFD <CJK>
+CDFE 7483 CDFE <CJK>
+CEA1 75E2 CEA1 <CJK>
+CEA2 88CF CEA2 <CJK>
+CEA3 88E1 CEA3 <CJK>
+CEA4 91CC CEA4 <CJK>
+CEA5 96E2 CEA5 <CJK>
+CEA6 9678 CEA6 <CJK>
+CEA7 5F8B CEA7 <CJK>
+CEA8 7387 CEA8 <CJK>
+CEA9 7ACB CEA9 <CJK>
+CEAA 844E CEAA <CJK>
+CEAB 63A0 CEAB <CJK>
+CEAC 7565 CEAC <CJK>
+CEAD 5289 CEAD <CJK>
+CEAE 6D41 CEAE <CJK>
+CEAF 6E9C CEAF <CJK>
+CEB0 7409 CEB0 <CJK>
+CEB1 7559 CEB1 <CJK>
+CEB2 786B CEB2 <CJK>
+CEB3 7C92 CEB3 <CJK>
+CEB4 9686 CEB4 <CJK>
+CEB5 7ADC CEB5 <CJK>
+CEB6 9F8D CEB6 <CJK>
+CEB7 4FB6 CEB7 <CJK>
+CEB8 616E CEB8 <CJK>
+CEB9 65C5 CEB9 <CJK>
+CEBA 865C CEBA <CJK>
+CEBB 4E86 CEBB <CJK>
+CEBC 4EAE CEBC <CJK>
+CEBD 50DA CEBD <CJK>
+CEBE 4E21 CEBE <CJK>
+CEBF 51CC CEBF <CJK>
+CEC0 5BEE CEC0 <CJK>
+CEC1 6599 CEC1 <CJK>
+CEC2 6881 CEC2 <CJK>
+CEC3 6DBC CEC3 <CJK>
+CEC4 731F CEC4 <CJK>
+CEC5 7642 CEC5 <CJK>
+CEC6 77AD CEC6 <CJK>
+CEC7 7A1C CEC7 <CJK>
+CEC8 7CE7 CEC8 <CJK>
+CEC9 826F CEC9 <CJK>
+CECA 8AD2 CECA <CJK>
+CECB 907C CECB <CJK>
+CECC 91CF CECC <CJK>
+CECD 9675 CECD <CJK>
+CECE 9818 CECE <CJK>
+CECF 529B CECF <CJK>
+CED0 7DD1 CED0 <CJK>
+CED1 502B CED1 <CJK>
+CED2 5398 CED2 <CJK>
+CED3 6797 CED3 <CJK>
+CED4 6DCB CED4 <CJK>
+CED5 71D0 CED5 <CJK>
+CED6 7433 CED6 <CJK>
+CED7 81E8 CED7 <CJK>
+CED8 8F2A CED8 <CJK>
+CED9 96A3 CED9 <CJK>
+CEDA 9C57 CEDA <CJK>
+CEDB 9E9F CEDB <CJK>
+CEDC 7460 CEDC <CJK>
+CEDD 5841 CEDD <CJK>
+CEDE 6D99 CEDE <CJK>
+CEDF 7D2F CEDF <CJK>
+CEE0 985E CEE0 <CJK>
+CEE1 4EE4 CEE1 <CJK>
+CEE2 4F36 CEE2 <CJK>
+CEE3 4F8B CEE3 <CJK>
+CEE4 51B7 CEE4 <CJK>
+CEE5 52B1 CEE5 <CJK>
+CEE6 5DBA CEE6 <CJK>
+CEE7 601C CEE7 <CJK>
+CEE8 73B2 CEE8 <CJK>
+CEE9 793C CEE9 <CJK>
+CEEA 82D3 CEEA <CJK>
+CEEB 9234 CEEB <CJK>
+CEEC 96B7 CEEC <CJK>
+CEED 96F6 CEED <CJK>
+CEEE 970A CEEE <CJK>
+CEEF 9E97 CEEF <CJK>
+CEF0 9F62 CEF0 <CJK>
+CEF1 66A6 CEF1 <CJK>
+CEF2 6B74 CEF2 <CJK>
+CEF3 5217 CEF3 <CJK>
+CEF4 52A3 CEF4 <CJK>
+CEF5 70C8 CEF5 <CJK>
+CEF6 88C2 CEF6 <CJK>
+CEF7 5EC9 CEF7 <CJK>
+CEF8 604B CEF8 <CJK>
+CEF9 6190 CEF9 <CJK>
+CEFA 6F23 CEFA <CJK>
+CEFB 7149 CEFB <CJK>
+CEFC 7C3E CEFC <CJK>
+CEFD 7DF4 CEFD <CJK>
+CEFE 806F CEFE <CJK>
+CFA1 84EE CFA1 U+84EE <CJK>
+CFA2 9023 CFA2 U+9023 <CJK>
+CFA3 932C CFA3 U+932C <CJK>
+CFA4 5442 CFA4 U+5442 <CJK>
+CFA5 9B6F CFA5 U+9B6F <CJK>
+CFA6 6AD3 CFA6 U+6AD3 <CJK>
+CFA7 7089 CFA7 U+7089 <CJK>
+CFA8 8CC2 CFA8 U+8CC2 <CJK>
+CFA9 8DEF CFA9 U+8DEF <CJK>
+CFAA 9732 CFAA U+9732 <CJK>
+CFAB 52B4 CFAB U+52B4 <CJK>
+CFAC 5A41 CFAC U+5A41 <CJK>
+CFAD 5ECA CFAD U+5ECA <CJK>
+CFAE 5F04 CFAE U+5F04 <CJK>
+CFAF 6717 CFAF U+6717 <CJK>
+CFB0 697C CFB0 U+697C <CJK>
+CFB1 6994 CFB1 U+6994 <CJK>
+CFB2 6D6A CFB2 U+6D6A <CJK>
+CFB3 6F0F CFB3 U+6F0F <CJK>
+CFB4 7262 CFB4 U+7262 <CJK>
+CFB5 72FC CFB5 U+72FC <CJK>
+CFB6 7BED CFB6 U+7BED <CJK>
+CFB7 8001 CFB7 U+8001 <CJK>
+CFB8 807E CFB8 U+807E <CJK>
+CFB9 874B CFB9 U+874B <CJK>
+CFBA 90CE CFBA U+90CE <CJK>
+CFBB 516D CFBB U+516D <CJK>
+CFBC 9E93 CFBC U+9E93 <CJK>
+CFBD 7984 CFBD U+7984 <CJK>
+CFBE 808B CFBE U+808B <CJK>
+CFBF 9332 CFBF U+9332 <CJK>
+CFC0 8AD6 CFC0 U+8AD6 <CJK>
+CFC1 502D CFC1 U+502D <CJK>
+CFC2 548C CFC2 U+548C <CJK>
+CFC3 8A71 CFC3 U+8A71 <CJK>
+CFC4 6B6A CFC4 U+6B6A <CJK>
+CFC5 8CC4 CFC5 U+8CC4 <CJK>
+CFC6 8107 CFC6 U+8107 <CJK>
+CFC7 60D1 CFC7 U+60D1 <CJK>
+CFC8 67A0 CFC8 U+67A0 <CJK>
+CFC9 9DF2 CFC9 U+9DF2 <CJK>
+CFCA 4E99 CFCA U+4E99 <CJK>
+CFCB 4E98 CFCB U+4E98 <CJK>
+CFCC 9C10 CFCC U+9C10 <CJK>
+CFCD 8A6B CFCD U+8A6B <CJK>
+CFCE 85C1 CFCE U+85C1 <CJK>
+CFCF 8568 CFCF U+8568 <CJK>
+CFD0 6900 CFD0 U+6900 <CJK>
+CFD1 6E7E CFD1 U+6E7E <CJK>
+CFD2 7897 CFD2 U+7897 <CJK>
+CFD3 8155 CFD3 U+8155 <CJK>
+D0A1 5F0C D0A1 <CJK>
+D0A2 4E10 D0A2 <CJK>
+D0A3 4E15 D0A3 <CJK>
+D0A4 4E2A D0A4 <CJK>
+D0A5 4E31 D0A5 <CJK>
+D0A6 4E36 D0A6 <CJK>
+D0A7 4E3C D0A7 <CJK>
+D0A8 4E3F D0A8 <CJK>
+D0A9 4E42 D0A9 <CJK>
+D0AA 4E56 D0AA <CJK>
+D0AB 4E58 D0AB <CJK>
+D0AC 4E82 D0AC <CJK>
+D0AD 4E85 D0AD <CJK>
+D0AE 8C6B D0AE <CJK>
+D0AF 4E8A D0AF <CJK>
+D0B0 8212 D0B0 <CJK>
+D0B1 5F0D D0B1 <CJK>
+D0B2 4E8E D0B2 <CJK>
+D0B3 4E9E D0B3 <CJK>
+D0B4 4E9F D0B4 <CJK>
+D0B5 4EA0 D0B5 <CJK>
+D0B6 4EA2 D0B6 <CJK>
+D0B7 4EB0 D0B7 <CJK>
+D0B8 4EB3 D0B8 <CJK>
+D0B9 4EB6 D0B9 <CJK>
+D0BA 4ECE D0BA <CJK>
+D0BB 4ECD D0BB <CJK>
+D0BC 4EC4 D0BC <CJK>
+D0BD 4EC6 D0BD <CJK>
+D0BE 4EC2 D0BE <CJK>
+D0BF 4ED7 D0BF <CJK>
+D0C0 4EDE D0C0 <CJK>
+D0C1 4EED D0C1 <CJK>
+D0C2 4EDF D0C2 <CJK>
+D0C3 4EF7 D0C3 <CJK>
+D0C4 4F09 D0C4 <CJK>
+D0C5 4F5A D0C5 <CJK>
+D0C6 4F30 D0C6 <CJK>
+D0C7 4F5B D0C7 <CJK>
+D0C8 4F5D D0C8 <CJK>
+D0C9 4F57 D0C9 <CJK>
+D0CA 4F47 D0CA <CJK>
+D0CB 4F76 D0CB <CJK>
+D0CC 4F88 D0CC <CJK>
+D0CD 4F8F D0CD <CJK>
+D0CE 4F98 D0CE <CJK>
+D0CF 4F7B D0CF <CJK>
+D0D0 4F69 D0D0 <CJK>
+D0D1 4F70 D0D1 <CJK>
+D0D2 4F91 D0D2 <CJK>
+D0D3 4F6F D0D3 <CJK>
+D0D4 4F86 D0D4 <CJK>
+D0D5 4F96 D0D5 <CJK>
+D0D6 5118 D0D6 <CJK>
+D0D7 4FD4 D0D7 <CJK>
+D0D8 4FDF D0D8 <CJK>
+D0D9 4FCE D0D9 <CJK>
+D0DA 4FD8 D0DA <CJK>
+D0DB 4FDB D0DB <CJK>
+D0DC 4FD1 D0DC <CJK>
+D0DD 4FDA D0DD <CJK>
+D0DE 4FD0 D0DE <CJK>
+D0DF 4FE4 D0DF <CJK>
+D0E0 4FE5 D0E0 <CJK>
+D0E1 501A D0E1 <CJK>
+D0E2 5028 D0E2 <CJK>
+D0E3 5014 D0E3 <CJK>
+D0E4 502A D0E4 <CJK>
+D0E5 5025 D0E5 <CJK>
+D0E6 5005 D0E6 <CJK>
+D0E7 4F1C D0E7 <CJK>
+D0E8 4FF6 D0E8 <CJK>
+D0E9 5021 D0E9 <CJK>
+D0EA 5029 D0EA <CJK>
+D0EB 502C D0EB <CJK>
+D0EC 4FFE D0EC <CJK>
+D0ED 4FEF D0ED <CJK>
+D0EE 5011 D0EE <CJK>
+D0EF 5006 D0EF <CJK>
+D0F0 5043 D0F0 <CJK>
+D0F1 5047 D0F1 <CJK>
+D0F2 6703 D0F2 <CJK>
+D0F3 5055 D0F3 <CJK>
+D0F4 5050 D0F4 <CJK>
+D0F5 5048 D0F5 <CJK>
+D0F6 505A D0F6 <CJK>
+D0F7 5056 D0F7 <CJK>
+D0F8 506C D0F8 <CJK>
+D0F9 5078 D0F9 <CJK>
+D0FA 5080 D0FA <CJK>
+D0FB 509A D0FB <CJK>
+D0FC 5085 D0FC <CJK>
+D0FD 50B4 D0FD <CJK>
+D0FE 50B2 D0FE <CJK>
+D1A1 50C9 D1A1 <CJK>
+D1A2 50CA D1A2 <CJK>
+D1A3 50B3 D1A3 <CJK>
+D1A4 50C2 D1A4 <CJK>
+D1A5 50D6 D1A5 <CJK>
+D1A6 50DE D1A6 <CJK>
+D1A7 50E5 D1A7 <CJK>
+D1A8 50ED D1A8 <CJK>
+D1A9 50E3 D1A9 <CJK>
+D1AA 50EE D1AA <CJK>
+D1AB 50F9 D1AB <CJK>
+D1AC 50F5 D1AC <CJK>
+D1AD 5109 D1AD <CJK>
+D1AE 5101 D1AE <CJK>
+D1AF 5102 D1AF <CJK>
+D1B0 5116 D1B0 <CJK>
+D1B1 5115 D1B1 <CJK>
+D1B2 5114 D1B2 <CJK>
+D1B3 511A D1B3 <CJK>
+D1B4 5121 D1B4 <CJK>
+D1B5 513A D1B5 <CJK>
+D1B6 5137 D1B6 <CJK>
+D1B7 513C D1B7 <CJK>
+D1B8 513B D1B8 <CJK>
+D1B9 513F D1B9 <CJK>
+D1BA 5140 D1BA <CJK>
+D1BB 5152 D1BB <CJK>
+D1BC 514C D1BC <CJK>
+D1BD 5154 D1BD <CJK>
+D1BE 5162 D1BE <CJK>
+D1BF 7AF8 D1BF <CJK>
+D1C0 5169 D1C0 <CJK>
+D1C1 516A D1C1 <CJK>
+D1C2 516E D1C2 <CJK>
+D1C3 5180 D1C3 <CJK>
+D1C4 5182 D1C4 <CJK>
+D1C5 56D8 D1C5 <CJK>
+D1C6 518C D1C6 <CJK>
+D1C7 5189 D1C7 <CJK>
+D1C8 518F D1C8 <CJK>
+D1C9 5191 D1C9 <CJK>
+D1CA 5193 D1CA <CJK>
+D1CB 5195 D1CB <CJK>
+D1CC 5196 D1CC <CJK>
+D1CD 51A4 D1CD <CJK>
+D1CE 51A6 D1CE <CJK>
+D1CF 51A2 D1CF <CJK>
+D1D0 51A9 D1D0 <CJK>
+D1D1 51AA D1D1 <CJK>
+D1D2 51AB D1D2 <CJK>
+D1D3 51B3 D1D3 <CJK>
+D1D4 51B1 D1D4 <CJK>
+D1D5 51B2 D1D5 <CJK>
+D1D6 51B0 D1D6 <CJK>
+D1D7 51B5 D1D7 <CJK>
+D1D8 51BD D1D8 <CJK>
+D1D9 51C5 D1D9 <CJK>
+D1DA 51C9 D1DA <CJK>
+D1DB 51DB D1DB <CJK>
+D1DC 51E0 D1DC <CJK>
+D1DD 8655 D1DD <CJK>
+D1DE 51E9 D1DE <CJK>
+D1DF 51ED D1DF <CJK>
+D1E0 51F0 D1E0 <CJK>
+D1E1 51F5 D1E1 <CJK>
+D1E2 51FE D1E2 <CJK>
+D1E3 5204 D1E3 <CJK>
+D1E4 520B D1E4 <CJK>
+D1E5 5214 D1E5 <CJK>
+D1E6 520E D1E6 <CJK>
+D1E7 5227 D1E7 <CJK>
+D1E8 522A D1E8 <CJK>
+D1E9 522E D1E9 <CJK>
+D1EA 5233 D1EA <CJK>
+D1EB 5239 D1EB <CJK>
+D1EC 524F D1EC <CJK>
+D1ED 5244 D1ED <CJK>
+D1EE 524B D1EE <CJK>
+D1EF 524C D1EF <CJK>
+D1F0 525E D1F0 <CJK>
+D1F1 5254 D1F1 <CJK>
+D1F2 526A D1F2 <CJK>
+D1F3 5274 D1F3 <CJK>
+D1F4 5269 D1F4 <CJK>
+D1F5 5273 D1F5 <CJK>
+D1F6 527F D1F6 <CJK>
+D1F7 527D D1F7 <CJK>
+D1F8 528D D1F8 <CJK>
+D1F9 5294 D1F9 <CJK>
+D1FA 5292 D1FA <CJK>
+D1FB 5271 D1FB <CJK>
+D1FC 5288 D1FC <CJK>
+D1FD 5291 D1FD <CJK>
+D1FE 8FA8 D1FE <CJK>
+D2A1 8FA7 D2A1 <CJK>
+D2A2 52AC D2A2 <CJK>
+D2A3 52AD D2A3 <CJK>
+D2A4 52BC D2A4 <CJK>
+D2A5 52B5 D2A5 <CJK>
+D2A6 52C1 D2A6 <CJK>
+D2A7 52CD D2A7 <CJK>
+D2A8 52D7 D2A8 <CJK>
+D2A9 52DE D2A9 <CJK>
+D2AA 52E3 D2AA <CJK>
+D2AB 52E6 D2AB <CJK>
+D2AC 98ED D2AC <CJK>
+D2AD 52E0 D2AD <CJK>
+D2AE 52F3 D2AE <CJK>
+D2AF 52F5 D2AF <CJK>
+D2B0 52F8 D2B0 <CJK>
+D2B1 52F9 D2B1 <CJK>
+D2B2 5306 D2B2 <CJK>
+D2B3 5308 D2B3 <CJK>
+D2B4 7538 D2B4 <CJK>
+D2B5 530D D2B5 <CJK>
+D2B6 5310 D2B6 <CJK>
+D2B7 530F D2B7 <CJK>
+D2B8 5315 D2B8 <CJK>
+D2B9 531A D2B9 <CJK>
+D2BA 5323 D2BA <CJK>
+D2BB 532F D2BB <CJK>
+D2BC 5331 D2BC <CJK>
+D2BD 5333 D2BD <CJK>
+D2BE 5338 D2BE <CJK>
+D2BF 5340 D2BF <CJK>
+D2C0 5346 D2C0 <CJK>
+D2C1 5345 D2C1 <CJK>
+D2C2 4E17 D2C2 <CJK>
+D2C3 5349 D2C3 <CJK>
+D2C4 534D D2C4 <CJK>
+D2C5 51D6 D2C5 <CJK>
+D2C6 535E D2C6 <CJK>
+D2C7 5369 D2C7 <CJK>
+D2C8 536E D2C8 <CJK>
+D2C9 5918 D2C9 <CJK>
+D2CA 537B D2CA <CJK>
+D2CB 5377 D2CB <CJK>
+D2CC 5382 D2CC <CJK>
+D2CD 5396 D2CD <CJK>
+D2CE 53A0 D2CE <CJK>
+D2CF 53A6 D2CF <CJK>
+D2D0 53A5 D2D0 <CJK>
+D2D1 53AE D2D1 <CJK>
+D2D2 53B0 D2D2 <CJK>
+D2D3 53B6 D2D3 <CJK>
+D2D4 53C3 D2D4 <CJK>
+D2D5 7C12 D2D5 <CJK>
+D2D6 96D9 D2D6 <CJK>
+D2D7 53DF D2D7 <CJK>
+D2D8 66FC D2D8 <CJK>
+D2D9 71EE D2D9 <CJK>
+D2DA 53EE D2DA <CJK>
+D2DB 53E8 D2DB <CJK>
+D2DC 53ED D2DC <CJK>
+D2DD 53FA D2DD <CJK>
+D2DE 5401 D2DE <CJK>
+D2DF 543D D2DF <CJK>
+D2E0 5440 D2E0 <CJK>
+D2E1 542C D2E1 <CJK>
+D2E2 542D D2E2 <CJK>
+D2E3 543C D2E3 <CJK>
+D2E4 542E D2E4 <CJK>
+D2E5 5436 D2E5 <CJK>
+D2E6 5429 D2E6 <CJK>
+D2E7 541D D2E7 <CJK>
+D2E8 544E D2E8 <CJK>
+D2E9 548F D2E9 <CJK>
+D2EA 5475 D2EA <CJK>
+D2EB 548E D2EB <CJK>
+D2EC 545F D2EC <CJK>
+D2ED 5471 D2ED <CJK>
+D2EE 5477 D2EE <CJK>
+D2EF 5470 D2EF <CJK>
+D2F0 5492 D2F0 <CJK>
+D2F1 547B D2F1 <CJK>
+D2F2 5480 D2F2 <CJK>
+D2F3 5476 D2F3 <CJK>
+D2F4 5484 D2F4 <CJK>
+D2F5 5490 D2F5 <CJK>
+D2F6 5486 D2F6 <CJK>
+D2F7 54C7 D2F7 <CJK>
+D2F8 54A2 D2F8 <CJK>
+D2F9 54B8 D2F9 <CJK>
+D2FA 54A5 D2FA <CJK>
+D2FB 54AC D2FB <CJK>
+D2FC 54C4 D2FC <CJK>
+D2FD 54C8 D2FD <CJK>
+D2FE 54A8 D2FE <CJK>
+D3A1 54AB D3A1 <CJK>
+D3A2 54C2 D3A2 <CJK>
+D3A3 54A4 D3A3 <CJK>
+D3A4 54BE D3A4 <CJK>
+D3A5 54BC D3A5 <CJK>
+D3A6 54D8 D3A6 <CJK>
+D3A7 54E5 D3A7 <CJK>
+D3A8 54E6 D3A8 <CJK>
+D3A9 550F D3A9 <CJK>
+D3AA 5514 D3AA <CJK>
+D3AB 54FD D3AB <CJK>
+D3AC 54EE D3AC <CJK>
+D3AD 54ED D3AD <CJK>
+D3AE 54FA D3AE <CJK>
+D3AF 54E2 D3AF <CJK>
+D3B0 5539 D3B0 <CJK>
+D3B1 5540 D3B1 <CJK>
+D3B2 5563 D3B2 <CJK>
+D3B3 554C D3B3 <CJK>
+D3B4 552E D3B4 <CJK>
+D3B5 555C D3B5 <CJK>
+D3B6 5545 D3B6 <CJK>
+D3B7 5556 D3B7 <CJK>
+D3B8 5557 D3B8 <CJK>
+D3B9 5538 D3B9 <CJK>
+D3BA 5533 D3BA <CJK>
+D3BB 555D D3BB <CJK>
+D3BC 5599 D3BC <CJK>
+D3BD 5580 D3BD <CJK>
+D3BE 54AF D3BE <CJK>
+D3BF 558A D3BF <CJK>
+D3C0 559F D3C0 <CJK>
+D3C1 557B D3C1 <CJK>
+D3C2 557E D3C2 <CJK>
+D3C3 5598 D3C3 <CJK>
+D3C4 559E D3C4 <CJK>
+D3C5 55AE D3C5 <CJK>
+D3C6 557C D3C6 <CJK>
+D3C7 5583 D3C7 <CJK>
+D3C8 55A9 D3C8 <CJK>
+D3C9 5587 D3C9 <CJK>
+D3CA 55A8 D3CA <CJK>
+D3CB 55DA D3CB <CJK>
+D3CC 55C5 D3CC <CJK>
+D3CD 55DF D3CD <CJK>
+D3CE 55C4 D3CE <CJK>
+D3CF 55DC D3CF <CJK>
+D3D0 55E4 D3D0 <CJK>
+D3D1 55D4 D3D1 <CJK>
+D3D2 5614 D3D2 <CJK>
+D3D3 55F7 D3D3 <CJK>
+D3D4 5616 D3D4 <CJK>
+D3D5 55FE D3D5 <CJK>
+D3D6 55FD D3D6 <CJK>
+D3D7 561B D3D7 <CJK>
+D3D8 55F9 D3D8 <CJK>
+D3D9 564E D3D9 <CJK>
+D3DA 5650 D3DA <CJK>
+D3DB 71DF D3DB <CJK>
+D3DC 5634 D3DC <CJK>
+D3DD 5636 D3DD <CJK>
+D3DE 5632 D3DE <CJK>
+D3DF 5638 D3DF <CJK>
+D3E0 566B D3E0 <CJK>
+D3E1 5664 D3E1 <CJK>
+D3E2 562F D3E2 <CJK>
+D3E3 566C D3E3 <CJK>
+D3E4 566A D3E4 <CJK>
+D3E5 5686 D3E5 <CJK>
+D3E6 5680 D3E6 <CJK>
+D3E7 568A D3E7 <CJK>
+D3E8 56A0 D3E8 <CJK>
+D3E9 5694 D3E9 <CJK>
+D3EA 568F D3EA <CJK>
+D3EB 56A5 D3EB <CJK>
+D3EC 56AE D3EC <CJK>
+D3ED 56B6 D3ED <CJK>
+D3EE 56B4 D3EE <CJK>
+D3EF 56C2 D3EF <CJK>
+D3F0 56BC D3F0 <CJK>
+D3F1 56C1 D3F1 <CJK>
+D3F2 56C3 D3F2 <CJK>
+D3F3 56C0 D3F3 <CJK>
+D3F4 56C8 D3F4 <CJK>
+D3F5 56CE D3F5 <CJK>
+D3F6 56D1 D3F6 <CJK>
+D3F7 56D3 D3F7 <CJK>
+D3F8 56D7 D3F8 <CJK>
+D3F9 56EE D3F9 <CJK>
+D3FA 56F9 D3FA <CJK>
+D3FB 5700 D3FB <CJK>
+D3FC 56FF D3FC <CJK>
+D3FD 5704 D3FD <CJK>
+D3FE 5709 D3FE <CJK>
+D4A1 5708 D4A1 <CJK>
+D4A2 570B D4A2 <CJK>
+D4A3 570D D4A3 <CJK>
+D4A4 5713 D4A4 <CJK>
+D4A5 5718 D4A5 <CJK>
+D4A6 5716 D4A6 <CJK>
+D4A7 55C7 D4A7 <CJK>
+D4A8 571C D4A8 <CJK>
+D4A9 5726 D4A9 <CJK>
+D4AA 5737 D4AA <CJK>
+D4AB 5738 D4AB <CJK>
+D4AC 574E D4AC <CJK>
+D4AD 573B D4AD <CJK>
+D4AE 5740 D4AE <CJK>
+D4AF 574F D4AF <CJK>
+D4B0 5769 D4B0 <CJK>
+D4B1 57C0 D4B1 <CJK>
+D4B2 5788 D4B2 <CJK>
+D4B3 5761 D4B3 <CJK>
+D4B4 577F D4B4 <CJK>
+D4B5 5789 D4B5 <CJK>
+D4B6 5793 D4B6 <CJK>
+D4B7 57A0 D4B7 <CJK>
+D4B8 57B3 D4B8 <CJK>
+D4B9 57A4 D4B9 <CJK>
+D4BA 57AA D4BA <CJK>
+D4BB 57B0 D4BB <CJK>
+D4BC 57C3 D4BC <CJK>
+D4BD 57C6 D4BD <CJK>
+D4BE 57D4 D4BE <CJK>
+D4BF 57D2 D4BF <CJK>
+D4C0 57D3 D4C0 <CJK>
+D4C1 580A D4C1 <CJK>
+D4C2 57D6 D4C2 <CJK>
+D4C3 57E3 D4C3 <CJK>
+D4C4 580B D4C4 <CJK>
+D4C5 5819 D4C5 <CJK>
+D4C6 581D D4C6 <CJK>
+D4C7 5872 D4C7 <CJK>
+D4C8 5821 D4C8 <CJK>
+D4C9 5862 D4C9 <CJK>
+D4CA 584B D4CA <CJK>
+D4CB 5870 D4CB <CJK>
+D4CC 6BC0 D4CC <CJK>
+D4CD 5852 D4CD <CJK>
+D4CE 583D D4CE <CJK>
+D4CF 5879 D4CF <CJK>
+D4D0 5885 D4D0 <CJK>
+D4D1 58B9 D4D1 <CJK>
+D4D2 589F D4D2 <CJK>
+D4D3 58AB D4D3 <CJK>
+D4D4 58BA D4D4 <CJK>
+D4D5 58DE D4D5 <CJK>
+D4D6 58BB D4D6 <CJK>
+D4D7 58B8 D4D7 <CJK>
+D4D8 58AE D4D8 <CJK>
+D4D9 58C5 D4D9 <CJK>
+D4DA 58D3 D4DA <CJK>
+D4DB 58D1 D4DB <CJK>
+D4DC 58D7 D4DC <CJK>
+D4DD 58D9 D4DD <CJK>
+D4DE 58D8 D4DE <CJK>
+D4DF 58E5 D4DF <CJK>
+D4E0 58DC D4E0 <CJK>
+D4E1 58E4 D4E1 <CJK>
+D4E2 58DF D4E2 <CJK>
+D4E3 58EF D4E3 <CJK>
+D4E4 58FA D4E4 <CJK>
+D4E5 58F9 D4E5 <CJK>
+D4E6 58FB D4E6 <CJK>
+D4E7 58FC D4E7 <CJK>
+D4E8 58FD D4E8 <CJK>
+D4E9 5902 D4E9 <CJK>
+D4EA 590A D4EA <CJK>
+D4EB 5910 D4EB <CJK>
+D4EC 591B D4EC <CJK>
+D4ED 68A6 D4ED <CJK>
+D4EE 5925 D4EE <CJK>
+D4EF 592C D4EF <CJK>
+D4F0 592D D4F0 <CJK>
+D4F1 5932 D4F1 <CJK>
+D4F2 5938 D4F2 <CJK>
+D4F3 593E D4F3 <CJK>
+D4F4 7AD2 D4F4 <CJK>
+D4F5 5955 D4F5 <CJK>
+D4F6 5950 D4F6 <CJK>
+D4F7 594E D4F7 <CJK>
+D4F8 595A D4F8 <CJK>
+D4F9 5958 D4F9 <CJK>
+D4FA 5962 D4FA <CJK>
+D4FB 5960 D4FB <CJK>
+D4FC 5967 D4FC <CJK>
+D4FD 596C D4FD <CJK>
+D4FE 5969 D4FE <CJK>
+D5A1 5978 D5A1 <CJK>
+D5A2 5981 D5A2 <CJK>
+D5A3 599D D5A3 <CJK>
+D5A4 4F5E D5A4 <CJK>
+D5A5 4FAB D5A5 <CJK>
+D5A6 59A3 D5A6 <CJK>
+D5A7 59B2 D5A7 <CJK>
+D5A8 59C6 D5A8 <CJK>
+D5A9 59E8 D5A9 <CJK>
+D5AA 59DC D5AA <CJK>
+D5AB 598D D5AB <CJK>
+D5AC 59D9 D5AC <CJK>
+D5AD 59DA D5AD <CJK>
+D5AE 5A25 D5AE <CJK>
+D5AF 5A1F D5AF <CJK>
+D5B0 5A11 D5B0 <CJK>
+D5B1 5A1C D5B1 <CJK>
+D5B2 5A09 D5B2 <CJK>
+D5B3 5A1A D5B3 <CJK>
+D5B4 5A40 D5B4 <CJK>
+D5B5 5A6C D5B5 <CJK>
+D5B6 5A49 D5B6 <CJK>
+D5B7 5A35 D5B7 <CJK>
+D5B8 5A36 D5B8 <CJK>
+D5B9 5A62 D5B9 <CJK>
+D5BA 5A6A D5BA <CJK>
+D5BB 5A9A D5BB <CJK>
+D5BC 5ABC D5BC <CJK>
+D5BD 5ABE D5BD <CJK>
+D5BE 5ACB D5BE <CJK>
+D5BF 5AC2 D5BF <CJK>
+D5C0 5ABD D5C0 <CJK>
+D5C1 5AE3 D5C1 <CJK>
+D5C2 5AD7 D5C2 <CJK>
+D5C3 5AE6 D5C3 <CJK>
+D5C4 5AE9 D5C4 <CJK>
+D5C5 5AD6 D5C5 <CJK>
+D5C6 5AFA D5C6 <CJK>
+D5C7 5AFB D5C7 <CJK>
+D5C8 5B0C D5C8 <CJK>
+D5C9 5B0B D5C9 <CJK>
+D5CA 5B16 D5CA <CJK>
+D5CB 5B32 D5CB <CJK>
+D5CC 5AD0 D5CC <CJK>
+D5CD 5B2A D5CD <CJK>
+D5CE 5B36 D5CE <CJK>
+D5CF 5B3E D5CF <CJK>
+D5D0 5B43 D5D0 <CJK>
+D5D1 5B45 D5D1 <CJK>
+D5D2 5B40 D5D2 <CJK>
+D5D3 5B51 D5D3 <CJK>
+D5D4 5B55 D5D4 <CJK>
+D5D5 5B5A D5D5 <CJK>
+D5D6 5B5B D5D6 <CJK>
+D5D7 5B65 D5D7 <CJK>
+D5D8 5B69 D5D8 <CJK>
+D5D9 5B70 D5D9 <CJK>
+D5DA 5B73 D5DA <CJK>
+D5DB 5B75 D5DB <CJK>
+D5DC 5B78 D5DC <CJK>
+D5DD 6588 D5DD <CJK>
+D5DE 5B7A D5DE <CJK>
+D5DF 5B80 D5DF <CJK>
+D5E0 5B83 D5E0 <CJK>
+D5E1 5BA6 D5E1 <CJK>
+D5E2 5BB8 D5E2 <CJK>
+D5E3 5BC3 D5E3 <CJK>
+D5E4 5BC7 D5E4 <CJK>
+D5E5 5BC9 D5E5 <CJK>
+D5E6 5BD4 D5E6 <CJK>
+D5E7 5BD0 D5E7 <CJK>
+D5E8 5BE4 D5E8 <CJK>
+D5E9 5BE6 D5E9 <CJK>
+D5EA 5BE2 D5EA <CJK>
+D5EB 5BDE D5EB <CJK>
+D5EC 5BE5 D5EC <CJK>
+D5ED 5BEB D5ED <CJK>
+D5EE 5BF0 D5EE <CJK>
+D5EF 5BF6 D5EF <CJK>
+D5F0 5BF3 D5F0 <CJK>
+D5F1 5C05 D5F1 <CJK>
+D5F2 5C07 D5F2 <CJK>
+D5F3 5C08 D5F3 <CJK>
+D5F4 5C0D D5F4 <CJK>
+D5F5 5C13 D5F5 <CJK>
+D5F6 5C20 D5F6 <CJK>
+D5F7 5C22 D5F7 <CJK>
+D5F8 5C28 D5F8 <CJK>
+D5F9 5C38 D5F9 <CJK>
+D5FA 5C39 D5FA <CJK>
+D5FB 5C41 D5FB <CJK>
+D5FC 5C46 D5FC <CJK>
+D5FD 5C4E D5FD <CJK>
+D5FE 5C53 D5FE <CJK>
+D6A1 5C50 D6A1 <CJK>
+D6A2 5C4F D6A2 <CJK>
+D6A3 5B71 D6A3 <CJK>
+D6A4 5C6C D6A4 <CJK>
+D6A5 5C6E D6A5 <CJK>
+D6A6 4E62 D6A6 <CJK>
+D6A7 5C76 D6A7 <CJK>
+D6A8 5C79 D6A8 <CJK>
+D6A9 5C8C D6A9 <CJK>
+D6AA 5C91 D6AA <CJK>
+D6AB 5C94 D6AB <CJK>
+D6AC 599B D6AC <CJK>
+D6AD 5CAB D6AD <CJK>
+D6AE 5CBB D6AE <CJK>
+D6AF 5CB6 D6AF <CJK>
+D6B0 5CBC D6B0 <CJK>
+D6B1 5CB7 D6B1 <CJK>
+D6B2 5CC5 D6B2 <CJK>
+D6B3 5CBE D6B3 <CJK>
+D6B4 5CC7 D6B4 <CJK>
+D6B5 5CD9 D6B5 <CJK>
+D6B6 5CE9 D6B6 <CJK>
+D6B7 5CFD D6B7 <CJK>
+D6B8 5CFA D6B8 <CJK>
+D6B9 5CED D6B9 <CJK>
+D6BA 5D8C D6BA <CJK>
+D6BB 5CEA D6BB <CJK>
+D6BC 5D0B D6BC <CJK>
+D6BD 5D15 D6BD <CJK>
+D6BE 5D17 D6BE <CJK>
+D6BF 5D5C D6BF <CJK>
+D6C0 5D1F D6C0 <CJK>
+D6C1 5D1B D6C1 <CJK>
+D6C2 5D11 D6C2 <CJK>
+D6C3 5D14 D6C3 <CJK>
+D6C4 5D22 D6C4 <CJK>
+D6C5 5D1A D6C5 <CJK>
+D6C6 5D19 D6C6 <CJK>
+D6C7 5D18 D6C7 <CJK>
+D6C8 5D4C D6C8 <CJK>
+D6C9 5D52 D6C9 <CJK>
+D6CA 5D4E D6CA <CJK>
+D6CB 5D4B D6CB <CJK>
+D6CC 5D6C D6CC <CJK>
+D6CD 5D73 D6CD <CJK>
+D6CE 5D76 D6CE <CJK>
+D6CF 5D87 D6CF <CJK>
+D6D0 5D84 D6D0 <CJK>
+D6D1 5D82 D6D1 <CJK>
+D6D2 5DA2 D6D2 <CJK>
+D6D3 5D9D D6D3 <CJK>
+D6D4 5DAC D6D4 <CJK>
+D6D5 5DAE D6D5 <CJK>
+D6D6 5DBD D6D6 <CJK>
+D6D7 5D90 D6D7 <CJK>
+D6D8 5DB7 D6D8 <CJK>
+D6D9 5DBC D6D9 <CJK>
+D6DA 5DC9 D6DA <CJK>
+D6DB 5DCD D6DB <CJK>
+D6DC 5DD3 D6DC <CJK>
+D6DD 5DD2 D6DD <CJK>
+D6DE 5DD6 D6DE <CJK>
+D6DF 5DDB D6DF <CJK>
+D6E0 5DEB D6E0 <CJK>
+D6E1 5DF2 D6E1 <CJK>
+D6E2 5DF5 D6E2 <CJK>
+D6E3 5E0B D6E3 <CJK>
+D6E4 5E1A D6E4 <CJK>
+D6E5 5E19 D6E5 <CJK>
+D6E6 5E11 D6E6 <CJK>
+D6E7 5E1B D6E7 <CJK>
+D6E8 5E36 D6E8 <CJK>
+D6E9 5E37 D6E9 <CJK>
+D6EA 5E44 D6EA <CJK>
+D6EB 5E43 D6EB <CJK>
+D6EC 5E40 D6EC <CJK>
+D6ED 5E4E D6ED <CJK>
+D6EE 5E57 D6EE <CJK>
+D6EF 5E54 D6EF <CJK>
+D6F0 5E5F D6F0 <CJK>
+D6F1 5E62 D6F1 <CJK>
+D6F2 5E64 D6F2 <CJK>
+D6F3 5E47 D6F3 <CJK>
+D6F4 5E75 D6F4 <CJK>
+D6F5 5E76 D6F5 <CJK>
+D6F6 5E7A D6F6 <CJK>
+D6F7 9EBC D6F7 <CJK>
+D6F8 5E7F D6F8 <CJK>
+D6F9 5EA0 D6F9 <CJK>
+D6FA 5EC1 D6FA <CJK>
+D6FB 5EC2 D6FB <CJK>
+D6FC 5EC8 D6FC <CJK>
+D6FD 5ED0 D6FD <CJK>
+D6FE 5ECF D6FE <CJK>
+D7A1 5ED6 D7A1 <CJK>
+D7A2 5EE3 D7A2 <CJK>
+D7A3 5EDD D7A3 <CJK>
+D7A4 5EDA D7A4 <CJK>
+D7A5 5EDB D7A5 <CJK>
+D7A6 5EE2 D7A6 <CJK>
+D7A7 5EE1 D7A7 <CJK>
+D7A8 5EE8 D7A8 <CJK>
+D7A9 5EE9 D7A9 <CJK>
+D7AA 5EEC D7AA <CJK>
+D7AB 5EF1 D7AB <CJK>
+D7AC 5EF3 D7AC <CJK>
+D7AD 5EF0 D7AD <CJK>
+D7AE 5EF4 D7AE <CJK>
+D7AF 5EF8 D7AF <CJK>
+D7B0 5EFE D7B0 <CJK>
+D7B1 5F03 D7B1 <CJK>
+D7B2 5F09 D7B2 <CJK>
+D7B3 5F5D D7B3 <CJK>
+D7B4 5F5C D7B4 <CJK>
+D7B5 5F0B D7B5 <CJK>
+D7B6 5F11 D7B6 <CJK>
+D7B7 5F16 D7B7 <CJK>
+D7B8 5F29 D7B8 <CJK>
+D7B9 5F2D D7B9 <CJK>
+D7BA 5F38 D7BA <CJK>
+D7BB 5F41 D7BB <CJK>
+D7BC 5F48 D7BC <CJK>
+D7BD 5F4C D7BD <CJK>
+D7BE 5F4E D7BE <CJK>
+D7BF 5F2F D7BF <CJK>
+D7C0 5F51 D7C0 <CJK>
+D7C1 5F56 D7C1 <CJK>
+D7C2 5F57 D7C2 <CJK>
+D7C3 5F59 D7C3 <CJK>
+D7C4 5F61 D7C4 <CJK>
+D7C5 5F6D D7C5 <CJK>
+D7C6 5F73 D7C6 <CJK>
+D7C7 5F77 D7C7 <CJK>
+D7C8 5F83 D7C8 <CJK>
+D7C9 5F82 D7C9 <CJK>
+D7CA 5F7F D7CA <CJK>
+D7CB 5F8A D7CB <CJK>
+D7CC 5F88 D7CC <CJK>
+D7CD 5F91 D7CD <CJK>
+D7CE 5F87 D7CE <CJK>
+D7CF 5F9E D7CF <CJK>
+D7D0 5F99 D7D0 <CJK>
+D7D1 5F98 D7D1 <CJK>
+D7D2 5FA0 D7D2 <CJK>
+D7D3 5FA8 D7D3 <CJK>
+D7D4 5FAD D7D4 <CJK>
+D7D5 5FBC D7D5 <CJK>
+D7D6 5FD6 D7D6 <CJK>
+D7D7 5FFB D7D7 <CJK>
+D7D8 5FE4 D7D8 <CJK>
+D7D9 5FF8 D7D9 <CJK>
+D7DA 5FF1 D7DA <CJK>
+D7DB 5FDD D7DB <CJK>
+D7DC 60B3 D7DC <CJK>
+D7DD 5FFF D7DD <CJK>
+D7DE 6021 D7DE <CJK>
+D7DF 6060 D7DF <CJK>
+D7E0 6019 D7E0 <CJK>
+D7E1 6010 D7E1 <CJK>
+D7E2 6029 D7E2 <CJK>
+D7E3 600E D7E3 <CJK>
+D7E4 6031 D7E4 <CJK>
+D7E5 601B D7E5 <CJK>
+D7E6 6015 D7E6 <CJK>
+D7E7 602B D7E7 <CJK>
+D7E8 6026 D7E8 <CJK>
+D7E9 600F D7E9 <CJK>
+D7EA 603A D7EA <CJK>
+D7EB 605A D7EB <CJK>
+D7EC 6041 D7EC <CJK>
+D7ED 606A D7ED <CJK>
+D7EE 6077 D7EE <CJK>
+D7EF 605F D7EF <CJK>
+D7F0 604A D7F0 <CJK>
+D7F1 6046 D7F1 <CJK>
+D7F2 604D D7F2 <CJK>
+D7F3 6063 D7F3 <CJK>
+D7F4 6043 D7F4 <CJK>
+D7F5 6064 D7F5 <CJK>
+D7F6 6042 D7F6 <CJK>
+D7F7 606C D7F7 <CJK>
+D7F8 606B D7F8 <CJK>
+D7F9 6059 D7F9 <CJK>
+D7FA 6081 D7FA <CJK>
+D7FB 608D D7FB <CJK>
+D7FC 60E7 D7FC <CJK>
+D7FD 6083 D7FD <CJK>
+D7FE 609A D7FE <CJK>
+D8A1 6084 D8A1 <CJK>
+D8A2 609B D8A2 <CJK>
+D8A3 6096 D8A3 <CJK>
+D8A4 6097 D8A4 <CJK>
+D8A5 6092 D8A5 <CJK>
+D8A6 60A7 D8A6 <CJK>
+D8A7 608B D8A7 <CJK>
+D8A8 60E1 D8A8 <CJK>
+D8A9 60B8 D8A9 <CJK>
+D8AA 60E0 D8AA <CJK>
+D8AB 60D3 D8AB <CJK>
+D8AC 60B4 D8AC <CJK>
+D8AD 5FF0 D8AD <CJK>
+D8AE 60BD D8AE <CJK>
+D8AF 60C6 D8AF <CJK>
+D8B0 60B5 D8B0 <CJK>
+D8B1 60D8 D8B1 <CJK>
+D8B2 614D D8B2 <CJK>
+D8B3 6115 D8B3 <CJK>
+D8B4 6106 D8B4 <CJK>
+D8B5 60F6 D8B5 <CJK>
+D8B6 60F7 D8B6 <CJK>
+D8B7 6100 D8B7 <CJK>
+D8B8 60F4 D8B8 <CJK>
+D8B9 60FA D8B9 <CJK>
+D8BA 6103 D8BA <CJK>
+D8BB 6121 D8BB <CJK>
+D8BC 60FB D8BC <CJK>
+D8BD 60F1 D8BD <CJK>
+D8BE 610D D8BE <CJK>
+D8BF 610E D8BF <CJK>
+D8C0 6147 D8C0 <CJK>
+D8C1 613E D8C1 <CJK>
+D8C2 6128 D8C2 <CJK>
+D8C3 6127 D8C3 <CJK>
+D8C4 614A D8C4 <CJK>
+D8C5 613F D8C5 <CJK>
+D8C6 613C D8C6 <CJK>
+D8C7 612C D8C7 <CJK>
+D8C8 6134 D8C8 <CJK>
+D8C9 613D D8C9 <CJK>
+D8CA 6142 D8CA <CJK>
+D8CB 6144 D8CB <CJK>
+D8CC 6173 D8CC <CJK>
+D8CD 6177 D8CD <CJK>
+D8CE 6158 D8CE <CJK>
+D8CF 6159 D8CF <CJK>
+D8D0 615A D8D0 <CJK>
+D8D1 616B D8D1 <CJK>
+D8D2 6174 D8D2 <CJK>
+D8D3 616F D8D3 <CJK>
+D8D4 6165 D8D4 <CJK>
+D8D5 6171 D8D5 <CJK>
+D8D6 615F D8D6 <CJK>
+D8D7 615D D8D7 <CJK>
+D8D8 6153 D8D8 <CJK>
+D8D9 6175 D8D9 <CJK>
+D8DA 6199 D8DA <CJK>
+D8DB 6196 D8DB <CJK>
+D8DC 6187 D8DC <CJK>
+D8DD 61AC D8DD <CJK>
+D8DE 6194 D8DE <CJK>
+D8DF 619A D8DF <CJK>
+D8E0 618A D8E0 <CJK>
+D8E1 6191 D8E1 <CJK>
+D8E2 61AB D8E2 <CJK>
+D8E3 61AE D8E3 <CJK>
+D8E4 61CC D8E4 <CJK>
+D8E5 61CA D8E5 <CJK>
+D8E6 61C9 D8E6 <CJK>
+D8E7 61F7 D8E7 <CJK>
+D8E8 61C8 D8E8 <CJK>
+D8E9 61C3 D8E9 <CJK>
+D8EA 61C6 D8EA <CJK>
+D8EB 61BA D8EB <CJK>
+D8EC 61CB D8EC <CJK>
+D8ED 7F79 D8ED <CJK>
+D8EE 61CD D8EE <CJK>
+D8EF 61E6 D8EF <CJK>
+D8F0 61E3 D8F0 <CJK>
+D8F1 61F6 D8F1 <CJK>
+D8F2 61FA D8F2 <CJK>
+D8F3 61F4 D8F3 <CJK>
+D8F4 61FF D8F4 <CJK>
+D8F5 61FD D8F5 <CJK>
+D8F6 61FC D8F6 <CJK>
+D8F7 61FE D8F7 <CJK>
+D8F8 6200 D8F8 <CJK>
+D8F9 6208 D8F9 <CJK>
+D8FA 6209 D8FA <CJK>
+D8FB 620D D8FB <CJK>
+D8FC 620C D8FC <CJK>
+D8FD 6214 D8FD <CJK>
+D8FE 621B D8FE <CJK>
+D9A1 621E D9A1 <CJK>
+D9A2 6221 D9A2 <CJK>
+D9A3 622A D9A3 <CJK>
+D9A4 622E D9A4 <CJK>
+D9A5 6230 D9A5 <CJK>
+D9A6 6232 D9A6 <CJK>
+D9A7 6233 D9A7 <CJK>
+D9A8 6241 D9A8 <CJK>
+D9A9 624E D9A9 <CJK>
+D9AA 625E D9AA <CJK>
+D9AB 6263 D9AB <CJK>
+D9AC 625B D9AC <CJK>
+D9AD 6260 D9AD <CJK>
+D9AE 6268 D9AE <CJK>
+D9AF 627C D9AF <CJK>
+D9B0 6282 D9B0 <CJK>
+D9B1 6289 D9B1 <CJK>
+D9B2 627E D9B2 <CJK>
+D9B3 6292 D9B3 <CJK>
+D9B4 6293 D9B4 <CJK>
+D9B5 6296 D9B5 <CJK>
+D9B6 62D4 D9B6 <CJK>
+D9B7 6283 D9B7 <CJK>
+D9B8 6294 D9B8 <CJK>
+D9B9 62D7 D9B9 <CJK>
+D9BA 62D1 D9BA <CJK>
+D9BB 62BB D9BB <CJK>
+D9BC 62CF D9BC <CJK>
+D9BD 62FF D9BD <CJK>
+D9BE 62C6 D9BE <CJK>
+D9BF 64D4 D9BF <CJK>
+D9C0 62C8 D9C0 <CJK>
+D9C1 62DC D9C1 <CJK>
+D9C2 62CC D9C2 <CJK>
+D9C3 62CA D9C3 <CJK>
+D9C4 62C2 D9C4 <CJK>
+D9C5 62C7 D9C5 <CJK>
+D9C6 629B D9C6 <CJK>
+D9C7 62C9 D9C7 <CJK>
+D9C8 630C D9C8 <CJK>
+D9C9 62EE D9C9 <CJK>
+D9CA 62F1 D9CA <CJK>
+D9CB 6327 D9CB <CJK>
+D9CC 6302 D9CC <CJK>
+D9CD 6308 D9CD <CJK>
+D9CE 62EF D9CE <CJK>
+D9CF 62F5 D9CF <CJK>
+D9D0 6350 D9D0 <CJK>
+D9D1 633E D9D1 <CJK>
+D9D2 634D D9D2 <CJK>
+D9D3 641C D9D3 <CJK>
+D9D4 634F D9D4 <CJK>
+D9D5 6396 D9D5 <CJK>
+D9D6 638E D9D6 <CJK>
+D9D7 6380 D9D7 <CJK>
+D9D8 63AB D9D8 <CJK>
+D9D9 6376 D9D9 <CJK>
+D9DA 63A3 D9DA <CJK>
+D9DB 638F D9DB <CJK>
+D9DC 6389 D9DC <CJK>
+D9DD 639F D9DD <CJK>
+D9DE 63B5 D9DE <CJK>
+D9DF 636B D9DF <CJK>
+D9E0 6369 D9E0 <CJK>
+D9E1 63BE D9E1 <CJK>
+D9E2 63E9 D9E2 <CJK>
+D9E3 63C0 D9E3 <CJK>
+D9E4 63C6 D9E4 <CJK>
+D9E5 63E3 D9E5 <CJK>
+D9E6 63C9 D9E6 <CJK>
+D9E7 63D2 D9E7 <CJK>
+D9E8 63F6 D9E8 <CJK>
+D9E9 63C4 D9E9 <CJK>
+D9EA 6416 D9EA <CJK>
+D9EB 6434 D9EB <CJK>
+D9EC 6406 D9EC <CJK>
+D9ED 6413 D9ED <CJK>
+D9EE 6426 D9EE <CJK>
+D9EF 6436 D9EF <CJK>
+D9F0 651D D9F0 <CJK>
+D9F1 6417 D9F1 <CJK>
+D9F2 6428 D9F2 <CJK>
+D9F3 640F D9F3 <CJK>
+D9F4 6467 D9F4 <CJK>
+D9F5 646F D9F5 <CJK>
+D9F6 6476 D9F6 <CJK>
+D9F7 644E D9F7 <CJK>
+D9F8 652A D9F8 <CJK>
+D9F9 6495 D9F9 <CJK>
+D9FA 6493 D9FA <CJK>
+D9FB 64A5 D9FB <CJK>
+D9FC 64A9 D9FC <CJK>
+D9FD 6488 D9FD <CJK>
+D9FE 64BC D9FE <CJK>
+DAA1 64DA DAA1 <CJK>
+DAA2 64D2 DAA2 <CJK>
+DAA3 64C5 DAA3 <CJK>
+DAA4 64C7 DAA4 <CJK>
+DAA5 64BB DAA5 <CJK>
+DAA6 64D8 DAA6 <CJK>
+DAA7 64C2 DAA7 <CJK>
+DAA8 64F1 DAA8 <CJK>
+DAA9 64E7 DAA9 <CJK>
+DAAA 8209 DAAA <CJK>
+DAAB 64E0 DAAB <CJK>
+DAAC 64E1 DAAC <CJK>
+DAAD 62AC DAAD <CJK>
+DAAE 64E3 DAAE <CJK>
+DAAF 64EF DAAF <CJK>
+DAB0 652C DAB0 <CJK>
+DAB1 64F6 DAB1 <CJK>
+DAB2 64F4 DAB2 <CJK>
+DAB3 64F2 DAB3 <CJK>
+DAB4 64FA DAB4 <CJK>
+DAB5 6500 DAB5 <CJK>
+DAB6 64FD DAB6 <CJK>
+DAB7 6518 DAB7 <CJK>
+DAB8 651C DAB8 <CJK>
+DAB9 6505 DAB9 <CJK>
+DABA 6524 DABA <CJK>
+DABB 6523 DABB <CJK>
+DABC 652B DABC <CJK>
+DABD 6534 DABD <CJK>
+DABE 6535 DABE <CJK>
+DABF 6537 DABF <CJK>
+DAC0 6536 DAC0 <CJK>
+DAC1 6538 DAC1 <CJK>
+DAC2 754B DAC2 <CJK>
+DAC3 6548 DAC3 <CJK>
+DAC4 6556 DAC4 <CJK>
+DAC5 6555 DAC5 <CJK>
+DAC6 654D DAC6 <CJK>
+DAC7 6558 DAC7 <CJK>
+DAC8 655E DAC8 <CJK>
+DAC9 655D DAC9 <CJK>
+DACA 6572 DACA <CJK>
+DACB 6578 DACB <CJK>
+DACC 6582 DACC <CJK>
+DACD 6583 DACD <CJK>
+DACE 8B8A DACE <CJK>
+DACF 659B DACF <CJK>
+DAD0 659F DAD0 <CJK>
+DAD1 65AB DAD1 <CJK>
+DAD2 65B7 DAD2 <CJK>
+DAD3 65C3 DAD3 <CJK>
+DAD4 65C6 DAD4 <CJK>
+DAD5 65C1 DAD5 <CJK>
+DAD6 65C4 DAD6 <CJK>
+DAD7 65CC DAD7 <CJK>
+DAD8 65D2 DAD8 <CJK>
+DAD9 65DB DAD9 <CJK>
+DADA 65D9 DADA <CJK>
+DADB 65E0 DADB <CJK>
+DADC 65E1 DADC <CJK>
+DADD 65F1 DADD <CJK>
+DADE 6772 DADE <CJK>
+DADF 660A DADF <CJK>
+DAE0 6603 DAE0 <CJK>
+DAE1 65FB DAE1 <CJK>
+DAE2 6773 DAE2 <CJK>
+DAE3 6635 DAE3 <CJK>
+DAE4 6636 DAE4 <CJK>
+DAE5 6634 DAE5 <CJK>
+DAE6 661C DAE6 <CJK>
+DAE7 664F DAE7 <CJK>
+DAE8 6644 DAE8 <CJK>
+DAE9 6649 DAE9 <CJK>
+DAEA 6641 DAEA <CJK>
+DAEB 665E DAEB <CJK>
+DAEC 665D DAEC <CJK>
+DAED 6664 DAED <CJK>
+DAEE 6667 DAEE <CJK>
+DAEF 6668 DAEF <CJK>
+DAF0 665F DAF0 <CJK>
+DAF1 6662 DAF1 <CJK>
+DAF2 6670 DAF2 <CJK>
+DAF3 6683 DAF3 <CJK>
+DAF4 6688 DAF4 <CJK>
+DAF5 668E DAF5 <CJK>
+DAF6 6689 DAF6 <CJK>
+DAF7 6684 DAF7 <CJK>
+DAF8 6698 DAF8 <CJK>
+DAF9 669D DAF9 <CJK>
+DAFA 66C1 DAFA <CJK>
+DAFB 66B9 DAFB <CJK>
+DAFC 66C9 DAFC <CJK>
+DAFD 66BE DAFD <CJK>
+DAFE 66BC DAFE <CJK>
+DBA1 66C4 DBA1 <CJK>
+DBA2 66B8 DBA2 <CJK>
+DBA3 66D6 DBA3 <CJK>
+DBA4 66DA DBA4 <CJK>
+DBA5 66E0 DBA5 <CJK>
+DBA6 663F DBA6 <CJK>
+DBA7 66E6 DBA7 <CJK>
+DBA8 66E9 DBA8 <CJK>
+DBA9 66F0 DBA9 <CJK>
+DBAA 66F5 DBAA <CJK>
+DBAB 66F7 DBAB <CJK>
+DBAC 670F DBAC <CJK>
+DBAD 6716 DBAD <CJK>
+DBAE 671E DBAE <CJK>
+DBAF 6726 DBAF <CJK>
+DBB0 6727 DBB0 <CJK>
+DBB1 9738 DBB1 <CJK>
+DBB2 672E DBB2 <CJK>
+DBB3 673F DBB3 <CJK>
+DBB4 6736 DBB4 <CJK>
+DBB5 6741 DBB5 <CJK>
+DBB6 6738 DBB6 <CJK>
+DBB7 6737 DBB7 <CJK>
+DBB8 6746 DBB8 <CJK>
+DBB9 675E DBB9 <CJK>
+DBBA 6760 DBBA <CJK>
+DBBB 6759 DBBB <CJK>
+DBBC 6763 DBBC <CJK>
+DBBD 6764 DBBD <CJK>
+DBBE 6789 DBBE <CJK>
+DBBF 6770 DBBF <CJK>
+DBC0 67A9 DBC0 <CJK>
+DBC1 677C DBC1 <CJK>
+DBC2 676A DBC2 <CJK>
+DBC3 678C DBC3 <CJK>
+DBC4 678B DBC4 <CJK>
+DBC5 67A6 DBC5 <CJK>
+DBC6 67A1 DBC6 <CJK>
+DBC7 6785 DBC7 <CJK>
+DBC8 67B7 DBC8 <CJK>
+DBC9 67EF DBC9 <CJK>
+DBCA 67B4 DBCA <CJK>
+DBCB 67EC DBCB <CJK>
+DBCC 67B3 DBCC <CJK>
+DBCD 67E9 DBCD <CJK>
+DBCE 67B8 DBCE <CJK>
+DBCF 67E4 DBCF <CJK>
+DBD0 67DE DBD0 <CJK>
+DBD1 67DD DBD1 <CJK>
+DBD2 67E2 DBD2 <CJK>
+DBD3 67EE DBD3 <CJK>
+DBD4 67B9 DBD4 <CJK>
+DBD5 67CE DBD5 <CJK>
+DBD6 67C6 DBD6 <CJK>
+DBD7 67E7 DBD7 <CJK>
+DBD8 6A9C DBD8 <CJK>
+DBD9 681E DBD9 <CJK>
+DBDA 6846 DBDA <CJK>
+DBDB 6829 DBDB <CJK>
+DBDC 6840 DBDC <CJK>
+DBDD 684D DBDD <CJK>
+DBDE 6832 DBDE <CJK>
+DBDF 684E DBDF <CJK>
+DBE0 68B3 DBE0 <CJK>
+DBE1 682B DBE1 <CJK>
+DBE2 6859 DBE2 <CJK>
+DBE3 6863 DBE3 <CJK>
+DBE4 6877 DBE4 <CJK>
+DBE5 687F DBE5 <CJK>
+DBE6 689F DBE6 <CJK>
+DBE7 688F DBE7 <CJK>
+DBE8 68AD DBE8 <CJK>
+DBE9 6894 DBE9 <CJK>
+DBEA 689D DBEA <CJK>
+DBEB 689B DBEB <CJK>
+DBEC 6883 DBEC <CJK>
+DBED 6AAE DBED <CJK>
+DBEE 68B9 DBEE <CJK>
+DBEF 6874 DBEF <CJK>
+DBF0 68B5 DBF0 <CJK>
+DBF1 68A0 DBF1 <CJK>
+DBF2 68BA DBF2 <CJK>
+DBF3 690F DBF3 <CJK>
+DBF4 688D DBF4 <CJK>
+DBF5 687E DBF5 <CJK>
+DBF6 6901 DBF6 <CJK>
+DBF7 68CA DBF7 <CJK>
+DBF8 6908 DBF8 <CJK>
+DBF9 68D8 DBF9 <CJK>
+DBFA 6922 DBFA <CJK>
+DBFB 6926 DBFB <CJK>
+DBFC 68E1 DBFC <CJK>
+DBFD 690C DBFD <CJK>
+DBFE 68CD DBFE <CJK>
+DCA1 68D4 DCA1 <CJK>
+DCA2 68E7 DCA2 <CJK>
+DCA3 68D5 DCA3 <CJK>
+DCA4 6936 DCA4 <CJK>
+DCA5 6912 DCA5 <CJK>
+DCA6 6904 DCA6 <CJK>
+DCA7 68D7 DCA7 <CJK>
+DCA8 68E3 DCA8 <CJK>
+DCA9 6925 DCA9 <CJK>
+DCAA 68F9 DCAA <CJK>
+DCAB 68E0 DCAB <CJK>
+DCAC 68EF DCAC <CJK>
+DCAD 6928 DCAD <CJK>
+DCAE 692A DCAE <CJK>
+DCAF 691A DCAF <CJK>
+DCB0 6923 DCB0 <CJK>
+DCB1 6921 DCB1 <CJK>
+DCB2 68C6 DCB2 <CJK>
+DCB3 6979 DCB3 <CJK>
+DCB4 6977 DCB4 <CJK>
+DCB5 695C DCB5 <CJK>
+DCB6 6978 DCB6 <CJK>
+DCB7 696B DCB7 <CJK>
+DCB8 6954 DCB8 <CJK>
+DCB9 697E DCB9 <CJK>
+DCBA 696E DCBA <CJK>
+DCBB 6939 DCBB <CJK>
+DCBC 6974 DCBC <CJK>
+DCBD 693D DCBD <CJK>
+DCBE 6959 DCBE <CJK>
+DCBF 6930 DCBF <CJK>
+DCC0 6961 DCC0 <CJK>
+DCC1 695E DCC1 <CJK>
+DCC2 695D DCC2 <CJK>
+DCC3 6981 DCC3 <CJK>
+DCC4 696A DCC4 <CJK>
+DCC5 69B2 DCC5 <CJK>
+DCC6 69AE DCC6 <CJK>
+DCC7 69D0 DCC7 <CJK>
+DCC8 69BF DCC8 <CJK>
+DCC9 69C1 DCC9 <CJK>
+DCCA 69D3 DCCA <CJK>
+DCCB 69BE DCCB <CJK>
+DCCC 69CE DCCC <CJK>
+DCCD 5BE8 DCCD <CJK>
+DCCE 69CA DCCE <CJK>
+DCCF 69DD DCCF <CJK>
+DCD0 69BB DCD0 <CJK>
+DCD1 69C3 DCD1 <CJK>
+DCD2 69A7 DCD2 <CJK>
+DCD3 6A2E DCD3 <CJK>
+DCD4 6991 DCD4 <CJK>
+DCD5 69A0 DCD5 <CJK>
+DCD6 699C DCD6 <CJK>
+DCD7 6995 DCD7 <CJK>
+DCD8 69B4 DCD8 <CJK>
+DCD9 69DE DCD9 <CJK>
+DCDA 69E8 DCDA <CJK>
+DCDB 6A02 DCDB <CJK>
+DCDC 6A1B DCDC <CJK>
+DCDD 69FF DCDD <CJK>
+DCDE 6B0A DCDE <CJK>
+DCDF 69F9 DCDF <CJK>
+DCE0 69F2 DCE0 <CJK>
+DCE1 69E7 DCE1 <CJK>
+DCE2 6A05 DCE2 <CJK>
+DCE3 69B1 DCE3 <CJK>
+DCE4 6A1E DCE4 <CJK>
+DCE5 69ED DCE5 <CJK>
+DCE6 6A14 DCE6 <CJK>
+DCE7 69EB DCE7 <CJK>
+DCE8 6A0A DCE8 <CJK>
+DCE9 6A12 DCE9 <CJK>
+DCEA 6AC1 DCEA <CJK>
+DCEB 6A23 DCEB <CJK>
+DCEC 6A13 DCEC <CJK>
+DCED 6A44 DCED <CJK>
+DCEE 6A0C DCEE <CJK>
+DCEF 6A72 DCEF <CJK>
+DCF0 6A36 DCF0 <CJK>
+DCF1 6A78 DCF1 <CJK>
+DCF2 6A47 DCF2 <CJK>
+DCF3 6A62 DCF3 <CJK>
+DCF4 6A59 DCF4 <CJK>
+DCF5 6A66 DCF5 <CJK>
+DCF6 6A48 DCF6 <CJK>
+DCF7 6A38 DCF7 <CJK>
+DCF8 6A22 DCF8 <CJK>
+DCF9 6A90 DCF9 <CJK>
+DCFA 6A8D DCFA <CJK>
+DCFB 6AA0 DCFB <CJK>
+DCFC 6A84 DCFC <CJK>
+DCFD 6AA2 DCFD <CJK>
+DCFE 6AA3 DCFE <CJK>
+DDA1 6A97 DDA1 <CJK>
+DDA2 8617 DDA2 <CJK>
+DDA3 6ABB DDA3 <CJK>
+DDA4 6AC3 DDA4 <CJK>
+DDA5 6AC2 DDA5 <CJK>
+DDA6 6AB8 DDA6 <CJK>
+DDA7 6AB3 DDA7 <CJK>
+DDA8 6AAC DDA8 <CJK>
+DDA9 6ADE DDA9 <CJK>
+DDAA 6AD1 DDAA <CJK>
+DDAB 6ADF DDAB <CJK>
+DDAC 6AAA DDAC <CJK>
+DDAD 6ADA DDAD <CJK>
+DDAE 6AEA DDAE <CJK>
+DDAF 6AFB DDAF <CJK>
+DDB0 6B05 DDB0 <CJK>
+DDB1 8616 DDB1 <CJK>
+DDB2 6AFA DDB2 <CJK>
+DDB3 6B12 DDB3 <CJK>
+DDB4 6B16 DDB4 <CJK>
+DDB5 9B31 DDB5 <CJK>
+DDB6 6B1F DDB6 <CJK>
+DDB7 6B38 DDB7 <CJK>
+DDB8 6B37 DDB8 <CJK>
+DDB9 76DC DDB9 <CJK>
+DDBA 6B39 DDBA <CJK>
+DDBB 98EE DDBB <CJK>
+DDBC 6B47 DDBC <CJK>
+DDBD 6B43 DDBD <CJK>
+DDBE 6B49 DDBE <CJK>
+DDBF 6B50 DDBF <CJK>
+DDC0 6B59 DDC0 <CJK>
+DDC1 6B54 DDC1 <CJK>
+DDC2 6B5B DDC2 <CJK>
+DDC3 6B5F DDC3 <CJK>
+DDC4 6B61 DDC4 <CJK>
+DDC5 6B78 DDC5 <CJK>
+DDC6 6B79 DDC6 <CJK>
+DDC7 6B7F DDC7 <CJK>
+DDC8 6B80 DDC8 <CJK>
+DDC9 6B84 DDC9 <CJK>
+DDCA 6B83 DDCA <CJK>
+DDCB 6B8D DDCB <CJK>
+DDCC 6B98 DDCC <CJK>
+DDCD 6B95 DDCD <CJK>
+DDCE 6B9E DDCE <CJK>
+DDCF 6BA4 DDCF <CJK>
+DDD0 6BAA DDD0 <CJK>
+DDD1 6BAB DDD1 <CJK>
+DDD2 6BAF DDD2 <CJK>
+DDD3 6BB2 DDD3 <CJK>
+DDD4 6BB1 DDD4 <CJK>
+DDD5 6BB3 DDD5 <CJK>
+DDD6 6BB7 DDD6 <CJK>
+DDD7 6BBC DDD7 <CJK>
+DDD8 6BC6 DDD8 <CJK>
+DDD9 6BCB DDD9 <CJK>
+DDDA 6BD3 DDDA <CJK>
+DDDB 6BDF DDDB <CJK>
+DDDC 6BEC DDDC <CJK>
+DDDD 6BEB DDDD <CJK>
+DDDE 6BF3 DDDE <CJK>
+DDDF 6BEF DDDF <CJK>
+DDE0 9EBE DDE0 <CJK>
+DDE1 6C08 DDE1 <CJK>
+DDE2 6C13 DDE2 <CJK>
+DDE3 6C14 DDE3 <CJK>
+DDE4 6C1B DDE4 <CJK>
+DDE5 6C24 DDE5 <CJK>
+DDE6 6C23 DDE6 <CJK>
+DDE7 6C5E DDE7 <CJK>
+DDE8 6C55 DDE8 <CJK>
+DDE9 6C62 DDE9 <CJK>
+DDEA 6C6A DDEA <CJK>
+DDEB 6C82 DDEB <CJK>
+DDEC 6C8D DDEC <CJK>
+DDED 6C9A DDED <CJK>
+DDEE 6C81 DDEE <CJK>
+DDEF 6C9B DDEF <CJK>
+DDF0 6C7E DDF0 <CJK>
+DDF1 6C68 DDF1 <CJK>
+DDF2 6C73 DDF2 <CJK>
+DDF3 6C92 DDF3 <CJK>
+DDF4 6C90 DDF4 <CJK>
+DDF5 6CC4 DDF5 <CJK>
+DDF6 6CF1 DDF6 <CJK>
+DDF7 6CD3 DDF7 <CJK>
+DDF8 6CBD DDF8 <CJK>
+DDF9 6CD7 DDF9 <CJK>
+DDFA 6CC5 DDFA <CJK>
+DDFB 6CDD DDFB <CJK>
+DDFC 6CAE DDFC <CJK>
+DDFD 6CB1 DDFD <CJK>
+DDFE 6CBE DDFE <CJK>
+DEA1 6CBA DEA1 <CJK>
+DEA2 6CDB DEA2 <CJK>
+DEA3 6CEF DEA3 <CJK>
+DEA4 6CD9 DEA4 <CJK>
+DEA5 6CEA DEA5 <CJK>
+DEA6 6D1F DEA6 <CJK>
+DEA7 884D DEA7 <CJK>
+DEA8 6D36 DEA8 <CJK>
+DEA9 6D2B DEA9 <CJK>
+DEAA 6D3D DEAA <CJK>
+DEAB 6D38 DEAB <CJK>
+DEAC 6D19 DEAC <CJK>
+DEAD 6D35 DEAD <CJK>
+DEAE 6D33 DEAE <CJK>
+DEAF 6D12 DEAF <CJK>
+DEB0 6D0C DEB0 <CJK>
+DEB1 6D63 DEB1 <CJK>
+DEB2 6D93 DEB2 <CJK>
+DEB3 6D64 DEB3 <CJK>
+DEB4 6D5A DEB4 <CJK>
+DEB5 6D79 DEB5 <CJK>
+DEB6 6D59 DEB6 <CJK>
+DEB7 6D8E DEB7 <CJK>
+DEB8 6D95 DEB8 <CJK>
+DEB9 6FE4 DEB9 <CJK>
+DEBA 6D85 DEBA <CJK>
+DEBB 6DF9 DEBB <CJK>
+DEBC 6E15 DEBC <CJK>
+DEBD 6E0A DEBD <CJK>
+DEBE 6DB5 DEBE <CJK>
+DEBF 6DC7 DEBF <CJK>
+DEC0 6DE6 DEC0 <CJK>
+DEC1 6DB8 DEC1 <CJK>
+DEC2 6DC6 DEC2 <CJK>
+DEC3 6DEC DEC3 <CJK>
+DEC4 6DDE DEC4 <CJK>
+DEC5 6DCC DEC5 <CJK>
+DEC6 6DE8 DEC6 <CJK>
+DEC7 6DD2 DEC7 <CJK>
+DEC8 6DC5 DEC8 <CJK>
+DEC9 6DFA DEC9 <CJK>
+DECA 6DD9 DECA <CJK>
+DECB 6DE4 DECB <CJK>
+DECC 6DD5 DECC <CJK>
+DECD 6DEA DECD <CJK>
+DECE 6DEE DECE <CJK>
+DECF 6E2D DECF <CJK>
+DED0 6E6E DED0 <CJK>
+DED1 6E2E DED1 <CJK>
+DED2 6E19 DED2 <CJK>
+DED3 6E72 DED3 <CJK>
+DED4 6E5F DED4 <CJK>
+DED5 6E3E DED5 <CJK>
+DED6 6E23 DED6 <CJK>
+DED7 6E6B DED7 <CJK>
+DED8 6E2B DED8 <CJK>
+DED9 6E76 DED9 <CJK>
+DEDA 6E4D DEDA <CJK>
+DEDB 6E1F DEDB <CJK>
+DEDC 6E43 DEDC <CJK>
+DEDD 6E3A DEDD <CJK>
+DEDE 6E4E DEDE <CJK>
+DEDF 6E24 DEDF <CJK>
+DEE0 6EFF DEE0 <CJK>
+DEE1 6E1D DEE1 <CJK>
+DEE2 6E38 DEE2 <CJK>
+DEE3 6E82 DEE3 <CJK>
+DEE4 6EAA DEE4 <CJK>
+DEE5 6E98 DEE5 <CJK>
+DEE6 6EC9 DEE6 <CJK>
+DEE7 6EB7 DEE7 <CJK>
+DEE8 6ED3 DEE8 <CJK>
+DEE9 6EBD DEE9 <CJK>
+DEEA 6EAF DEEA <CJK>
+DEEB 6EC4 DEEB <CJK>
+DEEC 6EB2 DEEC <CJK>
+DEED 6ED4 DEED <CJK>
+DEEE 6ED5 DEEE <CJK>
+DEEF 6E8F DEEF <CJK>
+DEF0 6EA5 DEF0 <CJK>
+DEF1 6EC2 DEF1 <CJK>
+DEF2 6E9F DEF2 <CJK>
+DEF3 6F41 DEF3 <CJK>
+DEF4 6F11 DEF4 <CJK>
+DEF5 704C DEF5 <CJK>
+DEF6 6EEC DEF6 <CJK>
+DEF7 6EF8 DEF7 <CJK>
+DEF8 6EFE DEF8 <CJK>
+DEF9 6F3F DEF9 <CJK>
+DEFA 6EF2 DEFA <CJK>
+DEFB 6F31 DEFB <CJK>
+DEFC 6EEF DEFC <CJK>
+DEFD 6F32 DEFD <CJK>
+DEFE 6ECC DEFE <CJK>
+DFA1 6F3E DFA1 <CJK>
+DFA2 6F13 DFA2 <CJK>
+DFA3 6EF7 DFA3 <CJK>
+DFA4 6F86 DFA4 <CJK>
+DFA5 6F7A DFA5 <CJK>
+DFA6 6F78 DFA6 <CJK>
+DFA7 6F81 DFA7 <CJK>
+DFA8 6F80 DFA8 <CJK>
+DFA9 6F6F DFA9 <CJK>
+DFAA 6F5B DFAA <CJK>
+DFAB 6FF3 DFAB <CJK>
+DFAC 6F6D DFAC <CJK>
+DFAD 6F82 DFAD <CJK>
+DFAE 6F7C DFAE <CJK>
+DFAF 6F58 DFAF <CJK>
+DFB0 6F8E DFB0 <CJK>
+DFB1 6F91 DFB1 <CJK>
+DFB2 6FC2 DFB2 <CJK>
+DFB3 6F66 DFB3 <CJK>
+DFB4 6FB3 DFB4 <CJK>
+DFB5 6FA3 DFB5 <CJK>
+DFB6 6FA1 DFB6 <CJK>
+DFB7 6FA4 DFB7 <CJK>
+DFB8 6FB9 DFB8 <CJK>
+DFB9 6FC6 DFB9 <CJK>
+DFBA 6FAA DFBA <CJK>
+DFBB 6FDF DFBB <CJK>
+DFBC 6FD5 DFBC <CJK>
+DFBD 6FEC DFBD <CJK>
+DFBE 6FD4 DFBE <CJK>
+DFBF 6FD8 DFBF <CJK>
+DFC0 6FF1 DFC0 <CJK>
+DFC1 6FEE DFC1 <CJK>
+DFC2 6FDB DFC2 <CJK>
+DFC3 7009 DFC3 <CJK>
+DFC4 700B DFC4 <CJK>
+DFC5 6FFA DFC5 <CJK>
+DFC6 7011 DFC6 <CJK>
+DFC7 7001 DFC7 <CJK>
+DFC8 700F DFC8 <CJK>
+DFC9 6FFE DFC9 <CJK>
+DFCA 701B DFCA <CJK>
+DFCB 701A DFCB <CJK>
+DFCC 6F74 DFCC <CJK>
+DFCD 701D DFCD <CJK>
+DFCE 7018 DFCE <CJK>
+DFCF 701F DFCF <CJK>
+DFD0 7030 DFD0 <CJK>
+DFD1 703E DFD1 <CJK>
+DFD2 7032 DFD2 <CJK>
+DFD3 7051 DFD3 <CJK>
+DFD4 7063 DFD4 <CJK>
+DFD5 7099 DFD5 <CJK>
+DFD6 7092 DFD6 <CJK>
+DFD7 70AF DFD7 <CJK>
+DFD8 70F1 DFD8 <CJK>
+DFD9 70AC DFD9 <CJK>
+DFDA 70B8 DFDA <CJK>
+DFDB 70B3 DFDB <CJK>
+DFDC 70AE DFDC <CJK>
+DFDD 70DF DFDD <CJK>
+DFDE 70CB DFDE <CJK>
+DFDF 70DD DFDF <CJK>
+DFE0 70D9 DFE0 <CJK>
+DFE1 7109 DFE1 <CJK>
+DFE2 70FD DFE2 <CJK>
+DFE3 711C DFE3 <CJK>
+DFE4 7119 DFE4 <CJK>
+DFE5 7165 DFE5 <CJK>
+DFE6 7155 DFE6 <CJK>
+DFE7 7188 DFE7 <CJK>
+DFE8 7166 DFE8 <CJK>
+DFE9 7162 DFE9 <CJK>
+DFEA 714C DFEA <CJK>
+DFEB 7156 DFEB <CJK>
+DFEC 716C DFEC <CJK>
+DFED 718F DFED <CJK>
+DFEE 71FB DFEE <CJK>
+DFEF 7184 DFEF <CJK>
+DFF0 7195 DFF0 <CJK>
+DFF1 71A8 DFF1 <CJK>
+DFF2 71AC DFF2 <CJK>
+DFF3 71D7 DFF3 <CJK>
+DFF4 71B9 DFF4 <CJK>
+DFF5 71BE DFF5 <CJK>
+DFF6 71D2 DFF6 <CJK>
+DFF7 71C9 DFF7 <CJK>
+DFF8 71D4 DFF8 <CJK>
+DFF9 71CE DFF9 <CJK>
+DFFA 71E0 DFFA <CJK>
+DFFB 71EC DFFB <CJK>
+DFFC 71E7 DFFC <CJK>
+DFFD 71F5 DFFD <CJK>
+DFFE 71FC DFFE <CJK>
+E0A1 71F9 E0A1 <CJK>
+E0A2 71FF E0A2 <CJK>
+E0A3 720D E0A3 <CJK>
+E0A4 7210 E0A4 <CJK>
+E0A5 721B E0A5 <CJK>
+E0A6 7228 E0A6 <CJK>
+E0A7 722D E0A7 <CJK>
+E0A8 722C E0A8 <CJK>
+E0A9 7230 E0A9 <CJK>
+E0AA 7232 E0AA <CJK>
+E0AB 723B E0AB <CJK>
+E0AC 723C E0AC <CJK>
+E0AD 723F E0AD <CJK>
+E0AE 7240 E0AE <CJK>
+E0AF 7246 E0AF <CJK>
+E0B0 724B E0B0 <CJK>
+E0B1 7258 E0B1 <CJK>
+E0B2 7274 E0B2 <CJK>
+E0B3 727E E0B3 <CJK>
+E0B4 7282 E0B4 <CJK>
+E0B5 7281 E0B5 <CJK>
+E0B6 7287 E0B6 <CJK>
+E0B7 7292 E0B7 <CJK>
+E0B8 7296 E0B8 <CJK>
+E0B9 72A2 E0B9 <CJK>
+E0BA 72A7 E0BA <CJK>
+E0BB 72B9 E0BB <CJK>
+E0BC 72B2 E0BC <CJK>
+E0BD 72C3 E0BD <CJK>
+E0BE 72C6 E0BE <CJK>
+E0BF 72C4 E0BF <CJK>
+E0C0 72CE E0C0 <CJK>
+E0C1 72D2 E0C1 <CJK>
+E0C2 72E2 E0C2 <CJK>
+E0C3 72E0 E0C3 <CJK>
+E0C4 72E1 E0C4 <CJK>
+E0C5 72F9 E0C5 <CJK>
+E0C6 72F7 E0C6 <CJK>
+E0C7 500F E0C7 <CJK>
+E0C8 7317 E0C8 <CJK>
+E0C9 730A E0C9 <CJK>
+E0CA 731C E0CA <CJK>
+E0CB 7316 E0CB <CJK>
+E0CC 731D E0CC <CJK>
+E0CD 7334 E0CD <CJK>
+E0CE 732F E0CE <CJK>
+E0CF 7329 E0CF <CJK>
+E0D0 7325 E0D0 <CJK>
+E0D1 733E E0D1 <CJK>
+E0D2 734E E0D2 <CJK>
+E0D3 734F E0D3 <CJK>
+E0D4 9ED8 E0D4 <CJK>
+E0D5 7357 E0D5 <CJK>
+E0D6 736A E0D6 <CJK>
+E0D7 7368 E0D7 <CJK>
+E0D8 7370 E0D8 <CJK>
+E0D9 7378 E0D9 <CJK>
+E0DA 7375 E0DA <CJK>
+E0DB 737B E0DB <CJK>
+E0DC 737A E0DC <CJK>
+E0DD 73C8 E0DD <CJK>
+E0DE 73B3 E0DE <CJK>
+E0DF 73CE E0DF <CJK>
+E0E0 73BB E0E0 <CJK>
+E0E1 73C0 E0E1 <CJK>
+E0E2 73E5 E0E2 <CJK>
+E0E3 73EE E0E3 <CJK>
+E0E4 73DE E0E4 <CJK>
+E0E5 74A2 E0E5 <CJK>
+E0E6 7405 E0E6 <CJK>
+E0E7 746F E0E7 <CJK>
+E0E8 7425 E0E8 <CJK>
+E0E9 73F8 E0E9 <CJK>
+E0EA 7432 E0EA <CJK>
+E0EB 743A E0EB <CJK>
+E0EC 7455 E0EC <CJK>
+E0ED 743F E0ED <CJK>
+E0EE 745F E0EE <CJK>
+E0EF 7459 E0EF <CJK>
+E0F0 7441 E0F0 <CJK>
+E0F1 745C E0F1 <CJK>
+E0F2 7469 E0F2 <CJK>
+E0F3 7470 E0F3 <CJK>
+E0F4 7463 E0F4 <CJK>
+E0F5 746A E0F5 <CJK>
+E0F6 7476 E0F6 <CJK>
+E0F7 747E E0F7 <CJK>
+E0F8 748B E0F8 <CJK>
+E0F9 749E E0F9 <CJK>
+E0FA 74A7 E0FA <CJK>
+E0FB 74CA E0FB <CJK>
+E0FC 74CF E0FC <CJK>
+E0FD 74D4 E0FD <CJK>
+E0FE 73F1 E0FE <CJK>
+E1A1 74E0 E1A1 <CJK>
+E1A2 74E3 E1A2 <CJK>
+E1A3 74E7 E1A3 <CJK>
+E1A4 74E9 E1A4 <CJK>
+E1A5 74EE E1A5 <CJK>
+E1A6 74F2 E1A6 <CJK>
+E1A7 74F0 E1A7 <CJK>
+E1A8 74F1 E1A8 <CJK>
+E1A9 74F8 E1A9 <CJK>
+E1AA 74F7 E1AA <CJK>
+E1AB 7504 E1AB <CJK>
+E1AC 7503 E1AC <CJK>
+E1AD 7505 E1AD <CJK>
+E1AE 750C E1AE <CJK>
+E1AF 750E E1AF <CJK>
+E1B0 750D E1B0 <CJK>
+E1B1 7515 E1B1 <CJK>
+E1B2 7513 E1B2 <CJK>
+E1B3 751E E1B3 <CJK>
+E1B4 7526 E1B4 <CJK>
+E1B5 752C E1B5 <CJK>
+E1B6 753C E1B6 <CJK>
+E1B7 7544 E1B7 <CJK>
+E1B8 754D E1B8 <CJK>
+E1B9 754A E1B9 <CJK>
+E1BA 7549 E1BA <CJK>
+E1BB 755B E1BB <CJK>
+E1BC 7546 E1BC <CJK>
+E1BD 755A E1BD <CJK>
+E1BE 7569 E1BE <CJK>
+E1BF 7564 E1BF <CJK>
+E1C0 7567 E1C0 <CJK>
+E1C1 756B E1C1 <CJK>
+E1C2 756D E1C2 <CJK>
+E1C3 7578 E1C3 <CJK>
+E1C4 7576 E1C4 <CJK>
+E1C5 7586 E1C5 <CJK>
+E1C6 7587 E1C6 <CJK>
+E1C7 7574 E1C7 <CJK>
+E1C8 758A E1C8 <CJK>
+E1C9 7589 E1C9 <CJK>
+E1CA 7582 E1CA <CJK>
+E1CB 7594 E1CB <CJK>
+E1CC 759A E1CC <CJK>
+E1CD 759D E1CD <CJK>
+E1CE 75A5 E1CE <CJK>
+E1CF 75A3 E1CF <CJK>
+E1D0 75C2 E1D0 <CJK>
+E1D1 75B3 E1D1 <CJK>
+E1D2 75C3 E1D2 <CJK>
+E1D3 75B5 E1D3 <CJK>
+E1D4 75BD E1D4 <CJK>
+E1D5 75B8 E1D5 <CJK>
+E1D6 75BC E1D6 <CJK>
+E1D7 75B1 E1D7 <CJK>
+E1D8 75CD E1D8 <CJK>
+E1D9 75CA E1D9 <CJK>
+E1DA 75D2 E1DA <CJK>
+E1DB 75D9 E1DB <CJK>
+E1DC 75E3 E1DC <CJK>
+E1DD 75DE E1DD <CJK>
+E1DE 75FE E1DE <CJK>
+E1DF 75FF E1DF <CJK>
+E1E0 75FC E1E0 <CJK>
+E1E1 7601 E1E1 <CJK>
+E1E2 75F0 E1E2 <CJK>
+E1E3 75FA E1E3 <CJK>
+E1E4 75F2 E1E4 <CJK>
+E1E5 75F3 E1E5 <CJK>
+E1E6 760B E1E6 <CJK>
+E1E7 760D E1E7 <CJK>
+E1E8 7609 E1E8 <CJK>
+E1E9 761F E1E9 <CJK>
+E1EA 7627 E1EA <CJK>
+E1EB 7620 E1EB <CJK>
+E1EC 7621 E1EC <CJK>
+E1ED 7622 E1ED <CJK>
+E1EE 7624 E1EE <CJK>
+E1EF 7634 E1EF <CJK>
+E1F0 7630 E1F0 <CJK>
+E1F1 763B E1F1 <CJK>
+E1F2 7647 E1F2 <CJK>
+E1F3 7648 E1F3 <CJK>
+E1F4 7646 E1F4 <CJK>
+E1F5 765C E1F5 <CJK>
+E1F6 7658 E1F6 <CJK>
+E1F7 7661 E1F7 <CJK>
+E1F8 7662 E1F8 <CJK>
+E1F9 7668 E1F9 <CJK>
+E1FA 7669 E1FA <CJK>
+E1FB 766A E1FB <CJK>
+E1FC 7667 E1FC <CJK>
+E1FD 766C E1FD <CJK>
+E1FE 7670 E1FE <CJK>
+E2A1 7672 E2A1 <CJK>
+E2A2 7676 E2A2 <CJK>
+E2A3 7678 E2A3 <CJK>
+E2A4 767C E2A4 <CJK>
+E2A5 7680 E2A5 <CJK>
+E2A6 7683 E2A6 <CJK>
+E2A7 7688 E2A7 <CJK>
+E2A8 768B E2A8 <CJK>
+E2A9 768E E2A9 <CJK>
+E2AA 7696 E2AA <CJK>
+E2AB 7693 E2AB <CJK>
+E2AC 7699 E2AC <CJK>
+E2AD 769A E2AD <CJK>
+E2AE 76B0 E2AE <CJK>
+E2AF 76B4 E2AF <CJK>
+E2B0 76B8 E2B0 <CJK>
+E2B1 76B9 E2B1 <CJK>
+E2B2 76BA E2B2 <CJK>
+E2B3 76C2 E2B3 <CJK>
+E2B4 76CD E2B4 <CJK>
+E2B5 76D6 E2B5 <CJK>
+E2B6 76D2 E2B6 <CJK>
+E2B7 76DE E2B7 <CJK>
+E2B8 76E1 E2B8 <CJK>
+E2B9 76E5 E2B9 <CJK>
+E2BA 76E7 E2BA <CJK>
+E2BB 76EA E2BB <CJK>
+E2BC 862F E2BC <CJK>
+E2BD 76FB E2BD <CJK>
+E2BE 7708 E2BE <CJK>
+E2BF 7707 E2BF <CJK>
+E2C0 7704 E2C0 <CJK>
+E2C1 7729 E2C1 <CJK>
+E2C2 7724 E2C2 <CJK>
+E2C3 771E E2C3 <CJK>
+E2C4 7725 E2C4 <CJK>
+E2C5 7726 E2C5 <CJK>
+E2C6 771B E2C6 <CJK>
+E2C7 7737 E2C7 <CJK>
+E2C8 7738 E2C8 <CJK>
+E2C9 7747 E2C9 <CJK>
+E2CA 775A E2CA <CJK>
+E2CB 7768 E2CB <CJK>
+E2CC 776B E2CC <CJK>
+E2CD 775B E2CD <CJK>
+E2CE 7765 E2CE <CJK>
+E2CF 777F E2CF <CJK>
+E2D0 777E E2D0 <CJK>
+E2D1 7779 E2D1 <CJK>
+E2D2 778E E2D2 <CJK>
+E2D3 778B E2D3 <CJK>
+E2D4 7791 E2D4 <CJK>
+E2D5 77A0 E2D5 <CJK>
+E2D6 779E E2D6 <CJK>
+E2D7 77B0 E2D7 <CJK>
+E2D8 77B6 E2D8 <CJK>
+E2D9 77B9 E2D9 <CJK>
+E2DA 77BF E2DA <CJK>
+E2DB 77BC E2DB <CJK>
+E2DC 77BD E2DC <CJK>
+E2DD 77BB E2DD <CJK>
+E2DE 77C7 E2DE <CJK>
+E2DF 77CD E2DF <CJK>
+E2E0 77D7 E2E0 <CJK>
+E2E1 77DA E2E1 <CJK>
+E2E2 77DC E2E2 <CJK>
+E2E3 77E3 E2E3 <CJK>
+E2E4 77EE E2E4 <CJK>
+E2E5 77FC E2E5 <CJK>
+E2E6 780C E2E6 <CJK>
+E2E7 7812 E2E7 <CJK>
+E2E8 7926 E2E8 <CJK>
+E2E9 7820 E2E9 <CJK>
+E2EA 792A E2EA <CJK>
+E2EB 7845 E2EB <CJK>
+E2EC 788E E2EC <CJK>
+E2ED 7874 E2ED <CJK>
+E2EE 7886 E2EE <CJK>
+E2EF 787C E2EF <CJK>
+E2F0 789A E2F0 <CJK>
+E2F1 788C E2F1 <CJK>
+E2F2 78A3 E2F2 <CJK>
+E2F3 78B5 E2F3 <CJK>
+E2F4 78AA E2F4 <CJK>
+E2F5 78AF E2F5 <CJK>
+E2F6 78D1 E2F6 <CJK>
+E2F7 78C6 E2F7 <CJK>
+E2F8 78CB E2F8 <CJK>
+E2F9 78D4 E2F9 <CJK>
+E2FA 78BE E2FA <CJK>
+E2FB 78BC E2FB <CJK>
+E2FC 78C5 E2FC <CJK>
+E2FD 78CA E2FD <CJK>
+E2FE 78EC E2FE <CJK>
+E3A1 78E7 E3A1 <CJK>
+E3A2 78DA E3A2 <CJK>
+E3A3 78FD E3A3 <CJK>
+E3A4 78F4 E3A4 <CJK>
+E3A5 7907 E3A5 <CJK>
+E3A6 7912 E3A6 <CJK>
+E3A7 7911 E3A7 <CJK>
+E3A8 7919 E3A8 <CJK>
+E3A9 792C E3A9 <CJK>
+E3AA 792B E3AA <CJK>
+E3AB 7940 E3AB <CJK>
+E3AC 7960 E3AC <CJK>
+E3AD 7957 E3AD <CJK>
+E3AE 795F E3AE <CJK>
+E3AF 795A E3AF <CJK>
+E3B0 7955 E3B0 <CJK>
+E3B1 7953 E3B1 <CJK>
+E3B2 797A E3B2 <CJK>
+E3B3 797F E3B3 <CJK>
+E3B4 798A E3B4 <CJK>
+E3B5 799D E3B5 <CJK>
+E3B6 79A7 E3B6 <CJK>
+E3B7 9F4B E3B7 <CJK>
+E3B8 79AA E3B8 <CJK>
+E3B9 79AE E3B9 <CJK>
+E3BA 79B3 E3BA <CJK>
+E3BB 79B9 E3BB <CJK>
+E3BC 79BA E3BC <CJK>
+E3BD 79C9 E3BD <CJK>
+E3BE 79D5 E3BE <CJK>
+E3BF 79E7 E3BF <CJK>
+E3C0 79EC E3C0 <CJK>
+E3C1 79E1 E3C1 <CJK>
+E3C2 79E3 E3C2 <CJK>
+E3C3 7A08 E3C3 <CJK>
+E3C4 7A0D E3C4 <CJK>
+E3C5 7A18 E3C5 <CJK>
+E3C6 7A19 E3C6 <CJK>
+E3C7 7A20 E3C7 <CJK>
+E3C8 7A1F E3C8 <CJK>
+E3C9 7980 E3C9 <CJK>
+E3CA 7A31 E3CA <CJK>
+E3CB 7A3B E3CB <CJK>
+E3CC 7A3E E3CC <CJK>
+E3CD 7A37 E3CD <CJK>
+E3CE 7A43 E3CE <CJK>
+E3CF 7A57 E3CF <CJK>
+E3D0 7A49 E3D0 <CJK>
+E3D1 7A61 E3D1 <CJK>
+E3D2 7A62 E3D2 <CJK>
+E3D3 7A69 E3D3 <CJK>
+E3D4 9F9D E3D4 <CJK>
+E3D5 7A70 E3D5 <CJK>
+E3D6 7A79 E3D6 <CJK>
+E3D7 7A7D E3D7 <CJK>
+E3D8 7A88 E3D8 <CJK>
+E3D9 7A97 E3D9 <CJK>
+E3DA 7A95 E3DA <CJK>
+E3DB 7A98 E3DB <CJK>
+E3DC 7A96 E3DC <CJK>
+E3DD 7AA9 E3DD <CJK>
+E3DE 7AC8 E3DE <CJK>
+E3DF 7AB0 E3DF <CJK>
+E3E0 7AB6 E3E0 <CJK>
+E3E1 7AC5 E3E1 <CJK>
+E3E2 7AC4 E3E2 <CJK>
+E3E3 7ABF E3E3 <CJK>
+E3E4 9083 E3E4 <CJK>
+E3E5 7AC7 E3E5 <CJK>
+E3E6 7ACA E3E6 <CJK>
+E3E7 7ACD E3E7 <CJK>
+E3E8 7ACF E3E8 <CJK>
+E3E9 7AD5 E3E9 <CJK>
+E3EA 7AD3 E3EA <CJK>
+E3EB 7AD9 E3EB <CJK>
+E3EC 7ADA E3EC <CJK>
+E3ED 7ADD E3ED <CJK>
+E3EE 7AE1 E3EE <CJK>
+E3EF 7AE2 E3EF <CJK>
+E3F0 7AE6 E3F0 <CJK>
+E3F1 7AED E3F1 <CJK>
+E3F2 7AF0 E3F2 <CJK>
+E3F3 7B02 E3F3 <CJK>
+E3F4 7B0F E3F4 <CJK>
+E3F5 7B0A E3F5 <CJK>
+E3F6 7B06 E3F6 <CJK>
+E3F7 7B33 E3F7 <CJK>
+E3F8 7B18 E3F8 <CJK>
+E3F9 7B19 E3F9 <CJK>
+E3FA 7B1E E3FA <CJK>
+E3FB 7B35 E3FB <CJK>
+E3FC 7B28 E3FC <CJK>
+E3FD 7B36 E3FD <CJK>
+E3FE 7B50 E3FE <CJK>
+E4A1 7B7A E4A1 <CJK>
+E4A2 7B04 E4A2 <CJK>
+E4A3 7B4D E4A3 <CJK>
+E4A4 7B0B E4A4 <CJK>
+E4A5 7B4C E4A5 <CJK>
+E4A6 7B45 E4A6 <CJK>
+E4A7 7B75 E4A7 <CJK>
+E4A8 7B65 E4A8 <CJK>
+E4A9 7B74 E4A9 <CJK>
+E4AA 7B67 E4AA <CJK>
+E4AB 7B70 E4AB <CJK>
+E4AC 7B71 E4AC <CJK>
+E4AD 7B6C E4AD <CJK>
+E4AE 7B6E E4AE <CJK>
+E4AF 7B9D E4AF <CJK>
+E4B0 7B98 E4B0 <CJK>
+E4B1 7B9F E4B1 <CJK>
+E4B2 7B8D E4B2 <CJK>
+E4B3 7B9C E4B3 <CJK>
+E4B4 7B9A E4B4 <CJK>
+E4B5 7B8B E4B5 <CJK>
+E4B6 7B92 E4B6 <CJK>
+E4B7 7B8F E4B7 <CJK>
+E4B8 7B5D E4B8 <CJK>
+E4B9 7B99 E4B9 <CJK>
+E4BA 7BCB E4BA <CJK>
+E4BB 7BC1 E4BB <CJK>
+E4BC 7BCC E4BC <CJK>
+E4BD 7BCF E4BD <CJK>
+E4BE 7BB4 E4BE <CJK>
+E4BF 7BC6 E4BF <CJK>
+E4C0 7BDD E4C0 <CJK>
+E4C1 7BE9 E4C1 <CJK>
+E4C2 7C11 E4C2 <CJK>
+E4C3 7C14 E4C3 <CJK>
+E4C4 7BE6 E4C4 <CJK>
+E4C5 7BE5 E4C5 <CJK>
+E4C6 7C60 E4C6 <CJK>
+E4C7 7C00 E4C7 <CJK>
+E4C8 7C07 E4C8 <CJK>
+E4C9 7C13 E4C9 <CJK>
+E4CA 7BF3 E4CA <CJK>
+E4CB 7BF7 E4CB <CJK>
+E4CC 7C17 E4CC <CJK>
+E4CD 7C0D E4CD <CJK>
+E4CE 7BF6 E4CE <CJK>
+E4CF 7C23 E4CF <CJK>
+E4D0 7C27 E4D0 <CJK>
+E4D1 7C2A E4D1 <CJK>
+E4D2 7C1F E4D2 <CJK>
+E4D3 7C37 E4D3 <CJK>
+E4D4 7C2B E4D4 <CJK>
+E4D5 7C3D E4D5 <CJK>
+E4D6 7C4C E4D6 <CJK>
+E4D7 7C43 E4D7 <CJK>
+E4D8 7C54 E4D8 <CJK>
+E4D9 7C4F E4D9 <CJK>
+E4DA 7C40 E4DA <CJK>
+E4DB 7C50 E4DB <CJK>
+E4DC 7C58 E4DC <CJK>
+E4DD 7C5F E4DD <CJK>
+E4DE 7C64 E4DE <CJK>
+E4DF 7C56 E4DF <CJK>
+E4E0 7C65 E4E0 <CJK>
+E4E1 7C6C E4E1 <CJK>
+E4E2 7C75 E4E2 <CJK>
+E4E3 7C83 E4E3 <CJK>
+E4E4 7C90 E4E4 <CJK>
+E4E5 7CA4 E4E5 <CJK>
+E4E6 7CAD E4E6 <CJK>
+E4E7 7CA2 E4E7 <CJK>
+E4E8 7CAB E4E8 <CJK>
+E4E9 7CA1 E4E9 <CJK>
+E4EA 7CA8 E4EA <CJK>
+E4EB 7CB3 E4EB <CJK>
+E4EC 7CB2 E4EC <CJK>
+E4ED 7CB1 E4ED <CJK>
+E4EE 7CAE E4EE <CJK>
+E4EF 7CB9 E4EF <CJK>
+E4F0 7CBD E4F0 <CJK>
+E4F1 7CC0 E4F1 <CJK>
+E4F2 7CC5 E4F2 <CJK>
+E4F3 7CC2 E4F3 <CJK>
+E4F4 7CD8 E4F4 <CJK>
+E4F5 7CD2 E4F5 <CJK>
+E4F6 7CDC E4F6 <CJK>
+E4F7 7CE2 E4F7 <CJK>
+E4F8 9B3B E4F8 <CJK>
+E4F9 7CEF E4F9 <CJK>
+E4FA 7CF2 E4FA <CJK>
+E4FB 7CF4 E4FB <CJK>
+E4FC 7CF6 E4FC <CJK>
+E4FD 7CFA E4FD <CJK>
+E4FE 7D06 E4FE <CJK>
+E5A1 7D02 E5A1 <CJK>
+E5A2 7D1C E5A2 <CJK>
+E5A3 7D15 E5A3 <CJK>
+E5A4 7D0A E5A4 <CJK>
+E5A5 7D45 E5A5 <CJK>
+E5A6 7D4B E5A6 <CJK>
+E5A7 7D2E E5A7 <CJK>
+E5A8 7D32 E5A8 <CJK>
+E5A9 7D3F E5A9 <CJK>
+E5AA 7D35 E5AA <CJK>
+E5AB 7D46 E5AB <CJK>
+E5AC 7D73 E5AC <CJK>
+E5AD 7D56 E5AD <CJK>
+E5AE 7D4E E5AE <CJK>
+E5AF 7D72 E5AF <CJK>
+E5B0 7D68 E5B0 <CJK>
+E5B1 7D6E E5B1 <CJK>
+E5B2 7D4F E5B2 <CJK>
+E5B3 7D63 E5B3 <CJK>
+E5B4 7D93 E5B4 <CJK>
+E5B5 7D89 E5B5 <CJK>
+E5B6 7D5B E5B6 <CJK>
+E5B7 7D8F E5B7 <CJK>
+E5B8 7D7D E5B8 <CJK>
+E5B9 7D9B E5B9 <CJK>
+E5BA 7DBA E5BA <CJK>
+E5BB 7DAE E5BB <CJK>
+E5BC 7DA3 E5BC <CJK>
+E5BD 7DB5 E5BD <CJK>
+E5BE 7DC7 E5BE <CJK>
+E5BF 7DBD E5BF <CJK>
+E5C0 7DAB E5C0 <CJK>
+E5C1 7E3D E5C1 <CJK>
+E5C2 7DA2 E5C2 <CJK>
+E5C3 7DAF E5C3 <CJK>
+E5C4 7DDC E5C4 <CJK>
+E5C5 7DB8 E5C5 <CJK>
+E5C6 7D9F E5C6 <CJK>
+E5C7 7DB0 E5C7 <CJK>
+E5C8 7DD8 E5C8 <CJK>
+E5C9 7DDD E5C9 <CJK>
+E5CA 7DE4 E5CA <CJK>
+E5CB 7DDE E5CB <CJK>
+E5CC 7DFB E5CC <CJK>
+E5CD 7DF2 E5CD <CJK>
+E5CE 7DE1 E5CE <CJK>
+E5CF 7E05 E5CF <CJK>
+E5D0 7E0A E5D0 <CJK>
+E5D1 7E23 E5D1 <CJK>
+E5D2 7E21 E5D2 <CJK>
+E5D3 7E12 E5D3 <CJK>
+E5D4 7E31 E5D4 <CJK>
+E5D5 7E1F E5D5 <CJK>
+E5D6 7E09 E5D6 <CJK>
+E5D7 7E0B E5D7 <CJK>
+E5D8 7E22 E5D8 <CJK>
+E5D9 7E46 E5D9 <CJK>
+E5DA 7E66 E5DA <CJK>
+E5DB 7E3B E5DB <CJK>
+E5DC 7E35 E5DC <CJK>
+E5DD 7E39 E5DD <CJK>
+E5DE 7E43 E5DE <CJK>
+E5DF 7E37 E5DF <CJK>
+E5E0 7E32 E5E0 <CJK>
+E5E1 7E3A E5E1 <CJK>
+E5E2 7E67 E5E2 <CJK>
+E5E3 7E5D E5E3 <CJK>
+E5E4 7E56 E5E4 <CJK>
+E5E5 7E5E E5E5 <CJK>
+E5E6 7E59 E5E6 <CJK>
+E5E7 7E5A E5E7 <CJK>
+E5E8 7E79 E5E8 <CJK>
+E5E9 7E6A E5E9 <CJK>
+E5EA 7E69 E5EA <CJK>
+E5EB 7E7C E5EB <CJK>
+E5EC 7E7B E5EC <CJK>
+E5ED 7E83 E5ED <CJK>
+E5EE 7DD5 E5EE <CJK>
+E5EF 7E7D E5EF <CJK>
+E5F0 8FAE E5F0 <CJK>
+E5F1 7E7F E5F1 <CJK>
+E5F2 7E88 E5F2 <CJK>
+E5F3 7E89 E5F3 <CJK>
+E5F4 7E8C E5F4 <CJK>
+E5F5 7E92 E5F5 <CJK>
+E5F6 7E90 E5F6 <CJK>
+E5F7 7E93 E5F7 <CJK>
+E5F8 7E94 E5F8 <CJK>
+E5F9 7E96 E5F9 <CJK>
+E5FA 7E8E E5FA <CJK>
+E5FB 7E9B E5FB <CJK>
+E5FC 7E9C E5FC <CJK>
+E5FD 7F38 E5FD <CJK>
+E5FE 7F3A E5FE <CJK>
+E6A1 7F45 E6A1 <CJK>
+E6A2 7F4C E6A2 <CJK>
+E6A3 7F4D E6A3 <CJK>
+E6A4 7F4E E6A4 <CJK>
+E6A5 7F50 E6A5 <CJK>
+E6A6 7F51 E6A6 <CJK>
+E6A7 7F55 E6A7 <CJK>
+E6A8 7F54 E6A8 <CJK>
+E6A9 7F58 E6A9 <CJK>
+E6AA 7F5F E6AA <CJK>
+E6AB 7F60 E6AB <CJK>
+E6AC 7F68 E6AC <CJK>
+E6AD 7F69 E6AD <CJK>
+E6AE 7F67 E6AE <CJK>
+E6AF 7F78 E6AF <CJK>
+E6B0 7F82 E6B0 <CJK>
+E6B1 7F86 E6B1 <CJK>
+E6B2 7F83 E6B2 <CJK>
+E6B3 7F88 E6B3 <CJK>
+E6B4 7F87 E6B4 <CJK>
+E6B5 7F8C E6B5 <CJK>
+E6B6 7F94 E6B6 <CJK>
+E6B7 7F9E E6B7 <CJK>
+E6B8 7F9D E6B8 <CJK>
+E6B9 7F9A E6B9 <CJK>
+E6BA 7FA3 E6BA <CJK>
+E6BB 7FAF E6BB <CJK>
+E6BC 7FB2 E6BC <CJK>
+E6BD 7FB9 E6BD <CJK>
+E6BE 7FAE E6BE <CJK>
+E6BF 7FB6 E6BF <CJK>
+E6C0 7FB8 E6C0 <CJK>
+E6C1 8B71 E6C1 <CJK>
+E6C2 7FC5 E6C2 <CJK>
+E6C3 7FC6 E6C3 <CJK>
+E6C4 7FCA E6C4 <CJK>
+E6C5 7FD5 E6C5 <CJK>
+E6C6 7FD4 E6C6 <CJK>
+E6C7 7FE1 E6C7 <CJK>
+E6C8 7FE6 E6C8 <CJK>
+E6C9 7FE9 E6C9 <CJK>
+E6CA 7FF3 E6CA <CJK>
+E6CB 7FF9 E6CB <CJK>
+E6CC 98DC E6CC <CJK>
+E6CD 8006 E6CD <CJK>
+E6CE 8004 E6CE <CJK>
+E6CF 800B E6CF <CJK>
+E6D0 8012 E6D0 <CJK>
+E6D1 8018 E6D1 <CJK>
+E6D2 8019 E6D2 <CJK>
+E6D3 801C E6D3 <CJK>
+E6D4 8021 E6D4 <CJK>
+E6D5 8028 E6D5 <CJK>
+E6D6 803F E6D6 <CJK>
+E6D7 803B E6D7 <CJK>
+E6D8 804A E6D8 <CJK>
+E6D9 8046 E6D9 <CJK>
+E6DA 8052 E6DA <CJK>
+E6DB 8058 E6DB <CJK>
+E6DC 805A E6DC <CJK>
+E6DD 805F E6DD <CJK>
+E6DE 8062 E6DE <CJK>
+E6DF 8068 E6DF <CJK>
+E6E0 8073 E6E0 <CJK>
+E6E1 8072 E6E1 <CJK>
+E6E2 8070 E6E2 <CJK>
+E6E3 8076 E6E3 <CJK>
+E6E4 8079 E6E4 <CJK>
+E6E5 807D E6E5 <CJK>
+E6E6 807F E6E6 <CJK>
+E6E7 8084 E6E7 <CJK>
+E6E8 8086 E6E8 <CJK>
+E6E9 8085 E6E9 <CJK>
+E6EA 809B E6EA <CJK>
+E6EB 8093 E6EB <CJK>
+E6EC 809A E6EC <CJK>
+E6ED 80AD E6ED <CJK>
+E6EE 5190 E6EE <CJK>
+E6EF 80AC E6EF <CJK>
+E6F0 80DB E6F0 <CJK>
+E6F1 80E5 E6F1 <CJK>
+E6F2 80D9 E6F2 <CJK>
+E6F3 80DD E6F3 <CJK>
+E6F4 80C4 E6F4 <CJK>
+E6F5 80DA E6F5 <CJK>
+E6F6 80D6 E6F6 <CJK>
+E6F7 8109 E6F7 <CJK>
+E6F8 80EF E6F8 <CJK>
+E6F9 80F1 E6F9 <CJK>
+E6FA 811B E6FA <CJK>
+E6FB 8129 E6FB <CJK>
+E6FC 8123 E6FC <CJK>
+E6FD 812F E6FD <CJK>
+E6FE 814B E6FE <CJK>
+E7A1 968B E7A1 <CJK>
+E7A2 8146 E7A2 <CJK>
+E7A3 813E E7A3 <CJK>
+E7A4 8153 E7A4 <CJK>
+E7A5 8151 E7A5 <CJK>
+E7A6 80FC E7A6 <CJK>
+E7A7 8171 E7A7 <CJK>
+E7A8 816E E7A8 <CJK>
+E7A9 8165 E7A9 <CJK>
+E7AA 8166 E7AA <CJK>
+E7AB 8174 E7AB <CJK>
+E7AC 8183 E7AC <CJK>
+E7AD 8188 E7AD <CJK>
+E7AE 818A E7AE <CJK>
+E7AF 8180 E7AF <CJK>
+E7B0 8182 E7B0 <CJK>
+E7B1 81A0 E7B1 <CJK>
+E7B2 8195 E7B2 <CJK>
+E7B3 81A4 E7B3 <CJK>
+E7B4 81A3 E7B4 <CJK>
+E7B5 815F E7B5 <CJK>
+E7B6 8193 E7B6 <CJK>
+E7B7 81A9 E7B7 <CJK>
+E7B8 81B0 E7B8 <CJK>
+E7B9 81B5 E7B9 <CJK>
+E7BA 81BE E7BA <CJK>
+E7BB 81B8 E7BB <CJK>
+E7BC 81BD E7BC <CJK>
+E7BD 81C0 E7BD <CJK>
+E7BE 81C2 E7BE <CJK>
+E7BF 81BA E7BF <CJK>
+E7C0 81C9 E7C0 <CJK>
+E7C1 81CD E7C1 <CJK>
+E7C2 81D1 E7C2 <CJK>
+E7C3 81D9 E7C3 <CJK>
+E7C4 81D8 E7C4 <CJK>
+E7C5 81C8 E7C5 <CJK>
+E7C6 81DA E7C6 <CJK>
+E7C7 81DF E7C7 <CJK>
+E7C8 81E0 E7C8 <CJK>
+E7C9 81E7 E7C9 <CJK>
+E7CA 81FA E7CA <CJK>
+E7CB 81FB E7CB <CJK>
+E7CC 81FE E7CC <CJK>
+E7CD 8201 E7CD <CJK>
+E7CE 8202 E7CE <CJK>
+E7CF 8205 E7CF <CJK>
+E7D0 8207 E7D0 <CJK>
+E7D1 820A E7D1 <CJK>
+E7D2 820D E7D2 <CJK>
+E7D3 8210 E7D3 <CJK>
+E7D4 8216 E7D4 <CJK>
+E7D5 8229 E7D5 <CJK>
+E7D6 822B E7D6 <CJK>
+E7D7 8238 E7D7 <CJK>
+E7D8 8233 E7D8 <CJK>
+E7D9 8240 E7D9 <CJK>
+E7DA 8259 E7DA <CJK>
+E7DB 8258 E7DB <CJK>
+E7DC 825D E7DC <CJK>
+E7DD 825A E7DD <CJK>
+E7DE 825F E7DE <CJK>
+E7DF 8264 E7DF <CJK>
+E7E0 8262 E7E0 <CJK>
+E7E1 8268 E7E1 <CJK>
+E7E2 826A E7E2 <CJK>
+E7E3 826B E7E3 <CJK>
+E7E4 822E E7E4 <CJK>
+E7E5 8271 E7E5 <CJK>
+E7E6 8277 E7E6 <CJK>
+E7E7 8278 E7E7 <CJK>
+E7E8 827E E7E8 <CJK>
+E7E9 828D E7E9 <CJK>
+E7EA 8292 E7EA <CJK>
+E7EB 82AB E7EB <CJK>
+E7EC 829F E7EC <CJK>
+E7ED 82BB E7ED <CJK>
+E7EE 82AC E7EE <CJK>
+E7EF 82E1 E7EF <CJK>
+E7F0 82E3 E7F0 <CJK>
+E7F1 82DF E7F1 <CJK>
+E7F2 82D2 E7F2 <CJK>
+E7F3 82F4 E7F3 <CJK>
+E7F4 82F3 E7F4 <CJK>
+E7F5 82FA E7F5 <CJK>
+E7F6 8393 E7F6 <CJK>
+E7F7 8303 E7F7 <CJK>
+E7F8 82FB E7F8 <CJK>
+E7F9 82F9 E7F9 <CJK>
+E7FA 82DE E7FA <CJK>
+E7FB 8306 E7FB <CJK>
+E7FC 82DC E7FC <CJK>
+E7FD 8309 E7FD <CJK>
+E7FE 82D9 E7FE <CJK>
+E8A1 8335 E8A1 <CJK>
+E8A2 8334 E8A2 <CJK>
+E8A3 8316 E8A3 <CJK>
+E8A4 8332 E8A4 <CJK>
+E8A5 8331 E8A5 <CJK>
+E8A6 8340 E8A6 <CJK>
+E8A7 8339 E8A7 <CJK>
+E8A8 8350 E8A8 <CJK>
+E8A9 8345 E8A9 <CJK>
+E8AA 832F E8AA <CJK>
+E8AB 832B E8AB <CJK>
+E8AC 8317 E8AC <CJK>
+E8AD 8318 E8AD <CJK>
+E8AE 8385 E8AE <CJK>
+E8AF 839A E8AF <CJK>
+E8B0 83AA E8B0 <CJK>
+E8B1 839F E8B1 <CJK>
+E8B2 83A2 E8B2 <CJK>
+E8B3 8396 E8B3 <CJK>
+E8B4 8323 E8B4 <CJK>
+E8B5 838E E8B5 <CJK>
+E8B6 8387 E8B6 <CJK>
+E8B7 838A E8B7 <CJK>
+E8B8 837C E8B8 <CJK>
+E8B9 83B5 E8B9 <CJK>
+E8BA 8373 E8BA <CJK>
+E8BB 8375 E8BB <CJK>
+E8BC 83A0 E8BC <CJK>
+E8BD 8389 E8BD <CJK>
+E8BE 83A8 E8BE <CJK>
+E8BF 83F4 E8BF <CJK>
+E8C0 8413 E8C0 <CJK>
+E8C1 83EB E8C1 <CJK>
+E8C2 83CE E8C2 <CJK>
+E8C3 83FD E8C3 <CJK>
+E8C4 8403 E8C4 <CJK>
+E8C5 83D8 E8C5 <CJK>
+E8C6 840B E8C6 <CJK>
+E8C7 83C1 E8C7 <CJK>
+E8C8 83F7 E8C8 <CJK>
+E8C9 8407 E8C9 <CJK>
+E8CA 83E0 E8CA <CJK>
+E8CB 83F2 E8CB <CJK>
+E8CC 840D E8CC <CJK>
+E8CD 8422 E8CD <CJK>
+E8CE 8420 E8CE <CJK>
+E8CF 83BD E8CF <CJK>
+E8D0 8438 E8D0 <CJK>
+E8D1 8506 E8D1 <CJK>
+E8D2 83FB E8D2 <CJK>
+E8D3 846D E8D3 <CJK>
+E8D4 842A E8D4 <CJK>
+E8D5 843C E8D5 <CJK>
+E8D6 855A E8D6 <CJK>
+E8D7 8484 E8D7 <CJK>
+E8D8 8477 E8D8 <CJK>
+E8D9 846B E8D9 <CJK>
+E8DA 84AD E8DA <CJK>
+E8DB 846E E8DB <CJK>
+E8DC 8482 E8DC <CJK>
+E8DD 8469 E8DD <CJK>
+E8DE 8446 E8DE <CJK>
+E8DF 842C E8DF <CJK>
+E8E0 846F E8E0 <CJK>
+E8E1 8479 E8E1 <CJK>
+E8E2 8435 E8E2 <CJK>
+E8E3 84CA E8E3 <CJK>
+E8E4 8462 E8E4 <CJK>
+E8E5 84B9 E8E5 <CJK>
+E8E6 84BF E8E6 <CJK>
+E8E7 849F E8E7 <CJK>
+E8E8 84D9 E8E8 <CJK>
+E8E9 84CD E8E9 <CJK>
+E8EA 84BB E8EA <CJK>
+E8EB 84DA E8EB <CJK>
+E8EC 84D0 E8EC <CJK>
+E8ED 84C1 E8ED <CJK>
+E8EE 84C6 E8EE <CJK>
+E8EF 84D6 E8EF <CJK>
+E8F0 84A1 E8F0 <CJK>
+E8F1 8521 E8F1 <CJK>
+E8F2 84FF E8F2 <CJK>
+E8F3 84F4 E8F3 <CJK>
+E8F4 8517 E8F4 <CJK>
+E8F5 8518 E8F5 <CJK>
+E8F6 852C E8F6 <CJK>
+E8F7 851F E8F7 <CJK>
+E8F8 8515 E8F8 <CJK>
+E8F9 8514 E8F9 <CJK>
+E8FA 84FC E8FA <CJK>
+E8FB 8540 E8FB <CJK>
+E8FC 8563 E8FC <CJK>
+E8FD 8558 E8FD <CJK>
+E8FE 8548 E8FE <CJK>
+E9A1 8541 E9A1 <CJK>
+E9A2 8602 E9A2 <CJK>
+E9A3 854B E9A3 <CJK>
+E9A4 8555 E9A4 <CJK>
+E9A5 8580 E9A5 <CJK>
+E9A6 85A4 E9A6 <CJK>
+E9A7 8588 E9A7 <CJK>
+E9A8 8591 E9A8 <CJK>
+E9A9 858A E9A9 <CJK>
+E9AA 85A8 E9AA <CJK>
+E9AB 856D E9AB <CJK>
+E9AC 8594 E9AC <CJK>
+E9AD 859B E9AD <CJK>
+E9AE 85EA E9AE <CJK>
+E9AF 8587 E9AF <CJK>
+E9B0 859C E9B0 <CJK>
+E9B1 8577 E9B1 <CJK>
+E9B2 857E E9B2 <CJK>
+E9B3 8590 E9B3 <CJK>
+E9B4 85C9 E9B4 <CJK>
+E9B5 85BA E9B5 <CJK>
+E9B6 85CF E9B6 <CJK>
+E9B7 85B9 E9B7 <CJK>
+E9B8 85D0 E9B8 <CJK>
+E9B9 85D5 E9B9 <CJK>
+E9BA 85DD E9BA <CJK>
+E9BB 85E5 E9BB <CJK>
+E9BC 85DC E9BC <CJK>
+E9BD 85F9 E9BD <CJK>
+E9BE 860A E9BE <CJK>
+E9BF 8613 E9BF <CJK>
+E9C0 860B E9C0 <CJK>
+E9C1 85FE E9C1 <CJK>
+E9C2 85FA E9C2 <CJK>
+E9C3 8606 E9C3 <CJK>
+E9C4 8622 E9C4 <CJK>
+E9C5 861A E9C5 <CJK>
+E9C6 8630 E9C6 <CJK>
+E9C7 863F E9C7 <CJK>
+E9C8 864D E9C8 <CJK>
+E9C9 4E55 E9C9 <CJK>
+E9CA 8654 E9CA <CJK>
+E9CB 865F E9CB <CJK>
+E9CC 8667 E9CC <CJK>
+E9CD 8671 E9CD <CJK>
+E9CE 8693 E9CE <CJK>
+E9CF 86A3 E9CF <CJK>
+E9D0 86A9 E9D0 <CJK>
+E9D1 86AA E9D1 <CJK>
+E9D2 868B E9D2 <CJK>
+E9D3 868C E9D3 <CJK>
+E9D4 86B6 E9D4 <CJK>
+E9D5 86AF E9D5 <CJK>
+E9D6 86C4 E9D6 <CJK>
+E9D7 86C6 E9D7 <CJK>
+E9D8 86B0 E9D8 <CJK>
+E9D9 86C9 E9D9 <CJK>
+E9DA 8823 E9DA <CJK>
+E9DB 86AB E9DB <CJK>
+E9DC 86D4 E9DC <CJK>
+E9DD 86DE E9DD <CJK>
+E9DE 86E9 E9DE <CJK>
+E9DF 86EC E9DF <CJK>
+E9E0 86DF E9E0 <CJK>
+E9E1 86DB E9E1 <CJK>
+E9E2 86EF E9E2 <CJK>
+E9E3 8712 E9E3 <CJK>
+E9E4 8706 E9E4 <CJK>
+E9E5 8708 E9E5 <CJK>
+E9E6 8700 E9E6 <CJK>
+E9E7 8703 E9E7 <CJK>
+E9E8 86FB E9E8 <CJK>
+E9E9 8711 E9E9 <CJK>
+E9EA 8709 E9EA <CJK>
+E9EB 870D E9EB <CJK>
+E9EC 86F9 E9EC <CJK>
+E9ED 870A E9ED <CJK>
+E9EE 8734 E9EE <CJK>
+E9EF 873F E9EF <CJK>
+E9F0 8737 E9F0 <CJK>
+E9F1 873B E9F1 <CJK>
+E9F2 8725 E9F2 <CJK>
+E9F3 8729 E9F3 <CJK>
+E9F4 871A E9F4 <CJK>
+E9F5 8760 E9F5 <CJK>
+E9F6 875F E9F6 <CJK>
+E9F7 8778 E9F7 <CJK>
+E9F8 874C E9F8 <CJK>
+E9F9 874E E9F9 <CJK>
+E9FA 8774 E9FA <CJK>
+E9FB 8757 E9FB <CJK>
+E9FC 8768 E9FC <CJK>
+E9FD 876E E9FD <CJK>
+E9FE 8759 E9FE <CJK>
+EAA1 8753 EAA1 <CJK>
+EAA2 8763 EAA2 <CJK>
+EAA3 876A EAA3 <CJK>
+EAA4 8805 EAA4 <CJK>
+EAA5 87A2 EAA5 <CJK>
+EAA6 879F EAA6 <CJK>
+EAA7 8782 EAA7 <CJK>
+EAA8 87AF EAA8 <CJK>
+EAA9 87CB EAA9 <CJK>
+EAAA 87BD EAAA <CJK>
+EAAB 87C0 EAAB <CJK>
+EAAC 87D0 EAAC <CJK>
+EAAD 96D6 EAAD <CJK>
+EAAE 87AB EAAE <CJK>
+EAAF 87C4 EAAF <CJK>
+EAB0 87B3 EAB0 <CJK>
+EAB1 87C7 EAB1 <CJK>
+EAB2 87C6 EAB2 <CJK>
+EAB3 87BB EAB3 <CJK>
+EAB4 87EF EAB4 <CJK>
+EAB5 87F2 EAB5 <CJK>
+EAB6 87E0 EAB6 <CJK>
+EAB7 880F EAB7 <CJK>
+EAB8 880D EAB8 <CJK>
+EAB9 87FE EAB9 <CJK>
+EABA 87F6 EABA <CJK>
+EABB 87F7 EABB <CJK>
+EABC 880E EABC <CJK>
+EABD 87D2 EABD <CJK>
+EABE 8811 EABE <CJK>
+EABF 8816 EABF <CJK>
+EAC0 8815 EAC0 <CJK>
+EAC1 8822 EAC1 <CJK>
+EAC2 8821 EAC2 <CJK>
+EAC3 8831 EAC3 <CJK>
+EAC4 8836 EAC4 <CJK>
+EAC5 8839 EAC5 <CJK>
+EAC6 8827 EAC6 <CJK>
+EAC7 883B EAC7 <CJK>
+EAC8 8844 EAC8 <CJK>
+EAC9 8842 EAC9 <CJK>
+EACA 8852 EACA <CJK>
+EACB 8859 EACB <CJK>
+EACC 885E EACC <CJK>
+EACD 8862 EACD <CJK>
+EACE 886B EACE <CJK>
+EACF 8881 EACF <CJK>
+EAD0 887E EAD0 <CJK>
+EAD1 889E EAD1 <CJK>
+EAD2 8875 EAD2 <CJK>
+EAD3 887D EAD3 <CJK>
+EAD4 88B5 EAD4 <CJK>
+EAD5 8872 EAD5 <CJK>
+EAD6 8882 EAD6 <CJK>
+EAD7 8897 EAD7 <CJK>
+EAD8 8892 EAD8 <CJK>
+EAD9 88AE EAD9 <CJK>
+EADA 8899 EADA <CJK>
+EADB 88A2 EADB <CJK>
+EADC 888D EADC <CJK>
+EADD 88A4 EADD <CJK>
+EADE 88B0 EADE <CJK>
+EADF 88BF EADF <CJK>
+EAE0 88B1 EAE0 <CJK>
+EAE1 88C3 EAE1 <CJK>
+EAE2 88C4 EAE2 <CJK>
+EAE3 88D4 EAE3 <CJK>
+EAE4 88D8 EAE4 <CJK>
+EAE5 88D9 EAE5 <CJK>
+EAE6 88DD EAE6 <CJK>
+EAE7 88F9 EAE7 <CJK>
+EAE8 8902 EAE8 <CJK>
+EAE9 88FC EAE9 <CJK>
+EAEA 88F4 EAEA <CJK>
+EAEB 88E8 EAEB <CJK>
+EAEC 88F2 EAEC <CJK>
+EAED 8904 EAED <CJK>
+EAEE 890C EAEE <CJK>
+EAEF 890A EAEF <CJK>
+EAF0 8913 EAF0 <CJK>
+EAF1 8943 EAF1 <CJK>
+EAF2 891E EAF2 <CJK>
+EAF3 8925 EAF3 <CJK>
+EAF4 892A EAF4 <CJK>
+EAF5 892B EAF5 <CJK>
+EAF6 8941 EAF6 <CJK>
+EAF7 8944 EAF7 <CJK>
+EAF8 893B EAF8 <CJK>
+EAF9 8936 EAF9 <CJK>
+EAFA 8938 EAFA <CJK>
+EAFB 894C EAFB <CJK>
+EAFC 891D EAFC <CJK>
+EAFD 8960 EAFD <CJK>
+EAFE 895E EAFE <CJK>
+EBA1 8966 EBA1 <CJK>
+EBA2 8964 EBA2 <CJK>
+EBA3 896D EBA3 <CJK>
+EBA4 896A EBA4 <CJK>
+EBA5 896F EBA5 <CJK>
+EBA6 8974 EBA6 <CJK>
+EBA7 8977 EBA7 <CJK>
+EBA8 897E EBA8 <CJK>
+EBA9 8983 EBA9 <CJK>
+EBAA 8988 EBAA <CJK>
+EBAB 898A EBAB <CJK>
+EBAC 8993 EBAC <CJK>
+EBAD 8998 EBAD <CJK>
+EBAE 89A1 EBAE <CJK>
+EBAF 89A9 EBAF <CJK>
+EBB0 89A6 EBB0 <CJK>
+EBB1 89AC EBB1 <CJK>
+EBB2 89AF EBB2 <CJK>
+EBB3 89B2 EBB3 <CJK>
+EBB4 89BA EBB4 <CJK>
+EBB5 89BD EBB5 <CJK>
+EBB6 89BF EBB6 <CJK>
+EBB7 89C0 EBB7 <CJK>
+EBB8 89DA EBB8 <CJK>
+EBB9 89DC EBB9 <CJK>
+EBBA 89DD EBBA <CJK>
+EBBB 89E7 EBBB <CJK>
+EBBC 89F4 EBBC <CJK>
+EBBD 89F8 EBBD <CJK>
+EBBE 8A03 EBBE <CJK>
+EBBF 8A16 EBBF <CJK>
+EBC0 8A10 EBC0 <CJK>
+EBC1 8A0C EBC1 <CJK>
+EBC2 8A1B EBC2 <CJK>
+EBC3 8A1D EBC3 <CJK>
+EBC4 8A25 EBC4 <CJK>
+EBC5 8A36 EBC5 <CJK>
+EBC6 8A41 EBC6 <CJK>
+EBC7 8A5B EBC7 <CJK>
+EBC8 8A52 EBC8 <CJK>
+EBC9 8A46 EBC9 <CJK>
+EBCA 8A48 EBCA <CJK>
+EBCB 8A7C EBCB <CJK>
+EBCC 8A6D EBCC <CJK>
+EBCD 8A6C EBCD <CJK>
+EBCE 8A62 EBCE <CJK>
+EBCF 8A85 EBCF <CJK>
+EBD0 8A82 EBD0 <CJK>
+EBD1 8A84 EBD1 <CJK>
+EBD2 8AA8 EBD2 <CJK>
+EBD3 8AA1 EBD3 <CJK>
+EBD4 8A91 EBD4 <CJK>
+EBD5 8AA5 EBD5 <CJK>
+EBD6 8AA6 EBD6 <CJK>
+EBD7 8A9A EBD7 <CJK>
+EBD8 8AA3 EBD8 <CJK>
+EBD9 8AC4 EBD9 <CJK>
+EBDA 8ACD EBDA <CJK>
+EBDB 8AC2 EBDB <CJK>
+EBDC 8ADA EBDC <CJK>
+EBDD 8AEB EBDD <CJK>
+EBDE 8AF3 EBDE <CJK>
+EBDF 8AE7 EBDF <CJK>
+EBE0 8AE4 EBE0 <CJK>
+EBE1 8AF1 EBE1 <CJK>
+EBE2 8B14 EBE2 <CJK>
+EBE3 8AE0 EBE3 <CJK>
+EBE4 8AE2 EBE4 <CJK>
+EBE5 8AF7 EBE5 <CJK>
+EBE6 8ADE EBE6 <CJK>
+EBE7 8ADB EBE7 <CJK>
+EBE8 8B0C EBE8 <CJK>
+EBE9 8B07 EBE9 <CJK>
+EBEA 8B1A EBEA <CJK>
+EBEB 8AE1 EBEB <CJK>
+EBEC 8B16 EBEC <CJK>
+EBED 8B10 EBED <CJK>
+EBEE 8B17 EBEE <CJK>
+EBEF 8B20 EBEF <CJK>
+EBF0 8B33 EBF0 <CJK>
+EBF1 97AB EBF1 <CJK>
+EBF2 8B26 EBF2 <CJK>
+EBF3 8B2B EBF3 <CJK>
+EBF4 8B3E EBF4 <CJK>
+EBF5 8B28 EBF5 <CJK>
+EBF6 8B41 EBF6 <CJK>
+EBF7 8B4C EBF7 <CJK>
+EBF8 8B4F EBF8 <CJK>
+EBF9 8B4E EBF9 <CJK>
+EBFA 8B49 EBFA <CJK>
+EBFB 8B56 EBFB <CJK>
+EBFC 8B5B EBFC <CJK>
+EBFD 8B5A EBFD <CJK>
+EBFE 8B6B EBFE <CJK>
+ECA1 8B5F ECA1 <CJK>
+ECA2 8B6C ECA2 <CJK>
+ECA3 8B6F ECA3 <CJK>
+ECA4 8B74 ECA4 <CJK>
+ECA5 8B7D ECA5 <CJK>
+ECA6 8B80 ECA6 <CJK>
+ECA7 8B8C ECA7 <CJK>
+ECA8 8B8E ECA8 <CJK>
+ECA9 8B92 ECA9 <CJK>
+ECAA 8B93 ECAA <CJK>
+ECAB 8B96 ECAB <CJK>
+ECAC 8B99 ECAC <CJK>
+ECAD 8B9A ECAD <CJK>
+ECAE 8C3A ECAE <CJK>
+ECAF 8C41 ECAF <CJK>
+ECB0 8C3F ECB0 <CJK>
+ECB1 8C48 ECB1 <CJK>
+ECB2 8C4C ECB2 <CJK>
+ECB3 8C4E ECB3 <CJK>
+ECB4 8C50 ECB4 <CJK>
+ECB5 8C55 ECB5 <CJK>
+ECB6 8C62 ECB6 <CJK>
+ECB7 8C6C ECB7 <CJK>
+ECB8 8C78 ECB8 <CJK>
+ECB9 8C7A ECB9 <CJK>
+ECBA 8C82 ECBA <CJK>
+ECBB 8C89 ECBB <CJK>
+ECBC 8C85 ECBC <CJK>
+ECBD 8C8A ECBD <CJK>
+ECBE 8C8D ECBE <CJK>
+ECBF 8C8E ECBF <CJK>
+ECC0 8C94 ECC0 <CJK>
+ECC1 8C7C ECC1 <CJK>
+ECC2 8C98 ECC2 <CJK>
+ECC3 621D ECC3 <CJK>
+ECC4 8CAD ECC4 <CJK>
+ECC5 8CAA ECC5 <CJK>
+ECC6 8CBD ECC6 <CJK>
+ECC7 8CB2 ECC7 <CJK>
+ECC8 8CB3 ECC8 <CJK>
+ECC9 8CAE ECC9 <CJK>
+ECCA 8CB6 ECCA <CJK>
+ECCB 8CC8 ECCB <CJK>
+ECCC 8CC1 ECCC <CJK>
+ECCD 8CE4 ECCD <CJK>
+ECCE 8CE3 ECCE <CJK>
+ECCF 8CDA ECCF <CJK>
+ECD0 8CFD ECD0 <CJK>
+ECD1 8CFA ECD1 <CJK>
+ECD2 8CFB ECD2 <CJK>
+ECD3 8D04 ECD3 <CJK>
+ECD4 8D05 ECD4 <CJK>
+ECD5 8D0A ECD5 <CJK>
+ECD6 8D07 ECD6 <CJK>
+ECD7 8D0F ECD7 <CJK>
+ECD8 8D0D ECD8 <CJK>
+ECD9 8D10 ECD9 <CJK>
+ECDA 9F4E ECDA <CJK>
+ECDB 8D13 ECDB <CJK>
+ECDC 8CCD ECDC <CJK>
+ECDD 8D14 ECDD <CJK>
+ECDE 8D16 ECDE <CJK>
+ECDF 8D67 ECDF <CJK>
+ECE0 8D6D ECE0 <CJK>
+ECE1 8D71 ECE1 <CJK>
+ECE2 8D73 ECE2 <CJK>
+ECE3 8D81 ECE3 <CJK>
+ECE4 8D99 ECE4 <CJK>
+ECE5 8DC2 ECE5 <CJK>
+ECE6 8DBE ECE6 <CJK>
+ECE7 8DBA ECE7 <CJK>
+ECE8 8DCF ECE8 <CJK>
+ECE9 8DDA ECE9 <CJK>
+ECEA 8DD6 ECEA <CJK>
+ECEB 8DCC ECEB <CJK>
+ECEC 8DDB ECEC <CJK>
+ECED 8DCB ECED <CJK>
+ECEE 8DEA ECEE <CJK>
+ECEF 8DEB ECEF <CJK>
+ECF0 8DDF ECF0 <CJK>
+ECF1 8DE3 ECF1 <CJK>
+ECF2 8DFC ECF2 <CJK>
+ECF3 8E08 ECF3 <CJK>
+ECF4 8E09 ECF4 <CJK>
+ECF5 8DFF ECF5 <CJK>
+ECF6 8E1D ECF6 <CJK>
+ECF7 8E1E ECF7 <CJK>
+ECF8 8E10 ECF8 <CJK>
+ECF9 8E1F ECF9 <CJK>
+ECFA 8E42 ECFA <CJK>
+ECFB 8E35 ECFB <CJK>
+ECFC 8E30 ECFC <CJK>
+ECFD 8E34 ECFD <CJK>
+ECFE 8E4A ECFE <CJK>
+EDA1 8E47 EDA1 <CJK>
+EDA2 8E49 EDA2 <CJK>
+EDA3 8E4C EDA3 <CJK>
+EDA4 8E50 EDA4 <CJK>
+EDA5 8E48 EDA5 <CJK>
+EDA6 8E59 EDA6 <CJK>
+EDA7 8E64 EDA7 <CJK>
+EDA8 8E60 EDA8 <CJK>
+EDA9 8E2A EDA9 <CJK>
+EDAA 8E63 EDAA <CJK>
+EDAB 8E55 EDAB <CJK>
+EDAC 8E76 EDAC <CJK>
+EDAD 8E72 EDAD <CJK>
+EDAE 8E7C EDAE <CJK>
+EDAF 8E81 EDAF <CJK>
+EDB0 8E87 EDB0 <CJK>
+EDB1 8E85 EDB1 <CJK>
+EDB2 8E84 EDB2 <CJK>
+EDB3 8E8B EDB3 <CJK>
+EDB4 8E8A EDB4 <CJK>
+EDB5 8E93 EDB5 <CJK>
+EDB6 8E91 EDB6 <CJK>
+EDB7 8E94 EDB7 <CJK>
+EDB8 8E99 EDB8 <CJK>
+EDB9 8EAA EDB9 <CJK>
+EDBA 8EA1 EDBA <CJK>
+EDBB 8EAC EDBB <CJK>
+EDBC 8EB0 EDBC <CJK>
+EDBD 8EC6 EDBD <CJK>
+EDBE 8EB1 EDBE <CJK>
+EDBF 8EBE EDBF <CJK>
+EDC0 8EC5 EDC0 <CJK>
+EDC1 8EC8 EDC1 <CJK>
+EDC2 8ECB EDC2 <CJK>
+EDC3 8EDB EDC3 <CJK>
+EDC4 8EE3 EDC4 <CJK>
+EDC5 8EFC EDC5 <CJK>
+EDC6 8EFB EDC6 <CJK>
+EDC7 8EEB EDC7 <CJK>
+EDC8 8EFE EDC8 <CJK>
+EDC9 8F0A EDC9 <CJK>
+EDCA 8F05 EDCA <CJK>
+EDCB 8F15 EDCB <CJK>
+EDCC 8F12 EDCC <CJK>
+EDCD 8F19 EDCD <CJK>
+EDCE 8F13 EDCE <CJK>
+EDCF 8F1C EDCF <CJK>
+EDD0 8F1F EDD0 <CJK>
+EDD1 8F1B EDD1 <CJK>
+EDD2 8F0C EDD2 <CJK>
+EDD3 8F26 EDD3 <CJK>
+EDD4 8F33 EDD4 <CJK>
+EDD5 8F3B EDD5 <CJK>
+EDD6 8F39 EDD6 <CJK>
+EDD7 8F45 EDD7 <CJK>
+EDD8 8F42 EDD8 <CJK>
+EDD9 8F3E EDD9 <CJK>
+EDDA 8F4C EDDA <CJK>
+EDDB 8F49 EDDB <CJK>
+EDDC 8F46 EDDC <CJK>
+EDDD 8F4E EDDD <CJK>
+EDDE 8F57 EDDE <CJK>
+EDDF 8F5C EDDF <CJK>
+EDE0 8F62 EDE0 <CJK>
+EDE1 8F63 EDE1 <CJK>
+EDE2 8F64 EDE2 <CJK>
+EDE3 8F9C EDE3 <CJK>
+EDE4 8F9F EDE4 <CJK>
+EDE5 8FA3 EDE5 <CJK>
+EDE6 8FAD EDE6 <CJK>
+EDE7 8FAF EDE7 <CJK>
+EDE8 8FB7 EDE8 <CJK>
+EDE9 8FDA EDE9 <CJK>
+EDEA 8FE5 EDEA <CJK>
+EDEB 8FE2 EDEB <CJK>
+EDEC 8FEA EDEC <CJK>
+EDED 8FEF EDED <CJK>
+EDEE 9087 EDEE <CJK>
+EDEF 8FF4 EDEF <CJK>
+EDF0 9005 EDF0 <CJK>
+EDF1 8FF9 EDF1 <CJK>
+EDF2 8FFA EDF2 <CJK>
+EDF3 9011 EDF3 <CJK>
+EDF4 9015 EDF4 <CJK>
+EDF5 9021 EDF5 <CJK>
+EDF6 900D EDF6 <CJK>
+EDF7 901E EDF7 <CJK>
+EDF8 9016 EDF8 <CJK>
+EDF9 900B EDF9 <CJK>
+EDFA 9027 EDFA <CJK>
+EDFB 9036 EDFB <CJK>
+EDFC 9035 EDFC <CJK>
+EDFD 9039 EDFD <CJK>
+EDFE 8FF8 EDFE <CJK>
+EEA1 904F EEA1 <CJK>
+EEA2 9050 EEA2 <CJK>
+EEA3 9051 EEA3 <CJK>
+EEA4 9052 EEA4 <CJK>
+EEA5 900E EEA5 <CJK>
+EEA6 9049 EEA6 <CJK>
+EEA7 903E EEA7 <CJK>
+EEA8 9056 EEA8 <CJK>
+EEA9 9058 EEA9 <CJK>
+EEAA 905E EEAA <CJK>
+EEAB 9068 EEAB <CJK>
+EEAC 906F EEAC <CJK>
+EEAD 9076 EEAD <CJK>
+EEAE 96A8 EEAE <CJK>
+EEAF 9072 EEAF <CJK>
+EEB0 9082 EEB0 <CJK>
+EEB1 907D EEB1 <CJK>
+EEB2 9081 EEB2 <CJK>
+EEB3 9080 EEB3 <CJK>
+EEB4 908A EEB4 <CJK>
+EEB5 9089 EEB5 <CJK>
+EEB6 908F EEB6 <CJK>
+EEB7 90A8 EEB7 <CJK>
+EEB8 90AF EEB8 <CJK>
+EEB9 90B1 EEB9 <CJK>
+EEBA 90B5 EEBA <CJK>
+EEBB 90E2 EEBB <CJK>
+EEBC 90E4 EEBC <CJK>
+EEBD 6248 EEBD <CJK>
+EEBE 90DB EEBE <CJK>
+EEBF 9102 EEBF <CJK>
+EEC0 9112 EEC0 <CJK>
+EEC1 9119 EEC1 <CJK>
+EEC2 9132 EEC2 <CJK>
+EEC3 9130 EEC3 <CJK>
+EEC4 914A EEC4 <CJK>
+EEC5 9156 EEC5 <CJK>
+EEC6 9158 EEC6 <CJK>
+EEC7 9163 EEC7 <CJK>
+EEC8 9165 EEC8 <CJK>
+EEC9 9169 EEC9 <CJK>
+EECA 9173 EECA <CJK>
+EECB 9172 EECB <CJK>
+EECC 918B EECC <CJK>
+EECD 9189 EECD <CJK>
+EECE 9182 EECE <CJK>
+EECF 91A2 EECF <CJK>
+EED0 91AB EED0 <CJK>
+EED1 91AF EED1 <CJK>
+EED2 91AA EED2 <CJK>
+EED3 91B5 EED3 <CJK>
+EED4 91B4 EED4 <CJK>
+EED5 91BA EED5 <CJK>
+EED6 91C0 EED6 <CJK>
+EED7 91C1 EED7 <CJK>
+EED8 91C9 EED8 <CJK>
+EED9 91CB EED9 <CJK>
+EEDA 91D0 EEDA <CJK>
+EEDB 91D6 EEDB <CJK>
+EEDC 91DF EEDC <CJK>
+EEDD 91E1 EEDD <CJK>
+EEDE 91DB EEDE <CJK>
+EEDF 91FC EEDF <CJK>
+EEE0 91F5 EEE0 <CJK>
+EEE1 91F6 EEE1 <CJK>
+EEE2 921E EEE2 <CJK>
+EEE3 91FF EEE3 <CJK>
+EEE4 9214 EEE4 <CJK>
+EEE5 922C EEE5 <CJK>
+EEE6 9215 EEE6 <CJK>
+EEE7 9211 EEE7 <CJK>
+EEE8 925E EEE8 <CJK>
+EEE9 9257 EEE9 <CJK>
+EEEA 9245 EEEA <CJK>
+EEEB 9249 EEEB <CJK>
+EEEC 9264 EEEC <CJK>
+EEED 9248 EEED <CJK>
+EEEE 9295 EEEE <CJK>
+EEEF 923F EEEF <CJK>
+EEF0 924B EEF0 <CJK>
+EEF1 9250 EEF1 <CJK>
+EEF2 929C EEF2 <CJK>
+EEF3 9296 EEF3 <CJK>
+EEF4 9293 EEF4 <CJK>
+EEF5 929B EEF5 <CJK>
+EEF6 925A EEF6 <CJK>
+EEF7 92CF EEF7 <CJK>
+EEF8 92B9 EEF8 <CJK>
+EEF9 92B7 EEF9 <CJK>
+EEFA 92E9 EEFA <CJK>
+EEFB 930F EEFB <CJK>
+EEFC 92FA EEFC <CJK>
+EEFD 9344 EEFD <CJK>
+EEFE 932E EEFE <CJK>
+EFA1 9319 EFA1 <CJK>
+EFA2 9322 EFA2 <CJK>
+EFA3 931A EFA3 <CJK>
+EFA4 9323 EFA4 <CJK>
+EFA5 933A EFA5 <CJK>
+EFA6 9335 EFA6 <CJK>
+EFA7 933B EFA7 <CJK>
+EFA8 935C EFA8 <CJK>
+EFA9 9360 EFA9 <CJK>
+EFAA 937C EFAA <CJK>
+EFAB 936E EFAB <CJK>
+EFAC 9356 EFAC <CJK>
+EFAD 93B0 EFAD <CJK>
+EFAE 93AC EFAE <CJK>
+EFAF 93AD EFAF <CJK>
+EFB0 9394 EFB0 <CJK>
+EFB1 93B9 EFB1 <CJK>
+EFB2 93D6 EFB2 <CJK>
+EFB3 93D7 EFB3 <CJK>
+EFB4 93E8 EFB4 <CJK>
+EFB5 93E5 EFB5 <CJK>
+EFB6 93D8 EFB6 <CJK>
+EFB7 93C3 EFB7 <CJK>
+EFB8 93DD EFB8 <CJK>
+EFB9 93D0 EFB9 <CJK>
+EFBA 93C8 EFBA <CJK>
+EFBB 93E4 EFBB <CJK>
+EFBC 941A EFBC <CJK>
+EFBD 9414 EFBD <CJK>
+EFBE 9413 EFBE <CJK>
+EFBF 9403 EFBF <CJK>
+EFC0 9407 EFC0 <CJK>
+EFC1 9410 EFC1 <CJK>
+EFC2 9436 EFC2 <CJK>
+EFC3 942B EFC3 <CJK>
+EFC4 9435 EFC4 <CJK>
+EFC5 9421 EFC5 <CJK>
+EFC6 943A EFC6 <CJK>
+EFC7 9441 EFC7 <CJK>
+EFC8 9452 EFC8 <CJK>
+EFC9 9444 EFC9 <CJK>
+EFCA 945B EFCA <CJK>
+EFCB 9460 EFCB <CJK>
+EFCC 9462 EFCC <CJK>
+EFCD 945E EFCD <CJK>
+EFCE 946A EFCE <CJK>
+EFCF 9229 EFCF <CJK>
+EFD0 9470 EFD0 <CJK>
+EFD1 9475 EFD1 <CJK>
+EFD2 9477 EFD2 <CJK>
+EFD3 947D EFD3 <CJK>
+EFD4 945A EFD4 <CJK>
+EFD5 947C EFD5 <CJK>
+EFD6 947E EFD6 <CJK>
+EFD7 9481 EFD7 <CJK>
+EFD8 947F EFD8 <CJK>
+EFD9 9582 EFD9 <CJK>
+EFDA 9587 EFDA <CJK>
+EFDB 958A EFDB <CJK>
+EFDC 9594 EFDC <CJK>
+EFDD 9596 EFDD <CJK>
+EFDE 9598 EFDE <CJK>
+EFDF 9599 EFDF <CJK>
+EFE0 95A0 EFE0 <CJK>
+EFE1 95A8 EFE1 <CJK>
+EFE2 95A7 EFE2 <CJK>
+EFE3 95AD EFE3 <CJK>
+EFE4 95BC EFE4 <CJK>
+EFE5 95BB EFE5 <CJK>
+EFE6 95B9 EFE6 <CJK>
+EFE7 95BE EFE7 <CJK>
+EFE8 95CA EFE8 <CJK>
+EFE9 6FF6 EFE9 <CJK>
+EFEA 95C3 EFEA <CJK>
+EFEB 95CD EFEB <CJK>
+EFEC 95CC EFEC <CJK>
+EFED 95D5 EFED <CJK>
+EFEE 95D4 EFEE <CJK>
+EFEF 95D6 EFEF <CJK>
+EFF0 95DC EFF0 <CJK>
+EFF1 95E1 EFF1 <CJK>
+EFF2 95E5 EFF2 <CJK>
+EFF3 95E2 EFF3 <CJK>
+EFF4 9621 EFF4 <CJK>
+EFF5 9628 EFF5 <CJK>
+EFF6 962E EFF6 <CJK>
+EFF7 962F EFF7 <CJK>
+EFF8 9642 EFF8 <CJK>
+EFF9 964C EFF9 <CJK>
+EFFA 964F EFFA <CJK>
+EFFB 964B EFFB <CJK>
+EFFC 9677 EFFC <CJK>
+EFFD 965C EFFD <CJK>
+EFFE 965E EFFE <CJK>
+F0A1 965D F0A1 <CJK>
+F0A2 965F F0A2 <CJK>
+F0A3 9666 F0A3 <CJK>
+F0A4 9672 F0A4 <CJK>
+F0A5 966C F0A5 <CJK>
+F0A6 968D F0A6 <CJK>
+F0A7 9698 F0A7 <CJK>
+F0A8 9695 F0A8 <CJK>
+F0A9 9697 F0A9 <CJK>
+F0AA 96AA F0AA <CJK>
+F0AB 96A7 F0AB <CJK>
+F0AC 96B1 F0AC <CJK>
+F0AD 96B2 F0AD <CJK>
+F0AE 96B0 F0AE <CJK>
+F0AF 96B4 F0AF <CJK>
+F0B0 96B6 F0B0 <CJK>
+F0B1 96B8 F0B1 <CJK>
+F0B2 96B9 F0B2 <CJK>
+F0B3 96CE F0B3 <CJK>
+F0B4 96CB F0B4 <CJK>
+F0B5 96C9 F0B5 <CJK>
+F0B6 96CD F0B6 <CJK>
+F0B7 894D F0B7 <CJK>
+F0B8 96DC F0B8 <CJK>
+F0B9 970D F0B9 <CJK>
+F0BA 96D5 F0BA <CJK>
+F0BB 96F9 F0BB <CJK>
+F0BC 9704 F0BC <CJK>
+F0BD 9706 F0BD <CJK>
+F0BE 9708 F0BE <CJK>
+F0BF 9713 F0BF <CJK>
+F0C0 970E F0C0 <CJK>
+F0C1 9711 F0C1 <CJK>
+F0C2 970F F0C2 <CJK>
+F0C3 9716 F0C3 <CJK>
+F0C4 9719 F0C4 <CJK>
+F0C5 9724 F0C5 <CJK>
+F0C6 972A F0C6 <CJK>
+F0C7 9730 F0C7 <CJK>
+F0C8 9739 F0C8 <CJK>
+F0C9 973D F0C9 <CJK>
+F0CA 973E F0CA <CJK>
+F0CB 9744 F0CB <CJK>
+F0CC 9746 F0CC <CJK>
+F0CD 9748 F0CD <CJK>
+F0CE 9742 F0CE <CJK>
+F0CF 9749 F0CF <CJK>
+F0D0 975C F0D0 <CJK>
+F0D1 9760 F0D1 <CJK>
+F0D2 9764 F0D2 <CJK>
+F0D3 9766 F0D3 <CJK>
+F0D4 9768 F0D4 <CJK>
+F0D5 52D2 F0D5 <CJK>
+F0D6 976B F0D6 <CJK>
+F0D7 9771 F0D7 <CJK>
+F0D8 9779 F0D8 <CJK>
+F0D9 9785 F0D9 <CJK>
+F0DA 977C F0DA <CJK>
+F0DB 9781 F0DB <CJK>
+F0DC 977A F0DC <CJK>
+F0DD 9786 F0DD <CJK>
+F0DE 978B F0DE <CJK>
+F0DF 978F F0DF <CJK>
+F0E0 9790 F0E0 <CJK>
+F0E1 979C F0E1 <CJK>
+F0E2 97A8 F0E2 <CJK>
+F0E3 97A6 F0E3 <CJK>
+F0E4 97A3 F0E4 <CJK>
+F0E5 97B3 F0E5 <CJK>
+F0E6 97B4 F0E6 <CJK>
+F0E7 97C3 F0E7 <CJK>
+F0E8 97C6 F0E8 <CJK>
+F0E9 97C8 F0E9 <CJK>
+F0EA 97CB F0EA <CJK>
+F0EB 97DC F0EB <CJK>
+F0EC 97ED F0EC <CJK>
+F0ED 9F4F F0ED <CJK>
+F0EE 97F2 F0EE <CJK>
+F0EF 7ADF F0EF <CJK>
+F0F0 97F6 F0F0 <CJK>
+F0F1 97F5 F0F1 <CJK>
+F0F2 980F F0F2 <CJK>
+F0F3 980C F0F3 <CJK>
+F0F4 9838 F0F4 <CJK>
+F0F5 9824 F0F5 <CJK>
+F0F6 9821 F0F6 <CJK>
+F0F7 9837 F0F7 <CJK>
+F0F8 983D F0F8 <CJK>
+F0F9 9846 F0F9 <CJK>
+F0FA 984F F0FA <CJK>
+F0FB 984B F0FB <CJK>
+F0FC 986B F0FC <CJK>
+F0FD 986F F0FD <CJK>
+F0FE 9870 F0FE <CJK>
+F1A1 9871 F1A1 <CJK>
+F1A2 9874 F1A2 <CJK>
+F1A3 9873 F1A3 <CJK>
+F1A4 98AA F1A4 <CJK>
+F1A5 98AF F1A5 <CJK>
+F1A6 98B1 F1A6 <CJK>
+F1A7 98B6 F1A7 <CJK>
+F1A8 98C4 F1A8 <CJK>
+F1A9 98C3 F1A9 <CJK>
+F1AA 98C6 F1AA <CJK>
+F1AB 98E9 F1AB <CJK>
+F1AC 98EB F1AC <CJK>
+F1AD 9903 F1AD <CJK>
+F1AE 9909 F1AE <CJK>
+F1AF 9912 F1AF <CJK>
+F1B0 9914 F1B0 <CJK>
+F1B1 9918 F1B1 <CJK>
+F1B2 9921 F1B2 <CJK>
+F1B3 991D F1B3 <CJK>
+F1B4 991E F1B4 <CJK>
+F1B5 9924 F1B5 <CJK>
+F1B6 9920 F1B6 <CJK>
+F1B7 992C F1B7 <CJK>
+F1B8 992E F1B8 <CJK>
+F1B9 993D F1B9 <CJK>
+F1BA 993E F1BA <CJK>
+F1BB 9942 F1BB <CJK>
+F1BC 9949 F1BC <CJK>
+F1BD 9945 F1BD <CJK>
+F1BE 9950 F1BE <CJK>
+F1BF 994B F1BF <CJK>
+F1C0 9951 F1C0 <CJK>
+F1C1 9952 F1C1 <CJK>
+F1C2 994C F1C2 <CJK>
+F1C3 9955 F1C3 <CJK>
+F1C4 9997 F1C4 <CJK>
+F1C5 9998 F1C5 <CJK>
+F1C6 99A5 F1C6 <CJK>
+F1C7 99AD F1C7 <CJK>
+F1C8 99AE F1C8 <CJK>
+F1C9 99BC F1C9 <CJK>
+F1CA 99DF F1CA <CJK>
+F1CB 99DB F1CB <CJK>
+F1CC 99DD F1CC <CJK>
+F1CD 99D8 F1CD <CJK>
+F1CE 99D1 F1CE <CJK>
+F1CF 99ED F1CF <CJK>
+F1D0 99EE F1D0 <CJK>
+F1D1 99F1 F1D1 <CJK>
+F1D2 99F2 F1D2 <CJK>
+F1D3 99FB F1D3 <CJK>
+F1D4 99F8 F1D4 <CJK>
+F1D5 9A01 F1D5 <CJK>
+F1D6 9A0F F1D6 <CJK>
+F1D7 9A05 F1D7 <CJK>
+F1D8 99E2 F1D8 <CJK>
+F1D9 9A19 F1D9 <CJK>
+F1DA 9A2B F1DA <CJK>
+F1DB 9A37 F1DB <CJK>
+F1DC 9A45 F1DC <CJK>
+F1DD 9A42 F1DD <CJK>
+F1DE 9A40 F1DE <CJK>
+F1DF 9A43 F1DF <CJK>
+F1E0 9A3E F1E0 <CJK>
+F1E1 9A55 F1E1 <CJK>
+F1E2 9A4D F1E2 <CJK>
+F1E3 9A5B F1E3 <CJK>
+F1E4 9A57 F1E4 <CJK>
+F1E5 9A5F F1E5 <CJK>
+F1E6 9A62 F1E6 <CJK>
+F1E7 9A65 F1E7 <CJK>
+F1E8 9A64 F1E8 <CJK>
+F1E9 9A69 F1E9 <CJK>
+F1EA 9A6B F1EA <CJK>
+F1EB 9A6A F1EB <CJK>
+F1EC 9AAD F1EC <CJK>
+F1ED 9AB0 F1ED <CJK>
+F1EE 9ABC F1EE <CJK>
+F1EF 9AC0 F1EF <CJK>
+F1F0 9ACF F1F0 <CJK>
+F1F1 9AD1 F1F1 <CJK>
+F1F2 9AD3 F1F2 <CJK>
+F1F3 9AD4 F1F3 <CJK>
+F1F4 9ADE F1F4 <CJK>
+F1F5 9ADF F1F5 <CJK>
+F1F6 9AE2 F1F6 <CJK>
+F1F7 9AE3 F1F7 <CJK>
+F1F8 9AE6 F1F8 <CJK>
+F1F9 9AEF F1F9 <CJK>
+F1FA 9AEB F1FA <CJK>
+F1FB 9AEE F1FB <CJK>
+F1FC 9AF4 F1FC <CJK>
+F1FD 9AF1 F1FD <CJK>
+F1FE 9AF7 F1FE <CJK>
+F2A1 9AFB F2A1 <CJK>
+F2A2 9B06 F2A2 <CJK>
+F2A3 9B18 F2A3 <CJK>
+F2A4 9B1A F2A4 <CJK>
+F2A5 9B1F F2A5 <CJK>
+F2A6 9B22 F2A6 <CJK>
+F2A7 9B23 F2A7 <CJK>
+F2A8 9B25 F2A8 <CJK>
+F2A9 9B27 F2A9 <CJK>
+F2AA 9B28 F2AA <CJK>
+F2AB 9B29 F2AB <CJK>
+F2AC 9B2A F2AC <CJK>
+F2AD 9B2E F2AD <CJK>
+F2AE 9B2F F2AE <CJK>
+F2AF 9B32 F2AF <CJK>
+F2B0 9B44 F2B0 <CJK>
+F2B1 9B43 F2B1 <CJK>
+F2B2 9B4F F2B2 <CJK>
+F2B3 9B4D F2B3 <CJK>
+F2B4 9B4E F2B4 <CJK>
+F2B5 9B51 F2B5 <CJK>
+F2B6 9B58 F2B6 <CJK>
+F2B7 9B74 F2B7 <CJK>
+F2B8 9B93 F2B8 <CJK>
+F2B9 9B83 F2B9 <CJK>
+F2BA 9B91 F2BA <CJK>
+F2BB 9B96 F2BB <CJK>
+F2BC 9B97 F2BC <CJK>
+F2BD 9B9F F2BD <CJK>
+F2BE 9BA0 F2BE <CJK>
+F2BF 9BA8 F2BF <CJK>
+F2C0 9BB4 F2C0 <CJK>
+F2C1 9BC0 F2C1 <CJK>
+F2C2 9BCA F2C2 <CJK>
+F2C3 9BB9 F2C3 <CJK>
+F2C4 9BC6 F2C4 <CJK>
+F2C5 9BCF F2C5 <CJK>
+F2C6 9BD1 F2C6 <CJK>
+F2C7 9BD2 F2C7 <CJK>
+F2C8 9BE3 F2C8 <CJK>
+F2C9 9BE2 F2C9 <CJK>
+F2CA 9BE4 F2CA <CJK>
+F2CB 9BD4 F2CB <CJK>
+F2CC 9BE1 F2CC <CJK>
+F2CD 9C3A F2CD <CJK>
+F2CE 9BF2 F2CE <CJK>
+F2CF 9BF1 F2CF <CJK>
+F2D0 9BF0 F2D0 <CJK>
+F2D1 9C15 F2D1 <CJK>
+F2D2 9C14 F2D2 <CJK>
+F2D3 9C09 F2D3 <CJK>
+F2D4 9C13 F2D4 <CJK>
+F2D5 9C0C F2D5 <CJK>
+F2D6 9C06 F2D6 <CJK>
+F2D7 9C08 F2D7 <CJK>
+F2D8 9C12 F2D8 <CJK>
+F2D9 9C0A F2D9 <CJK>
+F2DA 9C04 F2DA <CJK>
+F2DB 9C2E F2DB <CJK>
+F2DC 9C1B F2DC <CJK>
+F2DD 9C25 F2DD <CJK>
+F2DE 9C24 F2DE <CJK>
+F2DF 9C21 F2DF <CJK>
+F2E0 9C30 F2E0 <CJK>
+F2E1 9C47 F2E1 <CJK>
+F2E2 9C32 F2E2 <CJK>
+F2E3 9C46 F2E3 <CJK>
+F2E4 9C3E F2E4 <CJK>
+F2E5 9C5A F2E5 <CJK>
+F2E6 9C60 F2E6 <CJK>
+F2E7 9C67 F2E7 <CJK>
+F2E8 9C76 F2E8 <CJK>
+F2E9 9C78 F2E9 <CJK>
+F2EA 9CE7 F2EA <CJK>
+F2EB 9CEC F2EB <CJK>
+F2EC 9CF0 F2EC <CJK>
+F2ED 9D09 F2ED <CJK>
+F2EE 9D08 F2EE <CJK>
+F2EF 9CEB F2EF <CJK>
+F2F0 9D03 F2F0 <CJK>
+F2F1 9D06 F2F1 <CJK>
+F2F2 9D2A F2F2 <CJK>
+F2F3 9D26 F2F3 <CJK>
+F2F4 9DAF F2F4 <CJK>
+F2F5 9D23 F2F5 <CJK>
+F2F6 9D1F F2F6 <CJK>
+F2F7 9D44 F2F7 <CJK>
+F2F8 9D15 F2F8 <CJK>
+F2F9 9D12 F2F9 <CJK>
+F2FA 9D41 F2FA <CJK>
+F2FB 9D3F F2FB <CJK>
+F2FC 9D3E F2FC <CJK>
+F2FD 9D46 F2FD <CJK>
+F2FE 9D48 F2FE <CJK>
+F3A1 9D5D F3A1 <CJK>
+F3A2 9D5E F3A2 <CJK>
+F3A3 9D64 F3A3 <CJK>
+F3A4 9D51 F3A4 <CJK>
+F3A5 9D50 F3A5 <CJK>
+F3A6 9D59 F3A6 <CJK>
+F3A7 9D72 F3A7 <CJK>
+F3A8 9D89 F3A8 <CJK>
+F3A9 9D87 F3A9 <CJK>
+F3AA 9DAB F3AA <CJK>
+F3AB 9D6F F3AB <CJK>
+F3AC 9D7A F3AC <CJK>
+F3AD 9D9A F3AD <CJK>
+F3AE 9DA4 F3AE <CJK>
+F3AF 9DA9 F3AF <CJK>
+F3B0 9DB2 F3B0 <CJK>
+F3B1 9DC4 F3B1 <CJK>
+F3B2 9DC1 F3B2 <CJK>
+F3B3 9DBB F3B3 <CJK>
+F3B4 9DB8 F3B4 <CJK>
+F3B5 9DBA F3B5 <CJK>
+F3B6 9DC6 F3B6 <CJK>
+F3B7 9DCF F3B7 <CJK>
+F3B8 9DC2 F3B8 <CJK>
+F3B9 9DD9 F3B9 <CJK>
+F3BA 9DD3 F3BA <CJK>
+F3BB 9DF8 F3BB <CJK>
+F3BC 9DE6 F3BC <CJK>
+F3BD 9DED F3BD <CJK>
+F3BE 9DEF F3BE <CJK>
+F3BF 9DFD F3BF <CJK>
+F3C0 9E1A F3C0 <CJK>
+F3C1 9E1B F3C1 <CJK>
+F3C2 9E1E F3C2 <CJK>
+F3C3 9E75 F3C3 <CJK>
+F3C4 9E79 F3C4 <CJK>
+F3C5 9E7D F3C5 <CJK>
+F3C6 9E81 F3C6 <CJK>
+F3C7 9E88 F3C7 <CJK>
+F3C8 9E8B F3C8 <CJK>
+F3C9 9E8C F3C9 <CJK>
+F3CA 9E92 F3CA <CJK>
+F3CB 9E95 F3CB <CJK>
+F3CC 9E91 F3CC <CJK>
+F3CD 9E9D F3CD <CJK>
+F3CE 9EA5 F3CE <CJK>
+F3CF 9EA9 F3CF <CJK>
+F3D0 9EB8 F3D0 <CJK>
+F3D1 9EAA F3D1 <CJK>
+F3D2 9EAD F3D2 <CJK>
+F3D3 9761 F3D3 <CJK>
+F3D4 9ECC F3D4 <CJK>
+F3D5 9ECE F3D5 <CJK>
+F3D6 9ECF F3D6 <CJK>
+F3D7 9ED0 F3D7 <CJK>
+F3D8 9ED4 F3D8 <CJK>
+F3D9 9EDC F3D9 <CJK>
+F3DA 9EDE F3DA <CJK>
+F3DB 9EDD F3DB <CJK>
+F3DC 9EE0 F3DC <CJK>
+F3DD 9EE5 F3DD <CJK>
+F3DE 9EE8 F3DE <CJK>
+F3DF 9EEF F3DF <CJK>
+F3E0 9EF4 F3E0 <CJK>
+F3E1 9EF6 F3E1 <CJK>
+F3E2 9EF7 F3E2 <CJK>
+F3E3 9EF9 F3E3 <CJK>
+F3E4 9EFB F3E4 <CJK>
+F3E5 9EFC F3E5 <CJK>
+F3E6 9EFD F3E6 <CJK>
+F3E7 9F07 F3E7 <CJK>
+F3E8 9F08 F3E8 <CJK>
+F3E9 76B7 F3E9 <CJK>
+F3EA 9F15 F3EA <CJK>
+F3EB 9F21 F3EB <CJK>
+F3EC 9F2C F3EC <CJK>
+F3ED 9F3E F3ED <CJK>
+F3EE 9F4A F3EE <CJK>
+F3EF 9F52 F3EF <CJK>
+F3F0 9F54 F3F0 <CJK>
+F3F1 9F63 F3F1 <CJK>
+F3F2 9F5F F3F2 <CJK>
+F3F3 9F60 F3F3 <CJK>
+F3F4 9F61 F3F4 <CJK>
+F3F5 9F66 F3F5 <CJK>
+F3F6 9F67 F3F6 <CJK>
+F3F7 9F6C F3F7 <CJK>
+F3F8 9F6A F3F8 <CJK>
+F3F9 9F77 F3F9 <CJK>
+F3FA 9F72 F3FA <CJK>
+F3FB 9F76 F3FB <CJK>
+F3FC 9F95 F3FC <CJK>
+F3FD 9F9C F3FD <CJK>
+F3FE 9FA0 F3FE <CJK>
+F4A1 582F F4A1 U+582F <CJK>
+F4A2 69C7 F4A2 U+69C7 <CJK>
+F4A3 9059 F4A3 U+9059 <CJK>
+F4A4 7464 F4A4 U+7464 <CJK>
+F4A5 51DC F4A5 U+51DC <CJK>
+F4A6 7199 F4A6 U+7199 <CJK>
+F5A1 E000 F5A1 User defined range #1
+F5A2 E001 F5A2 User defined range #1
+F5A3 E002 F5A3 User defined range #1
+F5A4 E003 F5A4 User defined range #1
+F5A5 E004 F5A5 User defined range #1
+F5A6 E005 F5A6 User defined range #1
+F5A7 E006 F5A7 User defined range #1
+F5A8 E007 F5A8 User defined range #1
+F5A9 E008 F5A9 User defined range #1
+F5AA E009 F5AA User defined range #1
+F5AB E00A F5AB User defined range #1
+F5AC E00B F5AC User defined range #1
+F5AD E00C F5AD User defined range #1
+F5AE E00D F5AE User defined range #1
+F5AF E00E F5AF User defined range #1
+F5B0 E00F F5B0 User defined range #1
+F5B1 E010 F5B1 User defined range #1
+F5B2 E011 F5B2 User defined range #1
+F5B3 E012 F5B3 User defined range #1
+F5B4 E013 F5B4 User defined range #1
+F5B5 E014 F5B5 User defined range #1
+F5B6 E015 F5B6 User defined range #1
+F5B7 E016 F5B7 User defined range #1
+F5B8 E017 F5B8 User defined range #1
+F5B9 E018 F5B9 User defined range #1
+F5BA E019 F5BA User defined range #1
+F5BB E01A F5BB User defined range #1
+F5BC E01B F5BC User defined range #1
+F5BD E01C F5BD User defined range #1
+F5BE E01D F5BE User defined range #1
+F5BF E01E F5BF User defined range #1
+F5C0 E01F F5C0 User defined range #1
+F5C1 E020 F5C1 User defined range #1
+F5C2 E021 F5C2 User defined range #1
+F5C3 E022 F5C3 User defined range #1
+F5C4 E023 F5C4 User defined range #1
+F5C5 E024 F5C5 User defined range #1
+F5C6 E025 F5C6 User defined range #1
+F5C7 E026 F5C7 User defined range #1
+F5C8 E027 F5C8 User defined range #1
+F5C9 E028 F5C9 User defined range #1
+F5CA E029 F5CA User defined range #1
+F5CB E02A F5CB User defined range #1
+F5CC E02B F5CC User defined range #1
+F5CD E02C F5CD User defined range #1
+F5CE E02D F5CE User defined range #1
+F5CF E02E F5CF User defined range #1
+F5D0 E02F F5D0 User defined range #1
+F5D1 E030 F5D1 User defined range #1
+F5D2 E031 F5D2 User defined range #1
+F5D3 E032 F5D3 User defined range #1
+F5D4 E033 F5D4 User defined range #1
+F5D5 E034 F5D5 User defined range #1
+F5D6 E035 F5D6 User defined range #1
+F5D7 E036 F5D7 User defined range #1
+F5D8 E037 F5D8 User defined range #1
+F5D9 E038 F5D9 User defined range #1
+F5DA E039 F5DA User defined range #1
+F5DB E03A F5DB User defined range #1
+F5DC E03B F5DC User defined range #1
+F5DD E03C F5DD User defined range #1
+F5DE E03D F5DE User defined range #1
+F5DF E03E F5DF User defined range #1
+F5E0 E03F F5E0 User defined range #1
+F5E1 E040 F5E1 User defined range #1
+F5E2 E041 F5E2 User defined range #1
+F5E3 E042 F5E3 User defined range #1
+F5E4 E043 F5E4 User defined range #1
+F5E5 E044 F5E5 User defined range #1
+F5E6 E045 F5E6 User defined range #1
+F5E7 E046 F5E7 User defined range #1
+F5E8 E047 F5E8 User defined range #1
+F5E9 E048 F5E9 User defined range #1
+F5EA E049 F5EA User defined range #1
+F5EB E04A F5EB User defined range #1
+F5EC E04B F5EC User defined range #1
+F5ED E04C F5ED User defined range #1
+F5EE E04D F5EE User defined range #1
+F5EF E04E F5EF User defined range #1
+F5F0 E04F F5F0 User defined range #1
+F5F1 E050 F5F1 User defined range #1
+F5F2 E051 F5F2 User defined range #1
+F5F3 E052 F5F3 User defined range #1
+F5F4 E053 F5F4 User defined range #1
+F5F5 E054 F5F5 User defined range #1
+F5F6 E055 F5F6 User defined range #1
+F5F7 E056 F5F7 User defined range #1
+F5F8 E057 F5F8 User defined range #1
+F5F9 E058 F5F9 User defined range #1
+F5FA E059 F5FA User defined range #1
+F5FB E05A F5FB User defined range #1
+F5FC E05B F5FC User defined range #1
+F5FD E05C F5FD User defined range #1
+F5FE E05D F5FE User defined range #1
+F6A1 E05E F6A1 User defined range #1
+F6A2 E05F F6A2 User defined range #1
+F6A3 E060 F6A3 User defined range #1
+F6A4 E061 F6A4 User defined range #1
+F6A5 E062 F6A5 User defined range #1
+F6A6 E063 F6A6 User defined range #1
+F6A7 E064 F6A7 User defined range #1
+F6A8 E065 F6A8 User defined range #1
+F6A9 E066 F6A9 User defined range #1
+F6AA E067 F6AA User defined range #1
+F6AB E068 F6AB User defined range #1
+F6AC E069 F6AC User defined range #1
+F6AD E06A F6AD User defined range #1
+F6AE E06B F6AE User defined range #1
+F6AF E06C F6AF User defined range #1
+F6B0 E06D F6B0 User defined range #1
+F6B1 E06E F6B1 User defined range #1
+F6B2 E06F F6B2 User defined range #1
+F6B3 E070 F6B3 User defined range #1
+F6B4 E071 F6B4 User defined range #1
+F6B5 E072 F6B5 User defined range #1
+F6B6 E073 F6B6 User defined range #1
+F6B7 E074 F6B7 User defined range #1
+F6B8 E075 F6B8 User defined range #1
+F6B9 E076 F6B9 User defined range #1
+F6BA E077 F6BA User defined range #1
+F6BB E078 F6BB User defined range #1
+F6BC E079 F6BC User defined range #1
+F6BD E07A F6BD User defined range #1
+F6BE E07B F6BE User defined range #1
+F6BF E07C F6BF User defined range #1
+F6C0 E07D F6C0 User defined range #1
+F6C1 E07E F6C1 User defined range #1
+F6C2 E07F F6C2 User defined range #1
+F6C3 E080 F6C3 User defined range #1
+F6C4 E081 F6C4 User defined range #1
+F6C5 E082 F6C5 User defined range #1
+F6C6 E083 F6C6 User defined range #1
+F6C7 E084 F6C7 User defined range #1
+F6C8 E085 F6C8 User defined range #1
+F6C9 E086 F6C9 User defined range #1
+F6CA E087 F6CA User defined range #1
+F6CB E088 F6CB User defined range #1
+F6CC E089 F6CC User defined range #1
+F6CD E08A F6CD User defined range #1
+F6CE E08B F6CE User defined range #1
+F6CF E08C F6CF User defined range #1
+F6D0 E08D F6D0 User defined range #1
+F6D1 E08E F6D1 User defined range #1
+F6D2 E08F F6D2 User defined range #1
+F6D3 E090 F6D3 User defined range #1
+F6D4 E091 F6D4 User defined range #1
+F6D5 E092 F6D5 User defined range #1
+F6D6 E093 F6D6 User defined range #1
+F6D7 E094 F6D7 User defined range #1
+F6D8 E095 F6D8 User defined range #1
+F6D9 E096 F6D9 User defined range #1
+F6DA E097 F6DA User defined range #1
+F6DB E098 F6DB User defined range #1
+F6DC E099 F6DC User defined range #1
+F6DD E09A F6DD User defined range #1
+F6DE E09B F6DE User defined range #1
+F6DF E09C F6DF User defined range #1
+F6E0 E09D F6E0 User defined range #1
+F6E1 E09E F6E1 User defined range #1
+F6E2 E09F F6E2 User defined range #1
+F6E3 E0A0 F6E3 User defined range #1
+F6E4 E0A1 F6E4 User defined range #1
+F6E5 E0A2 F6E5 User defined range #1
+F6E6 E0A3 F6E6 User defined range #1
+F6E7 E0A4 F6E7 User defined range #1
+F6E8 E0A5 F6E8 User defined range #1
+F6E9 E0A6 F6E9 User defined range #1
+F6EA E0A7 F6EA User defined range #1
+F6EB E0A8 F6EB User defined range #1
+F6EC E0A9 F6EC User defined range #1
+F6ED E0AA F6ED User defined range #1
+F6EE E0AB F6EE User defined range #1
+F6EF E0AC F6EF User defined range #1
+F6F0 E0AD F6F0 User defined range #1
+F6F1 E0AE F6F1 User defined range #1
+F6F2 E0AF F6F2 User defined range #1
+F6F3 E0B0 F6F3 User defined range #1
+F6F4 E0B1 F6F4 User defined range #1
+F6F5 E0B2 F6F5 User defined range #1
+F6F6 E0B3 F6F6 User defined range #1
+F6F7 E0B4 F6F7 User defined range #1
+F6F8 E0B5 F6F8 User defined range #1
+F6F9 E0B6 F6F9 User defined range #1
+F6FA E0B7 F6FA User defined range #1
+F6FB E0B8 F6FB User defined range #1
+F6FC E0B9 F6FC User defined range #1
+F6FD E0BA F6FD User defined range #1
+F6FE E0BB F6FE User defined range #1
+F7A1 E0BC F7A1 User defined range #1
+F7A2 E0BD F7A2 User defined range #1
+F7A3 E0BE F7A3 User defined range #1
+F7A4 E0BF F7A4 User defined range #1
+F7A5 E0C0 F7A5 User defined range #1
+F7A6 E0C1 F7A6 User defined range #1
+F7A7 E0C2 F7A7 User defined range #1
+F7A8 E0C3 F7A8 User defined range #1
+F7A9 E0C4 F7A9 User defined range #1
+F7AA E0C5 F7AA User defined range #1
+F7AB E0C6 F7AB User defined range #1
+F7AC E0C7 F7AC User defined range #1
+F7AD E0C8 F7AD User defined range #1
+F7AE E0C9 F7AE User defined range #1
+F7AF E0CA F7AF User defined range #1
+F7B0 E0CB F7B0 User defined range #1
+F7B1 E0CC F7B1 User defined range #1
+F7B2 E0CD F7B2 User defined range #1
+F7B3 E0CE F7B3 User defined range #1
+F7B4 E0CF F7B4 User defined range #1
+F7B5 E0D0 F7B5 User defined range #1
+F7B6 E0D1 F7B6 User defined range #1
+F7B7 E0D2 F7B7 User defined range #1
+F7B8 E0D3 F7B8 User defined range #1
+F7B9 E0D4 F7B9 User defined range #1
+F7BA E0D5 F7BA User defined range #1
+F7BB E0D6 F7BB User defined range #1
+F7BC E0D7 F7BC User defined range #1
+F7BD E0D8 F7BD User defined range #1
+F7BE E0D9 F7BE User defined range #1
+F7BF E0DA F7BF User defined range #1
+F7C0 E0DB F7C0 User defined range #1
+F7C1 E0DC F7C1 User defined range #1
+F7C2 E0DD F7C2 User defined range #1
+F7C3 E0DE F7C3 User defined range #1
+F7C4 E0DF F7C4 User defined range #1
+F7C5 E0E0 F7C5 User defined range #1
+F7C6 E0E1 F7C6 User defined range #1
+F7C7 E0E2 F7C7 User defined range #1
+F7C8 E0E3 F7C8 User defined range #1
+F7C9 E0E4 F7C9 User defined range #1
+F7CA E0E5 F7CA User defined range #1
+F7CB E0E6 F7CB User defined range #1
+F7CC E0E7 F7CC User defined range #1
+F7CD E0E8 F7CD User defined range #1
+F7CE E0E9 F7CE User defined range #1
+F7CF E0EA F7CF User defined range #1
+F7D0 E0EB F7D0 User defined range #1
+F7D1 E0EC F7D1 User defined range #1
+F7D2 E0ED F7D2 User defined range #1
+F7D3 E0EE F7D3 User defined range #1
+F7D4 E0EF F7D4 User defined range #1
+F7D5 E0F0 F7D5 User defined range #1
+F7D6 E0F1 F7D6 User defined range #1
+F7D7 E0F2 F7D7 User defined range #1
+F7D8 E0F3 F7D8 User defined range #1
+F7D9 E0F4 F7D9 User defined range #1
+F7DA E0F5 F7DA User defined range #1
+F7DB E0F6 F7DB User defined range #1
+F7DC E0F7 F7DC User defined range #1
+F7DD E0F8 F7DD User defined range #1
+F7DE E0F9 F7DE User defined range #1
+F7DF E0FA F7DF User defined range #1
+F7E0 E0FB F7E0 User defined range #1
+F7E1 E0FC F7E1 User defined range #1
+F7E2 E0FD F7E2 User defined range #1
+F7E3 E0FE F7E3 User defined range #1
+F7E4 E0FF F7E4 User defined range #1
+F7E5 E100 F7E5 User defined range #1
+F7E6 E101 F7E6 User defined range #1
+F7E7 E102 F7E7 User defined range #1
+F7E8 E103 F7E8 User defined range #1
+F7E9 E104 F7E9 User defined range #1
+F7EA E105 F7EA User defined range #1
+F7EB E106 F7EB User defined range #1
+F7EC E107 F7EC User defined range #1
+F7ED E108 F7ED User defined range #1
+F7EE E109 F7EE User defined range #1
+F7EF E10A F7EF User defined range #1
+F7F0 E10B F7F0 User defined range #1
+F7F1 E10C F7F1 User defined range #1
+F7F2 E10D F7F2 User defined range #1
+F7F3 E10E F7F3 User defined range #1
+F7F4 E10F F7F4 User defined range #1
+F7F5 E110 F7F5 User defined range #1
+F7F6 E111 F7F6 User defined range #1
+F7F7 E112 F7F7 User defined range #1
+F7F8 E113 F7F8 User defined range #1
+F7F9 E114 F7F9 User defined range #1
+F7FA E115 F7FA User defined range #1
+F7FB E116 F7FB User defined range #1
+F7FC E117 F7FC User defined range #1
+F7FD E118 F7FD User defined range #1
+F7FE E119 F7FE User defined range #1
+F8A1 E11A F8A1 User defined range #1
+F8A2 E11B F8A2 User defined range #1
+F8A3 E11C F8A3 User defined range #1
+F8A4 E11D F8A4 User defined range #1
+F8A5 E11E F8A5 User defined range #1
+F8A6 E11F F8A6 User defined range #1
+F8A7 E120 F8A7 User defined range #1
+F8A8 E121 F8A8 User defined range #1
+F8A9 E122 F8A9 User defined range #1
+F8AA E123 F8AA User defined range #1
+F8AB E124 F8AB User defined range #1
+F8AC E125 F8AC User defined range #1
+F8AD E126 F8AD User defined range #1
+F8AE E127 F8AE User defined range #1
+F8AF E128 F8AF User defined range #1
+F8B0 E129 F8B0 User defined range #1
+F8B1 E12A F8B1 User defined range #1
+F8B2 E12B F8B2 User defined range #1
+F8B3 E12C F8B3 User defined range #1
+F8B4 E12D F8B4 User defined range #1
+F8B5 E12E F8B5 User defined range #1
+F8B6 E12F F8B6 User defined range #1
+F8B7 E130 F8B7 User defined range #1
+F8B8 E131 F8B8 User defined range #1
+F8B9 E132 F8B9 User defined range #1
+F8BA E133 F8BA User defined range #1
+F8BB E134 F8BB User defined range #1
+F8BC E135 F8BC User defined range #1
+F8BD E136 F8BD User defined range #1
+F8BE E137 F8BE User defined range #1
+F8BF E138 F8BF User defined range #1
+F8C0 E139 F8C0 User defined range #1
+F8C1 E13A F8C1 User defined range #1
+F8C2 E13B F8C2 User defined range #1
+F8C3 E13C F8C3 User defined range #1
+F8C4 E13D F8C4 User defined range #1
+F8C5 E13E F8C5 User defined range #1
+F8C6 E13F F8C6 User defined range #1
+F8C7 E140 F8C7 User defined range #1
+F8C8 E141 F8C8 User defined range #1
+F8C9 E142 F8C9 User defined range #1
+F8CA E143 F8CA User defined range #1
+F8CB E144 F8CB User defined range #1
+F8CC E145 F8CC User defined range #1
+F8CD E146 F8CD User defined range #1
+F8CE E147 F8CE User defined range #1
+F8CF E148 F8CF User defined range #1
+F8D0 E149 F8D0 User defined range #1
+F8D1 E14A F8D1 User defined range #1
+F8D2 E14B F8D2 User defined range #1
+F8D3 E14C F8D3 User defined range #1
+F8D4 E14D F8D4 User defined range #1
+F8D5 E14E F8D5 User defined range #1
+F8D6 E14F F8D6 User defined range #1
+F8D7 E150 F8D7 User defined range #1
+F8D8 E151 F8D8 User defined range #1
+F8D9 E152 F8D9 User defined range #1
+F8DA E153 F8DA User defined range #1
+F8DB E154 F8DB User defined range #1
+F8DC E155 F8DC User defined range #1
+F8DD E156 F8DD User defined range #1
+F8DE E157 F8DE User defined range #1
+F8DF E158 F8DF User defined range #1
+F8E0 E159 F8E0 User defined range #1
+F8E1 E15A F8E1 User defined range #1
+F8E2 E15B F8E2 User defined range #1
+F8E3 E15C F8E3 User defined range #1
+F8E4 E15D F8E4 User defined range #1
+F8E5 E15E F8E5 User defined range #1
+F8E6 E15F F8E6 User defined range #1
+F8E7 E160 F8E7 User defined range #1
+F8E8 E161 F8E8 User defined range #1
+F8E9 E162 F8E9 User defined range #1
+F8EA E163 F8EA User defined range #1
+F8EB E164 F8EB User defined range #1
+F8EC E165 F8EC User defined range #1
+F8ED E166 F8ED User defined range #1
+F8EE E167 F8EE User defined range #1
+F8EF E168 F8EF User defined range #1
+F8F0 E169 F8F0 User defined range #1
+F8F1 E16A F8F1 User defined range #1
+F8F2 E16B F8F2 User defined range #1
+F8F3 E16C F8F3 User defined range #1
+F8F4 E16D F8F4 User defined range #1
+F8F5 E16E F8F5 User defined range #1
+F8F6 E16F F8F6 User defined range #1
+F8F7 E170 F8F7 User defined range #1
+F8F8 E171 F8F8 User defined range #1
+F8F9 E172 F8F9 User defined range #1
+F8FA E173 F8FA User defined range #1
+F8FB E174 F8FB User defined range #1
+F8FC E175 F8FC User defined range #1
+F8FD E176 F8FD User defined range #1
+F8FE E177 F8FE User defined range #1
+F9A1 E178 F9A1 User defined range #1
+F9A2 E179 F9A2 User defined range #1
+F9A3 E17A F9A3 User defined range #1
+F9A4 E17B F9A4 User defined range #1
+F9A5 E17C F9A5 User defined range #1
+F9A6 E17D F9A6 User defined range #1
+F9A7 E17E F9A7 User defined range #1
+F9A8 E17F F9A8 User defined range #1
+F9A9 E180 F9A9 User defined range #1
+F9AA E181 F9AA User defined range #1
+F9AB E182 F9AB User defined range #1
+F9AC E183 F9AC User defined range #1
+F9AD E184 F9AD User defined range #1
+F9AE E185 F9AE User defined range #1
+F9AF E186 F9AF User defined range #1
+F9B0 E187 F9B0 User defined range #1
+F9B1 E188 F9B1 User defined range #1
+F9B2 E189 F9B2 User defined range #1
+F9B3 E18A F9B3 User defined range #1
+F9B4 E18B F9B4 User defined range #1
+F9B5 E18C F9B5 User defined range #1
+F9B6 E18D F9B6 User defined range #1
+F9B7 E18E F9B7 User defined range #1
+F9B8 E18F F9B8 User defined range #1
+F9B9 E190 F9B9 User defined range #1
+F9BA E191 F9BA User defined range #1
+F9BB E192 F9BB User defined range #1
+F9BC E193 F9BC User defined range #1
+F9BD E194 F9BD User defined range #1
+F9BE E195 F9BE User defined range #1
+F9BF E196 F9BF User defined range #1
+F9C0 E197 F9C0 User defined range #1
+F9C1 E198 F9C1 User defined range #1
+F9C2 E199 F9C2 User defined range #1
+F9C3 E19A F9C3 User defined range #1
+F9C4 E19B F9C4 User defined range #1
+F9C5 E19C F9C5 User defined range #1
+F9C6 E19D F9C6 User defined range #1
+F9C7 E19E F9C7 User defined range #1
+F9C8 E19F F9C8 User defined range #1
+F9C9 E1A0 F9C9 User defined range #1
+F9CA E1A1 F9CA User defined range #1
+F9CB E1A2 F9CB User defined range #1
+F9CC E1A3 F9CC User defined range #1
+F9CD E1A4 F9CD User defined range #1
+F9CE E1A5 F9CE User defined range #1
+F9CF E1A6 F9CF User defined range #1
+F9D0 E1A7 F9D0 User defined range #1
+F9D1 E1A8 F9D1 User defined range #1
+F9D2 E1A9 F9D2 User defined range #1
+F9D3 E1AA F9D3 User defined range #1
+F9D4 E1AB F9D4 User defined range #1
+F9D5 E1AC F9D5 User defined range #1
+F9D6 E1AD F9D6 User defined range #1
+F9D7 E1AE F9D7 User defined range #1
+F9D8 E1AF F9D8 User defined range #1
+F9D9 E1B0 F9D9 User defined range #1
+F9DA E1B1 F9DA User defined range #1
+F9DB E1B2 F9DB User defined range #1
+F9DC E1B3 F9DC User defined range #1
+F9DD E1B4 F9DD User defined range #1
+F9DE E1B5 F9DE User defined range #1
+F9DF E1B6 F9DF User defined range #1
+F9E0 E1B7 F9E0 User defined range #1
+F9E1 E1B8 F9E1 User defined range #1
+F9E2 E1B9 F9E2 User defined range #1
+F9E3 E1BA F9E3 User defined range #1
+F9E4 E1BB F9E4 User defined range #1
+F9E5 E1BC F9E5 User defined range #1
+F9E6 E1BD F9E6 User defined range #1
+F9E7 E1BE F9E7 User defined range #1
+F9E8 E1BF F9E8 User defined range #1
+F9E9 E1C0 F9E9 User defined range #1
+F9EA E1C1 F9EA User defined range #1
+F9EB E1C2 F9EB User defined range #1
+F9EC E1C3 F9EC User defined range #1
+F9ED E1C4 F9ED User defined range #1
+F9EE E1C5 F9EE User defined range #1
+F9EF E1C6 F9EF User defined range #1
+F9F0 E1C7 F9F0 User defined range #1
+F9F1 E1C8 F9F1 User defined range #1
+F9F2 E1C9 F9F2 User defined range #1
+F9F3 E1CA F9F3 User defined range #1
+F9F4 E1CB F9F4 User defined range #1
+F9F5 E1CC F9F5 User defined range #1
+F9F6 E1CD F9F6 User defined range #1
+F9F7 E1CE F9F7 User defined range #1
+F9F8 E1CF F9F8 User defined range #1
+F9F9 E1D0 F9F9 User defined range #1
+F9FA E1D1 F9FA User defined range #1
+F9FB E1D2 F9FB User defined range #1
+F9FC E1D3 F9FC User defined range #1
+F9FD E1D4 F9FD User defined range #1
+F9FE E1D5 F9FE User defined range #1
+FAA1 E1D6 FAA1 User defined range #1
+FAA2 E1D7 FAA2 User defined range #1
+FAA3 E1D8 FAA3 User defined range #1
+FAA4 E1D9 FAA4 User defined range #1
+FAA5 E1DA FAA5 User defined range #1
+FAA6 E1DB FAA6 User defined range #1
+FAA7 E1DC FAA7 User defined range #1
+FAA8 E1DD FAA8 User defined range #1
+FAA9 E1DE FAA9 User defined range #1
+FAAA E1DF FAAA User defined range #1
+FAAB E1E0 FAAB User defined range #1
+FAAC E1E1 FAAC User defined range #1
+FAAD E1E2 FAAD User defined range #1
+FAAE E1E3 FAAE User defined range #1
+FAAF E1E4 FAAF User defined range #1
+FAB0 E1E5 FAB0 User defined range #1
+FAB1 E1E6 FAB1 User defined range #1
+FAB2 E1E7 FAB2 User defined range #1
+FAB3 E1E8 FAB3 User defined range #1
+FAB4 E1E9 FAB4 User defined range #1
+FAB5 E1EA FAB5 User defined range #1
+FAB6 E1EB FAB6 User defined range #1
+FAB7 E1EC FAB7 User defined range #1
+FAB8 E1ED FAB8 User defined range #1
+FAB9 E1EE FAB9 User defined range #1
+FABA E1EF FABA User defined range #1
+FABB E1F0 FABB User defined range #1
+FABC E1F1 FABC User defined range #1
+FABD E1F2 FABD User defined range #1
+FABE E1F3 FABE User defined range #1
+FABF E1F4 FABF User defined range #1
+FAC0 E1F5 FAC0 User defined range #1
+FAC1 E1F6 FAC1 User defined range #1
+FAC2 E1F7 FAC2 User defined range #1
+FAC3 E1F8 FAC3 User defined range #1
+FAC4 E1F9 FAC4 User defined range #1
+FAC5 E1FA FAC5 User defined range #1
+FAC6 E1FB FAC6 User defined range #1
+FAC7 E1FC FAC7 User defined range #1
+FAC8 E1FD FAC8 User defined range #1
+FAC9 E1FE FAC9 User defined range #1
+FACA E1FF FACA User defined range #1
+FACB E200 FACB User defined range #1
+FACC E201 FACC User defined range #1
+FACD E202 FACD User defined range #1
+FACE E203 FACE User defined range #1
+FACF E204 FACF User defined range #1
+FAD0 E205 FAD0 User defined range #1
+FAD1 E206 FAD1 User defined range #1
+FAD2 E207 FAD2 User defined range #1
+FAD3 E208 FAD3 User defined range #1
+FAD4 E209 FAD4 User defined range #1
+FAD5 E20A FAD5 User defined range #1
+FAD6 E20B FAD6 User defined range #1
+FAD7 E20C FAD7 User defined range #1
+FAD8 E20D FAD8 User defined range #1
+FAD9 E20E FAD9 User defined range #1
+FADA E20F FADA User defined range #1
+FADB E210 FADB User defined range #1
+FADC E211 FADC User defined range #1
+FADD E212 FADD User defined range #1
+FADE E213 FADE User defined range #1
+FADF E214 FADF User defined range #1
+FAE0 E215 FAE0 User defined range #1
+FAE1 E216 FAE1 User defined range #1
+FAE2 E217 FAE2 User defined range #1
+FAE3 E218 FAE3 User defined range #1
+FAE4 E219 FAE4 User defined range #1
+FAE5 E21A FAE5 User defined range #1
+FAE6 E21B FAE6 User defined range #1
+FAE7 E21C FAE7 User defined range #1
+FAE8 E21D FAE8 User defined range #1
+FAE9 E21E FAE9 User defined range #1
+FAEA E21F FAEA User defined range #1
+FAEB E220 FAEB User defined range #1
+FAEC E221 FAEC User defined range #1
+FAED E222 FAED User defined range #1
+FAEE E223 FAEE User defined range #1
+FAEF E224 FAEF User defined range #1
+FAF0 E225 FAF0 User defined range #1
+FAF1 E226 FAF1 User defined range #1
+FAF2 E227 FAF2 User defined range #1
+FAF3 E228 FAF3 User defined range #1
+FAF4 E229 FAF4 User defined range #1
+FAF5 E22A FAF5 User defined range #1
+FAF6 E22B FAF6 User defined range #1
+FAF7 E22C FAF7 User defined range #1
+FAF8 E22D FAF8 User defined range #1
+FAF9 E22E FAF9 User defined range #1
+FAFA E22F FAFA User defined range #1
+FAFB E230 FAFB User defined range #1
+FAFC E231 FAFC User defined range #1
+FAFD E232 FAFD User defined range #1
+FAFE E233 FAFE User defined range #1
+FBA1 E234 FBA1 User defined range #1
+FBA2 E235 FBA2 User defined range #1
+FBA3 E236 FBA3 User defined range #1
+FBA4 E237 FBA4 User defined range #1
+FBA5 E238 FBA5 User defined range #1
+FBA6 E239 FBA6 User defined range #1
+FBA7 E23A FBA7 User defined range #1
+FBA8 E23B FBA8 User defined range #1
+FBA9 E23C FBA9 User defined range #1
+FBAA E23D FBAA User defined range #1
+FBAB E23E FBAB User defined range #1
+FBAC E23F FBAC User defined range #1
+FBAD E240 FBAD User defined range #1
+FBAE E241 FBAE User defined range #1
+FBAF E242 FBAF User defined range #1
+FBB0 E243 FBB0 User defined range #1
+FBB1 E244 FBB1 User defined range #1
+FBB2 E245 FBB2 User defined range #1
+FBB3 E246 FBB3 User defined range #1
+FBB4 E247 FBB4 User defined range #1
+FBB5 E248 FBB5 User defined range #1
+FBB6 E249 FBB6 User defined range #1
+FBB7 E24A FBB7 User defined range #1
+FBB8 E24B FBB8 User defined range #1
+FBB9 E24C FBB9 User defined range #1
+FBBA E24D FBBA User defined range #1
+FBBB E24E FBBB User defined range #1
+FBBC E24F FBBC User defined range #1
+FBBD E250 FBBD User defined range #1
+FBBE E251 FBBE User defined range #1
+FBBF E252 FBBF User defined range #1
+FBC0 E253 FBC0 User defined range #1
+FBC1 E254 FBC1 User defined range #1
+FBC2 E255 FBC2 User defined range #1
+FBC3 E256 FBC3 User defined range #1
+FBC4 E257 FBC4 User defined range #1
+FBC5 E258 FBC5 User defined range #1
+FBC6 E259 FBC6 User defined range #1
+FBC7 E25A FBC7 User defined range #1
+FBC8 E25B FBC8 User defined range #1
+FBC9 E25C FBC9 User defined range #1
+FBCA E25D FBCA User defined range #1
+FBCB E25E FBCB User defined range #1
+FBCC E25F FBCC User defined range #1
+FBCD E260 FBCD User defined range #1
+FBCE E261 FBCE User defined range #1
+FBCF E262 FBCF User defined range #1
+FBD0 E263 FBD0 User defined range #1
+FBD1 E264 FBD1 User defined range #1
+FBD2 E265 FBD2 User defined range #1
+FBD3 E266 FBD3 User defined range #1
+FBD4 E267 FBD4 User defined range #1
+FBD5 E268 FBD5 User defined range #1
+FBD6 E269 FBD6 User defined range #1
+FBD7 E26A FBD7 User defined range #1
+FBD8 E26B FBD8 User defined range #1
+FBD9 E26C FBD9 User defined range #1
+FBDA E26D FBDA User defined range #1
+FBDB E26E FBDB User defined range #1
+FBDC E26F FBDC User defined range #1
+FBDD E270 FBDD User defined range #1
+FBDE E271 FBDE User defined range #1
+FBDF E272 FBDF User defined range #1
+FBE0 E273 FBE0 User defined range #1
+FBE1 E274 FBE1 User defined range #1
+FBE2 E275 FBE2 User defined range #1
+FBE3 E276 FBE3 User defined range #1
+FBE4 E277 FBE4 User defined range #1
+FBE5 E278 FBE5 User defined range #1
+FBE6 E279 FBE6 User defined range #1
+FBE7 E27A FBE7 User defined range #1
+FBE8 E27B FBE8 User defined range #1
+FBE9 E27C FBE9 User defined range #1
+FBEA E27D FBEA User defined range #1
+FBEB E27E FBEB User defined range #1
+FBEC E27F FBEC User defined range #1
+FBED E280 FBED User defined range #1
+FBEE E281 FBEE User defined range #1
+FBEF E282 FBEF User defined range #1
+FBF0 E283 FBF0 User defined range #1
+FBF1 E284 FBF1 User defined range #1
+FBF2 E285 FBF2 User defined range #1
+FBF3 E286 FBF3 User defined range #1
+FBF4 E287 FBF4 User defined range #1
+FBF5 E288 FBF5 User defined range #1
+FBF6 E289 FBF6 User defined range #1
+FBF7 E28A FBF7 User defined range #1
+FBF8 E28B FBF8 User defined range #1
+FBF9 E28C FBF9 User defined range #1
+FBFA E28D FBFA User defined range #1
+FBFB E28E FBFB User defined range #1
+FBFC E28F FBFC User defined range #1
+FBFD E290 FBFD User defined range #1
+FBFE E291 FBFE User defined range #1
+FCA1 E292 FCA1 User defined range #1
+FCA2 E293 FCA2 User defined range #1
+FCA3 E294 FCA3 User defined range #1
+FCA4 E295 FCA4 User defined range #1
+FCA5 E296 FCA5 User defined range #1
+FCA6 E297 FCA6 User defined range #1
+FCA7 E298 FCA7 User defined range #1
+FCA8 E299 FCA8 User defined range #1
+FCA9 E29A FCA9 User defined range #1
+FCAA E29B FCAA User defined range #1
+FCAB E29C FCAB User defined range #1
+FCAC E29D FCAC User defined range #1
+FCAD E29E FCAD User defined range #1
+FCAE E29F FCAE User defined range #1
+FCAF E2A0 FCAF User defined range #1
+FCB0 E2A1 FCB0 User defined range #1
+FCB1 E2A2 FCB1 User defined range #1
+FCB2 E2A3 FCB2 User defined range #1
+FCB3 E2A4 FCB3 User defined range #1
+FCB4 E2A5 FCB4 User defined range #1
+FCB5 E2A6 FCB5 User defined range #1
+FCB6 E2A7 FCB6 User defined range #1
+FCB7 E2A8 FCB7 User defined range #1
+FCB8 E2A9 FCB8 User defined range #1
+FCB9 E2AA FCB9 User defined range #1
+FCBA E2AB FCBA User defined range #1
+FCBB E2AC FCBB User defined range #1
+FCBC E2AD FCBC User defined range #1
+FCBD E2AE FCBD User defined range #1
+FCBE E2AF FCBE User defined range #1
+FCBF E2B0 FCBF User defined range #1
+FCC0 E2B1 FCC0 User defined range #1
+FCC1 E2B2 FCC1 User defined range #1
+FCC2 E2B3 FCC2 User defined range #1
+FCC3 E2B4 FCC3 User defined range #1
+FCC4 E2B5 FCC4 User defined range #1
+FCC5 E2B6 FCC5 User defined range #1
+FCC6 E2B7 FCC6 User defined range #1
+FCC7 E2B8 FCC7 User defined range #1
+FCC8 E2B9 FCC8 User defined range #1
+FCC9 E2BA FCC9 User defined range #1
+FCCA E2BB FCCA User defined range #1
+FCCB E2BC FCCB User defined range #1
+FCCC E2BD FCCC User defined range #1
+FCCD E2BE FCCD User defined range #1
+FCCE E2BF FCCE User defined range #1
+FCCF E2C0 FCCF User defined range #1
+FCD0 E2C1 FCD0 User defined range #1
+FCD1 E2C2 FCD1 User defined range #1
+FCD2 E2C3 FCD2 User defined range #1
+FCD3 E2C4 FCD3 User defined range #1
+FCD4 E2C5 FCD4 User defined range #1
+FCD5 E2C6 FCD5 User defined range #1
+FCD6 E2C7 FCD6 User defined range #1
+FCD7 E2C8 FCD7 User defined range #1
+FCD8 E2C9 FCD8 User defined range #1
+FCD9 E2CA FCD9 User defined range #1
+FCDA E2CB FCDA User defined range #1
+FCDB E2CC FCDB User defined range #1
+FCDC E2CD FCDC User defined range #1
+FCDD E2CE FCDD User defined range #1
+FCDE E2CF FCDE User defined range #1
+FCDF E2D0 FCDF User defined range #1
+FCE0 E2D1 FCE0 User defined range #1
+FCE1 E2D2 FCE1 User defined range #1
+FCE2 E2D3 FCE2 User defined range #1
+FCE3 E2D4 FCE3 User defined range #1
+FCE4 E2D5 FCE4 User defined range #1
+FCE5 E2D6 FCE5 User defined range #1
+FCE6 E2D7 FCE6 User defined range #1
+FCE7 E2D8 FCE7 User defined range #1
+FCE8 E2D9 FCE8 User defined range #1
+FCE9 E2DA FCE9 User defined range #1
+FCEA E2DB FCEA User defined range #1
+FCEB E2DC FCEB User defined range #1
+FCEC E2DD FCEC User defined range #1
+FCED E2DE FCED User defined range #1
+FCEE E2DF FCEE User defined range #1
+FCEF E2E0 FCEF User defined range #1
+FCF0 E2E1 FCF0 User defined range #1
+FCF1 E2E2 FCF1 User defined range #1
+FCF2 E2E3 FCF2 User defined range #1
+FCF3 E2E4 FCF3 User defined range #1
+FCF4 E2E5 FCF4 User defined range #1
+FCF5 E2E6 FCF5 User defined range #1
+FCF6 E2E7 FCF6 User defined range #1
+FCF7 E2E8 FCF7 User defined range #1
+FCF8 E2E9 FCF8 User defined range #1
+FCF9 E2EA FCF9 User defined range #1
+FCFA E2EB FCFA User defined range #1
+FCFB E2EC FCFB User defined range #1
+FCFC E2ED FCFC User defined range #1
+FCFD E2EE FCFD User defined range #1
+FCFE E2EF FCFE User defined range #1
+FDA1 E2F0 FDA1 User defined range #1
+FDA2 E2F1 FDA2 User defined range #1
+FDA3 E2F2 FDA3 User defined range #1
+FDA4 E2F3 FDA4 User defined range #1
+FDA5 E2F4 FDA5 User defined range #1
+FDA6 E2F5 FDA6 User defined range #1
+FDA7 E2F6 FDA7 User defined range #1
+FDA8 E2F7 FDA8 User defined range #1
+FDA9 E2F8 FDA9 User defined range #1
+FDAA E2F9 FDAA User defined range #1
+FDAB E2FA FDAB User defined range #1
+FDAC E2FB FDAC User defined range #1
+FDAD E2FC FDAD User defined range #1
+FDAE E2FD FDAE User defined range #1
+FDAF E2FE FDAF User defined range #1
+FDB0 E2FF FDB0 User defined range #1
+FDB1 E300 FDB1 User defined range #1
+FDB2 E301 FDB2 User defined range #1
+FDB3 E302 FDB3 User defined range #1
+FDB4 E303 FDB4 User defined range #1
+FDB5 E304 FDB5 User defined range #1
+FDB6 E305 FDB6 User defined range #1
+FDB7 E306 FDB7 User defined range #1
+FDB8 E307 FDB8 User defined range #1
+FDB9 E308 FDB9 User defined range #1
+FDBA E309 FDBA User defined range #1
+FDBB E30A FDBB User defined range #1
+FDBC E30B FDBC User defined range #1
+FDBD E30C FDBD User defined range #1
+FDBE E30D FDBE User defined range #1
+FDBF E30E FDBF User defined range #1
+FDC0 E30F FDC0 User defined range #1
+FDC1 E310 FDC1 User defined range #1
+FDC2 E311 FDC2 User defined range #1
+FDC3 E312 FDC3 User defined range #1
+FDC4 E313 FDC4 User defined range #1
+FDC5 E314 FDC5 User defined range #1
+FDC6 E315 FDC6 User defined range #1
+FDC7 E316 FDC7 User defined range #1
+FDC8 E317 FDC8 User defined range #1
+FDC9 E318 FDC9 User defined range #1
+FDCA E319 FDCA User defined range #1
+FDCB E31A FDCB User defined range #1
+FDCC E31B FDCC User defined range #1
+FDCD E31C FDCD User defined range #1
+FDCE E31D FDCE User defined range #1
+FDCF E31E FDCF User defined range #1
+FDD0 E31F FDD0 User defined range #1
+FDD1 E320 FDD1 User defined range #1
+FDD2 E321 FDD2 User defined range #1
+FDD3 E322 FDD3 User defined range #1
+FDD4 E323 FDD4 User defined range #1
+FDD5 E324 FDD5 User defined range #1
+FDD6 E325 FDD6 User defined range #1
+FDD7 E326 FDD7 User defined range #1
+FDD8 E327 FDD8 User defined range #1
+FDD9 E328 FDD9 User defined range #1
+FDDA E329 FDDA User defined range #1
+FDDB E32A FDDB User defined range #1
+FDDC E32B FDDC User defined range #1
+FDDD E32C FDDD User defined range #1
+FDDE E32D FDDE User defined range #1
+FDDF E32E FDDF User defined range #1
+FDE0 E32F FDE0 User defined range #1
+FDE1 E330 FDE1 User defined range #1
+FDE2 E331 FDE2 User defined range #1
+FDE3 E332 FDE3 User defined range #1
+FDE4 E333 FDE4 User defined range #1
+FDE5 E334 FDE5 User defined range #1
+FDE6 E335 FDE6 User defined range #1
+FDE7 E336 FDE7 User defined range #1
+FDE8 E337 FDE8 User defined range #1
+FDE9 E338 FDE9 User defined range #1
+FDEA E339 FDEA User defined range #1
+FDEB E33A FDEB User defined range #1
+FDEC E33B FDEC User defined range #1
+FDED E33C FDED User defined range #1
+FDEE E33D FDEE User defined range #1
+FDEF E33E FDEF User defined range #1
+FDF0 E33F FDF0 User defined range #1
+FDF1 E340 FDF1 User defined range #1
+FDF2 E341 FDF2 User defined range #1
+FDF3 E342 FDF3 User defined range #1
+FDF4 E343 FDF4 User defined range #1
+FDF5 E344 FDF5 User defined range #1
+FDF6 E345 FDF6 User defined range #1
+FDF7 E346 FDF7 User defined range #1
+FDF8 E347 FDF8 User defined range #1
+FDF9 E348 FDF9 User defined range #1
+FDFA E349 FDFA User defined range #1
+FDFB E34A FDFB User defined range #1
+FDFC E34B FDFC User defined range #1
+FDFD E34C FDFD User defined range #1
+FDFE E34D FDFE User defined range #1
+FEA1 E34E FEA1 User defined range #1
+FEA2 E34F FEA2 User defined range #1
+FEA3 E350 FEA3 User defined range #1
+FEA4 E351 FEA4 User defined range #1
+FEA5 E352 FEA5 User defined range #1
+FEA6 E353 FEA6 User defined range #1
+FEA7 E354 FEA7 User defined range #1
+FEA8 E355 FEA8 User defined range #1
+FEA9 E356 FEA9 User defined range #1
+FEAA E357 FEAA User defined range #1
+FEAB E358 FEAB User defined range #1
+FEAC E359 FEAC User defined range #1
+FEAD E35A FEAD User defined range #1
+FEAE E35B FEAE User defined range #1
+FEAF E35C FEAF User defined range #1
+FEB0 E35D FEB0 User defined range #1
+FEB1 E35E FEB1 User defined range #1
+FEB2 E35F FEB2 User defined range #1
+FEB3 E360 FEB3 User defined range #1
+FEB4 E361 FEB4 User defined range #1
+FEB5 E362 FEB5 User defined range #1
+FEB6 E363 FEB6 User defined range #1
+FEB7 E364 FEB7 User defined range #1
+FEB8 E365 FEB8 User defined range #1
+FEB9 E366 FEB9 User defined range #1
+FEBA E367 FEBA User defined range #1
+FEBB E368 FEBB User defined range #1
+FEBC E369 FEBC User defined range #1
+FEBD E36A FEBD User defined range #1
+FEBE E36B FEBE User defined range #1
+FEBF E36C FEBF User defined range #1
+FEC0 E36D FEC0 User defined range #1
+FEC1 E36E FEC1 User defined range #1
+FEC2 E36F FEC2 User defined range #1
+FEC3 E370 FEC3 User defined range #1
+FEC4 E371 FEC4 User defined range #1
+FEC5 E372 FEC5 User defined range #1
+FEC6 E373 FEC6 User defined range #1
+FEC7 E374 FEC7 User defined range #1
+FEC8 E375 FEC8 User defined range #1
+FEC9 E376 FEC9 User defined range #1
+FECA E377 FECA User defined range #1
+FECB E378 FECB User defined range #1
+FECC E379 FECC User defined range #1
+FECD E37A FECD User defined range #1
+FECE E37B FECE User defined range #1
+FECF E37C FECF User defined range #1
+FED0 E37D FED0 User defined range #1
+FED1 E37E FED1 User defined range #1
+FED2 E37F FED2 User defined range #1
+FED3 E380 FED3 User defined range #1
+FED4 E381 FED4 User defined range #1
+FED5 E382 FED5 User defined range #1
+FED6 E383 FED6 User defined range #1
+FED7 E384 FED7 User defined range #1
+FED8 E385 FED8 User defined range #1
+FED9 E386 FED9 User defined range #1
+FEDA E387 FEDA User defined range #1
+FEDB E388 FEDB User defined range #1
+FEDC E389 FEDC User defined range #1
+FEDD E38A FEDD User defined range #1
+FEDE E38B FEDE User defined range #1
+FEDF E38C FEDF User defined range #1
+FEE0 E38D FEE0 User defined range #1
+FEE1 E38E FEE1 User defined range #1
+FEE2 E38F FEE2 User defined range #1
+FEE3 E390 FEE3 User defined range #1
+FEE4 E391 FEE4 User defined range #1
+FEE5 E392 FEE5 User defined range #1
+FEE6 E393 FEE6 User defined range #1
+FEE7 E394 FEE7 User defined range #1
+FEE8 E395 FEE8 User defined range #1
+FEE9 E396 FEE9 User defined range #1
+FEEA E397 FEEA User defined range #1
+FEEB E398 FEEB User defined range #1
+FEEC E399 FEEC User defined range #1
+FEED E39A FEED User defined range #1
+FEEE E39B FEEE User defined range #1
+FEEF E39C FEEF User defined range #1
+FEF0 E39D FEF0 User defined range #1
+FEF1 E39E FEF1 User defined range #1
+FEF2 E39F FEF2 User defined range #1
+FEF3 E3A0 FEF3 User defined range #1
+FEF4 E3A1 FEF4 User defined range #1
+FEF5 E3A2 FEF5 User defined range #1
+FEF6 E3A3 FEF6 User defined range #1
+FEF7 E3A4 FEF7 User defined range #1
+FEF8 E3A5 FEF8 User defined range #1
+FEF9 E3A6 FEF9 User defined range #1
+FEFA E3A7 FEFA User defined range #1
+FEFB E3A8 FEFB User defined range #1
+FEFC E3A9 FEFC User defined range #1
+FEFD E3AA FEFD User defined range #1
+FEFE E3AB FEFE User defined range #1
+Characters with unsafe Unicode round trip
+select hex(ujis), hex(ucs2), hex(ujis2), name from t1 where ujis<>ujis2 order by ujis;
+hex(ujis) hex(ucs2) hex(ujis2) name
+8FA1A1 003F 3F UNASSIGNED
+8FA1A2 003F 3F UNASSIGNED
+8FA1A3 003F 3F UNASSIGNED
+8FA1A4 003F 3F UNASSIGNED
+8FA1A5 003F 3F UNASSIGNED
+8FA1A6 003F 3F UNASSIGNED
+8FA1A7 003F 3F UNASSIGNED
+8FA1A8 003F 3F UNASSIGNED
+8FA1A9 003F 3F UNASSIGNED
+8FA1AA 003F 3F UNASSIGNED
+8FA1AB 003F 3F UNASSIGNED
+8FA1AC 003F 3F UNASSIGNED
+8FA1AD 003F 3F UNASSIGNED
+8FA1AE 003F 3F UNASSIGNED
+8FA1AF 003F 3F UNASSIGNED
+8FA1B0 003F 3F UNASSIGNED
+8FA1B1 003F 3F UNASSIGNED
+8FA1B2 003F 3F UNASSIGNED
+8FA1B3 003F 3F UNASSIGNED
+8FA1B4 003F 3F UNASSIGNED
+8FA1B5 003F 3F UNASSIGNED
+8FA1B6 003F 3F UNASSIGNED
+8FA1B7 003F 3F UNASSIGNED
+8FA1B8 003F 3F UNASSIGNED
+8FA1B9 003F 3F UNASSIGNED
+8FA1BA 003F 3F UNASSIGNED
+8FA1BB 003F 3F UNASSIGNED
+8FA1BC 003F 3F UNASSIGNED
+8FA1BD 003F 3F UNASSIGNED
+8FA1BE 003F 3F UNASSIGNED
+8FA1BF 003F 3F UNASSIGNED
+8FA1C0 003F 3F UNASSIGNED
+8FA1C1 003F 3F UNASSIGNED
+8FA1C2 003F 3F UNASSIGNED
+8FA1C3 003F 3F UNASSIGNED
+8FA1C4 003F 3F UNASSIGNED
+8FA1C5 003F 3F UNASSIGNED
+8FA1C6 003F 3F UNASSIGNED
+8FA1C7 003F 3F UNASSIGNED
+8FA1C8 003F 3F UNASSIGNED
+8FA1C9 003F 3F UNASSIGNED
+8FA1CA 003F 3F UNASSIGNED
+8FA1CB 003F 3F UNASSIGNED
+8FA1CC 003F 3F UNASSIGNED
+8FA1CD 003F 3F UNASSIGNED
+8FA1CE 003F 3F UNASSIGNED
+8FA1CF 003F 3F UNASSIGNED
+8FA1D0 003F 3F UNASSIGNED
+8FA1D1 003F 3F UNASSIGNED
+8FA1D2 003F 3F UNASSIGNED
+8FA1D3 003F 3F UNASSIGNED
+8FA1D4 003F 3F UNASSIGNED
+8FA1D5 003F 3F UNASSIGNED
+8FA1D6 003F 3F UNASSIGNED
+8FA1D7 003F 3F UNASSIGNED
+8FA1D8 003F 3F UNASSIGNED
+8FA1D9 003F 3F UNASSIGNED
+8FA1DA 003F 3F UNASSIGNED
+8FA1DB 003F 3F UNASSIGNED
+8FA1DC 003F 3F UNASSIGNED
+8FA1DD 003F 3F UNASSIGNED
+8FA1DE 003F 3F UNASSIGNED
+8FA1DF 003F 3F UNASSIGNED
+8FA1E0 003F 3F UNASSIGNED
+8FA1E1 003F 3F UNASSIGNED
+8FA1E2 003F 3F UNASSIGNED
+8FA1E3 003F 3F UNASSIGNED
+8FA1E4 003F 3F UNASSIGNED
+8FA1E5 003F 3F UNASSIGNED
+8FA1E6 003F 3F UNASSIGNED
+8FA1E7 003F 3F UNASSIGNED
+8FA1E8 003F 3F UNASSIGNED
+8FA1E9 003F 3F UNASSIGNED
+8FA1EA 003F 3F UNASSIGNED
+8FA1EB 003F 3F UNASSIGNED
+8FA1EC 003F 3F UNASSIGNED
+8FA1ED 003F 3F UNASSIGNED
+8FA1EE 003F 3F UNASSIGNED
+8FA1EF 003F 3F UNASSIGNED
+8FA1F0 003F 3F UNASSIGNED
+8FA1F1 003F 3F UNASSIGNED
+8FA1F2 003F 3F UNASSIGNED
+8FA1F3 003F 3F UNASSIGNED
+8FA1F4 003F 3F UNASSIGNED
+8FA1F5 003F 3F UNASSIGNED
+8FA1F6 003F 3F UNASSIGNED
+8FA1F7 003F 3F UNASSIGNED
+8FA1F8 003F 3F UNASSIGNED
+8FA1F9 003F 3F UNASSIGNED
+8FA1FA 003F 3F UNASSIGNED
+8FA1FB 003F 3F UNASSIGNED
+8FA1FC 003F 3F UNASSIGNED
+8FA1FD 003F 3F UNASSIGNED
+8FA1FE 003F 3F UNASSIGNED
+8FA2A1 003F 3F UNASSIGNED
+8FA2A2 003F 3F UNASSIGNED
+8FA2A3 003F 3F UNASSIGNED
+8FA2A4 003F 3F UNASSIGNED
+8FA2A5 003F 3F UNASSIGNED
+8FA2A6 003F 3F UNASSIGNED
+8FA2A7 003F 3F UNASSIGNED
+8FA2A8 003F 3F UNASSIGNED
+8FA2A9 003F 3F UNASSIGNED
+8FA2AA 003F 3F UNASSIGNED
+8FA2AB 003F 3F UNASSIGNED
+8FA2AC 003F 3F UNASSIGNED
+8FA2AD 003F 3F UNASSIGNED
+8FA2AE 003F 3F UNASSIGNED
+8FA2B7 007E 7E U+007E TILDE
+8FA2BA 003F 3F UNASSIGNED
+8FA2BB 003F 3F UNASSIGNED
+8FA2BC 003F 3F UNASSIGNED
+8FA2BD 003F 3F UNASSIGNED
+8FA2BE 003F 3F UNASSIGNED
+8FA2BF 003F 3F UNASSIGNED
+8FA2C0 003F 3F UNASSIGNED
+8FA2C1 003F 3F UNASSIGNED
+8FA2C5 003F 3F UNASSIGNED
+8FA2C6 003F 3F UNASSIGNED
+8FA2C7 003F 3F UNASSIGNED
+8FA2C8 003F 3F UNASSIGNED
+8FA2C9 003F 3F UNASSIGNED
+8FA2CA 003F 3F UNASSIGNED
+8FA2CB 003F 3F UNASSIGNED
+8FA2CC 003F 3F UNASSIGNED
+8FA2CD 003F 3F UNASSIGNED
+8FA2CE 003F 3F UNASSIGNED
+8FA2CF 003F 3F UNASSIGNED
+8FA2D0 003F 3F UNASSIGNED
+8FA2D1 003F 3F UNASSIGNED
+8FA2D2 003F 3F UNASSIGNED
+8FA2D3 003F 3F UNASSIGNED
+8FA2D4 003F 3F UNASSIGNED
+8FA2D5 003F 3F UNASSIGNED
+8FA2D6 003F 3F UNASSIGNED
+8FA2D7 003F 3F UNASSIGNED
+8FA2D8 003F 3F UNASSIGNED
+8FA2D9 003F 3F UNASSIGNED
+8FA2DA 003F 3F UNASSIGNED
+8FA2DB 003F 3F UNASSIGNED
+8FA2DC 003F 3F UNASSIGNED
+8FA2DD 003F 3F UNASSIGNED
+8FA2DE 003F 3F UNASSIGNED
+8FA2DF 003F 3F UNASSIGNED
+8FA2E0 003F 3F UNASSIGNED
+8FA2E1 003F 3F UNASSIGNED
+8FA2E2 003F 3F UNASSIGNED
+8FA2E3 003F 3F UNASSIGNED
+8FA2E4 003F 3F UNASSIGNED
+8FA2E5 003F 3F UNASSIGNED
+8FA2E6 003F 3F UNASSIGNED
+8FA2E7 003F 3F UNASSIGNED
+8FA2E8 003F 3F UNASSIGNED
+8FA2E9 003F 3F UNASSIGNED
+8FA2EA 003F 3F UNASSIGNED
+8FA2F2 003F 3F UNASSIGNED
+8FA2F3 003F 3F UNASSIGNED
+8FA2F4 003F 3F UNASSIGNED
+8FA2F5 003F 3F UNASSIGNED
+8FA2F6 003F 3F UNASSIGNED
+8FA2F7 003F 3F UNASSIGNED
+8FA2F8 003F 3F UNASSIGNED
+8FA2F9 003F 3F UNASSIGNED
+8FA2FA 003F 3F UNASSIGNED
+8FA2FB 003F 3F UNASSIGNED
+8FA2FC 003F 3F UNASSIGNED
+8FA2FD 003F 3F UNASSIGNED
+8FA2FE 003F 3F UNASSIGNED
+8FA3A1 003F 3F UNASSIGNED
+8FA3A2 003F 3F UNASSIGNED
+8FA3A3 003F 3F UNASSIGNED
+8FA3A4 003F 3F UNASSIGNED
+8FA3A5 003F 3F UNASSIGNED
+8FA3A6 003F 3F UNASSIGNED
+8FA3A7 003F 3F UNASSIGNED
+8FA3A8 003F 3F UNASSIGNED
+8FA3A9 003F 3F UNASSIGNED
+8FA3AA 003F 3F UNASSIGNED
+8FA3AB 003F 3F UNASSIGNED
+8FA3AC 003F 3F UNASSIGNED
+8FA3AD 003F 3F UNASSIGNED
+8FA3AE 003F 3F UNASSIGNED
+8FA3AF 003F 3F UNASSIGNED
+8FA3B0 003F 3F UNASSIGNED
+8FA3B1 003F 3F UNASSIGNED
+8FA3B2 003F 3F UNASSIGNED
+8FA3B3 003F 3F UNASSIGNED
+8FA3B4 003F 3F UNASSIGNED
+8FA3B5 003F 3F UNASSIGNED
+8FA3B6 003F 3F UNASSIGNED
+8FA3B7 003F 3F UNASSIGNED
+8FA3B8 003F 3F UNASSIGNED
+8FA3B9 003F 3F UNASSIGNED
+8FA3BA 003F 3F UNASSIGNED
+8FA3BB 003F 3F UNASSIGNED
+8FA3BC 003F 3F UNASSIGNED
+8FA3BD 003F 3F UNASSIGNED
+8FA3BE 003F 3F UNASSIGNED
+8FA3BF 003F 3F UNASSIGNED
+8FA3C0 003F 3F UNASSIGNED
+8FA3C1 003F 3F UNASSIGNED
+8FA3C2 003F 3F UNASSIGNED
+8FA3C3 003F 3F UNASSIGNED
+8FA3C4 003F 3F UNASSIGNED
+8FA3C5 003F 3F UNASSIGNED
+8FA3C6 003F 3F UNASSIGNED
+8FA3C7 003F 3F UNASSIGNED
+8FA3C8 003F 3F UNASSIGNED
+8FA3C9 003F 3F UNASSIGNED
+8FA3CA 003F 3F UNASSIGNED
+8FA3CB 003F 3F UNASSIGNED
+8FA3CC 003F 3F UNASSIGNED
+8FA3CD 003F 3F UNASSIGNED
+8FA3CE 003F 3F UNASSIGNED
+8FA3CF 003F 3F UNASSIGNED
+8FA3D0 003F 3F UNASSIGNED
+8FA3D1 003F 3F UNASSIGNED
+8FA3D2 003F 3F UNASSIGNED
+8FA3D3 003F 3F UNASSIGNED
+8FA3D4 003F 3F UNASSIGNED
+8FA3D5 003F 3F UNASSIGNED
+8FA3D6 003F 3F UNASSIGNED
+8FA3D7 003F 3F UNASSIGNED
+8FA3D8 003F 3F UNASSIGNED
+8FA3D9 003F 3F UNASSIGNED
+8FA3DA 003F 3F UNASSIGNED
+8FA3DB 003F 3F UNASSIGNED
+8FA3DC 003F 3F UNASSIGNED
+8FA3DD 003F 3F UNASSIGNED
+8FA3DE 003F 3F UNASSIGNED
+8FA3DF 003F 3F UNASSIGNED
+8FA3E0 003F 3F UNASSIGNED
+8FA3E1 003F 3F UNASSIGNED
+8FA3E2 003F 3F UNASSIGNED
+8FA3E3 003F 3F UNASSIGNED
+8FA3E4 003F 3F UNASSIGNED
+8FA3E5 003F 3F UNASSIGNED
+8FA3E6 003F 3F UNASSIGNED
+8FA3E7 003F 3F UNASSIGNED
+8FA3E8 003F 3F UNASSIGNED
+8FA3E9 003F 3F UNASSIGNED
+8FA3EA 003F 3F UNASSIGNED
+8FA3EB 003F 3F UNASSIGNED
+8FA3EC 003F 3F UNASSIGNED
+8FA3ED 003F 3F UNASSIGNED
+8FA3EE 003F 3F UNASSIGNED
+8FA3EF 003F 3F UNASSIGNED
+8FA3F0 003F 3F UNASSIGNED
+8FA3F1 003F 3F UNASSIGNED
+8FA3F2 003F 3F UNASSIGNED
+8FA3F3 003F 3F UNASSIGNED
+8FA3F4 003F 3F UNASSIGNED
+8FA3F5 003F 3F UNASSIGNED
+8FA3F6 003F 3F UNASSIGNED
+8FA3F7 003F 3F UNASSIGNED
+8FA3F8 003F 3F UNASSIGNED
+8FA3F9 003F 3F UNASSIGNED
+8FA3FA 003F 3F UNASSIGNED
+8FA3FB 003F 3F UNASSIGNED
+8FA3FC 003F 3F UNASSIGNED
+8FA3FD 003F 3F UNASSIGNED
+8FA3FE 003F 3F UNASSIGNED
+8FA4A1 003F 3F UNASSIGNED
+8FA4A2 003F 3F UNASSIGNED
+8FA4A3 003F 3F UNASSIGNED
+8FA4A4 003F 3F UNASSIGNED
+8FA4A5 003F 3F UNASSIGNED
+8FA4A6 003F 3F UNASSIGNED
+8FA4A7 003F 3F UNASSIGNED
+8FA4A8 003F 3F UNASSIGNED
+8FA4A9 003F 3F UNASSIGNED
+8FA4AA 003F 3F UNASSIGNED
+8FA4AB 003F 3F UNASSIGNED
+8FA4AC 003F 3F UNASSIGNED
+8FA4AD 003F 3F UNASSIGNED
+8FA4AE 003F 3F UNASSIGNED
+8FA4AF 003F 3F UNASSIGNED
+8FA4B0 003F 3F UNASSIGNED
+8FA4B1 003F 3F UNASSIGNED
+8FA4B2 003F 3F UNASSIGNED
+8FA4B3 003F 3F UNASSIGNED
+8FA4B4 003F 3F UNASSIGNED
+8FA4B5 003F 3F UNASSIGNED
+8FA4B6 003F 3F UNASSIGNED
+8FA4B7 003F 3F UNASSIGNED
+8FA4B8 003F 3F UNASSIGNED
+8FA4B9 003F 3F UNASSIGNED
+8FA4BA 003F 3F UNASSIGNED
+8FA4BB 003F 3F UNASSIGNED
+8FA4BC 003F 3F UNASSIGNED
+8FA4BD 003F 3F UNASSIGNED
+8FA4BE 003F 3F UNASSIGNED
+8FA4BF 003F 3F UNASSIGNED
+8FA4C0 003F 3F UNASSIGNED
+8FA4C1 003F 3F UNASSIGNED
+8FA4C2 003F 3F UNASSIGNED
+8FA4C3 003F 3F UNASSIGNED
+8FA4C4 003F 3F UNASSIGNED
+8FA4C5 003F 3F UNASSIGNED
+8FA4C6 003F 3F UNASSIGNED
+8FA4C7 003F 3F UNASSIGNED
+8FA4C8 003F 3F UNASSIGNED
+8FA4C9 003F 3F UNASSIGNED
+8FA4CA 003F 3F UNASSIGNED
+8FA4CB 003F 3F UNASSIGNED
+8FA4CC 003F 3F UNASSIGNED
+8FA4CD 003F 3F UNASSIGNED
+8FA4CE 003F 3F UNASSIGNED
+8FA4CF 003F 3F UNASSIGNED
+8FA4D0 003F 3F UNASSIGNED
+8FA4D1 003F 3F UNASSIGNED
+8FA4D2 003F 3F UNASSIGNED
+8FA4D3 003F 3F UNASSIGNED
+8FA4D4 003F 3F UNASSIGNED
+8FA4D5 003F 3F UNASSIGNED
+8FA4D6 003F 3F UNASSIGNED
+8FA4D7 003F 3F UNASSIGNED
+8FA4D8 003F 3F UNASSIGNED
+8FA4D9 003F 3F UNASSIGNED
+8FA4DA 003F 3F UNASSIGNED
+8FA4DB 003F 3F UNASSIGNED
+8FA4DC 003F 3F UNASSIGNED
+8FA4DD 003F 3F UNASSIGNED
+8FA4DE 003F 3F UNASSIGNED
+8FA4DF 003F 3F UNASSIGNED
+8FA4E0 003F 3F UNASSIGNED
+8FA4E1 003F 3F UNASSIGNED
+8FA4E2 003F 3F UNASSIGNED
+8FA4E3 003F 3F UNASSIGNED
+8FA4E4 003F 3F UNASSIGNED
+8FA4E5 003F 3F UNASSIGNED
+8FA4E6 003F 3F UNASSIGNED
+8FA4E7 003F 3F UNASSIGNED
+8FA4E8 003F 3F UNASSIGNED
+8FA4E9 003F 3F UNASSIGNED
+8FA4EA 003F 3F UNASSIGNED
+8FA4EB 003F 3F UNASSIGNED
+8FA4EC 003F 3F UNASSIGNED
+8FA4ED 003F 3F UNASSIGNED
+8FA4EE 003F 3F UNASSIGNED
+8FA4EF 003F 3F UNASSIGNED
+8FA4F0 003F 3F UNASSIGNED
+8FA4F1 003F 3F UNASSIGNED
+8FA4F2 003F 3F UNASSIGNED
+8FA4F3 003F 3F UNASSIGNED
+8FA4F4 003F 3F UNASSIGNED
+8FA4F5 003F 3F UNASSIGNED
+8FA4F6 003F 3F UNASSIGNED
+8FA4F7 003F 3F UNASSIGNED
+8FA4F8 003F 3F UNASSIGNED
+8FA4F9 003F 3F UNASSIGNED
+8FA4FA 003F 3F UNASSIGNED
+8FA4FB 003F 3F UNASSIGNED
+8FA4FC 003F 3F UNASSIGNED
+8FA4FD 003F 3F UNASSIGNED
+8FA4FE 003F 3F UNASSIGNED
+8FA5A1 003F 3F UNASSIGNED
+8FA5A2 003F 3F UNASSIGNED
+8FA5A3 003F 3F UNASSIGNED
+8FA5A4 003F 3F UNASSIGNED
+8FA5A5 003F 3F UNASSIGNED
+8FA5A6 003F 3F UNASSIGNED
+8FA5A7 003F 3F UNASSIGNED
+8FA5A8 003F 3F UNASSIGNED
+8FA5A9 003F 3F UNASSIGNED
+8FA5AA 003F 3F UNASSIGNED
+8FA5AB 003F 3F UNASSIGNED
+8FA5AC 003F 3F UNASSIGNED
+8FA5AD 003F 3F UNASSIGNED
+8FA5AE 003F 3F UNASSIGNED
+8FA5AF 003F 3F UNASSIGNED
+8FA5B0 003F 3F UNASSIGNED
+8FA5B1 003F 3F UNASSIGNED
+8FA5B2 003F 3F UNASSIGNED
+8FA5B3 003F 3F UNASSIGNED
+8FA5B4 003F 3F UNASSIGNED
+8FA5B5 003F 3F UNASSIGNED
+8FA5B6 003F 3F UNASSIGNED
+8FA5B7 003F 3F UNASSIGNED
+8FA5B8 003F 3F UNASSIGNED
+8FA5B9 003F 3F UNASSIGNED
+8FA5BA 003F 3F UNASSIGNED
+8FA5BB 003F 3F UNASSIGNED
+8FA5BC 003F 3F UNASSIGNED
+8FA5BD 003F 3F UNASSIGNED
+8FA5BE 003F 3F UNASSIGNED
+8FA5BF 003F 3F UNASSIGNED
+8FA5C0 003F 3F UNASSIGNED
+8FA5C1 003F 3F UNASSIGNED
+8FA5C2 003F 3F UNASSIGNED
+8FA5C3 003F 3F UNASSIGNED
+8FA5C4 003F 3F UNASSIGNED
+8FA5C5 003F 3F UNASSIGNED
+8FA5C6 003F 3F UNASSIGNED
+8FA5C7 003F 3F UNASSIGNED
+8FA5C8 003F 3F UNASSIGNED
+8FA5C9 003F 3F UNASSIGNED
+8FA5CA 003F 3F UNASSIGNED
+8FA5CB 003F 3F UNASSIGNED
+8FA5CC 003F 3F UNASSIGNED
+8FA5CD 003F 3F UNASSIGNED
+8FA5CE 003F 3F UNASSIGNED
+8FA5CF 003F 3F UNASSIGNED
+8FA5D0 003F 3F UNASSIGNED
+8FA5D1 003F 3F UNASSIGNED
+8FA5D2 003F 3F UNASSIGNED
+8FA5D3 003F 3F UNASSIGNED
+8FA5D4 003F 3F UNASSIGNED
+8FA5D5 003F 3F UNASSIGNED
+8FA5D6 003F 3F UNASSIGNED
+8FA5D7 003F 3F UNASSIGNED
+8FA5D8 003F 3F UNASSIGNED
+8FA5D9 003F 3F UNASSIGNED
+8FA5DA 003F 3F UNASSIGNED
+8FA5DB 003F 3F UNASSIGNED
+8FA5DC 003F 3F UNASSIGNED
+8FA5DD 003F 3F UNASSIGNED
+8FA5DE 003F 3F UNASSIGNED
+8FA5DF 003F 3F UNASSIGNED
+8FA5E0 003F 3F UNASSIGNED
+8FA5E1 003F 3F UNASSIGNED
+8FA5E2 003F 3F UNASSIGNED
+8FA5E3 003F 3F UNASSIGNED
+8FA5E4 003F 3F UNASSIGNED
+8FA5E5 003F 3F UNASSIGNED
+8FA5E6 003F 3F UNASSIGNED
+8FA5E7 003F 3F UNASSIGNED
+8FA5E8 003F 3F UNASSIGNED
+8FA5E9 003F 3F UNASSIGNED
+8FA5EA 003F 3F UNASSIGNED
+8FA5EB 003F 3F UNASSIGNED
+8FA5EC 003F 3F UNASSIGNED
+8FA5ED 003F 3F UNASSIGNED
+8FA5EE 003F 3F UNASSIGNED
+8FA5EF 003F 3F UNASSIGNED
+8FA5F0 003F 3F UNASSIGNED
+8FA5F1 003F 3F UNASSIGNED
+8FA5F2 003F 3F UNASSIGNED
+8FA5F3 003F 3F UNASSIGNED
+8FA5F4 003F 3F UNASSIGNED
+8FA5F5 003F 3F UNASSIGNED
+8FA5F6 003F 3F UNASSIGNED
+8FA5F7 003F 3F UNASSIGNED
+8FA5F8 003F 3F UNASSIGNED
+8FA5F9 003F 3F UNASSIGNED
+8FA5FA 003F 3F UNASSIGNED
+8FA5FB 003F 3F UNASSIGNED
+8FA5FC 003F 3F UNASSIGNED
+8FA5FD 003F 3F UNASSIGNED
+8FA5FE 003F 3F UNASSIGNED
+8FA6A1 003F 3F UNASSIGNED
+8FA6A2 003F 3F UNASSIGNED
+8FA6A3 003F 3F UNASSIGNED
+8FA6A4 003F 3F UNASSIGNED
+8FA6A5 003F 3F UNASSIGNED
+8FA6A6 003F 3F UNASSIGNED
+8FA6A7 003F 3F UNASSIGNED
+8FA6A8 003F 3F UNASSIGNED
+8FA6A9 003F 3F UNASSIGNED
+8FA6AA 003F 3F UNASSIGNED
+8FA6AB 003F 3F UNASSIGNED
+8FA6AC 003F 3F UNASSIGNED
+8FA6AD 003F 3F UNASSIGNED
+8FA6AE 003F 3F UNASSIGNED
+8FA6AF 003F 3F UNASSIGNED
+8FA6B0 003F 3F UNASSIGNED
+8FA6B1 003F 3F UNASSIGNED
+8FA6B2 003F 3F UNASSIGNED
+8FA6B3 003F 3F UNASSIGNED
+8FA6B4 003F 3F UNASSIGNED
+8FA6B5 003F 3F UNASSIGNED
+8FA6B6 003F 3F UNASSIGNED
+8FA6B7 003F 3F UNASSIGNED
+8FA6B8 003F 3F UNASSIGNED
+8FA6B9 003F 3F UNASSIGNED
+8FA6BA 003F 3F UNASSIGNED
+8FA6BB 003F 3F UNASSIGNED
+8FA6BC 003F 3F UNASSIGNED
+8FA6BD 003F 3F UNASSIGNED
+8FA6BE 003F 3F UNASSIGNED
+8FA6BF 003F 3F UNASSIGNED
+8FA6C0 003F 3F UNASSIGNED
+8FA6C1 003F 3F UNASSIGNED
+8FA6C2 003F 3F UNASSIGNED
+8FA6C3 003F 3F UNASSIGNED
+8FA6C4 003F 3F UNASSIGNED
+8FA6C5 003F 3F UNASSIGNED
+8FA6C6 003F 3F UNASSIGNED
+8FA6C7 003F 3F UNASSIGNED
+8FA6C8 003F 3F UNASSIGNED
+8FA6C9 003F 3F UNASSIGNED
+8FA6CA 003F 3F UNASSIGNED
+8FA6CB 003F 3F UNASSIGNED
+8FA6CC 003F 3F UNASSIGNED
+8FA6CD 003F 3F UNASSIGNED
+8FA6CE 003F 3F UNASSIGNED
+8FA6CF 003F 3F UNASSIGNED
+8FA6D0 003F 3F UNASSIGNED
+8FA6D1 003F 3F UNASSIGNED
+8FA6D2 003F 3F UNASSIGNED
+8FA6D3 003F 3F UNASSIGNED
+8FA6D4 003F 3F UNASSIGNED
+8FA6D5 003F 3F UNASSIGNED
+8FA6D6 003F 3F UNASSIGNED
+8FA6D7 003F 3F UNASSIGNED
+8FA6D8 003F 3F UNASSIGNED
+8FA6D9 003F 3F UNASSIGNED
+8FA6DA 003F 3F UNASSIGNED
+8FA6DB 003F 3F UNASSIGNED
+8FA6DC 003F 3F UNASSIGNED
+8FA6DD 003F 3F UNASSIGNED
+8FA6DE 003F 3F UNASSIGNED
+8FA6DF 003F 3F UNASSIGNED
+8FA6E0 003F 3F UNASSIGNED
+8FA6E6 003F 3F UNASSIGNED
+8FA6E8 003F 3F UNASSIGNED
+8FA6EB 003F 3F UNASSIGNED
+8FA6ED 003F 3F UNASSIGNED
+8FA6EE 003F 3F UNASSIGNED
+8FA6EF 003F 3F UNASSIGNED
+8FA6F0 003F 3F UNASSIGNED
+8FA6FD 003F 3F UNASSIGNED
+8FA6FE 003F 3F UNASSIGNED
+8FA7A1 003F 3F UNASSIGNED
+8FA7A2 003F 3F UNASSIGNED
+8FA7A3 003F 3F UNASSIGNED
+8FA7A4 003F 3F UNASSIGNED
+8FA7A5 003F 3F UNASSIGNED
+8FA7A6 003F 3F UNASSIGNED
+8FA7A7 003F 3F UNASSIGNED
+8FA7A8 003F 3F UNASSIGNED
+8FA7A9 003F 3F UNASSIGNED
+8FA7AA 003F 3F UNASSIGNED
+8FA7AB 003F 3F UNASSIGNED
+8FA7AC 003F 3F UNASSIGNED
+8FA7AD 003F 3F UNASSIGNED
+8FA7AE 003F 3F UNASSIGNED
+8FA7AF 003F 3F UNASSIGNED
+8FA7B0 003F 3F UNASSIGNED
+8FA7B1 003F 3F UNASSIGNED
+8FA7B2 003F 3F UNASSIGNED
+8FA7B3 003F 3F UNASSIGNED
+8FA7B4 003F 3F UNASSIGNED
+8FA7B5 003F 3F UNASSIGNED
+8FA7B6 003F 3F UNASSIGNED
+8FA7B7 003F 3F UNASSIGNED
+8FA7B8 003F 3F UNASSIGNED
+8FA7B9 003F 3F UNASSIGNED
+8FA7BA 003F 3F UNASSIGNED
+8FA7BB 003F 3F UNASSIGNED
+8FA7BC 003F 3F UNASSIGNED
+8FA7BD 003F 3F UNASSIGNED
+8FA7BE 003F 3F UNASSIGNED
+8FA7BF 003F 3F UNASSIGNED
+8FA7C0 003F 3F UNASSIGNED
+8FA7C1 003F 3F UNASSIGNED
+8FA7CF 003F 3F UNASSIGNED
+8FA7D0 003F 3F UNASSIGNED
+8FA7D1 003F 3F UNASSIGNED
+8FA7D2 003F 3F UNASSIGNED
+8FA7D3 003F 3F UNASSIGNED
+8FA7D4 003F 3F UNASSIGNED
+8FA7D5 003F 3F UNASSIGNED
+8FA7D6 003F 3F UNASSIGNED
+8FA7D7 003F 3F UNASSIGNED
+8FA7D8 003F 3F UNASSIGNED
+8FA7D9 003F 3F UNASSIGNED
+8FA7DA 003F 3F UNASSIGNED
+8FA7DB 003F 3F UNASSIGNED
+8FA7DC 003F 3F UNASSIGNED
+8FA7DD 003F 3F UNASSIGNED
+8FA7DE 003F 3F UNASSIGNED
+8FA7DF 003F 3F UNASSIGNED
+8FA7E0 003F 3F UNASSIGNED
+8FA7E1 003F 3F UNASSIGNED
+8FA7E2 003F 3F UNASSIGNED
+8FA7E3 003F 3F UNASSIGNED
+8FA7E4 003F 3F UNASSIGNED
+8FA7E5 003F 3F UNASSIGNED
+8FA7E6 003F 3F UNASSIGNED
+8FA7E7 003F 3F UNASSIGNED
+8FA7E8 003F 3F UNASSIGNED
+8FA7E9 003F 3F UNASSIGNED
+8FA7EA 003F 3F UNASSIGNED
+8FA7EB 003F 3F UNASSIGNED
+8FA7EC 003F 3F UNASSIGNED
+8FA7ED 003F 3F UNASSIGNED
+8FA7EE 003F 3F UNASSIGNED
+8FA7EF 003F 3F UNASSIGNED
+8FA7F0 003F 3F UNASSIGNED
+8FA7F1 003F 3F UNASSIGNED
+8FA8A1 003F 3F UNASSIGNED
+8FA8A2 003F 3F UNASSIGNED
+8FA8A3 003F 3F UNASSIGNED
+8FA8A4 003F 3F UNASSIGNED
+8FA8A5 003F 3F UNASSIGNED
+8FA8A6 003F 3F UNASSIGNED
+8FA8A7 003F 3F UNASSIGNED
+8FA8A8 003F 3F UNASSIGNED
+8FA8A9 003F 3F UNASSIGNED
+8FA8AA 003F 3F UNASSIGNED
+8FA8AB 003F 3F UNASSIGNED
+8FA8AC 003F 3F UNASSIGNED
+8FA8AD 003F 3F UNASSIGNED
+8FA8AE 003F 3F UNASSIGNED
+8FA8AF 003F 3F UNASSIGNED
+8FA8B0 003F 3F UNASSIGNED
+8FA8B1 003F 3F UNASSIGNED
+8FA8B2 003F 3F UNASSIGNED
+8FA8B3 003F 3F UNASSIGNED
+8FA8B4 003F 3F UNASSIGNED
+8FA8B5 003F 3F UNASSIGNED
+8FA8B6 003F 3F UNASSIGNED
+8FA8B7 003F 3F UNASSIGNED
+8FA8B8 003F 3F UNASSIGNED
+8FA8B9 003F 3F UNASSIGNED
+8FA8BA 003F 3F UNASSIGNED
+8FA8BB 003F 3F UNASSIGNED
+8FA8BC 003F 3F UNASSIGNED
+8FA8BD 003F 3F UNASSIGNED
+8FA8BE 003F 3F UNASSIGNED
+8FA8BF 003F 3F UNASSIGNED
+8FA8C0 003F 3F UNASSIGNED
+8FA8C1 003F 3F UNASSIGNED
+8FA8C2 003F 3F UNASSIGNED
+8FA8C3 003F 3F UNASSIGNED
+8FA8C4 003F 3F UNASSIGNED
+8FA8C5 003F 3F UNASSIGNED
+8FA8C6 003F 3F UNASSIGNED
+8FA8C7 003F 3F UNASSIGNED
+8FA8C8 003F 3F UNASSIGNED
+8FA8C9 003F 3F UNASSIGNED
+8FA8CA 003F 3F UNASSIGNED
+8FA8CB 003F 3F UNASSIGNED
+8FA8CC 003F 3F UNASSIGNED
+8FA8CD 003F 3F UNASSIGNED
+8FA8CE 003F 3F UNASSIGNED
+8FA8CF 003F 3F UNASSIGNED
+8FA8D0 003F 3F UNASSIGNED
+8FA8D1 003F 3F UNASSIGNED
+8FA8D2 003F 3F UNASSIGNED
+8FA8D3 003F 3F UNASSIGNED
+8FA8D4 003F 3F UNASSIGNED
+8FA8D5 003F 3F UNASSIGNED
+8FA8D6 003F 3F UNASSIGNED
+8FA8D7 003F 3F UNASSIGNED
+8FA8D8 003F 3F UNASSIGNED
+8FA8D9 003F 3F UNASSIGNED
+8FA8DA 003F 3F UNASSIGNED
+8FA8DB 003F 3F UNASSIGNED
+8FA8DC 003F 3F UNASSIGNED
+8FA8DD 003F 3F UNASSIGNED
+8FA8DE 003F 3F UNASSIGNED
+8FA8DF 003F 3F UNASSIGNED
+8FA8E0 003F 3F UNASSIGNED
+8FA8E1 003F 3F UNASSIGNED
+8FA8E2 003F 3F UNASSIGNED
+8FA8E3 003F 3F UNASSIGNED
+8FA8E4 003F 3F UNASSIGNED
+8FA8E5 003F 3F UNASSIGNED
+8FA8E6 003F 3F UNASSIGNED
+8FA8E7 003F 3F UNASSIGNED
+8FA8E8 003F 3F UNASSIGNED
+8FA8E9 003F 3F UNASSIGNED
+8FA8EA 003F 3F UNASSIGNED
+8FA8EB 003F 3F UNASSIGNED
+8FA8EC 003F 3F UNASSIGNED
+8FA8ED 003F 3F UNASSIGNED
+8FA8EE 003F 3F UNASSIGNED
+8FA8EF 003F 3F UNASSIGNED
+8FA8F0 003F 3F UNASSIGNED
+8FA8F1 003F 3F UNASSIGNED
+8FA8F2 003F 3F UNASSIGNED
+8FA8F3 003F 3F UNASSIGNED
+8FA8F4 003F 3F UNASSIGNED
+8FA8F5 003F 3F UNASSIGNED
+8FA8F6 003F 3F UNASSIGNED
+8FA8F7 003F 3F UNASSIGNED
+8FA8F8 003F 3F UNASSIGNED
+8FA8F9 003F 3F UNASSIGNED
+8FA8FA 003F 3F UNASSIGNED
+8FA8FB 003F 3F UNASSIGNED
+8FA8FC 003F 3F UNASSIGNED
+8FA8FD 003F 3F UNASSIGNED
+8FA8FE 003F 3F UNASSIGNED
+8FA9A3 003F 3F UNASSIGNED
+8FA9A5 003F 3F UNASSIGNED
+8FA9A7 003F 3F UNASSIGNED
+8FA9AA 003F 3F UNASSIGNED
+8FA9AE 003F 3F UNASSIGNED
+8FA9B1 003F 3F UNASSIGNED
+8FA9B2 003F 3F UNASSIGNED
+8FA9B3 003F 3F UNASSIGNED
+8FA9B4 003F 3F UNASSIGNED
+8FA9B5 003F 3F UNASSIGNED
+8FA9B6 003F 3F UNASSIGNED
+8FA9B7 003F 3F UNASSIGNED
+8FA9B8 003F 3F UNASSIGNED
+8FA9B9 003F 3F UNASSIGNED
+8FA9BA 003F 3F UNASSIGNED
+8FA9BB 003F 3F UNASSIGNED
+8FA9BC 003F 3F UNASSIGNED
+8FA9BD 003F 3F UNASSIGNED
+8FA9BE 003F 3F UNASSIGNED
+8FA9BF 003F 3F UNASSIGNED
+8FA9C0 003F 3F UNASSIGNED
+8FA9D1 003F 3F UNASSIGNED
+8FA9D2 003F 3F UNASSIGNED
+8FA9D3 003F 3F UNASSIGNED
+8FA9D4 003F 3F UNASSIGNED
+8FA9D5 003F 3F UNASSIGNED
+8FA9D6 003F 3F UNASSIGNED
+8FA9D7 003F 3F UNASSIGNED
+8FA9D8 003F 3F UNASSIGNED
+8FA9D9 003F 3F UNASSIGNED
+8FA9DA 003F 3F UNASSIGNED
+8FA9DB 003F 3F UNASSIGNED
+8FA9DC 003F 3F UNASSIGNED
+8FA9DD 003F 3F UNASSIGNED
+8FA9DE 003F 3F UNASSIGNED
+8FA9DF 003F 3F UNASSIGNED
+8FA9E0 003F 3F UNASSIGNED
+8FA9E1 003F 3F UNASSIGNED
+8FA9E2 003F 3F UNASSIGNED
+8FA9E3 003F 3F UNASSIGNED
+8FA9E4 003F 3F UNASSIGNED
+8FA9E5 003F 3F UNASSIGNED
+8FA9E6 003F 3F UNASSIGNED
+8FA9E7 003F 3F UNASSIGNED
+8FA9E8 003F 3F UNASSIGNED
+8FA9E9 003F 3F UNASSIGNED
+8FA9EA 003F 3F UNASSIGNED
+8FA9EB 003F 3F UNASSIGNED
+8FA9EC 003F 3F UNASSIGNED
+8FA9ED 003F 3F UNASSIGNED
+8FA9EE 003F 3F UNASSIGNED
+8FA9EF 003F 3F UNASSIGNED
+8FA9F0 003F 3F UNASSIGNED
+8FA9F1 003F 3F UNASSIGNED
+8FA9F2 003F 3F UNASSIGNED
+8FA9F3 003F 3F UNASSIGNED
+8FA9F4 003F 3F UNASSIGNED
+8FA9F5 003F 3F UNASSIGNED
+8FA9F6 003F 3F UNASSIGNED
+8FA9F7 003F 3F UNASSIGNED
+8FA9F8 003F 3F UNASSIGNED
+8FA9F9 003F 3F UNASSIGNED
+8FA9FA 003F 3F UNASSIGNED
+8FA9FB 003F 3F UNASSIGNED
+8FA9FC 003F 3F UNASSIGNED
+8FA9FD 003F 3F UNASSIGNED
+8FA9FE 003F 3F UNASSIGNED
+8FAAB9 003F 3F UNASSIGNED
+8FAAF8 003F 3F UNASSIGNED
+8FAAF9 003F 3F UNASSIGNED
+8FAAFA 003F 3F UNASSIGNED
+8FAAFB 003F 3F UNASSIGNED
+8FAAFC 003F 3F UNASSIGNED
+8FAAFD 003F 3F UNASSIGNED
+8FAAFE 003F 3F UNASSIGNED
+8FABBC 003F 3F UNASSIGNED
+8FABC4 003F 3F UNASSIGNED
+8FABF8 003F 3F UNASSIGNED
+8FABF9 003F 3F UNASSIGNED
+8FABFA 003F 3F UNASSIGNED
+8FABFB 003F 3F UNASSIGNED
+8FABFC 003F 3F UNASSIGNED
+8FABFD 003F 3F UNASSIGNED
+8FABFE 003F 3F UNASSIGNED
+8FACA1 003F 3F UNASSIGNED
+8FACA2 003F 3F UNASSIGNED
+8FACA3 003F 3F UNASSIGNED
+8FACA4 003F 3F UNASSIGNED
+8FACA5 003F 3F UNASSIGNED
+8FACA6 003F 3F UNASSIGNED
+8FACA7 003F 3F UNASSIGNED
+8FACA8 003F 3F UNASSIGNED
+8FACA9 003F 3F UNASSIGNED
+8FACAA 003F 3F UNASSIGNED
+8FACAB 003F 3F UNASSIGNED
+8FACAC 003F 3F UNASSIGNED
+8FACAD 003F 3F UNASSIGNED
+8FACAE 003F 3F UNASSIGNED
+8FACAF 003F 3F UNASSIGNED
+8FACB0 003F 3F UNASSIGNED
+8FACB1 003F 3F UNASSIGNED
+8FACB2 003F 3F UNASSIGNED
+8FACB3 003F 3F UNASSIGNED
+8FACB4 003F 3F UNASSIGNED
+8FACB5 003F 3F UNASSIGNED
+8FACB6 003F 3F UNASSIGNED
+8FACB7 003F 3F UNASSIGNED
+8FACB8 003F 3F UNASSIGNED
+8FACB9 003F 3F UNASSIGNED
+8FACBA 003F 3F UNASSIGNED
+8FACBB 003F 3F UNASSIGNED
+8FACBC 003F 3F UNASSIGNED
+8FACBD 003F 3F UNASSIGNED
+8FACBE 003F 3F UNASSIGNED
+8FACBF 003F 3F UNASSIGNED
+8FACC0 003F 3F UNASSIGNED
+8FACC1 003F 3F UNASSIGNED
+8FACC2 003F 3F UNASSIGNED
+8FACC3 003F 3F UNASSIGNED
+8FACC4 003F 3F UNASSIGNED
+8FACC5 003F 3F UNASSIGNED
+8FACC6 003F 3F UNASSIGNED
+8FACC7 003F 3F UNASSIGNED
+8FACC8 003F 3F UNASSIGNED
+8FACC9 003F 3F UNASSIGNED
+8FACCA 003F 3F UNASSIGNED
+8FACCB 003F 3F UNASSIGNED
+8FACCC 003F 3F UNASSIGNED
+8FACCD 003F 3F UNASSIGNED
+8FACCE 003F 3F UNASSIGNED
+8FACCF 003F 3F UNASSIGNED
+8FACD0 003F 3F UNASSIGNED
+8FACD1 003F 3F UNASSIGNED
+8FACD2 003F 3F UNASSIGNED
+8FACD3 003F 3F UNASSIGNED
+8FACD4 003F 3F UNASSIGNED
+8FACD5 003F 3F UNASSIGNED
+8FACD6 003F 3F UNASSIGNED
+8FACD7 003F 3F UNASSIGNED
+8FACD8 003F 3F UNASSIGNED
+8FACD9 003F 3F UNASSIGNED
+8FACDA 003F 3F UNASSIGNED
+8FACDB 003F 3F UNASSIGNED
+8FACDC 003F 3F UNASSIGNED
+8FACDD 003F 3F UNASSIGNED
+8FACDE 003F 3F UNASSIGNED
+8FACDF 003F 3F UNASSIGNED
+8FACE0 003F 3F UNASSIGNED
+8FACE1 003F 3F UNASSIGNED
+8FACE2 003F 3F UNASSIGNED
+8FACE3 003F 3F UNASSIGNED
+8FACE4 003F 3F UNASSIGNED
+8FACE5 003F 3F UNASSIGNED
+8FACE6 003F 3F UNASSIGNED
+8FACE7 003F 3F UNASSIGNED
+8FACE8 003F 3F UNASSIGNED
+8FACE9 003F 3F UNASSIGNED
+8FACEA 003F 3F UNASSIGNED
+8FACEB 003F 3F UNASSIGNED
+8FACEC 003F 3F UNASSIGNED
+8FACED 003F 3F UNASSIGNED
+8FACEE 003F 3F UNASSIGNED
+8FACEF 003F 3F UNASSIGNED
+8FACF0 003F 3F UNASSIGNED
+8FACF1 003F 3F UNASSIGNED
+8FACF2 003F 3F UNASSIGNED
+8FACF3 003F 3F UNASSIGNED
+8FACF4 003F 3F UNASSIGNED
+8FACF5 003F 3F UNASSIGNED
+8FACF6 003F 3F UNASSIGNED
+8FACF7 003F 3F UNASSIGNED
+8FACF8 003F 3F UNASSIGNED
+8FACF9 003F 3F UNASSIGNED
+8FACFA 003F 3F UNASSIGNED
+8FACFB 003F 3F UNASSIGNED
+8FACFC 003F 3F UNASSIGNED
+8FACFD 003F 3F UNASSIGNED
+8FACFE 003F 3F UNASSIGNED
+8FADA1 003F 3F UNASSIGNED
+8FADA2 003F 3F UNASSIGNED
+8FADA3 003F 3F UNASSIGNED
+8FADA4 003F 3F UNASSIGNED
+8FADA5 003F 3F UNASSIGNED
+8FADA6 003F 3F UNASSIGNED
+8FADA7 003F 3F UNASSIGNED
+8FADA8 003F 3F UNASSIGNED
+8FADA9 003F 3F UNASSIGNED
+8FADAA 003F 3F UNASSIGNED
+8FADAB 003F 3F UNASSIGNED
+8FADAC 003F 3F UNASSIGNED
+8FADAD 003F 3F UNASSIGNED
+8FADAE 003F 3F UNASSIGNED
+8FADAF 003F 3F UNASSIGNED
+8FADB0 003F 3F UNASSIGNED
+8FADB1 003F 3F UNASSIGNED
+8FADB2 003F 3F UNASSIGNED
+8FADB3 003F 3F UNASSIGNED
+8FADB4 003F 3F UNASSIGNED
+8FADB5 003F 3F UNASSIGNED
+8FADB6 003F 3F UNASSIGNED
+8FADB7 003F 3F UNASSIGNED
+8FADB8 003F 3F UNASSIGNED
+8FADB9 003F 3F UNASSIGNED
+8FADBA 003F 3F UNASSIGNED
+8FADBB 003F 3F UNASSIGNED
+8FADBC 003F 3F UNASSIGNED
+8FADBD 003F 3F UNASSIGNED
+8FADBE 003F 3F UNASSIGNED
+8FADBF 003F 3F UNASSIGNED
+8FADC0 003F 3F UNASSIGNED
+8FADC1 003F 3F UNASSIGNED
+8FADC2 003F 3F UNASSIGNED
+8FADC3 003F 3F UNASSIGNED
+8FADC4 003F 3F UNASSIGNED
+8FADC5 003F 3F UNASSIGNED
+8FADC6 003F 3F UNASSIGNED
+8FADC7 003F 3F UNASSIGNED
+8FADC8 003F 3F UNASSIGNED
+8FADC9 003F 3F UNASSIGNED
+8FADCA 003F 3F UNASSIGNED
+8FADCB 003F 3F UNASSIGNED
+8FADCC 003F 3F UNASSIGNED
+8FADCD 003F 3F UNASSIGNED
+8FADCE 003F 3F UNASSIGNED
+8FADCF 003F 3F UNASSIGNED
+8FADD0 003F 3F UNASSIGNED
+8FADD1 003F 3F UNASSIGNED
+8FADD2 003F 3F UNASSIGNED
+8FADD3 003F 3F UNASSIGNED
+8FADD4 003F 3F UNASSIGNED
+8FADD5 003F 3F UNASSIGNED
+8FADD6 003F 3F UNASSIGNED
+8FADD7 003F 3F UNASSIGNED
+8FADD8 003F 3F UNASSIGNED
+8FADD9 003F 3F UNASSIGNED
+8FADDA 003F 3F UNASSIGNED
+8FADDB 003F 3F UNASSIGNED
+8FADDC 003F 3F UNASSIGNED
+8FADDD 003F 3F UNASSIGNED
+8FADDE 003F 3F UNASSIGNED
+8FADDF 003F 3F UNASSIGNED
+8FADE0 003F 3F UNASSIGNED
+8FADE1 003F 3F UNASSIGNED
+8FADE2 003F 3F UNASSIGNED
+8FADE3 003F 3F UNASSIGNED
+8FADE4 003F 3F UNASSIGNED
+8FADE5 003F 3F UNASSIGNED
+8FADE6 003F 3F UNASSIGNED
+8FADE7 003F 3F UNASSIGNED
+8FADE8 003F 3F UNASSIGNED
+8FADE9 003F 3F UNASSIGNED
+8FADEA 003F 3F UNASSIGNED
+8FADEB 003F 3F UNASSIGNED
+8FADEC 003F 3F UNASSIGNED
+8FADED 003F 3F UNASSIGNED
+8FADEE 003F 3F UNASSIGNED
+8FADEF 003F 3F UNASSIGNED
+8FADF0 003F 3F UNASSIGNED
+8FADF1 003F 3F UNASSIGNED
+8FADF2 003F 3F UNASSIGNED
+8FADF3 003F 3F UNASSIGNED
+8FADF4 003F 3F UNASSIGNED
+8FADF5 003F 3F UNASSIGNED
+8FADF6 003F 3F UNASSIGNED
+8FADF7 003F 3F UNASSIGNED
+8FADF8 003F 3F UNASSIGNED
+8FADF9 003F 3F UNASSIGNED
+8FADFA 003F 3F UNASSIGNED
+8FADFB 003F 3F UNASSIGNED
+8FADFC 003F 3F UNASSIGNED
+8FADFD 003F 3F UNASSIGNED
+8FADFE 003F 3F UNASSIGNED
+8FAEA1 003F 3F UNASSIGNED
+8FAEA2 003F 3F UNASSIGNED
+8FAEA3 003F 3F UNASSIGNED
+8FAEA4 003F 3F UNASSIGNED
+8FAEA5 003F 3F UNASSIGNED
+8FAEA6 003F 3F UNASSIGNED
+8FAEA7 003F 3F UNASSIGNED
+8FAEA8 003F 3F UNASSIGNED
+8FAEA9 003F 3F UNASSIGNED
+8FAEAA 003F 3F UNASSIGNED
+8FAEAB 003F 3F UNASSIGNED
+8FAEAC 003F 3F UNASSIGNED
+8FAEAD 003F 3F UNASSIGNED
+8FAEAE 003F 3F UNASSIGNED
+8FAEAF 003F 3F UNASSIGNED
+8FAEB0 003F 3F UNASSIGNED
+8FAEB1 003F 3F UNASSIGNED
+8FAEB2 003F 3F UNASSIGNED
+8FAEB3 003F 3F UNASSIGNED
+8FAEB4 003F 3F UNASSIGNED
+8FAEB5 003F 3F UNASSIGNED
+8FAEB6 003F 3F UNASSIGNED
+8FAEB7 003F 3F UNASSIGNED
+8FAEB8 003F 3F UNASSIGNED
+8FAEB9 003F 3F UNASSIGNED
+8FAEBA 003F 3F UNASSIGNED
+8FAEBB 003F 3F UNASSIGNED
+8FAEBC 003F 3F UNASSIGNED
+8FAEBD 003F 3F UNASSIGNED
+8FAEBE 003F 3F UNASSIGNED
+8FAEBF 003F 3F UNASSIGNED
+8FAEC0 003F 3F UNASSIGNED
+8FAEC1 003F 3F UNASSIGNED
+8FAEC2 003F 3F UNASSIGNED
+8FAEC3 003F 3F UNASSIGNED
+8FAEC4 003F 3F UNASSIGNED
+8FAEC5 003F 3F UNASSIGNED
+8FAEC6 003F 3F UNASSIGNED
+8FAEC7 003F 3F UNASSIGNED
+8FAEC8 003F 3F UNASSIGNED
+8FAEC9 003F 3F UNASSIGNED
+8FAECA 003F 3F UNASSIGNED
+8FAECB 003F 3F UNASSIGNED
+8FAECC 003F 3F UNASSIGNED
+8FAECD 003F 3F UNASSIGNED
+8FAECE 003F 3F UNASSIGNED
+8FAECF 003F 3F UNASSIGNED
+8FAED0 003F 3F UNASSIGNED
+8FAED1 003F 3F UNASSIGNED
+8FAED2 003F 3F UNASSIGNED
+8FAED3 003F 3F UNASSIGNED
+8FAED4 003F 3F UNASSIGNED
+8FAED5 003F 3F UNASSIGNED
+8FAED6 003F 3F UNASSIGNED
+8FAED7 003F 3F UNASSIGNED
+8FAED8 003F 3F UNASSIGNED
+8FAED9 003F 3F UNASSIGNED
+8FAEDA 003F 3F UNASSIGNED
+8FAEDB 003F 3F UNASSIGNED
+8FAEDC 003F 3F UNASSIGNED
+8FAEDD 003F 3F UNASSIGNED
+8FAEDE 003F 3F UNASSIGNED
+8FAEDF 003F 3F UNASSIGNED
+8FAEE0 003F 3F UNASSIGNED
+8FAEE1 003F 3F UNASSIGNED
+8FAEE2 003F 3F UNASSIGNED
+8FAEE3 003F 3F UNASSIGNED
+8FAEE4 003F 3F UNASSIGNED
+8FAEE5 003F 3F UNASSIGNED
+8FAEE6 003F 3F UNASSIGNED
+8FAEE7 003F 3F UNASSIGNED
+8FAEE8 003F 3F UNASSIGNED
+8FAEE9 003F 3F UNASSIGNED
+8FAEEA 003F 3F UNASSIGNED
+8FAEEB 003F 3F UNASSIGNED
+8FAEEC 003F 3F UNASSIGNED
+8FAEED 003F 3F UNASSIGNED
+8FAEEE 003F 3F UNASSIGNED
+8FAEEF 003F 3F UNASSIGNED
+8FAEF0 003F 3F UNASSIGNED
+8FAEF1 003F 3F UNASSIGNED
+8FAEF2 003F 3F UNASSIGNED
+8FAEF3 003F 3F UNASSIGNED
+8FAEF4 003F 3F UNASSIGNED
+8FAEF5 003F 3F UNASSIGNED
+8FAEF6 003F 3F UNASSIGNED
+8FAEF7 003F 3F UNASSIGNED
+8FAEF8 003F 3F UNASSIGNED
+8FAEF9 003F 3F UNASSIGNED
+8FAEFA 003F 3F UNASSIGNED
+8FAEFB 003F 3F UNASSIGNED
+8FAEFC 003F 3F UNASSIGNED
+8FAEFD 003F 3F UNASSIGNED
+8FAEFE 003F 3F UNASSIGNED
+8FAFA1 003F 3F UNASSIGNED
+8FAFA2 003F 3F UNASSIGNED
+8FAFA3 003F 3F UNASSIGNED
+8FAFA4 003F 3F UNASSIGNED
+8FAFA5 003F 3F UNASSIGNED
+8FAFA6 003F 3F UNASSIGNED
+8FAFA7 003F 3F UNASSIGNED
+8FAFA8 003F 3F UNASSIGNED
+8FAFA9 003F 3F UNASSIGNED
+8FAFAA 003F 3F UNASSIGNED
+8FAFAB 003F 3F UNASSIGNED
+8FAFAC 003F 3F UNASSIGNED
+8FAFAD 003F 3F UNASSIGNED
+8FAFAE 003F 3F UNASSIGNED
+8FAFAF 003F 3F UNASSIGNED
+8FAFB0 003F 3F UNASSIGNED
+8FAFB1 003F 3F UNASSIGNED
+8FAFB2 003F 3F UNASSIGNED
+8FAFB3 003F 3F UNASSIGNED
+8FAFB4 003F 3F UNASSIGNED
+8FAFB5 003F 3F UNASSIGNED
+8FAFB6 003F 3F UNASSIGNED
+8FAFB7 003F 3F UNASSIGNED
+8FAFB8 003F 3F UNASSIGNED
+8FAFB9 003F 3F UNASSIGNED
+8FAFBA 003F 3F UNASSIGNED
+8FAFBB 003F 3F UNASSIGNED
+8FAFBC 003F 3F UNASSIGNED
+8FAFBD 003F 3F UNASSIGNED
+8FAFBE 003F 3F UNASSIGNED
+8FAFBF 003F 3F UNASSIGNED
+8FAFC0 003F 3F UNASSIGNED
+8FAFC1 003F 3F UNASSIGNED
+8FAFC2 003F 3F UNASSIGNED
+8FAFC3 003F 3F UNASSIGNED
+8FAFC4 003F 3F UNASSIGNED
+8FAFC5 003F 3F UNASSIGNED
+8FAFC6 003F 3F UNASSIGNED
+8FAFC7 003F 3F UNASSIGNED
+8FAFC8 003F 3F UNASSIGNED
+8FAFC9 003F 3F UNASSIGNED
+8FAFCA 003F 3F UNASSIGNED
+8FAFCB 003F 3F UNASSIGNED
+8FAFCC 003F 3F UNASSIGNED
+8FAFCD 003F 3F UNASSIGNED
+8FAFCE 003F 3F UNASSIGNED
+8FAFCF 003F 3F UNASSIGNED
+8FAFD0 003F 3F UNASSIGNED
+8FAFD1 003F 3F UNASSIGNED
+8FAFD2 003F 3F UNASSIGNED
+8FAFD3 003F 3F UNASSIGNED
+8FAFD4 003F 3F UNASSIGNED
+8FAFD5 003F 3F UNASSIGNED
+8FAFD6 003F 3F UNASSIGNED
+8FAFD7 003F 3F UNASSIGNED
+8FAFD8 003F 3F UNASSIGNED
+8FAFD9 003F 3F UNASSIGNED
+8FAFDA 003F 3F UNASSIGNED
+8FAFDB 003F 3F UNASSIGNED
+8FAFDC 003F 3F UNASSIGNED
+8FAFDD 003F 3F UNASSIGNED
+8FAFDE 003F 3F UNASSIGNED
+8FAFDF 003F 3F UNASSIGNED
+8FAFE0 003F 3F UNASSIGNED
+8FAFE1 003F 3F UNASSIGNED
+8FAFE2 003F 3F UNASSIGNED
+8FAFE3 003F 3F UNASSIGNED
+8FAFE4 003F 3F UNASSIGNED
+8FAFE5 003F 3F UNASSIGNED
+8FAFE6 003F 3F UNASSIGNED
+8FAFE7 003F 3F UNASSIGNED
+8FAFE8 003F 3F UNASSIGNED
+8FAFE9 003F 3F UNASSIGNED
+8FAFEA 003F 3F UNASSIGNED
+8FAFEB 003F 3F UNASSIGNED
+8FAFEC 003F 3F UNASSIGNED
+8FAFED 003F 3F UNASSIGNED
+8FAFEE 003F 3F UNASSIGNED
+8FAFEF 003F 3F UNASSIGNED
+8FAFF0 003F 3F UNASSIGNED
+8FAFF1 003F 3F UNASSIGNED
+8FAFF2 003F 3F UNASSIGNED
+8FAFF3 003F 3F UNASSIGNED
+8FAFF4 003F 3F UNASSIGNED
+8FAFF5 003F 3F UNASSIGNED
+8FAFF6 003F 3F UNASSIGNED
+8FAFF7 003F 3F UNASSIGNED
+8FAFF8 003F 3F UNASSIGNED
+8FAFF9 003F 3F UNASSIGNED
+8FAFFA 003F 3F UNASSIGNED
+8FAFFB 003F 3F UNASSIGNED
+8FAFFC 003F 3F UNASSIGNED
+8FAFFD 003F 3F UNASSIGNED
+8FAFFE 003F 3F UNASSIGNED
+8FEDE4 003F 3F UNASSIGNED
+8FEDE5 003F 3F UNASSIGNED
+8FEDE6 003F 3F UNASSIGNED
+8FEDE7 003F 3F UNASSIGNED
+8FEDE8 003F 3F UNASSIGNED
+8FEDE9 003F 3F UNASSIGNED
+8FEDEA 003F 3F UNASSIGNED
+8FEDEB 003F 3F UNASSIGNED
+8FEDEC 003F 3F UNASSIGNED
+8FEDED 003F 3F UNASSIGNED
+8FEDEE 003F 3F UNASSIGNED
+8FEDEF 003F 3F UNASSIGNED
+8FEDF0 003F 3F UNASSIGNED
+8FEDF1 003F 3F UNASSIGNED
+8FEDF2 003F 3F UNASSIGNED
+8FEDF3 003F 3F UNASSIGNED
+8FEDF4 003F 3F UNASSIGNED
+8FEDF5 003F 3F UNASSIGNED
+8FEDF6 003F 3F UNASSIGNED
+8FEDF7 003F 3F UNASSIGNED
+8FEDF8 003F 3F UNASSIGNED
+8FEDF9 003F 3F UNASSIGNED
+8FEDFA 003F 3F UNASSIGNED
+8FEDFB 003F 3F UNASSIGNED
+8FEDFC 003F 3F UNASSIGNED
+8FEDFD 003F 3F UNASSIGNED
+8FEDFE 003F 3F UNASSIGNED
+8FEEA1 003F 3F UNASSIGNED
+8FEEA2 003F 3F UNASSIGNED
+8FEEA3 003F 3F UNASSIGNED
+8FEEA4 003F 3F UNASSIGNED
+8FEEA5 003F 3F UNASSIGNED
+8FEEA6 003F 3F UNASSIGNED
+8FEEA7 003F 3F UNASSIGNED
+8FEEA8 003F 3F UNASSIGNED
+8FEEA9 003F 3F UNASSIGNED
+8FEEAA 003F 3F UNASSIGNED
+8FEEAB 003F 3F UNASSIGNED
+8FEEAC 003F 3F UNASSIGNED
+8FEEAD 003F 3F UNASSIGNED
+8FEEAE 003F 3F UNASSIGNED
+8FEEAF 003F 3F UNASSIGNED
+8FEEB0 003F 3F UNASSIGNED
+8FEEB1 003F 3F UNASSIGNED
+8FEEB2 003F 3F UNASSIGNED
+8FEEB3 003F 3F UNASSIGNED
+8FEEB4 003F 3F UNASSIGNED
+8FEEB5 003F 3F UNASSIGNED
+8FEEB6 003F 3F UNASSIGNED
+8FEEB7 003F 3F UNASSIGNED
+8FEEB8 003F 3F UNASSIGNED
+8FEEB9 003F 3F UNASSIGNED
+8FEEBA 003F 3F UNASSIGNED
+8FEEBB 003F 3F UNASSIGNED
+8FEEBC 003F 3F UNASSIGNED
+8FEEBD 003F 3F UNASSIGNED
+8FEEBE 003F 3F UNASSIGNED
+8FEEBF 003F 3F UNASSIGNED
+8FEEC0 003F 3F UNASSIGNED
+8FEEC1 003F 3F UNASSIGNED
+8FEEC2 003F 3F UNASSIGNED
+8FEEC3 003F 3F UNASSIGNED
+8FEEC4 003F 3F UNASSIGNED
+8FEEC5 003F 3F UNASSIGNED
+8FEEC6 003F 3F UNASSIGNED
+8FEEC7 003F 3F UNASSIGNED
+8FEEC8 003F 3F UNASSIGNED
+8FEEC9 003F 3F UNASSIGNED
+8FEECA 003F 3F UNASSIGNED
+8FEECB 003F 3F UNASSIGNED
+8FEECC 003F 3F UNASSIGNED
+8FEECD 003F 3F UNASSIGNED
+8FEECE 003F 3F UNASSIGNED
+8FEECF 003F 3F UNASSIGNED
+8FEED0 003F 3F UNASSIGNED
+8FEED1 003F 3F UNASSIGNED
+8FEED2 003F 3F UNASSIGNED
+8FEED3 003F 3F UNASSIGNED
+8FEED4 003F 3F UNASSIGNED
+8FEED5 003F 3F UNASSIGNED
+8FEED6 003F 3F UNASSIGNED
+8FEED7 003F 3F UNASSIGNED
+8FEED8 003F 3F UNASSIGNED
+8FEED9 003F 3F UNASSIGNED
+8FEEDA 003F 3F UNASSIGNED
+8FEEDB 003F 3F UNASSIGNED
+8FEEDC 003F 3F UNASSIGNED
+8FEEDD 003F 3F UNASSIGNED
+8FEEDE 003F 3F UNASSIGNED
+8FEEDF 003F 3F UNASSIGNED
+8FEEE0 003F 3F UNASSIGNED
+8FEEE1 003F 3F UNASSIGNED
+8FEEE2 003F 3F UNASSIGNED
+8FEEE3 003F 3F UNASSIGNED
+8FEEE4 003F 3F UNASSIGNED
+8FEEE5 003F 3F UNASSIGNED
+8FEEE6 003F 3F UNASSIGNED
+8FEEE7 003F 3F UNASSIGNED
+8FEEE8 003F 3F UNASSIGNED
+8FEEE9 003F 3F UNASSIGNED
+8FEEEA 003F 3F UNASSIGNED
+8FEEEB 003F 3F UNASSIGNED
+8FEEEC 003F 3F UNASSIGNED
+8FEEED 003F 3F UNASSIGNED
+8FEEEE 003F 3F UNASSIGNED
+8FEEEF 003F 3F UNASSIGNED
+8FEEF0 003F 3F UNASSIGNED
+8FEEF1 003F 3F UNASSIGNED
+8FEEF2 003F 3F UNASSIGNED
+8FEEF3 003F 3F UNASSIGNED
+8FEEF4 003F 3F UNASSIGNED
+8FEEF5 003F 3F UNASSIGNED
+8FEEF6 003F 3F UNASSIGNED
+8FEEF7 003F 3F UNASSIGNED
+8FEEF8 003F 3F UNASSIGNED
+8FEEF9 003F 3F UNASSIGNED
+8FEEFA 003F 3F UNASSIGNED
+8FEEFB 003F 3F UNASSIGNED
+8FEEFC 003F 3F UNASSIGNED
+8FEEFD 003F 3F UNASSIGNED
+8FEEFE 003F 3F UNASSIGNED
+8FEFA1 003F 3F UNASSIGNED
+8FEFA2 003F 3F UNASSIGNED
+8FEFA3 003F 3F UNASSIGNED
+8FEFA4 003F 3F UNASSIGNED
+8FEFA5 003F 3F UNASSIGNED
+8FEFA6 003F 3F UNASSIGNED
+8FEFA7 003F 3F UNASSIGNED
+8FEFA8 003F 3F UNASSIGNED
+8FEFA9 003F 3F UNASSIGNED
+8FEFAA 003F 3F UNASSIGNED
+8FEFAB 003F 3F UNASSIGNED
+8FEFAC 003F 3F UNASSIGNED
+8FEFAD 003F 3F UNASSIGNED
+8FEFAE 003F 3F UNASSIGNED
+8FEFAF 003F 3F UNASSIGNED
+8FEFB0 003F 3F UNASSIGNED
+8FEFB1 003F 3F UNASSIGNED
+8FEFB2 003F 3F UNASSIGNED
+8FEFB3 003F 3F UNASSIGNED
+8FEFB4 003F 3F UNASSIGNED
+8FEFB5 003F 3F UNASSIGNED
+8FEFB6 003F 3F UNASSIGNED
+8FEFB7 003F 3F UNASSIGNED
+8FEFB8 003F 3F UNASSIGNED
+8FEFB9 003F 3F UNASSIGNED
+8FEFBA 003F 3F UNASSIGNED
+8FEFBB 003F 3F UNASSIGNED
+8FEFBC 003F 3F UNASSIGNED
+8FEFBD 003F 3F UNASSIGNED
+8FEFBE 003F 3F UNASSIGNED
+8FEFBF 003F 3F UNASSIGNED
+8FEFC0 003F 3F UNASSIGNED
+8FEFC1 003F 3F UNASSIGNED
+8FEFC2 003F 3F UNASSIGNED
+8FEFC3 003F 3F UNASSIGNED
+8FEFC4 003F 3F UNASSIGNED
+8FEFC5 003F 3F UNASSIGNED
+8FEFC6 003F 3F UNASSIGNED
+8FEFC7 003F 3F UNASSIGNED
+8FEFC8 003F 3F UNASSIGNED
+8FEFC9 003F 3F UNASSIGNED
+8FEFCA 003F 3F UNASSIGNED
+8FEFCB 003F 3F UNASSIGNED
+8FEFCC 003F 3F UNASSIGNED
+8FEFCD 003F 3F UNASSIGNED
+8FEFCE 003F 3F UNASSIGNED
+8FEFCF 003F 3F UNASSIGNED
+8FEFD0 003F 3F UNASSIGNED
+8FEFD1 003F 3F UNASSIGNED
+8FEFD2 003F 3F UNASSIGNED
+8FEFD3 003F 3F UNASSIGNED
+8FEFD4 003F 3F UNASSIGNED
+8FEFD5 003F 3F UNASSIGNED
+8FEFD6 003F 3F UNASSIGNED
+8FEFD7 003F 3F UNASSIGNED
+8FEFD8 003F 3F UNASSIGNED
+8FEFD9 003F 3F UNASSIGNED
+8FEFDA 003F 3F UNASSIGNED
+8FEFDB 003F 3F UNASSIGNED
+8FEFDC 003F 3F UNASSIGNED
+8FEFDD 003F 3F UNASSIGNED
+8FEFDE 003F 3F UNASSIGNED
+8FEFDF 003F 3F UNASSIGNED
+8FEFE0 003F 3F UNASSIGNED
+8FEFE1 003F 3F UNASSIGNED
+8FEFE2 003F 3F UNASSIGNED
+8FEFE3 003F 3F UNASSIGNED
+8FEFE4 003F 3F UNASSIGNED
+8FEFE5 003F 3F UNASSIGNED
+8FEFE6 003F 3F UNASSIGNED
+8FEFE7 003F 3F UNASSIGNED
+8FEFE8 003F 3F UNASSIGNED
+8FEFE9 003F 3F UNASSIGNED
+8FEFEA 003F 3F UNASSIGNED
+8FEFEB 003F 3F UNASSIGNED
+8FEFEC 003F 3F UNASSIGNED
+8FEFED 003F 3F UNASSIGNED
+8FEFEE 003F 3F UNASSIGNED
+8FEFEF 003F 3F UNASSIGNED
+8FEFF0 003F 3F UNASSIGNED
+8FEFF1 003F 3F UNASSIGNED
+8FEFF2 003F 3F UNASSIGNED
+8FEFF3 003F 3F UNASSIGNED
+8FEFF4 003F 3F UNASSIGNED
+8FEFF5 003F 3F UNASSIGNED
+8FEFF6 003F 3F UNASSIGNED
+8FEFF7 003F 3F UNASSIGNED
+8FEFF8 003F 3F UNASSIGNED
+8FEFF9 003F 3F UNASSIGNED
+8FEFFA 003F 3F UNASSIGNED
+8FEFFB 003F 3F UNASSIGNED
+8FEFFC 003F 3F UNASSIGNED
+8FEFFD 003F 3F UNASSIGNED
+8FEFFE 003F 3F UNASSIGNED
+8FF0A1 003F 3F UNASSIGNED
+8FF0A2 003F 3F UNASSIGNED
+8FF0A3 003F 3F UNASSIGNED
+8FF0A4 003F 3F UNASSIGNED
+8FF0A5 003F 3F UNASSIGNED
+8FF0A6 003F 3F UNASSIGNED
+8FF0A7 003F 3F UNASSIGNED
+8FF0A8 003F 3F UNASSIGNED
+8FF0A9 003F 3F UNASSIGNED
+8FF0AA 003F 3F UNASSIGNED
+8FF0AB 003F 3F UNASSIGNED
+8FF0AC 003F 3F UNASSIGNED
+8FF0AD 003F 3F UNASSIGNED
+8FF0AE 003F 3F UNASSIGNED
+8FF0AF 003F 3F UNASSIGNED
+8FF0B0 003F 3F UNASSIGNED
+8FF0B1 003F 3F UNASSIGNED
+8FF0B2 003F 3F UNASSIGNED
+8FF0B3 003F 3F UNASSIGNED
+8FF0B4 003F 3F UNASSIGNED
+8FF0B5 003F 3F UNASSIGNED
+8FF0B6 003F 3F UNASSIGNED
+8FF0B7 003F 3F UNASSIGNED
+8FF0B8 003F 3F UNASSIGNED
+8FF0B9 003F 3F UNASSIGNED
+8FF0BA 003F 3F UNASSIGNED
+8FF0BB 003F 3F UNASSIGNED
+8FF0BC 003F 3F UNASSIGNED
+8FF0BD 003F 3F UNASSIGNED
+8FF0BE 003F 3F UNASSIGNED
+8FF0BF 003F 3F UNASSIGNED
+8FF0C0 003F 3F UNASSIGNED
+8FF0C1 003F 3F UNASSIGNED
+8FF0C2 003F 3F UNASSIGNED
+8FF0C3 003F 3F UNASSIGNED
+8FF0C4 003F 3F UNASSIGNED
+8FF0C5 003F 3F UNASSIGNED
+8FF0C6 003F 3F UNASSIGNED
+8FF0C7 003F 3F UNASSIGNED
+8FF0C8 003F 3F UNASSIGNED
+8FF0C9 003F 3F UNASSIGNED
+8FF0CA 003F 3F UNASSIGNED
+8FF0CB 003F 3F UNASSIGNED
+8FF0CC 003F 3F UNASSIGNED
+8FF0CD 003F 3F UNASSIGNED
+8FF0CE 003F 3F UNASSIGNED
+8FF0CF 003F 3F UNASSIGNED
+8FF0D0 003F 3F UNASSIGNED
+8FF0D1 003F 3F UNASSIGNED
+8FF0D2 003F 3F UNASSIGNED
+8FF0D3 003F 3F UNASSIGNED
+8FF0D4 003F 3F UNASSIGNED
+8FF0D5 003F 3F UNASSIGNED
+8FF0D6 003F 3F UNASSIGNED
+8FF0D7 003F 3F UNASSIGNED
+8FF0D8 003F 3F UNASSIGNED
+8FF0D9 003F 3F UNASSIGNED
+8FF0DA 003F 3F UNASSIGNED
+8FF0DB 003F 3F UNASSIGNED
+8FF0DC 003F 3F UNASSIGNED
+8FF0DD 003F 3F UNASSIGNED
+8FF0DE 003F 3F UNASSIGNED
+8FF0DF 003F 3F UNASSIGNED
+8FF0E0 003F 3F UNASSIGNED
+8FF0E1 003F 3F UNASSIGNED
+8FF0E2 003F 3F UNASSIGNED
+8FF0E3 003F 3F UNASSIGNED
+8FF0E4 003F 3F UNASSIGNED
+8FF0E5 003F 3F UNASSIGNED
+8FF0E6 003F 3F UNASSIGNED
+8FF0E7 003F 3F UNASSIGNED
+8FF0E8 003F 3F UNASSIGNED
+8FF0E9 003F 3F UNASSIGNED
+8FF0EA 003F 3F UNASSIGNED
+8FF0EB 003F 3F UNASSIGNED
+8FF0EC 003F 3F UNASSIGNED
+8FF0ED 003F 3F UNASSIGNED
+8FF0EE 003F 3F UNASSIGNED
+8FF0EF 003F 3F UNASSIGNED
+8FF0F0 003F 3F UNASSIGNED
+8FF0F1 003F 3F UNASSIGNED
+8FF0F2 003F 3F UNASSIGNED
+8FF0F3 003F 3F UNASSIGNED
+8FF0F4 003F 3F UNASSIGNED
+8FF0F5 003F 3F UNASSIGNED
+8FF0F6 003F 3F UNASSIGNED
+8FF0F7 003F 3F UNASSIGNED
+8FF0F8 003F 3F UNASSIGNED
+8FF0F9 003F 3F UNASSIGNED
+8FF0FA 003F 3F UNASSIGNED
+8FF0FB 003F 3F UNASSIGNED
+8FF0FC 003F 3F UNASSIGNED
+8FF0FD 003F 3F UNASSIGNED
+8FF0FE 003F 3F UNASSIGNED
+8FF1A1 003F 3F UNASSIGNED
+8FF1A2 003F 3F UNASSIGNED
+8FF1A3 003F 3F UNASSIGNED
+8FF1A4 003F 3F UNASSIGNED
+8FF1A5 003F 3F UNASSIGNED
+8FF1A6 003F 3F UNASSIGNED
+8FF1A7 003F 3F UNASSIGNED
+8FF1A8 003F 3F UNASSIGNED
+8FF1A9 003F 3F UNASSIGNED
+8FF1AA 003F 3F UNASSIGNED
+8FF1AB 003F 3F UNASSIGNED
+8FF1AC 003F 3F UNASSIGNED
+8FF1AD 003F 3F UNASSIGNED
+8FF1AE 003F 3F UNASSIGNED
+8FF1AF 003F 3F UNASSIGNED
+8FF1B0 003F 3F UNASSIGNED
+8FF1B1 003F 3F UNASSIGNED
+8FF1B2 003F 3F UNASSIGNED
+8FF1B3 003F 3F UNASSIGNED
+8FF1B4 003F 3F UNASSIGNED
+8FF1B5 003F 3F UNASSIGNED
+8FF1B6 003F 3F UNASSIGNED
+8FF1B7 003F 3F UNASSIGNED
+8FF1B8 003F 3F UNASSIGNED
+8FF1B9 003F 3F UNASSIGNED
+8FF1BA 003F 3F UNASSIGNED
+8FF1BB 003F 3F UNASSIGNED
+8FF1BC 003F 3F UNASSIGNED
+8FF1BD 003F 3F UNASSIGNED
+8FF1BE 003F 3F UNASSIGNED
+8FF1BF 003F 3F UNASSIGNED
+8FF1C0 003F 3F UNASSIGNED
+8FF1C1 003F 3F UNASSIGNED
+8FF1C2 003F 3F UNASSIGNED
+8FF1C3 003F 3F UNASSIGNED
+8FF1C4 003F 3F UNASSIGNED
+8FF1C5 003F 3F UNASSIGNED
+8FF1C6 003F 3F UNASSIGNED
+8FF1C7 003F 3F UNASSIGNED
+8FF1C8 003F 3F UNASSIGNED
+8FF1C9 003F 3F UNASSIGNED
+8FF1CA 003F 3F UNASSIGNED
+8FF1CB 003F 3F UNASSIGNED
+8FF1CC 003F 3F UNASSIGNED
+8FF1CD 003F 3F UNASSIGNED
+8FF1CE 003F 3F UNASSIGNED
+8FF1CF 003F 3F UNASSIGNED
+8FF1D0 003F 3F UNASSIGNED
+8FF1D1 003F 3F UNASSIGNED
+8FF1D2 003F 3F UNASSIGNED
+8FF1D3 003F 3F UNASSIGNED
+8FF1D4 003F 3F UNASSIGNED
+8FF1D5 003F 3F UNASSIGNED
+8FF1D6 003F 3F UNASSIGNED
+8FF1D7 003F 3F UNASSIGNED
+8FF1D8 003F 3F UNASSIGNED
+8FF1D9 003F 3F UNASSIGNED
+8FF1DA 003F 3F UNASSIGNED
+8FF1DB 003F 3F UNASSIGNED
+8FF1DC 003F 3F UNASSIGNED
+8FF1DD 003F 3F UNASSIGNED
+8FF1DE 003F 3F UNASSIGNED
+8FF1DF 003F 3F UNASSIGNED
+8FF1E0 003F 3F UNASSIGNED
+8FF1E1 003F 3F UNASSIGNED
+8FF1E2 003F 3F UNASSIGNED
+8FF1E3 003F 3F UNASSIGNED
+8FF1E4 003F 3F UNASSIGNED
+8FF1E5 003F 3F UNASSIGNED
+8FF1E6 003F 3F UNASSIGNED
+8FF1E7 003F 3F UNASSIGNED
+8FF1E8 003F 3F UNASSIGNED
+8FF1E9 003F 3F UNASSIGNED
+8FF1EA 003F 3F UNASSIGNED
+8FF1EB 003F 3F UNASSIGNED
+8FF1EC 003F 3F UNASSIGNED
+8FF1ED 003F 3F UNASSIGNED
+8FF1EE 003F 3F UNASSIGNED
+8FF1EF 003F 3F UNASSIGNED
+8FF1F0 003F 3F UNASSIGNED
+8FF1F1 003F 3F UNASSIGNED
+8FF1F2 003F 3F UNASSIGNED
+8FF1F3 003F 3F UNASSIGNED
+8FF1F4 003F 3F UNASSIGNED
+8FF1F5 003F 3F UNASSIGNED
+8FF1F6 003F 3F UNASSIGNED
+8FF1F7 003F 3F UNASSIGNED
+8FF1F8 003F 3F UNASSIGNED
+8FF1F9 003F 3F UNASSIGNED
+8FF1FA 003F 3F UNASSIGNED
+8FF1FB 003F 3F UNASSIGNED
+8FF1FC 003F 3F UNASSIGNED
+8FF1FD 003F 3F UNASSIGNED
+8FF1FE 003F 3F UNASSIGNED
+8FF2A1 003F 3F UNASSIGNED
+8FF2A2 003F 3F UNASSIGNED
+8FF2A3 003F 3F UNASSIGNED
+8FF2A4 003F 3F UNASSIGNED
+8FF2A5 003F 3F UNASSIGNED
+8FF2A6 003F 3F UNASSIGNED
+8FF2A7 003F 3F UNASSIGNED
+8FF2A8 003F 3F UNASSIGNED
+8FF2A9 003F 3F UNASSIGNED
+8FF2AA 003F 3F UNASSIGNED
+8FF2AB 003F 3F UNASSIGNED
+8FF2AC 003F 3F UNASSIGNED
+8FF2AD 003F 3F UNASSIGNED
+8FF2AE 003F 3F UNASSIGNED
+8FF2AF 003F 3F UNASSIGNED
+8FF2B0 003F 3F UNASSIGNED
+8FF2B1 003F 3F UNASSIGNED
+8FF2B2 003F 3F UNASSIGNED
+8FF2B3 003F 3F UNASSIGNED
+8FF2B4 003F 3F UNASSIGNED
+8FF2B5 003F 3F UNASSIGNED
+8FF2B6 003F 3F UNASSIGNED
+8FF2B7 003F 3F UNASSIGNED
+8FF2B8 003F 3F UNASSIGNED
+8FF2B9 003F 3F UNASSIGNED
+8FF2BA 003F 3F UNASSIGNED
+8FF2BB 003F 3F UNASSIGNED
+8FF2BC 003F 3F UNASSIGNED
+8FF2BD 003F 3F UNASSIGNED
+8FF2BE 003F 3F UNASSIGNED
+8FF2BF 003F 3F UNASSIGNED
+8FF2C0 003F 3F UNASSIGNED
+8FF2C1 003F 3F UNASSIGNED
+8FF2C2 003F 3F UNASSIGNED
+8FF2C3 003F 3F UNASSIGNED
+8FF2C4 003F 3F UNASSIGNED
+8FF2C5 003F 3F UNASSIGNED
+8FF2C6 003F 3F UNASSIGNED
+8FF2C7 003F 3F UNASSIGNED
+8FF2C8 003F 3F UNASSIGNED
+8FF2C9 003F 3F UNASSIGNED
+8FF2CA 003F 3F UNASSIGNED
+8FF2CB 003F 3F UNASSIGNED
+8FF2CC 003F 3F UNASSIGNED
+8FF2CD 003F 3F UNASSIGNED
+8FF2CE 003F 3F UNASSIGNED
+8FF2CF 003F 3F UNASSIGNED
+8FF2D0 003F 3F UNASSIGNED
+8FF2D1 003F 3F UNASSIGNED
+8FF2D2 003F 3F UNASSIGNED
+8FF2D3 003F 3F UNASSIGNED
+8FF2D4 003F 3F UNASSIGNED
+8FF2D5 003F 3F UNASSIGNED
+8FF2D6 003F 3F UNASSIGNED
+8FF2D7 003F 3F UNASSIGNED
+8FF2D8 003F 3F UNASSIGNED
+8FF2D9 003F 3F UNASSIGNED
+8FF2DA 003F 3F UNASSIGNED
+8FF2DB 003F 3F UNASSIGNED
+8FF2DC 003F 3F UNASSIGNED
+8FF2DD 003F 3F UNASSIGNED
+8FF2DE 003F 3F UNASSIGNED
+8FF2DF 003F 3F UNASSIGNED
+8FF2E0 003F 3F UNASSIGNED
+8FF2E1 003F 3F UNASSIGNED
+8FF2E2 003F 3F UNASSIGNED
+8FF2E3 003F 3F UNASSIGNED
+8FF2E4 003F 3F UNASSIGNED
+8FF2E5 003F 3F UNASSIGNED
+8FF2E6 003F 3F UNASSIGNED
+8FF2E7 003F 3F UNASSIGNED
+8FF2E8 003F 3F UNASSIGNED
+8FF2E9 003F 3F UNASSIGNED
+8FF2EA 003F 3F UNASSIGNED
+8FF2EB 003F 3F UNASSIGNED
+8FF2EC 003F 3F UNASSIGNED
+8FF2ED 003F 3F UNASSIGNED
+8FF2EE 003F 3F UNASSIGNED
+8FF2EF 003F 3F UNASSIGNED
+8FF2F0 003F 3F UNASSIGNED
+8FF2F1 003F 3F UNASSIGNED
+8FF2F2 003F 3F UNASSIGNED
+8FF2F3 003F 3F UNASSIGNED
+8FF2F4 003F 3F UNASSIGNED
+8FF2F5 003F 3F UNASSIGNED
+8FF2F6 003F 3F UNASSIGNED
+8FF2F7 003F 3F UNASSIGNED
+8FF2F8 003F 3F UNASSIGNED
+8FF2F9 003F 3F UNASSIGNED
+8FF2FA 003F 3F UNASSIGNED
+8FF2FB 003F 3F UNASSIGNED
+8FF2FC 003F 3F UNASSIGNED
+8FF2FD 003F 3F UNASSIGNED
+8FF2FE 003F 3F UNASSIGNED
+8FF3A1 003F 3F UNASSIGNED
+8FF3A2 003F 3F UNASSIGNED
+8FF3A3 003F 3F UNASSIGNED
+8FF3A4 003F 3F UNASSIGNED
+8FF3A5 003F 3F UNASSIGNED
+8FF3A6 003F 3F UNASSIGNED
+8FF3A7 003F 3F UNASSIGNED
+8FF3A8 003F 3F UNASSIGNED
+8FF3A9 003F 3F UNASSIGNED
+8FF3AA 003F 3F UNASSIGNED
+8FF3AB 003F 3F UNASSIGNED
+8FF3AC 003F 3F UNASSIGNED
+8FF3AD 003F 3F UNASSIGNED
+8FF3AE 003F 3F UNASSIGNED
+8FF3AF 003F 3F UNASSIGNED
+8FF3B0 003F 3F UNASSIGNED
+8FF3B1 003F 3F UNASSIGNED
+8FF3B2 003F 3F UNASSIGNED
+8FF3B3 003F 3F UNASSIGNED
+8FF3B4 003F 3F UNASSIGNED
+8FF3B5 003F 3F UNASSIGNED
+8FF3B6 003F 3F UNASSIGNED
+8FF3B7 003F 3F UNASSIGNED
+8FF3B8 003F 3F UNASSIGNED
+8FF3B9 003F 3F UNASSIGNED
+8FF3BA 003F 3F UNASSIGNED
+8FF3BB 003F 3F UNASSIGNED
+8FF3BC 003F 3F UNASSIGNED
+8FF3BD 003F 3F UNASSIGNED
+8FF3BE 003F 3F UNASSIGNED
+8FF3BF 003F 3F UNASSIGNED
+8FF3C0 003F 3F UNASSIGNED
+8FF3C1 003F 3F UNASSIGNED
+8FF3C2 003F 3F UNASSIGNED
+8FF3C3 003F 3F UNASSIGNED
+8FF3C4 003F 3F UNASSIGNED
+8FF3C5 003F 3F UNASSIGNED
+8FF3C6 003F 3F UNASSIGNED
+8FF3C7 003F 3F UNASSIGNED
+8FF3C8 003F 3F UNASSIGNED
+8FF3C9 003F 3F UNASSIGNED
+8FF3CA 003F 3F UNASSIGNED
+8FF3CB 003F 3F UNASSIGNED
+8FF3CC 003F 3F UNASSIGNED
+8FF3CD 003F 3F UNASSIGNED
+8FF3CE 003F 3F UNASSIGNED
+8FF3CF 003F 3F UNASSIGNED
+8FF3D0 003F 3F UNASSIGNED
+8FF3D1 003F 3F UNASSIGNED
+8FF3D2 003F 3F UNASSIGNED
+8FF3D3 003F 3F UNASSIGNED
+8FF3D4 003F 3F UNASSIGNED
+8FF3D5 003F 3F UNASSIGNED
+8FF3D6 003F 3F UNASSIGNED
+8FF3D7 003F 3F UNASSIGNED
+8FF3D8 003F 3F UNASSIGNED
+8FF3D9 003F 3F UNASSIGNED
+8FF3DA 003F 3F UNASSIGNED
+8FF3DB 003F 3F UNASSIGNED
+8FF3DC 003F 3F UNASSIGNED
+8FF3DD 003F 3F UNASSIGNED
+8FF3DE 003F 3F UNASSIGNED
+8FF3DF 003F 3F UNASSIGNED
+8FF3E0 003F 3F UNASSIGNED
+8FF3E1 003F 3F UNASSIGNED
+8FF3E2 003F 3F UNASSIGNED
+8FF3E3 003F 3F UNASSIGNED
+8FF3E4 003F 3F UNASSIGNED
+8FF3E5 003F 3F UNASSIGNED
+8FF3E6 003F 3F UNASSIGNED
+8FF3E7 003F 3F UNASSIGNED
+8FF3E8 003F 3F UNASSIGNED
+8FF3E9 003F 3F UNASSIGNED
+8FF3EA 003F 3F UNASSIGNED
+8FF3EB 003F 3F UNASSIGNED
+8FF3EC 003F 3F UNASSIGNED
+8FF3ED 003F 3F UNASSIGNED
+8FF3EE 003F 3F UNASSIGNED
+8FF3EF 003F 3F UNASSIGNED
+8FF3F0 003F 3F UNASSIGNED
+8FF3F1 003F 3F UNASSIGNED
+8FF3F2 003F 3F UNASSIGNED
+8FF3F3 003F 3F UNASSIGNED
+8FF3F4 003F 3F UNASSIGNED
+8FF3F5 003F 3F UNASSIGNED
+8FF3F6 003F 3F UNASSIGNED
+8FF3F7 003F 3F UNASSIGNED
+8FF3F8 003F 3F UNASSIGNED
+8FF3F9 003F 3F UNASSIGNED
+8FF3FA 003F 3F UNASSIGNED
+8FF3FB 003F 3F UNASSIGNED
+8FF3FC 003F 3F UNASSIGNED
+8FF3FD 003F 3F UNASSIGNED
+8FF3FE 003F 3F UNASSIGNED
+8FF4A1 003F 3F UNASSIGNED
+8FF4A2 003F 3F UNASSIGNED
+8FF4A3 003F 3F UNASSIGNED
+8FF4A4 003F 3F UNASSIGNED
+8FF4A5 003F 3F UNASSIGNED
+8FF4A6 003F 3F UNASSIGNED
+8FF4A7 003F 3F UNASSIGNED
+8FF4A8 003F 3F UNASSIGNED
+8FF4A9 003F 3F UNASSIGNED
+8FF4AA 003F 3F UNASSIGNED
+8FF4AB 003F 3F UNASSIGNED
+8FF4AC 003F 3F UNASSIGNED
+8FF4AD 003F 3F UNASSIGNED
+8FF4AE 003F 3F UNASSIGNED
+8FF4AF 003F 3F UNASSIGNED
+8FF4B0 003F 3F UNASSIGNED
+8FF4B1 003F 3F UNASSIGNED
+8FF4B2 003F 3F UNASSIGNED
+8FF4B3 003F 3F UNASSIGNED
+8FF4B4 003F 3F UNASSIGNED
+8FF4B5 003F 3F UNASSIGNED
+8FF4B6 003F 3F UNASSIGNED
+8FF4B7 003F 3F UNASSIGNED
+8FF4B8 003F 3F UNASSIGNED
+8FF4B9 003F 3F UNASSIGNED
+8FF4BA 003F 3F UNASSIGNED
+8FF4BB 003F 3F UNASSIGNED
+8FF4BC 003F 3F UNASSIGNED
+8FF4BD 003F 3F UNASSIGNED
+8FF4BE 003F 3F UNASSIGNED
+8FF4BF 003F 3F UNASSIGNED
+8FF4C0 003F 3F UNASSIGNED
+8FF4C1 003F 3F UNASSIGNED
+8FF4C2 003F 3F UNASSIGNED
+8FF4C3 003F 3F UNASSIGNED
+8FF4C4 003F 3F UNASSIGNED
+8FF4C5 003F 3F UNASSIGNED
+8FF4C6 003F 3F UNASSIGNED
+8FF4C7 003F 3F UNASSIGNED
+8FF4C8 003F 3F UNASSIGNED
+8FF4C9 003F 3F UNASSIGNED
+8FF4CA 003F 3F UNASSIGNED
+8FF4CB 003F 3F UNASSIGNED
+8FF4CC 003F 3F UNASSIGNED
+8FF4CD 003F 3F UNASSIGNED
+8FF4CE 003F 3F UNASSIGNED
+8FF4CF 003F 3F UNASSIGNED
+8FF4D0 003F 3F UNASSIGNED
+8FF4D1 003F 3F UNASSIGNED
+8FF4D2 003F 3F UNASSIGNED
+8FF4D3 003F 3F UNASSIGNED
+8FF4D4 003F 3F UNASSIGNED
+8FF4D5 003F 3F UNASSIGNED
+8FF4D6 003F 3F UNASSIGNED
+8FF4D7 003F 3F UNASSIGNED
+8FF4D8 003F 3F UNASSIGNED
+8FF4D9 003F 3F UNASSIGNED
+8FF4DA 003F 3F UNASSIGNED
+8FF4DB 003F 3F UNASSIGNED
+8FF4DC 003F 3F UNASSIGNED
+8FF4DD 003F 3F UNASSIGNED
+8FF4DE 003F 3F UNASSIGNED
+8FF4DF 003F 3F UNASSIGNED
+8FF4E0 003F 3F UNASSIGNED
+8FF4E1 003F 3F UNASSIGNED
+8FF4E2 003F 3F UNASSIGNED
+8FF4E3 003F 3F UNASSIGNED
+8FF4E4 003F 3F UNASSIGNED
+8FF4E5 003F 3F UNASSIGNED
+8FF4E6 003F 3F UNASSIGNED
+8FF4E7 003F 3F UNASSIGNED
+8FF4E8 003F 3F UNASSIGNED
+8FF4E9 003F 3F UNASSIGNED
+8FF4EA 003F 3F UNASSIGNED
+8FF4EB 003F 3F UNASSIGNED
+8FF4EC 003F 3F UNASSIGNED
+8FF4ED 003F 3F UNASSIGNED
+8FF4EE 003F 3F UNASSIGNED
+8FF4EF 003F 3F UNASSIGNED
+8FF4F0 003F 3F UNASSIGNED
+8FF4F1 003F 3F UNASSIGNED
+8FF4F2 003F 3F UNASSIGNED
+8FF4F3 003F 3F UNASSIGNED
+8FF4F4 003F 3F UNASSIGNED
+8FF4F5 003F 3F UNASSIGNED
+8FF4F6 003F 3F UNASSIGNED
+8FF4F7 003F 3F UNASSIGNED
+8FF4F8 003F 3F UNASSIGNED
+8FF4F9 003F 3F UNASSIGNED
+8FF4FA 003F 3F UNASSIGNED
+8FF4FB 003F 3F UNASSIGNED
+8FF4FC 003F 3F UNASSIGNED
+8FF4FD 003F 3F UNASSIGNED
+8FF4FE 003F 3F UNASSIGNED
+A1C0 005C 5C U+005C REVERSE SOLIDUS
+A2AF 003F 3F UNASSIGNED
+A2B0 003F 3F UNASSIGNED
+A2B1 003F 3F UNASSIGNED
+A2B2 003F 3F UNASSIGNED
+A2B3 003F 3F UNASSIGNED
+A2B4 003F 3F UNASSIGNED
+A2B5 003F 3F UNASSIGNED
+A2B6 003F 3F UNASSIGNED
+A2B7 003F 3F UNASSIGNED
+A2B8 003F 3F UNASSIGNED
+A2B9 003F 3F UNASSIGNED
+A2C2 003F 3F UNASSIGNED
+A2C3 003F 3F UNASSIGNED
+A2C4 003F 3F UNASSIGNED
+A2C5 003F 3F UNASSIGNED
+A2C6 003F 3F UNASSIGNED
+A2C7 003F 3F UNASSIGNED
+A2C8 003F 3F UNASSIGNED
+A2C9 003F 3F UNASSIGNED
+A2D1 003F 3F UNASSIGNED
+A2D2 003F 3F UNASSIGNED
+A2D3 003F 3F UNASSIGNED
+A2D4 003F 3F UNASSIGNED
+A2D5 003F 3F UNASSIGNED
+A2D6 003F 3F UNASSIGNED
+A2D7 003F 3F UNASSIGNED
+A2D8 003F 3F UNASSIGNED
+A2D9 003F 3F UNASSIGNED
+A2DA 003F 3F UNASSIGNED
+A2DB 003F 3F UNASSIGNED
+A2EB 003F 3F UNASSIGNED
+A2EC 003F 3F UNASSIGNED
+A2ED 003F 3F UNASSIGNED
+A2EE 003F 3F UNASSIGNED
+A2EF 003F 3F UNASSIGNED
+A2F0 003F 3F UNASSIGNED
+A2F1 003F 3F UNASSIGNED
+A2FA 003F 3F UNASSIGNED
+A2FB 003F 3F UNASSIGNED
+A2FC 003F 3F UNASSIGNED
+A2FD 003F 3F UNASSIGNED
+A3A1 003F 3F UNASSIGNED
+A3A2 003F 3F UNASSIGNED
+A3A3 003F 3F UNASSIGNED
+A3A4 003F 3F UNASSIGNED
+A3A5 003F 3F UNASSIGNED
+A3A6 003F 3F UNASSIGNED
+A3A7 003F 3F UNASSIGNED
+A3A8 003F 3F UNASSIGNED
+A3A9 003F 3F UNASSIGNED
+A3AA 003F 3F UNASSIGNED
+A3AB 003F 3F UNASSIGNED
+A3AC 003F 3F UNASSIGNED
+A3AD 003F 3F UNASSIGNED
+A3AE 003F 3F UNASSIGNED
+A3AF 003F 3F UNASSIGNED
+A3BA 003F 3F UNASSIGNED
+A3BB 003F 3F UNASSIGNED
+A3BC 003F 3F UNASSIGNED
+A3BD 003F 3F UNASSIGNED
+A3BE 003F 3F UNASSIGNED
+A3BF 003F 3F UNASSIGNED
+A3C0 003F 3F UNASSIGNED
+A3DB 003F 3F UNASSIGNED
+A3DC 003F 3F UNASSIGNED
+A3DD 003F 3F UNASSIGNED
+A3DE 003F 3F UNASSIGNED
+A3DF 003F 3F UNASSIGNED
+A3E0 003F 3F UNASSIGNED
+A3FB 003F 3F UNASSIGNED
+A3FC 003F 3F UNASSIGNED
+A3FD 003F 3F UNASSIGNED
+A3FE 003F 3F UNASSIGNED
+A4F4 003F 3F UNASSIGNED
+A4F5 003F 3F UNASSIGNED
+A4F6 003F 3F UNASSIGNED
+A4F7 003F 3F UNASSIGNED
+A4F8 003F 3F UNASSIGNED
+A4F9 003F 3F UNASSIGNED
+A4FA 003F 3F UNASSIGNED
+A4FB 003F 3F UNASSIGNED
+A4FC 003F 3F UNASSIGNED
+A4FD 003F 3F UNASSIGNED
+A4FE 003F 3F UNASSIGNED
+A5F7 003F 3F UNASSIGNED
+A5F8 003F 3F UNASSIGNED
+A5F9 003F 3F UNASSIGNED
+A5FA 003F 3F UNASSIGNED
+A5FB 003F 3F UNASSIGNED
+A5FC 003F 3F UNASSIGNED
+A5FD 003F 3F UNASSIGNED
+A5FE 003F 3F UNASSIGNED
+A6B9 003F 3F UNASSIGNED
+A6BA 003F 3F UNASSIGNED
+A6BB 003F 3F UNASSIGNED
+A6BC 003F 3F UNASSIGNED
+A6BD 003F 3F UNASSIGNED
+A6BE 003F 3F UNASSIGNED
+A6BF 003F 3F UNASSIGNED
+A6C0 003F 3F UNASSIGNED
+A6D9 003F 3F UNASSIGNED
+A6DA 003F 3F UNASSIGNED
+A6DB 003F 3F UNASSIGNED
+A6DC 003F 3F UNASSIGNED
+A6DD 003F 3F UNASSIGNED
+A6DE 003F 3F UNASSIGNED
+A6DF 003F 3F UNASSIGNED
+A6E0 003F 3F UNASSIGNED
+A6E1 003F 3F UNASSIGNED
+A6E2 003F 3F UNASSIGNED
+A6E3 003F 3F UNASSIGNED
+A6E4 003F 3F UNASSIGNED
+A6E5 003F 3F UNASSIGNED
+A6E6 003F 3F UNASSIGNED
+A6E7 003F 3F UNASSIGNED
+A6E8 003F 3F UNASSIGNED
+A6E9 003F 3F UNASSIGNED
+A6EA 003F 3F UNASSIGNED
+A6EB 003F 3F UNASSIGNED
+A6EC 003F 3F UNASSIGNED
+A6ED 003F 3F UNASSIGNED
+A6EE 003F 3F UNASSIGNED
+A6EF 003F 3F UNASSIGNED
+A6F0 003F 3F UNASSIGNED
+A6F1 003F 3F UNASSIGNED
+A6F2 003F 3F UNASSIGNED
+A6F3 003F 3F UNASSIGNED
+A6F4 003F 3F UNASSIGNED
+A6F5 003F 3F UNASSIGNED
+A6F6 003F 3F UNASSIGNED
+A6F7 003F 3F UNASSIGNED
+A6F8 003F 3F UNASSIGNED
+A6F9 003F 3F UNASSIGNED
+A6FA 003F 3F UNASSIGNED
+A6FB 003F 3F UNASSIGNED
+A6FC 003F 3F UNASSIGNED
+A6FD 003F 3F UNASSIGNED
+A6FE 003F 3F UNASSIGNED
+A7C2 003F 3F UNASSIGNED
+A7C3 003F 3F UNASSIGNED
+A7C4 003F 3F UNASSIGNED
+A7C5 003F 3F UNASSIGNED
+A7C6 003F 3F UNASSIGNED
+A7C7 003F 3F UNASSIGNED
+A7C8 003F 3F UNASSIGNED
+A7C9 003F 3F UNASSIGNED
+A7CA 003F 3F UNASSIGNED
+A7CB 003F 3F UNASSIGNED
+A7CC 003F 3F UNASSIGNED
+A7CD 003F 3F UNASSIGNED
+A7CE 003F 3F UNASSIGNED
+A7CF 003F 3F UNASSIGNED
+A7D0 003F 3F UNASSIGNED
+A7F2 003F 3F UNASSIGNED
+A7F3 003F 3F UNASSIGNED
+A7F4 003F 3F UNASSIGNED
+A7F5 003F 3F UNASSIGNED
+A7F6 003F 3F UNASSIGNED
+A7F7 003F 3F UNASSIGNED
+A7F8 003F 3F UNASSIGNED
+A7F9 003F 3F UNASSIGNED
+A7FA 003F 3F UNASSIGNED
+A7FB 003F 3F UNASSIGNED
+A7FC 003F 3F UNASSIGNED
+A7FD 003F 3F UNASSIGNED
+A7FE 003F 3F UNASSIGNED
+A8C1 003F 3F UNASSIGNED
+A8C2 003F 3F UNASSIGNED
+A8C3 003F 3F UNASSIGNED
+A8C4 003F 3F UNASSIGNED
+A8C5 003F 3F UNASSIGNED
+A8C6 003F 3F UNASSIGNED
+A8C7 003F 3F UNASSIGNED
+A8C8 003F 3F UNASSIGNED
+A8C9 003F 3F UNASSIGNED
+A8CA 003F 3F UNASSIGNED
+A8CB 003F 3F UNASSIGNED
+A8CC 003F 3F UNASSIGNED
+A8CD 003F 3F UNASSIGNED
+A8CE 003F 3F UNASSIGNED
+A8CF 003F 3F UNASSIGNED
+A8D0 003F 3F UNASSIGNED
+A8D1 003F 3F UNASSIGNED
+A8D2 003F 3F UNASSIGNED
+A8D3 003F 3F UNASSIGNED
+A8D4 003F 3F UNASSIGNED
+A8D5 003F 3F UNASSIGNED
+A8D6 003F 3F UNASSIGNED
+A8D7 003F 3F UNASSIGNED
+A8D8 003F 3F UNASSIGNED
+A8D9 003F 3F UNASSIGNED
+A8DA 003F 3F UNASSIGNED
+A8DB 003F 3F UNASSIGNED
+A8DC 003F 3F UNASSIGNED
+A8DD 003F 3F UNASSIGNED
+A8DE 003F 3F UNASSIGNED
+A8DF 003F 3F UNASSIGNED
+A8E0 003F 3F UNASSIGNED
+A8E1 003F 3F UNASSIGNED
+A8E2 003F 3F UNASSIGNED
+A8E3 003F 3F UNASSIGNED
+A8E4 003F 3F UNASSIGNED
+A8E5 003F 3F UNASSIGNED
+A8E6 003F 3F UNASSIGNED
+A8E7 003F 3F UNASSIGNED
+A8E8 003F 3F UNASSIGNED
+A8E9 003F 3F UNASSIGNED
+A8EA 003F 3F UNASSIGNED
+A8EB 003F 3F UNASSIGNED
+A8EC 003F 3F UNASSIGNED
+A8ED 003F 3F UNASSIGNED
+A8EE 003F 3F UNASSIGNED
+A8EF 003F 3F UNASSIGNED
+A8F0 003F 3F UNASSIGNED
+A8F1 003F 3F UNASSIGNED
+A8F2 003F 3F UNASSIGNED
+A8F3 003F 3F UNASSIGNED
+A8F4 003F 3F UNASSIGNED
+A8F5 003F 3F UNASSIGNED
+A8F6 003F 3F UNASSIGNED
+A8F7 003F 3F UNASSIGNED
+A8F8 003F 3F UNASSIGNED
+A8F9 003F 3F UNASSIGNED
+A8FA 003F 3F UNASSIGNED
+A8FB 003F 3F UNASSIGNED
+A8FC 003F 3F UNASSIGNED
+A8FD 003F 3F UNASSIGNED
+A8FE 003F 3F UNASSIGNED
+A9A1 003F 3F UNASSIGNED
+A9A2 003F 3F UNASSIGNED
+A9A3 003F 3F UNASSIGNED
+A9A4 003F 3F UNASSIGNED
+A9A5 003F 3F UNASSIGNED
+A9A6 003F 3F UNASSIGNED
+A9A7 003F 3F UNASSIGNED
+A9A8 003F 3F UNASSIGNED
+A9A9 003F 3F UNASSIGNED
+A9AA 003F 3F UNASSIGNED
+A9AB 003F 3F UNASSIGNED
+A9AC 003F 3F UNASSIGNED
+A9AD 003F 3F UNASSIGNED
+A9AE 003F 3F UNASSIGNED
+A9AF 003F 3F UNASSIGNED
+A9B0 003F 3F UNASSIGNED
+A9B1 003F 3F UNASSIGNED
+A9B2 003F 3F UNASSIGNED
+A9B3 003F 3F UNASSIGNED
+A9B4 003F 3F UNASSIGNED
+A9B5 003F 3F UNASSIGNED
+A9B6 003F 3F UNASSIGNED
+A9B7 003F 3F UNASSIGNED
+A9B8 003F 3F UNASSIGNED
+A9B9 003F 3F UNASSIGNED
+A9BA 003F 3F UNASSIGNED
+A9BB 003F 3F UNASSIGNED
+A9BC 003F 3F UNASSIGNED
+A9BD 003F 3F UNASSIGNED
+A9BE 003F 3F UNASSIGNED
+A9BF 003F 3F UNASSIGNED
+A9C0 003F 3F UNASSIGNED
+A9C1 003F 3F UNASSIGNED
+A9C2 003F 3F UNASSIGNED
+A9C3 003F 3F UNASSIGNED
+A9C4 003F 3F UNASSIGNED
+A9C5 003F 3F UNASSIGNED
+A9C6 003F 3F UNASSIGNED
+A9C7 003F 3F UNASSIGNED
+A9C8 003F 3F UNASSIGNED
+A9C9 003F 3F UNASSIGNED
+A9CA 003F 3F UNASSIGNED
+A9CB 003F 3F UNASSIGNED
+A9CC 003F 3F UNASSIGNED
+A9CD 003F 3F UNASSIGNED
+A9CE 003F 3F UNASSIGNED
+A9CF 003F 3F UNASSIGNED
+A9D0 003F 3F UNASSIGNED
+A9D1 003F 3F UNASSIGNED
+A9D2 003F 3F UNASSIGNED
+A9D3 003F 3F UNASSIGNED
+A9D4 003F 3F UNASSIGNED
+A9D5 003F 3F UNASSIGNED
+A9D6 003F 3F UNASSIGNED
+A9D7 003F 3F UNASSIGNED
+A9D8 003F 3F UNASSIGNED
+A9D9 003F 3F UNASSIGNED
+A9DA 003F 3F UNASSIGNED
+A9DB 003F 3F UNASSIGNED
+A9DC 003F 3F UNASSIGNED
+A9DD 003F 3F UNASSIGNED
+A9DE 003F 3F UNASSIGNED
+A9DF 003F 3F UNASSIGNED
+A9E0 003F 3F UNASSIGNED
+A9E1 003F 3F UNASSIGNED
+A9E2 003F 3F UNASSIGNED
+A9E3 003F 3F UNASSIGNED
+A9E4 003F 3F UNASSIGNED
+A9E5 003F 3F UNASSIGNED
+A9E6 003F 3F UNASSIGNED
+A9E7 003F 3F UNASSIGNED
+A9E8 003F 3F UNASSIGNED
+A9E9 003F 3F UNASSIGNED
+A9EA 003F 3F UNASSIGNED
+A9EB 003F 3F UNASSIGNED
+A9EC 003F 3F UNASSIGNED
+A9ED 003F 3F UNASSIGNED
+A9EE 003F 3F UNASSIGNED
+A9EF 003F 3F UNASSIGNED
+A9F0 003F 3F UNASSIGNED
+A9F1 003F 3F UNASSIGNED
+A9F2 003F 3F UNASSIGNED
+A9F3 003F 3F UNASSIGNED
+A9F4 003F 3F UNASSIGNED
+A9F5 003F 3F UNASSIGNED
+A9F6 003F 3F UNASSIGNED
+A9F7 003F 3F UNASSIGNED
+A9F8 003F 3F UNASSIGNED
+A9F9 003F 3F UNASSIGNED
+A9FA 003F 3F UNASSIGNED
+A9FB 003F 3F UNASSIGNED
+A9FC 003F 3F UNASSIGNED
+A9FD 003F 3F UNASSIGNED
+A9FE 003F 3F UNASSIGNED
+AAA1 003F 3F UNASSIGNED
+AAA2 003F 3F UNASSIGNED
+AAA3 003F 3F UNASSIGNED
+AAA4 003F 3F UNASSIGNED
+AAA5 003F 3F UNASSIGNED
+AAA6 003F 3F UNASSIGNED
+AAA7 003F 3F UNASSIGNED
+AAA8 003F 3F UNASSIGNED
+AAA9 003F 3F UNASSIGNED
+AAAA 003F 3F UNASSIGNED
+AAAB 003F 3F UNASSIGNED
+AAAC 003F 3F UNASSIGNED
+AAAD 003F 3F UNASSIGNED
+AAAE 003F 3F UNASSIGNED
+AAAF 003F 3F UNASSIGNED
+AAB0 003F 3F UNASSIGNED
+AAB1 003F 3F UNASSIGNED
+AAB2 003F 3F UNASSIGNED
+AAB3 003F 3F UNASSIGNED
+AAB4 003F 3F UNASSIGNED
+AAB5 003F 3F UNASSIGNED
+AAB6 003F 3F UNASSIGNED
+AAB7 003F 3F UNASSIGNED
+AAB8 003F 3F UNASSIGNED
+AAB9 003F 3F UNASSIGNED
+AABA 003F 3F UNASSIGNED
+AABB 003F 3F UNASSIGNED
+AABC 003F 3F UNASSIGNED
+AABD 003F 3F UNASSIGNED
+AABE 003F 3F UNASSIGNED
+AABF 003F 3F UNASSIGNED
+AAC0 003F 3F UNASSIGNED
+AAC1 003F 3F UNASSIGNED
+AAC2 003F 3F UNASSIGNED
+AAC3 003F 3F UNASSIGNED
+AAC4 003F 3F UNASSIGNED
+AAC5 003F 3F UNASSIGNED
+AAC6 003F 3F UNASSIGNED
+AAC7 003F 3F UNASSIGNED
+AAC8 003F 3F UNASSIGNED
+AAC9 003F 3F UNASSIGNED
+AACA 003F 3F UNASSIGNED
+AACB 003F 3F UNASSIGNED
+AACC 003F 3F UNASSIGNED
+AACD 003F 3F UNASSIGNED
+AACE 003F 3F UNASSIGNED
+AACF 003F 3F UNASSIGNED
+AAD0 003F 3F UNASSIGNED
+AAD1 003F 3F UNASSIGNED
+AAD2 003F 3F UNASSIGNED
+AAD3 003F 3F UNASSIGNED
+AAD4 003F 3F UNASSIGNED
+AAD5 003F 3F UNASSIGNED
+AAD6 003F 3F UNASSIGNED
+AAD7 003F 3F UNASSIGNED
+AAD8 003F 3F UNASSIGNED
+AAD9 003F 3F UNASSIGNED
+AADA 003F 3F UNASSIGNED
+AADB 003F 3F UNASSIGNED
+AADC 003F 3F UNASSIGNED
+AADD 003F 3F UNASSIGNED
+AADE 003F 3F UNASSIGNED
+AADF 003F 3F UNASSIGNED
+AAE0 003F 3F UNASSIGNED
+AAE1 003F 3F UNASSIGNED
+AAE2 003F 3F UNASSIGNED
+AAE3 003F 3F UNASSIGNED
+AAE4 003F 3F UNASSIGNED
+AAE5 003F 3F UNASSIGNED
+AAE6 003F 3F UNASSIGNED
+AAE7 003F 3F UNASSIGNED
+AAE8 003F 3F UNASSIGNED
+AAE9 003F 3F UNASSIGNED
+AAEA 003F 3F UNASSIGNED
+AAEB 003F 3F UNASSIGNED
+AAEC 003F 3F UNASSIGNED
+AAED 003F 3F UNASSIGNED
+AAEE 003F 3F UNASSIGNED
+AAEF 003F 3F UNASSIGNED
+AAF0 003F 3F UNASSIGNED
+AAF1 003F 3F UNASSIGNED
+AAF2 003F 3F UNASSIGNED
+AAF3 003F 3F UNASSIGNED
+AAF4 003F 3F UNASSIGNED
+AAF5 003F 3F UNASSIGNED
+AAF6 003F 3F UNASSIGNED
+AAF7 003F 3F UNASSIGNED
+AAF8 003F 3F UNASSIGNED
+AAF9 003F 3F UNASSIGNED
+AAFA 003F 3F UNASSIGNED
+AAFB 003F 3F UNASSIGNED
+AAFC 003F 3F UNASSIGNED
+AAFD 003F 3F UNASSIGNED
+AAFE 003F 3F UNASSIGNED
+ABA1 003F 3F UNASSIGNED
+ABA2 003F 3F UNASSIGNED
+ABA3 003F 3F UNASSIGNED
+ABA4 003F 3F UNASSIGNED
+ABA5 003F 3F UNASSIGNED
+ABA6 003F 3F UNASSIGNED
+ABA7 003F 3F UNASSIGNED
+ABA8 003F 3F UNASSIGNED
+ABA9 003F 3F UNASSIGNED
+ABAA 003F 3F UNASSIGNED
+ABAB 003F 3F UNASSIGNED
+ABAC 003F 3F UNASSIGNED
+ABAD 003F 3F UNASSIGNED
+ABAE 003F 3F UNASSIGNED
+ABAF 003F 3F UNASSIGNED
+ABB0 003F 3F UNASSIGNED
+ABB1 003F 3F UNASSIGNED
+ABB2 003F 3F UNASSIGNED
+ABB3 003F 3F UNASSIGNED
+ABB4 003F 3F UNASSIGNED
+ABB5 003F 3F UNASSIGNED
+ABB6 003F 3F UNASSIGNED
+ABB7 003F 3F UNASSIGNED
+ABB8 003F 3F UNASSIGNED
+ABB9 003F 3F UNASSIGNED
+ABBA 003F 3F UNASSIGNED
+ABBB 003F 3F UNASSIGNED
+ABBC 003F 3F UNASSIGNED
+ABBD 003F 3F UNASSIGNED
+ABBE 003F 3F UNASSIGNED
+ABBF 003F 3F UNASSIGNED
+ABC0 003F 3F UNASSIGNED
+ABC1 003F 3F UNASSIGNED
+ABC2 003F 3F UNASSIGNED
+ABC3 003F 3F UNASSIGNED
+ABC4 003F 3F UNASSIGNED
+ABC5 003F 3F UNASSIGNED
+ABC6 003F 3F UNASSIGNED
+ABC7 003F 3F UNASSIGNED
+ABC8 003F 3F UNASSIGNED
+ABC9 003F 3F UNASSIGNED
+ABCA 003F 3F UNASSIGNED
+ABCB 003F 3F UNASSIGNED
+ABCC 003F 3F UNASSIGNED
+ABCD 003F 3F UNASSIGNED
+ABCE 003F 3F UNASSIGNED
+ABCF 003F 3F UNASSIGNED
+ABD0 003F 3F UNASSIGNED
+ABD1 003F 3F UNASSIGNED
+ABD2 003F 3F UNASSIGNED
+ABD3 003F 3F UNASSIGNED
+ABD4 003F 3F UNASSIGNED
+ABD5 003F 3F UNASSIGNED
+ABD6 003F 3F UNASSIGNED
+ABD7 003F 3F UNASSIGNED
+ABD8 003F 3F UNASSIGNED
+ABD9 003F 3F UNASSIGNED
+ABDA 003F 3F UNASSIGNED
+ABDB 003F 3F UNASSIGNED
+ABDC 003F 3F UNASSIGNED
+ABDD 003F 3F UNASSIGNED
+ABDE 003F 3F UNASSIGNED
+ABDF 003F 3F UNASSIGNED
+ABE0 003F 3F UNASSIGNED
+ABE1 003F 3F UNASSIGNED
+ABE2 003F 3F UNASSIGNED
+ABE3 003F 3F UNASSIGNED
+ABE4 003F 3F UNASSIGNED
+ABE5 003F 3F UNASSIGNED
+ABE6 003F 3F UNASSIGNED
+ABE7 003F 3F UNASSIGNED
+ABE8 003F 3F UNASSIGNED
+ABE9 003F 3F UNASSIGNED
+ABEA 003F 3F UNASSIGNED
+ABEB 003F 3F UNASSIGNED
+ABEC 003F 3F UNASSIGNED
+ABED 003F 3F UNASSIGNED
+ABEE 003F 3F UNASSIGNED
+ABEF 003F 3F UNASSIGNED
+ABF0 003F 3F UNASSIGNED
+ABF1 003F 3F UNASSIGNED
+ABF2 003F 3F UNASSIGNED
+ABF3 003F 3F UNASSIGNED
+ABF4 003F 3F UNASSIGNED
+ABF5 003F 3F UNASSIGNED
+ABF6 003F 3F UNASSIGNED
+ABF7 003F 3F UNASSIGNED
+ABF8 003F 3F UNASSIGNED
+ABF9 003F 3F UNASSIGNED
+ABFA 003F 3F UNASSIGNED
+ABFB 003F 3F UNASSIGNED
+ABFC 003F 3F UNASSIGNED
+ABFD 003F 3F UNASSIGNED
+ABFE 003F 3F UNASSIGNED
+ACA1 003F 3F UNASSIGNED
+ACA2 003F 3F UNASSIGNED
+ACA3 003F 3F UNASSIGNED
+ACA4 003F 3F UNASSIGNED
+ACA5 003F 3F UNASSIGNED
+ACA6 003F 3F UNASSIGNED
+ACA7 003F 3F UNASSIGNED
+ACA8 003F 3F UNASSIGNED
+ACA9 003F 3F UNASSIGNED
+ACAA 003F 3F UNASSIGNED
+ACAB 003F 3F UNASSIGNED
+ACAC 003F 3F UNASSIGNED
+ACAD 003F 3F UNASSIGNED
+ACAE 003F 3F UNASSIGNED
+ACAF 003F 3F UNASSIGNED
+ACB0 003F 3F UNASSIGNED
+ACB1 003F 3F UNASSIGNED
+ACB2 003F 3F UNASSIGNED
+ACB3 003F 3F UNASSIGNED
+ACB4 003F 3F UNASSIGNED
+ACB5 003F 3F UNASSIGNED
+ACB6 003F 3F UNASSIGNED
+ACB7 003F 3F UNASSIGNED
+ACB8 003F 3F UNASSIGNED
+ACB9 003F 3F UNASSIGNED
+ACBA 003F 3F UNASSIGNED
+ACBB 003F 3F UNASSIGNED
+ACBC 003F 3F UNASSIGNED
+ACBD 003F 3F UNASSIGNED
+ACBE 003F 3F UNASSIGNED
+ACBF 003F 3F UNASSIGNED
+ACC0 003F 3F UNASSIGNED
+ACC1 003F 3F UNASSIGNED
+ACC2 003F 3F UNASSIGNED
+ACC3 003F 3F UNASSIGNED
+ACC4 003F 3F UNASSIGNED
+ACC5 003F 3F UNASSIGNED
+ACC6 003F 3F UNASSIGNED
+ACC7 003F 3F UNASSIGNED
+ACC8 003F 3F UNASSIGNED
+ACC9 003F 3F UNASSIGNED
+ACCA 003F 3F UNASSIGNED
+ACCB 003F 3F UNASSIGNED
+ACCC 003F 3F UNASSIGNED
+ACCD 003F 3F UNASSIGNED
+ACCE 003F 3F UNASSIGNED
+ACCF 003F 3F UNASSIGNED
+ACD0 003F 3F UNASSIGNED
+ACD1 003F 3F UNASSIGNED
+ACD2 003F 3F UNASSIGNED
+ACD3 003F 3F UNASSIGNED
+ACD4 003F 3F UNASSIGNED
+ACD5 003F 3F UNASSIGNED
+ACD6 003F 3F UNASSIGNED
+ACD7 003F 3F UNASSIGNED
+ACD8 003F 3F UNASSIGNED
+ACD9 003F 3F UNASSIGNED
+ACDA 003F 3F UNASSIGNED
+ACDB 003F 3F UNASSIGNED
+ACDC 003F 3F UNASSIGNED
+ACDD 003F 3F UNASSIGNED
+ACDE 003F 3F UNASSIGNED
+ACDF 003F 3F UNASSIGNED
+ACE0 003F 3F UNASSIGNED
+ACE1 003F 3F UNASSIGNED
+ACE2 003F 3F UNASSIGNED
+ACE3 003F 3F UNASSIGNED
+ACE4 003F 3F UNASSIGNED
+ACE5 003F 3F UNASSIGNED
+ACE6 003F 3F UNASSIGNED
+ACE7 003F 3F UNASSIGNED
+ACE8 003F 3F UNASSIGNED
+ACE9 003F 3F UNASSIGNED
+ACEA 003F 3F UNASSIGNED
+ACEB 003F 3F UNASSIGNED
+ACEC 003F 3F UNASSIGNED
+ACED 003F 3F UNASSIGNED
+ACEE 003F 3F UNASSIGNED
+ACEF 003F 3F UNASSIGNED
+ACF0 003F 3F UNASSIGNED
+ACF1 003F 3F UNASSIGNED
+ACF2 003F 3F UNASSIGNED
+ACF3 003F 3F UNASSIGNED
+ACF4 003F 3F UNASSIGNED
+ACF5 003F 3F UNASSIGNED
+ACF6 003F 3F UNASSIGNED
+ACF7 003F 3F UNASSIGNED
+ACF8 003F 3F UNASSIGNED
+ACF9 003F 3F UNASSIGNED
+ACFA 003F 3F UNASSIGNED
+ACFB 003F 3F UNASSIGNED
+ACFC 003F 3F UNASSIGNED
+ACFD 003F 3F UNASSIGNED
+ACFE 003F 3F UNASSIGNED
+ADA1 003F 3F UNASSIGNED
+ADA2 003F 3F UNASSIGNED
+ADA3 003F 3F UNASSIGNED
+ADA4 003F 3F UNASSIGNED
+ADA5 003F 3F UNASSIGNED
+ADA6 003F 3F UNASSIGNED
+ADA7 003F 3F UNASSIGNED
+ADA8 003F 3F UNASSIGNED
+ADA9 003F 3F UNASSIGNED
+ADAA 003F 3F UNASSIGNED
+ADAB 003F 3F UNASSIGNED
+ADAC 003F 3F UNASSIGNED
+ADAD 003F 3F UNASSIGNED
+ADAE 003F 3F UNASSIGNED
+ADAF 003F 3F UNASSIGNED
+ADB0 003F 3F UNASSIGNED
+ADB1 003F 3F UNASSIGNED
+ADB2 003F 3F UNASSIGNED
+ADB3 003F 3F UNASSIGNED
+ADB4 003F 3F UNASSIGNED
+ADB5 003F 3F UNASSIGNED
+ADB6 003F 3F UNASSIGNED
+ADB7 003F 3F UNASSIGNED
+ADB8 003F 3F UNASSIGNED
+ADB9 003F 3F UNASSIGNED
+ADBA 003F 3F UNASSIGNED
+ADBB 003F 3F UNASSIGNED
+ADBC 003F 3F UNASSIGNED
+ADBD 003F 3F UNASSIGNED
+ADBE 003F 3F UNASSIGNED
+ADBF 003F 3F UNASSIGNED
+ADC0 003F 3F UNASSIGNED
+ADC1 003F 3F UNASSIGNED
+ADC2 003F 3F UNASSIGNED
+ADC3 003F 3F UNASSIGNED
+ADC4 003F 3F UNASSIGNED
+ADC5 003F 3F UNASSIGNED
+ADC6 003F 3F UNASSIGNED
+ADC7 003F 3F UNASSIGNED
+ADC8 003F 3F UNASSIGNED
+ADC9 003F 3F UNASSIGNED
+ADCA 003F 3F UNASSIGNED
+ADCB 003F 3F UNASSIGNED
+ADCC 003F 3F UNASSIGNED
+ADCD 003F 3F UNASSIGNED
+ADCE 003F 3F UNASSIGNED
+ADCF 003F 3F UNASSIGNED
+ADD0 003F 3F UNASSIGNED
+ADD1 003F 3F UNASSIGNED
+ADD2 003F 3F UNASSIGNED
+ADD3 003F 3F UNASSIGNED
+ADD4 003F 3F UNASSIGNED
+ADD5 003F 3F UNASSIGNED
+ADD6 003F 3F UNASSIGNED
+ADD7 003F 3F UNASSIGNED
+ADD8 003F 3F UNASSIGNED
+ADD9 003F 3F UNASSIGNED
+ADDA 003F 3F UNASSIGNED
+ADDB 003F 3F UNASSIGNED
+ADDC 003F 3F UNASSIGNED
+ADDD 003F 3F UNASSIGNED
+ADDE 003F 3F UNASSIGNED
+ADDF 003F 3F UNASSIGNED
+ADE0 003F 3F UNASSIGNED
+ADE1 003F 3F UNASSIGNED
+ADE2 003F 3F UNASSIGNED
+ADE3 003F 3F UNASSIGNED
+ADE4 003F 3F UNASSIGNED
+ADE5 003F 3F UNASSIGNED
+ADE6 003F 3F UNASSIGNED
+ADE7 003F 3F UNASSIGNED
+ADE8 003F 3F UNASSIGNED
+ADE9 003F 3F UNASSIGNED
+ADEA 003F 3F UNASSIGNED
+ADEB 003F 3F UNASSIGNED
+ADEC 003F 3F UNASSIGNED
+ADED 003F 3F UNASSIGNED
+ADEE 003F 3F UNASSIGNED
+ADEF 003F 3F UNASSIGNED
+ADF0 003F 3F UNASSIGNED
+ADF1 003F 3F UNASSIGNED
+ADF2 003F 3F UNASSIGNED
+ADF3 003F 3F UNASSIGNED
+ADF4 003F 3F UNASSIGNED
+ADF5 003F 3F UNASSIGNED
+ADF6 003F 3F UNASSIGNED
+ADF7 003F 3F UNASSIGNED
+ADF8 003F 3F UNASSIGNED
+ADF9 003F 3F UNASSIGNED
+ADFA 003F 3F UNASSIGNED
+ADFB 003F 3F UNASSIGNED
+ADFC 003F 3F UNASSIGNED
+ADFD 003F 3F UNASSIGNED
+ADFE 003F 3F UNASSIGNED
+AEA1 003F 3F UNASSIGNED
+AEA2 003F 3F UNASSIGNED
+AEA3 003F 3F UNASSIGNED
+AEA4 003F 3F UNASSIGNED
+AEA5 003F 3F UNASSIGNED
+AEA6 003F 3F UNASSIGNED
+AEA7 003F 3F UNASSIGNED
+AEA8 003F 3F UNASSIGNED
+AEA9 003F 3F UNASSIGNED
+AEAA 003F 3F UNASSIGNED
+AEAB 003F 3F UNASSIGNED
+AEAC 003F 3F UNASSIGNED
+AEAD 003F 3F UNASSIGNED
+AEAE 003F 3F UNASSIGNED
+AEAF 003F 3F UNASSIGNED
+AEB0 003F 3F UNASSIGNED
+AEB1 003F 3F UNASSIGNED
+AEB2 003F 3F UNASSIGNED
+AEB3 003F 3F UNASSIGNED
+AEB4 003F 3F UNASSIGNED
+AEB5 003F 3F UNASSIGNED
+AEB6 003F 3F UNASSIGNED
+AEB7 003F 3F UNASSIGNED
+AEB8 003F 3F UNASSIGNED
+AEB9 003F 3F UNASSIGNED
+AEBA 003F 3F UNASSIGNED
+AEBB 003F 3F UNASSIGNED
+AEBC 003F 3F UNASSIGNED
+AEBD 003F 3F UNASSIGNED
+AEBE 003F 3F UNASSIGNED
+AEBF 003F 3F UNASSIGNED
+AEC0 003F 3F UNASSIGNED
+AEC1 003F 3F UNASSIGNED
+AEC2 003F 3F UNASSIGNED
+AEC3 003F 3F UNASSIGNED
+AEC4 003F 3F UNASSIGNED
+AEC5 003F 3F UNASSIGNED
+AEC6 003F 3F UNASSIGNED
+AEC7 003F 3F UNASSIGNED
+AEC8 003F 3F UNASSIGNED
+AEC9 003F 3F UNASSIGNED
+AECA 003F 3F UNASSIGNED
+AECB 003F 3F UNASSIGNED
+AECC 003F 3F UNASSIGNED
+AECD 003F 3F UNASSIGNED
+AECE 003F 3F UNASSIGNED
+AECF 003F 3F UNASSIGNED
+AED0 003F 3F UNASSIGNED
+AED1 003F 3F UNASSIGNED
+AED2 003F 3F UNASSIGNED
+AED3 003F 3F UNASSIGNED
+AED4 003F 3F UNASSIGNED
+AED5 003F 3F UNASSIGNED
+AED6 003F 3F UNASSIGNED
+AED7 003F 3F UNASSIGNED
+AED8 003F 3F UNASSIGNED
+AED9 003F 3F UNASSIGNED
+AEDA 003F 3F UNASSIGNED
+AEDB 003F 3F UNASSIGNED
+AEDC 003F 3F UNASSIGNED
+AEDD 003F 3F UNASSIGNED
+AEDE 003F 3F UNASSIGNED
+AEDF 003F 3F UNASSIGNED
+AEE0 003F 3F UNASSIGNED
+AEE1 003F 3F UNASSIGNED
+AEE2 003F 3F UNASSIGNED
+AEE3 003F 3F UNASSIGNED
+AEE4 003F 3F UNASSIGNED
+AEE5 003F 3F UNASSIGNED
+AEE6 003F 3F UNASSIGNED
+AEE7 003F 3F UNASSIGNED
+AEE8 003F 3F UNASSIGNED
+AEE9 003F 3F UNASSIGNED
+AEEA 003F 3F UNASSIGNED
+AEEB 003F 3F UNASSIGNED
+AEEC 003F 3F UNASSIGNED
+AEED 003F 3F UNASSIGNED
+AEEE 003F 3F UNASSIGNED
+AEEF 003F 3F UNASSIGNED
+AEF0 003F 3F UNASSIGNED
+AEF1 003F 3F UNASSIGNED
+AEF2 003F 3F UNASSIGNED
+AEF3 003F 3F UNASSIGNED
+AEF4 003F 3F UNASSIGNED
+AEF5 003F 3F UNASSIGNED
+AEF6 003F 3F UNASSIGNED
+AEF7 003F 3F UNASSIGNED
+AEF8 003F 3F UNASSIGNED
+AEF9 003F 3F UNASSIGNED
+AEFA 003F 3F UNASSIGNED
+AEFB 003F 3F UNASSIGNED
+AEFC 003F 3F UNASSIGNED
+AEFD 003F 3F UNASSIGNED
+AEFE 003F 3F UNASSIGNED
+AFA1 003F 3F UNASSIGNED
+AFA2 003F 3F UNASSIGNED
+AFA3 003F 3F UNASSIGNED
+AFA4 003F 3F UNASSIGNED
+AFA5 003F 3F UNASSIGNED
+AFA6 003F 3F UNASSIGNED
+AFA7 003F 3F UNASSIGNED
+AFA8 003F 3F UNASSIGNED
+AFA9 003F 3F UNASSIGNED
+AFAA 003F 3F UNASSIGNED
+AFAB 003F 3F UNASSIGNED
+AFAC 003F 3F UNASSIGNED
+AFAD 003F 3F UNASSIGNED
+AFAE 003F 3F UNASSIGNED
+AFAF 003F 3F UNASSIGNED
+AFB0 003F 3F UNASSIGNED
+AFB1 003F 3F UNASSIGNED
+AFB2 003F 3F UNASSIGNED
+AFB3 003F 3F UNASSIGNED
+AFB4 003F 3F UNASSIGNED
+AFB5 003F 3F UNASSIGNED
+AFB6 003F 3F UNASSIGNED
+AFB7 003F 3F UNASSIGNED
+AFB8 003F 3F UNASSIGNED
+AFB9 003F 3F UNASSIGNED
+AFBA 003F 3F UNASSIGNED
+AFBB 003F 3F UNASSIGNED
+AFBC 003F 3F UNASSIGNED
+AFBD 003F 3F UNASSIGNED
+AFBE 003F 3F UNASSIGNED
+AFBF 003F 3F UNASSIGNED
+AFC0 003F 3F UNASSIGNED
+AFC1 003F 3F UNASSIGNED
+AFC2 003F 3F UNASSIGNED
+AFC3 003F 3F UNASSIGNED
+AFC4 003F 3F UNASSIGNED
+AFC5 003F 3F UNASSIGNED
+AFC6 003F 3F UNASSIGNED
+AFC7 003F 3F UNASSIGNED
+AFC8 003F 3F UNASSIGNED
+AFC9 003F 3F UNASSIGNED
+AFCA 003F 3F UNASSIGNED
+AFCB 003F 3F UNASSIGNED
+AFCC 003F 3F UNASSIGNED
+AFCD 003F 3F UNASSIGNED
+AFCE 003F 3F UNASSIGNED
+AFCF 003F 3F UNASSIGNED
+AFD0 003F 3F UNASSIGNED
+AFD1 003F 3F UNASSIGNED
+AFD2 003F 3F UNASSIGNED
+AFD3 003F 3F UNASSIGNED
+AFD4 003F 3F UNASSIGNED
+AFD5 003F 3F UNASSIGNED
+AFD6 003F 3F UNASSIGNED
+AFD7 003F 3F UNASSIGNED
+AFD8 003F 3F UNASSIGNED
+AFD9 003F 3F UNASSIGNED
+AFDA 003F 3F UNASSIGNED
+AFDB 003F 3F UNASSIGNED
+AFDC 003F 3F UNASSIGNED
+AFDD 003F 3F UNASSIGNED
+AFDE 003F 3F UNASSIGNED
+AFDF 003F 3F UNASSIGNED
+AFE0 003F 3F UNASSIGNED
+AFE1 003F 3F UNASSIGNED
+AFE2 003F 3F UNASSIGNED
+AFE3 003F 3F UNASSIGNED
+AFE4 003F 3F UNASSIGNED
+AFE5 003F 3F UNASSIGNED
+AFE6 003F 3F UNASSIGNED
+AFE7 003F 3F UNASSIGNED
+AFE8 003F 3F UNASSIGNED
+AFE9 003F 3F UNASSIGNED
+AFEA 003F 3F UNASSIGNED
+AFEB 003F 3F UNASSIGNED
+AFEC 003F 3F UNASSIGNED
+AFED 003F 3F UNASSIGNED
+AFEE 003F 3F UNASSIGNED
+AFEF 003F 3F UNASSIGNED
+AFF0 003F 3F UNASSIGNED
+AFF1 003F 3F UNASSIGNED
+AFF2 003F 3F UNASSIGNED
+AFF3 003F 3F UNASSIGNED
+AFF4 003F 3F UNASSIGNED
+AFF5 003F 3F UNASSIGNED
+AFF6 003F 3F UNASSIGNED
+AFF7 003F 3F UNASSIGNED
+AFF8 003F 3F UNASSIGNED
+AFF9 003F 3F UNASSIGNED
+AFFA 003F 3F UNASSIGNED
+AFFB 003F 3F UNASSIGNED
+AFFC 003F 3F UNASSIGNED
+AFFD 003F 3F UNASSIGNED
+AFFE 003F 3F UNASSIGNED
+CFD4 003F 3F UNASSIGNED
+CFD5 003F 3F UNASSIGNED
+CFD6 003F 3F UNASSIGNED
+CFD7 003F 3F UNASSIGNED
+CFD8 003F 3F UNASSIGNED
+CFD9 003F 3F UNASSIGNED
+CFDA 003F 3F UNASSIGNED
+CFDB 003F 3F UNASSIGNED
+CFDC 003F 3F UNASSIGNED
+CFDD 003F 3F UNASSIGNED
+CFDE 003F 3F UNASSIGNED
+CFDF 003F 3F UNASSIGNED
+CFE0 003F 3F UNASSIGNED
+CFE1 003F 3F UNASSIGNED
+CFE2 003F 3F UNASSIGNED
+CFE3 003F 3F UNASSIGNED
+CFE4 003F 3F UNASSIGNED
+CFE5 003F 3F UNASSIGNED
+CFE6 003F 3F UNASSIGNED
+CFE7 003F 3F UNASSIGNED
+CFE8 003F 3F UNASSIGNED
+CFE9 003F 3F UNASSIGNED
+CFEA 003F 3F UNASSIGNED
+CFEB 003F 3F UNASSIGNED
+CFEC 003F 3F UNASSIGNED
+CFED 003F 3F UNASSIGNED
+CFEE 003F 3F UNASSIGNED
+CFEF 003F 3F UNASSIGNED
+CFF0 003F 3F UNASSIGNED
+CFF1 003F 3F UNASSIGNED
+CFF2 003F 3F UNASSIGNED
+CFF3 003F 3F UNASSIGNED
+CFF4 003F 3F UNASSIGNED
+CFF5 003F 3F UNASSIGNED
+CFF6 003F 3F UNASSIGNED
+CFF7 003F 3F UNASSIGNED
+CFF8 003F 3F UNASSIGNED
+CFF9 003F 3F UNASSIGNED
+CFFA 003F 3F UNASSIGNED
+CFFB 003F 3F UNASSIGNED
+CFFC 003F 3F UNASSIGNED
+CFFD 003F 3F UNASSIGNED
+CFFE 003F 3F UNASSIGNED
+F4A7 003F 3F UNASSIGNED
+F4A8 003F 3F UNASSIGNED
+F4A9 003F 3F UNASSIGNED
+F4AA 003F 3F UNASSIGNED
+F4AB 003F 3F UNASSIGNED
+F4AC 003F 3F UNASSIGNED
+F4AD 003F 3F UNASSIGNED
+F4AE 003F 3F UNASSIGNED
+F4AF 003F 3F UNASSIGNED
+F4B0 003F 3F UNASSIGNED
+F4B1 003F 3F UNASSIGNED
+F4B2 003F 3F UNASSIGNED
+F4B3 003F 3F UNASSIGNED
+F4B4 003F 3F UNASSIGNED
+F4B5 003F 3F UNASSIGNED
+F4B6 003F 3F UNASSIGNED
+F4B7 003F 3F UNASSIGNED
+F4B8 003F 3F UNASSIGNED
+F4B9 003F 3F UNASSIGNED
+F4BA 003F 3F UNASSIGNED
+F4BB 003F 3F UNASSIGNED
+F4BC 003F 3F UNASSIGNED
+F4BD 003F 3F UNASSIGNED
+F4BE 003F 3F UNASSIGNED
+F4BF 003F 3F UNASSIGNED
+F4C0 003F 3F UNASSIGNED
+F4C1 003F 3F UNASSIGNED
+F4C2 003F 3F UNASSIGNED
+F4C3 003F 3F UNASSIGNED
+F4C4 003F 3F UNASSIGNED
+F4C5 003F 3F UNASSIGNED
+F4C6 003F 3F UNASSIGNED
+F4C7 003F 3F UNASSIGNED
+F4C8 003F 3F UNASSIGNED
+F4C9 003F 3F UNASSIGNED
+F4CA 003F 3F UNASSIGNED
+F4CB 003F 3F UNASSIGNED
+F4CC 003F 3F UNASSIGNED
+F4CD 003F 3F UNASSIGNED
+F4CE 003F 3F UNASSIGNED
+F4CF 003F 3F UNASSIGNED
+F4D0 003F 3F UNASSIGNED
+F4D1 003F 3F UNASSIGNED
+F4D2 003F 3F UNASSIGNED
+F4D3 003F 3F UNASSIGNED
+F4D4 003F 3F UNASSIGNED
+F4D5 003F 3F UNASSIGNED
+F4D6 003F 3F UNASSIGNED
+F4D7 003F 3F UNASSIGNED
+F4D8 003F 3F UNASSIGNED
+F4D9 003F 3F UNASSIGNED
+F4DA 003F 3F UNASSIGNED
+F4DB 003F 3F UNASSIGNED
+F4DC 003F 3F UNASSIGNED
+F4DD 003F 3F UNASSIGNED
+F4DE 003F 3F UNASSIGNED
+F4DF 003F 3F UNASSIGNED
+F4E0 003F 3F UNASSIGNED
+F4E1 003F 3F UNASSIGNED
+F4E2 003F 3F UNASSIGNED
+F4E3 003F 3F UNASSIGNED
+F4E4 003F 3F UNASSIGNED
+F4E5 003F 3F UNASSIGNED
+F4E6 003F 3F UNASSIGNED
+F4E7 003F 3F UNASSIGNED
+F4E8 003F 3F UNASSIGNED
+F4E9 003F 3F UNASSIGNED
+F4EA 003F 3F UNASSIGNED
+F4EB 003F 3F UNASSIGNED
+F4EC 003F 3F UNASSIGNED
+F4ED 003F 3F UNASSIGNED
+F4EE 003F 3F UNASSIGNED
+F4EF 003F 3F UNASSIGNED
+F4F0 003F 3F UNASSIGNED
+F4F1 003F 3F UNASSIGNED
+F4F2 003F 3F UNASSIGNED
+F4F3 003F 3F UNASSIGNED
+F4F4 003F 3F UNASSIGNED
+F4F5 003F 3F UNASSIGNED
+F4F6 003F 3F UNASSIGNED
+F4F7 003F 3F UNASSIGNED
+F4F8 003F 3F UNASSIGNED
+F4F9 003F 3F UNASSIGNED
+F4FA 003F 3F UNASSIGNED
+F4FB 003F 3F UNASSIGNED
+F4FC 003F 3F UNASSIGNED
+F4FD 003F 3F UNASSIGNED
+F4FE 003F 3F UNASSIGNED
+drop table t1;
+drop table t2;
+create table t1 (
+ujis varchar(1) character set ujis,
+name varchar(64),
+ucs2 varchar(1) character set ucs2,
+ujis2 varchar(1) character set ujis
+);
+insert into t1 (ujis,name) values (0x5C, 'U+005C REVERSE SOLIDUS');
+insert into t1 (ujis,name) values (0x7E, 'U+007E TILDE');
+insert into t1 (ujis,name) values (0xA1B1, 'U+FFE3 FULLWIDTH MACRON');
+insert into t1 (ujis,name) values (0xA1BD, 'U+2015 HORIZONTAL BAR');
+insert into t1 (ujis,name) values (0xA1C0, 'U+005C REVERSE SOLIDUS');
+insert into t1 (ujis,name) values (0xA1C1, 'U+301C WAVE DASH');
+insert into t1 (ujis,name) values (0xA1C2, 'U+2016 DOUBLE VERTICAL LINE');
+insert into t1 (ujis,name) values (0xA1DD, 'U+2212 MINUS SIGN');
+insert into t1 (ujis,name) values (0xA1F1, 'U+00A2 CENT SIGN');
+insert into t1 (ujis,name) values (0xA1F2, 'U+00A3 POUND SIGN');
+insert into t1 (ujis,name) values (0xA1EF, 'U+FFE5 FULLWIDTH YEN SIGN');
+insert into t1 (ujis,name) values (0xA2CC, 'U+00AC NOT SIGN');
+insert into t1 (ujis,name) values (0x8FA2B7, 'U+007E TILDE');
+insert into t1 (ujis,name) values (0x8FA2C3, 'U+00A6 BROKEN BAR');
+update t1 set ucs2=ujis, ujis2=ucs2;
+select hex(ujis), hex(ucs2), hex(ujis2), name from t1;
+hex(ujis) hex(ucs2) hex(ujis2) name
+5C 005C 5C U+005C REVERSE SOLIDUS
+7E 007E 7E U+007E TILDE
+A1B1 FFE3 A1B1 U+FFE3 FULLWIDTH MACRON
+A1BD 2015 A1BD U+2015 HORIZONTAL BAR
+A1C0 005C 5C U+005C REVERSE SOLIDUS
+A1C1 301C A1C1 U+301C WAVE DASH
+A1C2 2016 A1C2 U+2016 DOUBLE VERTICAL LINE
+A1DD 2212 A1DD U+2212 MINUS SIGN
+A1F1 00A2 A1F1 U+00A2 CENT SIGN
+A1F2 00A3 A1F2 U+00A3 POUND SIGN
+A1EF FFE5 A1EF U+FFE5 FULLWIDTH YEN SIGN
+A2CC 00AC A2CC U+00AC NOT SIGN
+8FA2B7 007E 7E U+007E TILDE
+8FA2C3 00A6 8FA2C3 U+00A6 BROKEN BAR
+drop table t1;
+create table t1 (
+ujis char(1) character set ujis,
+ucs2 char(1) character set ucs2,
+name char(64)
+);
+insert into t1 (ucs2,name) values (0x00A5,'U+00A5 YEN SIGN');
+insert into t1 (ucs2,name) values (0x2014,'U+2014 EM DASH');
+insert into t1 (ucs2,name) values (0x203E,'U+203E OVERLINE');
+insert into t1 (ucs2,name) values (0x2225,'U+2225 PARALLEL TO');
+insert into t1 (ucs2,name) values (0xFF0D,'U+FF0D FULLWIDTH HYPHEN-MINUS');
+insert into t1 (ucs2,name) values (0xFF3C,'U+FF3C FULLWIDTH REVERSE SOLIDUS');
+insert into t1 (ucs2,name) values (0xFF5E,'U+FF5E FULLWIDTH TILDE');
+insert into t1 (ucs2,name) values (0xFFE0,'U+FFE0 FULLWIDTH CENT SIGN');
+insert into t1 (ucs2,name) values (0xFFE1,'U+FFE1 FULLWIDTH POUND SIGN');
+insert into t1 (ucs2,name) values (0xFFE2,'U+FFE2 FULLWIDTH NOT SIGN');
+insert into t1 (ucs2,name) values (0xFFE4,'U+FFE4 FULLWIDTH BROKEN BAR');
+update t1 set ujis=ucs2;
+Warnings:
+Warning 1366 Incorrect string value: '\x00\xA5' for column 'ujis' at row 1
+Warning 1366 Incorrect string value: '\x20\x14' for column 'ujis' at row 2
+Warning 1366 Incorrect string value: '\x20\x3E' for column 'ujis' at row 3
+Warning 1366 Incorrect string value: '\x22\x25' for column 'ujis' at row 4
+Warning 1366 Incorrect string value: '\xFF\x0D' for column 'ujis' at row 5
+Warning 1366 Incorrect string value: '\xFF\x3C' for column 'ujis' at row 6
+Warning 1366 Incorrect string value: '\xFF\x5E' for column 'ujis' at row 7
+Warning 1366 Incorrect string value: '\xFF\xE0' for column 'ujis' at row 8
+Warning 1366 Incorrect string value: '\xFF\xE1' for column 'ujis' at row 9
+Warning 1366 Incorrect string value: '\xFF\xE2' for column 'ujis' at row 10
+Warning 1366 Incorrect string value: '\xFF\xE4' for column 'ujis' at row 11
+select hex(ucs2),hex(ujis),name from t1 order by name;
+hex(ucs2) hex(ujis) name
+00A5 3F U+00A5 YEN SIGN
+2014 3F U+2014 EM DASH
+203E 3F U+203E OVERLINE
+2225 3F U+2225 PARALLEL TO
+FF0D 3F U+FF0D FULLWIDTH HYPHEN-MINUS
+FF3C 3F U+FF3C FULLWIDTH REVERSE SOLIDUS
+FF5E 3F U+FF5E FULLWIDTH TILDE
+FFE0 3F U+FFE0 FULLWIDTH CENT SIGN
+FFE1 3F U+FFE1 FULLWIDTH POUND SIGN
+FFE2 3F U+FFE2 FULLWIDTH NOT SIGN
+FFE4 3F U+FFE4 FULLWIDTH BROKEN BAR
+drop table t1;
+End of 5.1 tests
diff --git a/mysql-test/r/ctype_utf8.result b/mysql-test/r/ctype_utf8.result
index a4d7ca2558f..6f4ae965ca0 100644
--- a/mysql-test/r/ctype_utf8.result
+++ b/mysql-test/r/ctype_utf8.result
@@ -124,7 +124,7 @@ create table t1 select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) character set utf8 default NULL
+ `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t1;
date_format("2004-01-19 10:10:10", "%Y-%m-%d")
@@ -276,8 +276,8 @@ select null, null;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s1` varchar(64) character set utf8 default NULL,
- `s2` varchar(64) character set utf8 default NULL
+ `s1` varchar(64) CHARACTER SET utf8 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
delete from t1;
insert into t1 values('aaa','aaa');
@@ -342,7 +342,7 @@ create table t1 (a enum('aaaa','проба') character set utf8);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('aaaa','проба') character set utf8 default NULL
+ `a` enum('aaaa','проба') CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('проба');
select * from t1;
@@ -352,7 +352,7 @@ create table t2 select ifnull(a,a) from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `ifnull(a,a)` varchar(5) character set utf8 default NULL
+ `ifnull(a,a)` varchar(5) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t2;
ifnull(a,a)
@@ -363,9 +363,9 @@ create table t1 (c varchar(30) character set utf8, unique(c(10)));
insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
insert into t1 values ('aaaaaaaaaa');
insert into t1 values ('aaaaaaaaaaa');
-ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 1
+ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 'c'
insert into t1 values ('aaaaaaaaaaaa');
-ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 1
+ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 'c'
insert into t1 values (repeat('b',20));
select c c1 from t1 where c='1';
c1
@@ -396,9 +396,9 @@ create table t1 (c varchar(30) character set utf8, unique(c(10))) engine=innodb;
insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
insert into t1 values ('aaaaaaaaaa');
insert into t1 values ('aaaaaaaaaaa');
-ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 1
+ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 'c'
insert into t1 values ('aaaaaaaaaaaa');
-ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 1
+ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 'c'
insert into t1 values (repeat('b',20));
select c c1 from t1 where c='1';
c1
@@ -430,46 +430,46 @@ insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
insert into t1 values ('a');
insert into t1 values ('aa');
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'c'
insert into t1 values ('b');
insert into t1 values ('bb');
insert into t1 values ('bbb');
-ERROR 23000: Duplicate entry 'bbb' for key 1
+ERROR 23000: Duplicate entry 'bbb' for key 'c'
insert into t1 values ('а');
insert into t1 values ('аа');
insert into t1 values ('ааа');
-ERROR 23000: Duplicate entry 'ааа' for key 1
+ERROR 23000: Duplicate entry 'ааа' for key 'c'
insert into t1 values ('б');
insert into t1 values ('бб');
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'ббб' for key 1
+ERROR 23000: Duplicate entry 'ббб' for key 'c'
insert into t1 values ('ꪪ');
insert into t1 values ('ꪪꪪ');
insert into t1 values ('ꪪꪪꪪ');
-ERROR 23000: Duplicate entry 'ꪪꪪ' for key 1
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
drop table t1;
create table t1 (c char(3) character set utf8, unique (c(2))) engine=innodb;
insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
insert into t1 values ('a');
insert into t1 values ('aa');
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'c'
insert into t1 values ('b');
insert into t1 values ('bb');
insert into t1 values ('bbb');
-ERROR 23000: Duplicate entry 'bbb' for key 1
+ERROR 23000: Duplicate entry 'bbb' for key 'c'
insert into t1 values ('а');
insert into t1 values ('аа');
insert into t1 values ('ааа');
-ERROR 23000: Duplicate entry 'ааа' for key 1
+ERROR 23000: Duplicate entry 'ааа' for key 'c'
insert into t1 values ('б');
insert into t1 values ('бб');
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'ббб' for key 1
+ERROR 23000: Duplicate entry 'ббб' for key 'c'
insert into t1 values ('ꪪ');
insert into t1 values ('ꪪꪪ');
insert into t1 values ('ꪪꪪꪪ');
-ERROR 23000: Duplicate entry 'ꪪꪪ' for key 1
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
drop table t1;
create table t1 (
c char(10) character set utf8,
@@ -478,19 +478,19 @@ unique key a using hash (c(1))
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 default NULL,
- UNIQUE KEY `a` USING HASH (`c`(1))
+ `c` char(10) CHARACTER SET utf8 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
) ENGINE=MEMORY DEFAULT CHARSET=latin1
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
insert into t1 values ('aa');
-ERROR 23000: Duplicate entry 'aa' for key 1
+ERROR 23000: Duplicate entry 'aa' for key 'a'
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'a'
insert into t1 values ('б');
insert into t1 values ('бб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
select c as c_all from t1 order by c;
c_all
a
@@ -514,19 +514,19 @@ unique key a using btree (c(1))
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 default NULL,
- UNIQUE KEY `a` USING BTREE (`c`(1))
+ `c` char(10) CHARACTER SET utf8 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
insert into t1 values ('aa');
-ERROR 23000: Duplicate entry 'aa' for key 1
+ERROR 23000: Duplicate entry 'aa' for key 'a'
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'a'
insert into t1 values ('б');
insert into t1 values ('бб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
select c as c_all from t1 order by c;
c_all
a
@@ -546,17 +546,17 @@ drop table t1;
create table t1 (
c char(10) character set utf8,
unique key a (c(1))
-) engine=bdb;
+) engine=innodb;
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
insert into t1 values ('aa');
-ERROR 23000: Duplicate entry 'aa' for key 1
+ERROR 23000: Duplicate entry 'aa' for key 'a'
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'a'
insert into t1 values ('б');
insert into t1 values ('бб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
select c as c_all from t1 order by c;
c_all
a
@@ -577,9 +577,9 @@ create table t1 (c varchar(30) character set utf8 collate utf8_bin, unique(c(10)
insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
insert into t1 values ('aaaaaaaaaa');
insert into t1 values ('aaaaaaaaaaa');
-ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 1
+ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 'c'
insert into t1 values ('aaaaaaaaaaaa');
-ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 1
+ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 'c'
insert into t1 values (repeat('b',20));
select c c1 from t1 where c='1';
c1
@@ -611,23 +611,23 @@ insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
insert into t1 values ('a');
insert into t1 values ('aa');
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'c'
insert into t1 values ('b');
insert into t1 values ('bb');
insert into t1 values ('bbb');
-ERROR 23000: Duplicate entry 'bbb' for key 1
+ERROR 23000: Duplicate entry 'bbb' for key 'c'
insert into t1 values ('а');
insert into t1 values ('аа');
insert into t1 values ('ааа');
-ERROR 23000: Duplicate entry 'ааа' for key 1
+ERROR 23000: Duplicate entry 'ааа' for key 'c'
insert into t1 values ('б');
insert into t1 values ('бб');
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'ббб' for key 1
+ERROR 23000: Duplicate entry 'ббб' for key 'c'
insert into t1 values ('ꪪ');
insert into t1 values ('ꪪꪪ');
insert into t1 values ('ꪪꪪꪪ');
-ERROR 23000: Duplicate entry 'ꪪꪪ' for key 1
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
drop table t1;
create table t1 (
c char(10) character set utf8 collate utf8_bin,
@@ -636,19 +636,19 @@ unique key a using hash (c(1))
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 collate utf8_bin default NULL,
- UNIQUE KEY `a` USING HASH (`c`(1))
+ `c` char(10) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
) ENGINE=MEMORY DEFAULT CHARSET=latin1
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
insert into t1 values ('aa');
-ERROR 23000: Duplicate entry 'aa' for key 1
+ERROR 23000: Duplicate entry 'aa' for key 'a'
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'a'
insert into t1 values ('б');
insert into t1 values ('бб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
select c as c_all from t1 order by c;
c_all
a
@@ -672,19 +672,19 @@ unique key a using btree (c(1))
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 collate utf8_bin default NULL,
- UNIQUE KEY `a` USING BTREE (`c`(1))
+ `c` char(10) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
insert into t1 values ('aa');
-ERROR 23000: Duplicate entry 'aa' for key 1
+ERROR 23000: Duplicate entry 'aa' for key 'a'
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'a'
insert into t1 values ('б');
insert into t1 values ('бб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
select c as c_all from t1 order by c;
c_all
a
@@ -704,17 +704,17 @@ drop table t1;
create table t1 (
c char(10) character set utf8 collate utf8_bin,
unique key a (c(1))
-) engine=bdb;
+) engine=innodb;
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
insert into t1 values ('aa');
-ERROR 23000: Duplicate entry 'aa' for key 1
+ERROR 23000: Duplicate entry 'aa' for key 'a'
insert into t1 values ('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
+ERROR 23000: Duplicate entry 'aaa' for key 'a'
insert into t1 values ('б');
insert into t1 values ('бб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
insert into t1 values ('ббб');
-ERROR 23000: Duplicate entry 'б' for key 1
+ERROR 23000: Duplicate entry 'б' for key 'a'
select c as c_all from t1 order by c;
c_all
a
@@ -774,7 +774,7 @@ drop table t1;
create table t1 (
str varchar(255) character set utf8 not null,
key str (str(2))
-) engine=bdb;
+) engine=innodb;
INSERT INTO t1 VALUES ('str');
INSERT INTO t1 VALUES ('str2');
select * from t1 where str='str';
@@ -863,7 +863,7 @@ insert into t1 values(1,'foo'),(2,'foobar');
select * from t1 where b like 'foob%';
a b
2 foobar
-alter table t1 engine=bdb;
+alter table t1 engine=innodb;
select * from t1 where b like 'foob%';
a b
2 foobar
@@ -876,8 +876,8 @@ create table t2 select concat(a,_utf8'') as a, concat(b,_utf8'')as b from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` varchar(5) character set utf8 NOT NULL default '',
- `b` varchar(15) character set utf8 NOT NULL default ''
+ `a` varchar(5) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `b` varchar(15) CHARACTER SET utf8 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t2;
drop table t1;
@@ -939,6 +939,41 @@ select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
c2h
ab_def
drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ß C39F
+ss 7373
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s,ß
+ss
+u,ü
+ue
+drop table t1;
SET collation_connection='utf8_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
@@ -1500,7 +1535,7 @@ explain
select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE Y ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where
+1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where; Using join buffer
select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
substr(Z.a,-1) a
3 123
diff --git a/mysql-test/r/date_formats.result b/mysql-test/r/date_formats.result
index 43f656e3c99..7e185daa668 100644
--- a/mysql-test/r/date_formats.result
+++ b/mysql-test/r/date_formats.result
@@ -1,16 +1,20 @@
drop table if exists t1;
-SHOW GLOBAL VARIABLES LIKE "%_format%";
-Variable_name Value
-date_format %d.%m.%Y
-datetime_format %Y-%m-%d %H:%i:%s
-default_week_format 0
-time_format %H.%i.%s
-SHOW SESSION VARIABLES LIKE "%_format%";
-Variable_name Value
-date_format %d.%m.%Y
-datetime_format %Y-%m-%d %H:%i:%s
-default_week_format 0
-time_format %H.%i.%s
+SELECT variable_name, variable_value
+FROM information_schema.global_variables
+WHERE variable_name IN ('date_format', 'datetime_format', 'time_format')
+ORDER BY variable_name;
+variable_name variable_value
+DATETIME_FORMAT %Y-%m-%d %H:%i:%s
+DATE_FORMAT %d.%m.%Y
+TIME_FORMAT %H.%i.%s
+SELECT variable_name, variable_value
+FROM information_schema.session_variables
+WHERE variable_name IN ('date_format', 'datetime_format', 'time_format')
+ORDER BY variable_name;
+variable_name variable_value
+DATETIME_FORMAT %Y-%m-%d %H:%i:%s
+DATE_FORMAT %d.%m.%Y
+TIME_FORMAT %H.%i.%s
SET time_format='%H%i%s';
SET time_format='%H:%i:%s.%f';
SET time_format='%h-%i-%s.%f%p';
@@ -28,12 +32,14 @@ set datetime_format= '%H:%i:%s %Y-%m-%d';
set datetime_format= '%H:%i:%s.%f %m-%d-%Y';
set datetime_format= '%h:%i:%s %p %Y-%m-%d';
set datetime_format= '%h:%i:%s.%f %p %Y-%m-%d';
-SHOW SESSION VARIABLES LIKE "%format";
-Variable_name Value
-date_format %m-%d-%Y
-datetime_format %h:%i:%s.%f %p %Y-%m-%d
-default_week_format 0
-time_format %h:%i:%s%p
+SELECT variable_name, variable_value
+FROM information_schema.session_variables
+WHERE variable_name IN ('date_format', 'datetime_format', 'time_format')
+ORDER BY variable_name;
+variable_name variable_value
+DATETIME_FORMAT %h:%i:%s.%f %p %Y-%m-%d
+DATE_FORMAT %m-%d-%Y
+TIME_FORMAT %h:%i:%s%p
SET time_format='%h:%i:%s';
ERROR 42000: Variable 'time_format' can't be set to the value of '%h:%i:%s'
SET time_format='%H %i:%s';
@@ -83,7 +89,7 @@ select STR_TO_DATE('2004.12.12 22.30.61','%Y.%m.%d %T');
STR_TO_DATE('2004.12.12 22.30.61','%Y.%m.%d %T')
NULL
Warnings:
-Error 1411 Incorrect time value: '22.30.61' for function str_to_time
+Error 1411 Incorrect time value: '22.30.61' for function str_to_date
create table t1 (date char(30), format char(30) not null);
insert into t1 values
('2003-01-02 10:11:12', '%Y-%m-%d %H:%i:%S'),
@@ -355,21 +361,21 @@ Tuesday 52 2001 %W %u %x NULL
7 53 1998 %w %u %Y NULL
NULL %m.%d.%Y NULL
Warnings:
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12.123456' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AM' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AN' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
-Error 1411 Incorrect datetime value: '10:20:10AM' for function str_to_time
-Error 1411 Incorrect datetime value: '15 Septembei 2001' for function str_to_time
-Error 1411 Incorrect datetime value: '15 Ju 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Sund 15 MA' for function str_to_time
-Error 1411 Incorrect datetime value: 'Thursdai 12 1998' for function str_to_time
-Error 1411 Incorrect datetime value: 'Sunday 01 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
-Error 1411 Incorrect datetime value: '7 53 1998' for function str_to_time
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12.123456' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AM' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AN' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_date
+Error 1411 Incorrect datetime value: '10:20:10AM' for function str_to_date
+Error 1411 Incorrect datetime value: '15 Septembei 2001' for function str_to_date
+Error 1411 Incorrect datetime value: '15 Ju 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Sund 15 MA' for function str_to_date
+Error 1411 Incorrect datetime value: 'Thursdai 12 1998' for function str_to_date
+Error 1411 Incorrect datetime value: 'Sunday 01 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_date
+Error 1411 Incorrect datetime value: '7 53 1998' for function str_to_date
select date,format,concat(str_to_date(date, format),'') as con from t1;
date format con
2003-01-02 10:11:12 PM %Y-%m-%d %H:%i:%S %p NULL
@@ -389,21 +395,21 @@ Tuesday 52 2001 %W %u %x NULL
7 53 1998 %w %u %Y NULL
NULL %m.%d.%Y NULL
Warnings:
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12.123456' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AM' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AN' for function str_to_time
-Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
-Error 1411 Incorrect datetime value: '10:20:10AM' for function str_to_time
-Error 1411 Incorrect datetime value: '15 Septembei 2001' for function str_to_time
-Error 1411 Incorrect datetime value: '15 Ju 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Sund 15 MA' for function str_to_time
-Error 1411 Incorrect datetime value: 'Thursdai 12 1998' for function str_to_time
-Error 1411 Incorrect datetime value: 'Sunday 01 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
-Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
-Error 1411 Incorrect datetime value: '7 53 1998' for function str_to_time
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12.123456' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AM' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AN' for function str_to_date
+Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_date
+Error 1411 Incorrect datetime value: '10:20:10AM' for function str_to_date
+Error 1411 Incorrect datetime value: '15 Septembei 2001' for function str_to_date
+Error 1411 Incorrect datetime value: '15 Ju 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Sund 15 MA' for function str_to_date
+Error 1411 Incorrect datetime value: 'Thursdai 12 1998' for function str_to_date
+Error 1411 Incorrect datetime value: 'Sunday 01 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_date
+Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_date
+Error 1411 Incorrect datetime value: '7 53 1998' for function str_to_date
truncate table t1;
insert into t1 values
('10:20:10AM', '%h:%i:%s'),
@@ -415,14 +421,14 @@ date format str_to_date
2003-01-02 10:11:12 %Y-%m-%d %h:%i:%S 2003-01-02 10:11:12
03-01-02 10:11:12 PM %Y-%m-%d %h:%i:%S %p 2003-01-02 22:11:12
Warnings:
-Warning 1292 Truncated incorrect datetime value: '10:20:10AM'
+Warning 1292 Incorrect datetime value: '10:20:10AM'
select date,format,concat(str_to_date(date, format),'') as con from t1;
date format con
10:20:10AM %h:%i:%s 0000-00-00 10:20:10
2003-01-02 10:11:12 %Y-%m-%d %h:%i:%S 2003-01-02 10:11:12
03-01-02 10:11:12 PM %Y-%m-%d %h:%i:%S %p 2003-01-02 22:11:12
Warnings:
-Warning 1292 Truncated incorrect datetime value: '10:20:10AM'
+Warning 1292 Incorrect datetime value: '10:20:10AM'
drop table t1;
select get_format(DATE, 'USA') as a;
a
@@ -443,12 +449,12 @@ select str_to_date('15-01-2001 12:59:59', GET_FORMAT(DATE,'USA'));
str_to_date('15-01-2001 12:59:59', GET_FORMAT(DATE,'USA'))
NULL
Warnings:
-Error 1411 Incorrect datetime value: '15-01-2001 12:59:59' for function str_to_time
+Error 1411 Incorrect datetime value: '15-01-2001 12:59:59' for function str_to_date
explain extended select makedate(1997,1), addtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002"),subtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002"),timediff("01.01.97 11:59:59.000001 PM","31.12.95 11:59:59.000002 PM"),cast(str_to_date("15-01-2001 12:59:59", "%d-%m-%Y %H:%i:%S") as TIME), maketime(23,11,12),microsecond("1997-12-31 23:59:59.000001");
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select makedate(1997,1) AS `makedate(1997,1)`,addtime(_latin1'31.12.97 11.59.59.999999 PM',_latin1'1 1.1.1.000002') AS `addtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002")`,subtime(_latin1'31.12.97 11.59.59.999999 PM',_latin1'1 1.1.1.000002') AS `subtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002")`,timediff(_latin1'01.01.97 11:59:59.000001 PM',_latin1'31.12.95 11:59:59.000002 PM') AS `timediff("01.01.97 11:59:59.000001 PM","31.12.95 11:59:59.000002 PM")`,cast(str_to_date(_latin1'15-01-2001 12:59:59',_latin1'%d-%m-%Y %H:%i:%S') as time) AS `cast(str_to_date("15-01-2001 12:59:59", "%d-%m-%Y %H:%i:%S") as TIME)`,maketime(23,11,12) AS `maketime(23,11,12)`,microsecond(_latin1'1997-12-31 23:59:59.000001') AS `microsecond("1997-12-31 23:59:59.000001")`
+Note 1003 select makedate(1997,1) AS `makedate(1997,1)`,addtime('31.12.97 11.59.59.999999 PM','1 1.1.1.000002') AS `addtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002")`,subtime('31.12.97 11.59.59.999999 PM','1 1.1.1.000002') AS `subtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002")`,timediff('01.01.97 11:59:59.000001 PM','31.12.95 11:59:59.000002 PM') AS `timediff("01.01.97 11:59:59.000001 PM","31.12.95 11:59:59.000002 PM")`,cast(str_to_date('15-01-2001 12:59:59','%d-%m-%Y %H:%i:%S') as time) AS `cast(str_to_date("15-01-2001 12:59:59", "%d-%m-%Y %H:%i:%S") as TIME)`,maketime(23,11,12) AS `maketime(23,11,12)`,microsecond('1997-12-31 23:59:59.000001') AS `microsecond("1997-12-31 23:59:59.000001")`
create table t1 (d date);
insert into t1 values ('2004-07-14'),('2005-07-14');
select date_format(d,"%d") from t1 order by 1;
@@ -582,7 +588,7 @@ SELECT DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896);
DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896)
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '%Y-%m-%d %H:%i:%s'
+Warning 1292 Incorrect datetime value: '%Y-%m-%d %H:%i:%s'
select str_to_date('04 /30/2004', '%m /%d/%Y');
str_to_date('04 /30/2004', '%m /%d/%Y')
2004-04-30
diff --git a/mysql-test/r/ddl_i18n_koi8r.result b/mysql-test/r/ddl_i18n_koi8r.result
new file mode 100644
index 00000000000..fe24c17a1c5
--- /dev/null
+++ b/mysql-test/r/ddl_i18n_koi8r.result
@@ -0,0 +1,2839 @@
+set names koi8r;
+
+-------------------------------------------------------------------
+Views
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+CREATE TABLE t1( INT)|
+INSERT INTO t1 VALUES(1)|
+
+CREATE VIEW v1 AS
+SELECT '' AS c1, AS c2
+FROM t1|
+
+CREATE VIEW v2 AS SELECT _utf8'тест' as c1|
+
+CREATE VIEW v3 AS SELECT _utf8'тест'|
+
+
+
+SHOW CREATE VIEW v1|
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select '' AS `c1`,`t1`.`` AS `c2` from `t1` koi8r koi8r_general_ci
+
+SHOW CREATE VIEW v2|
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select _utf8'тест' AS `c1` koi8r koi8r_general_ci
+
+SHOW CREATE VIEW v3|
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select _utf8'тест' AS `` koi8r koi8r_general_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v1'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v1 select '' AS `c1`,`mysqltest1`.`t1`.`` AS `c2` from `mysqltest1`.`t1` NONE YES root@localhost DEFINER koi8r koi8r_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v2'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v2 select '' AS `c1` NONE NO root@localhost DEFINER koi8r koi8r_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v3'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v3 select '' AS `` NONE NO root@localhost DEFINER koi8r koi8r_general_ci
+
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1|
+COLLATION(c1) COLLATION(c2)
+koi8r_general_ci binary
+
+SELECT COLLATION(c1) FROM v2|
+COLLATION(c1)
+utf8_general_ci
+
+SELECT * FROM v3|
+
+
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SELECT * FROM mysqltest1.v1|
+SELECT * FROM mysqltest1.v2|
+SELECT * FROM mysqltest1.v3|
+use mysqltest1|
+set names koi8r|
+
+
+SHOW CREATE VIEW v1|
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select '' AS `c1`,`t1`.`` AS `c2` from `t1` koi8r koi8r_general_ci
+
+SHOW CREATE VIEW v2|
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select _utf8'тест' AS `c1` koi8r koi8r_general_ci
+
+SHOW CREATE VIEW v3|
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select _utf8'тест' AS `` koi8r koi8r_general_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v1'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v1 select '' AS `c1`,`mysqltest1`.`t1`.`` AS `c2` from `mysqltest1`.`t1` NONE YES root@localhost DEFINER koi8r koi8r_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v2'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v2 select '' AS `c1` NONE NO root@localhost DEFINER koi8r koi8r_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v3'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v3 select '' AS `` NONE NO root@localhost DEFINER koi8r koi8r_general_ci
+
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1|
+COLLATION(c1) COLLATION(c2)
+koi8r_general_ci binary
+
+SELECT COLLATION(c1) FROM v2|
+COLLATION(c1)
+utf8_general_ci
+
+SELECT * FROM v3|
+
+
+
+---> Dumping mysqltest1 to ddl_i18n_koi8r.views.mysqltest1.sql
+
+
+DROP DATABASE mysqltest1|
+
+
+---> Restoring mysqltest1...
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SELECT * FROM mysqltest1.v1|
+SELECT * FROM mysqltest1.v2|
+SELECT * FROM mysqltest1.v3|
+use mysqltest1|
+set names koi8r|
+
+
+SHOW CREATE VIEW v1|
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select '' AS `c1`,`t1`.`` AS `c2` from `t1` koi8r koi8r_general_ci
+
+SHOW CREATE VIEW v2|
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select _utf8'тест' AS `c1` koi8r koi8r_general_ci
+
+SHOW CREATE VIEW v3|
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select _utf8'тест' AS `` koi8r koi8r_general_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v1'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v1 select '' AS `c1`,`mysqltest1`.`t1`.`` AS `c2` from `mysqltest1`.`t1` NONE YES root@localhost DEFINER koi8r koi8r_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v2'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v2 select '' AS `c1` NONE NO root@localhost DEFINER koi8r koi8r_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v3'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v3 select '' AS `` NONE NO root@localhost DEFINER koi8r koi8r_general_ci
+
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1|
+COLLATION(c1) COLLATION(c2)
+koi8r_general_ci binary
+
+SELECT COLLATION(c1) FROM v2|
+COLLATION(c1)
+utf8_general_ci
+
+SELECT * FROM v3|
+
+
+
+---> connection: default
+use test|
+DROP DATABASE mysqltest1|
+
+-------------------------------------------------------------------
+Stored procedures/functions
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+
+CREATE PROCEDURE p1(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END|
+
+CREATE PROCEDURE p2(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END|
+
+CREATE PROCEDURE mysqltest2.p3(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END|
+
+CREATE PROCEDURE mysqltest2.p4(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END|
+
+
+SHOW CREATE PROCEDURE p1|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE p2|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p2 CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p3|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p3 CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p4|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p4 CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW PROCEDURE STATUS LIKE 'p1'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p1 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p2'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p2 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p3'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p3 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p4'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p4 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p1'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p1 NULL mysqltest1 p1 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p2'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p2 NULL mysqltest1 p2 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p3'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p3 NULL mysqltest2 p3 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p4'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p4 NULL mysqltest2 p4 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SET @a = '1'|
+SET @b = '2'|
+
+
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+ALTER DATABASE mysqltest2 COLLATE cp866_general_ci|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+set names koi8r|
+
+
+SHOW CREATE PROCEDURE p1|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE p2|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p2 CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p3|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p3 CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p4|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p4 CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW PROCEDURE STATUS LIKE 'p1'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p1 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p2'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p2 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p3'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p3 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p4'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p4 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p1'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p1 NULL mysqltest1 p1 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p2'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p2 NULL mysqltest1 p2 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p3'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p3 NULL mysqltest2 p3 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p4'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p4 NULL mysqltest2 p4 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SET @a = '1'|
+SET @b = '2'|
+
+
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+---> Dump of mysqltest1
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest1`;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p1`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p2`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest1 to ddl_i18n_koi8r.sp.mysqltest1.sql
+
+---> Dump of mysqltest2
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest2`;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p3`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p4`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest2 to ddl_i18n_koi8r.sp.mysqltest2.sql
+
+
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+
+---> Restoring mysqltest1...
+---> Restoring mysqltest2...
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+set names koi8r|
+
+
+SHOW CREATE PROCEDURE p1|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE p2|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p2 CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p3|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p3 CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
+INOUT 1 CHAR(10),
+OUT 2 CHAR(10))
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p4|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p4 CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
+INOUT 1 CHAR(10) CHARACTER SET utf8,
+OUT 2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION(_koi8r '') AS c5,
+COLLATION(_utf8 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW PROCEDURE STATUS LIKE 'p1'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p1 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p2'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p2 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p3'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p3 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p4'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p4 PROCEDURE root@localhost MODIFIED CREATED DEFINER koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p1'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p1 NULL mysqltest1 p1 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p2'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p2 NULL mysqltest1 p2 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p3'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p3 NULL mysqltest2 p3 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p4'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p4 NULL mysqltest2 p4 PROCEDURE NULL SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION(1) AS c2,
+COLLATION(2) AS c3;
+SELECT
+COLLATION('') AS c4,
+COLLATION( '') AS c5,
+COLLATION( '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET 1 = 'a';
+SET 2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SET @a = '1'|
+SET @b = '2'|
+
+
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+---> connection: default
+use test|
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+-------------------------------------------------------------------
+Triggers
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+CREATE TABLE t1(c INT)|
+CREATE TABLE mysqltest2.t1(c INT)|
+CREATE TABLE log(msg VARCHAR(255))|
+CREATE TABLE mysqltest2.log(msg VARCHAR(255))|
+
+CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END|
+
+CREATE TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END|
+
+CREATE TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END|
+
+CREATE TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END|
+
+
+
+SHOW CREATE TRIGGER trg1|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg1 CREATE DEFINER=`root`@`localhost` TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER trg2|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg2 CREATE DEFINER=`root`@`localhost` TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg3|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg3 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg4|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg4 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END BEFORE NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+trg2 INSERT t1 BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END AFTER NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+use mysqltest2|
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg3 INSERT t1 BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END BEFORE NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+trg4 INSERT t1 BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END AFTER NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+use mysqltest1|
+
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg1'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg1 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg2'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg2 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg3'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg3 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg4'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg4 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SET @a1 = '1'|
+SET @a2 = '1'|
+SET @a3 = '1'|
+SET @b1 = '2'|
+SET @b2 = '2'|
+SET @b3 = '2'|
+
+
+INSERT INTO t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM log|
+msg
+utf8_unicode_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+utf8_general_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM log|
+
+
+INSERT INTO mysqltest2.t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM mysqltest2.log|
+msg
+utf8_unicode_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+utf8_general_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM mysqltest2.log|
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+ALTER DATABASE mysqltest2 COLLATE cp866_general_ci|
+ALTER TABLE t1 ADD COLUMN fake INT|
+ALTER TABLE t1 DROP COLUMN fake|
+ALTER TABLE mysqltest2.t1 ADD COLUMN fake INT|
+ALTER TABLE mysqltest2.t1 DROP COLUMN fake|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+INSERT INTO mysqltest1.t1 VALUES(0)|
+INSERT INTO mysqltest2.t1 VALUES(0)|
+DELETE FROM mysqltest1.log|
+DELETE FROM mysqltest2.log|
+set names koi8r|
+use mysqltest1|
+
+
+SHOW CREATE TRIGGER trg1|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg1 CREATE DEFINER=`root`@`localhost` TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER trg2|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg2 CREATE DEFINER=`root`@`localhost` TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg3|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg3 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg4|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg4 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END BEFORE NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+trg2 INSERT t1 BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END AFTER NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+use mysqltest2|
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg3 INSERT t1 BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END BEFORE NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+trg4 INSERT t1 BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END AFTER NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+use mysqltest1|
+
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg1'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg1 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg2'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg2 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg3'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg3 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg4'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg4 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SET @a1 = '1'|
+SET @a2 = '1'|
+SET @a3 = '1'|
+SET @b1 = '2'|
+SET @b2 = '2'|
+SET @b3 = '2'|
+
+
+INSERT INTO t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM log|
+msg
+utf8_unicode_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+utf8_general_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM log|
+
+
+INSERT INTO mysqltest2.t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM mysqltest2.log|
+msg
+utf8_unicode_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+utf8_general_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM mysqltest2.log|
+
+---> Dump of mysqltest1
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest1`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `log` (
+ `msg` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `t1` (
+ `c` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+INSERT INTO `t1` VALUES (1),(0),(1);
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest1 to ddl_i18n_koi8r.triggers.mysqltest1.sql
+
+---> Dump of mysqltest2
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest2`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `log` (
+ `msg` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `t1` (
+ `c` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+INSERT INTO `t1` VALUES (1),(0),(1);
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = koi8r */ ;
+/*!50003 SET character_set_results = koi8r */ ;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest2 to ddl_i18n_koi8r.triggers.mysqltest2.sql
+
+
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+
+---> Restoring mysqltest1...
+---> Restoring mysqltest2...
+ALTER TABLE mysqltest1.t1 ADD COLUMN fake INT|
+ALTER TABLE mysqltest1.t1 DROP COLUMN fake|
+ALTER TABLE mysqltest2.t1 ADD COLUMN fake INT|
+ALTER TABLE mysqltest2.t1 DROP COLUMN fake|
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+INSERT INTO mysqltest1.t1 VALUES(0)|
+INSERT INTO mysqltest2.t1 VALUES(0)|
+DELETE FROM mysqltest1.log|
+DELETE FROM mysqltest2.log|
+set names koi8r|
+use mysqltest1|
+
+
+SHOW CREATE TRIGGER trg1|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg1 CREATE DEFINER=`root`@`localhost` TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER trg2|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg2 CREATE DEFINER=`root`@`localhost` TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg3|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg3 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = _koi8r '';
+SET @a2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg4|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg4 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = _koi8r '';
+SET @b2 = _utf8 'текст';
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END BEFORE NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+trg2 INSERT t1 BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END AFTER NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+use mysqltest2|
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg3 INSERT t1 BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END BEFORE NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+trg4 INSERT t1 BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END AFTER NULL root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+use mysqltest1|
+
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg1'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg1 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg2'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg2 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg3'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg3 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = '';
+SET @a1 = '';
+SET @a2 = '';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg4'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg4 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(1));
+INSERT INTO log VALUES(COLLATION(''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(COLLATION( ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = '';
+SET @b1 = '';
+SET @b2 = '';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SET @a1 = '1'|
+SET @a2 = '1'|
+SET @a3 = '1'|
+SET @b1 = '2'|
+SET @b2 = '2'|
+SET @b3 = '2'|
+
+
+INSERT INTO t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM log|
+msg
+utf8_unicode_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+utf8_general_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM log|
+
+
+INSERT INTO mysqltest2.t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM mysqltest2.log|
+msg
+utf8_unicode_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+utf8_general_ci
+koi8r_general_ci
+koi8r_general_ci
+utf8_general_ci
+koi8r_general_ci
+koi8r
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+koi8r_general_ci utf8_general_ci koi8r_general_ci koi8r_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM mysqltest2.log|
+
+---> connection: default
+use test|
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+-------------------------------------------------------------------
+Events
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+
+CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+CREATE EVENT ev2 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+CREATE EVENT mysqltest2.ev3 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+CREATE EVENT mysqltest2.ev4 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+
+
+SHOW CREATE EVENT ev1|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT ev2|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev2 SYSTEM CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW EVENTS LIKE 'ev1'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev2'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev3'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+SHOW EVENTS LIKE 'ev4'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev1'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev1 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev2 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev3 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev4 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+ALTER DATABASE mysqltest2 COLLATE cp866_general_ci|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SHOW CREATE EVENT ev1|
+SHOW CREATE EVENT ev2|
+SHOW CREATE EVENT mysqltest2.ev3|
+SHOW CREATE EVENT mysqltest2.ev4|
+set names koi8r|
+
+
+SHOW CREATE EVENT ev1|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT ev2|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev2 SYSTEM CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW EVENTS LIKE 'ev1'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev2'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev3'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+SHOW EVENTS LIKE 'ev4'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev1'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev1 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev2 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev3 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev4 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+---> Dump of mysqltest1
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest1`;
+/*!50106 SET @save_time_zone= @@TIME_ZONE */ ;
+DELIMITER ;;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = koi8r */ ;;
+/*!50003 SET character_set_results = koi8r */ ;;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = koi8r */ ;;
+/*!50003 SET character_set_results = koi8r */ ;;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;
+/*!50106 SET TIME_ZONE= @save_time_zone */ ;
+
+---> Dumping mysqltest1 to ddl_i18n_koi8r.events.mysqltest1.sql
+
+---> Dump of mysqltest2
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest2`;
+/*!50106 SET @save_time_zone= @@TIME_ZONE */ ;
+DELIMITER ;;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = koi8r */ ;;
+/*!50003 SET character_set_results = koi8r */ ;;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = koi8r */ ;;
+/*!50003 SET character_set_results = koi8r */ ;;
+/*!50003 SET collation_connection = koi8r_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev4` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;
+/*!50106 SET TIME_ZONE= @save_time_zone */ ;
+
+---> Dumping mysqltest2 to ddl_i18n_koi8r.events.mysqltest2.sql
+
+
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+
+---> Restoring mysqltest1...
+---> Restoring mysqltest2...
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SHOW CREATE EVENT ev1|
+SHOW CREATE EVENT ev2|
+SHOW CREATE EVENT mysqltest2.ev3|
+SHOW CREATE EVENT mysqltest2.ev4|
+set names koi8r|
+
+
+SHOW CREATE EVENT ev1|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT ev2|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev2 SYSTEM CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION(_koi8r '') AS c3,
+COLLATION(_utf8 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END koi8r koi8r_general_ci utf8_unicode_ci
+
+
+SHOW EVENTS LIKE 'ev1'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev2'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev3'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+SHOW EVENTS LIKE 'ev4'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev1'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev1 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10);
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev2 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev3 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev4 root@localhost SYSTEM SQL BEGIN
+DECLARE 1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(1) AS c1,
+COLLATION('') AS c2,
+COLLATION( '') AS c3,
+COLLATION( '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci
+
+-------------------------------------------------------------------
+DDL statements within stored routine.
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+
+CREATE PROCEDURE p1()
+BEGIN
+CREATE TABLE t1(col1 VARCHAR(10));
+SHOW CREATE TABLE t1;
+END|
+
+CREATE PROCEDURE mysqltest2.p2()
+BEGIN
+CREATE TABLE t2(col1 VARCHAR(10));
+SHOW CREATE TABLE t2;
+END|
+
+CALL p1()|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+SHOW CREATE TABLE t1|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+
+CALL mysqltest2.p2()|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+SHOW CREATE TABLE mysqltest2.t2|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+ALTER DATABASE mysqltest1 COLLATE cp1251_general_cs|
+ALTER DATABASE mysqltest2 COLLATE cp1251_general_cs|
+DROP TABLE t1|
+DROP TABLE mysqltest2.t2|
+
+CALL p1()|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+SHOW CREATE TABLE t1|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+
+CALL mysqltest2.p2()|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+SHOW CREATE TABLE mysqltest2.t2|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+---> connection: con2
+
+---> connection: con3
+
+---> connection: default
+USE test;
+DROP DATABASE mysqltest1;
+DROP DATABASE mysqltest2;
diff --git a/mysql-test/r/ddl_i18n_utf8.result b/mysql-test/r/ddl_i18n_utf8.result
new file mode 100644
index 00000000000..cf4272bf90c
--- /dev/null
+++ b/mysql-test/r/ddl_i18n_utf8.result
@@ -0,0 +1,2839 @@
+set names utf8;
+
+-------------------------------------------------------------------
+Views
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+CREATE TABLE t1(кол INT)|
+INSERT INTO t1 VALUES(1)|
+
+CREATE VIEW v1 AS
+SELECT 'тест' AS c1, кол AS c2
+FROM t1|
+
+CREATE VIEW v2 AS SELECT _koi8r'' as c1|
+
+CREATE VIEW v3 AS SELECT _koi8r''|
+
+
+
+SHOW CREATE VIEW v1|
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 'тест' AS `c1`,`t1`.`кол` AS `c2` from `t1` utf8 utf8_general_ci
+
+SHOW CREATE VIEW v2|
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select _koi8r'' AS `c1` utf8 utf8_general_ci
+
+SHOW CREATE VIEW v3|
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select _koi8r'' AS `тест` utf8 utf8_general_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v1'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v1 select 'тест' AS `c1`,`mysqltest1`.`t1`.`кол` AS `c2` from `mysqltest1`.`t1` NONE YES root@localhost DEFINER utf8 utf8_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v2'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v2 select 'тест' AS `c1` NONE NO root@localhost DEFINER utf8 utf8_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v3'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v3 select 'тест' AS `тест` NONE NO root@localhost DEFINER utf8 utf8_general_ci
+
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1|
+COLLATION(c1) COLLATION(c2)
+utf8_general_ci binary
+
+SELECT COLLATION(c1) FROM v2|
+COLLATION(c1)
+koi8r_general_ci
+
+SELECT * FROM v3|
+тест
+тест
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SELECT * FROM mysqltest1.v1|
+SELECT * FROM mysqltest1.v2|
+SELECT * FROM mysqltest1.v3|
+use mysqltest1|
+set names utf8|
+
+
+SHOW CREATE VIEW v1|
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 'тест' AS `c1`,`t1`.`кол` AS `c2` from `t1` utf8 utf8_general_ci
+
+SHOW CREATE VIEW v2|
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select _koi8r'' AS `c1` utf8 utf8_general_ci
+
+SHOW CREATE VIEW v3|
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select _koi8r'' AS `тест` utf8 utf8_general_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v1'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v1 select 'тест' AS `c1`,`mysqltest1`.`t1`.`кол` AS `c2` from `mysqltest1`.`t1` NONE YES root@localhost DEFINER utf8 utf8_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v2'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v2 select 'тест' AS `c1` NONE NO root@localhost DEFINER utf8 utf8_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v3'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v3 select 'тест' AS `тест` NONE NO root@localhost DEFINER utf8 utf8_general_ci
+
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1|
+COLLATION(c1) COLLATION(c2)
+utf8_general_ci binary
+
+SELECT COLLATION(c1) FROM v2|
+COLLATION(c1)
+koi8r_general_ci
+
+SELECT * FROM v3|
+тест
+тест
+
+---> Dumping mysqltest1 to ddl_i18n_utf8views.mysqltest1.sql
+
+
+DROP DATABASE mysqltest1|
+
+
+---> Restoring mysqltest1...
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SELECT * FROM mysqltest1.v1|
+SELECT * FROM mysqltest1.v2|
+SELECT * FROM mysqltest1.v3|
+use mysqltest1|
+set names utf8|
+
+
+SHOW CREATE VIEW v1|
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 'тест' AS `c1`,`t1`.`кол` AS `c2` from `t1` utf8 utf8_general_ci
+
+SHOW CREATE VIEW v2|
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select _koi8r'' AS `c1` utf8 utf8_general_ci
+
+SHOW CREATE VIEW v3|
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select _koi8r'' AS `тест` utf8 utf8_general_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v1'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v1 select 'тест' AS `c1`,`mysqltest1`.`t1`.`кол` AS `c2` from `mysqltest1`.`t1` NONE YES root@localhost DEFINER utf8 utf8_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v2'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v2 select 'тест' AS `c1` NONE NO root@localhost DEFINER utf8 utf8_general_ci
+
+SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE table_name = 'v3'|
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL mysqltest1 v3 select 'тест' AS `тест` NONE NO root@localhost DEFINER utf8 utf8_general_ci
+
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1|
+COLLATION(c1) COLLATION(c2)
+utf8_general_ci binary
+
+SELECT COLLATION(c1) FROM v2|
+COLLATION(c1)
+koi8r_general_ci
+
+SELECT * FROM v3|
+тест
+тест
+
+---> connection: default
+use test|
+DROP DATABASE mysqltest1|
+
+-------------------------------------------------------------------
+Stored procedures/functions
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+
+CREATE PROCEDURE p1(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END|
+
+CREATE PROCEDURE p2(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END|
+
+CREATE PROCEDURE mysqltest2.p3(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END|
+
+CREATE PROCEDURE mysqltest2.p4(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END|
+
+
+SHOW CREATE PROCEDURE p1|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE p2|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p2 CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p3|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p3 CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p4|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p4 CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW PROCEDURE STATUS LIKE 'p1'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p1 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p2'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p2 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p3'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p3 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p4'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p4 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p1'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p1 NULL mysqltest1 p1 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p2'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p2 NULL mysqltest1 p2 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p3'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p3 NULL mysqltest2 p3 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p4'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p4 NULL mysqltest2 p4 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+
+SET @a = '1'|
+SET @b = '2'|
+
+
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+ALTER DATABASE mysqltest2 COLLATE cp866_general_ci|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+set names utf8|
+
+
+SHOW CREATE PROCEDURE p1|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE p2|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p2 CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p3|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p3 CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p4|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p4 CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW PROCEDURE STATUS LIKE 'p1'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p1 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p2'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p2 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p3'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p3 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p4'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p4 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p1'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p1 NULL mysqltest1 p1 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p2'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p2 NULL mysqltest1 p2 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p3'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p3 NULL mysqltest2 p3 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p4'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p4 NULL mysqltest2 p4 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+
+SET @a = '1'|
+SET @b = '2'|
+
+
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+---> Dump of mysqltest1
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest1`;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p1`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p2`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest1 to ddl_i18n_utf8sp.mysqltest1.sql
+
+---> Dump of mysqltest2
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest2`;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p3`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p4`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest2 to ddl_i18n_utf8sp.mysqltest2.sql
+
+
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+
+---> Restoring mysqltest1...
+---> Restoring mysqltest2...
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+set names utf8|
+
+
+SHOW CREATE PROCEDURE p1|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE p2|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p2 CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p3|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p3 CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
+INOUT парам1 CHAR(10),
+OUT парам2 CHAR(10))
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE PROCEDURE mysqltest2.p4|
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p4 CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
+INOUT парам1 CHAR(10) CHARACTER SET utf8,
+OUT парам2 CHAR(10) CHARACTER SET utf8)
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION(_utf8 'текст') AS c5,
+COLLATION(_koi8r '') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW PROCEDURE STATUS LIKE 'p1'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p1 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p2'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest1 p2 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p3'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p3 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW PROCEDURE STATUS LIKE 'p4'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p4 PROCEDURE root@localhost MODIFIED CREATED DEFINER utf8 utf8_general_ci utf8_unicode_ci
+
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p1'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p1 NULL mysqltest1 p1 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p2'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p2 NULL mysqltest1 p2 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p3'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p3 NULL mysqltest2 p3 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'p4'|
+SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE CREATED LAST_ALTERED SQL_MODE ROUTINE_COMMENT DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+p4 NULL mysqltest2 p4 PROCEDURE NULL SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION(парам1) AS c2,
+COLLATION(парам2) AS c3;
+SELECT
+COLLATION('текст') AS c4,
+COLLATION( 'текст') AS c5,
+COLLATION( 'текст') AS c6,
+@@collation_connection AS c7,
+@@character_set_client AS c8;
+SET парам1 = 'a';
+SET парам2 = 'b';
+END NULL NULL SQL NO CONTAINS SQL NULL DEFINER CREATED ALTERED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+
+SET @a = '1'|
+SET @b = '2'|
+
+
+CALL p1(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL p2(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+CALL mysqltest2.p3(@a, @b)|
+c1 c2 c3
+utf8_unicode_ci utf8_unicode_ci utf8_unicode_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_unicode_ci utf8_unicode_ci
+
+CALL mysqltest2.p4(@a, @b)|
+c1 c2 c3
+utf8_general_ci utf8_general_ci utf8_general_ci
+c4 c5 c6 c7 c8
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8
+SELECT COLLATION(@a) AS ca, COLLATION(@b) cb|
+ca cb
+utf8_general_ci utf8_general_ci
+
+---> connection: default
+use test|
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+-------------------------------------------------------------------
+Triggers
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+CREATE TABLE t1(c INT)|
+CREATE TABLE mysqltest2.t1(c INT)|
+CREATE TABLE log(msg VARCHAR(255))|
+CREATE TABLE mysqltest2.log(msg VARCHAR(255))|
+
+CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END|
+
+CREATE TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END|
+
+CREATE TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END|
+
+CREATE TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END|
+
+
+
+SHOW CREATE TRIGGER trg1|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg1 CREATE DEFINER=`root`@`localhost` TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER trg2|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg2 CREATE DEFINER=`root`@`localhost` TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg3|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg3 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg4|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg4 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END BEFORE NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+trg2 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END AFTER NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+use mysqltest2|
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg3 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END BEFORE NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+trg4 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END AFTER NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+use mysqltest1|
+
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg1'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg1 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg2'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg2 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg3'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg3 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg4'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg4 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+
+SET @a1 = '1'|
+SET @a2 = '1'|
+SET @a3 = '1'|
+SET @b1 = '2'|
+SET @b2 = '2'|
+SET @b3 = '2'|
+
+
+INSERT INTO t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM log|
+msg
+utf8_unicode_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+utf8_general_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM log|
+
+
+INSERT INTO mysqltest2.t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM mysqltest2.log|
+msg
+utf8_unicode_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+utf8_general_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM mysqltest2.log|
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+ALTER DATABASE mysqltest2 COLLATE cp866_general_ci|
+ALTER TABLE t1 ADD COLUMN fake INT|
+ALTER TABLE t1 DROP COLUMN fake|
+ALTER TABLE mysqltest2.t1 ADD COLUMN fake INT|
+ALTER TABLE mysqltest2.t1 DROP COLUMN fake|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+INSERT INTO mysqltest1.t1 VALUES(0)|
+INSERT INTO mysqltest2.t1 VALUES(0)|
+DELETE FROM mysqltest1.log|
+DELETE FROM mysqltest2.log|
+set names utf8|
+use mysqltest1|
+
+
+SHOW CREATE TRIGGER trg1|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg1 CREATE DEFINER=`root`@`localhost` TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER trg2|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg2 CREATE DEFINER=`root`@`localhost` TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg3|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg3 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg4|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg4 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END BEFORE NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+trg2 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END AFTER NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+use mysqltest2|
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg3 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END BEFORE NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+trg4 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END AFTER NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+use mysqltest1|
+
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg1'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg1 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg2'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg2 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg3'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg3 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg4'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg4 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+
+SET @a1 = '1'|
+SET @a2 = '1'|
+SET @a3 = '1'|
+SET @b1 = '2'|
+SET @b2 = '2'|
+SET @b3 = '2'|
+
+
+INSERT INTO t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM log|
+msg
+utf8_unicode_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+utf8_general_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM log|
+
+
+INSERT INTO mysqltest2.t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM mysqltest2.log|
+msg
+utf8_unicode_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+utf8_general_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM mysqltest2.log|
+
+---> Dump of mysqltest1
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest1`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `log` (
+ `msg` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `t1` (
+ `c` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+INSERT INTO `t1` VALUES (1),(0),(1);
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest1 to ddl_i18n_utf8triggers.mysqltest1.sql
+
+---> Dump of mysqltest2
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest2`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `log` (
+ `msg` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `t1` (
+ `c` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+/*!40101 SET character_set_client = @saved_cs_client */;
+INSERT INTO `t1` VALUES (1),(0),(1);
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;
+
+---> Dumping mysqltest2 to ddl_i18n_utf8triggers.mysqltest2.sql
+
+
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+
+---> Restoring mysqltest1...
+---> Restoring mysqltest2...
+ALTER TABLE mysqltest1.t1 ADD COLUMN fake INT|
+ALTER TABLE mysqltest1.t1 DROP COLUMN fake|
+ALTER TABLE mysqltest2.t1 ADD COLUMN fake INT|
+ALTER TABLE mysqltest2.t1 DROP COLUMN fake|
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+INSERT INTO mysqltest1.t1 VALUES(0)|
+INSERT INTO mysqltest2.t1 VALUES(0)|
+DELETE FROM mysqltest1.log|
+DELETE FROM mysqltest2.log|
+set names utf8|
+use mysqltest1|
+
+
+SHOW CREATE TRIGGER trg1|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg1 CREATE DEFINER=`root`@`localhost` TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER trg2|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg2 CREATE DEFINER=`root`@`localhost` TRIGGER trg2 AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg3|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg3 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg3 BEFORE INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = _utf8 'текст';
+SET @a3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE TRIGGER mysqltest2.trg4|
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+trg4 CREATE DEFINER=`root`@`localhost` TRIGGER mysqltest2.trg4 AFTER INSERT ON mysqltest2.t1 FOR EACH ROW
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION(_utf8 'текст'));
+INSERT INTO log VALUES(COLLATION(_koi8r ''));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = _utf8 'текст';
+SET @b3 = _koi8r '';
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END BEFORE NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+trg2 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END AFTER NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+use mysqltest2|
+
+SHOW TRIGGERS|
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg3 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END BEFORE NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+trg4 INSERT t1 BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END AFTER NULL root@localhost utf8 utf8_general_ci utf8_unicode_ci
+use mysqltest1|
+
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg1'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg1 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg2'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 trg2 INSERT NULL mysqltest1 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg3'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg3 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10);
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @a1 = 'текст';
+SET @a2 = 'текст';
+SET @a3 = 'текст';
+END ROW BEFORE NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE trigger_name = 'trg4'|
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 trg4 INSERT NULL mysqltest2 t1 0 NULL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+INSERT INTO log VALUES(COLLATION(перем1));
+INSERT INTO log VALUES(COLLATION('текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(COLLATION( 'текст'));
+INSERT INTO log VALUES(@@collation_connection);
+INSERT INTO log VALUES(@@character_set_client);
+SET @b1 = 'текст';
+SET @b2 = 'текст';
+SET @b3 = 'текст';
+END ROW AFTER NULL NULL OLD NEW CREATED root@localhost utf8 utf8_general_ci utf8_unicode_ci
+
+
+SET @a1 = '1'|
+SET @a2 = '1'|
+SET @a3 = '1'|
+SET @b1 = '2'|
+SET @b2 = '2'|
+SET @b3 = '2'|
+
+
+INSERT INTO t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM log|
+msg
+utf8_unicode_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+utf8_general_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM log|
+
+
+INSERT INTO mysqltest2.t1 VALUES(1)|
+
+---> Log:
+SELECT msg FROM mysqltest2.log|
+msg
+utf8_unicode_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+utf8_general_ci
+utf8_general_ci
+utf8_general_ci
+koi8r_general_ci
+utf8_general_ci
+utf8
+
+SELECT
+COLLATION(@a1) AS ca1,
+COLLATION(@a2) AS ca2,
+COLLATION(@a3) AS ca3,
+COLLATION(@b1) AS cb1,
+COLLATION(@b2) AS cb2,
+COLLATION(@b3) AS cb3|
+ca1 ca2 ca3 cb1 cb2 cb3
+utf8_general_ci utf8_general_ci koi8r_general_ci utf8_general_ci utf8_general_ci koi8r_general_ci
+
+DELETE FROM mysqltest2.log|
+
+---> connection: default
+use test|
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+-------------------------------------------------------------------
+Events
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+
+CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+CREATE EVENT ev2 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+CREATE EVENT mysqltest2.ev3 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+CREATE EVENT mysqltest2.ev4 ON SCHEDULE AT '2030-01-01 00:00:00' DO
+BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END|
+
+
+
+SHOW CREATE EVENT ev1|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT ev2|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev2 SYSTEM CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW EVENTS LIKE 'ev1'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev2'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev3'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+SHOW EVENTS LIKE 'ev4'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev1'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev1 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev2 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev3 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev4 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+
+ALTER DATABASE mysqltest1 COLLATE cp866_general_ci|
+ALTER DATABASE mysqltest2 COLLATE cp866_general_ci|
+
+---> connection: con2
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SHOW CREATE EVENT ev1|
+SHOW CREATE EVENT ev2|
+SHOW CREATE EVENT mysqltest2.ev3|
+SHOW CREATE EVENT mysqltest2.ev4|
+set names utf8|
+
+
+SHOW CREATE EVENT ev1|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT ev2|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev2 SYSTEM CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW EVENTS LIKE 'ev1'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev2'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev3'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+SHOW EVENTS LIKE 'ev4'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev1'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev1 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev2 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev3 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev4 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+---> Dump of mysqltest1
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest1`;
+/*!50106 SET @save_time_zone= @@TIME_ZONE */ ;
+DELIMITER ;;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = utf8 */ ;;
+/*!50003 SET character_set_results = utf8 */ ;;
+/*!50003 SET collation_connection = utf8_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;;
+ALTER DATABASE mysqltest1 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = utf8 */ ;;
+/*!50003 SET character_set_results = utf8 */ ;;
+/*!50003 SET collation_connection = utf8_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;
+/*!50106 SET TIME_ZONE= @save_time_zone */ ;
+
+---> Dumping mysqltest1 to ddl_i18n_utf8events.mysqltest1.sql
+
+---> Dump of mysqltest2
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
+
+USE `mysqltest2`;
+/*!50106 SET @save_time_zone= @@TIME_ZONE */ ;
+DELIMITER ;;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = utf8 */ ;;
+/*!50003 SET character_set_results = utf8 */ ;;
+/*!50003 SET collation_connection = utf8_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;;
+ALTER DATABASE mysqltest2 CHARACTER SET utf8 COLLATE utf8_unicode_ci ;;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;;
+/*!50003 SET character_set_client = utf8 */ ;;
+/*!50003 SET character_set_results = utf8 */ ;;
+/*!50003 SET collation_connection = utf8_general_ci */ ;;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;;
+/*!50003 SET sql_mode = '' */ ;;
+/*!50003 SET @saved_time_zone = @@time_zone */ ;;
+/*!50003 SET time_zone = 'SYSTEM' */ ;;
+/*!50106 CREATE EVENT `ev4` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END */ ;;
+/*!50003 SET time_zone = @saved_time_zone */ ;;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;;
+/*!50003 SET character_set_client = @saved_cs_client */ ;;
+/*!50003 SET character_set_results = @saved_cs_results */ ;;
+/*!50003 SET collation_connection = @saved_col_connection */ ;;
+ALTER DATABASE mysqltest2 CHARACTER SET cp866 COLLATE cp866_general_ci ;;
+DELIMITER ;
+/*!50106 SET TIME_ZONE= @save_time_zone */ ;
+
+---> Dumping mysqltest2 to ddl_i18n_utf8events.mysqltest2.sql
+
+
+DROP DATABASE mysqltest1|
+DROP DATABASE mysqltest2|
+
+
+---> Restoring mysqltest1...
+---> Restoring mysqltest2...
+
+---> connection: con3
+SET @@character_set_client= cp1251|
+SET @@character_set_results= cp1251|
+SET @@collation_connection= cp1251_general_ci|
+SHOW CREATE EVENT ev1|
+SHOW CREATE EVENT ev2|
+SHOW CREATE EVENT mysqltest2.ev3|
+SHOW CREATE EVENT mysqltest2.ev4|
+set names utf8|
+
+
+SHOW CREATE EVENT ev1|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT ev2|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev2 SYSTEM CREATE EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW CREATE EVENT mysqltest2.ev3|
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev3 SYSTEM CREATE EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION(_utf8 'текст') AS c3,
+COLLATION(_koi8r '') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END utf8 utf8_general_ci utf8_unicode_ci
+
+
+SHOW EVENTS LIKE 'ev1'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev2'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SHOW EVENTS LIKE 'ev3'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+SHOW EVENTS LIKE 'ev4'|
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev1'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev1 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10);
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest1 ev2 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev3 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'|
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest2 ev4 root@localhost SYSTEM SQL BEGIN
+DECLARE перем1 CHAR(10) CHARACTER SET utf8;
+SELECT
+COLLATION(перем1) AS c1,
+COLLATION('текст') AS c2,
+COLLATION( 'текст') AS c3,
+COLLATION( 'текст') AS c4,
+@@collation_connection AS c5,
+@@character_set_client AS c6;
+END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci
+
+-------------------------------------------------------------------
+DDL statements within stored routine.
+-------------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqltest1|
+DROP DATABASE IF EXISTS mysqltest2|
+CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci|
+use mysqltest1|
+
+CREATE PROCEDURE p1()
+BEGIN
+CREATE TABLE t1(col1 VARCHAR(10));
+SHOW CREATE TABLE t1;
+END|
+
+CREATE PROCEDURE mysqltest2.p2()
+BEGIN
+CREATE TABLE t2(col1 VARCHAR(10));
+SHOW CREATE TABLE t2;
+END|
+
+CALL p1()|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+SHOW CREATE TABLE t1|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+
+CALL mysqltest2.p2()|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+SHOW CREATE TABLE mysqltest2.t2|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
+
+ALTER DATABASE mysqltest1 COLLATE cp1251_general_cs|
+ALTER DATABASE mysqltest2 COLLATE cp1251_general_cs|
+DROP TABLE t1|
+DROP TABLE mysqltest2.t2|
+
+CALL p1()|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+SHOW CREATE TABLE t1|
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+
+CALL mysqltest2.p2()|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+SHOW CREATE TABLE mysqltest2.t2|
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `col1` varchar(10) COLLATE cp1251_general_cs DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs
+
+---> connection: con2
+
+---> connection: con3
+
+---> connection: default
+USE test;
+DROP DATABASE mysqltest1;
+DROP DATABASE mysqltest2;
diff --git a/mysql-test/r/innodb-deadlock.result b/mysql-test/r/deadlock_innodb.result
index b6a3373e8c6..7a4874d6aab 100644
--- a/mysql-test/r/innodb-deadlock.result
+++ b/mysql-test/r/deadlock_innodb.result
@@ -1,25 +1,33 @@
+# Establish connection con1 (user=root)
+# Establish connection con2 (user=root)
drop table if exists t1,t2;
-create table t1 (id integer, x integer) engine=INNODB;
+# Switch to connection con1
+create table t1 (id integer, x integer) engine = InnoDB;
insert into t1 values(0, 0);
set autocommit=0;
SELECT * from t1 where id = 0 FOR UPDATE;
id x
0 0
+# Switch to connection con2
set autocommit=0;
update t1 set x=2 where id = 0;
+# Switch to connection con1
update t1 set x=1 where id = 0;
select * from t1;
id x
0 1
commit;
+# Switch to connection con2
commit;
+# Switch to connection con1
select * from t1;
id x
0 2
commit;
drop table t1;
-create table t1 (id integer, x integer) engine=INNODB;
-create table t2 (b integer, a integer) engine=INNODB;
+# Switch to connection con1
+create table t1 (id integer, x integer) engine = InnoDB;
+create table t2 (b integer, a integer) engine = InnoDB;
insert into t1 values(0, 0), (300, 300);
insert into t2 values(0, 10), (1, 20), (2, 30);
commit;
@@ -39,26 +47,31 @@ select * from t1;
id x
0 0
300 300
+# Switch to connection con2
set autocommit=0;
update t1 set x=2 where id = 0;
+# Switch to connection con1
update t1 set x=1 where id = 0;
select * from t1;
id x
0 1
300 300
commit;
+# Switch to connection con2
commit;
+# Switch to connection con1
select * from t1;
id x
0 2
300 300
commit;
drop table t1, t2;
-create table t1 (id integer, x integer) engine=INNODB;
-create table t2 (b integer, a integer) engine=INNODB;
+create table t1 (id integer, x integer) engine = InnoDB;
+create table t2 (b integer, a integer) engine = InnoDB;
insert into t1 values(0, 0), (300, 300);
insert into t2 values(0, 0), (1, 20), (2, 30);
commit;
+# Switch to connection con1
select a,b from t2 UNION SELECT id, x from t1 FOR UPDATE;
a b
0 0
@@ -74,6 +87,7 @@ select * from t1;
id x
0 0
300 300
+# Switch to connection con2
update t2 set a=2 where b = 0;
select * from t2;
b a
@@ -81,18 +95,22 @@ b a
1 20
2 30
update t1 set x=2 where id = 0;
+# Switch to connection con1
update t1 set x=1 where id = 0;
select * from t1;
id x
0 1
300 300
commit;
+# Switch to connection con2
commit;
+# Switch to connection con1
select * from t1;
id x
0 2
300 300
commit;
+# Switch to connection default + disconnect con1 and con2
drop table t1, t2;
End of 4.1 tests
set storage_engine=innodb;
diff --git a/mysql-test/r/debug_sync.result b/mysql-test/r/debug_sync.result
new file mode 100644
index 00000000000..47e968f79cf
--- /dev/null
+++ b/mysql-test/r/debug_sync.result
@@ -0,0 +1,277 @@
+SET DEBUG_SYNC= 'RESET';
+DROP TABLE IF EXISTS t1;
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: ''
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 EXECUTE 2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 EXECUTE 2';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2';
+SET DEBUG_SYNC='p0 SIGNAL s1 EXECUTE 2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 SIGNAL s1 EXECUTE 2';
+SET DEBUG_SYNC='p0 SIGNAL s1 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 SIGNAL s1';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 EXECUTE 2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 EXECUTE 2';
+SET DEBUG_SYNC='p0 WAIT_FOR s2 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 WAIT_FOR s2';
+SET DEBUG_SYNC='p0 HIT_LIMIT 3';
+SET DEBUG_SYNC='p0 CLEAR';
+SET DEBUG_SYNC='p0 TEST';
+SET DEBUG_SYNC='RESET';
+set debug_sync='p0 signal s1 wait_for s2 timeout 6 execute 2 hit_limit 3';
+set debug_sync='p0 signal s1 wait_for s2 timeout 6 execute 2';
+set debug_sync='p0 signal s1 wait_for s2 timeout 6 hit_limit 3';
+set debug_sync='p0 signal s1 wait_for s2 timeout 6';
+set debug_sync='p0 signal s1 wait_for s2 execute 2 hit_limit 3';
+set debug_sync='p0 signal s1 wait_for s2 execute 2';
+set debug_sync='p0 signal s1 wait_for s2 hit_limit 3';
+set debug_sync='p0 signal s1 wait_for s2';
+set debug_sync='p0 signal s1 execute 2 hit_limit 3';
+set debug_sync='p0 signal s1 execute 2';
+set debug_sync='p0 signal s1 hit_limit 3';
+set debug_sync='p0 signal s1';
+set debug_sync='p0 wait_for s2 timeout 6 execute 2 hit_limit 3';
+set debug_sync='p0 wait_for s2 timeout 6 execute 2';
+set debug_sync='p0 wait_for s2 timeout 6 hit_limit 3';
+set debug_sync='p0 wait_for s2 timeout 6';
+set debug_sync='p0 wait_for s2 execute 2 hit_limit 3';
+set debug_sync='p0 wait_for s2 execute 2';
+set debug_sync='p0 wait_for s2 hit_limit 3';
+set debug_sync='p0 wait_for s2';
+set debug_sync='p0 hit_limit 3';
+set debug_sync='p0 clear';
+set debug_sync='p0 test';
+set debug_sync='reset';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6
+ EXECUTE 2 HIT_LIMIT 3';
+SET DEBUG_SYNC=' p0 SIGNAL s1 WAIT_FOR s2';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2';
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 ';
+SET DEBUG_SYNC=' p0 SIGNAL s1 WAIT_FOR s2 ';
+SET DEBUG_SYNC=' p0 SIGNAL s1 WAIT_FOR s2 ';
+SET DEBUG_SYNC='';
+ERROR 42000: Missing synchronization point name
+SET DEBUG_SYNC=' ';
+ERROR 42000: Missing synchronization point name
+SET DEBUG_SYNC='p0';
+ERROR 42000: Missing action after synchronization point name 'p0'
+SET DEBUG_SYNC='p0 EXECUTE 2';
+ERROR 42000: Missing action before EXECUTE
+SET DEBUG_SYNC='p0 TIMEOUT 6 EXECUTE 2';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 TIMEOUT 6';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 SIGNAL s1';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAL'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 SIGNAL s1 EXECUTE 2';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAL'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 SIGNAL s1 TIMEOUT 6 EXECUTE 2';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAL'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 SIGNAL s1 TIMEOUT 6';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAL'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6 SIGNAL s1 EXECUTE 2';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAL'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6 SIGNAL s1';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAL'
+SET DEBUG_SYNC='p0 TIMEOUT 6 WAIT_FOR s2 EXECUTE 2';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 TIMEOUT 6 WAIT_FOR s2';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 SIGNAL s1 TIMEOUT 6 EXECUTE 2';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 SIGNAL s1 TIMEOUT 6';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 EXECUTE 2 SIGNAL s1 TIMEOUT 6';
+ERROR 42000: Missing action before EXECUTE
+SET DEBUG_SYNC='p0 TIMEOUT 6 SIGNAL s1';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUT'
+SET DEBUG_SYNC='p0 EXECUTE 2 TIMEOUT 6 SIGNAL s1';
+ERROR 42000: Missing action before EXECUTE
+SET DEBUG_SYNC='p0 CLEAR HIT_LIMIT 3';
+ERROR 42000: Nothing must follow action CLEAR
+SET DEBUG_SYNC='CLEAR';
+ERROR 42000: Missing action after synchronization point name 'CLEAR'
+SET DEBUG_SYNC='p0 CLEAR p0';
+ERROR 42000: Nothing must follow action CLEAR
+SET DEBUG_SYNC='TEST';
+ERROR 42000: Missing action after synchronization point name 'TEST'
+SET DEBUG_SYNC='p0 TEST p0';
+ERROR 42000: Nothing must follow action TEST
+SET DEBUG_SYNC='p0 RESET';
+ERROR 42000: Illegal or out of order stuff: 'RESET'
+SET DEBUG_SYNC='RESET p0';
+ERROR 42000: Illegal or out of order stuff: 'p0'
+SET DEBUG_SYNC='p0 RESET p0';
+ERROR 42000: Illegal or out of order stuff: 'RESET'
+SET DEBUG_SYNC='p0 SIGNAL ';
+ERROR 42000: Missing signal name after action SIGNAL
+SET DEBUG_SYNC='p0 WAIT_FOR ';
+ERROR 42000: Missing signal name after action WAIT_FOR
+SET DEBUG_SYNC='p0 SIGNAL s1 EXECUTE ';
+ERROR 42000: Missing valid number after EXECUTE
+SET DEBUG_SYNCx='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2 HIT_LIMIT 3';
+ERROR HY000: Unknown system variable 'DEBUG_SYNCx'
+SET DEBUG_SYNC='p0 SIGNAx s1 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2 HIT_LIMIT 3';
+ERROR 42000: Illegal or out of order stuff: 'SIGNAx'
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOx s2 TIMEOUT 6 EXECUTE 2 HIT_LIMIT 3';
+ERROR 42000: Illegal or out of order stuff: 'WAIT_FOx'
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUx 0 EXECUTE 2 HIT_LIMIT 3';
+ERROR 42000: Illegal or out of order stuff: 'TIMEOUx'
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6 EXECUTx 2 HIT_LIMIT 3';
+ERROR 42000: Illegal or out of order stuff: 'EXECUTx'
+SET DEBUG_SYNC='p0 SIGNAL s1 WAIT_FOR s2 TIMEOUT 6 EXECUTE 2 HIT_LIMIx 3';
+ERROR 42000: Illegal or out of order stuff: 'HIT_LIMIx'
+SET DEBUG_SYNC='p0 CLEARx';
+ERROR 42000: Illegal or out of order stuff: 'CLEARx'
+SET DEBUG_SYNC='p0 TESTx';
+ERROR 42000: Illegal or out of order stuff: 'TESTx'
+SET DEBUG_SYNC='RESETx';
+ERROR 42000: Missing action after synchronization point name 'RESETx'
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 0x6 EXECUTE 2 HIT_LIMIT 3';
+ERROR 42000: Missing valid number after TIMEOUT
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 6 EXECUTE 0x2 HIT_LIMIT 3';
+ERROR 42000: Missing valid number after EXECUTE
+SET DEBUG_SYNC='p0 WAIT_FOR s2 TIMEOUT 7 EXECUTE 2 HIT_LIMIT 0x3';
+ERROR 42000: Missing valid number after HIT_LIMIT
+SET DEBUG_SYNC= 7;
+ERROR 42000: Incorrect argument type to variable 'debug_sync'
+SET GLOBAL DEBUG_SYNC= 'p0 CLEAR';
+ERROR HY000: Variable 'debug_sync' is a SESSION variable and can't be used with SET GLOBAL
+SET @myvar= 'now SIGNAL from_myvar';
+SET DEBUG_SYNC= @myvar;
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 'from_myvar'
+SET DEBUG_SYNC= LEFT('now SIGNAL from_function_cut_here', 24);
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 'from_function'
+SET DEBUG_SYNC= 'now SIGNAL something';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 'something'
+SET DEBUG_SYNC= 'now WAIT_FOR nothing TIMEOUT 0';
+Warnings:
+Warning #### debug sync point wait timed out
+SET DEBUG_SYNC= 'now SIGNAL nothing';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 'nothing'
+SET DEBUG_SYNC= 'now WAIT_FOR nothing TIMEOUT 0';
+SET DEBUG_SYNC= 'now SIGNAL something EXECUTE 0';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 'nothing'
+SET DEBUG_SYNC= 'now WAIT_FOR anotherthing TIMEOUT 0 EXECUTE 0';
+SET DEBUG_SYNC= 'now HIT_LIMIT 1';
+ERROR HY000: debug sync point hit limit reached
+SET DEBUG_SYNC= 'RESET';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: ''
+SET DEBUG_SYNC= 'p1abcd SIGNAL s1 EXECUTE 2';
+SET DEBUG_SYNC= 'p2abc SIGNAL s2 EXECUTE 2';
+SET DEBUG_SYNC= 'p9abcdef SIGNAL s9 EXECUTE 2';
+SET DEBUG_SYNC= 'p4a SIGNAL s4 EXECUTE 2';
+SET DEBUG_SYNC= 'p5abcde SIGNAL s5 EXECUTE 2';
+SET DEBUG_SYNC= 'p6ab SIGNAL s6 EXECUTE 2';
+SET DEBUG_SYNC= 'p7 SIGNAL s7 EXECUTE 2';
+SET DEBUG_SYNC= 'p8abcdef SIGNAL s8 EXECUTE 2';
+SET DEBUG_SYNC= 'p3abcdef SIGNAL s3 EXECUTE 2';
+SET DEBUG_SYNC= 'p4a TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's4'
+SET DEBUG_SYNC= 'p1abcd TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's1'
+SET DEBUG_SYNC= 'p7 TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's7'
+SET DEBUG_SYNC= 'p9abcdef TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's9'
+SET DEBUG_SYNC= 'p3abcdef TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's3'
+SET DEBUG_SYNC= 'p1abcd CLEAR';
+SET DEBUG_SYNC= 'p2abc CLEAR';
+SET DEBUG_SYNC= 'p5abcde CLEAR';
+SET DEBUG_SYNC= 'p6ab CLEAR';
+SET DEBUG_SYNC= 'p8abcdef CLEAR';
+SET DEBUG_SYNC= 'p9abcdef CLEAR';
+SET DEBUG_SYNC= 'p3abcdef CLEAR';
+SET DEBUG_SYNC= 'p4a CLEAR';
+SET DEBUG_SYNC= 'p7 CLEAR';
+SET DEBUG_SYNC= 'p1abcd TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's3'
+SET DEBUG_SYNC= 'p7 TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's3'
+SET DEBUG_SYNC= 'p9abcdef TEST';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: 's3'
+SET DEBUG_SYNC= 'RESET';
+SHOW VARIABLES LIKE 'DEBUG_SYNC';
+Variable_name Value
+debug_sync ON - current signal: ''
+CREATE USER mysqltest_1@localhost;
+GRANT SUPER ON *.* TO mysqltest_1@localhost;
+connection con1, mysqltest_1
+SET DEBUG_SYNC= 'RESET';
+connection default
+DROP USER mysqltest_1@localhost;
+CREATE USER mysqltest_2@localhost;
+GRANT ALL ON *.* TO mysqltest_2@localhost;
+REVOKE SUPER ON *.* FROM mysqltest_2@localhost;
+connection con1, mysqltest_2
+SET DEBUG_SYNC= 'RESET';
+ERROR 42000: Access denied; you need the SUPER privilege for this operation
+connection default
+DROP USER mysqltest_2@localhost;
+SET DEBUG_SYNC= 'RESET';
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (c1 INT);
+connection con1
+SET DEBUG_SYNC= 'before_lock_tables_takes_lock
+ SIGNAL opened WAIT_FOR flushed';
+INSERT INTO t1 VALUES(1);
+connection default
+SET DEBUG_SYNC= 'now WAIT_FOR opened';
+SET DEBUG_SYNC= 'after_flush_unlock SIGNAL flushed';
+FLUSH TABLE t1;
+connection con1
+connection default
+DROP TABLE t1;
+SET DEBUG_SYNC= 'RESET';
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (c1 INT);
+LOCK TABLE t1 WRITE;
+connection con1
+SET DEBUG_SYNC= 'wait_for_lock SIGNAL locked EXECUTE 2';
+INSERT INTO t1 VALUES (1);
+connection default
+SET DEBUG_SYNC= 'now WAIT_FOR locked';
+UNLOCK TABLES;
+connection con1
+retrieve INSERT result.
+connection default
+DROP TABLE t1;
+SET DEBUG_SYNC= 'RESET';
diff --git a/mysql-test/r/default.result b/mysql-test/r/default.result
index 5f27af882f2..5b0d82407a2 100644
--- a/mysql-test/r/default.result
+++ b/mysql-test/r/default.result
@@ -67,9 +67,9 @@ ENGINE=MyISAM DEFAULT CHARACTER SET = latin1 COLLATE latin1_bin;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` varchar(30) collate latin1_bin NOT NULL default ' ',
- `b` varchar(1) collate latin1_bin NOT NULL default ' ',
- `c` varchar(4) collate latin1_bin NOT NULL default '0000',
+ `a` varchar(30) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `b` varchar(1) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `c` varchar(4) COLLATE latin1_bin NOT NULL DEFAULT '0000',
`d` tinyblob,
`e` tinyblob,
`f` tinyblob,
@@ -83,17 +83,17 @@ t2 CREATE TABLE `t2` (
`n` tinyblob,
`o` tinyblob,
`p` tinyblob,
- `q` varchar(30) collate latin1_bin NOT NULL default ' ',
- `r` varchar(30) collate latin1_bin NOT NULL default ' ',
+ `q` varchar(30) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `r` varchar(30) COLLATE latin1_bin NOT NULL DEFAULT ' ',
`s` tinyblob,
- `t` varchar(4) collate latin1_bin NOT NULL default ' ',
- `u` varchar(1) collate latin1_bin NOT NULL default ' ',
- `v` varchar(30) collate latin1_bin NOT NULL default ' ',
- `w` varchar(30) collate latin1_bin NOT NULL default ' ',
+ `t` varchar(4) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `u` varchar(1) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `v` varchar(30) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `w` varchar(30) COLLATE latin1_bin NOT NULL DEFAULT ' ',
`x` tinyblob,
- `y` varchar(5) collate latin1_bin NOT NULL default ' ',
- `z` varchar(20) collate latin1_bin NOT NULL default ' ',
- `a1` varchar(30) collate latin1_bin NOT NULL default ' ',
+ `y` varchar(5) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `z` varchar(20) COLLATE latin1_bin NOT NULL DEFAULT ' ',
+ `a1` varchar(30) COLLATE latin1_bin NOT NULL DEFAULT ' ',
`b1` tinyblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_bin
INSERT into t2 (b) values ('1');
diff --git a/mysql-test/r/delayed.result b/mysql-test/r/delayed.result
index 9f6ebea7e1b..4d5d656f3ce 100644
--- a/mysql-test/r/delayed.result
+++ b/mysql-test/r/delayed.result
@@ -144,7 +144,7 @@ INSERT INTO t1 VALUES( 49, 71), (NULL, 72), (NULL, 73);
INSERT INTO t1 VALUES(NULL, 81), (NULL, 82), (NULL, 83);
SET insert_id= 114;
INSERT INTO t1 VALUES(NULL, 91);
-ERROR 23000: Duplicate entry '114' for key 1
+ERROR 23000: Duplicate entry '114' for key 'PRIMARY'
INSERT INTO t1 VALUES (NULL, 92), (NULL, 93);
SELECT * FROM t1;
c1 c2
@@ -250,13 +250,64 @@ SELECT HEX(a) FROM t1;
HEX(a)
1
DROP TABLE t1;
-CREATE TABLE t1(c1 INT) ENGINE=MyISAM;
-CREATE TABLE t2(c1 INT) ENGINE=MERGE UNION=(t1);
-INSERT DELAYED INTO t2 VALUES(1);
-ERROR HY000: Table storage engine for 't2' doesn't have this option
-DROP TABLE t1, t2;
CREATE TABLE t1 (a INT);
INSERT DELAYED INTO t1 SET b= b();
ERROR 42S22: Unknown column 'b' in 'field list'
DROP TABLE t1;
End of 5.0 tests
+DROP TABLE IF EXISTS t1,t2;
+SET SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
+CREATE TABLE `t1` (
+`id` int(11) PRIMARY KEY auto_increment,
+`f1` varchar(10) NOT NULL UNIQUE
+);
+INSERT DELAYED INTO t1 VALUES(0,"test1");
+SELECT * FROM t1;
+id f1
+0 test1
+SET SQL_MODE='PIPES_AS_CONCAT';
+INSERT DELAYED INTO t1 VALUES(0,'a' || 'b');
+SELECT * FROM t1;
+id f1
+0 test1
+1 ab
+SET SQL_MODE='ERROR_FOR_DIVISION_BY_ZERO,STRICT_ALL_TABLES';
+INSERT DELAYED INTO t1 VALUES(mod(1,0),"test3");
+ERROR 22012: Division by 0
+CREATE TABLE t2 (
+`id` int(11) PRIMARY KEY auto_increment,
+`f1` date
+);
+SET SQL_MODE='NO_ZERO_DATE,STRICT_ALL_TABLES,NO_ZERO_IN_DATE';
+INSERT DELAYED INTO t2 VALUES (0,'0000-00-00');
+ERROR 22007: Incorrect date value: '0000-00-00' for column 'f1' at row 1
+INSERT DELAYED INTO t2 VALUES (0,'2007-00-00');
+ERROR 22007: Incorrect date value: '2007-00-00' for column 'f1' at row 1
+DROP TABLE t1,t2;
+set @old_delayed_updates = @@global.low_priority_updates;
+set global low_priority_updates = 1;
+select @@global.low_priority_updates;
+@@global.low_priority_updates
+1
+drop table if exists t1;
+create table t1 (a int, b int);
+insert into t1 values (1,1);
+lock table t1 read;
+connection: update
+insert delayed into t1 values (2,2);;
+connection: select
+select * from t1;
+a b
+1 1
+connection: default
+select * from t1;
+a b
+1 1
+unlock tables;
+select * from t1;
+a b
+1 1
+2 2
+drop table t1;
+set global low_priority_updates = @old_delayed_updates;
+End of 5.1 tests
diff --git a/mysql-test/r/delete.result b/mysql-test/r/delete.result
index a682d90fbf7..0124a7da35a 100644
--- a/mysql-test/r/delete.result
+++ b/mysql-test/r/delete.result
@@ -234,6 +234,43 @@ ERROR 42S22: Unknown column 't2.x' in 'order clause'
DELETE FROM t1 ORDER BY (SELECT x);
ERROR 42S22: Unknown column 'x' in 'field list'
DROP TABLE t1;
+CREATE TABLE t1 (
+a INT
+);
+CREATE TABLE t2 (
+a INT
+);
+CREATE DATABASE db1;
+CREATE TABLE db1.t1 (
+a INT
+);
+INSERT INTO db1.t1 (a) SELECT * FROM t1;
+CREATE DATABASE db2;
+CREATE TABLE db2.t1 (
+a INT
+);
+INSERT INTO db2.t1 (a) SELECT * FROM t2;
+DELETE FROM t1 alias USING t1, t2 alias WHERE t1.a = alias.a;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alias USING t1, t2 alias WHERE t1.a = alias.a' at line 1
+DELETE FROM alias USING t1, t2 alias WHERE t1.a = alias.a;
+DELETE FROM t1, alias USING t1, t2 alias WHERE t1.a = alias.a;
+DELETE FROM t1, t2 USING t1, t2 alias WHERE t1.a = alias.a;
+ERROR 42S02: Unknown table 't2' in MULTI DELETE
+DELETE FROM db1.t1 alias USING db1.t1, db2.t1 alias WHERE db1.t1.a = alias.a;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alias USING db1.t1, db2.t1 alias WHERE db1.t1.a = alias.a' at line 1
+DELETE FROM alias USING db1.t1, db2.t1 alias WHERE db1.t1.a = alias.a;
+ERROR 42S02: Unknown table 'alias' in MULTI DELETE
+DELETE FROM db2.alias USING db1.t1, db2.t1 alias WHERE db1.t1.a = alias.a;
+DELETE FROM t1 USING t1 WHERE a = 1;
+SELECT * FROM t1;
+a
+DELETE FROM t1 alias USING t1 alias WHERE a = 2;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alias USING t1 alias WHERE a = 2' at line 1
+SELECT * FROM t1;
+a
+DROP TABLE t1, t2;
+DROP DATABASE db1;
+DROP DATABASE db2;
CREATE FUNCTION f1() RETURNS INT RETURN 1;
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (0);
@@ -242,3 +279,48 @@ ERROR 42000: Incorrect number of arguments for FUNCTION test.f1; expected 0, got
DROP TABLE t1;
DROP FUNCTION f1;
End of 5.0 tests
+#
+# Bug#46958: Assertion in Diagnostics_area::set_ok_status, trigger,
+# merge table
+#
+CREATE TABLE t1 ( a INT );
+CREATE TABLE t2 ( a INT );
+CREATE TABLE t3 ( a INT );
+INSERT INTO t1 VALUES (1), (2);
+INSERT INTO t2 VALUES (1), (2);
+INSERT INTO t3 VALUES (1), (2);
+CREATE TRIGGER tr1 BEFORE DELETE ON t2
+FOR EACH ROW INSERT INTO no_such_table VALUES (1);
+DELETE t1, t2, t3 FROM t1, t2, t3;
+ERROR 42S02: Table 'test.no_such_table' doesn't exist
+SELECT * FROM t1;
+a
+SELECT * FROM t2;
+a
+1
+2
+SELECT * FROM t3;
+a
+1
+2
+DROP TABLE t1, t2, t3;
+CREATE TABLE t1 ( a INT );
+CREATE TABLE t2 ( a INT );
+CREATE TABLE t3 ( a INT );
+INSERT INTO t1 VALUES (1), (2);
+INSERT INTO t2 VALUES (1), (2);
+INSERT INTO t3 VALUES (1), (2);
+CREATE TRIGGER tr1 AFTER DELETE ON t2
+FOR EACH ROW INSERT INTO no_such_table VALUES (1);
+DELETE t1, t2, t3 FROM t1, t2, t3;
+ERROR 42S02: Table 'test.no_such_table' doesn't exist
+SELECT * FROM t1;
+a
+SELECT * FROM t2;
+a
+2
+SELECT * FROM t3;
+a
+1
+2
+DROP TABLE t1, t2, t3;
diff --git a/mysql-test/r/derived.result b/mysql-test/r/derived.result
index 81502c7b430..80f04ffd455 100644
--- a/mysql-test/r/derived.result
+++ b/mysql-test/r/derived.result
@@ -58,7 +58,7 @@ a b a b
explain select * from t1 as x1, (select * from t1) as x2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY x1 ALL NULL NULL NULL NULL 4
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 4
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 4 Using join buffer
2 DERIVED t1 ALL NULL NULL NULL NULL 4
drop table if exists t2,t3;
select * from (select 1) as a;
@@ -189,13 +189,13 @@ pla_id test
explain SELECT STRAIGHT_JOIN d.pla_id, m2.mat_id FROM t1 m2 INNER JOIN (SELECT mp.pla_id, MIN(m1.matintnum) AS matintnum FROM t2 mp INNER JOIN t1 m1 ON mp.mat_id=m1.mat_id GROUP BY mp.pla_id) d ON d.matintnum=m2.matintnum;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY m2 ALL NULL NULL NULL NULL 9
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 6 Using where
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 6 Using where; Using join buffer
2 DERIVED mp ALL NULL NULL NULL NULL 9 Using temporary; Using filesort
2 DERIVED m1 eq_ref PRIMARY PRIMARY 3 test.mp.mat_id 1
explain SELECT STRAIGHT_JOIN d.pla_id, m2.test FROM t1 m2 INNER JOIN (SELECT mp.pla_id, MIN(m1.matintnum) AS matintnum FROM t2 mp INNER JOIN t1 m1 ON mp.mat_id=m1.mat_id GROUP BY mp.pla_id) d ON d.matintnum=m2.matintnum;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY m2 ALL NULL NULL NULL NULL 9
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 6 Using where
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 6 Using where; Using join buffer
2 DERIVED mp ALL NULL NULL NULL NULL 9 Using temporary; Using filesort
2 DERIVED m1 eq_ref PRIMARY PRIMARY 3 test.mp.mat_id 1
drop table t1,t2;
@@ -246,7 +246,7 @@ a a
explain select * from ( select * from t1 union select * from t1) a,(select * from t1 union select * from t1) b;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-1 PRIMARY <derived4> ALL NULL NULL NULL NULL 2
+1 PRIMARY <derived4> ALL NULL NULL NULL NULL 2 Using join buffer
4 DERIVED t1 ALL NULL NULL NULL NULL 2
5 UNION t1 ALL NULL NULL NULL NULL 2
NULL UNION RESULT <union4,5> ALL NULL NULL NULL NULL NULL
@@ -313,7 +313,7 @@ explain SELECT s.name, AVG(s.val) AS median FROM (SELECT x.name, x.val FROM t1 x
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
2 DERIVED x ALL NULL NULL NULL NULL 17 Using temporary; Using filesort
-2 DERIVED y ALL NULL NULL NULL NULL 17 Using where
+2 DERIVED y ALL NULL NULL NULL NULL 17 Using where; Using join buffer
drop table t1;
create table t2 (a int, b int, primary key (a));
insert into t2 values (1,7),(2,7);
@@ -383,3 +383,21 @@ select t2.* from (select * from t1) as A inner join t2 on A.ID = t2.FID;
ID DATA FID
drop table t1, t2;
drop user mysqltest_1;
+# End of 4.1 tests
+SELECT 0 FROM
+(SELECT 0) t01, (SELECT 0) t02, (SELECT 0) t03, (SELECT 0) t04, (SELECT 0) t05,
+(SELECT 0) t06, (SELECT 0) t07, (SELECT 0) t08, (SELECT 0) t09, (SELECT 0) t10,
+(SELECT 0) t11, (SELECT 0) t12, (SELECT 0) t13, (SELECT 0) t14, (SELECT 0) t15,
+(SELECT 0) t16, (SELECT 0) t17, (SELECT 0) t18, (SELECT 0) t19, (SELECT 0) t20,
+(SELECT 0) t21, (SELECT 0) t22, (SELECT 0) t23, (SELECT 0) t24, (SELECT 0) t25,
+(SELECT 0) t26, (SELECT 0) t27, (SELECT 0) t28, (SELECT 0) t29, (SELECT 0) t30,
+(SELECT 0) t31, (SELECT 0) t32, (SELECT 0) t33, (SELECT 0) t34, (SELECT 0) t35,
+(SELECT 0) t36, (SELECT 0) t37, (SELECT 0) t38, (SELECT 0) t39, (SELECT 0) t40,
+(SELECT 0) t41, (SELECT 0) t42, (SELECT 0) t43, (SELECT 0) t44, (SELECT 0) t45,
+(SELECT 0) t46, (SELECT 0) t47, (SELECT 0) t48, (SELECT 0) t49, (SELECT 0) t50,
+(SELECT 0) t51, (SELECT 0) t52, (SELECT 0) t53, (SELECT 0) t54, (SELECT 0) t55,
+(SELECT 0) t56, (SELECT 0) t57, (SELECT 0) t58, (SELECT 0) t59, (SELECT 0) t60,
+(SELECT 0) t61;
+0
+0
+# End of 5.0 tests
diff --git a/mysql-test/r/disabled_partition.require b/mysql-test/r/disabled_partition.require
new file mode 100644
index 00000000000..a21c259447a
--- /dev/null
+++ b/mysql-test/r/disabled_partition.require
@@ -0,0 +1,2 @@
+Variable_name Value
+have_partitioning DISABLED
diff --git a/mysql-test/r/distinct.result b/mysql-test/r/distinct.result
index ddbee3ec79c..b1cb70fa43c 100644
--- a/mysql-test/r/distinct.result
+++ b/mysql-test/r/distinct.result
@@ -175,7 +175,7 @@ explain SELECT distinct t3.a FROM t3,t2,t1 WHERE t3.a=t1.b AND t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 4 Using temporary
1 SIMPLE t3 ref a a 5 test.t1.b 2 Using where; Using index
-1 SIMPLE t2 index a a 4 NULL 4 Using where; Using index; Distinct
+1 SIMPLE t2 index a a 4 NULL 5 Using where; Using index; Distinct; Using join buffer
SELECT distinct t3.a FROM t3,t2,t1 WHERE t3.a=t1.b AND t1.a=t2.a;
a
1
@@ -209,16 +209,16 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
explain SELECT distinct t1.a from t1 order by a desc limit 1;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 4 NULL 4 Using index
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 1 Using index
explain SELECT distinct a from t3 order by a desc limit 2;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index NULL a 5 NULL 10 Using index
+1 SIMPLE t3 index NULL a 5 NULL 40 Using index
explain SELECT distinct a,b from t3 order by a+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ALL NULL NULL NULL NULL 204 Using temporary; Using filesort
-explain SELECT distinct a,b from t3 order by a limit 10;
+explain SELECT distinct a,b from t3 order by a limit 2;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index NULL a 5 NULL 204 Using temporary
+1 SIMPLE t3 index NULL a 5 NULL 2 Using temporary
explain SELECT a,b from t3 group by a,b order by a+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ALL NULL NULL NULL NULL 204 Using temporary; Using filesort
@@ -300,11 +300,11 @@ WHERE
AND ((t1.id=j_lj_t3.id AND t3_lj.id IS NULL) OR (t1.id=t3.id AND t3.idx=2));
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index id id 4 NULL 2 Using index; Using temporary
-1 SIMPLE t2 index id id 8 NULL 1 Using index; Distinct
-1 SIMPLE t3 index id id 8 NULL 1 Using index; Distinct
-1 SIMPLE j_lj_t2 index id id 4 NULL 2 Using where; Using index; Distinct
+1 SIMPLE t2 index id id 8 NULL 1 Using index; Distinct; Using join buffer
+1 SIMPLE t3 index id id 8 NULL 1 Using index; Distinct; Using join buffer
+1 SIMPLE j_lj_t2 index id id 4 NULL 2 Using where; Using index; Distinct; Using join buffer
1 SIMPLE t2_lj ref id id 4 test.j_lj_t2.id 1 Using where; Using index; Distinct
-1 SIMPLE j_lj_t3 index id id 4 NULL 2 Using where; Using index; Distinct
+1 SIMPLE j_lj_t3 index id id 4 NULL 2 Using where; Using index; Distinct; Using join buffer
1 SIMPLE t3_lj ref id id 4 test.j_lj_t3.id 1 Using where; Using index; Distinct
SELECT DISTINCT
t1.id
@@ -515,7 +515,7 @@ id select_type table type possible_keys key key_len ref rows Extra
EXPLAIN SELECT DISTINCT t1_1.a, t1_1.b FROM t1 t1_1, t1 t1_2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1_1 ALL NULL NULL NULL NULL 3 Using temporary
-1 SIMPLE t1_2 index NULL PRIMARY 4 NULL 3 Using index; Distinct
+1 SIMPLE t1_2 index NULL PRIMARY 4 NULL 3 Using index; Distinct; Using join buffer
EXPLAIN SELECT DISTINCT t1_1.a, t1_1.b FROM t1 t1_1, t1 t1_2
WHERE t1_1.a = t1_2.a;
id select_type table type possible_keys key key_len ref rows Extra
@@ -653,11 +653,11 @@ DROP TABLE IF EXISTS t2;
CREATE TABLE t2 (fruit_id INT NOT NULL, fruit_name varchar(20)
default NULL);
SELECT DISTINCT fruit_id, fruit_name INTO OUTFILE
-'../tmp/data1.tmp' FROM t1 WHERE fruit_name = 'APPLE';
-LOAD DATA INFILE '../tmp/data1.tmp' INTO TABLE t2;
+'../../tmp/data1.tmp' FROM t1 WHERE fruit_name = 'APPLE';
+LOAD DATA INFILE '../../tmp/data1.tmp' INTO TABLE t2;
SELECT DISTINCT @v19:= fruit_id, @v20:= fruit_name INTO OUTFILE
-'../tmp/data2.tmp' FROM t1 WHERE fruit_name = 'APPLE';
-LOAD DATA INFILE '../tmp/data2.tmp' INTO TABLE t2;
+'../../tmp/data2.tmp' FROM t1 WHERE fruit_name = 'APPLE';
+LOAD DATA INFILE '../../tmp/data2.tmp' INTO TABLE t2;
SELECT @v19, @v20;
@v19 @v20
2 APPLE
@@ -741,3 +741,56 @@ a a b
1 1 3
DROP TABLE t1;
End of 5.0 tests
+CREATE TABLE t1(a INT, b INT, c INT, d INT, e INT,
+PRIMARY KEY(a,b,c,d,e),
+KEY(a,b,d,c)
+);
+INSERT INTO t1(a, b, c) VALUES (1, 1, 1),
+(1, 1, 2),
+(1, 1, 3),
+(1, 2, 1),
+(1, 2, 2),
+(1, 2, 3);
+EXPLAIN SELECT DISTINCT a, b, d, c FROM t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range NULL PRIMARY 16 NULL 7 Using index for group-by; Using temporary
+SELECT DISTINCT a, b, d, c FROM t1;
+a b d c
+1 1 0 1
+1 1 0 2
+1 1 0 3
+1 2 0 1
+1 2 0 2
+1 2 0 3
+DROP TABLE t1;
+#
+# Bug #46159: simple query that never returns
+#
+SET @old_max_heap_table_size = @@max_heap_table_size;
+SET @@max_heap_table_size = 16384;
+SET @old_sort_buffer_size = @@sort_buffer_size;
+SET @@sort_buffer_size = 32804;
+CREATE TABLE t1(c1 int, c2 VARCHAR(20));
+INSERT INTO t1 VALUES (1, '1'), (1, '1'), (2, '2'), (3, '1'), (3, '1'), (4, '4');
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+INSERT INTO t1 SELECT 5 + 10000 * RAND(), '5' FROM t1;
+SELECT c1, c2, COUNT(*) FROM t1 GROUP BY c1 LIMIT 4;
+c1 c2 COUNT(*)
+1 1 2
+2 2 1
+3 1 2
+4 4 1
+SELECT DISTINCT c2 FROM t1 GROUP BY c1 HAVING COUNT(*) > 1;
+c2
+1
+5
+DROP TABLE t1;
+SET @@sort_buffer_size = @old_sort_buffer_size;
+SET @@max_heap_table_size = @old_max_heap_table_size;
+End of 5.1 tests
diff --git a/mysql-test/r/drop.result b/mysql-test/r/drop.result
index ff11905aa34..b798b49dd34 100644
--- a/mysql-test/r/drop.result
+++ b/mysql-test/r/drop.result
@@ -47,6 +47,7 @@ create database mysqltest;
show databases;
Database
information_schema
+mtr
mysql
mysqltest
test
@@ -58,6 +59,7 @@ drop database mysqltest;
show databases;
Database
information_schema
+mtr
mysql
test
drop database mysqltest;
@@ -85,3 +87,37 @@ select 1;
1
unlock tables;
End of 5.0 tests
+create database mysql_test;
+create table mysql_test.t1(f1 int);
+create table mysql_test.`#sql-347f_7` (f1 int);
+create table mysql_test.`#sql-347f_8` (f1 int);
+drop table mysql_test.`#sql-347f_8`;
+drop database mysql_test;
+
+# --
+# -- Bug#29958: Weird message on DROP DATABASE if mysql.proc does not
+# -- exist.
+# --
+DROP DATABASE IF EXISTS mysql_test;
+CREATE DATABASE mysql_test;
+DROP TABLE mysql.proc;
+DROP DATABASE mysql_test;
+Warnings:
+Error 1146 Table 'mysql.proc' doesn't exist
+
+# --
+# -- End of Bug#29958.
+# --
+
+create database mysqltestbug26703;
+use mysqltestbug26703;
+create table `#mysql50#abc``def` ( id int );
+create table `aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa` (a int);
+ERROR 42000: Incorrect table name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+create table `aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa` (a int);
+create table `#mysql50#aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa` (a int);
+create table `#mysql50#aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa` (a int);
+ERROR 42000: Incorrect table name '#mysql50#aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+use test;
+drop database mysqltestbug26703;
+End of 5.1 tests
diff --git a/mysql-test/r/drop_temp_table.result b/mysql-test/r/drop_temp_table.result
deleted file mode 100644
index ff200d09de4..00000000000
--- a/mysql-test/r/drop_temp_table.result
+++ /dev/null
@@ -1,22 +0,0 @@
-drop database if exists `drop-temp+table-test`;
-reset master;
-create database `drop-temp+table-test`;
-use `drop-temp+table-test`;
-create temporary table shortn1 (a int);
-create temporary table `table:name` (a int);
-create temporary table shortn2 (a int);
-select get_lock("a",10);
-get_lock("a",10)
-1
-select get_lock("a",10);
-get_lock("a",10)
-1
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Format_desc 1 # Server ver: VERSION, Binlog ver: 4
-master-bin.000001 # Query 1 # create database `drop-temp+table-test`
-master-bin.000001 # Query 1 # use `drop-temp+table-test`; create temporary table shortn1 (a int)
-master-bin.000001 # Query 1 # use `drop-temp+table-test`; create temporary table `table:name` (a int)
-master-bin.000001 # Query 1 # use `drop-temp+table-test`; create temporary table shortn2 (a int)
-master-bin.000001 # Query 1 # use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `shortn2`,`table:name`,`shortn1`
-drop database `drop-temp+table-test`;
diff --git a/mysql-test/r/endspace.result b/mysql-test/r/endspace.result
index 003ee7ffd5e..9c8d12362c4 100644
--- a/mysql-test/r/endspace.result
+++ b/mysql-test/r/endspace.result
@@ -25,10 +25,11 @@ insert into t1 values ('teststring'), ('nothing'), ('teststring\t');
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
-select * from t1 ignore key (key1) where text1='teststring' or text1 like 'teststring_%';
+select * from t1 ignore key (key1) where text1='teststring' or
+text1 like 'teststring_%' ORDER BY text1;
text1
-teststring
teststring
+teststring
select * from t1 where text1='teststring' or text1 like 'teststring_%';
text1
teststring
@@ -48,10 +49,11 @@ alter table t1 modify text1 char(32) binary not null;
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
-select * from t1 ignore key (key1) where text1='teststring' or text1 like 'teststring_%';
+select * from t1 ignore key (key1) where text1='teststring' or
+text1 like 'teststring_%' ORDER BY text1;
text1
-teststring
teststring
+teststring
select concat('|', text1, '|') from t1 where text1='teststring' or text1 like 'teststring_%';
concat('|', text1, '|')
|teststring |
@@ -132,10 +134,11 @@ concat('|', text1, '|')
drop table t1;
create table t1 (text1 varchar(32) not NULL, KEY key1 using BTREE (text1)) engine=heap;
insert into t1 values ('teststring'), ('nothing'), ('teststring\t');
-select * from t1 ignore key (key1) where text1='teststring' or text1 like 'teststring_%';
+select * from t1 ignore key (key1) where text1='teststring' or
+text1 like 'teststring_%' ORDER BY text1;
text1
-teststring
teststring
+teststring
select * from t1 where text1='teststring' or text1 like 'teststring_%';
text1
teststring
@@ -151,7 +154,7 @@ teststring
teststring
explain select * from t1 order by text1;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL key1 34 NULL 3
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
alter table t1 modify text1 char(32) binary not null;
select * from t1 order by text1;
text1
diff --git a/mysql-test/r/error_simulation.result b/mysql-test/r/error_simulation.result
index 805e8fabbd8..6153dad2534 100644
--- a/mysql-test/r/error_simulation.result
+++ b/mysql-test/r/error_simulation.result
@@ -13,7 +13,8 @@ INSERT INTO t1 VALUES
('AAAAAAAAAH','AAAAAAAAAH'), ('AAAAAAAAAI','AAAAAAAAAI'),
('AAAAAAAAAJ','AAAAAAAAAJ'), ('AAAAAAAAAK','AAAAAAAAAK');
set tmp_table_size=1024;
+set session debug="d,raise_error";
SELECT MAX(a) FROM t1 GROUP BY a,b;
-ERROR 23000: Can't write; duplicate key in table ''
+ERROR 23000: Can't write; duplicate key in table 'tmp_table'
set tmp_table_size=default;
DROP TABLE t1;
diff --git a/mysql-test/r/events_1.result b/mysql-test/r/events_1.result
new file mode 100644
index 00000000000..e7b645f5556
--- /dev/null
+++ b/mysql-test/r/events_1.result
@@ -0,0 +1,428 @@
+drop database if exists events_test;
+drop database if exists db_x;
+drop database if exists mysqltest_db2;
+drop database if exists mysqltest_no_such_database;
+create database events_test;
+use events_test;
+CREATE USER pauline@localhost;
+CREATE DATABASE db_x;
+GRANT EVENT ON db_x.* TO pauline@localhost;
+USE db_x;
+CREATE TABLE x_table(a int);
+CREATE EVENT e_x1 ON SCHEDULE EVERY 1 SECOND DO DROP DATABASE db_x;
+CREATE EVENT e_x2 ON SCHEDULE EVERY 1 SECOND DO DROP TABLE x_table;
+SHOW DATABASES LIKE 'db_x';
+Database (db_x)
+db_x
+SET GLOBAL event_scheduler=1;
+SHOW DATABASES LIKE 'db_x';
+Database (db_x)
+db_x
+SHOW TABLES FROM db_x;
+Tables_in_db_x
+x_table
+SET GLOBAL event_scheduler=off;
+DROP EVENT e_x1;
+DROP EVENT e_x2;
+DROP DATABASE db_x;
+DROP USER pauline@localhost;
+USE events_test;
+SET GLOBAL event_scheduler=off;
+drop event if exists event1;
+Warnings:
+Note 1305 Event event1 does not exist
+create event event1 on schedule every 15 minute starts now() ends date_add(now(), interval 5 hour) DO begin end;
+alter event event1 rename to event2 enable;
+alter event event2 disable;
+alter event event2 enable;
+alter event event2 on completion not preserve;
+alter event event2 on schedule every 1 year on completion preserve rename to event3 comment "new comment" do begin select 1; end__
+alter event event3 rename to event2;
+drop event event2;
+create event event2 on schedule every 2 second starts now() ends date_add(now(), interval 5 hour) comment "some" DO begin end;
+drop event event2;
+CREATE EVENT event_starts_test ON SCHEDULE EVERY 10 SECOND COMMENT "" DO SELECT 1;
+SELECT interval_field, interval_value, body FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+interval_field interval_value body
+SECOND 10 SELECT 1
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+1 0 1
+ALTER EVENT event_starts_test ON SCHEDULE AT '2020-02-02 20:00:02';
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+0 1 1
+ALTER EVENT event_starts_test COMMENT "non-empty comment";
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+0 1 1 non-empty comment
+ALTER EVENT event_starts_test COMMENT "";
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+0 1 1
+DROP EVENT event_starts_test;
+CREATE EVENT event_starts_test ON SCHEDULE EVERY 20 SECOND STARTS '2020-02-02 20:00:02' ENDS '2022-02-02 20:00:02' DO SELECT 2;
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+1 0 0
+ALTER EVENT event_starts_test COMMENT "non-empty comment";
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+1 0 0 non-empty comment
+ALTER EVENT event_starts_test COMMENT "";
+SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test';
+execute_at IS NULL starts IS NULL ends IS NULL comment
+1 0 0
+DROP EVENT event_starts_test;
+create table test_nested(a int);
+create event e_43 on schedule every 1 second do set @a = 5;
+alter event e_43 do alter event e_43 do set @a = 4;
+ERROR HY000: Recursion of EVENT DDL statements is forbidden when body is present
+alter event e_43 do
+begin
+alter event e_43 on schedule every 5 minute;
+insert into test_nested values(1);
+end|
+set global event_scheduler = on;
+select db, name, body, status, interval_field, interval_value from mysql.event;
+db name body status interval_field interval_value
+events_test e_43 begin
+alter event e_43 on schedule every 5 minute;
+insert into test_nested values(1);
+end ENABLED MINUTE 5
+drop event e_43;
+drop table test_nested;
+"Let's check whether we can use non-qualified names"
+create table non_qualif(a int);
+create event non_qualif_ev on schedule every 10 minute do insert into non_qualif values (800219);
+select * from non_qualif;
+a
+800219
+drop event non_qualif_ev;
+drop table non_qualif;
+alter event non_existant rename to non_existant_too;
+ERROR HY000: Unknown event 'non_existant'
+set global event_scheduler = off;
+create event existant on schedule at now() + interval 1 year do select 12;
+alter event non_existant rename to existant;
+ERROR HY000: Event 'existant' already exists
+alter event existant rename to events_test.existant;
+ERROR HY000: Same old and new event name
+drop event existant;
+create table t_event3 (a int, b float);
+drop event if exists event3;
+Warnings:
+Note 1305 Event event3 does not exist
+create event event3 on schedule every 50 + 10 minute starts date_add("20100101", interval 5 minute) ends date_add("20151010", interval 5 day) comment "portokala_comment" DO insert into t_event3 values (unix_timestamp(), rand());
+select count(*) from t_event3;
+count(*)
+0
+drop event event3;
+drop table t_event3;
+set names utf8;
+CREATE EVENT root6 ON SCHEDULE EVERY '10:20' MINUTE_SECOND ON COMPLETION PRESERVE ENABLE COMMENT 'some comment' DO select 1;
+SHOW CREATE EVENT root6;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root6 SYSTEM CREATE EVENT `root6` ON SCHEDULE EVERY '10:20' MINUTE_SECOND STARTS '#' ON COMPLETION PRESERVE ENABLE COMMENT 'some comment' DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root7 on schedule every 2 year do select 1;
+SHOW CREATE EVENT root7;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root7 SYSTEM CREATE EVENT `root7` ON SCHEDULE EVERY 2 YEAR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root8 on schedule every '2:5' year_month do select 1;
+SHOW CREATE EVENT root8;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root8 SYSTEM CREATE EVENT `root8` ON SCHEDULE EVERY '2-5' YEAR_MONTH STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root8_1 on schedule every '2:15' year_month do select 1;
+SHOW CREATE EVENT root8_1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root8_1 SYSTEM CREATE EVENT `root8_1` ON SCHEDULE EVERY '3-3' YEAR_MONTH STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root9 on schedule every 2 week ON COMPLETION PRESERVE DISABLE COMMENT 'коментар на кирилица' do select 1;
+SHOW CREATE EVENT root9;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root9 SYSTEM CREATE EVENT `root9` ON SCHEDULE EVERY 2 WEEK STARTS '#' ON COMPLETION PRESERVE DISABLE COMMENT 'коментар на кирилица' DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root10 on schedule every '20:5' day_hour do select 1;
+SHOW CREATE EVENT root10;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root10 SYSTEM CREATE EVENT `root10` ON SCHEDULE EVERY '20 5' DAY_HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root11 on schedule every '20:25' day_hour do select 1;
+SHOW CREATE EVENT root11;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root11 SYSTEM CREATE EVENT `root11` ON SCHEDULE EVERY '21 1' DAY_HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root12 on schedule every '20:25' hour_minute do select 1;
+SHOW CREATE EVENT root12;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root12 SYSTEM CREATE EVENT `root12` ON SCHEDULE EVERY '20:25' HOUR_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root13 on schedule every '25:25' hour_minute do select 1;
+SHOW CREATE EVENT root13;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root13 SYSTEM CREATE EVENT `root13` ON SCHEDULE EVERY '25:25' HOUR_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root13_1 on schedule every '11:65' hour_minute do select 1;
+SHOW CREATE EVENT root13_1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root13_1 SYSTEM CREATE EVENT `root13_1` ON SCHEDULE EVERY '12:5' HOUR_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root14 on schedule every '35:35' minute_second do select 1;
+SHOW CREATE EVENT root14;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root14 SYSTEM CREATE EVENT `root14` ON SCHEDULE EVERY '35:35' MINUTE_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root15 on schedule every '35:66' minute_second do select 1;
+SHOW CREATE EVENT root15;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root15 SYSTEM CREATE EVENT `root15` ON SCHEDULE EVERY '36:6' MINUTE_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root16 on schedule every '35:56' day_minute do select 1;
+SHOW CREATE EVENT root16;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root16 SYSTEM CREATE EVENT `root16` ON SCHEDULE EVERY '1 11:56' DAY_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root17 on schedule every '35:12:45' day_minute do select 1;
+SHOW CREATE EVENT root17;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root17 SYSTEM CREATE EVENT `root17` ON SCHEDULE EVERY '35 12:45' DAY_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root17_1 on schedule every '35:25:65' day_minute do select 1;
+SHOW CREATE EVENT root17_1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root17_1 SYSTEM CREATE EVENT `root17_1` ON SCHEDULE EVERY '36 2:5' DAY_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root18 on schedule every '35:12:45' hour_second do select 1;
+SHOW CREATE EVENT root18;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root18 SYSTEM CREATE EVENT `root18` ON SCHEDULE EVERY '35:12:45' HOUR_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root19 on schedule every '15:59:85' hour_second do select 1;
+SHOW CREATE EVENT root19;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root19 SYSTEM CREATE EVENT `root19` ON SCHEDULE EVERY '16:0:25' HOUR_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+create event root20 on schedule every '50:20:12:45' day_second do select 1;
+SHOW CREATE EVENT root20;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+root20 SYSTEM CREATE EVENT `root20` ON SCHEDULE EVERY '50 20:12:45' DAY_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+set names cp1251;
+create event 21 on schedule every '50:23:59:95' day_second COMMENT ' 1251 ' do select 1;
+SHOW CREATE EVENT 21;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+21 SYSTEM CREATE EVENT `руут21` ON SCHEDULE EVERY '51 0:0:35' DAY_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE COMMENT 'това е 1251 коментар' DO select 1 cp1251 cp1251_general_ci latin1_swedish_ci
+insert into mysql.event (
+db,
+name,
+body,
+definer,
+interval_value,
+interval_field,
+originator,
+character_set_client,
+collation_connection,
+db_collation,
+body_utf8)
+values (
+database(),
+"root22",
+"select 1",
+user(),
+100,
+"SECOND_MICROSECOND",
+1,
+'utf8',
+'utf8_general_ci',
+'utf8_general_ci',
+'select 1');
+show create event root22;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+SHOW EVENTS;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+drop event root22;
+create event root23 on schedule every -100 year do select 1;
+ERROR HY000: INTERVAL is either not positive or too big
+create event root23 on schedule every 222222222222222222222 year do select 1;
+ERROR HY000: INTERVAL is either not positive or too big
+drop event root6;
+drop event root7;
+drop event root8;
+drop event root8_1;
+drop event root9;
+drop event root10;
+drop event root11;
+drop event root12;
+drop event root13;
+drop event root13_1;
+drop event root14;
+drop event root15;
+drop event root16;
+drop event root17;
+drop event root17_1;
+drop event root18;
+drop event root19;
+drop event root20;
+drop event 21;
+set names latin1;
+Create a test event. Only event metadata is relevant,
+the actual schedule and body are not.
+CREATE EVENT intact_check ON SCHEDULE EVERY 10 HOUR DO SELECT "nothing";
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test intact_check root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+Try to alter mysql.event: the server should fail to load
+event information after mysql.event was tampered with.
+
+First, let's add a column to the end and make sure everything
+works as before
+
+ALTER TABLE mysql.event ADD dummy INT;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test intact_check root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SELECT event_name FROM INFORMATION_SCHEMA.events;
+event_name
+intact_check
+SHOW CREATE EVENT intact_check;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+intact_check SYSTEM CREATE EVENT `intact_check` ON SCHEDULE EVERY 10 HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO SELECT "nothing" latin1 latin1_swedish_ci latin1_swedish_ci
+DROP EVENT no_such_event;
+ERROR HY000: Unknown event 'no_such_event'
+CREATE EVENT intact_check_1 ON SCHEDULE EVERY 5 HOUR DO SELECT 5;
+ALTER EVENT intact_check_1 ON SCHEDULE EVERY 8 HOUR DO SELECT 8;
+ALTER EVENT intact_check_1 RENAME TO intact_check_2;
+DROP EVENT intact_check_1;
+ERROR HY000: Unknown event 'intact_check_1'
+DROP EVENT intact_check_2;
+DROP EVENT intact_check;
+DROP DATABASE IF EXISTS mysqltest_no_such_database;
+Warnings:
+Note 1008 Can't drop database 'mysqltest_no_such_database'; database doesn't exist
+CREATE DATABASE mysqltest_db2;
+DROP DATABASE mysqltest_db2;
+SELECT @@event_scheduler;
+@@event_scheduler
+OFF
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler OFF
+SET GLOBAL event_scheduler=OFF;
+ALTER TABLE mysql.event DROP dummy;
+CREATE EVENT intact_check ON SCHEDULE EVERY 10 HOUR DO SELECT "nothing";
+
+Now let's add a column to the first position: the server
+expects to see event schema name there
+
+ALTER TABLE mysql.event ADD dummy INT FIRST;
+SHOW EVENTS;
+ERROR HY000: Cannot load from mysql.event. The table is probably corrupted
+SELECT event_name FROM INFORMATION_SCHEMA.events;
+ERROR HY000: Cannot load from mysql.event. The table is probably corrupted
+SHOW CREATE EVENT intact_check;
+ERROR HY000: Unknown event 'intact_check'
+DROP EVENT no_such_event;
+ERROR HY000: Unknown event 'no_such_event'
+CREATE EVENT intact_check_1 ON SCHEDULE EVERY 5 HOUR DO SELECT 5;
+ERROR HY000: Failed to store event name. Error code 2 from storage engine.
+ALTER EVENT intact_check_1 ON SCHEDULE EVERY 8 HOUR DO SELECT 8;
+ERROR HY000: Unknown event 'intact_check_1'
+ALTER EVENT intact_check_1 RENAME TO intact_check_2;
+ERROR HY000: Unknown event 'intact_check_1'
+DROP EVENT intact_check_1;
+ERROR HY000: Unknown event 'intact_check_1'
+DROP EVENT intact_check_2;
+ERROR HY000: Unknown event 'intact_check_2'
+DROP EVENT intact_check;
+ERROR HY000: Unknown event 'intact_check'
+DROP DATABASE IF EXISTS mysqltest_no_such_database;
+Warnings:
+Note 1008 Can't drop database 'mysqltest_no_such_database'; database doesn't exist
+CREATE DATABASE mysqltest_db2;
+DROP DATABASE mysqltest_db2;
+SELECT @@event_scheduler;
+@@event_scheduler
+OFF
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler OFF
+SET GLOBAL event_scheduler=OFF;
+Clean up
+ALTER TABLE mysql.event DROP dummy;
+DELETE FROM mysql.event;
+CREATE EVENT intact_check ON SCHEDULE EVERY 10 HOUR DO SELECT "nothing";
+Back up the table, further changes are not reversible
+CREATE TABLE event_like LIKE mysql.event;
+INSERT INTO event_like SELECT * FROM mysql.event;
+
+Drop some columns and try more checks.
+
+
+ALTER TABLE mysql.event DROP comment, DROP starts;
+SHOW EVENTS;
+ERROR HY000: Cannot load from mysql.event. The table is probably corrupted
+SELECT event_name FROM INFORMATION_SCHEMA.EVENTS;
+ERROR HY000: Cannot load from mysql.event. The table is probably corrupted
+SHOW CREATE EVENT intact_check;
+ERROR HY000: Cannot load from mysql.event. The table is probably corrupted
+DROP EVENT no_such_event;
+ERROR HY000: Unknown event 'no_such_event'
+CREATE EVENT intact_check_1 ON SCHEDULE EVERY 5 HOUR DO SELECT 5;
+ERROR HY000: Column count of mysql.event is wrong. Expected 22, found 20. The table is probably corrupted
+ALTER EVENT intact_check_1 ON SCHEDULE EVERY 8 HOUR DO SELECT 8;
+ERROR HY000: Unknown event 'intact_check_1'
+ALTER EVENT intact_check_1 RENAME TO intact_check_2;
+ERROR HY000: Unknown event 'intact_check_1'
+DROP EVENT intact_check_1;
+ERROR HY000: Unknown event 'intact_check_1'
+DROP EVENT intact_check_2;
+ERROR HY000: Unknown event 'intact_check_2'
+DROP EVENT intact_check;
+DROP DATABASE IF EXISTS mysqltest_no_such_database;
+Warnings:
+Note 1008 Can't drop database 'mysqltest_no_such_database'; database doesn't exist
+CREATE DATABASE mysqltest_db2;
+DROP DATABASE mysqltest_db2;
+SELECT @@event_scheduler;
+@@event_scheduler
+OFF
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler OFF
+SET GLOBAL event_scheduler=OFF;
+
+Now drop the table, and test again
+
+
+DROP TABLE mysql.event;
+SHOW EVENTS;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+SELECT event_name FROM INFORMATION_SCHEMA.events;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+SHOW CREATE EVENT intact_check;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+DROP EVENT no_such_event;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+CREATE EVENT intact_check_1 ON SCHEDULE EVERY 5 HOUR DO SELECT 5;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+ALTER EVENT intact_check_1 ON SCHEDULE EVERY 8 HOUR DO SELECT 8;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+ALTER EVENT intact_check_1 RENAME TO intact_check_2;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+DROP EVENT intact_check_1;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+DROP EVENT intact_check_2;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+DROP EVENT intact_check;
+ERROR 42S02: Table 'mysql.event' doesn't exist
+DROP DATABASE IF EXISTS mysqltest_no_such_database;
+Warnings:
+Note 1008 Can't drop database 'mysqltest_no_such_database'; database doesn't exist
+CREATE DATABASE mysqltest_db2;
+DROP DATABASE mysqltest_db2;
+Warnings:
+Error 1146 Table 'mysql.event' doesn't exist
+OK, there is an unnecessary warning about the non-existent table
+but it's not easy to fix and no one complained about it.
+A similar warning is printed if mysql.proc is missing.
+SHOW WARNINGS;
+Level Code Message
+Error 1146 Table 'mysql.event' doesn't exist
+SELECT @@event_scheduler;
+@@event_scheduler
+OFF
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler OFF
+SET GLOBAL event_scheduler=OFF;
+Restore the original table.
+CREATE TABLE mysql.event like event_like;
+DROP TABLE event_like;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+drop database events_test;
diff --git a/mysql-test/r/events_2.result b/mysql-test/r/events_2.result
new file mode 100644
index 00000000000..db503f7aa6d
--- /dev/null
+++ b/mysql-test/r/events_2.result
@@ -0,0 +1,408 @@
+drop database if exists events_test;
+create database events_test;
+use events_test;
+create event e_26 on schedule at '2017-01-01 00:00:00' disable do set @a = 5;
+select db, name, body, definer, convert_tz(execute_at, 'UTC', 'SYSTEM'), on_completion from mysql.event;
+db name body definer convert_tz(execute_at, 'UTC', 'SYSTEM') on_completion
+events_test e_26 set @a = 5 root@localhost 2017-01-01 00:00:00 DROP
+drop event e_26;
+create event e_26 on schedule at NULL disable do set @a = 5;
+ERROR HY000: Incorrect AT value: 'NULL'
+create event e_26 on schedule at 'definitely not a datetime' disable do set @a = 5;
+ERROR HY000: Incorrect AT value: 'definitely not a datetime'
+set names utf8;
+create event задачка on schedule every 123 minute starts now() ends now() + interval 1 month do select 1;
+drop event задачка;
+set event_scheduler=off;
+ERROR HY000: Variable 'event_scheduler' is a GLOBAL variable and should be set with SET GLOBAL
+set global event_scheduler=3;
+ERROR 42000: Variable 'event_scheduler' can't be set to the value of '3'
+set global event_scheduler=disabled;
+ERROR 42000: Variable 'event_scheduler' can't be set to the value of 'disabled'
+"DISABLE the scheduler. Testing that it does not work when the variable is 0"
+set global event_scheduler=off;
+select definer, name, db from mysql.event;
+definer name db
+select get_lock("test_lock1", 20);
+get_lock("test_lock1", 20)
+1
+create event закачка on schedule every 10 hour do select get_lock("test_lock1", 20);
+"Should return 1 row"
+select definer, name, db from mysql.event;
+definer name db
+root@localhost закачка events_test
+"Should be only 0 process"
+select /*1*/ user, host, db, command, state, info
+from information_schema.processlist
+where (user='event_scheduler')
+order by info;
+user host db command state info
+select release_lock("test_lock1");
+release_lock("test_lock1")
+1
+drop event закачка;
+"Should have 0 events"
+select count(*) from mysql.event;
+count(*)
+0
+"ENABLE the scheduler and get a lock"
+set global event_scheduler=on;
+select get_lock("test_lock2", 20);
+get_lock("test_lock2", 20)
+1
+"Create an event which tries to acquire a mutex. The event locks on the mutex"
+create event закачка on schedule every 10 hour do select get_lock("test_lock2", 20);
+"Should have only 2 processes: the scheduler and the locked event"
+select /*2*/ user, host, db, command, state, info
+from information_schema.processlist
+where (info like "select get_lock%" OR user='event_scheduler')
+order by info;
+user host db command state info
+event_scheduler localhost NULL Daemon Waiting for next activation NULL
+root localhost events_test Connect User lock select get_lock("test_lock2", 20)
+"Release the mutex, the event worker should finish."
+select release_lock("test_lock2");
+release_lock("test_lock2")
+1
+drop event закачка;
+set global event_scheduler=1;
+select get_lock("test_lock2_1", 20);
+get_lock("test_lock2_1", 20)
+1
+create event закачка21 on schedule every 10 hour do select get_lock("test_lock2_1", 20);
+"Should have only 2 processes: the scheduler and the locked event"
+select /*3*/ user, host, db, command, state, info
+from information_schema.processlist
+where (info like "select get_lock%" OR user='event_scheduler')
+order by info;
+user host db command state info
+event_scheduler localhost NULL Daemon Waiting for next activation NULL
+root localhost events_test Connect User lock select get_lock("test_lock2_1", 20)
+set global event_scheduler=off;
+"Should have only our process now:"
+select /*4*/ user, host, db, command, state, info
+from information_schema.processlist
+where (info like "select get_lock%" OR user='event_scheduler')
+order by info;
+user host db command state info
+root localhost events_test Connect User lock select get_lock("test_lock2_1", 20)
+select release_lock("test_lock2_1");
+release_lock("test_lock2_1")
+1
+drop event закачка21;
+create table t_16 (s1 int);
+create trigger t_16_bi before insert on t_16 for each row create event e_16 on schedule every 1 second do set @a=5;
+ERROR HY000: Recursion of EVENT DDL statements is forbidden when body is present
+drop table t_16;
+create event white_space
+on schedule every 10 hour
+disable
+do
+select 1;
+select event_schema, event_name, definer, event_definition from information_schema.events where event_name='white_space';
+event_schema event_name definer event_definition
+events_test white_space root@localhost select 1
+drop event white_space;
+create event white_space on schedule every 10 hour disable do
+select 2;
+select event_schema, event_name, definer, event_definition from information_schema.events where event_name='white_space';
+event_schema event_name definer event_definition
+events_test white_space root@localhost select 2
+drop event white_space;
+create event white_space on schedule every 10 hour disable do select 3;
+select event_schema, event_name, definer, event_definition from information_schema.events where event_name='white_space';
+event_schema event_name definer event_definition
+events_test white_space root@localhost select 3
+drop event white_space;
+create event e1 on schedule every 1 year do set @a = 5;
+create table t1 (s1 int);
+create trigger t1_ai after insert on t1 for each row show create event e1;
+ERROR 0A000: Not allowed to return a result set from a trigger
+drop table t1;
+drop event e1;
+SHOW EVENTS FROM aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+SHOW EVENTS FROM ``;
+ERROR 42000: Incorrect database name ''
+SHOW EVENTS FROM `events\\test`;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+
+LOCK TABLES mode.
+
+create table t1 (a int);
+create event e1 on schedule every 10 hour do select 1;
+lock table t1 read;
+show create event e1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e1 SYSTEM CREATE EVENT `e1` ON SCHEDULE EVERY 10 HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+select event_name from information_schema.events;
+event_name
+e1
+create event e2 on schedule every 10 hour do select 1;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+alter event e2 disable;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+alter event e2 rename to e3;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+drop event e2;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+drop event e1;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+unlock tables;
+lock table t1 write;
+show create event e1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e1 SYSTEM CREATE EVENT `e1` ON SCHEDULE EVERY 10 HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+select event_name from information_schema.events;
+event_name
+e1
+create event e2 on schedule every 10 hour do select 1;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+alter event e2 disable;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+alter event e2 rename to e3;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+drop event e2;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+drop event e1;
+ERROR HY000: Table 'event' was not locked with LOCK TABLES
+unlock tables;
+lock table t1 read, mysql.event read;
+show create event e1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e1 SYSTEM CREATE EVENT `e1` ON SCHEDULE EVERY 10 HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+select event_name from information_schema.events;
+event_name
+e1
+create event e2 on schedule every 10 hour do select 1;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+alter event e2 disable;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+alter event e2 rename to e3;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+drop event e2;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+drop event e1;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+unlock tables;
+lock table t1 write, mysql.event read;
+show create event e1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e1 SYSTEM CREATE EVENT `e1` ON SCHEDULE EVERY 10 HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+select event_name from information_schema.events;
+event_name
+e1
+create event e2 on schedule every 10 hour do select 1;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+alter event e2 disable;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+alter event e2 rename to e3;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+drop event e2;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+drop event e1;
+ERROR HY000: Table 'event' was locked with a READ lock and can't be updated
+unlock tables;
+lock table t1 read, mysql.event write;
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
+lock table t1 write, mysql.event write;
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
+lock table mysql.event write;
+show create event e1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e1 SYSTEM CREATE EVENT `e1` ON SCHEDULE EVERY 10 HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci
+select event_name from information_schema.events;
+event_name
+e1
+create event e2 on schedule every 10 hour do select 1;
+alter event e2 disable;
+alter event e2 rename to e3;
+drop event e3;
+drop event e1;
+unlock tables;
+Make sure we have left no events
+select event_name from information_schema.events;
+event_name
+
+Events in sub-statements, events and prelocking
+
+
+create event e1 on schedule every 10 hour do select 1;
+create function f1() returns int
+begin
+show create event e1;
+return 1;
+end|
+ERROR 0A000: Not allowed to return a result set from a function
+create trigger trg before insert on t1 for each row
+begin
+show create event e1;
+end|
+ERROR 0A000: Not allowed to return a result set from a trigger
+create function f1() returns int
+begin
+select event_name from information_schema.events;
+return 1;
+end|
+ERROR 0A000: Not allowed to return a result set from a function
+create trigger trg before insert on t1 for each row
+begin
+select event_name from information_schema.events;
+end|
+ERROR 0A000: Not allowed to return a result set from a trigger
+create function f1() returns int
+begin
+create event e2 on schedule every 10 hour do select 1;
+return 1;
+end|
+ERROR HY000: Recursion of EVENT DDL statements is forbidden when body is present
+create function f1() returns int
+begin
+alter event e1 rename to e2;
+return 1;
+end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+create function f1() returns int
+begin
+drop event e2;
+return 1;
+end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+----------------------------------------------------------------------
+create trigger trg before insert on t1 for each row
+begin
+set new.a= f1();
+end|
+create function f1() returns int
+begin
+call p1();
+return 0;
+end|
+create procedure p1()
+begin
+select event_name from information_schema.events;
+end|
+insert into t1 (a) values (1)|
+ERROR 0A000: Not allowed to return a result set from a trigger
+drop procedure p1|
+create procedure p1()
+begin
+show create event e1;
+end|
+insert into t1 (a) values (1)|
+ERROR 0A000: Not allowed to return a result set from a trigger
+drop procedure p1|
+create procedure p1()
+begin
+create temporary table tmp select event_name from information_schema.events;
+end|
+expected to work, since we redirect the output into a tmp table
+insert into t1 (a) values (1)|
+select * from tmp|
+event_name
+e1
+drop temporary table tmp|
+drop procedure p1|
+create procedure p1()
+begin
+alter event e1 rename to e2;
+end|
+insert into t1 (a) values (1)|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+drop procedure p1|
+create procedure p1()
+begin
+drop event e1;
+end|
+insert into t1 (a) values (1)|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+drop table t1|
+drop event e1|
+set names utf8;
+create event имя_события_в_кодировке_утф8_длиной_больше_чем_48 on schedule every 2 year do select 1;
+select EVENT_NAME from information_schema.events
+where event_schema='test';
+EVENT_NAME
+drop event имя_события_в_кодировке_утф8_длиной_больше_чем_48;
+create event
+очень_очень_очень_очень_очень_очень_очень_очень_длинная_строка_66
+on schedule every 2 year do select 1;
+ERROR 42000: Identifier name 'очень_очень_очень_очень_очень_очень_очень_очень_длинна' is too long
+create event event_35981 on schedule every 6 month on completion preserve
+disable
+do
+select 1;
+The following SELECTs should all give 1
+select count(*) from information_schema.events
+where event_schema = database() and event_name = 'event_35981' and
+on_completion = 'PRESERVE';
+count(*)
+1
+alter event event_35981 enable;
+select count(*) from information_schema.events
+where event_schema = database() and event_name = 'event_35981' and
+on_completion = 'PRESERVE';
+count(*)
+1
+alter event event_35981 on completion not preserve;
+select count(*) from information_schema.events
+where event_schema = database() and event_name = 'event_35981' and
+on_completion = 'NOT PRESERVE';
+count(*)
+1
+alter event event_35981 disable;
+select count(*) from information_schema.events
+where event_schema = database() and event_name = 'event_35981' and
+on_completion = 'NOT PRESERVE';
+count(*)
+1
+alter event event_35981 on completion preserve;
+select count(*) from information_schema.events
+where event_schema = database() and event_name = 'event_35981' and
+on_completion = 'PRESERVE';
+count(*)
+1
+drop event event_35981;
+create event event_35981 on schedule every 6 month disable
+do
+select 1;
+select count(*) from information_schema.events
+where event_schema = database() and event_name = 'event_35981' and
+on_completion = 'NOT PRESERVE';
+count(*)
+1
+drop event event_35981;
+create event event_35981 on schedule every 1 hour starts current_timestamp
+on completion not preserve
+do
+select 1;
+alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00'
+ ends '1999-01-02 00:00:00';
+ERROR HY000: Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+drop event event_35981;
+create event event_35981 on schedule every 1 hour starts current_timestamp
+on completion not preserve
+do
+select 1;
+alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00'
+ ends '1999-01-02 00:00:00' on completion preserve;
+Warnings:
+Note 1544 Event execution time is in the past. Event has been disabled
+drop event event_35981;
+create event event_35981 on schedule every 1 hour starts current_timestamp
+on completion preserve
+do
+select 1;
+alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00'
+ ends '1999-01-02 00:00:00';
+Warnings:
+Note 1544 Event execution time is in the past. Event has been disabled
+alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00'
+ ends '1999-01-02 00:00:00' on completion not preserve;
+ERROR HY000: Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00'
+ ends '1999-01-02 00:00:00' on completion preserve;
+Warnings:
+Note 1544 Event execution time is in the past. Event has been disabled
+drop event event_35981;
+drop database events_test;
diff --git a/mysql-test/r/events_bugs.result b/mysql-test/r/events_bugs.result
new file mode 100644
index 00000000000..50bfa97c59f
--- /dev/null
+++ b/mysql-test/r/events_bugs.result
@@ -0,0 +1,752 @@
+drop database if exists events_test;
+drop database if exists mysqltest_db1;
+drop database if exists mysqltest_db2;
+create database events_test;
+use events_test;
+set @concurrent_insert= @@global.concurrent_insert;
+set @@global.concurrent_insert = 0;
+select * from information_schema.global_variables where variable_name like 'event_scheduler';
+VARIABLE_NAME VARIABLE_VALUE
+EVENT_SCHEDULER ON
+SET GLOBAL event_scheduler = 'OFF';
+CREATE EVENT lower_case ON SCHEDULE EVERY 1 MINUTE DO SELECT 1;
+CREATE EVENT Lower_case ON SCHEDULE EVERY 2 MINUTE DO SELECT 2;
+ERROR HY000: Event 'Lower_case' already exists
+DROP EVENT Lower_case;
+SET NAMES cp1251;
+CREATE EVENT __1251 ON SCHEDULE EVERY 1 YEAR DO SELECT 100;
+CREATE EVENT __1251 ON SCHEDULE EVERY 2 YEAR DO SELECT 200;
+ERROR HY000: Event 'ДоЛеН_регистър_1251' already exists
+DROP EVENT __1251;
+SET NAMES utf8;
+CREATE EVENT долен_регистър_утф8 ON SCHEDULE EVERY 3 YEAR DO SELECT 300;
+CREATE EVENT ДОЛЕН_регистър_утф8 ON SCHEDULE EVERY 4 YEAR DO SELECT 400;
+ERROR HY000: Event 'ДОЛЕН_регистър_утф8' already exists
+DROP EVENT ДОЛЕН_регистър_утф8;
+SET NAMES latin1;
+set @a=3;
+CREATE PROCEDURE p_16 () CREATE EVENT e_16 ON SCHEDULE EVERY @a SECOND DO SET @a=5;
+ERROR HY000: Recursion of EVENT DDL statements is forbidden when body is present
+create event e_55 on schedule at 99990101000000 do drop table t;
+ERROR HY000: Incorrect AT value: '99990101000000'
+create event e_55 on schedule every 10 hour starts 99990101000000 do drop table t;
+ERROR HY000: Incorrect STARTS value: '99990101000000'
+create event e_55 on schedule every 10 minute ends 99990101000000 do drop table t;
+ERROR HY000: ENDS is either invalid or before STARTS
+create event e_55 on schedule at 10000101000000 do drop table t;
+ERROR HY000: Incorrect AT value: '10000101000000'
+create event e_55 on schedule at 20000101000000 do drop table t;
+Warnings:
+Note 1588 Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+show events;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+create event e_55 on schedule at 20200101000000 starts 10000101000000 do drop table t;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'starts 10000101000000 do drop table t' at line 1
+create event e_55 on schedule at 20200101000000 ends 10000101000000 do drop table t;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ends 10000101000000 do drop table t' at line 1
+create event e_55 on schedule at 20200101000000 starts 10000101000000 ends 10000101000000 do drop table t;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'starts 10000101000000 ends 10000101000000 do drop table t' at line 1
+create event e_55 on schedule every 10 hour starts 10000101000000 do drop table t;
+ERROR HY000: Incorrect STARTS value: '10000101000000'
+set global event_scheduler=off;
+delete from mysql.event;
+set global event_scheduler= on;
+set @old_sql_mode:=@@sql_mode;
+set sql_mode=ansi;
+select get_lock('test_bug16407', 60);
+get_lock('test_bug16407', 60)
+1
+create event e_16407 on schedule every 60 second do
+begin
+select get_lock('test_bug16407', 60);
+end|
+"Now if everything is fine the event has compiled and is locked"
+select /*1*/ user, host, db, info from information_schema.processlist
+where state = 'User lock' and info = 'select get_lock(\'test_bug16407\', 60)';
+user host db info
+root localhost events_test select get_lock('test_bug16407', 60)
+select release_lock('test_bug16407');
+release_lock('test_bug16407')
+1
+set global event_scheduler= off;
+select event_schema, event_name, sql_mode from information_schema.events order by event_schema, event_name;
+event_schema event_name sql_mode
+events_test e_16407 REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI
+"Let's check whether we change the sql_mode on ALTER EVENT"
+set sql_mode='traditional';
+alter event e_16407 do select 1;
+select event_schema, event_name, sql_mode from information_schema.events order by event_schema, event_name;
+event_schema event_name sql_mode
+events_test e_16407 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+drop event e_16407;
+set sql_mode="ansi";
+select get_lock('ee_16407_2', 60);
+get_lock('ee_16407_2', 60)
+1
+set global event_scheduler= 1;
+"Another sql_mode test"
+set sql_mode="traditional";
+create table events_smode_test(ev_name char(10), a date);
+"This should never insert something"
+create event ee_16407_2 on schedule every 60 second do
+begin
+select get_lock('ee_16407_2', 60) /*ee_16407_2*/;
+select release_lock('ee_16407_2');
+insert into events_test.events_smode_test values('ee_16407_2','1980-19-02');
+end|
+insert into events_test.events_smode_test values ('test','1980-19-02')|
+ERROR 22007: Incorrect date value: '1980-19-02' for column 'a' at row 1
+"This is ok"
+create event ee_16407_3 on schedule every 60 second do
+begin
+select get_lock('ee_16407_2', 60) /*ee_16407_3*/;
+select release_lock('ee_16407_2');
+insert into events_test.events_smode_test values ('ee_16407_3','1980-02-19');
+insert into events_test.events_smode_test values ('ee_16407_3','1980-02-29');
+end|
+set sql_mode=""|
+"This will insert rows but they will be truncated"
+create event ee_16407_4 on schedule every 60 second do
+begin
+select get_lock('ee_16407_2', 60) /*ee_16407_4*/;
+select release_lock('ee_16407_2');
+insert into events_test.events_smode_test values ('ee_16407_4','10-11-1956');
+end|
+select event_schema, event_name, sql_mode from information_schema.events order by event_schema, event_name;
+event_schema event_name sql_mode
+events_test ee_16407_2 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+events_test ee_16407_3 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+events_test ee_16407_4
+select /*2*/ user, host, db, info from information_schema.processlist
+where state = 'User lock' and info = 'select get_lock(\'ee_16407_2\', 60)';
+user host db info
+root localhost events_test select get_lock('ee_16407_2', 60)
+root localhost events_test select get_lock('ee_16407_2', 60)
+root localhost events_test select get_lock('ee_16407_2', 60)
+select release_lock('ee_16407_2');
+release_lock('ee_16407_2')
+1
+select /*3*/ user, host, db, info from information_schema.processlist
+where state = 'User lock' and info = 'select get_lock(\'ee_16407_2\', 60)';
+user host db info
+set global event_scheduler= off;
+select * from events_test.events_smode_test order by ev_name, a;
+ev_name a
+ee_16407_3 1980-02-19
+ee_16407_3 1980-02-29
+ee_16407_4 0000-00-00
+"OK, last check before we drop them"
+select event_schema, event_name, sql_mode from information_schema.events order by event_schema, event_name;
+event_schema event_name sql_mode
+events_test ee_16407_2 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+events_test ee_16407_3 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+events_test ee_16407_4
+drop event ee_16407_2;
+drop event ee_16407_3;
+drop event ee_16407_4;
+"And now one last test regarding sql_mode and call of SP from an event"
+delete from events_test.events_smode_test;
+set sql_mode='ansi';
+select get_lock('ee_16407_5', 60);
+get_lock('ee_16407_5', 60)
+1
+set global event_scheduler= on;
+set sql_mode='traditional';
+create procedure ee_16407_5_pendant() begin insert into events_test.events_smode_test values('ee_16407_5','2001-02-29'); end|
+create procedure ee_16407_6_pendant() begin insert into events_test.events_smode_test values('ee_16407_6','2004-02-29'); end|
+create event ee_16407_5 on schedule every 60 second do
+begin
+select get_lock('ee_16407_5', 60) /*ee_16407_5*/;
+select release_lock('ee_16407_5');
+call events_test.ee_16407_5_pendant();
+end|
+create event ee_16407_6 on schedule every 60 second do
+begin
+select get_lock('ee_16407_5', 60) /*ee_16407_6*/;
+select release_lock('ee_16407_5');
+call events_test.ee_16407_6_pendant();
+end|
+"Should have 2 locked processes"
+select /*4*/ user, host, db, info from information_schema.processlist
+where state = 'User lock' and info = 'select get_lock(\'ee_16407_5\', 60)';
+user host db info
+root localhost events_test select get_lock('ee_16407_5', 60)
+root localhost events_test select get_lock('ee_16407_5', 60)
+select release_lock('ee_16407_5');
+release_lock('ee_16407_5')
+1
+"Should have 0 processes locked"
+select /*5*/ user, host, db, info from information_schema.processlist
+where state = 'User lock' and info = 'select get_lock(\'ee_16407_5\', 60)';
+user host db info
+select * from events_test.events_smode_test order by ev_name, a;
+ev_name a
+ee_16407_6 2004-02-29
+"And here we check one more time before we drop the events"
+select event_schema, event_name, sql_mode from information_schema.events order by event_schema, event_name;
+event_schema event_name sql_mode
+events_test ee_16407_5 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+events_test ee_16407_6 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
+drop event ee_16407_5;
+drop event ee_16407_6;
+drop procedure ee_16407_5_pendant;
+drop procedure ee_16407_6_pendant;
+set global event_scheduler= off;
+drop table events_smode_test;
+set sql_mode=@old_sql_mode;
+set global event_scheduler=off;
+delete from mysql.user where User like 'mysqltest_%';
+delete from mysql.db where User like 'mysqltest_%';
+flush privileges;
+drop database if exists mysqltest_db1;
+create user mysqltest_user1@localhost;
+create database mysqltest_db1;
+grant event on events_test.* to mysqltest_user1@localhost;
+create event mysqltest_user1 on schedule every 10 second do select 42;
+alter event mysqltest_user1 rename to mysqltest_db1.mysqltest_user1;
+ERROR 42000: Access denied for user 'mysqltest_user1'@'localhost' to database 'mysqltest_db1'
+"Let's test now rename when there is no select DB"
+select database();
+database()
+NULL
+alter event events_test.mysqltest_user1 rename to mysqltest_user1;
+ERROR 3D000: No database selected
+select event_schema, event_name, definer, event_type, status from information_schema.events;
+event_schema event_name definer event_type status
+events_test mysqltest_user1 mysqltest_user1@localhost RECURRING ENABLED
+drop event events_test.mysqltest_user1;
+drop user mysqltest_user1@localhost;
+drop database mysqltest_db1;
+create event e_53 on schedule at (select s1 from ttx) do drop table t;
+ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
+create event e_53 on schedule every (select s1 from ttx) second do drop table t;
+ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
+create event e_53 on schedule every 5 second starts (select s1 from ttx) do drop table t;
+ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
+create event e_53 on schedule every 5 second ends (select s1 from ttx) do drop table t;
+ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
+drop event if exists e_16;
+drop procedure if exists p_16;
+create event e_16 on schedule every 1 second do set @a=5;
+create procedure p_16 () alter event e_16 on schedule every @a second;
+set @a = null;
+call p_16();
+ERROR HY000: Incorrect INTERVAL value: 'NULL'
+call p_16();
+ERROR HY000: Incorrect INTERVAL value: 'NULL'
+set @a= 6;
+call p_16();
+drop procedure p_16;
+drop event e_16;
+drop function if exists f22830;
+drop event if exists e22830;
+drop event if exists e22830_1;
+drop event if exists e22830_2;
+drop event if exists e22830_3;
+drop event if exists e22830_4;
+drop table if exists t1;
+drop table if exists t2;
+create table t1 (a int);
+insert into t1 values (2);
+create table t2 (a char(20));
+insert into t2 values ("e22830_1");
+create function f22830 () returns int return 5;
+select get_lock('ee_22830', 60);
+get_lock('ee_22830', 60)
+1
+set global event_scheduler=on;
+create procedure p22830_wait()
+begin
+select get_lock('ee_22830', 60);
+select release_lock('ee_22830');
+end|
+create event e22830 on schedule every f22830() second do
+begin
+call p22830_wait();
+select 123;
+end|
+ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
+create event e22830_1 on schedule every 1 hour do
+begin
+call p22830_wait();
+alter event e22830_1 on schedule every (select 8 from dual) hour;
+end|
+create event e22830_2 on schedule every 1 hour do
+begin
+call p22830_wait();
+alter event e22830_2 on schedule every (select 8 from t1) hour;
+end|
+create event e22830_3 on schedule every 1 hour do
+begin
+call p22830_wait();
+alter event e22830_3 on schedule every f22830() hour;
+end|
+create event e22830_4 on schedule every 1 hour do
+begin
+call p22830_wait();
+alter event e22830_4 on schedule every (select f22830() from dual) hour;
+end|
+"All events should be blocked in get_lock()"
+select event_name, event_definition, interval_value, interval_field from information_schema.events order by event_name;
+event_name event_definition interval_value interval_field
+e22830_1 begin
+call p22830_wait();
+alter event e22830_1 on schedule every (select 8 from dual) hour;
+end 1 HOUR
+e22830_2 begin
+call p22830_wait();
+alter event e22830_2 on schedule every (select 8 from t1) hour;
+end 1 HOUR
+e22830_3 begin
+call p22830_wait();
+alter event e22830_3 on schedule every f22830() hour;
+end 1 HOUR
+e22830_4 begin
+call p22830_wait();
+alter event e22830_4 on schedule every (select f22830() from dual) hour;
+end 1 HOUR
+select release_lock('ee_22830');
+release_lock('ee_22830')
+1
+set global event_scheduler=off;
+select event_name, event_definition, interval_value, interval_field from information_schema.events order by event_name;
+event_name event_definition interval_value interval_field
+e22830_1 begin
+call p22830_wait();
+alter event e22830_1 on schedule every (select 8 from dual) hour;
+end 8 HOUR
+e22830_2 begin
+call p22830_wait();
+alter event e22830_2 on schedule every (select 8 from t1) hour;
+end 1 HOUR
+e22830_3 begin
+call p22830_wait();
+alter event e22830_3 on schedule every f22830() hour;
+end 1 HOUR
+e22830_4 begin
+call p22830_wait();
+alter event e22830_4 on schedule every (select f22830() from dual) hour;
+end 1 HOUR
+drop procedure p22830_wait;
+drop function f22830;
+drop event (select a from t2);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(select a from t2)' at line 1
+drop event e22830_1;
+drop event e22830_2;
+drop event e22830_3;
+drop event e22830_4;
+drop table t1;
+drop table t2;
+DROP USER mysqltest_u1@localhost;
+CREATE USER mysqltest_u1@localhost;
+GRANT EVENT ON events_test.* TO mysqltest_u1@localhost;
+CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 root@localhost
+DROP EVENT e1;
+CREATE DEFINER=CURRENT_USER EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 root@localhost
+ALTER DEFINER=mysqltest_u1@localhost EVENT e1 ON SCHEDULE EVERY 1 HOUR;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 mysqltest_u1@localhost
+DROP EVENT e1;
+CREATE DEFINER=CURRENT_USER() EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 root@localhost
+DROP EVENT e1;
+CREATE DEFINER=mysqltest_u1@localhost EVENT e1 ON SCHEDULE EVERY 1 DAY DO
+SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 mysqltest_u1@localhost
+DROP EVENT e1;
+CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 mysqltest_u1@localhost
+DROP EVENT e1;
+CREATE DEFINER=CURRENT_USER EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 mysqltest_u1@localhost
+ALTER DEFINER=root@localhost EVENT e1 ON SCHEDULE EVERY 1 HOUR;
+ERROR 42000: Access denied; you need the SUPER privilege for this operation
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 mysqltest_u1@localhost
+DROP EVENT e1;
+CREATE DEFINER=CURRENT_USER() EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS;
+event_name definer
+e1 mysqltest_u1@localhost
+DROP EVENT e1;
+CREATE DEFINER=root@localhost EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+ERROR 42000: Access denied; you need the SUPER privilege for this operation
+DROP EVENT e1;
+ERROR HY000: Unknown event 'e1'
+DROP USER mysqltest_u1@localhost;
+SET GLOBAL EVENT_SCHEDULER= OFF;
+SET @save_time_zone= @@TIME_ZONE;
+SET TIME_ZONE= '+00:00';
+SET TIMESTAMP= UNIX_TIMESTAMP('2005-12-31 23:58:59');
+CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost +00:00 RECURRING NULL 1 DAY 2005-12-31 23:58:59 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SET TIME_ZONE= '-01:00';
+ALTER EVENT e1 ON SCHEDULE EVERY 1 DAY STARTS '2000-01-01 00:00:00';
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost -01:00 RECURRING NULL 1 DAY 2000-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SET TIME_ZONE= '+02:00';
+ALTER EVENT e1 ON SCHEDULE AT '2000-01-02 00:00:00'
+ ON COMPLETION PRESERVE DISABLE;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost +02:00 ONE TIME 2000-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SET TIME_ZONE= '-03:00';
+ALTER EVENT e1 ON SCHEDULE EVERY 1 DAY ENDS '2030-01-03 00:00:00'
+ ON COMPLETION PRESERVE DISABLE;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost -03:00 RECURRING NULL 1 DAY 2005-12-31 20:58:59 2030-01-03 00:00:00 DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SET TIME_ZONE= '+04:00';
+ALTER EVENT e1 DO SELECT 2;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost -03:00 RECURRING NULL 1 DAY 2005-12-31 20:58:59 2030-01-03 00:00:00 ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+DROP EVENT e1;
+SET TIME_ZONE='+05:00';
+CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO
+SELECT 1;
+SET TIMESTAMP= @@TIMESTAMP + 1;
+SET TIME_ZONE='-05:00';
+CREATE EVENT e2 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO
+SELECT 1;
+SET TIMESTAMP= @@TIMESTAMP + 1;
+SET TIME_ZONE='+00:00';
+CREATE EVENT e3 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO
+SELECT 1;
+SELECT * FROM INFORMATION_SCHEMA.EVENTS ORDER BY event_name;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL events_test e1 root@localhost +05:00 SQL SELECT 1 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED NOT PRESERVE 2005-12-31 23:58:59 2005-12-31 23:58:59 NULL 1 latin1 latin1_swedish_ci latin1_swedish_ci
+NULL events_test e2 root@localhost -05:00 SQL SELECT 1 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED NOT PRESERVE 2005-12-31 23:59:00 2005-12-31 23:59:00 NULL 1 latin1 latin1_swedish_ci latin1_swedish_ci
+NULL events_test e3 root@localhost +00:00 SQL SELECT 1 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED NOT PRESERVE 2005-12-31 23:59:01 2005-12-31 23:59:01 NULL 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost +05:00 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e2 root@localhost -05:00 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e3 root@localhost +00:00 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW CREATE EVENT e1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e1 +05:00 CREATE EVENT `e1` ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO SELECT 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW CREATE EVENT e2;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e2 -05:00 CREATE EVENT `e2` ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO SELECT 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW CREATE EVENT e3;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+e3 +00:00 CREATE EVENT `e3` ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO SELECT 1 latin1 latin1_swedish_ci latin1_swedish_ci
+The following should fail, and nothing should be altered.
+ALTER EVENT e1 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00';
+ERROR HY000: Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+ALTER EVENT e1 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00' DISABLE;
+ERROR HY000: Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+The following should give warnings, and nothing should be created.
+CREATE EVENT e4 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00'
+DO
+SELECT 1;
+Warnings:
+Note 1588 Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+CREATE EVENT e4 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00' DISABLE
+DO
+SELECT 1;
+Warnings:
+Note 1588 Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+CREATE EVENT e4 ON SCHEDULE AT '1999-01-01 00:00:00' DO
+SELECT 1;
+Warnings:
+Note 1588 Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+CREATE EVENT e4 ON SCHEDULE AT '1999-01-01 00:00:00' DISABLE
+DO
+SELECT 1;
+Warnings:
+Note 1588 Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation.
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost +05:00 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e2 root@localhost -05:00 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e3 root@localhost +00:00 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+The following should succeed giving a warning.
+ALTER EVENT e1 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00' ON COMPLETION PRESERVE;
+Warnings:
+Note 1544 Event execution time is in the past. Event has been disabled
+CREATE EVENT e4 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00' ON COMPLETION PRESERVE
+DO
+SELECT 1;
+Warnings:
+Note 1544 Event execution time is in the past. Event has been disabled
+CREATE EVENT e5 ON SCHEDULE AT '1999-01-01 00:00:00'
+ ON COMPLETION PRESERVE
+DO
+SELECT 1;
+Warnings:
+Note 1544 Event execution time is in the past. Event has been disabled
+The following should succeed without warnings.
+ALTER EVENT e2 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00';
+ALTER EVENT e3 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE;
+CREATE EVENT e6 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00' DO
+SELECT 1;
+CREATE EVENT e7 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'
+ ENDS '1999-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE
+DO
+SELECT 1;
+CREATE EVENT e8 ON SCHEDULE AT '1999-01-01 00:00:00'
+ ON COMPLETION PRESERVE DISABLE
+DO
+SELECT 1;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test e1 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 1999-01-02 00:00:00 DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e2 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e3 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 1999-01-02 00:00:00 DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e4 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 1999-01-02 00:00:00 DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e5 root@localhost +00:00 ONE TIME 1999-01-01 00:00:00 NULL NULL NULL NULL DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e6 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e7 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 1999-01-02 00:00:00 DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test e8 root@localhost +00:00 ONE TIME 1999-01-01 00:00:00 NULL NULL NULL NULL DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+DROP EVENT e8;
+DROP EVENT e7;
+DROP EVENT e6;
+DROP EVENT e5;
+DROP EVENT e4;
+DROP EVENT e3;
+DROP EVENT e2;
+DROP EVENT e1;
+SET TIME_ZONE=@save_time_zone;
+drop event if exists new_event;
+CREATE EVENT new_event ON SCHEDULE EVERY 0 SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY (SELECT 0) SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY "abcdef" SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY "0abcdef" SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY "a1bcdef" SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY (SELECT "abcdef" UNION SELECT "abcdef") SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY (SELECT "0abcdef") SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE EVERY (SELECT "a1bcdef") SECOND DO SELECT 1;
+ERROR HY000: INTERVAL is either not positive or too big
+CREATE EVENT new_event ON SCHEDULE AT "every day" DO SELECT 1;
+ERROR HY000: Incorrect AT value: 'every day'
+CREATE EVENT new_event ON SCHEDULE AT "0every day" DO SELECT 1;
+ERROR HY000: Incorrect AT value: '0every day'
+CREATE EVENT new_event ON SCHEDULE AT (SELECT "every day") DO SELECT 1;
+ERROR HY000: Incorrect AT value: 'every day'
+CREATE EVENT new_event ON SCHEDULE AT NOW() STARTS NOW() DO SELECT 1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STARTS NOW() DO SELECT 1' at line 1
+CREATE EVENT new_event ON SCHEDULE AT NOW() ENDS NOW() DO SELECT 1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ENDS NOW() DO SELECT 1' at line 1
+CREATE EVENT new_event ON SCHEDULE AT NOW() STARTS NOW() ENDS NOW() DO SELECT 1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STARTS NOW() ENDS NOW() DO SELECT 1' at line 1
+USE test;
+SHOW GRANTS FOR CURRENT_USER;
+Grants for root@localhost
+GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
+SET GLOBAL event_scheduler = ON;
+CREATE TABLE events_test.event_log
+(id int KEY AUTO_INCREMENT, ev_nm char(40), ev_cnt int, ev_tm timestamp)
+ENGINE=MyISAM;
+SET autocommit=0;
+CREATE USER evtest1@localhost;
+SET PASSWORD FOR evtest1@localhost = password('ev1');
+REVOKE ALL PRIVILEGES, GRANT OPTION FROM evtest1@localhost;
+GRANT create, insert, select, event ON events_test.* TO evtest1@localhost;
+GRANT select,insert ON test.* TO evtest1@localhost;
+SHOW GRANTS FOR evtest1@localhost;
+Grants for evtest1@localhost
+GRANT USAGE ON *.* TO 'evtest1'@'localhost' IDENTIFIED BY PASSWORD '*3170F3644E31580C25DE4A08F4C07CC9A2D40C32'
+GRANT SELECT, INSERT ON `test`.* TO 'evtest1'@'localhost'
+GRANT SELECT, INSERT, CREATE, EVENT ON `events_test`.* TO 'evtest1'@'localhost'
+connection e1;
+CREATE EVENT ev_sched_1823 ON SCHEDULE EVERY 2 SECOND
+DO BEGIN
+SET AUTOCOMMIT = 0;
+SET @evname = 'ev_sched_1823';
+SET @cnt = 0;
+SELECT COUNT(*) INTO @cnt FROM events_test.event_log WHERE ev_nm = @evname;
+IF @cnt < 6 THEN
+INSERT INTO events_test.event_log VALUES (NULL,@evname,@cnt+1,current_timestamp());
+COMMIT;
+END IF;
+SELECT COUNT(*) INTO @cnt FROM events_test.event_log WHERE ev_nm = @evname;
+IF @cnt < 6 THEN
+INSERT INTO events_test.event_log VALUES (NULL,@evname,@cnt+1,current_timestamp());
+ROLLBACK;
+END IF;
+END;|
+Sleep till the first INSERT into events_test.event_log occured
+SELECT COUNT(*) > 0 AS "Expect 1" FROM events_test.event_log;
+Expect 1
+1
+connection default;
+DROP USER evtest1@localhost;
+Sleep 4 seconds
+SELECT COUNT(*) INTO @row_cnt FROM events_test.event_log;
+Sleep 4 seconds
+SELECT COUNT(*) > @row_cnt AS "Expect 0" FROM events_test.event_log;
+Expect 0
+0
+DROP EVENT events_test.ev_sched_1823;
+DROP TABLE events_test.event_log;
+SET GLOBAL event_scheduler = OFF;
+SET GLOBAL event_scheduler= ON;
+CREATE EVENT bug28641 ON SCHEDULE AT '2038.01.18 03:00:00'
+DO BEGIN
+SELECT 1;
+END;|
+SET GLOBAL event_scheduler= OFF;
+DROP EVENT bug28641;
+
+#####################################################################
+#
+# BUG#31111: --read-only crashes MySQL (events fail to load).
+#
+#####################################################################
+
+DROP USER mysqltest_u1@localhost;
+DROP EVENT IF EXISTS e1;
+DROP EVENT IF EXISTS e2;
+
+GRANT EVENT ON *.* TO mysqltest_u1@localhost;
+
+SET GLOBAL READ_ONLY = 1;
+
+#
+# Connection: u1_con (mysqltest_u1@localhost/events_test).
+#
+
+CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1;
+ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+
+ALTER EVENT e1 COMMENT 'comment';
+ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+
+DROP EVENT e1;
+ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+
+#
+# Connection: root_con (root@localhost/events_test).
+#
+
+CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1;
+
+ALTER EVENT e1 COMMENT 'comment';
+
+DROP EVENT e1;
+
+SET GLOBAL READ_ONLY = 0;
+
+#
+# Connection: u1_con (mysqltest_u1@localhost/test).
+#
+
+CREATE EVENT e1 ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 SECOND DO SET @a = 1;
+CREATE EVENT e2 ON SCHEDULE EVERY 1 SECOND DO SET @a = 1;
+
+SELECT
+event_name,
+last_executed IS NULL,
+definer
+FROM INFORMATION_SCHEMA.EVENTS
+WHERE event_schema = 'events_test';
+event_name last_executed IS NULL definer
+e1 1 mysqltest_u1@localhost
+e2 1 mysqltest_u1@localhost
+
+#
+# Connection: root_con (root@localhost/events_test).
+#
+
+SET GLOBAL READ_ONLY = 1;
+
+SET GLOBAL EVENT_SCHEDULER = ON;
+
+# Waiting for the event scheduler to execute and drop event e1...
+
+# Waiting for the event scheduler to execute and update event e2...
+
+SET GLOBAL EVENT_SCHEDULER = OFF;
+
+SELECT
+event_name,
+last_executed IS NULL,
+definer
+FROM INFORMATION_SCHEMA.EVENTS
+WHERE event_schema = 'events_test';
+event_name last_executed IS NULL definer
+e2 0 mysqltest_u1@localhost
+
+DROP EVENT e1;
+ERROR HY000: Unknown event 'e1'
+
+# Cleanup.
+
+DROP EVENT e2;
+
+SET GLOBAL READ_ONLY = 0;
+
+#
+# Connection: default
+#
+
+DROP USER mysqltest_u1@localhost;
+
+#####################################################################
+#
+# End of BUG#31111.
+#
+#####################################################################
+
+drop procedure if exists p;
+set @old_mode= @@sql_mode;
+set @@sql_mode= pow(2,32)-1;
+create event e1 on schedule every 1 day do select 1;
+select @@sql_mode;
+@@sql_mode
+REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,?,ONLY_FULL_GROUP_BY,NO_UNSIGNED_SUBTRACTION,NO_DIR_IN_CREATE,POSTGRESQL,ORACLE,MSSQL,DB2,MAXDB,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,MYSQL323,MYSQL40,ANSI,NO_AUTO_VALUE_ON_ZERO,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ALLOW_INVALID_DATES,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,HIGH_NOT_PRECEDENCE,NO_ENGINE_SUBSTITUTION,PAD_CHAR_TO_FULL_LENGTH
+set @@sql_mode= @old_mode;
+select replace(@full_mode, '?', 'NOT_USED') into @full_mode;
+select replace(@full_mode, 'ALLOW_INVALID_DATES', 'INVALID_DATES') into @full_mode;
+select name from mysql.event where name = 'p' and sql_mode = @full_mode;
+name
+drop event e1;
+SET @old_server_id = @@GLOBAL.server_id;
+SET GLOBAL server_id = (1 << 32) - 1;
+SELECT @@GLOBAL.server_id;
+@@GLOBAL.server_id
+4294967295
+CREATE EVENT ev1 ON SCHEDULE EVERY 1 DAY DO SELECT 1;
+SELECT event_name, originator FROM INFORMATION_SCHEMA.EVENTS;
+event_name originator
+ev1 4294967295
+DROP EVENT ev1;
+SET GLOBAL server_id = @old_server_id;
+DROP DATABASE events_test;
+SET GLOBAL event_scheduler= 'ON';
+SET @@global.concurrent_insert= @concurrent_insert;
diff --git a/mysql-test/r/events_embedded.result b/mysql-test/r/events_embedded.result
new file mode 100644
index 00000000000..1a02188f2df
--- /dev/null
+++ b/mysql-test/r/events_embedded.result
@@ -0,0 +1,2 @@
+set global event_scheduler=ON;
+ERROR HY000: Unknown system variable 'event_scheduler'
diff --git a/mysql-test/r/events_grant.result b/mysql-test/r/events_grant.result
new file mode 100644
index 00000000000..1aadf7e11f4
--- /dev/null
+++ b/mysql-test/r/events_grant.result
@@ -0,0 +1,121 @@
+CREATE DATABASE IF NOT EXISTS events_test;
+use events_test;
+CREATE EVENT one_event ON SCHEDULE EVERY 10 SECOND DO SELECT 123;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test one_event root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE
+CREATE DATABASE events_test2;
+CREATE USER ev_test@localhost;
+GRANT ALL ON events_test.* to ev_test@localhost;
+GRANT ALL ON events_test2.* to ev_test@localhost;
+REVOKE EVENT ON events_test2.* FROM ev_test@localhost;
+select "NEW CONNECTION";
+NEW CONNECTION
+NEW CONNECTION
+SELECT USER(), DATABASE();
+USER() DATABASE()
+ev_test@localhost events_test2
+SHOW GRANTS;
+Grants for ev_test@localhost
+GRANT USAGE ON *.* TO 'ev_test'@'localhost'
+GRANT ALL PRIVILEGES ON `events_test`.* TO 'ev_test'@'localhost'
+GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, TRIGGER ON `events_test2`.* TO 'ev_test'@'localhost'
+"Here comes an error:";
+SHOW EVENTS;
+ERROR 42000: Access denied for user 'ev_test'@'localhost' to database 'events_test2'
+USE events_test;
+"We should see one event";
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test one_event root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SELECT CONCAT("Let's create some new events from the name of ", USER());
+CONCAT("Let's create some new events from the name of ", USER())
+Let's create some new events from the name of ev_test@localhost
+CREATE EVENT one_event ON SCHEDULE EVERY 20 SECOND DO SELECT 123;
+ERROR HY000: Event 'one_event' already exists
+CREATE EVENT two_event ON SCHEDULE EVERY 20 SECOND ON COMPLETION NOT PRESERVE COMMENT "two event" DO SELECT 123;
+CREATE EVENT three_event ON SCHEDULE EVERY 20 SECOND ON COMPLETION PRESERVE COMMENT "three event" DO SELECT 123;
+"Now we should see 3 events:";
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test one_event root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test three_event ev_test@localhost SYSTEM RECURRING NULL 20 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test two_event ev_test@localhost SYSTEM RECURRING NULL 20 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+"This should show us only 2 events:";
+SHOW EVENTS LIKE 't%event';
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+events_test three_event ev_test@localhost SYSTEM RECURRING NULL 20 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+events_test two_event ev_test@localhost SYSTEM RECURRING NULL 20 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+"This should show us no events:";
+SHOW EVENTS FROM test LIKE '%';
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+GRANT EVENT ON events_test2.* TO ev_test@localhost;
+USE events_test2;
+CREATE EVENT four_event ON SCHEDULE EVERY 20 SECOND DO SELECT 42;
+USE events_test;
+"We should see 4 events : one_event, two_event, three_event & four_event"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE
+NULL events_test three_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED PRESERVE three event
+NULL events_test two_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE two event
+NULL events_test2 four_event ev_test@localhost SQL SELECT 42 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE
+DROP DATABASE events_test2;
+"We should see 3 events : one_event, two_event, three_event"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE
+NULL events_test three_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED PRESERVE three event
+NULL events_test two_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE two event
+CREATE DATABASE events_test2;
+USE events_test2;
+CREATE EVENT five_event ON SCHEDULE EVERY 20 SECOND DO SELECT 42;
+"Should see 4 events - one, two, three & five"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE
+NULL events_test three_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED PRESERVE three event
+NULL events_test two_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE two event
+NULL events_test2 five_event root@localhost SQL SELECT 42 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE
+REVOKE EVENT ON events_test2.* FROM ev_test@localhost;
+USE test;
+"Should see 3 events - one, two & three"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE
+NULL events_test three_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED PRESERVE three event
+NULL events_test two_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE two event
+"Let's test ALTER EVENT which changes the definer"
+USE events_test;
+ALTER EVENT one_event ON SCHEDULE EVERY 10 SECOND;
+"The definer should be ev_test@localhost"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event';
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event ev_test@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE
+USE events_test;
+ALTER EVENT one_event COMMENT "comment";
+"The definer should be root@localhost"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event';
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE comment
+ALTER EVENT one_event DO SELECT 12;
+"The definer should be ev_test@localhost"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event';
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test one_event ev_test@localhost SQL SELECT 12 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE comment
+"make the definer again root@localhost"
+ALTER EVENT one_event COMMENT "new comment";
+"test DROP by another user"
+DROP EVENT one_event;
+"One event should not be there"
+SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME;
+EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
+NULL events_test three_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED PRESERVE three event
+NULL events_test two_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE two event
+NULL events_test2 five_event root@localhost SQL SELECT 42 RECURRING NULL 20 SECOND ENABLED NOT PRESERVE
+DROP USER ev_test@localhost;
+DROP DATABASE events_test2;
+DROP DATABASE events_test;
diff --git a/mysql-test/r/events_logs_tests.result b/mysql-test/r/events_logs_tests.result
new file mode 100644
index 00000000000..b7faf56f466
--- /dev/null
+++ b/mysql-test/r/events_logs_tests.result
@@ -0,0 +1,72 @@
+drop database if exists events_test;
+create database if not exists events_test;
+use events_test;
+
+We use procedure here because its statements won't be
+logged into the general log. If we had used normal select
+that are logged in different ways depending on whether the
+test suite is run in normal mode or with --ps-protocol
+
+create procedure select_general_log()
+begin
+select user_host, argument from mysql.general_log
+where argument like '%events_logs_test%';
+end|
+
+Check that general query log works, but sub-statements
+of the stored procedure do not leave traces in it.
+
+truncate mysql.general_log;
+select 'events_logs_tests' as outside_event;
+outside_event
+events_logs_tests
+call select_general_log();
+user_host argument
+USER_HOST select 'events_logs_tests' as outside_event
+
+Check that unlike sub-statements of stored procedures,
+sub-statements of events are present in the general log.
+
+set global event_scheduler=on;
+truncate mysql.general_log;
+create event ev_log_general on schedule at now() on completion not preserve do select 'events_logs_test' as inside_event;
+call select_general_log();
+user_host argument
+USER_HOST create event ev_log_general on schedule at now() on completion not preserve do select 'events_logs_test' as inside_event
+USER_HOST select 'events_logs_test' as inside_event
+
+Check slow query log
+
+Ensure that slow logging is on
+show variables like 'log_slow_queries';
+Variable_name Value
+log_slow_queries ON
+
+Demonstrate that session value has no effect
+
+set @@session.long_query_time=1;
+set @@global.long_query_time=300;
+truncate mysql.slow_log;
+create event ev_log_general on schedule at now() on completion not preserve
+do select 'events_logs_test' as inside_event, sleep(1.5);
+
+Nothing should be logged
+
+select user_host, db, sql_text from mysql.slow_log
+where sql_text like 'select \'events_logs_test\'%';
+user_host db sql_text
+set @@global.long_query_time=1;
+truncate mysql.slow_log;
+create event ev_log_general on schedule at now() on completion not preserve
+do select 'events_logs_test' as inside_event, sleep(1.5);
+
+Event sub-statement should be logged.
+
+select user_host, db, sql_text from mysql.slow_log
+where sql_text like 'select \'events_logs_test\'%';
+user_host db sql_text
+USER_HOST events_test select 'events_logs_test' as inside_event, sleep(1.5)
+drop database events_test;
+set global event_scheduler=off;
+set @@global.long_query_time=default;
+set @@session.long_query_time=default;
diff --git a/mysql-test/r/events_microsec.result b/mysql-test/r/events_microsec.result
new file mode 100644
index 00000000000..b96bd551511
--- /dev/null
+++ b/mysql-test/r/events_microsec.result
@@ -0,0 +1,13 @@
+create database if not exists events_test;
+use events_test;
+CREATE EVENT micro_test ON SCHEDULE EVERY 100 MICROSECOND DO SELECT 1;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+CREATE EVENT micro_test ON SCHEDULE EVERY 100 DAY_MICROSECOND DO SELECT 1;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+CREATE EVENT micro_test ON SCHEDULE EVERY 100 HOUR_MICROSECOND DO SELECT 1;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+CREATE EVENT micro_test ON SCHEDULE EVERY 100 MINUTE_MICROSECOND DO SELECT 1;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+CREATE EVENT micro_test ON SCHEDULE EVERY 100 SECOND_MICROSECOND DO SELECT 1;
+ERROR 42000: This version of MySQL doesn't yet support 'MICROSECOND'
+drop database events_test;
diff --git a/mysql-test/r/events_restart.result b/mysql-test/r/events_restart.result
new file mode 100644
index 00000000000..4db61d357ce
--- /dev/null
+++ b/mysql-test/r/events_restart.result
@@ -0,0 +1,64 @@
+set global event_scheduler=off;
+drop database if exists events_test;
+create database events_test;
+use events_test;
+create table execution_log(name char(10));
+create event abc1 on schedule every 1 second do
+insert into execution_log value('abc1');
+create event abc2 on schedule every 1 second do
+insert into execution_log value('abc2');
+create event abc3 on schedule every 1 second do
+insert into execution_log value('abc3');
+create table event_like like mysql.event;
+insert into event_like select * from mysql.event;
+alter table mysql.event
+change column body body longtext character set utf8 collate utf8_bin;
+"Now we restart the server"
+use events_test;
+select @@event_scheduler;
+@@event_scheduler
+DISABLED
+show events;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+select event_name from information_schema.events;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+show create event intact_check;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+drop event no_such_event;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+create event intact_check_1 on schedule every 5 hour do select 5;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+alter event intact_check_1 on schedule every 8 hour do select 8;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+alter event intact_check_1 rename to intact_check_2;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+drop event intact_check_1;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+drop event intact_check_2;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+drop event intact_check;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+set global event_scheduler=on;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+set global event_scheduler=off;
+ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start
+show variables like 'event_scheduler';
+Variable_name Value
+event_scheduler DISABLED
+Make sure that we still can create and drop databases,
+and no warnings are produced.
+drop database if exists mysqltest_database_not_exists;
+Warnings:
+Note 1008 Can't drop database 'mysqltest_database_not_exists'; database doesn't exist
+create database mysqltest_db1;
+drop database mysqltest_db1;
+Restore the original mysql.event table
+drop table mysql.event;
+rename table event_like to mysql.event;
+Now let's restart the server again
+use events_test;
+select @@event_scheduler;
+@@event_scheduler
+ON
+drop table execution_log;
+drop database events_test;
diff --git a/mysql-test/r/events_scheduling.result b/mysql-test/r/events_scheduling.result
new file mode 100644
index 00000000000..7dfd10a53f8
--- /dev/null
+++ b/mysql-test/r/events_scheduling.result
@@ -0,0 +1,86 @@
+CREATE DATABASE IF NOT EXISTS events_test;
+USE events_test;
+SET @event_scheduler=@@global.event_scheduler;
+SET GLOBAL event_scheduler=OFF;
+Try again to make sure it's allowed
+SET GLOBAL event_scheduler=OFF;
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler OFF
+SET GLOBAL event_scheduler=1;
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler ON
+SET GLOBAL event_scheduler=0;
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler OFF
+SET GLOBAL event_scheduler=ON;
+Try again to make sure it's allowed
+SET GLOBAL event_scheduler=ON;
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler ON
+SET GLOBAL event_scheduler=DISABLED;
+ERROR 42000: Variable 'event_scheduler' can't be set to the value of 'DISABLED'
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler ON
+SET GLOBAL event_scheduler=-1;
+ERROR 42000: Variable 'event_scheduler' can't be set to the value of '-1'
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler ON
+SET GLOBAL event_scheduler=2;
+ERROR 42000: Variable 'event_scheduler' can't be set to the value of '2'
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler ON
+SET GLOBAL event_scheduler=5;
+ERROR 42000: Variable 'event_scheduler' can't be set to the value of '5'
+SHOW VARIABLES LIKE 'event_scheduler';
+Variable_name Value
+event_scheduler ON
+CREATE TABLE table_1(a int);
+CREATE TABLE table_2(a int);
+CREATE TABLE table_3(a int);
+CREATE TABLE table_4(a int);
+SET GLOBAL event_scheduler=ON;
+CREATE EVENT event_1 ON SCHEDULE EVERY 2 SECOND
+DO
+INSERT INTO table_1 VALUES (1);
+CREATE EVENT event_2 ON SCHEDULE EVERY 1 SECOND
+ENDS NOW() + INTERVAL 6 SECOND
+ON COMPLETION PRESERVE
+DO
+INSERT INTO table_2 VALUES (1);
+CREATE EVENT event_3 ON SCHEDULE EVERY 2 SECOND ENDS NOW() + INTERVAL 1 SECOND
+ON COMPLETION NOT PRESERVE
+DO
+INSERT INTO table_3 VALUES (1);
+CREATE EVENT event_4 ON SCHEDULE EVERY 1 SECOND ENDS NOW() + INTERVAL 1 SECOND
+ON COMPLETION PRESERVE
+DO
+INSERT INTO table_4 VALUES (1);
+SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR')
+FROM INFORMATION_SCHEMA.EVENTS
+WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='event_2';
+IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR')
+OK
+"Already dropped because ended. Therefore an error."
+DROP EVENT event_3;
+ERROR HY000: Unknown event 'event_3'
+DROP EVENT event_1;
+"Should be preserved"
+SELECT EVENT_NAME, STATUS FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_NAME;
+EVENT_NAME STATUS
+event_2 DISABLED
+event_4 DISABLED
+DROP EVENT event_2;
+DROP EVENT event_4;
+DROP TABLE table_1;
+DROP TABLE table_2;
+DROP TABLE table_3;
+DROP TABLE table_4;
+DROP DATABASE events_test;
+SET GLOBAL event_scheduler=@event_scheduler;
diff --git a/mysql-test/r/events_stress.result b/mysql-test/r/events_stress.result
new file mode 100644
index 00000000000..9b9f3caaff6
--- /dev/null
+++ b/mysql-test/r/events_stress.result
@@ -0,0 +1,66 @@
+CREATE DATABASE IF NOT EXISTS events_test;
+CREATE DATABASE events_conn1_test2;
+CREATE TABLE events_test.fill_it1(test_name varchar(20), occur datetime);
+CREATE TABLE events_test.fill_it2(test_name varchar(20), occur datetime);
+CREATE TABLE events_test.fill_it3(test_name varchar(20), occur datetime);
+CREATE USER event_user2@localhost;
+CREATE DATABASE events_conn2_db;
+GRANT ALL ON *.* TO event_user2@localhost;
+CREATE USER event_user3@localhost;
+CREATE DATABASE events_conn3_db;
+GRANT ALL ON *.* TO event_user3@localhost;
+"In the second connection we create some events which won't be dropped till the end"
+"In the second connection we create some events which won't be dropped till the end"
+USE events_conn1_test2;
+CREATE EVENT ev_drop1 ON SCHEDULE EVERY 10 MINUTE DISABLE DO SELECT 1;
+CREATE EVENT ev_drop2 ON SCHEDULE EVERY 10 MINUTE DISABLE DO SELECT 1;
+CREATE EVENT ev_drop3 ON SCHEDULE EVERY 10 MINUTE DISABLE DO SELECT 1;
+USE events_test;
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS;
+COUNT(*)
+103
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_conn1_test2';
+COUNT(*)
+3
+DROP DATABASE events_conn1_test2;
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_conn1_test2';
+COUNT(*)
+0
+"Now testing stability - dropping db -> events while they are running"
+CREATE DATABASE events_conn1_test2;
+USE events_conn1_test2;
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_conn1_test2';
+COUNT(*)
+50
+SET GLOBAL event_scheduler=on;
+DROP DATABASE events_conn1_test2;
+SET GLOBAL event_scheduler=off;
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_conn1_test2';
+COUNT(*)
+0
+CREATE DATABASE events_conn1_test3;
+USE events_conn1_test3;
+SET GLOBAL event_scheduler=on;
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_conn1_test3';
+COUNT(*)
+50
+CREATE DATABASE events_conn1_test4;
+USE events_conn1_test4;
+CREATE DATABASE events_conn1_test2;
+USE events_conn1_test2;
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_conn1_test2';
+COUNT(*)
+50
+DROP DATABASE events_conn2_db;
+DROP DATABASE events_conn3_db;
+DROP DATABASE events_conn1_test2;
+DROP DATABASE events_conn1_test3;
+SET GLOBAL event_scheduler=off;
+DROP DATABASE events_conn1_test4;
+SET GLOBAL event_scheduler=on;
+USE events_test;
+DROP TABLE fill_it1;
+DROP TABLE fill_it2;
+DROP TABLE fill_it3;
+DROP DATABASE events_test;
+SET GLOBAL event_scheduler=off;
diff --git a/mysql-test/r/events_time_zone.result b/mysql-test/r/events_time_zone.result
new file mode 100644
index 00000000000..155a9d155af
--- /dev/null
+++ b/mysql-test/r/events_time_zone.result
@@ -0,0 +1,152 @@
+DROP DATABASE IF EXISTS mysqltest_db1;
+CREATE DATABASE mysqltest_db1;
+USE mysqltest_db1;
+SET GLOBAL EVENT_SCHEDULER= OFF;
+SET @save_time_zone= @@TIME_ZONE;
+CREATE TABLE t_step (step INT);
+INSERT INTO t_step VALUES (@step);
+CREATE FUNCTION round_to_step(i INT, n INT) RETURNS INT
+BEGIN
+DECLARE step INT;
+SELECT * INTO step FROM t_step;
+# We add 0.1 as a protection from inexact division.
+RETURN FLOOR((i % (step * n) + 0.1) / step);
+END//
+SET @step3= @step * 3;
+SET @step6= @step * 6;
+SET @unix_time= UNIX_TIMESTAMP() - 1;
+SET @unix_time= @unix_time - @unix_time % @step6;
+INSERT INTO mysql.time_zone VALUES (NULL, 'N');
+SET @tzid= LAST_INSERT_ID();
+INSERT INTO mysql.time_zone_transition_type
+VALUES (@tzid, 0, 0, 0, 'b16420_0');
+INSERT INTO mysql.time_zone_transition_type
+VALUES (@tzid, 1, @step3 - @step, 1, 'b16420_1');
+INSERT INTO mysql.time_zone_name VALUES ('<TZ_NAME_1>', @tzid);
+CREATE TABLE t1 (count INT, unix_time INT, local_time INT, comment CHAR(80));
+CREATE TABLE t2 (count INT);
+INSERT INTO t2 VALUES (1);
+CREATE FUNCTION f1(comment CHAR(80)) RETURNS INT
+BEGIN
+DECLARE orig_tz CHAR(64);
+DECLARE unix_time INT;
+DECLARE local_now DATETIME;
+DECLARE utc_now DATETIME;
+DECLARE local_time INT;
+SET unix_time= UNIX_TIMESTAMP();
+SET local_now= FROM_UNIXTIME(unix_time);
+SET orig_tz= @@TIME_ZONE;
+SET TIME_ZONE = '+00:00';
+SET utc_now= FROM_UNIXTIME(unix_time);
+SET TIME_ZONE= orig_tz;
+SET local_time = unix_time + TIMESTAMPDIFF(SECOND, utc_now, local_now);
+SET unix_time= round_to_step(unix_time, 6);
+SET local_time= round_to_step(local_time, 6);
+INSERT INTO t1 VALUES ((SELECT count FROM t2),
+unix_time, local_time, comment);
+RETURN 0;
+END//
+SET TIME_ZONE= '+00:00';
+CREATE EVENT e1 ON SCHEDULE EVERY @step SECOND
+STARTS FROM_UNIXTIME(@unix_time) DO SELECT f1("<e1>");
+SET TIME_ZONE= '<TZ_NAME_1>';
+CREATE EVENT e2 ON SCHEDULE EVERY @step SECOND
+STARTS FROM_UNIXTIME(@unix_time) DO SELECT f1("<e2>");
+SET GLOBAL EVENT_SCHEDULER= ON;
+SELECT SLEEP(@step / 2);
+SLEEP(@step / 2)
+0
+SET GLOBAL EVENT_SCHEDULER= OFF;
+SELECT * FROM t1 ORDER BY count, comment;
+count unix_time local_time comment
+1 1 1 <e1>
+1 1 3 <e2>
+1 1 3 e2 should be executed
+2 2 2 <e1>
+2 2 4 <e2>
+2 2 4 e2 should be executed
+3 3 3 <e1>
+3 3 3 Second pass after backward -2 step shift, e2 should not be executed
+4 4 4 <e1>
+4 4 4 Second pass after backward -2 step shift, e2 should not be executed
+5 5 5 <e1>
+5 5 5 <e2>
+5 5 5 e2 should be executed
+6 0 0 <e1>
+6 0 2 <e2>
+6 0 2 Forward +2 step shift, local 0, 1 are skipped, e2 should be executed
+7 1 1 <e1>
+7 1 3 <e2>
+7 1 3 e2 should be executed
+SET TIME_ZONE= @save_time_zone;
+DROP EVENT e2;
+DROP EVENT e1;
+DROP FUNCTION f1;
+DROP TABLE t1, t2;
+DELETE FROM mysql.time_zone_name WHERE time_zone_id = @tzid;
+DELETE FROM mysql.time_zone_transition_type WHERE time_zone_id = @tzid;
+DELETE FROM mysql.time_zone_transition WHERE time_zone_id = @tzid;
+DELETE FROM mysql.time_zone WHERE time_zone_id = @tzid;
+ALTER TABLE mysql.time_zone AUTO_INCREMENT = 6;
+SET TIME_ZONE= '+00:00';
+CREATE TABLE t1 (event CHAR(2), dt DATE, offset INT);
+INSERT INTO mysql.time_zone VALUES (NULL, 'N');
+SET @tzid= LAST_INSERT_ID();
+SET @now= UNIX_TIMESTAMP();
+SET @offset_month_01= UNIX_TIMESTAMP('2030-01-31 12:00:00') - @now;
+SET @offset_month_02= UNIX_TIMESTAMP('2030-02-28 12:00:00') - @now - 5*@step;
+SET @offset_month_03= UNIX_TIMESTAMP('2030-03-31 12:00:00') - @now - 5*@step;
+SET @offset_month_04= UNIX_TIMESTAMP('2030-04-30 12:00:00') - @now - 13*@step;
+INSERT INTO mysql.time_zone_transition_type
+VALUES (@tzid, 0, @offset_month_01, 0, 'b16420_0');
+INSERT INTO mysql.time_zone_transition_type
+VALUES (@tzid, 1, @offset_month_02, 1, 'b16420_1');
+INSERT INTO mysql.time_zone_transition_type
+VALUES (@tzid, 2, @offset_month_03, 1, 'b16420_2');
+INSERT INTO mysql.time_zone_transition_type
+VALUES (@tzid, 3, @offset_month_04, 1, 'b16420_3');
+INSERT INTO mysql.time_zone_transition
+VALUES (@tzid, @now, 0);
+INSERT INTO mysql.time_zone_transition
+VALUES (@tzid, @now + 3 * @step, 1);
+INSERT INTO mysql.time_zone_transition
+VALUES (@tzid, @now + 7 * @step, 2);
+INSERT INTO mysql.time_zone_transition
+VALUES (@tzid, @now + 12 * @step, 3);
+INSERT INTO mysql.time_zone_name VALUES ('<TZ_NAME_2>', @tzid);
+SET TIME_ZONE= '<TZ_NAME_2>';
+SET GLOBAL EVENT_SCHEDULER= ON;
+SET GLOBAL EVENT_SCHEDULER= OFF;
+Below we should see the following:
+- On Jan 31 only e2 is executed, because we started later than
+e1 should have been executed. Offset of e2 is 0 because of
+the late start, not 1.
+- The next execution is on Feb 28 (last day of Feb). Both events
+are executed in their times, offsets are -1 and 1.
+- The next time is Mar 31. Because the time of event
+execution was skipped over, events are executed right away,
+offsets are 2 and 2.
+- The next time is Apr 30. Events are again executed in their
+appointed times, offsets are -1 and 1.
+SELECT * FROM t1 ORDER BY dt, event;
+event dt offset
+e2 2030-01-31 0
+e1 2030-02-28 -1
+e2 2030-02-28 1
+e1 2030-03-31 2
+e2 2030-03-31 2
+e1 2030-04-30 -1
+e2 2030-04-30 1
+DROP EVENT e2;
+DROP EVENT e1;
+DROP TABLE t1;
+SET TIME_ZONE= @save_time_zone;
+DELETE FROM mysql.time_zone_name WHERE time_zone_id = @tzid;
+DELETE FROM mysql.time_zone_transition_type WHERE time_zone_id = @tzid;
+DELETE FROM mysql.time_zone_transition WHERE time_zone_id = @tzid;
+DELETE FROM mysql.time_zone WHERE time_zone_id = @tzid;
+ALTER TABLE mysql.time_zone AUTO_INCREMENT = 6;
+DROP FUNCTION round_to_step;
+DROP TABLE t_step;
+DROP DATABASE mysqltest_db1;
+End of 5.1 tests.
diff --git a/mysql-test/r/events_trans.result b/mysql-test/r/events_trans.result
new file mode 100644
index 00000000000..16ec64b4c50
--- /dev/null
+++ b/mysql-test/r/events_trans.result
@@ -0,0 +1,118 @@
+drop database if exists events_test;
+drop database if exists mysqltest_no_such_database;
+create database events_test;
+use events_test;
+
+Test that Events DDL issue an implicit COMMIT
+
+
+set autocommit=off;
+select @@autocommit;
+@@autocommit
+0
+create table t1 (a varchar(255)) engine=innodb;
+begin work;
+insert into t1 (a) values ("OK: create event");
+create event e1 on schedule every 1 day do select 1;
+rollback work;
+select * from t1;
+a
+OK: create event
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: alter event");
+alter event e1 on schedule every 2 day do select 2;
+rollback work;
+select * from t1;
+a
+OK: alter event
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: alter event rename");
+alter event e1 rename to e2;
+rollback work;
+select * from t1;
+a
+OK: alter event rename
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: drop event");
+drop event e2;
+rollback work;
+select * from t1;
+a
+OK: drop event
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: drop event if exists");
+drop event if exists e2;
+Warnings:
+Note 1305 Event e2 does not exist
+rollback work;
+select * from t1;
+a
+OK: drop event if exists
+delete from t1;
+commit work;
+create event e1 on schedule every 1 day do select 1;
+begin work;
+insert into t1 (a) values ("OK: create event if not exists");
+create event if not exists e1 on schedule every 2 day do select 2;
+Warnings:
+Note 1537 Event 'e1' already exists
+rollback work;
+select * from t1;
+a
+OK: create event if not exists
+delete from t1;
+commit work;
+
+Now check various error conditions: make sure we issue an
+implicit commit anyway
+
+begin work;
+insert into t1 (a) values ("OK: create event: event already exists");
+create event e1 on schedule every 2 day do select 2;
+ERROR HY000: Event 'e1' already exists
+rollback work;
+select * from t1;
+a
+OK: create event: event already exists
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: alter event rename: rename to same name");
+alter event e1 rename to e1;
+ERROR HY000: Same old and new event name
+rollback work;
+select * from t1;
+a
+OK: alter event rename: rename to same name
+delete from t1;
+commit work;
+create event e2 on schedule every 3 day do select 3;
+begin work;
+insert into t1 (a) values ("OK: alter event rename: destination exists");
+alter event e2 rename to e1;
+ERROR HY000: Event 'e1' already exists
+rollback work;
+select * from t1;
+a
+OK: alter event rename: destination exists
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: create event: database does not exist");
+create event mysqltest_no_such_database.e1 on schedule every 1 day do select 1;
+ERROR 42000: Unknown database 'mysqltest_no_such_database'
+rollback work;
+select * from t1;
+a
+OK: create event: database does not exist
+delete from t1;
+commit work;
+drop database events_test;
diff --git a/mysql-test/r/events_trans_notembedded.result b/mysql-test/r/events_trans_notembedded.result
new file mode 100644
index 00000000000..1e3dfffe232
--- /dev/null
+++ b/mysql-test/r/events_trans_notembedded.result
@@ -0,0 +1,45 @@
+drop database if exists events_test;
+drop database if exists mysqltest_db2;
+create database events_test;
+use events_test;
+grant create, insert, select, delete on mysqltest_db2.*
+to mysqltest_user1@localhost;
+create database mysqltest_db2;
+set autocommit=off;
+select @@autocommit;
+@@autocommit
+0
+create table t1 (a varchar(255)) engine=innodb;
+begin work;
+insert into t1 (a) values ("OK: create event: insufficient privileges");
+create event e1 on schedule every 1 day do select 1;
+ERROR 42000: Access denied for user 'mysqltest_user1'@'localhost' to database 'mysqltest_db2'
+rollback work;
+select * from t1;
+a
+OK: create event: insufficient privileges
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: alter event: insufficient privileges");
+alter event e1 on schedule every 1 day do select 1;
+ERROR 42000: Access denied for user 'mysqltest_user1'@'localhost' to database 'mysqltest_db2'
+rollback work;
+select * from t1;
+a
+OK: alter event: insufficient privileges
+delete from t1;
+commit work;
+begin work;
+insert into t1 (a) values ("OK: drop event: insufficient privileges");
+drop event e1;
+ERROR 42000: Access denied for user 'mysqltest_user1'@'localhost' to database 'mysqltest_db2'
+rollback work;
+select * from t1;
+a
+OK: drop event: insufficient privileges
+delete from t1;
+commit work;
+drop user mysqltest_user1@localhost;
+drop database mysqltest_db2;
+drop database events_test;
diff --git a/mysql-test/r/exampledb.result b/mysql-test/r/exampledb.result
index 9bfb77c1c0b..6eea24e2e1f 100644
--- a/mysql-test/r/exampledb.result
+++ b/mysql-test/r/exampledb.result
@@ -1,3 +1,5 @@
+drop database if exists events_test;
+drop database if exists events_test2;
drop table if exists t1;
CREATE TABLE t1 (
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
diff --git a/mysql-test/r/explain.result b/mysql-test/r/explain.result
index 8d3859fd68e..96fcbc33d3f 100644
--- a/mysql-test/r/explain.result
+++ b/mysql-test/r/explain.result
@@ -24,9 +24,9 @@ explain select * from t1 use key (str,str) where str="foo";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 const str str 11 const 1
explain select * from t1 use key (str,str,foo) where str="foo";
-ERROR HY000: Key 'foo' doesn't exist in table 't1'
+ERROR 42000: Key 'foo' doesn't exist in table 't1'
explain select * from t1 ignore key (str,str,foo) where str="foo";
-ERROR HY000: Key 'foo' doesn't exist in table 't1'
+ERROR 42000: Key 'foo' doesn't exist in table 't1'
drop table t1;
explain select 1;
id select_type table type possible_keys key key_len ref rows Extra
@@ -61,28 +61,28 @@ create table t1(f1 int, f2 int);
insert into t1 values (1,1);
create view v1 as select * from t1 where f1=1;
explain extended select * from v1 where f2=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
Note 1003 select '1' AS `f1`,'1' AS `f2` from `test`.`t1` where 1
explain extended select * from t1 where 0;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
Warnings:
Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` where 0
explain extended select * from t1 where 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
Note 1003 select '1' AS `f1`,'1' AS `f2` from `test`.`t1` where 1
explain extended select * from t1 having 0;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible HAVING
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible HAVING
Warnings:
Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` having 0
explain extended select * from t1 having 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
Note 1003 select '1' AS `f1`,'1' AS `f2` from `test`.`t1` having 1
drop view v1;
@@ -113,51 +113,51 @@ INSERT INTO t1 VALUES (1),(2);
INSERT INTO t2 VALUES (1),(2);
EXPLAIN EXTENDED SELECT 1
FROM (SELECT COUNT(DISTINCT t1.a) FROM t1,t2 GROUP BY t1.a) AS s1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-2 DERIVED t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-2 DERIVED t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+2 DERIVED t2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select 1 AS `1` from (select count(distinct `test`.`t1`.`a`) AS `COUNT(DISTINCT t1.a)` from `test`.`t1` join `test`.`t2` group by `test`.`t1`.`a`) `s1`
EXPLAIN EXTENDED SELECT 1
FROM (SELECT COUNT(DISTINCT t1.a) FROM t1,t2 GROUP BY t1.a) AS s1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-2 DERIVED t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-2 DERIVED t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+2 DERIVED t2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select 1 AS `1` from (select count(distinct `test`.`t1`.`a`) AS `COUNT(DISTINCT t1.a)` from `test`.`t1` join `test`.`t2` group by `test`.`t1`.`a`) `s1`
prepare s1 from
'EXPLAIN EXTENDED SELECT 1
FROM (SELECT COUNT(DISTINCT t1.a) FROM t1,t2 GROUP BY t1.a) AS s1';
execute s1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-2 DERIVED t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-2 DERIVED t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+2 DERIVED t2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select 1 AS `1` from (select count(distinct `test`.`t1`.`a`) AS `COUNT(DISTINCT t1.a)` from `test`.`t1` join `test`.`t2` group by `test`.`t1`.`a`) `s1`
prepare s1 from
'EXPLAIN EXTENDED SELECT 1
FROM (SELECT COUNT(DISTINCT t1.a) FROM t1,t2 GROUP BY t1.a) AS s1';
execute s1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-2 DERIVED t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-2 DERIVED t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+2 DERIVED t2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select 1 AS `1` from (select count(distinct `test`.`t1`.`a`) AS `COUNT(DISTINCT t1.a)` from `test`.`t1` join `test`.`t2` group by `test`.`t1`.`a`) `s1`
execute s1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-2 DERIVED t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-2 DERIVED t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+2 DERIVED t2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select 1 AS `1` from (select count(distinct `test`.`t1`.`a`) AS `COUNT(DISTINCT t1.a)` from `test`.`t1` join `test`.`t2` group by `test`.`t1`.`a`) `s1`
DROP TABLE t1,t2;
CREATE TABLE t1 (a INT PRIMARY KEY);
EXPLAIN EXTENDED SELECT COUNT(a) FROM t1 USE KEY(a);
-ERROR HY000: Key 'a' doesn't exist in table 't1'
+ERROR 42000: Key 'a' doesn't exist in table 't1'
DROP TABLE t1;
CREATE TABLE t1(a LONGTEXT);
INSERT INTO t1 VALUES (repeat('a',@@global.max_allowed_packet));
@@ -167,3 +167,31 @@ EXPLAIN SELECT DISTINCT 1 FROM t1,
WHERE t1.a = d1.a;
ERROR 42S22: Unknown column 'd1.a' in 'where clause'
DROP TABLE t1;
+#
+# Bug#37870: Usage of uninitialized value caused failed assertion.
+#
+create table t1 (dt datetime not null, t time not null);
+create table t2 (dt datetime not null);
+insert into t1 values ('2001-01-01 1:1:1', '1:1:1'),
+('2001-01-01 1:1:1', '1:1:1');
+insert into t2 values ('2001-01-01 1:1:1'), ('2001-01-01 1:1:1');
+flush tables;
+EXPLAIN SELECT OUTR.dt FROM t1 AS OUTR WHERE OUTR.dt IN (SELECT INNR.dt FROM t2 AS INNR WHERE OUTR.dt IS NULL );
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY OUTR ALL NULL NULL NULL NULL 2 Using where
+2 DEPENDENT SUBQUERY INNR ALL NULL NULL NULL NULL 2 Using where
+flush tables;
+SELECT OUTR.dt FROM t1 AS OUTR WHERE OUTR.dt IN (SELECT INNR.dt FROM t2 AS INNR WHERE OUTR.dt IS NULL );
+dt
+flush tables;
+EXPLAIN SELECT OUTR.dt FROM t1 AS OUTR WHERE OUTR.dt IN ( SELECT INNR.dt FROM t2 AS INNR WHERE OUTR.t < '2005-11-13 7:41:31' );
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY OUTR ALL NULL NULL NULL NULL 2 Using where
+2 DEPENDENT SUBQUERY INNR ALL NULL NULL NULL NULL 2 Using where
+flush tables;
+SELECT OUTR.dt FROM t1 AS OUTR WHERE OUTR.dt IN ( SELECT INNR.dt FROM t2 AS INNR WHERE OUTR.t < '2005-11-13 7:41:31' );
+dt
+2001-01-01 01:01:01
+2001-01-01 01:01:01
+drop tables t1, t2;
+End of 5.1 tests.
diff --git a/mysql-test/r/federated.result b/mysql-test/r/federated.result
deleted file mode 100644
index 026886cb07d..00000000000
--- a/mysql-test/r/federated.result
+++ /dev/null
@@ -1,2123 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-SET @OLD_MASTER_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
-SET @@GLOBAL.CONCURRENT_INSERT= 0;
-SET @OLD_SLAVE_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
-SET @@GLOBAL.CONCURRENT_INSERT= 0;
-DROP TABLE IF EXISTS federated.t1;
-Warnings:
-Note 1051 Unknown table 't1'
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-Warnings:
-Note 1051 Unknown table 't1'
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:@/too/many/items/federated/t1';
-ERROR HY000: Can't create federated table. The data source connection string 'mysql://root@127.0.0.1:@/too/many/items/federated/t1' is not in the correct format
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1';
-ERROR HY000: Can't create federated table. The data source connection string 'mysql://root@127.0.0.1' is not in the correct format
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t3';
-SELECT * FROM federated.t1;
-ERROR HY000: The foreign data source you are trying to reference does not exist. Data source error: error: 1146 'Table 'federated.t3' doesn't exist'
-DROP TABLE federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://user:pass@127.0.0.1:SLAVE_PORT/federated/t1';
-SELECT * FROM federated.t1;
-ERROR HY000: Unable to connect to foreign data source: Access denied for user 'user'@'localhost' (using password: YES)
-DROP TABLE federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (id, name) VALUES (1, 'foo');
-INSERT INTO federated.t1 (id, name) VALUES (2, 'fee');
-SELECT * FROM federated.t1;
-id name
-1 foo
-2 fee
-DELETE FROM federated.t1;
-DROP TABLE federated.t1;
-DROP TABLE IF EXISTS federated.t2;
-Warnings:
-Note 1051 Unknown table 't2'
-CREATE TABLE federated.t2 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-SHOW CREATE TABLE federated.t2;
-Table Create Table
-t2 CREATE TABLE `t2` (
- `id` int(20) NOT NULL,
- `name` varchar(32) NOT NULL default ''
-) ENGINE=FEDERATED DEFAULT CHARSET=latin1 CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1'
-INSERT INTO federated.t2 (id, name) VALUES (1, 'foo');
-INSERT INTO federated.t2 (id, name) VALUES (2, 'fee');
-SELECT * FROM federated.t2 ORDER BY id, name;
-id name
-1 foo
-2 fee
-DROP TABLE federated.t2;
-DROP TABLE IF EXISTS federated.t1;
-DROP TABLE IF EXISTS federated.`t1%`;
-Warnings:
-Note 1051 Unknown table 't1%'
-CREATE TABLE federated.`t1%` (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-Warnings:
-Note 1051 Unknown table 't1'
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1%';
-INSERT INTO federated.t1 (id, name) VALUES (1, 'foo');
-INSERT INTO federated.t1 (id, name) VALUES (2, 'fee');
-SELECT * FROM federated.t1 ORDER BY id,name;
-id name
-1 foo
-2 fee
-DELETE FROM federated.t1;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.`t1%` (
-`id` int(20) NOT NULL,
-`name` varchar(32) NOT NULL default ''
- )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1%';
-INSERT INTO federated.`t1%` (id, name) VALUES (1, 'foo');
-INSERT INTO federated.`t1%` (id, name) VALUES (2, 'fee');
-SELECT * FROM federated.`t1%` ORDER BY id, name;
-id name
-1 foo
-2 fee
-DELETE FROM federated.`t1%`;
-DROP TABLE IF EXISTS federated.`t1%`;
-DROP TABLE IF EXISTS federated.`t1%`;
-DROP TABLE IF EXISTS federated.t1;
-Warnings:
-Note 1051 Unknown table 't1'
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32) NOT NULL default '',
-`other` int(20) NOT NULL default '0',
-`created` datetime default '2004-04-04 04:04:04',
-PRIMARY KEY (`id`))
-DEFAULT CHARSET=latin1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32) NOT NULL default '',
-`other` int(20) NOT NULL default '0',
-`created` datetime default '2004-04-04 04:04:04',
-PRIMARY KEY (`id`))
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (name, other) VALUES ('First Name', 11111);
-INSERT INTO federated.t1 (name, other) VALUES ('Second Name', 22222);
-INSERT INTO federated.t1 (name, other) VALUES ('Third Name', 33333);
-INSERT INTO federated.t1 (name, other) VALUES ('Fourth Name', 44444);
-INSERT INTO federated.t1 (name, other) VALUES ('Fifth Name', 55555);
-INSERT INTO federated.t1 (name, other) VALUES ('Sixth Name', 66666);
-INSERT INTO federated.t1 (name, other) VALUES ('Seventh Name', 77777);
-INSERT INTO federated.t1 (name, other) VALUES ('Eigth Name', 88888);
-INSERT INTO federated.t1 (name, other) VALUES ('Ninth Name', 99999);
-INSERT INTO federated.t1 (name, other) VALUES ('Tenth Name', 101010);
-SELECT * FROM federated.t1;
-id name other created
-1 First Name 11111 2004-04-04 04:04:04
-10 Tenth Name 101010 2004-04-04 04:04:04
-2 Second Name 22222 2004-04-04 04:04:04
-3 Third Name 33333 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-8 Eigth Name 88888 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-SELECT * FROM federated.t1 WHERE id = 5;
-id name other created
-5 Fifth Name 55555 2004-04-04 04:04:04
-SELECT * FROM federated.t1 WHERE name = 'Sixth Name';
-id name other created
-6 Sixth Name 66666 2004-04-04 04:04:04
-SELECT * FROM federated.t1 WHERE id = 6 and name = 'Sixth Name';
-id name other created
-6 Sixth Name 66666 2004-04-04 04:04:04
-SELECT * FROM federated.t1 WHERE name = 'Sixth Name' AND other = 44444;
-id name other created
-SELECT * FROM federated.t1 WHERE name like '%th%';
-id name other created
-10 Tenth Name 101010 2004-04-04 04:04:04
-3 Third Name 33333 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-8 Eigth Name 88888 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-UPDATE federated.t1 SET name = '3rd name' WHERE id = 3;
-SELECT * FROM federated.t1 WHERE name = '3rd name';
-id name other created
-3 3rd name 33333 2004-04-04 04:04:04
-UPDATE federated.t1 SET name = 'Third name' WHERE name = '3rd name';
-SELECT * FROM federated.t1 WHERE name = 'Third name';
-id name other created
-3 Third name 33333 2004-04-04 04:04:04
-SELECT * FROM federated.t1 ORDER BY id DESC;
-id name other created
-10 Tenth Name 101010 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-8 Eigth Name 88888 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-3 Third name 33333 2004-04-04 04:04:04
-2 Second Name 22222 2004-04-04 04:04:04
-1 First Name 11111 2004-04-04 04:04:04
-SELECT * FROM federated.t1 ORDER BY name;
-id name other created
-8 Eigth Name 88888 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-1 First Name 11111 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-2 Second Name 22222 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-10 Tenth Name 101010 2004-04-04 04:04:04
-3 Third name 33333 2004-04-04 04:04:04
-SELECT * FROM federated.t1 ORDER BY name DESC;
-id name other created
-3 Third name 33333 2004-04-04 04:04:04
-10 Tenth Name 101010 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-2 Second Name 22222 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-1 First Name 11111 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-8 Eigth Name 88888 2004-04-04 04:04:04
-SELECT * FROM federated.t1 ORDER BY name ASC;
-id name other created
-8 Eigth Name 88888 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-1 First Name 11111 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-2 Second Name 22222 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-10 Tenth Name 101010 2004-04-04 04:04:04
-3 Third name 33333 2004-04-04 04:04:04
-SELECT * FROM federated.t1 GROUP BY other;
-id name other created
-1 First Name 11111 2004-04-04 04:04:04
-2 Second Name 22222 2004-04-04 04:04:04
-3 Third name 33333 2004-04-04 04:04:04
-4 Fourth Name 44444 2004-04-04 04:04:04
-5 Fifth Name 55555 2004-04-04 04:04:04
-6 Sixth Name 66666 2004-04-04 04:04:04
-7 Seventh Name 77777 2004-04-04 04:04:04
-8 Eigth Name 88888 2004-04-04 04:04:04
-9 Ninth Name 99999 2004-04-04 04:04:04
-10 Tenth Name 101010 2004-04-04 04:04:04
-DELETE FROM federated.t1 WHERE id = 5;
-SELECT * FROM federated.t1 WHERE id = 5;
-id name other created
-DELETE FROM federated.t1;
-SELECT * FROM federated.t1 WHERE id = 5;
-id name other created
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32) NOT NULL default '',
-`other` int(20) NOT NULL default '0',
-`created` datetime NOT NULL,
-PRIMARY KEY (`id`),
-key name(`name`),
-key other(`other`),
-key created(`created`))
-DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32) NOT NULL default '',
-`other` int(20) NOT NULL default '0',
-`created` datetime NOT NULL,
-PRIMARY KEY (`id`),
-key name(`name`),
-key other(`other`),
-key created(`created`))
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('First Name', 11111, '2004-01-01 01:01:01');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Second Name', 22222, '2004-01-23 02:43:00');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Third Name', 33333, '2004-02-14 02:14:00');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Fourth Name', 44444, '2003-04-05 00:00:00');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Fifth Name', 55555, '2001-02-02 02:02:02');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Sixth Name', 66666, '2005-06-06 15:30:00');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Seventh Name', 77777, '2003-12-12 18:32:00');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Eigth Name', 88888, '2005-03-12 11:00:00');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Ninth Name', 99999, '2005-03-12 11:00:01');
-INSERT INTO federated.t1 (name, other, created)
-VALUES ('Tenth Name', 101010, '2005-03-12 12:00:01');
-SELECT * FROM federated.t1;
-id name other created
-1 First Name 11111 2004-01-01 01:01:01
-10 Tenth Name 101010 2005-03-12 12:00:01
-2 Second Name 22222 2004-01-23 02:43:00
-3 Third Name 33333 2004-02-14 02:14:00
-4 Fourth Name 44444 2003-04-05 00:00:00
-5 Fifth Name 55555 2001-02-02 02:02:02
-6 Sixth Name 66666 2005-06-06 15:30:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-8 Eigth Name 88888 2005-03-12 11:00:00
-9 Ninth Name 99999 2005-03-12 11:00:01
-SELECT * FROM federated.t1 WHERE id = 5;
-id name other created
-5 Fifth Name 55555 2001-02-02 02:02:02
-SELECT * FROM federated.t1 WHERE id = 6 and name = 'Sixth Name';
-id name other created
-6 Sixth Name 66666 2005-06-06 15:30:00
-SELECT * FROM federated.t1 WHERE other = 44444;
-id name other created
-4 Fourth Name 44444 2003-04-05 00:00:00
-SELECT * FROM federated.t1 WHERE name like '%th%';
-id name other created
-10 Tenth Name 101010 2005-03-12 12:00:01
-3 Third Name 33333 2004-02-14 02:14:00
-4 Fourth Name 44444 2003-04-05 00:00:00
-5 Fifth Name 55555 2001-02-02 02:02:02
-6 Sixth Name 66666 2005-06-06 15:30:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-8 Eigth Name 88888 2005-03-12 11:00:00
-9 Ninth Name 99999 2005-03-12 11:00:01
-UPDATE federated.t1 SET name = '3rd name' WHERE id = 3;
-SELECT * FROM federated.t1 WHERE name = '3rd name';
-id name other created
-3 3rd name 33333 2004-02-14 02:14:00
-UPDATE federated.t1 SET name = 'Third name' WHERE name = '3rd name';
-SELECT * FROM federated.t1 WHERE name = 'Third name';
-id name other created
-3 Third name 33333 2004-02-14 02:14:00
-SELECT * FROM federated.t1 ORDER BY id DESC;
-id name other created
-10 Tenth Name 101010 2005-03-12 12:00:01
-9 Ninth Name 99999 2005-03-12 11:00:01
-8 Eigth Name 88888 2005-03-12 11:00:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-6 Sixth Name 66666 2005-06-06 15:30:00
-5 Fifth Name 55555 2001-02-02 02:02:02
-4 Fourth Name 44444 2003-04-05 00:00:00
-3 Third name 33333 2004-02-14 02:14:00
-2 Second Name 22222 2004-01-23 02:43:00
-1 First Name 11111 2004-01-01 01:01:01
-SELECT * FROM federated.t1 ORDER BY name;
-id name other created
-8 Eigth Name 88888 2005-03-12 11:00:00
-5 Fifth Name 55555 2001-02-02 02:02:02
-1 First Name 11111 2004-01-01 01:01:01
-4 Fourth Name 44444 2003-04-05 00:00:00
-9 Ninth Name 99999 2005-03-12 11:00:01
-2 Second Name 22222 2004-01-23 02:43:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-6 Sixth Name 66666 2005-06-06 15:30:00
-10 Tenth Name 101010 2005-03-12 12:00:01
-3 Third name 33333 2004-02-14 02:14:00
-SELECT * FROM federated.t1 ORDER BY name DESC;
-id name other created
-3 Third name 33333 2004-02-14 02:14:00
-10 Tenth Name 101010 2005-03-12 12:00:01
-6 Sixth Name 66666 2005-06-06 15:30:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-2 Second Name 22222 2004-01-23 02:43:00
-9 Ninth Name 99999 2005-03-12 11:00:01
-4 Fourth Name 44444 2003-04-05 00:00:00
-1 First Name 11111 2004-01-01 01:01:01
-5 Fifth Name 55555 2001-02-02 02:02:02
-8 Eigth Name 88888 2005-03-12 11:00:00
-SELECT * FROM federated.t1 ORDER BY name ASC;
-id name other created
-8 Eigth Name 88888 2005-03-12 11:00:00
-5 Fifth Name 55555 2001-02-02 02:02:02
-1 First Name 11111 2004-01-01 01:01:01
-4 Fourth Name 44444 2003-04-05 00:00:00
-9 Ninth Name 99999 2005-03-12 11:00:01
-2 Second Name 22222 2004-01-23 02:43:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-6 Sixth Name 66666 2005-06-06 15:30:00
-10 Tenth Name 101010 2005-03-12 12:00:01
-3 Third name 33333 2004-02-14 02:14:00
-SELECT * FROM federated.t1 GROUP BY other;
-id name other created
-1 First Name 11111 2004-01-01 01:01:01
-2 Second Name 22222 2004-01-23 02:43:00
-3 Third name 33333 2004-02-14 02:14:00
-4 Fourth Name 44444 2003-04-05 00:00:00
-5 Fifth Name 55555 2001-02-02 02:02:02
-6 Sixth Name 66666 2005-06-06 15:30:00
-7 Seventh Name 77777 2003-12-12 18:32:00
-8 Eigth Name 88888 2005-03-12 11:00:00
-9 Ninth Name 99999 2005-03-12 11:00:01
-10 Tenth Name 101010 2005-03-12 12:00:01
-DELETE FROM federated.t1 WHERE id = 5;
-SELECT * FROM federated.t1 WHERE id = 5;
-id name other created
-DELETE FROM federated.t1;
-SELECT * FROM federated.t1 WHERE id = 5;
-id name other created
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32),
-`other` varchar(20),
-PRIMARY KEY (`id`) );
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32),
-`other` varchar(20),
-PRIMARY KEY (`id`) )
-ENGINE="FEDERATED"
- DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (name, other) VALUES ('First Name', 11111);
-INSERT INTO federated.t1 (name, other) VALUES ('Second Name', NULL);
-INSERT INTO federated.t1 (name, other) VALUES ('Third Name', 33333);
-INSERT INTO federated.t1 (name, other) VALUES (NULL, NULL);
-INSERT INTO federated.t1 (name, other) VALUES ('Fifth Name', 55555);
-INSERT INTO federated.t1 (name, other) VALUES ('Sixth Name', 66666);
-INSERT INTO federated.t1 (name) VALUES ('Seventh Name');
-INSERT INTO federated.t1 (name, other) VALUES ('Eigth Name', 88888);
-INSERT INTO federated.t1 (name, other) VALUES ('Ninth Name', 99999);
-INSERT INTO federated.t1 (other) VALUES ('fee fie foe fum');
-SELECT * FROM federated.t1 WHERE other IS NULL;
-id name other
-2 Second Name NULL
-4 NULL NULL
-7 Seventh Name NULL
-SELECT * FROM federated.t1 WHERE name IS NULL;
-id name other
-10 NULL fee fie foe fum
-4 NULL NULL
-SELECT * FROM federated.t1 WHERE name IS NULL and other IS NULL;
-id name other
-4 NULL NULL
-SELECT * FROM federated.t1 WHERE name IS NULL or other IS NULL;
-id name other
-10 NULL fee fie foe fum
-2 Second Name NULL
-4 NULL NULL
-7 Seventh Name NULL
-UPDATE federated.t1
-SET name = 'Fourth Name', other = 'four four four'
-WHERE name IS NULL AND other IS NULL;
-UPDATE federated.t1 SET other = 'two two two two' WHERE name = 'Second Name';
-UPDATE federated.t1 SET other = 'seven seven' WHERE name like 'Sev%';
-UPDATE federated.t1 SET name = 'Tenth Name' WHERE other like 'fee fie%';
-SELECT * FROM federated.t1 WHERE name IS NULL OR other IS NULL ;
-id name other
-SELECT * FROM federated.t1;
-id name other
-1 First Name 11111
-10 Tenth Name fee fie foe fum
-2 Second Name two two two two
-3 Third Name 33333
-4 Fourth Name four four four
-5 Fifth Name 55555
-6 Sixth Name 66666
-7 Seventh Name seven seven
-8 Eigth Name 88888
-9 Ninth Name 99999
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32) NOT NULL DEFAULT '',
-`other` varchar(20) NOT NULL DEFAULT '',
-PRIMARY KEY (`id`),
-KEY nameoth (name, other) );
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`name` varchar(32) NOT NULL DEFAULT '',
-`other` varchar(20) NOT NULL DEFAULT '',
-PRIMARY KEY (`id`),
-KEY nameoth (name, other))
-ENGINE="FEDERATED" DEFAULT
-CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (name, other) VALUES ('First Name', '1111');
-INSERT INTO federated.t1 (name, other) VALUES ('Second Name', '2222');
-INSERT INTO federated.t1 (name, other) VALUES ('Third Name', '3333');
-SELECT * FROM federated.t1 WHERE name = 'Second Name';
-id name other
-2 Second Name 2222
-SELECT * FROM federated.t1 WHERE other = '2222';
-id name other
-2 Second Name 2222
-SELECT * FROM federated.t1 WHERE name = 'Third Name';
-id name other
-3 Third Name 3333
-SELECT * FROM federated.t1 WHERE name = 'Third Name' AND other = '3333';
-id name other
-3 Third Name 3333
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int NOT NULL auto_increment,
-`name` char(32) NOT NULL DEFAULT '',
-`bincol` binary(1) NOT NULL,
-`floatval` decimal(5,2) NOT NULL DEFAULT 0.0,
-`other` int NOT NULL DEFAULT 0,
-PRIMARY KEY (id),
-KEY nameoth(name, other),
-KEY bincol(bincol),
-KEY floatval(floatval));
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int NOT NULL auto_increment,
-`name` char(32) NOT NULL DEFAULT '',
-`bincol` binary(1) NOT NULL,
-`floatval` decimal(5,2) NOT NULL DEFAULT 0.0,
-`other` int NOT NULL DEFAULT 0,
-PRIMARY KEY (id),
-KEY nameoth(name,other),
-KEY bincol(bincol),
-KEY floatval(floatval))
-ENGINE="FEDERATED"
- DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (name, bincol, floatval, other)
-VALUES ('first', 0x65, 11.11, 1111);
-INSERT INTO federated.t1 (name, bincol, floatval, other)
-VALUES ('second', 0x66, 22.22, 2222);
-INSERT INTO federated.t1 (name, bincol, floatval, other)
-VALUES ('third', 'g', 22.22, 2222);
-SELECT * FROM federated.t1;
-id name bincol floatval other
-1 first e 11.11 1111
-2 second f 22.22 2222
-3 third g 22.22 2222
-SELECT * FROM federated.t1 WHERE name = 'second';
-id name bincol floatval other
-2 second f 22.22 2222
-SELECT * FROM federated.t1 WHERE bincol= 'f';
-id name bincol floatval other
-2 second f 22.22 2222
-SELECT * FROM federated.t1 WHERE bincol= 0x66;
-id name bincol floatval other
-2 second f 22.22 2222
-SELECT * FROM federated.t1 WHERE bincol= 0x67;
-id name bincol floatval other
-3 third g 22.22 2222
-SELECT * FROM federated.t1 WHERE bincol= 'g';
-id name bincol floatval other
-3 third g 22.22 2222
-SELECT * FROM federated.t1 WHERE floatval=11.11;
-id name bincol floatval other
-1 first e 11.11 1111
-SELECT * FROM federated.t1 WHERE name='third';
-id name bincol floatval other
-3 third g 22.22 2222
-SELECT * FROM federated.t1 WHERE other=2222;
-id name bincol floatval other
-2 second f 22.22 2222
-3 third g 22.22 2222
-SELECT * FROM federated.t1 WHERE name='third' and other=2222;
-id name bincol floatval other
-3 third g 22.22 2222
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int NOT NULL auto_increment,
-`col1` int(10) NOT NULL DEFAULT 0,
-`col2` varchar(64) NOT NULL DEFAULT '',
-`col3` int(20) NOT NULL,
-`col4` int(40) NOT NULL,
-primary key (`id`, `col1`, `col2`, `col3`, `col4`),
-key col1(col1),
-key col2(col2),
-key col3(col3),
-key col4(col4));
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int NOT NULL auto_increment,
-`col1` int(10) NOT NULL DEFAULT 0,
-`col2` varchar(64) NOT NULL DEFAULT '',
-`col3` int(20) NOT NULL,
-`col4` int(40) NOT NULL,
-primary key (`id`, `col1`, `col2`, `col3`, `col4`),
-key col1(col1),
-key col2(col2),
-key col3(col3),
-key col4(col4))
-ENGINE="FEDERATED"
- CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (1, 'one One', 11, 1111);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (2, 'Two two', 22, 2222);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (3, 'three Three', 33, 33333);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (4, 'fourfourfour', 444, 4444444);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (5, 'five 5 five five 5', 5, 55555);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (6, 'six six Sixsix', 6666, 6);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (7, 'seven Sevenseven', 77777, 7777);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (8, 'eight eight eight', 88888, 88);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (9, 'nine Nine', 999999, 999999);
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES (10, 'Tenth ten TEN', 1010101, 1010);
-SELECT * FROM federated.t1 WHERE col2 = 'two two';
-id col1 col2 col3 col4
-2 2 Two two 22 2222
-SELECT * FROM federated.t1 WHERE col2 = 'two Two';
-id col1 col2 col3 col4
-2 2 Two two 22 2222
-SELECT * FROM federated.t1 WHERE id = 3;
-id col1 col2 col3 col4
-3 3 three Three 33 33333
-SELECT * FROM federated.t1 WHERE id = 3 AND col1 = 3;
-id col1 col2 col3 col4
-3 3 three Three 33 33333
-SELECT * FROM federated.t1 WHERE id = 4 AND col1 = 4 AND col2 = 'Two two';
-id col1 col2 col3 col4
-SELECT * FROM federated.t1 WHERE id = 4 AND col1 = 4 AND col2 = 'fourfourfour';
-id col1 col2 col3 col4
-4 4 fourfourfour 444 4444444
-SELECT * FROM federated.t1 WHERE id = 5 AND col2 = 'five 5 five five 5'
-AND col3 = 5;
-id col1 col2 col3 col4
-5 5 five 5 five five 5 5 55555
-SELECT * FROM federated.t1 WHERE id = 5 AND col2 = 'five 5 five five 5'
-AND col3 = 5
-AND col4 = 55555;
-id col1 col2 col3 col4
-5 5 five 5 five five 5 5 55555
-SELECT * FROM federated.t1 WHERE id = 5
-AND col2 = 'Two two' AND col3 = 22
-AND col4 = 33;
-id col1 col2 col3 col4
-SELECT * FROM federated.t1 WHERE id = 5
-AND col2 = 'five 5 five five 5' AND col3 = 5
-AND col4 = 55555;
-id col1 col2 col3 col4
-5 5 five 5 five five 5 5 55555
-SELECT * FROM federated.t1 WHERE (id = 5 AND col2 = 'five 5 five five 5')
-OR (col2 = 'three Three' AND col3 = 33);
-id col1 col2 col3 col4
-3 3 three Three 33 33333
-5 5 five 5 five five 5 5 55555
-SELECT * FROM federated.t1 WHERE (id = 5 AND col2 = 'Two two')
-OR (col2 = 444 AND col3 = 4444444);
-id col1 col2 col3 col4
-SELECT * FROM federated.t1 WHERE id = 1
-OR col1 = 10
-OR col2 = 'Two two'
-OR col3 = 33
-OR col4 = 4444444;
-id col1 col2 col3 col4
-1 1 one One 11 1111
-10 10 Tenth ten TEN 1010101 1010
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-SELECT * FROM federated.t1 WHERE id > 5;
-id col1 col2 col3 col4
-10 10 Tenth ten TEN 1010101 1010
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-8 8 eight eight eight 88888 88
-9 9 nine Nine 999999 999999
-SELECT * FROM federated.t1 WHERE id >= 5;
-id col1 col2 col3 col4
-10 10 Tenth ten TEN 1010101 1010
-5 5 five 5 five five 5 5 55555
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-8 8 eight eight eight 88888 88
-9 9 nine Nine 999999 999999
-SELECT * FROM federated.t1 WHERE id < 5;
-id col1 col2 col3 col4
-1 1 one One 11 1111
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-SELECT * FROM federated.t1 WHERE id <= 5;
-id col1 col2 col3 col4
-1 1 one One 11 1111
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-5 5 five 5 five five 5 5 55555
-SELECT * FROM federated.t1 WHERE id != 5;
-id col1 col2 col3 col4
-1 1 one One 11 1111
-10 10 Tenth ten TEN 1010101 1010
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-8 8 eight eight eight 88888 88
-9 9 nine Nine 999999 999999
-SELECT * FROM federated.t1 WHERE id > 3 AND id < 7;
-id col1 col2 col3 col4
-4 4 fourfourfour 444 4444444
-5 5 five 5 five five 5 5 55555
-6 6 six six Sixsix 6666 6
-SELECT * FROM federated.t1 WHERE id > 3 AND id <= 7;
-id col1 col2 col3 col4
-4 4 fourfourfour 444 4444444
-5 5 five 5 five five 5 5 55555
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-SELECT * FROM federated.t1 WHERE id >= 3 AND id <= 7;
-id col1 col2 col3 col4
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-5 5 five 5 five five 5 5 55555
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-SELECT * FROM federated.t1 WHERE id < 3 AND id <= 7;
-id col1 col2 col3 col4
-1 1 one One 11 1111
-2 2 Two two 22 2222
-SELECT * FROM federated.t1 WHERE id < 3 AND id > 7;
-id col1 col2 col3 col4
-SELECT * FROM federated.t1 WHERE id < 3 OR id > 7;
-id col1 col2 col3 col4
-1 1 one One 11 1111
-10 10 Tenth ten TEN 1010101 1010
-2 2 Two two 22 2222
-8 8 eight eight eight 88888 88
-9 9 nine Nine 999999 999999
-SELECT * FROM federated.t1 WHERE col2 = 'three Three';
-id col1 col2 col3 col4
-3 3 three Three 33 33333
-SELECT * FROM federated.t1 WHERE col2 > 'one';
-id col1 col2 col3 col4
-1 1 one One 11 1111
-10 10 Tenth ten TEN 1010101 1010
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-SELECT * FROM federated.t1 WHERE col2 LIKE 's%';
-id col1 col2 col3 col4
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-SELECT * FROM federated.t1 WHERE col2 LIKE 'si%';
-id col1 col2 col3 col4
-6 6 six six Sixsix 6666 6
-SELECT * FROM federated.t1 WHERE col2 LIKE 'se%';
-id col1 col2 col3 col4
-7 7 seven Sevenseven 77777 7777
-SELECT * FROM federated.t1 WHERE col2 NOT LIKE 'e%';
-id col1 col2 col3 col4
-1 1 one One 11 1111
-10 10 Tenth ten TEN 1010101 1010
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-5 5 five 5 five five 5 5 55555
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-9 9 nine Nine 999999 999999
-SELECT * FROM federated.t1 WHERE col2 <> 'one One';
-id col1 col2 col3 col4
-10 10 Tenth ten TEN 1010101 1010
-2 2 Two two 22 2222
-3 3 three Three 33 33333
-4 4 fourfourfour 444 4444444
-5 5 five 5 five five 5 5 55555
-6 6 six six Sixsix 6666 6
-7 7 seven Sevenseven 77777 7777
-8 8 eight eight eight 88888 88
-9 9 nine Nine 999999 999999
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`col1` varchar(8) NOT NULL DEFAULT '',
-`col2` varchar(128) NOT NULL DEFAULT '',
-`col3` varchar(20) NOT NULL DEFAULT '',
-`col4` varchar(40) NOT NULL DEFAULT '',
-primary key (`col1`, `col2`, `col3`, `col4`),
-key 3key(`col2`,`col3`,`col4`),
-key 2key (`col3`,`col4`),
-key col4(col4));
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`col1` varchar(8) NOT NULL DEFAULT '',
-`col2` varchar(128) NOT NULL DEFAULT '',
-`col3` varchar(20) NOT NULL DEFAULT '',
-`col4` varchar(40) NOT NULL DEFAULT '',
-primary key (`col1`, `col2`, `col3`, `col4`),
-key 3key(`col2`,`col3`,`col4`),
-key 2key (`col3`,`col4`),
-key col4(col4))
-ENGINE="FEDERATED"
- CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('aaaa', 'aaaaaaaaaaaaaaaaaaa', 'ababababab', 'acacacacacacacac');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('bbbb', 'bbbbbbbbbbbbbbbbbbb', 'bababababa', 'bcbcbcbcbcbcbcbc');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('cccc', 'ccccccccccccccccccc', 'cacacacaca', 'cbcbcbcbcbcbcbcb');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('dddd', 'ddddddddddddddddddd', 'dadadadada', 'dcdcdcdcdcdcdcdc');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('eeee', 'eeeeeeeeeeeeeeeeeee', 'eaeaeaeaea', 'ecececececececec');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('ffff', 'fffffffffffffffffff', 'fafafafafa', 'fcfcfcfcfcfcfcfc');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('gggg', 'ggggggggggggggggggg', 'gagagagaga', 'gcgcgcgcgcgcgcgc');
-INSERT INTO federated.t1 (col1, col2, col3, col4)
-VALUES ('hhhh', 'hhhhhhhhhhhhhhhhhhh', 'hahahahaha', 'hchchchchchchchc');
-SELECT * FROM federated.t1 WHERE col1 = 'cccc';
-col1 col2 col3 col4
-cccc ccccccccccccccccccc cacacacaca cbcbcbcbcbcbcbcb
-SELECT * FROM federated.t1 WHERE col2 = 'eeeeeeeeeeeeeeeeeee';
-col1 col2 col3 col4
-eeee eeeeeeeeeeeeeeeeeee eaeaeaeaea ecececececececec
-SELECT * FROM federated.t1 WHERE col3 = 'bababababa';
-col1 col2 col3 col4
-bbbb bbbbbbbbbbbbbbbbbbb bababababa bcbcbcbcbcbcbcbc
-SELECT * FROM federated.t1 WHERE col1 = 'gggg' AND col2 = 'ggggggggggggggggggg';
-col1 col2 col3 col4
-gggg ggggggggggggggggggg gagagagaga gcgcgcgcgcgcgcgc
-SELECT * FROM federated.t1 WHERE col1 = 'gggg' AND col3 = 'gagagagaga';
-col1 col2 col3 col4
-gggg ggggggggggggggggggg gagagagaga gcgcgcgcgcgcgcgc
-SELECT * FROM federated.t1 WHERE col1 = 'ffff' AND col4 = 'fcfcfcfcfcfcfcfc';
-col1 col2 col3 col4
-ffff fffffffffffffffffff fafafafafa fcfcfcfcfcfcfcfc
-SELECT * FROM federated.t1 WHERE col1 > 'bbbb';
-col1 col2 col3 col4
-cccc ccccccccccccccccccc cacacacaca cbcbcbcbcbcbcbcb
-dddd ddddddddddddddddddd dadadadada dcdcdcdcdcdcdcdc
-eeee eeeeeeeeeeeeeeeeeee eaeaeaeaea ecececececececec
-ffff fffffffffffffffffff fafafafafa fcfcfcfcfcfcfcfc
-gggg ggggggggggggggggggg gagagagaga gcgcgcgcgcgcgcgc
-hhhh hhhhhhhhhhhhhhhhhhh hahahahaha hchchchchchchchc
-SELECT * FROM federated.t1 WHERE col1 >= 'bbbb';
-col1 col2 col3 col4
-bbbb bbbbbbbbbbbbbbbbbbb bababababa bcbcbcbcbcbcbcbc
-cccc ccccccccccccccccccc cacacacaca cbcbcbcbcbcbcbcb
-dddd ddddddddddddddddddd dadadadada dcdcdcdcdcdcdcdc
-eeee eeeeeeeeeeeeeeeeeee eaeaeaeaea ecececececececec
-ffff fffffffffffffffffff fafafafafa fcfcfcfcfcfcfcfc
-gggg ggggggggggggggggggg gagagagaga gcgcgcgcgcgcgcgc
-hhhh hhhhhhhhhhhhhhhhhhh hahahahaha hchchchchchchchc
-SELECT * FROM federated.t1 WHERE col1 < 'bbbb';
-col1 col2 col3 col4
-aaaa aaaaaaaaaaaaaaaaaaa ababababab acacacacacacacac
-SELECT * FROM federated.t1 WHERE col1 <= 'bbbb';
-col1 col2 col3 col4
-aaaa aaaaaaaaaaaaaaaaaaa ababababab acacacacacacacac
-bbbb bbbbbbbbbbbbbbbbbbb bababababa bcbcbcbcbcbcbcbc
-SELECT * FROM federated.t1 WHERE col1 <> 'bbbb';
-col1 col2 col3 col4
-aaaa aaaaaaaaaaaaaaaaaaa ababababab acacacacacacacac
-cccc ccccccccccccccccccc cacacacaca cbcbcbcbcbcbcbcb
-dddd ddddddddddddddddddd dadadadada dcdcdcdcdcdcdcdc
-eeee eeeeeeeeeeeeeeeeeee eaeaeaeaea ecececececececec
-ffff fffffffffffffffffff fafafafafa fcfcfcfcfcfcfcfc
-gggg ggggggggggggggggggg gagagagaga gcgcgcgcgcgcgcgc
-hhhh hhhhhhhhhhhhhhhhhhh hahahahaha hchchchchchchchc
-SELECT * FROM federated.t1 WHERE col1 LIKE 'b%';
-col1 col2 col3 col4
-bbbb bbbbbbbbbbbbbbbbbbb bababababa bcbcbcbcbcbcbcbc
-SELECT * FROM federated.t1 WHERE col4 LIKE '%b%';
-col1 col2 col3 col4
-bbbb bbbbbbbbbbbbbbbbbbb bababababa bcbcbcbcbcbcbcbc
-cccc ccccccccccccccccccc cacacacaca cbcbcbcbcbcbcbcb
-SELECT * FROM federated.t1 WHERE col1 NOT LIKE 'c%';
-col1 col2 col3 col4
-aaaa aaaaaaaaaaaaaaaaaaa ababababab acacacacacacacac
-bbbb bbbbbbbbbbbbbbbbbbb bababababa bcbcbcbcbcbcbcbc
-dddd ddddddddddddddddddd dadadadada dcdcdcdcdcdcdcdc
-eeee eeeeeeeeeeeeeeeeeee eaeaeaeaea ecececececececec
-ffff fffffffffffffffffff fafafafafa fcfcfcfcfcfcfcfc
-gggg ggggggggggggggggggg gagagagaga gcgcgcgcgcgcgcgc
-hhhh hhhhhhhhhhhhhhhhhhh hahahahaha hchchchchchchchc
-SELECT * FROM federated.t1 WHERE col4 NOT LIKE '%c%';
-col1 col2 col3 col4
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`col1` varchar(8) NOT NULL DEFAULT '',
-`col2` int(8) NOT NULL DEFAULT 0,
-`col3` varchar(8) NOT NULL DEFAULT '',
-primary key (`col1`, `col2`, `col3`));
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`col1` varchar(8) NOT NULL DEFAULT '',
-`col2` varchar(8) NOT NULL DEFAULT '',
-`col3` varchar(8) NOT NULL DEFAULT '',
-primary key (`col1`, `col2`, `col3`))
-ENGINE="FEDERATED"
- DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 VALUES ('a00', '110', 'cc0');
-INSERT INTO federated.t1 VALUES ('aaa', '111', 'ccc');
-INSERT INTO federated.t1 VALUES ('bbb', '222', 'yyy');
-INSERT INTO federated.t1 VALUES ('ccc', '111', 'zzz');
-INSERT INTO federated.t1 VALUES ('ccd', '112', 'zzzz');
-SELECT col3 FROM federated.t1 WHERE (
-(col1 = 'aaa' AND col2 >= '111') OR col1 > 'aaa') AND
-(col1 < 'ccc' OR ( col1 = 'ccc' AND col2 <= '111'));
-col3
-ccc
-yyy
-zzz
-SELECT col3 FROM federated.t1 WHERE (
-(col1 = 'aaa' AND col2 >= '111') OR col1 > 'aaa') AND
-(col1 < 'ccc' OR ( col1 = 'ccc' AND col2 <= '111'));
-col3
-ccc
-yyy
-zzz
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int,
-`name` varchar(32),
-`floatval` float,
-`other` int)
-DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int,
-`name` varchar(32),
-`floatval` float,
-`other` int)
-ENGINE="FEDERATED"
-DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 values (NULL, NULL, NULL, NULL);
-INSERT INTO federated.t1 values ();
-INSERT INTO federated.t1 (id) VALUES (1);
-INSERT INTO federated.t1 (name, floatval, other)
-VALUES ('foo', 33.33333332, NULL);
-INSERT INTO federated.t1 (name, floatval, other)
-VALUES (0, 00.3333, NULL);
-SELECT * FROM federated.t1;
-id name floatval other
-1 NULL NULL NULL
-NULL 0 0.3333 NULL
-NULL NULL NULL NULL
-NULL NULL NULL NULL
-NULL foo 33.3333 NULL
-SELECT count(*) FROM federated.t1
-WHERE id IS NULL
-AND name IS NULL
-AND floatval IS NULL
-AND other IS NULL;
-count(*)
-2
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`blurb_id` int NOT NULL DEFAULT 0,
-`blurb` text default '',
-PRIMARY KEY (blurb_id))
-DEFAULT CHARSET=latin1;
-Warnings:
-Warning 1101 BLOB/TEXT column 'blurb' can't have a default value
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`blurb_id` int NOT NULL DEFAULT 0,
-`blurb` text default '',
-PRIMARY KEY (blurb_id))
-ENGINE="FEDERATED"
- DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-Warnings:
-Warning 1101 BLOB/TEXT column 'blurb' can't have a default value
-INSERT INTO federated.t1 VALUES (1, " MySQL supports a number of column types in several categories: numeric types, date and time types, and string (character) types. This chapter first gives an overview of these column types, and then provides a more detailed description of the properties of the types in each category, and a summary of the column type storage requirements. The overview is intentionally brief. The more detailed descriptions should be consulted for additional information about particular column types, such as the allowable formats in which you can specify values.");
-INSERT INTO federated.t1 VALUES (2, "All arithmetic is done using signed BIGINT or DOUBLE values, so you should not use unsigned big integers larger than 9223372036854775807 (63 bits) except with bit functions! If you do that, some of the last digits in the result may be wrong because of rounding errors when converting a BIGINT value to a DOUBLE.");
-INSERT INTO federated.t1 VALUES (3, " A floating-point number. p represents the precision. It can be from 0 to 24 for a single-precision floating-point number and from 25 to 53 for a double-precision floating-point number. These types are like the FLOAT and DOUBLE types described immediately following. FLOAT(p) has the same range as the corresponding FLOAT and DOUBLE types, but the display size and number of decimals are undefined. ");
-INSERT INTO federated.t1 VALUES(4, "Die Übersetzung einer so umfangreichen technischen Dokumentation wie des MySQL-Referenzhandbuchs ist schon eine besondere Herausforderung. Zumindest für jemanden, der seine Zielsprache ernst nimmt:");
-SELECT * FROM federated.t1;
-blurb_id blurb
-1 MySQL supports a number of column types in several categories: numeric types, date and time types, and string (character) types. This chapter first gives an overview of these column types, and then provides a more detailed description of the properties of the types in each category, and a summary of the column type storage requirements. The overview is intentionally brief. The more detailed descriptions should be consulted for additional information about particular column types, such as the allowable formats in which you can specify values.
-2 All arithmetic is done using signed BIGINT or DOUBLE values, so you should not use unsigned big integers larger than 9223372036854775807 (63 bits) except with bit functions! If you do that, some of the last digits in the result may be wrong because of rounding errors when converting a BIGINT value to a DOUBLE.
-3 A floating-point number. p represents the precision. It can be from 0 to 24 for a single-precision floating-point number and from 25 to 53 for a double-precision floating-point number. These types are like the FLOAT and DOUBLE types described immediately following. FLOAT(p) has the same range as the corresponding FLOAT and DOUBLE types, but the display size and number of decimals are undefined.
-4 Die Übersetzung einer so umfangreichen technischen Dokumentation wie des MySQL-Referenzhandbuchs ist schon eine besondere Herausforderung. Zumindest für jemanden, der seine Zielsprache ernst nimmt:
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`a` int NOT NULL,
-`b` int NOT NULL,
-`c` int NOT NULL,
-PRIMARY KEY (a),key(b));
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`a` int NOT NULL,
-`b` int NOT NULL,
-`c` int NOT NULL,
-PRIMARY KEY (a),
-KEY (b))
-ENGINE="FEDERATED"
- DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 VALUES (3,3,3),(1,1,1),(2,2,2),(4,4,4);
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (i1 int, i2 int, i3 int, i4 int, i5 int, i6 int, i7 int, i8
-int, i9 int, i10 int, i11 int, i12 int, i13 int, i14 int, i15 int, i16 int, i17
-int, i18 int, i19 int, i20 int, i21 int, i22 int, i23 int, i24 int, i25 int,
-i26 int, i27 int, i28 int, i29 int, i30 int, i31 int, i32 int, i33 int, i34
-int, i35 int, i36 int, i37 int, i38 int, i39 int, i40 int, i41 int, i42 int,
-i43 int, i44 int, i45 int, i46 int, i47 int, i48 int, i49 int, i50 int, i51
-int, i52 int, i53 int, i54 int, i55 int, i56 int, i57 int, i58 int, i59 int,
-i60 int, i61 int, i62 int, i63 int, i64 int, i65 int, i66 int, i67 int, i68
-int, i69 int, i70 int, i71 int, i72 int, i73 int, i74 int, i75 int, i76 int,
-i77 int, i78 int, i79 int, i80 int, i81 int, i82 int, i83 int, i84 int, i85
-int, i86 int, i87 int, i88 int, i89 int, i90 int, i91 int, i92 int, i93 int,
-i94 int, i95 int, i96 int, i97 int, i98 int, i99 int, i100 int, i101 int, i102
-int, i103 int, i104 int, i105 int, i106 int, i107 int, i108 int, i109 int, i110
-int, i111 int, i112 int, i113 int, i114 int, i115 int, i116 int, i117 int, i118
-int, i119 int, i120 int, i121 int, i122 int, i123 int, i124 int, i125 int, i126
-int, i127 int, i128 int, i129 int, i130 int, i131 int, i132 int, i133 int, i134
-int, i135 int, i136 int, i137 int, i138 int, i139 int, i140 int, i141 int, i142
-int, i143 int, i144 int, i145 int, i146 int, i147 int, i148 int, i149 int, i150
-int, i151 int, i152 int, i153 int, i154 int, i155 int, i156 int, i157 int, i158
-int, i159 int, i160 int, i161 int, i162 int, i163 int, i164 int, i165 int, i166
-int, i167 int, i168 int, i169 int, i170 int, i171 int, i172 int, i173 int, i174
-int, i175 int, i176 int, i177 int, i178 int, i179 int, i180 int, i181 int, i182
-int, i183 int, i184 int, i185 int, i186 int, i187 int, i188 int, i189 int, i190
-int, i191 int, i192 int, i193 int, i194 int, i195 int, i196 int, i197 int, i198
-int, i199 int, i200 int, i201 int, i202 int, i203 int, i204 int, i205 int, i206
-int, i207 int, i208 int, i209 int, i210 int, i211 int, i212 int, i213 int, i214
-int, i215 int, i216 int, i217 int, i218 int, i219 int, i220 int, i221 int, i222
-int, i223 int, i224 int, i225 int, i226 int, i227 int, i228 int, i229 int, i230
-int, i231 int, i232 int, i233 int, i234 int, i235 int, i236 int, i237 int, i238
-int, i239 int, i240 int, i241 int, i242 int, i243 int, i244 int, i245 int, i246
-int, i247 int, i248 int, i249 int, i250 int, i251 int, i252 int, i253 int, i254
-int, i255 int, i256 int, i257 int, i258 int, i259 int, i260 int, i261 int, i262
-int, i263 int, i264 int, i265 int, i266 int, i267 int, i268 int, i269 int, i270
-int, i271 int, i272 int, i273 int, i274 int, i275 int, i276 int, i277 int, i278
-int, i279 int, i280 int, i281 int, i282 int, i283 int, i284 int, i285 int, i286
-int, i287 int, i288 int, i289 int, i290 int, i291 int, i292 int, i293 int, i294
-int, i295 int, i296 int, i297 int, i298 int, i299 int, i300 int, i301 int, i302
-int, i303 int, i304 int, i305 int, i306 int, i307 int, i308 int, i309 int, i310
-int, i311 int, i312 int, i313 int, i314 int, i315 int, i316 int, i317 int, i318
-int, i319 int, i320 int, i321 int, i322 int, i323 int, i324 int, i325 int, i326
-int, i327 int, i328 int, i329 int, i330 int, i331 int, i332 int, i333 int, i334
-int, i335 int, i336 int, i337 int, i338 int, i339 int, i340 int, i341 int, i342
-int, i343 int, i344 int, i345 int, i346 int, i347 int, i348 int, i349 int, i350
-int, i351 int, i352 int, i353 int, i354 int, i355 int, i356 int, i357 int, i358
-int, i359 int, i360 int, i361 int, i362 int, i363 int, i364 int, i365 int, i366
-int, i367 int, i368 int, i369 int, i370 int, i371 int, i372 int, i373 int, i374
-int, i375 int, i376 int, i377 int, i378 int, i379 int, i380 int, i381 int, i382
-int, i383 int, i384 int, i385 int, i386 int, i387 int, i388 int, i389 int, i390
-int, i391 int, i392 int, i393 int, i394 int, i395 int, i396 int, i397 int, i398
-int, i399 int, i400 int, i401 int, i402 int, i403 int, i404 int, i405 int, i406
-int, i407 int, i408 int, i409 int, i410 int, i411 int, i412 int, i413 int, i414
-int, i415 int, i416 int, i417 int, i418 int, i419 int, i420 int, i421 int, i422
-int, i423 int, i424 int, i425 int, i426 int, i427 int, i428 int, i429 int, i430
-int, i431 int, i432 int, i433 int, i434 int, i435 int, i436 int, i437 int, i438
-int, i439 int, i440 int, i441 int, i442 int, i443 int, i444 int, i445 int, i446
-int, i447 int, i448 int, i449 int, i450 int, i451 int, i452 int, i453 int, i454
-int, i455 int, i456 int, i457 int, i458 int, i459 int, i460 int, i461 int, i462
-int, i463 int, i464 int, i465 int, i466 int, i467 int, i468 int, i469 int, i470
-int, i471 int, i472 int, i473 int, i474 int, i475 int, i476 int, i477 int, i478
-int, i479 int, i480 int, i481 int, i482 int, i483 int, i484 int, i485 int, i486
-int, i487 int, i488 int, i489 int, i490 int, i491 int, i492 int, i493 int, i494
-int, i495 int, i496 int, i497 int, i498 int, i499 int, i500 int, i501 int, i502
-int, i503 int, i504 int, i505 int, i506 int, i507 int, i508 int, i509 int, i510
-int, i511 int, i512 int, i513 int, i514 int, i515 int, i516 int, i517 int, i518
-int, i519 int, i520 int, i521 int, i522 int, i523 int, i524 int, i525 int, i526
-int, i527 int, i528 int, i529 int, i530 int, i531 int, i532 int, i533 int, i534
-int, i535 int, i536 int, i537 int, i538 int, i539 int, i540 int, i541 int, i542
-int, i543 int, i544 int, i545 int, i546 int, i547 int, i548 int, i549 int, i550
-int, i551 int, i552 int, i553 int, i554 int, i555 int, i556 int, i557 int, i558
-int, i559 int, i560 int, i561 int, i562 int, i563 int, i564 int, i565 int, i566
-int, i567 int, i568 int, i569 int, i570 int, i571 int, i572 int, i573 int, i574
-int, i575 int, i576 int, i577 int, i578 int, i579 int, i580 int, i581 int, i582
-int, i583 int, i584 int, i585 int, i586 int, i587 int, i588 int, i589 int, i590
-int, i591 int, i592 int, i593 int, i594 int, i595 int, i596 int, i597 int, i598
-int, i599 int, i600 int, i601 int, i602 int, i603 int, i604 int, i605 int, i606
-int, i607 int, i608 int, i609 int, i610 int, i611 int, i612 int, i613 int, i614
-int, i615 int, i616 int, i617 int, i618 int, i619 int, i620 int, i621 int, i622
-int, i623 int, i624 int, i625 int, i626 int, i627 int, i628 int, i629 int, i630
-int, i631 int, i632 int, i633 int, i634 int, i635 int, i636 int, i637 int, i638
-int, i639 int, i640 int, i641 int, i642 int, i643 int, i644 int, i645 int, i646
-int, i647 int, i648 int, i649 int, i650 int, i651 int, i652 int, i653 int, i654
-int, i655 int, i656 int, i657 int, i658 int, i659 int, i660 int, i661 int, i662
-int, i663 int, i664 int, i665 int, i666 int, i667 int, i668 int, i669 int, i670
-int, i671 int, i672 int, i673 int, i674 int, i675 int, i676 int, i677 int, i678
-int, i679 int, i680 int, i681 int, i682 int, i683 int, i684 int, i685 int, i686
-int, i687 int, i688 int, i689 int, i690 int, i691 int, i692 int, i693 int, i694
-int, i695 int, i696 int, i697 int, i698 int, i699 int, i700 int, i701 int, i702
-int, i703 int, i704 int, i705 int, i706 int, i707 int, i708 int, i709 int, i710
-int, i711 int, i712 int, i713 int, i714 int, i715 int, i716 int, i717 int, i718
-int, i719 int, i720 int, i721 int, i722 int, i723 int, i724 int, i725 int, i726
-int, i727 int, i728 int, i729 int, i730 int, i731 int, i732 int, i733 int, i734
-int, i735 int, i736 int, i737 int, i738 int, i739 int, i740 int, i741 int, i742
-int, i743 int, i744 int, i745 int, i746 int, i747 int, i748 int, i749 int, i750
-int, i751 int, i752 int, i753 int, i754 int, i755 int, i756 int, i757 int, i758
-int, i759 int, i760 int, i761 int, i762 int, i763 int, i764 int, i765 int, i766
-int, i767 int, i768 int, i769 int, i770 int, i771 int, i772 int, i773 int, i774
-int, i775 int, i776 int, i777 int, i778 int, i779 int, i780 int, i781 int, i782
-int, i783 int, i784 int, i785 int, i786 int, i787 int, i788 int, i789 int, i790
-int, i791 int, i792 int, i793 int, i794 int, i795 int, i796 int, i797 int, i798
-int, i799 int, i800 int, i801 int, i802 int, i803 int, i804 int, i805 int, i806
-int, i807 int, i808 int, i809 int, i810 int, i811 int, i812 int, i813 int, i814
-int, i815 int, i816 int, i817 int, i818 int, i819 int, i820 int, i821 int, i822
-int, i823 int, i824 int, i825 int, i826 int, i827 int, i828 int, i829 int, i830
-int, i831 int, i832 int, i833 int, i834 int, i835 int, i836 int, i837 int, i838
-int, i839 int, i840 int, i841 int, i842 int, i843 int, i844 int, i845 int, i846
-int, i847 int, i848 int, i849 int, i850 int, i851 int, i852 int, i853 int, i854
-int, i855 int, i856 int, i857 int, i858 int, i859 int, i860 int, i861 int, i862
-int, i863 int, i864 int, i865 int, i866 int, i867 int, i868 int, i869 int, i870
-int, i871 int, i872 int, i873 int, i874 int, i875 int, i876 int, i877 int, i878
-int, i879 int, i880 int, i881 int, i882 int, i883 int, i884 int, i885 int, i886
-int, i887 int, i888 int, i889 int, i890 int, i891 int, i892 int, i893 int, i894
-int, i895 int, i896 int, i897 int, i898 int, i899 int, i900 int, i901 int, i902
-int, i903 int, i904 int, i905 int, i906 int, i907 int, i908 int, i909 int, i910
-int, i911 int, i912 int, i913 int, i914 int, i915 int, i916 int, i917 int, i918
-int, i919 int, i920 int, i921 int, i922 int, i923 int, i924 int, i925 int, i926
-int, i927 int, i928 int, i929 int, i930 int, i931 int, i932 int, i933 int, i934
-int, i935 int, i936 int, i937 int, i938 int, i939 int, i940 int, i941 int, i942
-int, i943 int, i944 int, i945 int, i946 int, i947 int, i948 int, i949 int, i950
-int, i951 int, i952 int, i953 int, i954 int, i955 int, i956 int, i957 int, i958
-int, i959 int, i960 int, i961 int, i962 int, i963 int, i964 int, i965 int, i966
-int, i967 int, i968 int, i969 int, i970 int, i971 int, i972 int, i973 int, i974
-int, i975 int, i976 int, i977 int, i978 int, i979 int, i980 int, i981 int, i982
-int, i983 int, i984 int, i985 int, i986 int, i987 int, i988 int, i989 int, i990
-int, i991 int, i992 int, i993 int, i994 int, i995 int, i996 int, i997 int, i998
-int, i999 int, i1000 int, b varchar(256)) row_format=dynamic;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1
-(i1 int, i2 int, i3 int, i4 int, i5 int, i6 int, i7 int, i8
-int, i9 int, i10 int, i11 int, i12 int, i13 int, i14 int, i15 int, i16 int,
-i17 int, i18 int, i19 int, i20 int, i21 int, i22 int, i23 int, i24 int, i25 int,
-i26 int, i27 int, i28 int, i29 int, i30 int, i31 int, i32 int, i33 int, i34
-int, i35 int, i36 int, i37 int, i38 int, i39 int, i40 int, i41 int, i42 int,
-i43 int, i44 int, i45 int, i46 int, i47 int, i48 int, i49 int, i50 int, i51
-int, i52 int, i53 int, i54 int, i55 int, i56 int, i57 int, i58 int, i59 int,
-i60 int, i61 int, i62 int, i63 int, i64 int, i65 int, i66 int, i67 int, i68
-int, i69 int, i70 int, i71 int, i72 int, i73 int, i74 int, i75 int, i76 int,
-i77 int, i78 int, i79 int, i80 int, i81 int, i82 int, i83 int, i84 int, i85
-int, i86 int, i87 int, i88 int, i89 int, i90 int, i91 int, i92 int, i93 int,
-i94 int, i95 int, i96 int, i97 int, i98 int, i99 int, i100 int, i101 int, i102
-int, i103 int, i104 int, i105 int, i106 int, i107 int, i108 int, i109 int, i110
-int, i111 int, i112 int, i113 int, i114 int, i115 int, i116 int, i117 int, i118
-int, i119 int, i120 int, i121 int, i122 int, i123 int, i124 int, i125 int, i126
-int, i127 int, i128 int, i129 int, i130 int, i131 int, i132 int, i133 int, i134
-int, i135 int, i136 int, i137 int, i138 int, i139 int, i140 int, i141 int, i142
-int, i143 int, i144 int, i145 int, i146 int, i147 int, i148 int, i149 int, i150
-int, i151 int, i152 int, i153 int, i154 int, i155 int, i156 int, i157 int, i158
-int, i159 int, i160 int, i161 int, i162 int, i163 int, i164 int, i165 int, i166
-int, i167 int, i168 int, i169 int, i170 int, i171 int, i172 int, i173 int, i174
-int, i175 int, i176 int, i177 int, i178 int, i179 int, i180 int, i181 int, i182
-int, i183 int, i184 int, i185 int, i186 int, i187 int, i188 int, i189 int, i190
-int, i191 int, i192 int, i193 int, i194 int, i195 int, i196 int, i197 int, i198
-int, i199 int, i200 int, i201 int, i202 int, i203 int, i204 int, i205 int, i206
-int, i207 int, i208 int, i209 int, i210 int, i211 int, i212 int, i213 int, i214
-int, i215 int, i216 int, i217 int, i218 int, i219 int, i220 int, i221 int, i222
-int, i223 int, i224 int, i225 int, i226 int, i227 int, i228 int, i229 int, i230
-int, i231 int, i232 int, i233 int, i234 int, i235 int, i236 int, i237 int, i238
-int, i239 int, i240 int, i241 int, i242 int, i243 int, i244 int, i245 int, i246
-int, i247 int, i248 int, i249 int, i250 int, i251 int, i252 int, i253 int, i254
-int, i255 int, i256 int, i257 int, i258 int, i259 int, i260 int, i261 int, i262
-int, i263 int, i264 int, i265 int, i266 int, i267 int, i268 int, i269 int, i270
-int, i271 int, i272 int, i273 int, i274 int, i275 int, i276 int, i277 int, i278
-int, i279 int, i280 int, i281 int, i282 int, i283 int, i284 int, i285 int, i286
-int, i287 int, i288 int, i289 int, i290 int, i291 int, i292 int, i293 int, i294
-int, i295 int, i296 int, i297 int, i298 int, i299 int, i300 int, i301 int, i302
-int, i303 int, i304 int, i305 int, i306 int, i307 int, i308 int, i309 int, i310
-int, i311 int, i312 int, i313 int, i314 int, i315 int, i316 int, i317 int, i318
-int, i319 int, i320 int, i321 int, i322 int, i323 int, i324 int, i325 int, i326
-int, i327 int, i328 int, i329 int, i330 int, i331 int, i332 int, i333 int, i334
-int, i335 int, i336 int, i337 int, i338 int, i339 int, i340 int, i341 int, i342
-int, i343 int, i344 int, i345 int, i346 int, i347 int, i348 int, i349 int, i350
-int, i351 int, i352 int, i353 int, i354 int, i355 int, i356 int, i357 int, i358
-int, i359 int, i360 int, i361 int, i362 int, i363 int, i364 int, i365 int, i366
-int, i367 int, i368 int, i369 int, i370 int, i371 int, i372 int, i373 int, i374
-int, i375 int, i376 int, i377 int, i378 int, i379 int, i380 int, i381 int, i382
-int, i383 int, i384 int, i385 int, i386 int, i387 int, i388 int, i389 int, i390
-int, i391 int, i392 int, i393 int, i394 int, i395 int, i396 int, i397 int, i398
-int, i399 int, i400 int, i401 int, i402 int, i403 int, i404 int, i405 int, i406
-int, i407 int, i408 int, i409 int, i410 int, i411 int, i412 int, i413 int, i414
-int, i415 int, i416 int, i417 int, i418 int, i419 int, i420 int, i421 int, i422
-int, i423 int, i424 int, i425 int, i426 int, i427 int, i428 int, i429 int, i430
-int, i431 int, i432 int, i433 int, i434 int, i435 int, i436 int, i437 int, i438
-int, i439 int, i440 int, i441 int, i442 int, i443 int, i444 int, i445 int, i446
-int, i447 int, i448 int, i449 int, i450 int, i451 int, i452 int, i453 int, i454
-int, i455 int, i456 int, i457 int, i458 int, i459 int, i460 int, i461 int, i462
-int, i463 int, i464 int, i465 int, i466 int, i467 int, i468 int, i469 int, i470
-int, i471 int, i472 int, i473 int, i474 int, i475 int, i476 int, i477 int, i478
-int, i479 int, i480 int, i481 int, i482 int, i483 int, i484 int, i485 int, i486
-int, i487 int, i488 int, i489 int, i490 int, i491 int, i492 int, i493 int, i494
-int, i495 int, i496 int, i497 int, i498 int, i499 int, i500 int, i501 int, i502
-int, i503 int, i504 int, i505 int, i506 int, i507 int, i508 int, i509 int, i510
-int, i511 int, i512 int, i513 int, i514 int, i515 int, i516 int, i517 int, i518
-int, i519 int, i520 int, i521 int, i522 int, i523 int, i524 int, i525 int, i526
-int, i527 int, i528 int, i529 int, i530 int, i531 int, i532 int, i533 int, i534
-int, i535 int, i536 int, i537 int, i538 int, i539 int, i540 int, i541 int, i542
-int, i543 int, i544 int, i545 int, i546 int, i547 int, i548 int, i549 int, i550
-int, i551 int, i552 int, i553 int, i554 int, i555 int, i556 int, i557 int, i558
-int, i559 int, i560 int, i561 int, i562 int, i563 int, i564 int, i565 int, i566
-int, i567 int, i568 int, i569 int, i570 int, i571 int, i572 int, i573 int, i574
-int, i575 int, i576 int, i577 int, i578 int, i579 int, i580 int, i581 int, i582
-int, i583 int, i584 int, i585 int, i586 int, i587 int, i588 int, i589 int, i590
-int, i591 int, i592 int, i593 int, i594 int, i595 int, i596 int, i597 int, i598
-int, i599 int, i600 int, i601 int, i602 int, i603 int, i604 int, i605 int, i606
-int, i607 int, i608 int, i609 int, i610 int, i611 int, i612 int, i613 int, i614
-int, i615 int, i616 int, i617 int, i618 int, i619 int, i620 int, i621 int, i622
-int, i623 int, i624 int, i625 int, i626 int, i627 int, i628 int, i629 int, i630
-int, i631 int, i632 int, i633 int, i634 int, i635 int, i636 int, i637 int, i638
-int, i639 int, i640 int, i641 int, i642 int, i643 int, i644 int, i645 int, i646
-int, i647 int, i648 int, i649 int, i650 int, i651 int, i652 int, i653 int, i654
-int, i655 int, i656 int, i657 int, i658 int, i659 int, i660 int, i661 int, i662
-int, i663 int, i664 int, i665 int, i666 int, i667 int, i668 int, i669 int, i670
-int, i671 int, i672 int, i673 int, i674 int, i675 int, i676 int, i677 int, i678
-int, i679 int, i680 int, i681 int, i682 int, i683 int, i684 int, i685 int, i686
-int, i687 int, i688 int, i689 int, i690 int, i691 int, i692 int, i693 int, i694
-int, i695 int, i696 int, i697 int, i698 int, i699 int, i700 int, i701 int, i702
-int, i703 int, i704 int, i705 int, i706 int, i707 int, i708 int, i709 int, i710
-int, i711 int, i712 int, i713 int, i714 int, i715 int, i716 int, i717 int, i718
-int, i719 int, i720 int, i721 int, i722 int, i723 int, i724 int, i725 int, i726
-int, i727 int, i728 int, i729 int, i730 int, i731 int, i732 int, i733 int, i734
-int, i735 int, i736 int, i737 int, i738 int, i739 int, i740 int, i741 int, i742
-int, i743 int, i744 int, i745 int, i746 int, i747 int, i748 int, i749 int, i750
-int, i751 int, i752 int, i753 int, i754 int, i755 int, i756 int, i757 int, i758
-int, i759 int, i760 int, i761 int, i762 int, i763 int, i764 int, i765 int, i766
-int, i767 int, i768 int, i769 int, i770 int, i771 int, i772 int, i773 int, i774
-int, i775 int, i776 int, i777 int, i778 int, i779 int, i780 int, i781 int, i782
-int, i783 int, i784 int, i785 int, i786 int, i787 int, i788 int, i789 int, i790
-int, i791 int, i792 int, i793 int, i794 int, i795 int, i796 int, i797 int, i798
-int, i799 int, i800 int, i801 int, i802 int, i803 int, i804 int, i805 int, i806
-int, i807 int, i808 int, i809 int, i810 int, i811 int, i812 int, i813 int, i814
-int, i815 int, i816 int, i817 int, i818 int, i819 int, i820 int, i821 int, i822
-int, i823 int, i824 int, i825 int, i826 int, i827 int, i828 int, i829 int, i830
-int, i831 int, i832 int, i833 int, i834 int, i835 int, i836 int, i837 int, i838
-int, i839 int, i840 int, i841 int, i842 int, i843 int, i844 int, i845 int, i846
-int, i847 int, i848 int, i849 int, i850 int, i851 int, i852 int, i853 int, i854
-int, i855 int, i856 int, i857 int, i858 int, i859 int, i860 int, i861 int, i862
-int, i863 int, i864 int, i865 int, i866 int, i867 int, i868 int, i869 int, i870
-int, i871 int, i872 int, i873 int, i874 int, i875 int, i876 int, i877 int, i878
-int, i879 int, i880 int, i881 int, i882 int, i883 int, i884 int, i885 int, i886
-int, i887 int, i888 int, i889 int, i890 int, i891 int, i892 int, i893 int, i894
-int, i895 int, i896 int, i897 int, i898 int, i899 int, i900 int, i901 int, i902
-int, i903 int, i904 int, i905 int, i906 int, i907 int, i908 int, i909 int, i910
-int, i911 int, i912 int, i913 int, i914 int, i915 int, i916 int, i917 int, i918
-int, i919 int, i920 int, i921 int, i922 int, i923 int, i924 int, i925 int, i926
-int, i927 int, i928 int, i929 int, i930 int, i931 int, i932 int, i933 int, i934
-int, i935 int, i936 int, i937 int, i938 int, i939 int, i940 int, i941 int, i942
-int, i943 int, i944 int, i945 int, i946 int, i947 int, i948 int, i949 int, i950
-int, i951 int, i952 int, i953 int, i954 int, i955 int, i956 int, i957 int, i958
-int, i959 int, i960 int, i961 int, i962 int, i963 int, i964 int, i965 int, i966
-int, i967 int, i968 int, i969 int, i970 int, i971 int, i972 int, i973 int, i974
-int, i975 int, i976 int, i977 int, i978 int, i979 int, i980 int, i981 int, i982
-int, i983 int, i984 int, i985 int, i986 int, i987 int, i988 int, i989 int, i990
-int, i991 int, i992 int, i993 int, i994 int, i995 int, i996 int, i997 int, i998
-int, i999 int, i1000 int, b varchar(256))
-row_format=dynamic
-ENGINE="FEDERATED"
-DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1
-values (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, "PatrickG");
-UPDATE federated.t1 SET b=repeat('a',256);
-UPDATE federated.t1 SET i1=0, i2=0, i3=0, i4=0, i5=0, i6=0, i7=0, i8=0, i9=0, i10=0;
-SELECT * FROM federated.t1 WHERE i9=0 and i10=0;
-i1 i2 i3 i4 i5 i6 i7 i8 i9 i10 i11 i12 i13 i14 i15 i16 i17 i18 i19 i20 i21 i22 i23 i24 i25 i26 i27 i28 i29 i30 i31 i32 i33 i34 i35 i36 i37 i38 i39 i40 i41 i42 i43 i44 i45 i46 i47 i48 i49 i50 i51 i52 i53 i54 i55 i56 i57 i58 i59 i60 i61 i62 i63 i64 i65 i66 i67 i68 i69 i70 i71 i72 i73 i74 i75 i76 i77 i78 i79 i80 i81 i82 i83 i84 i85 i86 i87 i88 i89 i90 i91 i92 i93 i94 i95 i96 i97 i98 i99 i100 i101 i102 i103 i104 i105 i106 i107 i108 i109 i110 i111 i112 i113 i114 i115 i116 i117 i118 i119 i120 i121 i122 i123 i124 i125 i126 i127 i128 i129 i130 i131 i132 i133 i134 i135 i136 i137 i138 i139 i140 i141 i142 i143 i144 i145 i146 i147 i148 i149 i150 i151 i152 i153 i154 i155 i156 i157 i158 i159 i160 i161 i162 i163 i164 i165 i166 i167 i168 i169 i170 i171 i172 i173 i174 i175 i176 i177 i178 i179 i180 i181 i182 i183 i184 i185 i186 i187 i188 i189 i190 i191 i192 i193 i194 i195 i196 i197 i198 i199 i200 i201 i202 i203 i204 i205 i206 i207 i208 i209 i210 i211 i212 i213 i214 i215 i216 i217 i218 i219 i220 i221 i222 i223 i224 i225 i226 i227 i228 i229 i230 i231 i232 i233 i234 i235 i236 i237 i238 i239 i240 i241 i242 i243 i244 i245 i246 i247 i248 i249 i250 i251 i252 i253 i254 i255 i256 i257 i258 i259 i260 i261 i262 i263 i264 i265 i266 i267 i268 i269 i270 i271 i272 i273 i274 i275 i276 i277 i278 i279 i280 i281 i282 i283 i284 i285 i286 i287 i288 i289 i290 i291 i292 i293 i294 i295 i296 i297 i298 i299 i300 i301 i302 i303 i304 i305 i306 i307 i308 i309 i310 i311 i312 i313 i314 i315 i316 i317 i318 i319 i320 i321 i322 i323 i324 i325 i326 i327 i328 i329 i330 i331 i332 i333 i334 i335 i336 i337 i338 i339 i340 i341 i342 i343 i344 i345 i346 i347 i348 i349 i350 i351 i352 i353 i354 i355 i356 i357 i358 i359 i360 i361 i362 i363 i364 i365 i366 i367 i368 i369 i370 i371 i372 i373 i374 i375 i376 i377 i378 i379 i380 i381 i382 i383 i384 i385 i386 i387 i388 i389 i390 i391 i392 i393 i394 i395 i396 i397 i398 i399 i400 i401 i402 i403 i404 i405 i406 i407 i408 i409 i410 i411 i412 i413 i414 i415 i416 i417 i418 i419 i420 i421 i422 i423 i424 i425 i426 i427 i428 i429 i430 i431 i432 i433 i434 i435 i436 i437 i438 i439 i440 i441 i442 i443 i444 i445 i446 i447 i448 i449 i450 i451 i452 i453 i454 i455 i456 i457 i458 i459 i460 i461 i462 i463 i464 i465 i466 i467 i468 i469 i470 i471 i472 i473 i474 i475 i476 i477 i478 i479 i480 i481 i482 i483 i484 i485 i486 i487 i488 i489 i490 i491 i492 i493 i494 i495 i496 i497 i498 i499 i500 i501 i502 i503 i504 i505 i506 i507 i508 i509 i510 i511 i512 i513 i514 i515 i516 i517 i518 i519 i520 i521 i522 i523 i524 i525 i526 i527 i528 i529 i530 i531 i532 i533 i534 i535 i536 i537 i538 i539 i540 i541 i542 i543 i544 i545 i546 i547 i548 i549 i550 i551 i552 i553 i554 i555 i556 i557 i558 i559 i560 i561 i562 i563 i564 i565 i566 i567 i568 i569 i570 i571 i572 i573 i574 i575 i576 i577 i578 i579 i580 i581 i582 i583 i584 i585 i586 i587 i588 i589 i590 i591 i592 i593 i594 i595 i596 i597 i598 i599 i600 i601 i602 i603 i604 i605 i606 i607 i608 i609 i610 i611 i612 i613 i614 i615 i616 i617 i618 i619 i620 i621 i622 i623 i624 i625 i626 i627 i628 i629 i630 i631 i632 i633 i634 i635 i636 i637 i638 i639 i640 i641 i642 i643 i644 i645 i646 i647 i648 i649 i650 i651 i652 i653 i654 i655 i656 i657 i658 i659 i660 i661 i662 i663 i664 i665 i666 i667 i668 i669 i670 i671 i672 i673 i674 i675 i676 i677 i678 i679 i680 i681 i682 i683 i684 i685 i686 i687 i688 i689 i690 i691 i692 i693 i694 i695 i696 i697 i698 i699 i700 i701 i702 i703 i704 i705 i706 i707 i708 i709 i710 i711 i712 i713 i714 i715 i716 i717 i718 i719 i720 i721 i722 i723 i724 i725 i726 i727 i728 i729 i730 i731 i732 i733 i734 i735 i736 i737 i738 i739 i740 i741 i742 i743 i744 i745 i746 i747 i748 i749 i750 i751 i752 i753 i754 i755 i756 i757 i758 i759 i760 i761 i762 i763 i764 i765 i766 i767 i768 i769 i770 i771 i772 i773 i774 i775 i776 i777 i778 i779 i780 i781 i782 i783 i784 i785 i786 i787 i788 i789 i790 i791 i792 i793 i794 i795 i796 i797 i798 i799 i800 i801 i802 i803 i804 i805 i806 i807 i808 i809 i810 i811 i812 i813 i814 i815 i816 i817 i818 i819 i820 i821 i822 i823 i824 i825 i826 i827 i828 i829 i830 i831 i832 i833 i834 i835 i836 i837 i838 i839 i840 i841 i842 i843 i844 i845 i846 i847 i848 i849 i850 i851 i852 i853 i854 i855 i856 i857 i858 i859 i860 i861 i862 i863 i864 i865 i866 i867 i868 i869 i870 i871 i872 i873 i874 i875 i876 i877 i878 i879 i880 i881 i882 i883 i884 i885 i886 i887 i888 i889 i890 i891 i892 i893 i894 i895 i896 i897 i898 i899 i900 i901 i902 i903 i904 i905 i906 i907 i908 i909 i910 i911 i912 i913 i914 i915 i916 i917 i918 i919 i920 i921 i922 i923 i924 i925 i926 i927 i928 i929 i930 i931 i932 i933 i934 i935 i936 i937 i938 i939 i940 i941 i942 i943 i944 i945 i946 i947 i948 i949 i950 i951 i952 i953 i954 i955 i956 i957 i958 i959 i960 i961 i962 i963 i964 i965 i966 i967 i968 i969 i970 i971 i972 i973 i974 i975 i976 i977 i978 i979 i980 i981 i982 i983 i984 i985 i986 i987 i988 i989 i990 i991 i992 i993 i994 i995 i996 i997 i998 i999 i1000 b
-0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-UPDATE federated.t1 SET i50=20;
-SELECT * FROM federated.t1;
-i1 i2 i3 i4 i5 i6 i7 i8 i9 i10 i11 i12 i13 i14 i15 i16 i17 i18 i19 i20 i21 i22 i23 i24 i25 i26 i27 i28 i29 i30 i31 i32 i33 i34 i35 i36 i37 i38 i39 i40 i41 i42 i43 i44 i45 i46 i47 i48 i49 i50 i51 i52 i53 i54 i55 i56 i57 i58 i59 i60 i61 i62 i63 i64 i65 i66 i67 i68 i69 i70 i71 i72 i73 i74 i75 i76 i77 i78 i79 i80 i81 i82 i83 i84 i85 i86 i87 i88 i89 i90 i91 i92 i93 i94 i95 i96 i97 i98 i99 i100 i101 i102 i103 i104 i105 i106 i107 i108 i109 i110 i111 i112 i113 i114 i115 i116 i117 i118 i119 i120 i121 i122 i123 i124 i125 i126 i127 i128 i129 i130 i131 i132 i133 i134 i135 i136 i137 i138 i139 i140 i141 i142 i143 i144 i145 i146 i147 i148 i149 i150 i151 i152 i153 i154 i155 i156 i157 i158 i159 i160 i161 i162 i163 i164 i165 i166 i167 i168 i169 i170 i171 i172 i173 i174 i175 i176 i177 i178 i179 i180 i181 i182 i183 i184 i185 i186 i187 i188 i189 i190 i191 i192 i193 i194 i195 i196 i197 i198 i199 i200 i201 i202 i203 i204 i205 i206 i207 i208 i209 i210 i211 i212 i213 i214 i215 i216 i217 i218 i219 i220 i221 i222 i223 i224 i225 i226 i227 i228 i229 i230 i231 i232 i233 i234 i235 i236 i237 i238 i239 i240 i241 i242 i243 i244 i245 i246 i247 i248 i249 i250 i251 i252 i253 i254 i255 i256 i257 i258 i259 i260 i261 i262 i263 i264 i265 i266 i267 i268 i269 i270 i271 i272 i273 i274 i275 i276 i277 i278 i279 i280 i281 i282 i283 i284 i285 i286 i287 i288 i289 i290 i291 i292 i293 i294 i295 i296 i297 i298 i299 i300 i301 i302 i303 i304 i305 i306 i307 i308 i309 i310 i311 i312 i313 i314 i315 i316 i317 i318 i319 i320 i321 i322 i323 i324 i325 i326 i327 i328 i329 i330 i331 i332 i333 i334 i335 i336 i337 i338 i339 i340 i341 i342 i343 i344 i345 i346 i347 i348 i349 i350 i351 i352 i353 i354 i355 i356 i357 i358 i359 i360 i361 i362 i363 i364 i365 i366 i367 i368 i369 i370 i371 i372 i373 i374 i375 i376 i377 i378 i379 i380 i381 i382 i383 i384 i385 i386 i387 i388 i389 i390 i391 i392 i393 i394 i395 i396 i397 i398 i399 i400 i401 i402 i403 i404 i405 i406 i407 i408 i409 i410 i411 i412 i413 i414 i415 i416 i417 i418 i419 i420 i421 i422 i423 i424 i425 i426 i427 i428 i429 i430 i431 i432 i433 i434 i435 i436 i437 i438 i439 i440 i441 i442 i443 i444 i445 i446 i447 i448 i449 i450 i451 i452 i453 i454 i455 i456 i457 i458 i459 i460 i461 i462 i463 i464 i465 i466 i467 i468 i469 i470 i471 i472 i473 i474 i475 i476 i477 i478 i479 i480 i481 i482 i483 i484 i485 i486 i487 i488 i489 i490 i491 i492 i493 i494 i495 i496 i497 i498 i499 i500 i501 i502 i503 i504 i505 i506 i507 i508 i509 i510 i511 i512 i513 i514 i515 i516 i517 i518 i519 i520 i521 i522 i523 i524 i525 i526 i527 i528 i529 i530 i531 i532 i533 i534 i535 i536 i537 i538 i539 i540 i541 i542 i543 i544 i545 i546 i547 i548 i549 i550 i551 i552 i553 i554 i555 i556 i557 i558 i559 i560 i561 i562 i563 i564 i565 i566 i567 i568 i569 i570 i571 i572 i573 i574 i575 i576 i577 i578 i579 i580 i581 i582 i583 i584 i585 i586 i587 i588 i589 i590 i591 i592 i593 i594 i595 i596 i597 i598 i599 i600 i601 i602 i603 i604 i605 i606 i607 i608 i609 i610 i611 i612 i613 i614 i615 i616 i617 i618 i619 i620 i621 i622 i623 i624 i625 i626 i627 i628 i629 i630 i631 i632 i633 i634 i635 i636 i637 i638 i639 i640 i641 i642 i643 i644 i645 i646 i647 i648 i649 i650 i651 i652 i653 i654 i655 i656 i657 i658 i659 i660 i661 i662 i663 i664 i665 i666 i667 i668 i669 i670 i671 i672 i673 i674 i675 i676 i677 i678 i679 i680 i681 i682 i683 i684 i685 i686 i687 i688 i689 i690 i691 i692 i693 i694 i695 i696 i697 i698 i699 i700 i701 i702 i703 i704 i705 i706 i707 i708 i709 i710 i711 i712 i713 i714 i715 i716 i717 i718 i719 i720 i721 i722 i723 i724 i725 i726 i727 i728 i729 i730 i731 i732 i733 i734 i735 i736 i737 i738 i739 i740 i741 i742 i743 i744 i745 i746 i747 i748 i749 i750 i751 i752 i753 i754 i755 i756 i757 i758 i759 i760 i761 i762 i763 i764 i765 i766 i767 i768 i769 i770 i771 i772 i773 i774 i775 i776 i777 i778 i779 i780 i781 i782 i783 i784 i785 i786 i787 i788 i789 i790 i791 i792 i793 i794 i795 i796 i797 i798 i799 i800 i801 i802 i803 i804 i805 i806 i807 i808 i809 i810 i811 i812 i813 i814 i815 i816 i817 i818 i819 i820 i821 i822 i823 i824 i825 i826 i827 i828 i829 i830 i831 i832 i833 i834 i835 i836 i837 i838 i839 i840 i841 i842 i843 i844 i845 i846 i847 i848 i849 i850 i851 i852 i853 i854 i855 i856 i857 i858 i859 i860 i861 i862 i863 i864 i865 i866 i867 i868 i869 i870 i871 i872 i873 i874 i875 i876 i877 i878 i879 i880 i881 i882 i883 i884 i885 i886 i887 i888 i889 i890 i891 i892 i893 i894 i895 i896 i897 i898 i899 i900 i901 i902 i903 i904 i905 i906 i907 i908 i909 i910 i911 i912 i913 i914 i915 i916 i917 i918 i919 i920 i921 i922 i923 i924 i925 i926 i927 i928 i929 i930 i931 i932 i933 i934 i935 i936 i937 i938 i939 i940 i941 i942 i943 i944 i945 i946 i947 i948 i949 i950 i951 i952 i953 i954 i955 i956 i957 i958 i959 i960 i961 i962 i963 i964 i965 i966 i967 i968 i969 i970 i971 i972 i973 i974 i975 i976 i977 i978 i979 i980 i981 i982 i983 i984 i985 i986 i987 i988 i989 i990 i991 i992 i993 i994 i995 i996 i997 i998 i999 i1000 b
-0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 20 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-DELETE FROM federated.t1 WHERE i51=20;
-SELECT * FROM federated.t1;
-i1 i2 i3 i4 i5 i6 i7 i8 i9 i10 i11 i12 i13 i14 i15 i16 i17 i18 i19 i20 i21 i22 i23 i24 i25 i26 i27 i28 i29 i30 i31 i32 i33 i34 i35 i36 i37 i38 i39 i40 i41 i42 i43 i44 i45 i46 i47 i48 i49 i50 i51 i52 i53 i54 i55 i56 i57 i58 i59 i60 i61 i62 i63 i64 i65 i66 i67 i68 i69 i70 i71 i72 i73 i74 i75 i76 i77 i78 i79 i80 i81 i82 i83 i84 i85 i86 i87 i88 i89 i90 i91 i92 i93 i94 i95 i96 i97 i98 i99 i100 i101 i102 i103 i104 i105 i106 i107 i108 i109 i110 i111 i112 i113 i114 i115 i116 i117 i118 i119 i120 i121 i122 i123 i124 i125 i126 i127 i128 i129 i130 i131 i132 i133 i134 i135 i136 i137 i138 i139 i140 i141 i142 i143 i144 i145 i146 i147 i148 i149 i150 i151 i152 i153 i154 i155 i156 i157 i158 i159 i160 i161 i162 i163 i164 i165 i166 i167 i168 i169 i170 i171 i172 i173 i174 i175 i176 i177 i178 i179 i180 i181 i182 i183 i184 i185 i186 i187 i188 i189 i190 i191 i192 i193 i194 i195 i196 i197 i198 i199 i200 i201 i202 i203 i204 i205 i206 i207 i208 i209 i210 i211 i212 i213 i214 i215 i216 i217 i218 i219 i220 i221 i222 i223 i224 i225 i226 i227 i228 i229 i230 i231 i232 i233 i234 i235 i236 i237 i238 i239 i240 i241 i242 i243 i244 i245 i246 i247 i248 i249 i250 i251 i252 i253 i254 i255 i256 i257 i258 i259 i260 i261 i262 i263 i264 i265 i266 i267 i268 i269 i270 i271 i272 i273 i274 i275 i276 i277 i278 i279 i280 i281 i282 i283 i284 i285 i286 i287 i288 i289 i290 i291 i292 i293 i294 i295 i296 i297 i298 i299 i300 i301 i302 i303 i304 i305 i306 i307 i308 i309 i310 i311 i312 i313 i314 i315 i316 i317 i318 i319 i320 i321 i322 i323 i324 i325 i326 i327 i328 i329 i330 i331 i332 i333 i334 i335 i336 i337 i338 i339 i340 i341 i342 i343 i344 i345 i346 i347 i348 i349 i350 i351 i352 i353 i354 i355 i356 i357 i358 i359 i360 i361 i362 i363 i364 i365 i366 i367 i368 i369 i370 i371 i372 i373 i374 i375 i376 i377 i378 i379 i380 i381 i382 i383 i384 i385 i386 i387 i388 i389 i390 i391 i392 i393 i394 i395 i396 i397 i398 i399 i400 i401 i402 i403 i404 i405 i406 i407 i408 i409 i410 i411 i412 i413 i414 i415 i416 i417 i418 i419 i420 i421 i422 i423 i424 i425 i426 i427 i428 i429 i430 i431 i432 i433 i434 i435 i436 i437 i438 i439 i440 i441 i442 i443 i444 i445 i446 i447 i448 i449 i450 i451 i452 i453 i454 i455 i456 i457 i458 i459 i460 i461 i462 i463 i464 i465 i466 i467 i468 i469 i470 i471 i472 i473 i474 i475 i476 i477 i478 i479 i480 i481 i482 i483 i484 i485 i486 i487 i488 i489 i490 i491 i492 i493 i494 i495 i496 i497 i498 i499 i500 i501 i502 i503 i504 i505 i506 i507 i508 i509 i510 i511 i512 i513 i514 i515 i516 i517 i518 i519 i520 i521 i522 i523 i524 i525 i526 i527 i528 i529 i530 i531 i532 i533 i534 i535 i536 i537 i538 i539 i540 i541 i542 i543 i544 i545 i546 i547 i548 i549 i550 i551 i552 i553 i554 i555 i556 i557 i558 i559 i560 i561 i562 i563 i564 i565 i566 i567 i568 i569 i570 i571 i572 i573 i574 i575 i576 i577 i578 i579 i580 i581 i582 i583 i584 i585 i586 i587 i588 i589 i590 i591 i592 i593 i594 i595 i596 i597 i598 i599 i600 i601 i602 i603 i604 i605 i606 i607 i608 i609 i610 i611 i612 i613 i614 i615 i616 i617 i618 i619 i620 i621 i622 i623 i624 i625 i626 i627 i628 i629 i630 i631 i632 i633 i634 i635 i636 i637 i638 i639 i640 i641 i642 i643 i644 i645 i646 i647 i648 i649 i650 i651 i652 i653 i654 i655 i656 i657 i658 i659 i660 i661 i662 i663 i664 i665 i666 i667 i668 i669 i670 i671 i672 i673 i674 i675 i676 i677 i678 i679 i680 i681 i682 i683 i684 i685 i686 i687 i688 i689 i690 i691 i692 i693 i694 i695 i696 i697 i698 i699 i700 i701 i702 i703 i704 i705 i706 i707 i708 i709 i710 i711 i712 i713 i714 i715 i716 i717 i718 i719 i720 i721 i722 i723 i724 i725 i726 i727 i728 i729 i730 i731 i732 i733 i734 i735 i736 i737 i738 i739 i740 i741 i742 i743 i744 i745 i746 i747 i748 i749 i750 i751 i752 i753 i754 i755 i756 i757 i758 i759 i760 i761 i762 i763 i764 i765 i766 i767 i768 i769 i770 i771 i772 i773 i774 i775 i776 i777 i778 i779 i780 i781 i782 i783 i784 i785 i786 i787 i788 i789 i790 i791 i792 i793 i794 i795 i796 i797 i798 i799 i800 i801 i802 i803 i804 i805 i806 i807 i808 i809 i810 i811 i812 i813 i814 i815 i816 i817 i818 i819 i820 i821 i822 i823 i824 i825 i826 i827 i828 i829 i830 i831 i832 i833 i834 i835 i836 i837 i838 i839 i840 i841 i842 i843 i844 i845 i846 i847 i848 i849 i850 i851 i852 i853 i854 i855 i856 i857 i858 i859 i860 i861 i862 i863 i864 i865 i866 i867 i868 i869 i870 i871 i872 i873 i874 i875 i876 i877 i878 i879 i880 i881 i882 i883 i884 i885 i886 i887 i888 i889 i890 i891 i892 i893 i894 i895 i896 i897 i898 i899 i900 i901 i902 i903 i904 i905 i906 i907 i908 i909 i910 i911 i912 i913 i914 i915 i916 i917 i918 i919 i920 i921 i922 i923 i924 i925 i926 i927 i928 i929 i930 i931 i932 i933 i934 i935 i936 i937 i938 i939 i940 i941 i942 i943 i944 i945 i946 i947 i948 i949 i950 i951 i952 i953 i954 i955 i956 i957 i958 i959 i960 i961 i962 i963 i964 i965 i966 i967 i968 i969 i970 i971 i972 i973 i974 i975 i976 i977 i978 i979 i980 i981 i982 i983 i984 i985 i986 i987 i988 i989 i990 i991 i992 i993 i994 i995 i996 i997 i998 i999 i1000 b
-0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 20 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-DELETE FROM federated.t1 WHERE i50=20;
-SELECT * FROM federated.t1;
-i1 i2 i3 i4 i5 i6 i7 i8 i9 i10 i11 i12 i13 i14 i15 i16 i17 i18 i19 i20 i21 i22 i23 i24 i25 i26 i27 i28 i29 i30 i31 i32 i33 i34 i35 i36 i37 i38 i39 i40 i41 i42 i43 i44 i45 i46 i47 i48 i49 i50 i51 i52 i53 i54 i55 i56 i57 i58 i59 i60 i61 i62 i63 i64 i65 i66 i67 i68 i69 i70 i71 i72 i73 i74 i75 i76 i77 i78 i79 i80 i81 i82 i83 i84 i85 i86 i87 i88 i89 i90 i91 i92 i93 i94 i95 i96 i97 i98 i99 i100 i101 i102 i103 i104 i105 i106 i107 i108 i109 i110 i111 i112 i113 i114 i115 i116 i117 i118 i119 i120 i121 i122 i123 i124 i125 i126 i127 i128 i129 i130 i131 i132 i133 i134 i135 i136 i137 i138 i139 i140 i141 i142 i143 i144 i145 i146 i147 i148 i149 i150 i151 i152 i153 i154 i155 i156 i157 i158 i159 i160 i161 i162 i163 i164 i165 i166 i167 i168 i169 i170 i171 i172 i173 i174 i175 i176 i177 i178 i179 i180 i181 i182 i183 i184 i185 i186 i187 i188 i189 i190 i191 i192 i193 i194 i195 i196 i197 i198 i199 i200 i201 i202 i203 i204 i205 i206 i207 i208 i209 i210 i211 i212 i213 i214 i215 i216 i217 i218 i219 i220 i221 i222 i223 i224 i225 i226 i227 i228 i229 i230 i231 i232 i233 i234 i235 i236 i237 i238 i239 i240 i241 i242 i243 i244 i245 i246 i247 i248 i249 i250 i251 i252 i253 i254 i255 i256 i257 i258 i259 i260 i261 i262 i263 i264 i265 i266 i267 i268 i269 i270 i271 i272 i273 i274 i275 i276 i277 i278 i279 i280 i281 i282 i283 i284 i285 i286 i287 i288 i289 i290 i291 i292 i293 i294 i295 i296 i297 i298 i299 i300 i301 i302 i303 i304 i305 i306 i307 i308 i309 i310 i311 i312 i313 i314 i315 i316 i317 i318 i319 i320 i321 i322 i323 i324 i325 i326 i327 i328 i329 i330 i331 i332 i333 i334 i335 i336 i337 i338 i339 i340 i341 i342 i343 i344 i345 i346 i347 i348 i349 i350 i351 i352 i353 i354 i355 i356 i357 i358 i359 i360 i361 i362 i363 i364 i365 i366 i367 i368 i369 i370 i371 i372 i373 i374 i375 i376 i377 i378 i379 i380 i381 i382 i383 i384 i385 i386 i387 i388 i389 i390 i391 i392 i393 i394 i395 i396 i397 i398 i399 i400 i401 i402 i403 i404 i405 i406 i407 i408 i409 i410 i411 i412 i413 i414 i415 i416 i417 i418 i419 i420 i421 i422 i423 i424 i425 i426 i427 i428 i429 i430 i431 i432 i433 i434 i435 i436 i437 i438 i439 i440 i441 i442 i443 i444 i445 i446 i447 i448 i449 i450 i451 i452 i453 i454 i455 i456 i457 i458 i459 i460 i461 i462 i463 i464 i465 i466 i467 i468 i469 i470 i471 i472 i473 i474 i475 i476 i477 i478 i479 i480 i481 i482 i483 i484 i485 i486 i487 i488 i489 i490 i491 i492 i493 i494 i495 i496 i497 i498 i499 i500 i501 i502 i503 i504 i505 i506 i507 i508 i509 i510 i511 i512 i513 i514 i515 i516 i517 i518 i519 i520 i521 i522 i523 i524 i525 i526 i527 i528 i529 i530 i531 i532 i533 i534 i535 i536 i537 i538 i539 i540 i541 i542 i543 i544 i545 i546 i547 i548 i549 i550 i551 i552 i553 i554 i555 i556 i557 i558 i559 i560 i561 i562 i563 i564 i565 i566 i567 i568 i569 i570 i571 i572 i573 i574 i575 i576 i577 i578 i579 i580 i581 i582 i583 i584 i585 i586 i587 i588 i589 i590 i591 i592 i593 i594 i595 i596 i597 i598 i599 i600 i601 i602 i603 i604 i605 i606 i607 i608 i609 i610 i611 i612 i613 i614 i615 i616 i617 i618 i619 i620 i621 i622 i623 i624 i625 i626 i627 i628 i629 i630 i631 i632 i633 i634 i635 i636 i637 i638 i639 i640 i641 i642 i643 i644 i645 i646 i647 i648 i649 i650 i651 i652 i653 i654 i655 i656 i657 i658 i659 i660 i661 i662 i663 i664 i665 i666 i667 i668 i669 i670 i671 i672 i673 i674 i675 i676 i677 i678 i679 i680 i681 i682 i683 i684 i685 i686 i687 i688 i689 i690 i691 i692 i693 i694 i695 i696 i697 i698 i699 i700 i701 i702 i703 i704 i705 i706 i707 i708 i709 i710 i711 i712 i713 i714 i715 i716 i717 i718 i719 i720 i721 i722 i723 i724 i725 i726 i727 i728 i729 i730 i731 i732 i733 i734 i735 i736 i737 i738 i739 i740 i741 i742 i743 i744 i745 i746 i747 i748 i749 i750 i751 i752 i753 i754 i755 i756 i757 i758 i759 i760 i761 i762 i763 i764 i765 i766 i767 i768 i769 i770 i771 i772 i773 i774 i775 i776 i777 i778 i779 i780 i781 i782 i783 i784 i785 i786 i787 i788 i789 i790 i791 i792 i793 i794 i795 i796 i797 i798 i799 i800 i801 i802 i803 i804 i805 i806 i807 i808 i809 i810 i811 i812 i813 i814 i815 i816 i817 i818 i819 i820 i821 i822 i823 i824 i825 i826 i827 i828 i829 i830 i831 i832 i833 i834 i835 i836 i837 i838 i839 i840 i841 i842 i843 i844 i845 i846 i847 i848 i849 i850 i851 i852 i853 i854 i855 i856 i857 i858 i859 i860 i861 i862 i863 i864 i865 i866 i867 i868 i869 i870 i871 i872 i873 i874 i875 i876 i877 i878 i879 i880 i881 i882 i883 i884 i885 i886 i887 i888 i889 i890 i891 i892 i893 i894 i895 i896 i897 i898 i899 i900 i901 i902 i903 i904 i905 i906 i907 i908 i909 i910 i911 i912 i913 i914 i915 i916 i917 i918 i919 i920 i921 i922 i923 i924 i925 i926 i927 i928 i929 i930 i931 i932 i933 i934 i935 i936 i937 i938 i939 i940 i941 i942 i943 i944 i945 i946 i947 i948 i949 i950 i951 i952 i953 i954 i955 i956 i957 i958 i959 i960 i961 i962 i963 i964 i965 i966 i967 i968 i969 i970 i971 i972 i973 i974 i975 i976 i977 i978 i979 i980 i981 i982 i983 i984 i985 i986 i987 i988 i989 i990 i991 i992 i993 i994 i995 i996 i997 i998 i999 i1000 b
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (id int NOT NULL auto_increment, code char(20) NOT NULL, fileguts blob NOT NULL, creation_date datetime, entered_time datetime default '2004-04-04 04:04:04', PRIMARY KEY(id), index(code), index(fileguts(10))) DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-id int NOT NULL auto_increment,
-code char(20) NOT NULL,
-fileguts blob NOT NULL,
-creation_date datetime,
-entered_time datetime default '2004-04-04 04:04:04',
-PRIMARY KEY(id),
-index(code),
-index(fileguts(10)))
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (code, fileguts, creation_date) VALUES ('ASDFWERQWETWETAWETA', '*()w*09*$()*#)(*09*^90*d)(*s()d8g)(s*ned)(*)(s*d)(*hn(d*)(*sbn)D((#$*(#*%%&#&^$#&#&#&#&^&#*&*#$*&^*(&#(&Q*&&(*!&!(*&*(#&*(%&#<S-F8>*<S-F8><S-F8><S-F8>#<S-F8>#<S-F8>#<S-F8>[[', '2003-03-03 03:03:03');
-INSERT INTO federated.t1 (code, fileguts, creation_date) VALUES ('DEUEUEUEUEUEUEUEUEU', '*()w*09*$()*#)(*09*^90*d)(*s()d8g)(s*ned)(*)(s*d)(*hn(d*)(*sbn)D((#$*(#*%%&#&^$#&#&#&#&^&#*&*#$*&^*(&#(&Q*&&(*!&!(*&*(#&*(%&#<S-F8>*<S-F8><S-F8><S-F8>#<S-F8>#<S-F8>#<S-F8>[[', '2004-04-04 04:04:04');
-INSERT INTO federated.t1 (code, fileguts, creation_date) VALUES ('DEUEUEUEUEUEUEUEUEU', 'jimbob', '2004-04-04 04:04:04');
-SELECT * FROM federated.t1;
-id code fileguts creation_date entered_time
-1 ASDFWERQWETWETAWETA *()w*09*$()*#)(*09*^90*d)(*s()d8g)(s*ned)(*)(s*d)(*hn(d*)(*sbn)D((#$*(#*%%&#&^$#&#&#&#&^&#*&*#$*&^*(&#(&Q*&&(*!&!(*&*(#&*(%&#<S-F8>*<S-F8><S-F8><S-F8>#<S-F8>#<S-F8>#<S-F8>[[ 2003-03-03 03:03:03 2004-04-04 04:04:04
-2 DEUEUEUEUEUEUEUEUEU *()w*09*$()*#)(*09*^90*d)(*s()d8g)(s*ned)(*)(s*d)(*hn(d*)(*sbn)D((#$*(#*%%&#&^$#&#&#&#&^&#*&*#$*&^*(&#(&Q*&&(*!&!(*&*(#&*(%&#<S-F8>*<S-F8><S-F8><S-F8>#<S-F8>#<S-F8>#<S-F8>[[ 2004-04-04 04:04:04 2004-04-04 04:04:04
-3 DEUEUEUEUEUEUEUEUEU jimbob 2004-04-04 04:04:04 2004-04-04 04:04:04
-SELECT * FROM federated.t1 WHERE fileguts = 'jimbob';
-id code fileguts creation_date entered_time
-3 DEUEUEUEUEUEUEUEUEU jimbob 2004-04-04 04:04:04 2004-04-04 04:04:04
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (`a` BLOB);
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`a` BLOB)
-ENGINE="FEDERATED"
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 VALUES (0x00);
-INSERT INTO federated.t1 VALUES (0x0001);
-INSERT INTO federated.t1 VALUES (0x0100);
-SELECT HEX(a) FROM federated.t1;
-HEX(a)
-00
-0001
-0100
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`country_id` int(20) NOT NULL DEFAULT 0,
-`name` varchar(32),
-`other` varchar(20),
-PRIMARY KEY (`id`),
-key (country_id));
-DROP TABLE IF EXISTS federated.countries;
-Warnings:
-Note 1051 Unknown table 'countries'
-CREATE TABLE federated.countries (
-`id` int(20) NOT NULL auto_increment,
-`country` varchar(32),
-PRIMARY KEY (id));
-INSERT INTO federated.countries (country) VALUES ('India');
-INSERT INTO federated.countries (country) VALUES ('Germany');
-INSERT INTO federated.countries (country) VALUES ('Italy');
-INSERT INTO federated.countries (country) VALUES ('Finland');
-INSERT INTO federated.countries (country) VALUES ('Ukraine');
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-`country_id` int(20) NOT NULL DEFAULT 0,
-`name` varchar(32),
-`other` varchar(20),
-PRIMARY KEY (`id`),
-KEY (country_id) )
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 (name, country_id, other) VALUES ('Kumar', 1, 11111);
-INSERT INTO federated.t1 (name, country_id, other) VALUES ('Lenz', 2, 22222);
-INSERT INTO federated.t1 (name, country_id, other) VALUES ('Marizio', 3, 33333);
-INSERT INTO federated.t1 (name, country_id, other) VALUES ('Monty', 4, 33333);
-INSERT INTO federated.t1 (name, country_id, other) VALUES ('Sanja', 5, 33333);
-SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
-federated.t1.other AS other, federated.countries.country AS country
-FROM federated.t1, federated.countries WHERE
-federated.t1.country_id = federated.countries.id;
-name country_id other country
-Kumar 1 11111 India
-Lenz 2 22222 Germany
-Marizio 3 33333 Italy
-Monty 4 33333 Finland
-Sanja 5 33333 Ukraine
-SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
-federated.t1.other AS other, federated.countries.country AS country
-FROM federated.t1 INNER JOIN federated.countries ON
-federated.t1.country_id = federated.countries.id;
-name country_id other country
-Kumar 1 11111 India
-Lenz 2 22222 Germany
-Marizio 3 33333 Italy
-Monty 4 33333 Finland
-Sanja 5 33333 Ukraine
-SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
-federated.t1.other AS other, federated.countries.country AS country
-FROM federated.t1 INNER JOIN federated.countries ON
-federated.t1.country_id = federated.countries.id
-WHERE federated.t1.name = 'Monty';
-name country_id other country
-Monty 4 33333 Finland
-SELECT federated.t1.*, federated.countries.country
-FROM federated.t1 LEFT JOIN federated.countries
-ON federated.t1.country_id = federated.countries.id
-ORDER BY federated.countries.id;
-id country_id name other country
-1 1 Kumar 11111 India
-2 2 Lenz 22222 Germany
-3 3 Marizio 33333 Italy
-4 4 Monty 33333 Finland
-5 5 Sanja 33333 Ukraine
-SELECT federated.t1.*, federated.countries.country
-FROM federated.t1 LEFT JOIN federated.countries
-ON federated.t1.country_id = federated.countries.id
-ORDER BY federated.countries.country;
-id country_id name other country
-4 4 Monty 33333 Finland
-2 2 Lenz 22222 Germany
-1 1 Kumar 11111 India
-3 3 Marizio 33333 Italy
-5 5 Sanja 33333 Ukraine
-SELECT federated.t1.*, federated.countries.country
-FROM federated.t1 RIGHT JOIN federated.countries
-ON federated.t1.country_id = federated.countries.id
-ORDER BY federated.t1.country_id;
-id country_id name other country
-1 1 Kumar 11111 India
-2 2 Lenz 22222 Germany
-3 3 Marizio 33333 Italy
-4 4 Monty 33333 Finland
-5 5 Sanja 33333 Ukraine
-DROP TABLE federated.countries;
-OPTIMIZE TABLE federated.t1;
-Table Op Msg_type Msg_text
-federated.t1 optimize status OK
-REPAIR TABLE federated.t1;
-Table Op Msg_type Msg_text
-federated.t1 repair status OK
-REPAIR TABLE federated.t1 QUICK;
-Table Op Msg_type Msg_text
-federated.t1 repair status OK
-REPAIR TABLE federated.t1 EXTENDED;
-Table Op Msg_type Msg_text
-federated.t1 repair status OK
-REPAIR TABLE federated.t1 USE_FRM;
-Table Op Msg_type Msg_text
-federated.t1 repair status OK
-DROP TABLE IF EXISTS federated.normal_table;
-CREATE TABLE federated.normal_table (
-`id` int(4) NOT NULL,
-`name` varchar(10) default NULL
-) DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.alter_me;
-CREATE TABLE federated.alter_me (
-`id` int(4) NOT NULL,
-`name` varchar(10) default NULL,
-PRIMARY KEY (`id`)
-) ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/normal_table';
-INSERT INTO federated.alter_me (id, name) VALUES (1, 'Monty');
-INSERT INTO federated.alter_me (id, name) VALUES (2, 'David');
-SELECT * FROM federated.alter_me;
-id name
-1 Monty
-2 David
-ALTER TABLE federated.alter_me MODIFY COLUMN id int(16) NOT NULL;
-ERROR HY000: Table storage engine for 'alter_me' doesn't have this option
-SELECT * FROM federated.alter_me;
-id name
-1 Monty
-2 David
-DROP TABLE federated.alter_me;
-DROP TABLE federated.normal_table;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`bitty` bit(3)
-) DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`bitty` bit(3)
-) ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 VALUES (b'001');
-INSERT INTO federated.t1 VALUES (b'010');
-INSERT INTO federated.t1 VALUES (b'011');
-INSERT INTO federated.t1 VALUES (b'100');
-INSERT INTO federated.t1 VALUES (b'101');
-INSERT INTO federated.t1 VALUES (b'110');
-INSERT INTO federated.t1 VALUES (b'111');
-select * FROM federated.t1;
-bitty
-
-
-
-
-
-
-
-drop table federated.t1;
-drop table federated.t1;
-DROP TABLE IF EXISTS federated.t1;
-Warnings:
-Note 1051 Unknown table 't1'
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-PRIMARY KEY (`id`));
-DROP TABLE IF EXISTS federated.t1;
-Warnings:
-Note 1051 Unknown table 't1'
-CREATE TABLE federated.t1 (
-`id` int(20) NOT NULL auto_increment,
-PRIMARY KEY (`id`)
-)
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-INSERT INTO federated.t1 VALUES ();
-SELECT LAST_INSERT_ID();
-LAST_INSERT_ID()
-1
-INSERT INTO federated.t1 VALUES ();
-SELECT LAST_INSERT_ID();
-LAST_INSERT_ID()
-2
-INSERT INTO federated.t1 VALUES ();
-SELECT LAST_INSERT_ID();
-LAST_INSERT_ID()
-3
-INSERT INTO federated.t1 VALUES ();
-SELECT LAST_INSERT_ID();
-LAST_INSERT_ID()
-4
-INSERT INTO federated.t1 VALUES ();
-SELECT LAST_INSERT_ID();
-LAST_INSERT_ID()
-5
-SELECT * FROM federated.t1;
-id
-1
-2
-3
-4
-5
-DROP TABLE federated.t1;
-DROP TABLE federated.t1;
-DROP TABLE IF EXISTS federated.bug_17377_table;
-CREATE TABLE federated.bug_17377_table (
-`fld_cid` bigint(20) NOT NULL auto_increment,
-`fld_name` varchar(255) NOT NULL default '',
-`fld_parentid` bigint(20) NOT NULL default '0',
-`fld_delt` int(1) NOT NULL default '0',
-PRIMARY KEY (`fld_cid`),
-KEY `fld_parentid` (`fld_parentid`),
-KEY `fld_delt` (`fld_delt`),
-KEY `fld_cid` (`fld_cid`)
-) ENGINE=MyISAM;
-insert into federated.bug_17377_table( fld_name )
-values
-("Mats"), ("Sivert"), ("Sigvard"), ("Torgny"), ("Torkel");
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`fld_cid` bigint(20) NOT NULL auto_increment,
-`fld_name` varchar(255) NOT NULL default '',
-`fld_parentid` bigint(20) NOT NULL default '0',
-`fld_delt` int(1) NOT NULL default '0',
-PRIMARY KEY (`fld_cid`),
-KEY `fld_parentid` (`fld_parentid`),
-KEY `fld_delt` (`fld_delt`),
-KEY `fld_cid` (`fld_cid`)
-) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/bug_17377_table';
-select * from federated.t1 where fld_parentid=0 and fld_delt=0
-order by fld_name;
-fld_cid fld_name fld_parentid fld_delt
-1 Mats 0 0
-3 Sigvard 0 0
-2 Sivert 0 0
-4 Torgny 0 0
-5 Torkel 0 0
-select * from federated.t1 where fld_parentid=0 and fld_delt=0;
-fld_cid fld_name fld_parentid fld_delt
-1 Mats 0 0
-2 Sivert 0 0
-3 Sigvard 0 0
-4 Torgny 0 0
-5 Torkel 0 0
-DROP TABLE federated.t1;
-DROP TABLE federated.bug_17377_table;
-create table federated.t1 (i1 int, i2 int, i3 int);
-create table federated.t2 (id int, c1 varchar(20), c2 varchar(20));
-create table federated.t1 (i1 int, i2 int, i3 int) ENGINE=FEDERATED CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-create table federated.t2 (id int, c1 varchar(20), c2 varchar(20)) ENGINE=FEDERATED CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t2';
-insert into federated.t1 values (1,5,10),(3,7,12),(4,5,2),(9,10,15),(2,2,2);
-insert into federated.t2 values (9,"abc","def"),(5,"opq","lmn"),(2,"test t","t test");
-select * from federated.t1 order by i1;
-i1 i2 i3
-1 5 10
-2 2 2
-3 7 12
-4 5 2
-9 10 15
-select * from federated.t2;
-id c1 c2
-9 abc def
-5 opq lmn
-2 test t t test
-update federated.t1,federated.t2 set t1.i2=15, t2.c2="ppc" where t1.i1=t2.id;
-select * from federated.t1 order by i1;
-i1 i2 i3
-1 5 10
-2 15 2
-3 7 12
-4 5 2
-9 15 15
-select * from federated.t2 order by id;
-id c1 c2
-2 test t ppc
-5 opq lmn
-9 abc ppc
-delete federated.t1.*,federated.t2.* from federated.t1,federated.t2 where t1.i2=t2.id;
-select * from federated.t1 order by i1;
-i1 i2 i3
-2 15 2
-3 7 12
-9 15 15
-select * from federated.t2 order by id;
-id c1 c2
-2 test t ppc
-9 abc ppc
-drop table federated.t1, federated.t2;
-drop table federated.t1, federated.t2;
-create table federated.t1 (i1 int, i2 int, i3 int, primary key (i1));
-create table federated.t2 (id int, c1 varchar(20), c2 varchar(20), primary key (id));
-create table federated.t1 (i1 int auto_increment not null, i2 int, i3 int, primary key (i1)) ENGINE=FEDERATED CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-create table federated.t2 (id int auto_increment not null, c1 varchar(20), c2 varchar(20), primary key(id)) ENGINE=FEDERATED CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t2';
-insert into federated.t1 values (1,5,10),(3,7,12),(4,5,2),(9,10,15),(2,2,2);
-insert into federated.t2 values (9,"abc","def"),(5,"opq","lmn"),(2,"test t","t test");
-select * from federated.t1 order by i1;
-i1 i2 i3
-1 5 10
-2 2 2
-3 7 12
-4 5 2
-9 10 15
-select * from federated.t2 order by id;
-id c1 c2
-2 test t t test
-5 opq lmn
-9 abc def
-update federated.t1,federated.t2 set t1.i2=15, t2.c2="ppc" where t1.i1=t2.id;
-select * from federated.t1 order by i1;
-i1 i2 i3
-1 5 10
-2 15 2
-3 7 12
-4 5 2
-9 15 15
-select * from federated.t2 order by id;
-id c1 c2
-2 test t ppc
-5 opq lmn
-9 abc ppc
-delete federated.t1.*,federated.t2.* from federated.t1,federated.t2 where t1.i2=t2.id;
-select * from federated.t1 order by i1;
-i1 i2 i3
-2 15 2
-3 7 12
-9 15 15
-select * from federated.t2 order by id;
-id c1 c2
-2 test t ppc
-9 abc ppc
-drop table federated.t1, federated.t2;
-drop table federated.t1, federated.t2;
-DROP TABLE IF EXISTS federated.test;
-CREATE TABLE federated.test (
-`id` int(11) NOT NULL,
-`val1` varchar(255) NOT NULL,
-`val2` varchar(255) NOT NULL,
-PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.test_local;
-DROP TABLE IF EXISTS federated.test_remote;
-CREATE TABLE federated.test_local (
-`id` int(11) NOT NULL,
-`val1` varchar(255) NOT NULL,
-`val2` varchar(255) NOT NULL,
-PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-INSERT INTO federated.test_local VALUES (1, 'foo', 'bar'),
-(2, 'bar', 'foo');
-CREATE TABLE federated.test_remote (
-`id` int(11) NOT NULL,
-`val1` varchar(255) NOT NULL,
-`val2` varchar(255) NOT NULL,
-PRIMARY KEY (`id`)
-) ENGINE=FEDERATED DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/test';
-insert into federated.test_remote select * from federated.test_local;
-select * from federated.test_remote;
-id val1 val2
-1 foo bar
-2 bar foo
-delete from federated.test_remote where id in (1,2);
-insert into federated.test_remote select * from federated.test_local;
-select * from federated.test_remote;
-id val1 val2
-2 bar foo
-1 foo bar
-DROP TABLE federated.test_local;
-DROP TABLE federated.test_remote;
-DROP TABLE federated.test;
-drop table if exists federated.t1;
-create table federated.t1 (a int, b int, c int);
-drop table if exists federated.t1;
-drop table if exists federated.t2;
-create table federated.t1 (a int, b int, c int) engine=federated connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-create trigger federated.t1_bi before insert on federated.t1 for each row set new.c= new.a * new.b;
-create table federated.t2 (a int, b int);
-insert into federated.t2 values (13, 17), (19, 23);
-insert into federated.t1 (a, b) values (1, 2), (3, 5), (7, 11);
-select * from federated.t1 order by a;
-a b c
-1 2 2
-3 5 15
-7 11 77
-delete from federated.t1;
-insert into federated.t1 (a, b) select * from federated.t2;
-select * from federated.t1 order by a;
-a b c
-13 17 221
-19 23 437
-delete from federated.t1;
-load data infile '../std_data_ln/loaddata5.dat' into table federated.t1 fields terminated by '' enclosed by '' ignore 1 lines (a, b);
-select * from federated.t1 order by a;
-a b c
-3 4 12
-5 6 30
-drop tables federated.t1, federated.t2;
-drop table federated.t1;
-create table t1 (id int not null auto_increment primary key, val int);
-create table t1
-(id int not null auto_increment primary key, val int) engine=federated
-connection='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-insert into t1 values (1,0),(2,0);
-update t1 set val = NULL where id = 1;
-select * from t1;
-id val
-1 NULL
-2 0
-select * from t1;
-id val
-1 NULL
-2 0
-drop table t1;
-drop table t1;
-create table t1 (a longblob not null);
-create table t1
-(a longblob not null) engine=federated
-connection='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-insert into t1 values (repeat('a',5000));
-select length(a) from t1;
-length(a)
-5000
-select length(a) from t1;
-length(a)
-5000
-drop table t1;
-drop table t1;
-DROP TABLE IF EXISTS federated.test;
-CREATE TABLE federated.test (
-`i` int(11) NOT NULL,
-`j` int(11) NOT NULL,
-`c` varchar(30) default NULL,
-PRIMARY KEY (`i`,`j`),
-UNIQUE KEY `i` (`i`,`c`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.test1;
-DROP TABLE IF EXISTS federated.test2;
-create table federated.test1 (
-i int not null,
-j int not null,
-c varchar(30),
-primary key (i,j),
-unique key (i, c))
-engine = federated
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/test';
-create table federated.test2 (
-i int default null,
-j int not null,
-c varchar(30),
-key (i))
-engine = federated
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/test';
-drop table federated.test1, federated.test2;
-drop table federated.test;
-set names utf8;
-create table federated.t1 (a varchar(64)) DEFAULT CHARSET=utf8;
-insert into federated.t1 values (0x6DC3A56E6164);
-select hex(a) from federated.t1;
-hex(a)
-6DC3A56E6164
-create table federated.t1 (a varchar(64))
-ENGINE=FEDERATED
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1'
-DEFAULT CHARSET=utf8;
-set names utf8;
-select hex(a) from federated.t1;
-hex(a)
-6DC3A56E6164
-insert into federated.t1 values (0xC3A4C3B6C3BCC39F);
-insert into federated.t1 values (0xD18DD184D184D0B5D0BAD182D0B8D0B2D0BDD183D18E);
-select hex(a) from federated.t1;
-hex(a)
-6DC3A56E6164
-C3A4C3B6C3BCC39F
-D18DD184D184D0B5D0BAD182D0B8D0B2D0BDD183D18E
-select hex(a) from federated.t1;
-hex(a)
-6DC3A56E6164
-C3A4C3B6C3BCC39F
-D18DD184D184D0B5D0BAD182D0B8D0B2D0BDD183D18E
-drop table federated.t1;
-drop table federated.t1;
-CREATE TABLE federated.t1 (
-categoryId int(11) NOT NULL AUTO_INCREMENT,
-domainId varchar(745) NOT NULL DEFAULT '',
-categoryName varchar(255) NOT NULL DEFAULT '',
-PRIMARY KEY (categoryId),
-UNIQUE KEY idx_unique_category_categoryName (domainId, categoryName),
-KEY idx_category_domainId (domainId)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-CREATE TABLE federated.t1 (
-categoryId int(11) NOT NULL AUTO_INCREMENT,
-domainId varchar(745) NOT NULL DEFAULT '',
-categoryName varchar(255) NOT NULL DEFAULT '',
-PRIMARY KEY (categoryId),
-UNIQUE KEY idx_unique_category_categoryName (domainId, categoryName),
-KEY idx_category_domainId (domainId)
-) ENGINE=FEDERATED DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-insert into federated.t1 (domainId, categoryName) values ( '1231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231231 300', '1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345 250');
-insert into federated.t1 (domainId, categoryName) values ( '12312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312312 301', '12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456 250');
-insert into federated.t1 (domainId, categoryName) values ('a', 'b');
-select categoryId from federated.t1 order by domainId, categoryName;
-categoryId
-1
-2
-3
-select categoryId from federated.t1 where domainId='a' and categoryName='b' order by categoryId;
-categoryId
-3
-select categoryId from federated.t1 where domainId='a' and categoryName='b' order by categoryId;
-categoryId
-3
-select categoryId from federated.t1 where domainId<>'a' and categoryName<>'b' order by categoryId;
-categoryId
-1
-2
-drop table federated.t1;
-drop table federated.t1;
-create table federated.t1 (a int primary key, b varchar(64))
-DEFAULT CHARSET=utf8;
-create table federated.t1 (a int primary key, b varchar(64))
-ENGINE=FEDERATED
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1'
- DEFAULT CHARSET=utf8;
-insert ignore into federated.t1 values (1,"Larry"), (2,"Curly"), (1,"Moe");
-select * from federated.t1;
-a b
-1 Larry
-2 Curly
-truncate federated.t1;
-replace into federated.t1 values (1,"Larry"), (2,"Curly"), (1,"Moe");
-select * from federated.t1;
-a b
-1 Moe
-2 Curly
-update ignore federated.t1 set a=a+1;
-select * from federated.t1;
-a b
-1 Moe
-3 Curly
-drop table federated.t1;
-drop table federated.t1;
-create table federated.t1 (a int primary key, b varchar(64))
-DEFAULT CHARSET=utf8;
-create table federated.t1 (a int primary key, b varchar(64))
-ENGINE=FEDERATED
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1'
- DEFAULT CHARSET=utf8;
-insert into federated.t1 values (1,"Larry"), (2,"Curly"), (1,"Moe")
-on duplicate key update a=a+100;
-ERROR 23000: Can't write; duplicate key in table 't1'
-select * from federated.t1;
-a b
-1 Larry
-2 Curly
-drop table federated.t1;
-drop table federated.t1;
-
-Bug#18287 create federated table always times out, error 1159 ' '
-
-Test that self-references work
-
-create table federated.t1 (a int primary key);
-create table federated.t2 (a int primary key)
-ENGINE=FEDERATED
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-insert into federated.t1 (a) values (1);
-select * from federated.t2;
-a
-1
-drop table federated.t1, federated.t2;
-create table t1 (a varchar(256));
-drop view if exists v1;
-create view v1 as select a from t1;
-create table t1
-(a varchar(256)) engine=federated
-connection='mysql://root@127.0.0.1:SLAVE_PORT/test/v1';
-select 1 from t1 order by a;
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-drop table t1;
-drop table t1;
-drop view v1;
-CREATE TABLE t1 (a INT, b INT, KEY(a,b));
-INSERT INTO t1 VALUES(NULL,1),(1,NULL),(NULL,NULL),(1,1),(2,2);
-CREATE TABLE t1 (a INT, b INT, KEY(a,b)) ENGINE=federated
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-SELECT * FROM t1 WHERE a IS NULL;
-a b
-NULL NULL
-NULL 1
-SELECT * FROM t1 WHERE a IS NOT NULL;
-a b
-1 NULL
-1 1
-2 2
-SELECT * FROM t1 WHERE a=1 AND b=1;
-a b
-1 1
-SELECT * FROM t1 WHERE a IS NULL AND b=1;
-a b
-NULL 1
-SELECT * FROM t1 WHERE a IS NOT NULL AND b=1;
-a b
-1 1
-DROP TABLE t1;
-DROP TABLE t1;
-CREATE TABLE t1 (a INT) ENGINE=federated CONNECTION='mysql://@:://';
-DROP TABLE t1;
-CREATE TABLE t1 (a LONGBLOB, b LONGBLOB);
-INSERT INTO t1 VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaa', NULL);
-CREATE TABLE t1
-(a LONGBLOB, b LONGBLOB) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-CHECKSUM TABLE t1;
-Table Checksum
-test.t1 2465757603
-DROP TABLE t1;
-DROP TABLE t1;
-CREATE TABLE t1 (a TEXT, b TEXT, KEY(b(1)));
-INSERT INTO t1 VALUES (NULL, NULL), (NULL, NULL), (NULL, NULL), (NULL, NULL);
-CREATE TABLE t1
-(a TEXT, b TEXT, KEY(b(1))) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-SELECT t1.a FROM t1, t1 as t2 WHERE t2.b NOT LIKE t1.b;
-a
-DROP TABLE t1;
-DROP TABLE t1;
-#
-# BUG#21360 - mysqldump error on federated tables
-#
-#Switch to Connection Slave
-CREATE TABLE t1(id VARCHAR(20) NOT NULL, PRIMARY KEY(id));
-INSERT INTO t1 VALUES ('text1'),('text2'),('text3'),('text4');
-#Switch to Connection Master
-CREATE TABLE t1(id VARCHAR(20) NOT NULL, PRIMARY KEY(id)) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-# Dump table t1 using mysqldump tool
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `t1` (
- `id` varchar(20) NOT NULL,
- PRIMARY KEY (`id`)
-) ENGINE=FEDERATED DEFAULT CHARSET=latin1 CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-/*!40101 SET character_set_client = @saved_cs_client */;
-DROP TABLE t1;
-#Switch to Connection Slave
-DROP TABLE t1;
-End of 5.0 tests
-SET @@GLOBAL.CONCURRENT_INSERT= @OLD_MASTER_CONCURRENT_INSERT;
-SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/r/federated_archive.result b/mysql-test/r/federated_archive.result
deleted file mode 100644
index 3fd7cb2acd4..00000000000
--- a/mysql-test/r/federated_archive.result
+++ /dev/null
@@ -1,48 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP TABLE IF EXISTS federated.archive_table;
-CREATE TABLE federated.archive_table (
-`id` int(4) NOT NULL,
-`name` varchar(54) default NULL
-) ENGINE=ARCHIVE DEFAULT CHARSET=latin1;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int(4) NOT NULL,
-`name` varchar(54) default NULL,
-PRIMARY KEY (`id`)
-)
-ENGINE="FEDERATED" DEFAULT CHARSET=latin1
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/archive_table';
-INSERT INTO federated.t1 (id, name) VALUES (1, 'foo');
-INSERT INTO federated.t1 (id, name) VALUES (2, 'bar');
-SELECT * FROM federated.t1;
-id name
-1 foo
-2 bar
-DELETE FROM federated.t1 WHERE id = 1;
-ERROR HY000: Got error 10000 'Error on remote system: 1031: Table storage engine for 'archive_table' doesn't have this option' from FEDERATED
-SELECT * FROM federated.t1;
-id name
-1 foo
-2 bar
-UPDATE federated.t1 SET name='baz' WHERE id = 1;
-ERROR HY000: Got error 10000 'Error on remote system: 1031: Table storage engine for 'archive_table' doesn't have this option' from FEDERATED
-SELECT * FROM federated.t1;
-id name
-1 foo
-2 bar
-DROP TABLE federated.t1;
-DROP TABLE federated.archive_table;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/r/federated_bug_13118.result b/mysql-test/r/federated_bug_13118.result
deleted file mode 100644
index cc14dae87d9..00000000000
--- a/mysql-test/r/federated_bug_13118.result
+++ /dev/null
@@ -1,39 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP TABLE IF EXISTS federated.bug_13118_table;
-CREATE TABLE federated.bug_13118_table (
-`foo` integer,
-`bar` integer
-);
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`foo` integer,
-`bar` integer
-) ENGINE="FEDERATED"
- CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/bug_13118_table';
-SELECT * from federated.t1;
-foo bar
-INSERT INTO federated.t1 VALUES (1,1);
-SELECT * FROM federated.t1;
-foo bar
-1 1
-INSERT INTO federated.t1 VALUES (1,1);
-SELECT * FROM federated.t1;
-foo bar
-1 1
-1 1
-DROP TABLE federated.t1;
-DROP TABLE federated.bug_13118_table;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/r/federated_bug_25714.result b/mysql-test/r/federated_bug_25714.result
deleted file mode 100644
index 5730eedc246..00000000000
--- a/mysql-test/r/federated_bug_25714.result
+++ /dev/null
@@ -1,62 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-SET @OLD_MASTER_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
-SET @@GLOBAL.CONCURRENT_INSERT= 0;
-SET @OLD_SLAVE_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
-SET @@GLOBAL.CONCURRENT_INSERT= 0;
-DROP TABLE IF EXISTS federated.bug_13118_table;
-CREATE TABLE federated.t1 (
-`id` int auto_increment primary key,
-`value` int
-) ENGINE=MyISAM;
-INSERT INTO federated.t1 SET value=1;
-INSERT INTO federated.t1 SET value=2;
-INSERT INTO federated.t1 SET value=2;
-DROP TABLE IF EXISTS federated.t1;
-CREATE TABLE federated.t1 (
-`id` int auto_increment primary key,
-`value` int
-) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-SELECT * from federated.t1;
-id value
-1 1
-2 2
-3 2
-INSERT INTO federated.t1 SET value=4;
-SELECT LAST_INSERT_ID();
-LAST_INSERT_ID()
-4
-
-5 inserted
-6 inserted
-
-7 inserted
-8 inserted
-SELECT * from federated.t1;
-id value
-1 1
-2 2
-3 2
-4 4
-5 54
-6 55
-7 54
-8 55
-DROP TABLE federated.t1;
-SET @@GLOBAL.CONCURRENT_INSERT= @OLD_MASTER_CONCURRENT_INSERT;
-DROP TABLE federated.t1;
-SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/r/federated_debug.result b/mysql-test/r/federated_debug.result
deleted file mode 100644
index a6659d065b2..00000000000
--- a/mysql-test/r/federated_debug.result
+++ /dev/null
@@ -1,37 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-#
-# Bug#47525: MySQL crashed (Federated)
-#
-# Switch to slave
-CREATE TABLE t1(a INT);
-INSERT INTO t1 VALUES (1);
-# Switch to master
-CREATE TABLE t1(a INT) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/test/t1';
-SELECT * FROM t1;
-a
-1
-# Start a asynchronous reload
-# Wait for tables to be closed
-# Ensure that the server didn't crash
-SELECT * FROM t1;
-a
-1
-# Drop tables on master and slave
-DROP TABLE t1;
-DROP TABLE t1;
-# Federated cleanup
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/r/federated_disabled.result b/mysql-test/r/federated_disabled.result
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/mysql-test/r/federated_disabled.result
+++ /dev/null
diff --git a/mysql-test/r/federated_innodb.result b/mysql-test/r/federated_innodb.result
deleted file mode 100644
index 70ba3acb279..00000000000
--- a/mysql-test/r/federated_innodb.result
+++ /dev/null
@@ -1,34 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-DROP DATABASE IF EXISTS federated;
-CREATE DATABASE federated;
-create table federated.t1 (a int primary key, b varchar(64))
-engine=myisam;
-create table federated.t1 (a int primary key, b varchar(64))
-engine=federated
-connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1';
-insert into federated.t1 values (1,"Larry"), (2,"Curly"), (1,"Moe");
-ERROR 23000: Can't write; duplicate key in table 't1'
-select * from federated.t1;
-a b
-1 Larry
-2 Curly
-truncate federated.t1;
-alter table federated.t1 engine=innodb;
-insert into federated.t1 values (1,"Larry"), (2,"Curly"), (1,"Moe");
-ERROR 23000: Can't write; duplicate key in table 't1'
-select * from federated.t1;
-a b
-drop table federated.t1;
-drop table federated.t1;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
-DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/r/flush.result b/mysql-test/r/flush.result
index 778f138f29d..b978304f59d 100644
--- a/mysql-test/r/flush.result
+++ b/mysql-test/r/flush.result
@@ -73,3 +73,19 @@ unlock tables;
drop table t1, t2;
set session low_priority_updates=default;
select benchmark(200, (select sin(1))) > 1000;
+End of 5.0 tests
+set @old_general_log= @@general_log;
+set @old_read_only= @@read_only;
+set global general_log= on;
+flush tables with read lock;
+flush logs;
+unlock tables;
+set global read_only=1;
+flush logs;
+unlock tables;
+flush tables with read lock;
+flush logs;
+unlock tables;
+set global general_log= @old_general_log;
+set global read_only= @old_read_only;
+End of 5.1 tests
diff --git a/mysql-test/r/flush2.result b/mysql-test/r/flush2.result
index 13bcc371ef6..5056955c7b7 100644
--- a/mysql-test/r/flush2.result
+++ b/mysql-test/r/flush2.result
@@ -4,9 +4,11 @@ show variables like 'log_bin%';
Variable_name Value
log_bin OFF
log_bin_trust_function_creators ON
+log_bin_trust_routine_creators ON
flush logs;
show variables like 'log_bin%';
Variable_name Value
log_bin OFF
log_bin_trust_function_creators ON
+log_bin_trust_routine_creators ON
set global expire_logs_days = 0;
diff --git a/mysql-test/r/flush_block_commit_notembedded.result b/mysql-test/r/flush_block_commit_notembedded.result
index 76c55e948dd..c7fd7a11877 100644
--- a/mysql-test/r/flush_block_commit_notembedded.result
+++ b/mysql-test/r/flush_block_commit_notembedded.result
@@ -9,13 +9,13 @@ INSERT t1 VALUES (1);
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
+master-bin.000001 106
# Switch to connection con1
COMMIT;
# Switch to connection con2
SHOW MASTER STATUS;
File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
+master-bin.000001 106
UNLOCK TABLES;
# Switch to connection con1
DROP TABLE t1;
diff --git a/mysql-test/r/flush_table.result b/mysql-test/r/flush_table.result
index db54d2e53ef..8821bade6b4 100644
--- a/mysql-test/r/flush_table.result
+++ b/mysql-test/r/flush_table.result
@@ -6,6 +6,37 @@ flush table t1;
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
+unlock tables;
+lock table t1 read;
+lock table t1 read;
+flush table t1;
+select * from t1;
+a
+1
+unlock tables;
+select * from t1;
+a
+1
+unlock tables;
+lock table t1 write;
+lock table t1 read;
+flush table t1;
+select * from t1;
+a
+1
+unlock tables;
+unlock tables;
+lock table t1 read;
+lock table t1 write;
+flush table t1;
+select * from t1;
+a
+1
+unlock tables;
+unlock tables;
+select * from t1;
+a
+1
drop table t1;
create table t1(table_id char(20) primary key);
create table t2(table_id char(20) primary key);
diff --git a/mysql-test/r/fulltext.result b/mysql-test/r/fulltext.result
index b0197e0aec2..a5216189d9a 100644
--- a/mysql-test/r/fulltext.result
+++ b/mysql-test/r/fulltext.result
@@ -14,10 +14,10 @@ a b
Only MyISAM tables support collections
Full-text indexes are called collections
explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 fulltext a a 0 1 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 fulltext a a 0 1 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'collections'))
+Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against ('collections'))
select * from t1 where MATCH(a,b) AGAINST ("indexes");
a b
Full-text indexes are called collections
@@ -41,6 +41,15 @@ a b
Full-text indexes are called collections
Only MyISAM tables support collections
MySQL has now support for full-text search
+select * from t1 where MATCH(a,b) AGAINST ("indexes" IN NATURAL LANGUAGE MODE);
+a b
+Full-text indexes are called collections
+select * from t1 where MATCH(a,b) AGAINST ("indexes" IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION);
+a b
+Full-text indexes are called collections
+Only MyISAM tables support collections
+select * from t1 where MATCH(a,b) AGAINST ("indexes" IN BOOLEAN MODE WITH QUERY EXPANSION);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WITH QUERY EXPANSION)' at line 1
explain select * from t1 where MATCH(a,b) AGAINST ("collections");
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 fulltext a a 0 1 Using where
@@ -75,10 +84,10 @@ select * from t1 where MATCH(a,b) AGAINST("support -collections" IN BOOLEAN MODE
a b
MySQL has now support for full-text search
explain extended select * from t1 where MATCH(a,b) AGAINST("support -collections" IN BOOLEAN MODE);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 fulltext a a 0 1 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 fulltext a a 0 1 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'support -collections' in boolean mode))
+Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against ('support -collections' in boolean mode))
select * from t1 where MATCH(a,b) AGAINST("support collections" IN BOOLEAN MODE);
a b
MySQL has now support for full-text search
@@ -182,13 +191,13 @@ create table t1 (a varchar(200) not null, fulltext (a));
insert t1 values ("aaa10 bbb20"), ("aaa20 bbb15"), ("aaa30 bbb10");
select * from t1 where match a against ("+aaa* +bbb*" in boolean mode);
a
-aaa10 bbb20
-aaa20 bbb15
aaa30 bbb10
+aaa20 bbb15
+aaa10 bbb20
select * from t1 where match a against ("+aaa* +bbb1*" in boolean mode);
a
-aaa20 bbb15
aaa30 bbb10
+aaa20 bbb15
select * from t1 where match a against ("+aaa* +ccc*" in boolean mode);
a
select * from t1 where match a against ("+aaa10 +(bbb*)" in boolean mode);
@@ -196,12 +205,12 @@ a
aaa10 bbb20
select * from t1 where match a against ("+(+aaa* +bbb1*)" in boolean mode);
a
-aaa20 bbb15
aaa30 bbb10
+aaa20 bbb15
select * from t1 where match a against ("(+aaa* +bbb1*)" in boolean mode);
a
-aaa20 bbb15
aaa30 bbb10
+aaa20 bbb15
drop table t1;
CREATE TABLE t1 (
id int(11),
@@ -239,7 +248,7 @@ t2 1 tix 1 inhalt NULL NULL NULL NULL YES FULLTEXT
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `ticket` int(11) default NULL,
+ `ticket` int(11) DEFAULT NULL,
`inhalt` text,
KEY `tig` (`ticket`),
FULLTEXT KEY `tix` (`inhalt`)
@@ -436,12 +445,16 @@ testword''
SELECT a FROM t1 WHERE MATCH a AGAINST('testword\'\'' IN BOOLEAN MODE);
a
testword''
+INSERT INTO t1 VALUES('test\'s');
+SELECT a FROM t1 WHERE MATCH a AGAINST('test' IN BOOLEAN MODE);
+a
+test's
DROP TABLE t1;
CREATE TABLE t1 (a VARCHAR(10000), FULLTEXT(a));
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(10000) default NULL,
+ `a` varchar(10000) DEFAULT NULL,
FULLTEXT KEY `a` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -469,6 +482,18 @@ SELECT * FROM t1 WHERE MATCH(a) AGAINST ('"aaaa"' IN BOOLEAN MODE);
a
aaaaa aaaa
DROP TABLE t1;
+CREATE TABLE t1(a VARCHAR(20), FULLTEXT(a));
+INSERT INTO t1 VALUES('Offside'),('City Of God');
+SELECT a FROM t1 WHERE MATCH a AGAINST ('+city of*' IN BOOLEAN MODE);
+a
+City Of God
+SELECT a FROM t1 WHERE MATCH a AGAINST ('+city (of*)' IN BOOLEAN MODE);
+a
+City Of God
+SELECT a FROM t1 WHERE MATCH a AGAINST ('+city* of*' IN BOOLEAN MODE);
+a
+City Of God
+DROP TABLE t1;
CREATE TABLE t1 (a VARCHAR(255), b INT, FULLTEXT(a), KEY(b));
INSERT INTO t1 VALUES('test', 1),('test', 1),('test', 1),('test', 1),
('test', 1),('test', 2),('test', 3),('test', 4);
@@ -510,6 +535,14 @@ CREATE TABLE t1(a TEXT);
SELECT GROUP_CONCAT(a) AS st FROM t1 HAVING MATCH(st) AGAINST('test' IN BOOLEAN MODE);
ERROR HY000: Incorrect arguments to AGAINST
DROP TABLE t1;
+CREATE TABLE t1(a VARCHAR(64), FULLTEXT(a));
+INSERT INTO t1 VALUES('awrd bwrd cwrd'),('awrd bwrd cwrd'),('awrd bwrd cwrd');
+SELECT * FROM t1 WHERE MATCH(a) AGAINST('+awrd bwrd* +cwrd*' IN BOOLEAN MODE);
+a
+awrd bwrd cwrd
+awrd bwrd cwrd
+awrd bwrd cwrd
+DROP TABLE t1;
CREATE TABLE t1 (col text, FULLTEXT KEY full_text (col));
PREPARE s FROM
"SELECT MATCH (col) AGAINST('findme') FROM t1 ORDER BY MATCH (col) AGAINST('findme')"
diff --git a/mysql-test/r/fulltext2.result b/mysql-test/r/fulltext2.result
index f6a4b20bc22..7e3e25370d3 100644
--- a/mysql-test/r/fulltext2.result
+++ b/mysql-test/r/fulltext2.result
@@ -241,3 +241,11 @@ select * from t1 where match a against('ab c' in boolean mode);
a
drop table t1;
set names latin1;
+SET NAMES utf8;
+CREATE TABLE t1(a VARCHAR(255), FULLTEXT(a)) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+INSERT INTO t1 VALUES('„MySQL“');
+SELECT a FROM t1 WHERE MATCH a AGAINST('“MySQL„' IN BOOLEAN MODE);
+a
+„MySQL“
+DROP TABLE t1;
+SET NAMES latin1;
diff --git a/mysql-test/r/fulltext3.result b/mysql-test/r/fulltext3.result
index 019d5f472ed..4ec48369ad1 100644
--- a/mysql-test/r/fulltext3.result
+++ b/mysql-test/r/fulltext3.result
@@ -11,3 +11,7 @@ Table Op Msg_type Msg_text
test.t1 check status OK
SET NAMES latin1;
DROP TABLE t1;
+CREATE TABLE t1(a VARCHAR(2) CHARACTER SET big5 COLLATE big5_chinese_ci,
+FULLTEXT(a));
+INSERT INTO t1 VALUES(0xA3C2);
+DROP TABLE t1;
diff --git a/mysql-test/r/fulltext_plugin.result b/mysql-test/r/fulltext_plugin.result
new file mode 100644
index 00000000000..69ebbe07e9e
--- /dev/null
+++ b/mysql-test/r/fulltext_plugin.result
@@ -0,0 +1,5 @@
+INSTALL PLUGIN simple_parser SONAME 'mypluglib.so';
+CREATE TABLE t1(a TEXT, b TEXT, FULLTEXT(a) WITH PARSER simple_parser);
+ALTER TABLE t1 ADD FULLTEXT(b) WITH PARSER simple_parser;
+DROP TABLE t1;
+UNINSTALL PLUGIN simple_parser;
diff --git a/mysql-test/r/func_compress.result b/mysql-test/r/func_compress.result
index d0689af5bff..b4e61d0e4fc 100644
--- a/mysql-test/r/func_compress.result
+++ b/mysql-test/r/func_compress.result
@@ -8,16 +8,16 @@ select uncompress(compress(@test_compress_string));
uncompress(compress(@test_compress_string))
string for test compress function aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
explain extended select uncompress(compress(@test_compress_string));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select uncompress(compress((@test_compress_string))) AS `uncompress(compress(@test_compress_string))`
select uncompressed_length(compress(@test_compress_string))=length(@test_compress_string);
uncompressed_length(compress(@test_compress_string))=length(@test_compress_string)
1
explain extended select uncompressed_length(compress(@test_compress_string))=length(@test_compress_string);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (uncompressed_length(compress((@test_compress_string))) = length((@test_compress_string))) AS `uncompressed_length(compress(@test_compress_string))=length(@test_compress_string)`
select uncompressed_length(compress(@test_compress_string));
@@ -72,6 +72,7 @@ set @@global.max_allowed_packet=1048576*100;
select compress(repeat('aaaaaaaaaa', IF(XXX, 10, 10000000))) is null;
compress(repeat('aaaaaaaaaa', IF(XXX, 10, 10000000))) is null
0
+set @@global.max_allowed_packet=default;
create table t1(a blob);
insert into t1 values(NULL), (compress('a'));
select uncompress(a), uncompressed_length(a) from t1;
diff --git a/mysql-test/r/func_concat.result b/mysql-test/r/func_concat.result
index 7e7c163716e..75b4888fbb2 100644
--- a/mysql-test/r/func_concat.result
+++ b/mysql-test/r/func_concat.result
@@ -89,3 +89,34 @@ c1 c2
First
DROP TABLE t1;
# End of 5.0 tests
+#
+# Bug #44743: Join in combination with concat does not always work
+#
+CREATE TABLE t1 (
+a VARCHAR(100) NOT NULL DEFAULT '0',
+b VARCHAR(2) NOT NULL DEFAULT '',
+c VARCHAR(2) NOT NULL DEFAULT '',
+d TEXT NOT NULL,
+PRIMARY KEY (a, b, c),
+KEY (a)
+) DEFAULT CHARSET=utf8;
+INSERT INTO t1 VALUES ('gui_A', 'a', 'b', 'str1'),
+('gui_AB', 'a', 'b', 'str2'), ('gui_ABC', 'a', 'b', 'str3');
+CREATE TABLE t2 (
+a VARCHAR(100) NOT NULL DEFAULT '',
+PRIMARY KEY (a)
+) DEFAULT CHARSET=latin1;
+INSERT INTO t2 VALUES ('A'), ('AB'), ('ABC');
+SELECT CONCAT('gui_', t2.a), t1.d FROM t2
+LEFT JOIN t1 ON t1.a = CONCAT('gui_', t2.a) AND t1.b = 'a' AND t1.c = 'b';
+CONCAT('gui_', t2.a) d
+gui_A str1
+gui_AB str2
+gui_ABC str3
+EXPLAIN SELECT CONCAT('gui_', t2.a), t1.d FROM t2
+LEFT JOIN t1 ON t1.a = CONCAT('gui_', t2.a) AND t1.b = 'a' AND t1.c = 'b';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL PRIMARY 102 NULL 3 Using index
+1 SIMPLE t1 eq_ref PRIMARY,a PRIMARY 318 func,const,const 1
+DROP TABLE t1, t2;
+# End of 5.1 tests
diff --git a/mysql-test/r/func_crypt.result b/mysql-test/r/func_crypt.result
index 42fa18b17b2..c2f369b3941 100644
--- a/mysql-test/r/func_crypt.result
+++ b/mysql-test/r/func_crypt.result
@@ -88,10 +88,10 @@ select old_password(' i d k f a ');
old_password(' i d k f a ')
5c078dc54ca0fcca
explain extended select password('idkfa '), old_password('idkfa');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select password(_latin1'idkfa ') AS `password('idkfa ')`,old_password(_latin1'idkfa') AS `old_password('idkfa')`
+Note 1003 select password('idkfa ') AS `password('idkfa ')`,old_password('idkfa') AS `old_password('idkfa')`
select encrypt('1234','_.');
encrypt('1234','_.')
#
diff --git a/mysql-test/r/func_default.result b/mysql-test/r/func_default.result
index 84ead3b73c7..a8f59f73e88 100644
--- a/mysql-test/r/func_default.result
+++ b/mysql-test/r/func_default.result
@@ -5,8 +5,8 @@ select default(str), default(strnull), default(intg), default(rel) from t1;
default(str) default(strnull) default(intg) default(rel)
def NULL 10 3.14
explain extended select default(str), default(strnull), default(intg), default(rel) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
Note 1003 select default('') AS `default(str)`,default('') AS `default(strnull)`,default('0') AS `default(intg)`,default('0') AS `default(rel)` from `test`.`t1`
select * from t1 where str <> default(str);
diff --git a/mysql-test/r/func_encrypt.result b/mysql-test/r/func_encrypt.result
index 3eb8ec4354c..8fbf36b45b9 100644
--- a/mysql-test/r/func_encrypt.result
+++ b/mysql-test/r/func_encrypt.result
@@ -179,7 +179,14 @@ NULL
Warnings:
Error 1108 Incorrect parameters to procedure 'des_decrypt'
explain extended select des_decrypt(des_encrypt("hello",4),'password2'), des_decrypt(des_encrypt("hello","hidden"));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select des_decrypt(des_encrypt(_latin1'hello',4),_latin1'password2') AS `des_decrypt(des_encrypt("hello",4),'password2')`,des_decrypt(des_encrypt(_latin1'hello',_latin1'hidden')) AS `des_decrypt(des_encrypt("hello","hidden"))`
+Note 1003 select des_decrypt(des_encrypt('hello',4),'password2') AS `des_decrypt(des_encrypt("hello",4),'password2')`,des_decrypt(des_encrypt('hello','hidden')) AS `des_decrypt(des_encrypt("hello","hidden"))`
+drop table if exists t1;
+create table t1 (f1 smallint(6) default null, f2 mediumtext character set utf8)
+engine=myisam default charset=latin1;
+insert into t1 values (null,'contraction\'s');
+insert into t1 values (-15818,'requirement\'s');
+select encrypt(f1,f2) as a from t1,(select encrypt(f1,f2) as b from t1) a;
+drop table t1;
diff --git a/mysql-test/r/func_gconcat.result b/mysql-test/r/func_gconcat.result
index 4dddc35e8a8..3b78851a1b9 100644
--- a/mysql-test/r/func_gconcat.result
+++ b/mysql-test/r/func_gconcat.result
@@ -15,8 +15,8 @@ grp group_concat(c)
2 b,c
3 E,C,D,d,d,D
explain extended select grp,group_concat(c) from t1 group by grp;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 9 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 9 100.00 Using filesort
Warnings:
Note 1003 select `test`.`t1`.`grp` AS `grp`,group_concat(`test`.`t1`.`c` separator ',') AS `group_concat(c)` from `test`.`t1` group by `test`.`t1`.`grp`
select grp,group_concat(a,c) from t1 group by grp;
@@ -85,8 +85,8 @@ grp group_concat(distinct c order by c desc)
2 c,b
3 E,D,C
explain extended select grp,group_concat(distinct c order by c desc) from t1 group by grp;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 9 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 9 100.00 Using filesort
Warnings:
Note 1003 select `test`.`t1`.`grp` AS `grp`,group_concat(distinct `test`.`t1`.`c` order by `test`.`t1`.`c` DESC separator ',') AS `group_concat(distinct c order by c desc)` from `test`.`t1` group by `test`.`t1`.`grp`
select grp,group_concat(c order by c separator ",") from t1 group by grp;
@@ -105,8 +105,8 @@ grp group_concat(distinct c order by c separator ",")
2 b,c
3 C,D,E
explain extended select grp,group_concat(distinct c order by c separator ",") from t1 group by grp;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 9 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 9 100.00 Using filesort
Warnings:
Note 1003 select `test`.`t1`.`grp` AS `grp`,group_concat(distinct `test`.`t1`.`c` order by `test`.`t1`.`c` ASC separator ',') AS `group_concat(distinct c order by c separator ",")` from `test`.`t1` group by `test`.`t1`.`grp`
select grp,group_concat(distinct c order by c desc separator ",") from t1 group by grp;
@@ -304,6 +304,12 @@ a grp
1 2
2 4,3
3 5
+select group_concat(c order by (select concat(5-t1.c,group_concat(c order by a)) from t2 where t2.a=t1.a)) as grp from t1;
+grp
+5,4,3,2
+select group_concat(c order by (select concat(t1.c,group_concat(c)) from t2 where a=t1.a)) as grp from t1;
+grp
+2,3,4,5
select a,c,(select group_concat(c order by a) from t2 where a=t1.a) as grp from t1 order by grp;
a c grp
3 5 3,3
@@ -453,7 +459,7 @@ create table t2 select group_concat(a) as a from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` varchar(400) character set cp1250 default NULL
+ `a` varchar(400) CHARACTER SET cp1250 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select collation(group_concat(a,_koi8r'test')) from t1;
collation(group_concat(a,_koi8r'test'))
diff --git a/mysql-test/r/func_group.result b/mysql-test/r/func_group.result
index d892deba63c..94147640cde 100644
--- a/mysql-test/r/func_group.result
+++ b/mysql-test/r/func_group.result
@@ -287,8 +287,8 @@ a count(b) sum(b) avg(b) std(b) min(b) max(b) bit_and(b) bit_or(b) bit_xor(b)
2 1 1 1.00000 0.00000 1 1 1 1 1
3 1 1 1.00000 0.00000 1 1 1 1 1
explain extended select SQL_BIG_RESULT a,count(b), sum(b), avg(b), std(b), min(b), max(b), bit_and(b), bit_or(b), bit_xor(b) from t1 group by a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 Using filesort
Warnings:
Note 1003 select sql_big_result `test`.`t1`.`a` AS `a`,count(`test`.`t1`.`b`) AS `count(b)`,sum(`test`.`t1`.`b`) AS `sum(b)`,avg(`test`.`t1`.`b`) AS `avg(b)`,std(`test`.`t1`.`b`) AS `std(b)`,min(`test`.`t1`.`b`) AS `min(b)`,max(`test`.`t1`.`b`) AS `max(b)`,bit_and(`test`.`t1`.`b`) AS `bit_and(b)`,bit_or(`test`.`t1`.`b`) AS `bit_or(b)`,bit_xor(`test`.`t1`.`b`) AS `bit_xor(b)` from `test`.`t1` group by `test`.`t1`.`a`
drop table t1;
@@ -614,7 +614,7 @@ explain
select max(t1.a3), min(t2.a2) from t1, t2 where t1.a2 = 2 and t1.a3 < 'MIN' and t2.a3 > 'CA';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range k1 k1 7 NULL 1 Using where; Using index
-1 SIMPLE t2 range k1 k1 3 NULL 4 Using where; Using index
+1 SIMPLE t2 range k1 k1 3 NULL 4 Using where; Using index; Using join buffer
explain
select min(a4 - 0.01) from t1;
id select_type table type possible_keys key key_len ref rows Extra
@@ -651,17 +651,8 @@ explain
select concat(min(t1.a1),min(t2.a4)) from t1, t2 where t2.a4 <> 'AME';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range k2 k2 4 NULL 6 Using where; Using index
-1 SIMPLE t1 index NULL PRIMARY 3 NULL 15 Using index
+1 SIMPLE t1 index NULL PRIMARY 3 NULL 15 Using index; Using join buffer
drop table t1, t2;
-create table t1 (USR_ID integer not null, MAX_REQ integer not null, constraint PK_SEA_USER primary key (USR_ID)) engine=InnoDB;
-insert into t1 values (1, 3);
-select count(*) + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ from t1 group by MAX_REQ;
-count(*) + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ
-1
-select Case When Count(*) < MAX_REQ Then 1 Else 0 End from t1 where t1.USR_ID = 1 group by MAX_REQ;
-Case When Count(*) < MAX_REQ Then 1 Else 0 End
-1
-drop table t1;
create table t1 (a char(10));
insert into t1 values ('a'),('b'),('c');
select coercibility(max(a)) from t1;
@@ -677,21 +668,21 @@ latin2 2 latin2 2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(1) character set latin2 default NULL
+ `a` char(1) CHARACTER SET latin2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t2 select max(a),min(a) from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `max(a)` char(1) character set latin2 default NULL,
- `min(a)` char(1) character set latin2 default NULL
+ `max(a)` char(1) CHARACTER SET latin2 DEFAULT NULL,
+ `min(a)` char(1) CHARACTER SET latin2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t2;
create table t2 select concat(a) from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `concat(a)` varchar(1) character set latin2 default NULL
+ `concat(a)` varchar(1) CHARACTER SET latin2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t2,t1;
create table t1 (a int);
@@ -780,7 +771,7 @@ create table t2 select MAX(b) from t1 group by a;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `MAX(b)` datetime default NULL
+ `MAX(b)` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2;
create table t1(f1 datetime);
@@ -1019,14 +1010,14 @@ create table t1 select variance(0);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `variance(0)` double(8,4) default NULL
+ `variance(0)` double(8,4) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 select stddev(0);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `stddev(0)` double(8,4) default NULL
+ `stddev(0)` double(8,4) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table bug22555 (i smallint primary key auto_increment, s1 smallint, s2 smallint, e decimal(30,10), o double);
@@ -1412,8 +1403,8 @@ CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1),(2),(3),(4);
CREATE VIEW v1 AS SELECT a,(a + 1) AS y FROM t1;
EXPLAIN EXTENDED SELECT y FROM v1 GROUP BY v1.y;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 4 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select (`test`.`t1`.`a` + 1) AS `y` from `test`.`t1` group by (`test`.`t1`.`a` + 1)
DROP VIEW v1;
@@ -1425,29 +1416,6 @@ SELECT AVG(a), CAST(AVG(a) AS DECIMAL) FROM t1;
AVG(a) CAST(AVG(a) AS DECIMAL)
15 15
DROP TABLE t1;
-CREATE TABLE t1 (a INT, b INT);
-INSERT INTO t1 VALUES (1,1), (1,2), (1,3);
-SET SQL_MODE='ONLY_FULL_GROUP_BY';
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-3
-SELECT COUNT(*) FROM t1 where a=1;
-COUNT(*)
-3
-SELECT COUNT(*),a FROM t1;
-ERROR 42000: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
-SELECT COUNT(*) FROM t1 a JOIN t1 b ON a.a= b.a;
-COUNT(*)
-9
-SELECT COUNT(*), (SELECT count(*) FROM t1 inr WHERE inr.a = outr.a)
-FROM t1 outr;
-ERROR 42000: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
-SELECT COUNT(*) FROM t1 a JOIN t1 outr
-ON a.a= (SELECT count(*) FROM t1 inr WHERE inr.a = outr.a);
-COUNT(*)
-0
-SET SQL_MODE=default;
-DROP TABLE t1;
CREATE TABLE derived1 (a bigint(21));
INSERT INTO derived1 VALUES (2);
CREATE TABLE D (
@@ -1485,4 +1453,71 @@ LIMIT 1)
1
DROP TABLE derived1;
DROP TABLE D;
+CREATE TABLE t1 (a INT, b INT);
+INSERT INTO t1 VALUES (1,1), (1,2), (1,3);
+SET SQL_MODE='ONLY_FULL_GROUP_BY';
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+3
+SELECT COUNT(*) FROM t1 where a=1;
+COUNT(*)
+3
+SELECT COUNT(*),a FROM t1;
+ERROR 42000: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
+SELECT COUNT(*) FROM t1 a JOIN t1 b ON a.a= b.a;
+COUNT(*)
+9
+SELECT COUNT(*), (SELECT count(*) FROM t1 inr WHERE inr.a = outr.a)
+FROM t1 outr;
+ERROR 42000: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
+SELECT COUNT(*) FROM t1 a JOIN t1 outr
+ON a.a= (SELECT count(*) FROM t1 inr WHERE inr.a = outr.a);
+COUNT(*)
+0
+SET SQL_MODE=default;
+DROP TABLE t1;
End of 5.0 tests
+#
+# BUG#47280 - strange results from count(*) with order by multiple
+# columns without where/group
+#
+#
+# Initialize test
+#
+CREATE TABLE t1 (
+pk INT NOT NULL,
+i INT,
+PRIMARY KEY (pk)
+);
+INSERT INTO t1 VALUES (1,11),(2,12),(3,13);
+#
+# Start test
+# All the following queries shall return 1 record
+#
+
+# Masking all correct values {11...13} for column i in this result.
+SELECT MAX(pk) as max, i
+FROM t1
+ORDER BY max;
+max i
+3 #
+
+EXPLAIN
+SELECT MAX(pk) as max, i
+FROM t1
+ORDER BY max;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary
+
+# Only 11 is correct for collumn i in this result
+SELECT MAX(pk) as max, i
+FROM t1
+WHERE pk<2
+ORDER BY max;
+max i
+1 11
+#
+# Cleanup
+#
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/func_group_innodb.result b/mysql-test/r/func_group_innodb.result
new file mode 100644
index 00000000000..908e85c1652
--- /dev/null
+++ b/mysql-test/r/func_group_innodb.result
@@ -0,0 +1,147 @@
+create table t1 (USR_ID integer not null, MAX_REQ integer not null, constraint PK_SEA_USER primary key (USR_ID)) engine=InnoDB;
+insert into t1 values (1, 3);
+select count(*) + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ from t1 group by MAX_REQ;
+count(*) + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ + MAX_REQ - MAX_REQ
+1
+select Case When Count(*) < MAX_REQ Then 1 Else 0 End from t1 where t1.USR_ID = 1 group by MAX_REQ;
+Case When Count(*) < MAX_REQ Then 1 Else 0 End
+1
+drop table t1;
+create table t1m (a int) engine=myisam;
+create table t1i (a int) engine=innodb;
+create table t2m (a int) engine=myisam;
+create table t2i (a int) engine=innodb;
+insert into t2m values (5);
+insert into t2i values (5);
+select min(a) from t1m;
+min(a)
+NULL
+select min(7) from t1m;
+min(7)
+NULL
+select min(7) from DUAL;
+min(7)
+7
+explain select min(7) from t2m join t1m;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+select min(7) from t2m join t1m;
+min(7)
+NULL
+select max(a) from t1m;
+max(a)
+NULL
+select max(7) from t1m;
+max(7)
+NULL
+select max(7) from DUAL;
+max(7)
+7
+explain select max(7) from t2m join t1m;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+select max(7) from t2m join t1m;
+max(7)
+NULL
+select 1, min(a) from t1m where a=99;
+1 min(a)
+1 NULL
+select 1, min(a) from t1m where 1=99;
+1 min(a)
+1 NULL
+select 1, min(1) from t1m where a=99;
+1 min(1)
+1 NULL
+select 1, min(1) from t1m where 1=99;
+1 min(1)
+1 NULL
+select 1, max(a) from t1m where a=99;
+1 max(a)
+1 NULL
+select 1, max(a) from t1m where 1=99;
+1 max(a)
+1 NULL
+select 1, max(1) from t1m where a=99;
+1 max(1)
+1 NULL
+select 1, max(1) from t1m where 1=99;
+1 max(1)
+1 NULL
+select min(a) from t1i;
+min(a)
+NULL
+select min(7) from t1i;
+min(7)
+NULL
+select min(7) from DUAL;
+min(7)
+7
+explain select min(7) from t2i join t1i;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2i ALL NULL NULL NULL NULL 1
+1 SIMPLE t1i ALL NULL NULL NULL NULL 1 Using join buffer
+select min(7) from t2i join t1i;
+min(7)
+NULL
+select max(a) from t1i;
+max(a)
+NULL
+select max(7) from t1i;
+max(7)
+NULL
+select max(7) from DUAL;
+max(7)
+7
+explain select max(7) from t2i join t1i;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2i ALL NULL NULL NULL NULL 1
+1 SIMPLE t1i ALL NULL NULL NULL NULL 1 Using join buffer
+select max(7) from t2i join t1i;
+max(7)
+NULL
+select 1, min(a) from t1i where a=99;
+1 min(a)
+1 NULL
+select 1, min(a) from t1i where 1=99;
+1 min(a)
+1 NULL
+select 1, min(1) from t1i where a=99;
+1 min(1)
+1 NULL
+select 1, min(1) from t1i where 1=99;
+1 min(1)
+1 NULL
+select 1, max(a) from t1i where a=99;
+1 max(a)
+1 NULL
+select 1, max(a) from t1i where 1=99;
+1 max(a)
+1 NULL
+select 1, max(1) from t1i where a=99;
+1 max(1)
+1 NULL
+select 1, max(1) from t1i where 1=99;
+1 max(1)
+1 NULL
+explain select count(*), min(7), max(7) from t1m, t1i;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1m system NULL NULL NULL NULL 0 const row not found
+1 SIMPLE t1i ALL NULL NULL NULL NULL 1
+select count(*), min(7), max(7) from t1m, t1i;
+count(*) min(7) max(7)
+0 NULL NULL
+explain select count(*), min(7), max(7) from t1m, t2i;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1m system NULL NULL NULL NULL 0 const row not found
+1 SIMPLE t2i ALL NULL NULL NULL NULL 1
+select count(*), min(7), max(7) from t1m, t2i;
+count(*) min(7) max(7)
+0 NULL NULL
+explain select count(*), min(7), max(7) from t2m, t1i;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2m system NULL NULL NULL NULL 1
+1 SIMPLE t1i ALL NULL NULL NULL NULL 1
+select count(*), min(7), max(7) from t2m, t1i;
+count(*) min(7) max(7)
+0 NULL NULL
+drop table t1m, t1i, t2m, t2i;
diff --git a/mysql-test/r/func_if.result b/mysql-test/r/func_if.result
index 16d6b435dc7..955a784f04c 100644
--- a/mysql-test/r/func_if.result
+++ b/mysql-test/r/func_if.result
@@ -40,10 +40,10 @@ a
aa
aaa
explain extended select if(u=1,st,binary st) s from t1 where st like "%a%" order by s;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 7 Using where; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 7 100.00 Using where; Using filesort
Warnings:
-Note 1003 select if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,cast(`test`.`t1`.`st` as char charset binary)) AS `s` from `test`.`t1` where (`test`.`t1`.`st` like _latin1'%a%') order by if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,cast(`test`.`t1`.`st` as char charset binary))
+Note 1003 select if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,cast(`test`.`t1`.`st` as char charset binary)) AS `s` from `test`.`t1` where (`test`.`t1`.`st` like '%a%') order by if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,cast(`test`.`t1`.`st` as char charset binary))
select nullif(u, 1) from t1;
nullif(u, 1)
NULL
@@ -54,8 +54,8 @@ NULL
0
0
explain extended select nullif(u, 1) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 7
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 7 100.00
Warnings:
Note 1003 select nullif(`test`.`t1`.`u`,1) AS `nullif(u, 1)` from `test`.`t1`
drop table t1;
diff --git a/mysql-test/r/func_in.result b/mysql-test/r/func_in.result
index 99b16d29eb9..ffdacc43735 100644
--- a/mysql-test/r/func_in.result
+++ b/mysql-test/r/func_in.result
@@ -143,10 +143,10 @@ select * from t1 where 'a' in (a,b,c collate latin1_bin);
a b c
a c c
explain extended select * from t1 where 'a' in (a,b,c collate latin1_bin);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where (_latin1'a' in (`test`.`t1`.`a`,`test`.`t1`.`b`,(`test`.`t1`.`c` collate latin1_bin)))
+Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where ('a' in (`test`.`t1`.`a`,`test`.`t1`.`b`,(`test`.`t1`.`c` collate latin1_bin)))
drop table t1;
set names utf8;
create table t1 (a char(10) character set utf8 not null);
@@ -225,8 +225,8 @@ a
46
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a NOT IN (45);
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` <> 45)
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` <> 45) latin1 latin1_swedish_ci
SELECT * FROM v1;
a
44
@@ -358,11 +358,12 @@ drop table t1;
CREATE TABLE t1 (a int, b int, PRIMARY KEY (a));
INSERT INTO t1 VALUES (1,1),(2,1),(3,1),(4,1),(5,1),(6,1);
CREATE TABLE t2 (a int, b int, PRIMARY KEY (a));
-INSERT INTO t2 VALUES (3,2),(4,2);
+INSERT INTO t2 VALUES (3,2),(4,2),(100,100),(101,201),(102,102);
CREATE TABLE t3 (a int PRIMARY KEY);
INSERT INTO t3 VALUES (1),(2),(3),(4);
-CREATE TABLE t4 (a int PRIMARY KEY);
-INSERT INTO t4 VALUES (1),(2);
+CREATE TABLE t4 (a int PRIMARY KEY,b int);
+INSERT INTO t4 VALUES (1,1),(2,2),(1000,1000),(1001,1001),(1002,1002),
+(1003,1003),(1004,1004);
EXPLAIN SELECT STRAIGHT_JOIN * FROM t3
JOIN t1 ON t3.a=t1.a
JOIN t2 ON t3.a=t2.a
@@ -371,16 +372,16 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 index PRIMARY PRIMARY 4 NULL 4 Using index
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t3.a 1
1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t3.a 1
-1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 2 Range checked for each record (index map: 0x1)
+1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 7 Range checked for each record (index map: 0x1)
SELECT STRAIGHT_JOIN * FROM t3
JOIN t1 ON t3.a=t1.a
JOIN t2 ON t3.a=t2.a
JOIN t4 WHERE t4.a IN (t1.b, t2.b);
-a a b a b a
-3 3 1 3 2 1
-3 3 1 3 2 2
-4 4 1 4 2 1
-4 4 1 4 2 2
+a a b a b a b
+3 3 1 3 2 1 1
+3 3 1 3 2 2 2
+4 4 1 4 2 1 1
+4 4 1 4 2 2 2
EXPLAIN SELECT STRAIGHT_JOIN
(SELECT SUM(t4.a) FROM t4 WHERE t4.a IN (t1.b, t2.b))
FROM t3, t1, t2
@@ -389,7 +390,7 @@ id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t3 index PRIMARY PRIMARY 4 NULL 4 Using index
1 PRIMARY t1 eq_ref PRIMARY PRIMARY 4 test.t3.a 1
1 PRIMARY t2 eq_ref PRIMARY PRIMARY 4 test.t3.a 1
-2 DEPENDENT SUBQUERY t4 index NULL PRIMARY 4 NULL 2 Using where; Using index
+2 DEPENDENT SUBQUERY t4 index NULL PRIMARY 4 NULL 7 Using where; Using index
SELECT STRAIGHT_JOIN
(SELECT SUM(t4.a) FROM t4 WHERE t4.a IN (t1.b, t2.b))
FROM t3, t1, t2
@@ -486,3 +487,267 @@ SELECT id FROM t1 WHERE id IN(4564, (SELECT IF(1=0,1,1/0)) );
id
DROP TABLE t1;
End of 5.0 tests
+create table t1(f1 char(1));
+insert into t1 values ('a'),('b'),('1');
+select f1 from t1 where f1 in ('a',1);
+f1
+a
+1
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+select f1, case f1 when 'a' then '+' when 1 then '-' end from t1;
+f1 case f1 when 'a' then '+' when 1 then '-' end
+a +
+b NULL
+1 -
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+create index t1f1_idx on t1(f1);
+select f1 from t1 where f1 in ('a',1);
+f1
+1
+a
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+explain select f1 from t1 where f1 in ('a',1);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index t1f1_idx t1f1_idx 2 NULL 3 Using where; Using index
+select f1 from t1 where f1 in ('a','b');
+f1
+a
+b
+explain select f1 from t1 where f1 in ('a','b');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index t1f1_idx t1f1_idx 2 NULL 3 Using where; Using index
+select f1 from t1 where f1 in (2,1);
+f1
+1
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'a'
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+explain select f1 from t1 where f1 in (2,1);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index t1f1_idx t1f1_idx 2 NULL 3 Using where; Using index
+create table t2(f2 int, index t2f2(f2));
+insert into t2 values(0),(1),(2);
+select f2 from t2 where f2 in ('a',2);
+f2
+0
+2
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'a'
+Warning 1292 Truncated incorrect DOUBLE value: 'a'
+Warning 1292 Truncated incorrect DOUBLE value: 'a'
+explain select f2 from t2 where f2 in ('a',2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index t2f2 t2f2 5 NULL 3 Using where; Using index
+select f2 from t2 where f2 in ('a','b');
+f2
+0
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'a'
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+explain select f2 from t2 where f2 in ('a','b');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index t2f2 t2f2 5 NULL 3 Using where; Using index
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'a'
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+select f2 from t2 where f2 in (1,'b');
+f2
+0
+1
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+Warning 1292 Truncated incorrect DOUBLE value: 'b'
+explain select f2 from t2 where f2 in (1,'b');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index t2f2 t2f2 5 NULL 3 Using where; Using index
+drop table t1, t2;
+create table t1 (a time, key(a));
+insert into t1 values (),(),(),(),(),(),(),(),(),();
+select a from t1 where a not in (a,a,a) group by a;
+a
+drop table t1;
+create table t1 (id int);
+select * from t1 where NOT id in (select null union all select 1);
+id
+select * from t1 where NOT id in (null, 1);
+id
+drop table t1;
+CREATE TABLE t1(c0 INTEGER, c1 INTEGER, c2 INTEGER);
+INSERT INTO t1 VALUES(1, 1, 1), (1, 1, 1);
+SELECT CASE AVG (c0) WHEN c1 * c2 THEN 1 END FROM t1;
+CASE AVG (c0) WHEN c1 * c2 THEN 1 END
+1
+SELECT CASE c1 * c2 WHEN SUM(c0) THEN 1 WHEN AVG(c0) THEN 2 END FROM t1;
+CASE c1 * c2 WHEN SUM(c0) THEN 1 WHEN AVG(c0) THEN 2 END
+2
+SELECT CASE c1 WHEN c1 + 1 THEN 1 END, ABS(AVG(c0)) FROM t1;
+CASE c1 WHEN c1 + 1 THEN 1 END ABS(AVG(c0))
+NULL 1.0000
+DROP TABLE t1;
+CREATE TABLE t1(a TEXT, b INT, c INT UNSIGNED, d DECIMAL(12,2), e REAL);
+INSERT INTO t1 VALUES('iynfj', 1, 1, 1, 1);
+INSERT INTO t1 VALUES('innfj', 2, 2, 2, 2);
+SELECT SUM( DISTINCT a ) FROM t1 GROUP BY a HAVING a IN ( AVG( 1 ), 1 + a);
+SUM( DISTINCT a )
+SELECT SUM( DISTINCT b ) FROM t1 GROUP BY b HAVING b IN ( AVG( 1 ), 1 + b);
+SUM( DISTINCT b )
+1
+SELECT SUM( DISTINCT c ) FROM t1 GROUP BY c HAVING c IN ( AVG( 1 ), 1 + c);
+SUM( DISTINCT c )
+1
+SELECT SUM( DISTINCT d ) FROM t1 GROUP BY d HAVING d IN ( AVG( 1 ), 1 + d);
+SUM( DISTINCT d )
+1.00
+SELECT SUM( DISTINCT e ) FROM t1 GROUP BY e HAVING e IN ( AVG( 1 ), 1 + e);
+SUM( DISTINCT e )
+1
+SELECT SUM( DISTINCT e ) FROM t1 GROUP BY b,c,d HAVING (b,c,d) IN
+((AVG( 1 ), 1 + c, 1 + d), (AVG( 1 ), 2 + c, 2 + d));
+SUM( DISTINCT e )
+DROP TABLE t1;
+#
+# Bug #44139: Table scan when NULL appears in IN clause
+#
+CREATE TABLE t1 (
+c_int INT NOT NULL,
+c_decimal DECIMAL(5,2) NOT NULL,
+c_float FLOAT(5, 2) NOT NULL,
+c_bit BIT(10) NOT NULL,
+c_date DATE NOT NULL,
+c_datetime DATETIME NOT NULL,
+c_timestamp TIMESTAMP NOT NULL,
+c_time TIME NOT NULL,
+c_year YEAR NOT NULL,
+c_char CHAR(10) NOT NULL,
+INDEX(c_int), INDEX(c_decimal), INDEX(c_float), INDEX(c_bit), INDEX(c_date),
+INDEX(c_datetime), INDEX(c_timestamp), INDEX(c_time), INDEX(c_year),
+INDEX(c_char));
+INSERT INTO t1 (c_int) VALUES (1), (2), (3), (4), (5);
+INSERT INTO t1 (c_int) SELECT 0 FROM t1;
+INSERT INTO t1 (c_int) SELECT 0 FROM t1;
+EXPLAIN SELECT * FROM t1 WHERE c_int IN (1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_int c_int 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_int IN (NULL, 1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_int c_int 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_int IN (1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_int c_int 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_int IN (1, NULL, 2, NULL, 3, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_int c_int 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_int IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_int IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_decimal IN (1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_decimal c_decimal 3 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_decimal IN (NULL, 1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_decimal c_decimal 3 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_decimal IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_decimal IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_float IN (1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_float c_float 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_float IN (NULL, 1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_float c_float 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_float IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_float IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_bit IN (1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_bit c_bit 2 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_bit IN (NULL, 1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_bit c_bit 2 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_bit IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_bit IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_date
+IN ('2009-09-01', '2009-09-02', '2009-09-03');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_date c_date 3 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_date
+IN (NULL, '2009-09-01', '2009-09-02', '2009-09-03');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_date c_date 3 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_date IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_date IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_datetime
+IN ('2009-09-01 00:00:01', '2009-09-02 00:00:01', '2009-09-03 00:00:01');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_datetime c_datetime 8 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_datetime
+IN (NULL, '2009-09-01 00:00:01', '2009-09-02 00:00:01', '2009-09-03 00:00:01');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_datetime c_datetime 8 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_datetime IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_datetime IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_timestamp
+IN ('2009-09-01 00:00:01', '2009-09-01 00:00:02', '2009-09-01 00:00:03');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_timestamp c_timestamp 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_timestamp
+IN (NULL, '2009-09-01 00:00:01', '2009-09-01 00:00:02', '2009-09-01 00:00:03');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_timestamp c_timestamp 4 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_timestamp IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_timestamp IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_year IN (1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_year c_year 1 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_year IN (NULL, 1, 2, 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_year c_year 1 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_year IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_year IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_char IN ('1', '2', '3');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_char c_char 10 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_char IN (NULL, '1', '2', '3');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c_char c_char 10 NULL 3 Using where
+EXPLAIN SELECT * FROM t1 WHERE c_char IN (NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN SELECT * FROM t1 WHERE c_char IN (NULL, NULL);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+DROP TABLE t1;
+#
+End of 5.1 tests
diff --git a/mysql-test/r/func_like.result b/mysql-test/r/func_like.result
index 7e6fedb9403..9338a76e320 100644
--- a/mysql-test/r/func_like.result
+++ b/mysql-test/r/func_like.result
@@ -1,12 +1,16 @@
drop table if exists t1;
create table t1 (a varchar(10), key(a));
insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
-explain select * from t1 where a like 'abc%';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index a a 13 NULL 5 Using where; Using index
-explain select * from t1 where a like concat('abc','%');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index a a 13 NULL 5 Using where; Using index
+explain extended select * from t1 where a like 'abc%';
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index a a 13 NULL 5 20.00 Using where; Using index
+Warnings:
+Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` like 'abc%')
+explain extended select * from t1 where a like concat('abc','%');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index a a 13 NULL 5 20.00 Using where; Using index
+Warnings:
+Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` like concat('abc','%'))
select * from t1 where a like "abc%";
a
abc
diff --git a/mysql-test/r/func_math.result b/mysql-test/r/func_math.result
index 9681a8a4302..fd7ef72409e 100644
--- a/mysql-test/r/func_math.result
+++ b/mysql-test/r/func_math.result
@@ -3,32 +3,32 @@ select floor(5.5),floor(-5.5);
floor(5.5) floor(-5.5)
5 -6
explain extended select floor(5.5),floor(-5.5);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select floor(5.5) AS `floor(5.5)`,floor(-(5.5)) AS `floor(-5.5)`
select ceiling(5.5),ceiling(-5.5);
ceiling(5.5) ceiling(-5.5)
6 -5
explain extended select ceiling(5.5),ceiling(-5.5);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select ceiling(5.5) AS `ceiling(5.5)`,ceiling(-(5.5)) AS `ceiling(-5.5)`
select truncate(52.64,1),truncate(52.64,2),truncate(52.64,-1),truncate(52.64,-2), truncate(-52.64,1),truncate(-52.64,-1);
truncate(52.64,1) truncate(52.64,2) truncate(52.64,-1) truncate(52.64,-2) truncate(-52.64,1) truncate(-52.64,-1)
52.6 52.64 50 0 -52.6 -50
explain extended select truncate(52.64,1),truncate(52.64,2),truncate(52.64,-1),truncate(52.64,-2), truncate(-52.64,1),truncate(-52.64,-1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select truncate(52.64,1) AS `truncate(52.64,1)`,truncate(52.64,2) AS `truncate(52.64,2)`,truncate(52.64,-(1)) AS `truncate(52.64,-1)`,truncate(52.64,-(2)) AS `truncate(52.64,-2)`,truncate(-(52.64),1) AS `truncate(-52.64,1)`,truncate(-(52.64),-(1)) AS `truncate(-52.64,-1)`
select round(5.5),round(-5.5);
round(5.5) round(-5.5)
6 -6
explain extended select round(5.5),round(-5.5);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select round(5.5,0) AS `round(5.5)`,round(-(5.5),0) AS `round(-5.5)`
select round(5.64,1),round(5.64,2),round(5.64,-1),round(5.64,-2);
@@ -38,48 +38,48 @@ select abs(-10), sign(-5), sign(5), sign(0);
abs(-10) sign(-5) sign(5) sign(0)
10 -1 1 0
explain extended select abs(-10), sign(-5), sign(5), sign(0);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select abs(-(10)) AS `abs(-10)`,sign(-(5)) AS `sign(-5)`,sign(5) AS `sign(5)`,sign(0) AS `sign(0)`
select log(exp(10)),exp(log(sqrt(10))*2),log(-1),log(NULL),log(1,1),log(3,9),log(-1,2),log(NULL,2);
log(exp(10)) exp(log(sqrt(10))*2) log(-1) log(NULL) log(1,1) log(3,9) log(-1,2) log(NULL,2)
10 10 NULL NULL NULL 2 NULL NULL
explain extended select log(exp(10)),exp(log(sqrt(10))*2),log(-1),log(NULL),log(1,1),log(3,9),log(-1,2),log(NULL,2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select log(exp(10)) AS `log(exp(10))`,exp((log(sqrt(10)) * 2)) AS `exp(log(sqrt(10))*2)`,log(-(1)) AS `log(-1)`,log(NULL) AS `log(NULL)`,log(1,1) AS `log(1,1)`,log(3,9) AS `log(3,9)`,log(-(1),2) AS `log(-1,2)`,log(NULL,2) AS `log(NULL,2)`
select ln(exp(10)),exp(ln(sqrt(10))*2),ln(-1),ln(0),ln(NULL);
ln(exp(10)) exp(ln(sqrt(10))*2) ln(-1) ln(0) ln(NULL)
10 10 NULL NULL NULL
explain extended select ln(exp(10)),exp(ln(sqrt(10))*2),ln(-1),ln(0),ln(NULL);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select ln(exp(10)) AS `ln(exp(10))`,exp((ln(sqrt(10)) * 2)) AS `exp(ln(sqrt(10))*2)`,ln(-(1)) AS `ln(-1)`,ln(0) AS `ln(0)`,ln(NULL) AS `ln(NULL)`
select log2(8),log2(15),log2(-2),log2(0),log2(NULL);
log2(8) log2(15) log2(-2) log2(0) log2(NULL)
3 3.90689059560852 NULL NULL NULL
explain extended select log2(8),log2(15),log2(-2),log2(0),log2(NULL);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select log2(8) AS `log2(8)`,log2(15) AS `log2(15)`,log2(-(2)) AS `log2(-2)`,log2(0) AS `log2(0)`,log2(NULL) AS `log2(NULL)`
select log10(100),log10(18),log10(-4),log10(0),log10(NULL);
log10(100) log10(18) log10(-4) log10(0) log10(NULL)
2 1.25527250510331 NULL NULL NULL
explain extended select log10(100),log10(18),log10(-4),log10(0),log10(NULL);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select log10(100) AS `log10(100)`,log10(18) AS `log10(18)`,log10(-(4)) AS `log10(-4)`,log10(0) AS `log10(0)`,log10(NULL) AS `log10(NULL)`
select pow(10,log10(10)),power(2,4);
pow(10,log10(10)) power(2,4)
10 16
explain extended select pow(10,log10(10)),power(2,4);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select pow(10,log10(10)) AS `pow(10,log10(10))`,pow(2,4) AS `power(2,4)`
set @@rand_seed1=10000000,@@rand_seed2=1000000;
@@ -87,21 +87,33 @@ select rand(999999),rand();
rand(999999) rand()
0.0142313651873091 0.028870999839968
explain extended select rand(999999),rand();
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select rand(999999) AS `rand(999999)`,rand() AS `rand()`
select pi(),format(sin(pi()/2),6),format(cos(pi()/2),6),format(abs(tan(pi())),6),format(cot(1),6),format(asin(1),6),format(acos(0),6),format(atan(1),6);
pi() format(sin(pi()/2),6) format(cos(pi()/2),6) format(abs(tan(pi())),6) format(cot(1),6) format(asin(1),6) format(acos(0),6) format(atan(1),6)
3.141593 1.000000 0.000000 0.000000 0.642093 1.570796 1.570796 0.785398
explain extended select pi(),format(sin(pi()/2),6),format(cos(pi()/2),6),format(abs(tan(pi())),6),format(cot(1),6),format(asin(1),6),format(acos(0),6),format(atan(1),6);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select pi() AS `pi()`,format(sin((pi() / 2)),6) AS `format(sin(pi()/2),6)`,format(cos((pi() / 2)),6) AS `format(cos(pi()/2),6)`,format(abs(tan(pi())),6) AS `format(abs(tan(pi())),6)`,format((1 / tan(1)),6) AS `format(cot(1),6)`,format(asin(1),6) AS `format(asin(1),6)`,format(acos(0),6) AS `format(acos(0),6)`,format(atan(1),6) AS `format(atan(1),6)`
select degrees(pi()),radians(360);
degrees(pi()) radians(360)
180 6.28318530717959
+select format(atan(-2, 2), 6);
+format(atan(-2, 2), 6)
+-0.785398
+select format(atan(pi(), 0), 6);
+format(atan(pi(), 0), 6)
+1.570796
+select format(atan2(-2, 2), 6);
+format(atan2(-2, 2), 6)
+-0.785398
+select format(atan2(pi(), 0), 6);
+format(atan2(pi(), 0), 6)
+1.570796
SELECT ACOS(1.0);
ACOS(1.0)
0
@@ -124,8 +136,8 @@ select format(4.55, 1), format(4.551, 1);
format(4.55, 1) format(4.551, 1)
4.6 4.6
explain extended select degrees(pi()),radians(360);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select degrees(pi()) AS `degrees(pi())`,radians(360) AS `radians(360)`
select rand(rand);
@@ -153,7 +165,7 @@ create table t1 select round(1, 6);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `round(1, 6)` int(1) NOT NULL default '0'
+ `round(1, 6)` int(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t1;
round(1, 6)
@@ -162,11 +174,46 @@ drop table t1;
select abs(-2) * -2;
abs(-2) * -2
-4
-create table t1 (i int);
-insert into t1 values (1);
-select rand(i) from t1;
-ERROR HY000: Incorrect arguments to RAND
-drop table t1;
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (1),(1),(1),(2);
+SELECT CAST(RAND(2) * 1000 AS UNSIGNED), CAST(RAND(a) * 1000 AS UNSIGNED)
+FROM t1;
+CAST(RAND(2) * 1000 AS UNSIGNED) CAST(RAND(a) * 1000 AS UNSIGNED)
+656 405
+122 405
+645 405
+858 656
+SELECT CAST(RAND(2) * 1000 AS UNSIGNED), CAST(RAND(a) * 1000 AS UNSIGNED)
+FROM t1 WHERE a = 1;
+CAST(RAND(2) * 1000 AS UNSIGNED) CAST(RAND(a) * 1000 AS UNSIGNED)
+656 405
+122 405
+645 405
+INSERT INTO t1 VALUES (3);
+SELECT CAST(RAND(2) * 1000 AS UNSIGNED), CAST(RAND(a) * 1000 AS UNSIGNED)
+FROM t1;
+CAST(RAND(2) * 1000 AS UNSIGNED) CAST(RAND(a) * 1000 AS UNSIGNED)
+656 405
+122 405
+645 405
+858 656
+354 906
+SELECT CAST(RAND(2) * 1000 AS UNSIGNED), CAST(RAND(a) * 1000 AS UNSIGNED)
+FROM t1 WHERE a = 1;
+CAST(RAND(2) * 1000 AS UNSIGNED) CAST(RAND(a) * 1000 AS UNSIGNED)
+656 405
+122 405
+645 405
+PREPARE stmt FROM
+"SELECT CAST(RAND(2) * 1000 AS UNSIGNED), CAST(RAND(?) * 1000 AS UNSIGNED)
+ FROM t1 WHERE a = 1";
+set @var=2;
+EXECUTE stmt USING @var;
+CAST(RAND(2) * 1000 AS UNSIGNED) CAST(RAND(?) * 1000 AS UNSIGNED)
+656 656
+122 122
+645 645
+DROP TABLE t1;
create table t1 (a varchar(90), ts datetime not null, index (a)) engine=innodb default charset=utf8;
insert into t1 values ('http://www.foo.com/', now());
select a from t1 where a='http://www.foo.com/' order by abs(timediff(ts, 0));
@@ -398,3 +445,41 @@ SELECT 1 FROM (SELECT ROUND(f1, f1) AS a FROM t1) AS s WHERE a LIKE 'a';
1
DROP TABLE t1;
End of 5.0 tests
+SELECT 1e308 + 1e308;
+1e308 + 1e308
+NULL
+SELECT -1e308 - 1e308;
+-1e308 - 1e308
+NULL
+SELECT 1e300 * 1e300;
+1e300 * 1e300
+NULL
+SELECT 1e300 / 1e-300;
+1e300 / 1e-300
+NULL
+SELECT EXP(750);
+EXP(750)
+NULL
+SELECT POW(10, 309);
+POW(10, 309)
+NULL
+#
+# Bug #44768: SIGFPE crash when selecting rand from a view
+# containing null
+#
+CREATE OR REPLACE VIEW v1 AS SELECT NULL AS a;
+SELECT RAND(a) FROM v1;
+RAND(a)
+0.155220427694936
+DROP VIEW v1;
+SELECT RAND(a) FROM (SELECT NULL AS a) b;
+RAND(a)
+0.155220427694936
+CREATE TABLE t1 (i INT);
+INSERT INTO t1 VALUES (NULL);
+SELECT RAND(i) FROM t1;
+RAND(i)
+0.155220427694936
+DROP TABLE t1;
+#
+End of 5.1 tests
diff --git a/mysql-test/r/func_misc.result b/mysql-test/r/func_misc.result
index 9f2fcb06638..81dddd0f648 100644
--- a/mysql-test/r/func_misc.result
+++ b/mysql-test/r/func_misc.result
@@ -1,3 +1,4 @@
+DROP TABLE IF EXISTS t1, t2;
select format(1.5555,0),format(123.5555,1),format(1234.5555,2),format(12345.55555,3),format(123456.5555,4),format(1234567.5555,5),format("12345.2399",2);
format(1.5555,0) format(123.5555,1) format(1234.5555,2) format(12345.55555,3) format(123456.5555,4) format(1234567.5555,5) format("12345.2399",2)
2 123.6 1,234.56 12,345.556 123,456.5555 1,234,567.55550 12,345.24
@@ -22,6 +23,11 @@ hex(inet_aton('127.1.1'))
select length(uuid()), charset(uuid()), length(unhex(replace(uuid(),_utf8'-',_utf8'')));
length(uuid()) charset(uuid()) length(unhex(replace(uuid(),_utf8'-',_utf8'')))
36 utf8 16
+set @a= uuid_short();
+set @b= uuid_short();
+select cast(@a - @b as signed);
+cast(@a - @b as signed)
+-1
select length(format('nan', 2)) > 0;
length(format('nan', 2)) > 0
1
@@ -51,7 +57,6 @@ select a from t1 where mid(a+0,6,3) = ( mid(20040106123400,6,3) );
a
2004-01-06 12:34:00
drop table t1;
-DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (conn CHAR(7), connection_id INT);
INSERT INTO t1 VALUES ('default', CONNECTION_ID());
SELECT GET_LOCK('bug16501',600);
@@ -95,8 +100,8 @@ create table t1 as select uuid(), length(uuid());
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `uuid()` varchar(36) character set utf8 NOT NULL default '',
- `length(uuid())` int(10) NOT NULL default '0'
+ `uuid()` varchar(36) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `length(uuid())` int(10) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
#------------------------------------------------------------------------
@@ -196,7 +201,7 @@ create table t1 select INET_ATON('255.255.0.1') as `a`;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bigint(21) unsigned default NULL
+ `a` bigint(21) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
drop table if exists table_26093;
@@ -328,3 +333,7 @@ select NAME_CONST('_id',1234) as id;
id
1234
End of 5.0 tests
+select connection_id() > 0;
+connection_id() > 0
+1
+End of tests
diff --git a/mysql-test/r/func_op.result b/mysql-test/r/func_op.result
index 24685d07f3d..636163e6b29 100644
--- a/mysql-test/r/func_op.result
+++ b/mysql-test/r/func_op.result
@@ -2,16 +2,16 @@ select 1+1,1-1,1+1*2,8/5,8%5,mod(8,5),mod(8,5)|0,-(1+1)*-2;
1+1 1-1 1+1*2 8/5 8%5 mod(8,5) mod(8,5)|0 -(1+1)*-2
2 0 3 1.6000 3 3 3 4
explain extended select 1+1,1-1,1+1*2,8/5,8%5,mod(8,5),mod(8,5)|0,-(1+1)*-2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (1 + 1) AS `1+1`,(1 - 1) AS `1-1`,(1 + (1 * 2)) AS `1+1*2`,(8 / 5) AS `8/5`,(8 % 5) AS `8%5`,(8 % 5) AS `mod(8,5)`,((8 % 5) | 0) AS `mod(8,5)|0`,(-((1 + 1)) * -(2)) AS `-(1+1)*-2`
select 1 | (1+1),5 & 3,bit_count(7) ;
1 | (1+1) 5 & 3 bit_count(7)
3 1 3
explain extended select 1 | (1+1),5 & 3,bit_count(7) ;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (1 | (1 + 1)) AS `1 | (1+1)`,(5 & 3) AS `5 & 3`,bit_count(7) AS `bit_count(7)`
select 1 << 32,1 << 63, 1 << 64, 4 >> 2, 4 >> 63, 1<< 63 >> 60;
diff --git a/mysql-test/r/func_regexp.result b/mysql-test/r/func_regexp.result
index f3a1c625a09..54aad23402f 100644
--- a/mysql-test/r/func_regexp.result
+++ b/mysql-test/r/func_regexp.result
@@ -8,8 +8,8 @@ select null, null;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s1` varchar(64) default NULL,
- `s2` varchar(64) default NULL
+ `s1` varchar(64) DEFAULT NULL,
+ `s2` varchar(64) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
delete from t1;
insert into t1 values('aaa','aaa');
@@ -49,10 +49,10 @@ select * from t1 where xxx regexp('is a test of some long text to');
xxx
this is a test of some long text to see what happens
explain extended select * from t1 where xxx regexp('is a test of some long text to');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
-Note 1003 select 'this is a test of some long text to see what happens' AS `xxx` from `test`.`t1` where ('this is a test of some long text to see what happens' regexp _latin1'is a test of some long text to')
+Note 1003 select 'this is a test of some long text to see what happens' AS `xxx` from `test`.`t1` where ('this is a test of some long text to see what happens' regexp 'is a test of some long text to')
select * from t1 where xxx regexp('is a test of some long text to ');
xxx
this is a test of some long text to see what happens
@@ -127,3 +127,21 @@ SELECT "ABC" REGEXP BINARY NULL;
"ABC" REGEXP BINARY NULL
NULL
End of 5.0 tests
+CREATE TABLE t1(a INT, b CHAR(4));
+INSERT INTO t1 VALUES (1, '6.1'), (1, '7.0'), (1, '8.0');
+PREPARE stmt1 FROM "SELECT a FROM t1 WHERE a=1 AND '7.0' REGEXP b LIMIT 1";
+EXECUTE stmt1;
+a
+1
+EXECUTE stmt1;
+a
+1
+EXECUTE stmt1;
+a
+1
+EXECUTE stmt1;
+a
+1
+DEALLOCATE PREPARE stmt1;
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/func_rollback.result b/mysql-test/r/func_rollback.result
new file mode 100644
index 00000000000..57968910051
--- /dev/null
+++ b/mysql-test/r/func_rollback.result
@@ -0,0 +1,461 @@
+DROP TABLE IF EXISTS t1_select;
+DROP TABLE IF EXISTS t1_aux;
+DROP TABLE IF EXISTS t1_not_null;
+DROP VIEW IF EXISTS v1_not_null;
+DROP VIEW IF EXISTS v1_func;
+DROP TABLE IF EXISTS t1_fail;
+DROP FUNCTION IF EXISTS f1_simple_insert;
+DROP FUNCTION IF EXISTS f1_two_inserts;
+DROP FUNCTION IF EXISTS f1_insert_select;
+SET SESSION AUTOCOMMIT=0;
+SET SESSION sql_mode = '';
+CREATE TABLE t1_select (f1 BIGINT, f2 BIGINT) ENGINE = MEMORY;
+INSERT INTO t1_select(f1,f2) VALUES (1,-1),(2,NULL),(3,0),(4,1),(5,2);
+SELECT * FROM t1_select;
+f1 f2
+1 -1
+2 NULL
+3 0
+4 1
+5 2
+CREATE TABLE t1_not_null (f1 BIGINT, f2 BIGINT NOT NULL)
+ENGINE = <transactional_engine>;
+SELECT * FROM t1_not_null;
+f1 f2
+CREATE TABLE t1_aux (f1 BIGINT, f2 BIGINT)
+ENGINE = <transactional_engine>;
+SELECT * FROM t1_aux;
+f1 f2
+COMMIT;
+CREATE FUNCTION f1_simple_insert(my_f1 INTEGER) RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null SET f1 = 10, f2 = my_f1;
+RETURN 1;
+END//
+
+# One f1_simple_insert execution per row, no NOT NULL violation
+SELECT f1_simple_insert(1);
+f1_simple_insert(1)
+1
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+10 1
+ROLLBACK;
+SELECT * FROM t1_not_null;
+f1 f2
+SELECT f1_simple_insert(1) FROM t1_select;
+f1_simple_insert(1)
+1
+1
+1
+1
+1
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+10 1
+10 1
+10 1
+10 1
+10 1
+ROLLBACK;
+SELECT * FROM t1_not_null;
+f1 f2
+
+# One f1_simple_insert execution per row, NOT NULL violation when the
+# SELECT processes the first row.
+SELECT f1_simple_insert(NULL);
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT f1_simple_insert(NULL) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT 1 FROM (SELECT 1 AS f1,1 AS f2 UNION ALL SELECT 1,NULL) AS t1 WHERE f1_simple_insert(NULL) = 1;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# One f1_simple_insert execution per row, NOT NULL violation when the
+# SELECT processes the non first row
+SELECT f1_simple_insert(f2) FROM (SELECT 1 AS f1,1 AS f2 UNION ALL SELECT 1,NULL) AS t1;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT f1_simple_insert(f2) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# Two f1_simple_insert executions per row, NOT NULL violation when the
+# SELECT processes the first row.
+SELECT f1_simple_insert(1),f1_simple_insert(NULL);
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT f1_simple_insert(NULL),f1_simple_insert(1);
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# Two f1_simple_insert executions per row, NOT NULL violation when the
+# SELECT processes the non first row
+SELECT f1_simple_insert(f1),f1_simple_insert(f2) FROM (SELECT 1 AS f1,1 AS f2 UNION ALL SELECT 1,NULL) AS t1;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT f1_simple_insert(f2),f1_simple_insert(f1) FROM (SELECT 1 AS f1,1 AS f2 UNION ALL SELECT 1,NULL) AS t1;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT f1_simple_insert(f1),f1_simple_insert(f2) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT f1_simple_insert(f2),f1_simple_insert(f1) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT 1 FROM (SELECT 1 AS f1,1 AS f2 UNION ALL SELECT 1,NULL) AS t1
+WHERE 1 = f1_simple_insert(f2) AND 1 = f1_simple_insert(f1);
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# Nested functions, the inner fails
+SELECT f1_simple_insert(f1_simple_insert(NULL)) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# Nested functions, the outer fails
+SELECT f1_simple_insert(f1_simple_insert(1) + NULL) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_simple_insert;
+CREATE FUNCTION f1_insert_select(my_f1 INTEGER) RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null SELECT * FROM t1_select WHERE f1 = my_f1;
+RETURN 1;
+END;
+
+# f1_insert_select(2), tries to INSERT SELECT one row containing NULL
+# The fact that
+# - SELECT f1_insert_select(2); gives any result set and
+# - t1_not_null gets a row inserted
+# is covered by the manual.
+SELECT f1_insert_select(2);
+f1_insert_select(2)
+1
+Warnings:
+Warning 1048 Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+2 0
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_insert_select;
+SET SESSION sql_mode = 'traditional';
+CREATE FUNCTION f1_insert_select(my_f1 INTEGER) RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null SELECT * FROM t1_select WHERE f1 = my_f1;
+RETURN 1;
+END;
+SELECT f1_insert_select(2);
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_insert_select;
+SET SESSION sql_mode = '';
+
+# Function tries to
+# 1. INSERT statement: Insert one row with NULL -> NOT NULL violation
+# 2. INSERT statement: Insert one row without NULL
+CREATE FUNCTION f1_two_inserts() RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null SET f1 = 10, f2 = NULL;
+INSERT INTO t1_not_null SET f1 = 10, f2 = 10;
+RETURN 1;
+END//
+SELECT f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_two_inserts;
+
+# Function tries to
+# 1. INSERT statement: Insert one row without NULL
+# 2. INSERT statement: Insert one row with NULL -> NOT NULL violation
+CREATE FUNCTION f1_two_inserts() RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null SET f1 = 10, f2 = 10;
+INSERT INTO t1_not_null SET f1 = 10, f2 = NULL;
+RETURN 1;
+END//
+SELECT f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# Function tries to
+# INSERT statement: Insert two rows
+# first row without NULL
+# second row with NULL -> NOT NULL violation
+# -> NOT NULL violation
+CREATE FUNCTION f1_insert_with_two_rows() RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null(f1,f2) VALUES (10,10),(10,NULL);
+RETURN 1;
+END;
+# The fact that
+# - SELECT f1_insert_with_two_rows(); gives any result set and
+# - t1_not_null gets a row inserted
+# is covered by the manual.
+SELECT f1_insert_with_two_rows();
+f1_insert_with_two_rows()
+1
+Warnings:
+Warning 1048 Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+10 0
+10 10
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_insert_with_two_rows;
+SET SESSION sql_mode = 'traditional';
+CREATE FUNCTION f1_insert_with_two_rows() RETURNS INTEGER
+BEGIN
+INSERT INTO t1_not_null(f1,f2) VALUES (10,10),(10,NULL);
+RETURN 1;
+END;
+SELECT f1_insert_with_two_rows();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SET SESSION sql_mode = '';
+
+# FUNCTION in Correlated Subquery
+SELECT 1 FROM t1_select t1
+WHERE 1 = (SELECT f1_insert_with_two_rows() FROM t1_select t2
+WHERE t2.f1 = t1.f1);
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# FUNCTION in JOIN
+SELECT 1 FROM t1_select t1, t1_select t2
+WHERE t1.f1 = t2.f1 AND t2.f1 = f1_insert_with_two_rows();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT STRAIGHT_JOIN * FROM t1_select t2 RIGHT JOIN t1_select t1
+ON t1.f1 = t1.f1 WHERE 1 = f1_insert_with_two_rows();
+ERROR 23000: Column 'f2' cannot be null
+DROP FUNCTION f1_insert_with_two_rows;
+
+# FUNCTION in UNION
+SELECT 1
+UNION ALL
+SELECT f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# FUNCTION in INSERT
+INSERT INTO t1_aux SET f1 = 1, f2 = f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+INSERT INTO t1_aux SELECT 1, f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT * FROM t1_aux ORDER BY f1,f2;
+f1 f2
+INSERT INTO t1_aux VALUES(1,f1_two_inserts());
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT * FROM t1_aux ORDER BY f1,f2;
+f1 f2
+
+# FUNCTION in DELETE
+INSERT INTO t1_aux VALUES (1,1);
+COMMIT;
+DELETE FROM t1_aux WHERE f1 = f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT * FROM t1_aux ORDER BY f1,f2;
+f1 f2
+1 1
+
+# FUNCTION in UPDATE SET
+UPDATE t1_aux SET f2 = f1_two_inserts() + 1;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+SELECT * FROM t1_aux ORDER BY f1,f2;
+f1 f2
+1 1
+
+# FUNCTION in VIEW definition
+CREATE VIEW v1_func AS SELECT f1_two_inserts() FROM t1_select;
+SELECT * FROM v1_func;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP VIEW v1_func;
+
+# FUNCTION in CREATE TABLE ... AS SELECT
+CREATE TABLE t1_fail AS SELECT f1_two_inserts() FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+CREATE TABLE t1_fail AS SELECT * FROM t1_select WHERE 1 = f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# FUNCTION in ORDER BY
+SELECT * FROM t1_select ORDER BY f1,f1_two_inserts();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# FUNCTION in aggregate function
+SELECT AVG(f1_two_inserts()) FROM t1_select;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+
+# FUNCTION in HAVING
+SELECT 1 FROM t1_select HAVING AVG(f1) = f1_two_inserts() + 2;
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_two_inserts;
+
+# FUNCTION modifies Updatable VIEW
+CREATE VIEW v1_not_null AS SELECT f1,f2 FROM t1_not_null WITH CHECK OPTION;
+CREATE FUNCTION f1_two_inserts_v1() RETURNS INTEGER
+BEGIN
+INSERT INTO v1_not_null SET f1 = 10, f2 = 10;
+INSERT INTO v1_not_null SET f1 = 10, f2 = NULL;
+RETURN 1;
+END//
+SELECT f1_two_inserts_v1();
+ERROR 23000: Column 'f2' cannot be null
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+ROLLBACK;
+SELECT * FROM t1_not_null ORDER BY f1,f2;
+f1 f2
+DROP FUNCTION f1_two_inserts_v1;
+DROP VIEW v1_not_null;
+
+# FUNCTION causes FOREIGN KEY constraint violation
+CREATE TABLE t1_parent (f1 BIGINT, f2 BIGINT, PRIMARY KEY(f1))
+ENGINE = InnoDB;
+INSERT INTO t1_parent VALUES (1,1);
+CREATE TABLE t1_child (f1 BIGINT, f2 BIGINT, PRIMARY KEY(f1),
+FOREIGN KEY (f1) REFERENCES t1_parent(f1))
+ENGINE = InnoDB;
+CREATE FUNCTION f1_two_inserts() RETURNS INTEGER
+BEGIN
+INSERT INTO t1_child SET f1 = 1, f2 = 1;
+INSERT INTO t1_child SET f1 = 2, f2 = 2;
+RETURN 1;
+END//
+SELECT f1_two_inserts();
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t1_child`, CONSTRAINT `t1_child_ibfk_1` FOREIGN KEY (`f1`) REFERENCES `t1_parent` (`f1`))
+SELECT * FROM t1_child;
+f1 f2
+DROP TABLE t1_child;
+DROP TABLE t1_parent;
+DROP FUNCTION f1_two_inserts;
+DROP TABLE t1_select;
+DROP TABLE t1_aux;
+DROP TABLE t1_not_null;
diff --git a/mysql-test/r/func_sapdb.result b/mysql-test/r/func_sapdb.result
index 3a8515c8831..bbc5390895b 100644
--- a/mysql-test/r/func_sapdb.result
+++ b/mysql-test/r/func_sapdb.result
@@ -68,7 +68,7 @@ select datediff("1997-11-31 23:59:59.000001","1997-12-31");
datediff("1997-11-31 23:59:59.000001","1997-12-31")
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '1997-11-31 23:59:59.000001'
+Warning 1292 Incorrect datetime value: '1997-11-31 23:59:59.000001'
select datediff("1997-11-30 23:59:59.000001",null);
datediff("1997-11-30 23:59:59.000001",null)
NULL
@@ -150,7 +150,7 @@ select timestamp("2001-13-01", "01:01:01.000001");
timestamp("2001-13-01", "01:01:01.000001")
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '2001-13-01'
+Warning 1292 Incorrect datetime value: '2001-13-01'
select timestamp("2001-12-01", "25:01:01");
timestamp("2001-12-01", "25:01:01")
2001-12-02 01:01:01
@@ -170,7 +170,7 @@ select date("1997-13-31 23:59:59.000001");
date("1997-13-31 23:59:59.000001")
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '1997-13-31 23:59:59.000001'
+Warning 1292 Incorrect datetime value: '1997-13-31 23:59:59.000001'
select time("1997-12-31 23:59:59.000001");
time("1997-12-31 23:59:59.000001")
23:59:59.000001
diff --git a/mysql-test/r/func_set.result b/mysql-test/r/func_set.result
index ef5526ca13e..14ebc8203ec 100644
--- a/mysql-test/r/func_set.result
+++ b/mysql-test/r/func_set.result
@@ -2,10 +2,10 @@ select interval(55,10,20,30,40,50,60,70,80,90,100),interval(3,1,1+1,1+1+1+1),fie
interval(55,10,20,30,40,50,60,70,80,90,100) interval(3,1,1+1,1+1+1+1) field("IBM","NCA","ICL","SUN","IBM","DIGITAL") field("A","B","C") elt(2,"ONE","TWO","THREE") interval(0,1,2,3,4) elt(1,1,2,3)|0 elt(1,1.1,1.2,1.3)+0
5 2 4 0 TWO 0 1 1.1
explain extended select INTERVAL(55,10,20,30,40,50,60,70,80,90,100),interval(3,1,1+1,1+1+1+1),field("IBM","NCA","ICL","SUN","IBM","DIGITAL"),field("A","B","C"),elt(2,"ONE","TWO","THREE"),interval(0,1,2,3,4),elt(1,1,2,3)|0,elt(1,1.1,1.2,1.3)+0;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select interval((55,10,20,30,40,50,60,70,80,90,100)) AS `INTERVAL(55,10,20,30,40,50,60,70,80,90,100)`,interval((3,1,(1 + 1),(((1 + 1) + 1) + 1))) AS `interval(3,1,1+1,1+1+1+1)`,field(_latin1'IBM',_latin1'NCA',_latin1'ICL',_latin1'SUN',_latin1'IBM',_latin1'DIGITAL') AS `field("IBM","NCA","ICL","SUN","IBM","DIGITAL")`,field(_latin1'A',_latin1'B',_latin1'C') AS `field("A","B","C")`,elt(2,_latin1'ONE',_latin1'TWO',_latin1'THREE') AS `elt(2,"ONE","TWO","THREE")`,interval((0,1,2,3,4)) AS `interval(0,1,2,3,4)`,(elt(1,1,2,3) | 0) AS `elt(1,1,2,3)|0`,(elt(1,1.1,1.2,1.3) + 0) AS `elt(1,1.1,1.2,1.3)+0`
+Note 1003 select interval((55,10,20,30,40,50,60,70,80,90,100)) AS `INTERVAL(55,10,20,30,40,50,60,70,80,90,100)`,interval((3,1,(1 + 1),(((1 + 1) + 1) + 1))) AS `interval(3,1,1+1,1+1+1+1)`,field('IBM','NCA','ICL','SUN','IBM','DIGITAL') AS `field("IBM","NCA","ICL","SUN","IBM","DIGITAL")`,field('A','B','C') AS `field("A","B","C")`,elt(2,'ONE','TWO','THREE') AS `elt(2,"ONE","TWO","THREE")`,interval((0,1,2,3,4)) AS `interval(0,1,2,3,4)`,(elt(1,1,2,3) | 0) AS `elt(1,1,2,3)|0`,(elt(1,1.1,1.2,1.3) + 0) AS `elt(1,1.1,1.2,1.3)+0`
SELECT INTERVAL(13, 7, 14, 21, 28, 35, 42, 49, 56);
INTERVAL(13, 7, 14, 21, 28, 35, 42, 49, 56)
1
@@ -103,3 +103,59 @@ CAST(DATE(NULL) AS DECIMAL), CAST(DATE(NULL) AS DECIMAL),
CAST(DATE(NULL) AS DECIMAL), CAST(DATE(NULL) AS DECIMAL))
8
End of 5.0 tests
+drop table if exists t1;
+create table t1 (f1 set('test1','test2','test3') character set utf8 default null)
+engine=myisam default charset=latin1;
+insert into t1 values (''),(null),(null),(''),(''),('');
+select find_in_set(f1,f1) as a from t1,(select find_in_set(f1,f1) as b from t1) a;
+a
+0
+NULL
+NULL
+0
+0
+0
+0
+NULL
+NULL
+0
+0
+0
+0
+NULL
+NULL
+0
+0
+0
+0
+NULL
+NULL
+0
+0
+0
+0
+NULL
+NULL
+0
+0
+0
+0
+NULL
+NULL
+0
+0
+0
+drop table t1;
+CREATE TABLE t1( a SET('a', 'b', 'c') );
+CREATE TABLE t2( a SET('a', 'b', 'c') );
+INSERT INTO t1 VALUES ('d');
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+INSERT INTO t2 VALUES ('');
+SELECT CONVERT( a USING latin1 ) FROM t1;
+CONVERT( a USING latin1 )
+
+SELECT CONVERT( a USING latin1 ) FROM t2;
+CONVERT( a USING latin1 )
+
+DROP TABLE t1, t2;
diff --git a/mysql-test/r/func_str.result b/mysql-test/r/func_str.result
index bf2a9ca8901..2a2fe50ad0f 100644
--- a/mysql-test/r/func_str.result
+++ b/mysql-test/r/func_str.result
@@ -720,37 +720,37 @@ encode('abcd','ab')
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `bin(130)` varchar(64) default NULL,
- `oct(130)` varchar(64) default NULL,
- `conv(130,16,10)` varchar(64) default NULL,
- `hex(130)` varchar(6) NOT NULL default '',
- `char(130)` varbinary(4) NOT NULL default '',
- `format(130,10)` varchar(16) NOT NULL default '',
- `left(_latin2'a',1)` varchar(1) character set latin2 NOT NULL default '',
- `right(_latin2'a',1)` varchar(1) character set latin2 NOT NULL default '',
- `lcase(_latin2'a')` varchar(1) character set latin2 NOT NULL default '',
- `ucase(_latin2'a')` varchar(1) character set latin2 NOT NULL default '',
- `substring(_latin2'a',1,1)` varchar(1) character set latin2 NOT NULL default '',
- `concat(_latin2'a',_latin2'b')` varchar(2) character set latin2 NOT NULL default '',
- `lpad(_latin2'a',4,_latin2'b')` varchar(4) character set latin2 NOT NULL default '',
- `rpad(_latin2'a',4,_latin2'b')` varchar(4) character set latin2 NOT NULL default '',
- `concat_ws(_latin2'a',_latin2'b')` varchar(1) character set latin2 NOT NULL default '',
- `make_set(255,_latin2'a',_latin2'b',_latin2'c')` varchar(5) character set latin2 NOT NULL default '',
- `export_set(255,_latin2'y',_latin2'n',_latin2' ')` varchar(127) character set latin2 NOT NULL default '',
- `trim(_latin2' a ')` varchar(3) character set latin2 NOT NULL default '',
- `ltrim(_latin2' a ')` varchar(3) character set latin2 NOT NULL default '',
- `rtrim(_latin2' a ')` varchar(3) character set latin2 NOT NULL default '',
- `trim(LEADING _latin2' ' FROM _latin2' a ')` varchar(3) character set latin2 NOT NULL default '',
- `trim(TRAILING _latin2' ' FROM _latin2' a ')` varchar(3) character set latin2 NOT NULL default '',
- `trim(BOTH _latin2' ' FROM _latin2' a ')` varchar(3) character set latin2 NOT NULL default '',
- `repeat(_latin2'a',10)` varchar(10) character set latin2 NOT NULL default '',
- `reverse(_latin2'ab')` varchar(2) character set latin2 NOT NULL default '',
- `quote(_latin2'ab')` varchar(6) character set latin2 NOT NULL default '',
- `soundex(_latin2'ab')` varchar(4) character set latin2 NOT NULL default '',
- `substring(_latin2'ab',1)` varchar(2) character set latin2 NOT NULL default '',
- `insert(_latin2'abcd',2,3,_latin2'ef')` varchar(6) character set latin2 NOT NULL default '',
- `replace(_latin2'abcd',_latin2'b',_latin2'B')` varchar(4) character set latin2 NOT NULL default '',
- `encode('abcd','ab')` varbinary(4) NOT NULL default ''
+ `bin(130)` varchar(64) DEFAULT NULL,
+ `oct(130)` varchar(64) DEFAULT NULL,
+ `conv(130,16,10)` varchar(64) DEFAULT NULL,
+ `hex(130)` varchar(6) NOT NULL DEFAULT '',
+ `char(130)` varbinary(4) NOT NULL DEFAULT '',
+ `format(130,10)` varchar(37) NOT NULL DEFAULT '',
+ `left(_latin2'a',1)` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `right(_latin2'a',1)` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `lcase(_latin2'a')` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `ucase(_latin2'a')` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `substring(_latin2'a',1,1)` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `concat(_latin2'a',_latin2'b')` varchar(2) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `lpad(_latin2'a',4,_latin2'b')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `rpad(_latin2'a',4,_latin2'b')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `concat_ws(_latin2'a',_latin2'b')` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `make_set(255,_latin2'a',_latin2'b',_latin2'c')` varchar(5) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `export_set(255,_latin2'y',_latin2'n',_latin2' ')` varchar(127) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `trim(_latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `ltrim(_latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `rtrim(_latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `trim(LEADING _latin2' ' FROM _latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `trim(TRAILING _latin2' ' FROM _latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `trim(BOTH _latin2' ' FROM _latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `repeat(_latin2'a',10)` varchar(10) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `reverse(_latin2'ab')` varchar(2) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `quote(_latin2'ab')` varchar(6) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `soundex(_latin2'ab')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `substring(_latin2'ab',1)` varchar(2) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `insert(_latin2'abcd',2,3,_latin2'ef')` varchar(6) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `replace(_latin2'abcd',_latin2'b',_latin2'B')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `encode('abcd','ab')` varbinary(4) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a char character set latin2);
@@ -811,11 +811,231 @@ drop table t7;
select substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2),substring_index("1abcd;2abcd;3abcd;4abcd", ';', -2);
substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2) substring_index("1abcd;2abcd;3abcd;4abcd", ';', -2)
1abcd;2abcd 3abcd;4abcd
-explain extended select md5('hello'), sha('abc'), sha1('abc'), soundex(''), 'mood' sounds like 'mud', aes_decrypt(aes_encrypt('abc','1'),'1'),concat('*',space(5),'*'), reverse('abc'), rpad('a',4,'1'), lpad('a',4,'1'), concat_ws(',','',NULL,'a'),make_set(255,_latin2'a',_latin2'b',_latin2'c'),elt(2,1),locate("a","b",2),format(130,10),char(0),conv(130,16,10),hex(130),binary 'HE', export_set(255,_latin2'y',_latin2'n',_latin2' '),FIELD('b' COLLATE latin1_bin,'A','B'),FIND_IN_SET(_latin1'B',_latin1'a,b,c,d'),collation(conv(130,16,10)), coercibility(conv(130,16,10)),length('\n\t\r\b\0\_\%\\'),bit_length('\n\t\r\b\0\_\%\\'),bit_length('\n\t\r\b\0\_\%\\'),concat('monty',' was here ','again'),length('hello'),char(ascii('h')),ord('h'),quote(1/0),crc32("123"),replace('aaaa','a','b'),insert('txs',2,1,'hi'),left(_latin2'a',1),right(_latin2'a',1),lcase(_latin2'a'),ucase(_latin2'a'),SUBSTR('abcdefg',3,2),substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2),trim(_latin2' a '),ltrim(_latin2' a '),rtrim(_latin2' a '), decode(encode(repeat("a",100000),"monty"),"monty");
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
-Warnings:
-Note 1003 select md5(_latin1'hello') AS `md5('hello')`,sha(_latin1'abc') AS `sha('abc')`,sha(_latin1'abc') AS `sha1('abc')`,soundex(_latin1'') AS `soundex('')`,(soundex(_latin1'mood') = soundex(_latin1'mud')) AS `'mood' sounds like 'mud'`,aes_decrypt(aes_encrypt(_latin1'abc',_latin1'1'),_latin1'1') AS `aes_decrypt(aes_encrypt('abc','1'),'1')`,concat(_latin1'*',repeat(_latin1' ',5),_latin1'*') AS `concat('*',space(5),'*')`,reverse(_latin1'abc') AS `reverse('abc')`,rpad(_latin1'a',4,_latin1'1') AS `rpad('a',4,'1')`,lpad(_latin1'a',4,_latin1'1') AS `lpad('a',4,'1')`,concat_ws(_latin1',',_latin1'',NULL,_latin1'a') AS `concat_ws(',','',NULL,'a')`,make_set(255,_latin2'a',_latin2'b',_latin2'c') AS `make_set(255,_latin2'a',_latin2'b',_latin2'c')`,elt(2,1) AS `elt(2,1)`,locate(_latin1'a',_latin1'b',2) AS `locate("a","b",2)`,format(130,10) AS `format(130,10)`,char(0) AS `char(0)`,conv(130,16,10) AS `conv(130,16,10)`,hex(130) AS `hex(130)`,cast(_latin1'HE' as char charset binary) AS `binary 'HE'`,export_set(255,_latin2'y',_latin2'n',_latin2' ') AS `export_set(255,_latin2'y',_latin2'n',_latin2' ')`,field((_latin1'b' collate latin1_bin),_latin1'A',_latin1'B') AS `FIELD('b' COLLATE latin1_bin,'A','B')`,find_in_set(_latin1'B',_latin1'a,b,c,d') AS `FIND_IN_SET(_latin1'B',_latin1'a,b,c,d')`,collation(conv(130,16,10)) AS `collation(conv(130,16,10))`,coercibility(conv(130,16,10)) AS `coercibility(conv(130,16,10))`,length(_latin1'\n \r\0\\_\\%\\') AS `length('\n\t\r\b\0\_\%\\')`,bit_length(_latin1'\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`,bit_length(_latin1'\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`,concat(_latin1'monty',_latin1' was here ',_latin1'again') AS `concat('monty',' was here ','again')`,length(_latin1'hello') AS `length('hello')`,char(ascii(_latin1'h')) AS `char(ascii('h'))`,ord(_latin1'h') AS `ord('h')`,quote((1 / 0)) AS `quote(1/0)`,crc32(_latin1'123') AS `crc32("123")`,replace(_latin1'aaaa',_latin1'a',_latin1'b') AS `replace('aaaa','a','b')`,insert(_latin1'txs',2,1,_latin1'hi') AS `insert('txs',2,1,'hi')`,left(_latin2'a',1) AS `left(_latin2'a',1)`,right(_latin2'a',1) AS `right(_latin2'a',1)`,lcase(_latin2'a') AS `lcase(_latin2'a')`,ucase(_latin2'a') AS `ucase(_latin2'a')`,substr(_latin1'abcdefg',3,2) AS `SUBSTR('abcdefg',3,2)`,substring_index(_latin1'1abcd;2abcd;3abcd;4abcd',_latin1';',2) AS `substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2)`,trim(_latin2' a ') AS `trim(_latin2' a ')`,ltrim(_latin2' a ') AS `ltrim(_latin2' a ')`,rtrim(_latin2' a ') AS `rtrim(_latin2' a ')`,decode(encode(repeat(_latin1'a',100000),'monty'),'monty') AS `decode(encode(repeat("a",100000),"monty"),"monty")`
+explain extended select md5('hello');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select md5('hello') AS `md5('hello')`
+explain extended select sha('abc');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select sha('abc') AS `sha('abc')`
+explain extended select sha1('abc');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select sha('abc') AS `sha1('abc')`
+explain extended select soundex('');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select soundex('') AS `soundex('')`
+explain extended select 'mood' sounds like 'mud';
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select (soundex('mood') = soundex('mud')) AS `'mood' sounds like 'mud'`
+explain extended select aes_decrypt(aes_encrypt('abc','1'),'1');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select aes_decrypt(aes_encrypt('abc','1'),'1') AS `aes_decrypt(aes_encrypt('abc','1'),'1')`
+explain extended select concat('*',space(5),'*');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select concat('*',repeat(' ',5),'*') AS `concat('*',space(5),'*')`
+explain extended select reverse('abc');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select reverse('abc') AS `reverse('abc')`
+explain extended select rpad('a',4,'1');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select rpad('a',4,'1') AS `rpad('a',4,'1')`
+explain extended select lpad('a',4,'1');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select lpad('a',4,'1') AS `lpad('a',4,'1')`
+explain extended select concat_ws(',','',NULL,'a');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select concat_ws(',','',NULL,'a') AS `concat_ws(',','',NULL,'a')`
+explain extended select make_set(255,_latin2'a', _latin2'b', _latin2'c');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select make_set(255,_latin2'a',_latin2'b',_latin2'c') AS `make_set(255,_latin2'a', _latin2'b', _latin2'c')`
+explain extended select elt(2,1);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select elt(2,1) AS `elt(2,1)`
+explain extended select locate("a","b",2);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select locate('a','b',2) AS `locate("a","b",2)`
+explain extended select format(130,10);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select format(130,10) AS `format(130,10)`
+explain extended select char(0);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select char(0) AS `char(0)`
+explain extended select conv(130,16,10);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select conv(130,16,10) AS `conv(130,16,10)`
+explain extended select hex(130);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select hex(130) AS `hex(130)`
+explain extended select binary 'HE';
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select cast('HE' as char charset binary) AS `binary 'HE'`
+explain extended select export_set(255,_latin2'y', _latin2'n', _latin2' ');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select export_set(255,_latin2'y',_latin2'n',_latin2' ') AS `export_set(255,_latin2'y', _latin2'n', _latin2' ')`
+explain extended select FIELD('b' COLLATE latin1_bin,'A','B');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select field(('b' collate latin1_bin),'A','B') AS `FIELD('b' COLLATE latin1_bin,'A','B')`
+explain extended select FIND_IN_SET(_latin1'B', _latin1'a,b,c,d');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select find_in_set(_latin1'B',_latin1'a,b,c,d') AS `FIND_IN_SET(_latin1'B', _latin1'a,b,c,d')`
+explain extended select collation(conv(130,16,10));
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select collation(conv(130,16,10)) AS `collation(conv(130,16,10))`
+explain extended select coercibility(conv(130,16,10));
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select coercibility(conv(130,16,10)) AS `coercibility(conv(130,16,10))`
+explain extended select length('\n\t\r\b\0\_\%\\');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select length('\n \r\0\\_\\%\\') AS `length('\n\t\r\b\0\_\%\\')`
+explain extended select bit_length('\n\t\r\b\0\_\%\\');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select bit_length('\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`
+explain extended select bit_length('\n\t\r\b\0\_\%\\');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select bit_length('\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`
+explain extended select concat('monty',' was here ','again');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select concat('monty',' was here ','again') AS `concat('monty',' was here ','again')`
+explain extended select length('hello');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select length('hello') AS `length('hello')`
+explain extended select char(ascii('h'));
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select char(ascii('h')) AS `char(ascii('h'))`
+explain extended select ord('h');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select ord('h') AS `ord('h')`
+explain extended select quote(1/0);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select quote((1 / 0)) AS `quote(1/0)`
+explain extended select crc32("123");
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select crc32('123') AS `crc32("123")`
+explain extended select replace('aaaa','a','b');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select replace('aaaa','a','b') AS `replace('aaaa','a','b')`
+explain extended select insert('txs',2,1,'hi');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select insert('txs',2,1,'hi') AS `insert('txs',2,1,'hi')`
+explain extended select left(_latin2'a',1);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select left(_latin2'a',1) AS `left(_latin2'a',1)`
+explain extended select right(_latin2'a',1);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select right(_latin2'a',1) AS `right(_latin2'a',1)`
+explain extended select lcase(_latin2'a');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select lcase(_latin2'a') AS `lcase(_latin2'a')`
+explain extended select ucase(_latin2'a');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select ucase(_latin2'a') AS `ucase(_latin2'a')`
+explain extended select SUBSTR('abcdefg',3,2);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select substr('abcdefg',3,2) AS `SUBSTR('abcdefg',3,2)`
+explain extended select substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select substring_index('1abcd;2abcd;3abcd;4abcd',';',2) AS `substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2)`
+explain extended select trim(_latin2' a ');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select trim(_latin2' a ') AS `trim(_latin2' a ')`
+explain extended select ltrim(_latin2' a ');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select ltrim(_latin2' a ') AS `ltrim(_latin2' a ')`
+explain extended select rtrim(_latin2' a ');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select rtrim(_latin2' a ') AS `rtrim(_latin2' a ')`
+explain extended select decode(encode(repeat("a",100000),"monty"),"monty");
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1003 select decode(encode(repeat('a',100000),'monty'),'monty') AS `decode(encode(repeat("a",100000),"monty"),"monty")`
SELECT lpad(12345, 5, "#");
lpad(12345, 5, "#")
12345
@@ -838,16 +1058,16 @@ drop table t1, t2;
create table t1 (c1 INT, c2 INT UNSIGNED);
insert into t1 values ('21474836461','21474836461');
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
insert into t1 values ('-21474836461','-21474836461');
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
show warnings;
Level Code Message
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
select * from t1;
c1 c2
2147483647 4294967295
@@ -1057,40 +1277,40 @@ DROP TABLE t1;
CREATE TABLE t1 (s varchar(10));
INSERT INTO t1 VALUES ('yadda'), ('yaddy');
EXPLAIN EXTENDED SELECT s FROM t1 WHERE TRIM(s) > 'ab';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(`test`.`t1`.`s`) > _latin1'ab')
+Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(`test`.`t1`.`s`) > 'ab')
EXPLAIN EXTENDED SELECT s FROM t1 WHERE TRIM('y' FROM s) > 'ab';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(both _latin1'y' from `test`.`t1`.`s`) > _latin1'ab')
+Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(both 'y' from `test`.`t1`.`s`) > 'ab')
EXPLAIN EXTENDED SELECT s FROM t1 WHERE TRIM(LEADING 'y' FROM s) > 'ab';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(leading _latin1'y' from `test`.`t1`.`s`) > _latin1'ab')
+Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(leading 'y' from `test`.`t1`.`s`) > 'ab')
EXPLAIN EXTENDED SELECT s FROM t1 WHERE TRIM(TRAILING 'y' FROM s) > 'ab';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(trailing _latin1'y' from `test`.`t1`.`s`) > _latin1'ab')
+Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(trailing 'y' from `test`.`t1`.`s`) > 'ab')
EXPLAIN EXTENDED SELECT s FROM t1 WHERE TRIM(BOTH 'y' FROM s) > 'ab';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(both _latin1'y' from `test`.`t1`.`s`) > _latin1'ab')
+Note 1003 select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(both 'y' from `test`.`t1`.`s`) > 'ab')
DROP TABLE t1;
create table t1(f1 varchar(4));
explain extended select encode(f1,'zxcv') as 'enc' from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select encode('','zxcv') AS `enc` from `test`.`t1`
explain extended select decode(f1,'zxcv') as 'enc' from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select decode('','zxcv') AS `enc` from `test`.`t1`
drop table t1;
@@ -1164,12 +1384,130 @@ A12 a12
EXPLAIN EXTENDED
SELECT * FROM t1 INNER JOIN t2 ON code=id
WHERE id='a12' AND (LENGTH(code)=5 OR code < 'a00');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 const PRIMARY PRIMARY 12 const 1 Using index
-1 SIMPLE t1 ref code code 13 const 3 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 const PRIMARY PRIMARY 12 const 1 100.00 Using index
+1 SIMPLE t1 ref code code 13 const 3 100.00 Using where; Using index
Warnings:
-Note 1003 select `test`.`t1`.`code` AS `code`,'a12' AS `id` from `test`.`t1` join `test`.`t2` where ((`test`.`t1`.`code` = _latin1'a12') and (length(`test`.`t1`.`code`) = 5))
+Note 1003 select `test`.`t1`.`code` AS `code`,'a12' AS `id` from `test`.`t1` join `test`.`t2` where ((`test`.`t1`.`code` = 'a12') and (length(`test`.`t1`.`code`) = 5))
DROP TABLE t1,t2;
+select encode(NULL, NULL);
+encode(NULL, NULL)
+NULL
+select encode("data", NULL);
+encode("data", NULL)
+NULL
+select encode(NULL, "password");
+encode(NULL, "password")
+NULL
+select decode(NULL, NULL);
+decode(NULL, NULL)
+NULL
+select decode("data", NULL);
+decode("data", NULL)
+NULL
+select decode(NULL, "password");
+decode(NULL, "password")
+NULL
+select format(NULL, NULL);
+format(NULL, NULL)
+NULL
+select format(pi(), NULL);
+format(pi(), NULL)
+NULL
+select format(NULL, 2);
+format(NULL, 2)
+NULL
+select benchmark(NULL, NULL);
+benchmark(NULL, NULL)
+NULL
+select benchmark(0, NULL);
+benchmark(0, NULL)
+0
+select benchmark(100, NULL);
+benchmark(100, NULL)
+0
+select benchmark(NULL, 1+1);
+benchmark(NULL, 1+1)
+NULL
+select benchmark(-1, 1);
+benchmark(-1, 1)
+NULL
+Warnings:
+Error 1411 Incorrect count value: '-1' for function benchmark
+set @password="password";
+set @my_data="clear text to encode";
+select md5(encode(@my_data, "password"));
+md5(encode(@my_data, "password"))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, _utf8 "password"));
+md5(encode(@my_data, _utf8 "password"))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, binary "password"));
+md5(encode(@my_data, binary "password"))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, _latin1 "password"));
+md5(encode(@my_data, _latin1 "password"))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, _koi8r "password"));
+md5(encode(@my_data, _koi8r "password"))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, (select "password" from dual)));
+md5(encode(@my_data, (select "password" from dual)))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, concat("pass", "word")));
+md5(encode(@my_data, concat("pass", "word")))
+44320fd2b4a0ec92faa2da2122def917
+select md5(encode(@my_data, @password));
+md5(encode(@my_data, @password))
+44320fd2b4a0ec92faa2da2122def917
+set @my_data="binary encoded data";
+select md5(decode(@my_data, "password"));
+md5(decode(@my_data, "password"))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, _utf8 "password"));
+md5(decode(@my_data, _utf8 "password"))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, binary "password"));
+md5(decode(@my_data, binary "password"))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, _latin1 "password"));
+md5(decode(@my_data, _latin1 "password"))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, _koi8r "password"));
+md5(decode(@my_data, _koi8r "password"))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, (select "password" from dual)));
+md5(decode(@my_data, (select "password" from dual)))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, concat("pass", "word")));
+md5(decode(@my_data, concat("pass", "word")))
+5bea8c394368dbc03b76684483b7756b
+select md5(decode(@my_data, @password));
+md5(decode(@my_data, @password))
+5bea8c394368dbc03b76684483b7756b
+set @dec=5;
+select format(pi(), (1+1));
+format(pi(), (1+1))
+3.14
+select format(pi(), (select 3 from dual));
+format(pi(), (select 3 from dual))
+3.142
+select format(pi(), @dec);
+format(pi(), @dec)
+3.14159
+set @bench_count=10;
+select benchmark(10, pi());
+benchmark(10, pi())
+0
+select benchmark(5+5, pi());
+benchmark(5+5, pi())
+0
+select benchmark((select 10 from dual), pi());
+benchmark((select 10 from dual), pi())
+0
+select benchmark(@bench_count, pi());
+benchmark(@bench_count, pi())
+0
select locate('he','hello',-2);
locate('he','hello',-2)
0
@@ -2177,7 +2515,7 @@ create table t1(a float);
insert into t1 values (1.33);
select format(a, 2) from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def format(a, 2) 253 20 4 Y 0 2 8
+def format(a, 2) 253 49 4 Y 0 31 8
format(a, 2)
1.33
drop table t1;
@@ -2206,3 +2544,17 @@ LOAD_MIN
LOAD_MAX
DROP TABLE t1, t2;
End of 5.0 tests
+drop table if exists t1;
+create table t1(f1 tinyint default null)engine=myisam;
+insert into t1 values (-1),(null);
+explain select 1 as a from t1,(select decode(f1,f1) as b from t1) a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 Using join buffer
+2 DERIVED t1 ALL NULL NULL NULL NULL 2
+explain select 1 as a from t1,(select encode(f1,f1) as b from t1) a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 Using join buffer
+2 DERIVED t1 ALL NULL NULL NULL NULL 2
+drop table t1;
diff --git a/mysql-test/r/func_system.result b/mysql-test/r/func_system.result
index 00bef09715d..fa05021eb47 100644
--- a/mysql-test/r/func_system.result
+++ b/mysql-test/r/func_system.result
@@ -38,17 +38,17 @@ select charset(version());
charset(version())
utf8
explain extended select database(), user();
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select database() AS `database()`,user() AS `user()`
-create table t1 (version char(40)) select database(), user(), version() as 'version';
+create table t1 (version char(60)) select database(), user(), version() as 'version';
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `database()` varchar(34) character set utf8 default NULL,
- `user()` varchar(77) character set utf8 NOT NULL default '',
- `version` char(40) default NULL
+ `database()` varchar(34) CHARACTER SET utf8 DEFAULT NULL,
+ `user()` varchar(77) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `version` char(60) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select charset(charset(_utf8'a')), charset(collation(_utf8'a'));
@@ -61,8 +61,8 @@ create table t1 select charset(_utf8'a'), collation(_utf8'a');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `charset(_utf8'a')` varchar(64) character set utf8 NOT NULL default '',
- `collation(_utf8'a')` varchar(64) character set utf8 NOT NULL default ''
+ `charset(_utf8'a')` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `collation(_utf8'a')` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select TRUE,FALSE,NULL;
diff --git a/mysql-test/r/func_test.result b/mysql-test/r/func_test.result
index 65293398155..a97e6869d09 100644
--- a/mysql-test/r/func_test.result
+++ b/mysql-test/r/func_test.result
@@ -45,8 +45,8 @@ select 3 ^ 11, 1 ^ 1, 1 ^ 0, 1 ^ NULL, NULL ^ 1;
3 ^ 11 1 ^ 1 1 ^ 0 1 ^ NULL NULL ^ 1
8 0 1 NULL NULL
explain extended select 3 ^ 11, 1 ^ 1, 1 ^ 0, 1 ^ NULL, NULL ^ 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (3 ^ 11) AS `3 ^ 11`,(1 ^ 1) AS `1 ^ 1`,(1 ^ 0) AS `1 ^ 0`,(1 ^ NULL) AS `1 ^ NULL`,(NULL ^ 1) AS `NULL ^ 1`
select 1 XOR 1, 1 XOR 0, 0 XOR 1, 0 XOR 0, NULL XOR 1, 1 XOR NULL, 0 XOR NULL;
@@ -59,16 +59,16 @@ select 10 % 7, 10 mod 7, 10 div 3;
10 % 7 10 mod 7 10 div 3
3 3 3
explain extended select 10 % 7, 10 mod 7, 10 div 3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (10 % 7) AS `10 % 7`,(10 % 7) AS `10 mod 7`,(10 DIV 3) AS `10 div 3`
select (1 << 64)-1, ((1 << 64)-1) DIV 1, ((1 << 64)-1) DIV 2;
(1 << 64)-1 ((1 << 64)-1) DIV 1 ((1 << 64)-1) DIV 2
18446744073709551615 18446744073709551615 9223372036854775807
explain extended select (1 << 64)-1, ((1 << 64)-1) DIV 1, ((1 << 64)-1) DIV 2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select ((1 << 64) - 1) AS `(1 << 64)-1`,(((1 << 64) - 1) DIV 1) AS `((1 << 64)-1) DIV 1`,(((1 << 64) - 1) DIV 2) AS `((1 << 64)-1) DIV 2`
create table t1 (a int);
@@ -76,16 +76,16 @@ insert t1 values (1);
select * from t1 where 1 xor 1;
a
explain extended select * from t1 where 1 xor 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where 0
select - a from t1;
- a
-1
explain extended select - a from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
Note 1003 select -('1') AS `- a` from `test`.`t1`
drop table t1;
@@ -105,8 +105,8 @@ select _koi8r'a' = _koi8r'A' COLLATE koi8r_general_ci;
_koi8r'a' = _koi8r'A' COLLATE koi8r_general_ci
1
explain extended select _koi8r'a' = _koi8r'A' COLLATE koi8r_general_ci;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (_koi8r'a' = (_koi8r'A' collate koi8r_general_ci)) AS `_koi8r'a' = _koi8r'A' COLLATE koi8r_general_ci`
select _koi8r'a' = _koi8r'A' COLLATE koi8r_bin;
diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result
index b3505795494..0fa143d95bc 100644
--- a/mysql-test/r/func_time.result
+++ b/mysql-test/r/func_time.result
@@ -312,7 +312,7 @@ select date_sub("0000-00-00 00:00:00",INTERVAL 1 SECOND);
date_sub("0000-00-00 00:00:00",INTERVAL 1 SECOND)
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00 00:00:00'
+Warning 1292 Incorrect datetime value: '0000-00-00 00:00:00'
select date_add('1998-01-30',Interval 1 month);
date_add('1998-01-30',Interval 1 month)
1998-02-28
@@ -473,12 +473,12 @@ SELECT month(updated) from t1;
month(updated)
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Incorrect datetime value: ''
SELECT year(updated) from t1;
year(updated)
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Incorrect datetime value: ''
drop table t1;
create table t1 (d date, dt datetime, t timestamp, c char(10));
insert into t1 values ("0000-00-00", "0000-00-00", "0000-00-00", "0000-00-00");
@@ -486,8 +486,8 @@ select dayofyear("0000-00-00"),dayofyear(d),dayofyear(dt),dayofyear(t),dayofyear
dayofyear("0000-00-00") dayofyear(d) dayofyear(dt) dayofyear(t) dayofyear(c)
NULL NULL NULL NULL NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
select dayofmonth("0000-00-00"),dayofmonth(d),dayofmonth(dt),dayofmonth(t),dayofmonth(c) from t1;
dayofmonth("0000-00-00") dayofmonth(d) dayofmonth(dt) dayofmonth(t) dayofmonth(c)
0 0 0 0 0
@@ -501,8 +501,8 @@ select week("0000-00-00"),week(d),week(dt),week(t),week(c) from t1;
week("0000-00-00") week(d) week(dt) week(t) week(c)
NULL NULL NULL NULL NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
select year("0000-00-00"),year(d),year(dt),year(t),year(c) from t1;
year("0000-00-00") year(d) year(dt) year(t) year(c)
0 0 0 0 0
@@ -510,14 +510,14 @@ select yearweek("0000-00-00"),yearweek(d),yearweek(dt),yearweek(t),yearweek(c) f
yearweek("0000-00-00") yearweek(d) yearweek(dt) yearweek(t) yearweek(c)
NULL NULL NULL NULL NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
select to_days("0000-00-00"),to_days(d),to_days(dt),to_days(t),to_days(c) from t1;
to_days("0000-00-00") to_days(d) to_days(dt) to_days(t) to_days(c)
NULL NULL NULL NULL NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
select extract(MONTH FROM "0000-00-00"),extract(MONTH FROM d),extract(MONTH FROM dt),extract(MONTH FROM t),extract(MONTH FROM c) from t1;
extract(MONTH FROM "0000-00-00") extract(MONTH FROM d) extract(MONTH FROM dt) extract(MONTH FROM t) extract(MONTH FROM c)
0 0 0 0 0
@@ -682,7 +682,7 @@ select timestampadd(SQL_TSI_FRAC_SECOND, 1, date) from t1;
timestampadd(SQL_TSI_FRAC_SECOND, 1, date)
2003-01-02 00:00:00.000001
Warnings:
-Warning 1287 'FRAC_SECOND' is deprecated; use 'MICROSECOND' instead
+Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
select timestampdiff(MONTH, '2001-02-01', '2001-05-01') as a;
a
3
@@ -717,7 +717,7 @@ select timestampdiff(SQL_TSI_FRAC_SECOND, '2001-02-01 12:59:59.120000', '2001-05
a
7689538999999
Warnings:
-Warning 1287 'FRAC_SECOND' is deprecated; use 'MICROSECOND' instead
+Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
select timestampdiff(SQL_TSI_DAY, '1986-02-01', '1986-03-01') as a1,
timestampdiff(SQL_TSI_DAY, '1900-02-01', '1900-03-01') as a2,
timestampdiff(SQL_TSI_DAY, '1996-02-01', '1996-03-01') as a3,
@@ -800,7 +800,7 @@ select date_add(time,INTERVAL 1 SECOND) from t1;
date_add(time,INTERVAL 1 SECOND)
NULL
Warnings:
-Warning 1264 Out of range value adjusted for column 'time' at row 1
+Warning 1264 Out of range value for column 'time' at row 1
drop table t1;
select last_day('2000-02-05') as f1, last_day('2002-12-31') as f2,
last_day('2003-03-32') as f3, last_day('2003-04-01') as f4,
@@ -809,7 +809,7 @@ last_day('2001-02-12');
f1 f2 f3 f4 f5 last_day(NULL) last_day('2001-02-12')
2000-02-29 2002-12-31 NULL 2003-04-30 2001-01-31 NULL 2001-02-28
Warnings:
-Warning 1292 Truncated incorrect datetime value: '2003-03-32'
+Warning 1292 Incorrect datetime value: '2003-03-32'
create table t1 select last_day('2000-02-05') as a,
from_days(to_days("960101")) as b;
describe t1;
@@ -855,10 +855,10 @@ select strcmp(concat(utc_date(),' ',utc_time()),utc_timestamp())=0;
strcmp(concat(utc_date(),' ',utc_time()),utc_timestamp())=0
1
explain extended select period_add("9602",-12),period_diff(199505,"9404"),from_days(to_days("960101")),dayofmonth("1997-01-02"), month("1997-01-02"), monthname("1972-03-04"),dayofyear("0000-00-00"),HOUR("1997-03-03 23:03:22"),MINUTE("23:03:22"),SECOND(230322),QUARTER(980303),WEEK("1998-03-03"),yearweek("2000-01-01",1),week(19950101,1),year("98-02-03"),weekday(curdate())-weekday(now()),dayname("1962-03-03"),unix_timestamp(),sec_to_time(time_to_sec("0:30:47")/6.21),curtime(),utc_time(),curdate(),utc_date(),utc_timestamp(),date_format("1997-01-02 03:04:05", "%M %W %D %Y %y %m %d %h %i %s %w"),from_unixtime(unix_timestamp("1994-03-02 10:11:12")),"1997-12-31 23:59:59" + INTERVAL 1 SECOND,"1998-01-01 00:00:00" - INTERVAL 1 SECOND,INTERVAL 1 DAY + "1997-12-31", extract(YEAR FROM "1999-01-02 10:11:12"),date_add("1997-12-31 23:59:59",INTERVAL 1 SECOND);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select period_add(_latin1'9602',-(12)) AS `period_add("9602",-12)`,period_diff(199505,_latin1'9404') AS `period_diff(199505,"9404")`,from_days(to_days(_latin1'960101')) AS `from_days(to_days("960101"))`,dayofmonth(_latin1'1997-01-02') AS `dayofmonth("1997-01-02")`,month(_latin1'1997-01-02') AS `month("1997-01-02")`,monthname(_latin1'1972-03-04') AS `monthname("1972-03-04")`,dayofyear(_latin1'0000-00-00') AS `dayofyear("0000-00-00")`,hour(_latin1'1997-03-03 23:03:22') AS `HOUR("1997-03-03 23:03:22")`,minute(_latin1'23:03:22') AS `MINUTE("23:03:22")`,second(230322) AS `SECOND(230322)`,quarter(980303) AS `QUARTER(980303)`,week(_latin1'1998-03-03',0) AS `WEEK("1998-03-03")`,yearweek(_latin1'2000-01-01',1) AS `yearweek("2000-01-01",1)`,week(19950101,1) AS `week(19950101,1)`,year(_latin1'98-02-03') AS `year("98-02-03")`,(weekday(curdate()) - weekday(now())) AS `weekday(curdate())-weekday(now())`,dayname(_latin1'1962-03-03') AS `dayname("1962-03-03")`,unix_timestamp() AS `unix_timestamp()`,sec_to_time((time_to_sec(_latin1'0:30:47') / 6.21)) AS `sec_to_time(time_to_sec("0:30:47")/6.21)`,curtime() AS `curtime()`,utc_time() AS `utc_time()`,curdate() AS `curdate()`,utc_date() AS `utc_date()`,utc_timestamp() AS `utc_timestamp()`,date_format(_latin1'1997-01-02 03:04:05',_latin1'%M %W %D %Y %y %m %d %h %i %s %w') AS `date_format("1997-01-02 03:04:05", "%M %W %D %Y %y %m %d %h %i %s %w")`,from_unixtime(unix_timestamp(_latin1'1994-03-02 10:11:12')) AS `from_unixtime(unix_timestamp("1994-03-02 10:11:12"))`,(_latin1'1997-12-31 23:59:59' + interval 1 second) AS `"1997-12-31 23:59:59" + INTERVAL 1 SECOND`,(_latin1'1998-01-01 00:00:00' - interval 1 second) AS `"1998-01-01 00:00:00" - INTERVAL 1 SECOND`,(_latin1'1997-12-31' + interval 1 day) AS `INTERVAL 1 DAY + "1997-12-31"`,extract(year from _latin1'1999-01-02 10:11:12') AS `extract(YEAR FROM "1999-01-02 10:11:12")`,(_latin1'1997-12-31 23:59:59' + interval 1 second) AS `date_add("1997-12-31 23:59:59",INTERVAL 1 SECOND)`
+Note 1003 select period_add('9602',-(12)) AS `period_add("9602",-12)`,period_diff(199505,'9404') AS `period_diff(199505,"9404")`,from_days(to_days('960101')) AS `from_days(to_days("960101"))`,dayofmonth('1997-01-02') AS `dayofmonth("1997-01-02")`,month('1997-01-02') AS `month("1997-01-02")`,monthname('1972-03-04') AS `monthname("1972-03-04")`,dayofyear('0000-00-00') AS `dayofyear("0000-00-00")`,hour('1997-03-03 23:03:22') AS `HOUR("1997-03-03 23:03:22")`,minute('23:03:22') AS `MINUTE("23:03:22")`,second(230322) AS `SECOND(230322)`,quarter(980303) AS `QUARTER(980303)`,week('1998-03-03',0) AS `WEEK("1998-03-03")`,yearweek('2000-01-01',1) AS `yearweek("2000-01-01",1)`,week(19950101,1) AS `week(19950101,1)`,year('98-02-03') AS `year("98-02-03")`,(weekday(curdate()) - weekday(now())) AS `weekday(curdate())-weekday(now())`,dayname('1962-03-03') AS `dayname("1962-03-03")`,unix_timestamp() AS `unix_timestamp()`,sec_to_time((time_to_sec('0:30:47') / 6.21)) AS `sec_to_time(time_to_sec("0:30:47")/6.21)`,curtime() AS `curtime()`,utc_time() AS `utc_time()`,curdate() AS `curdate()`,utc_date() AS `utc_date()`,utc_timestamp() AS `utc_timestamp()`,date_format('1997-01-02 03:04:05','%M %W %D %Y %y %m %d %h %i %s %w') AS `date_format("1997-01-02 03:04:05", "%M %W %D %Y %y %m %d %h %i %s %w")`,from_unixtime(unix_timestamp('1994-03-02 10:11:12')) AS `from_unixtime(unix_timestamp("1994-03-02 10:11:12"))`,('1997-12-31 23:59:59' + interval 1 second) AS `"1997-12-31 23:59:59" + INTERVAL 1 SECOND`,('1998-01-01 00:00:00' - interval 1 second) AS `"1998-01-01 00:00:00" - INTERVAL 1 SECOND`,('1997-12-31' + interval 1 day) AS `INTERVAL 1 DAY + "1997-12-31"`,extract(year from '1999-01-02 10:11:12') AS `extract(YEAR FROM "1999-01-02 10:11:12")`,('1997-12-31 23:59:59' + interval 1 second) AS `date_add("1997-12-31 23:59:59",INTERVAL 1 SECOND)`
SET @TMP='2007-08-01 12:22:49';
CREATE TABLE t1 (d DATETIME);
INSERT INTO t1 VALUES ('2007-08-01 12:22:59');
@@ -872,17 +872,17 @@ select last_day('2005-00-00');
last_day('2005-00-00')
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '2005-00-00'
+Warning 1292 Incorrect datetime value: '2005-00-00'
select last_day('2005-00-01');
last_day('2005-00-01')
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '2005-00-01'
+Warning 1292 Incorrect datetime value: '2005-00-01'
select last_day('2005-01-00');
last_day('2005-01-00')
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '2005-01-00'
+Warning 1292 Incorrect datetime value: '2005-01-00'
select monthname(str_to_date(null, '%m')), monthname(str_to_date(null, '%m')),
monthname(str_to_date(1, '%m')), monthname(str_to_date(0, '%m'));
monthname(str_to_date(null, '%m')) monthname(str_to_date(null, '%m')) monthname(str_to_date(1, '%m')) monthname(str_to_date(0, '%m'))
@@ -927,8 +927,8 @@ f1
select f1 from t1 where cast("2006-1-1" as date) between f1 and cast('zzz' as date);
f1
Warnings:
-Warning 1292 Truncated incorrect datetime value: 'zzz'
-Warning 1292 Truncated incorrect datetime value: 'zzz'
+Warning 1292 Incorrect datetime value: 'zzz'
+Warning 1292 Incorrect datetime value: 'zzz'
select f1 from t1 where makedate(2006,1) between date(f1) and date(f3);
f1
2006-01-01
@@ -941,10 +941,10 @@ sec_to_time(1) + 0, from_unixtime(1) + 0;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `now() - now()` double(23,6) NOT NULL default '0.000000',
- `curtime() - curtime()` double(23,6) NOT NULL default '0.000000',
- `sec_to_time(1) + 0` double(23,6) default NULL,
- `from_unixtime(1) + 0` double(23,6) default NULL
+ `now() - now()` double(23,6) NOT NULL DEFAULT '0.000000',
+ `curtime() - curtime()` double(23,6) NOT NULL DEFAULT '0.000000',
+ `sec_to_time(1) + 0` double(23,6) DEFAULT NULL,
+ `from_unixtime(1) + 0` double(23,6) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
SELECT SEC_TO_TIME(3300000);
@@ -1024,7 +1024,7 @@ CREATE TABLE t1(f1 TIME);
INSERT INTO t1 VALUES('916:00:00 a');
Warnings:
Warning 1265 Data truncated for column 'f1' at row 1
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 1
SELECT * FROM t1;
f1
838:59:59
@@ -1085,31 +1085,19 @@ isnull(week(now() + 0)) isnull(week(now() + 0.2)) week(20061108) week(20061108.0
End of 4.1 tests
explain extended select timestampdiff(SQL_TSI_WEEK, '2001-02-01', '2001-05-01') as a1,
timestampdiff(SQL_TSI_FRAC_SECOND, '2001-02-01 12:59:59.120000', '2001-05-01 12:58:58.119999') as a2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Warning 1287 'FRAC_SECOND' is deprecated; use 'MICROSECOND' instead
-Note 1003 select timestampdiff(WEEK,_latin1'2001-02-01',_latin1'2001-05-01') AS `a1`,timestampdiff(SECOND_FRAC,_latin1'2001-02-01 12:59:59.120000',_latin1'2001-05-01 12:58:58.119999') AS `a2`
-select last_day('2005-00-00');
-last_day('2005-00-00')
-NULL
-Warnings:
-Warning 1292 Truncated incorrect datetime value: '2005-00-00'
-select last_day('2005-00-01');
-last_day('2005-00-01')
-NULL
-Warnings:
-Warning 1292 Truncated incorrect datetime value: '2005-00-01'
-select last_day('2005-01-00');
-last_day('2005-01-00')
-NULL
-Warnings:
-Warning 1292 Truncated incorrect datetime value: '2005-01-00'
+Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
+Note 1003 select timestampdiff(WEEK,'2001-02-01','2001-05-01') AS `a1`,timestampdiff(SECOND_FRAC,'2001-02-01 12:59:59.120000','2001-05-01 12:58:58.119999') AS `a2`
select time_format('100:00:00', '%H %k %h %I %l');
time_format('100:00:00', '%H %k %h %I %l')
100 100 04 04 4
+SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
create table t1 (a timestamp default '2005-05-05 01:01:01',
b timestamp default '2005-05-05 01:01:01');
+drop function if exists t_slow_sysdate;
create function t_slow_sysdate() returns timestamp
begin
do sleep(2);
@@ -1130,6 +1118,7 @@ a != b
drop trigger t_before;
drop function t_slow_sysdate;
drop table t1;
+SET GLOBAL log_bin_trust_function_creators = 0;
create table t1 (a datetime, i int, b datetime);
insert into t1 select sysdate(), sleep(1), sysdate() from dual;
select a != b from t1;
@@ -1148,6 +1137,7 @@ call t_sysdate();
@a != @b
1
drop procedure t_sysdate;
+SET @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators;
select timestampdiff(month,'2004-09-11','2004-09-11');
timestampdiff(month,'2004-09-11','2004-09-11')
0
@@ -1225,18 +1215,6 @@ id day id day
3 2005-07-01 3 2005-07-15
DROP TABLE t1,t2;
set time_zone= @@global.time_zone;
-SET NAMES latin1;
-SET character_set_results = NULL;
-SHOW VARIABLES LIKE 'character_set_results';
-Variable_name Value
-character_set_results
-CREATE TABLE testBug8868 (field1 DATE, field2 VARCHAR(32) CHARACTER SET BINARY);
-INSERT INTO testBug8868 VALUES ('2006-09-04', 'abcd');
-SELECT DATE_FORMAT(field1,'%b-%e %l:%i%p') as fmtddate, field2 FROM testBug8868;
-fmtddate field2
-Sep-4 12:00AM abcd
-DROP TABLE testBug8868;
-SET NAMES DEFAULT;
select str_to_date('10:00 PM', '%h:%i %p') + INTERVAL 10 MINUTE;
str_to_date('10:00 PM', '%h:%i %p') + INTERVAL 10 MINUTE
NULL
@@ -1309,12 +1287,12 @@ SELECT TIMESTAMPADD(FRAC_SECOND, 1, '2008-02-18');
TIMESTAMPADD(FRAC_SECOND, 1, '2008-02-18')
2008-02-18 00:00:00.000001
Warnings:
-Warning 1287 'FRAC_SECOND' is deprecated; use 'MICROSECOND' instead
+Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
SELECT TIMESTAMPDIFF(FRAC_SECOND, '2008-02-17', '2008-02-18');
TIMESTAMPDIFF(FRAC_SECOND, '2008-02-17', '2008-02-18')
86400000000
Warnings:
-Warning 1287 'FRAC_SECOND' is deprecated; use 'MICROSECOND' instead
+Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
SELECT DATE_ADD('2008-02-18', INTERVAL 1 FRAC_SECOND);
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FRAC_SECOND)' at line 1
SELECT DATE_SUB('2008-02-18', INTERVAL 1 FRAC_SECOND);
@@ -1324,3 +1302,37 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
SELECT '2008-02-18' - INTERVAL 1 FRAC_SECOND;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FRAC_SECOND' at line 1
End of 5.0 tests
+select date_sub("0050-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("0050-01-01 00:00:01",INTERVAL 2 SECOND)
+0049-12-31 23:59:59
+select date_sub("0199-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("0199-01-01 00:00:01",INTERVAL 2 SECOND)
+0198-12-31 23:59:59
+select date_add("0199-12-31 23:59:59",INTERVAL 2 SECOND);
+date_add("0199-12-31 23:59:59",INTERVAL 2 SECOND)
+0200-01-01 00:00:01
+select date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND)
+0199-12-31 23:59:59
+select date_sub("0200-01-01 00:00:01",INTERVAL 1 SECOND);
+date_sub("0200-01-01 00:00:01",INTERVAL 1 SECOND)
+0200-01-01 00:00:00
+select date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND)
+0199-12-31 23:59:59
+select date_add("2001-01-01 23:59:59",INTERVAL -2000 YEAR);
+date_add("2001-01-01 23:59:59",INTERVAL -2000 YEAR)
+0001-01-01 23:59:59
+select date_sub("50-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("50-01-01 00:00:01",INTERVAL 2 SECOND)
+2049-12-31 23:59:59
+select date_sub("90-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("90-01-01 00:00:01",INTERVAL 2 SECOND)
+1989-12-31 23:59:59
+select date_sub("0069-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("0069-01-01 00:00:01",INTERVAL 2 SECOND)
+0068-12-31 23:59:59
+select date_sub("0169-01-01 00:00:01",INTERVAL 2 SECOND);
+date_sub("0169-01-01 00:00:01",INTERVAL 2 SECOND)
+0168-12-31 23:59:59
+End of 5.1 tests
diff --git a/mysql-test/r/gis-rtree.result b/mysql-test/r/gis-rtree.result
index 165db882892..68c4a6a13e5 100644
--- a/mysql-test/r/gis-rtree.result
+++ b/mysql-test/r/gis-rtree.result
@@ -7,9 +7,9 @@ SPATIAL KEY(g)
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `fid` int(11) NOT NULL auto_increment,
+ `fid` int(11) NOT NULL AUTO_INCREMENT,
`g` geometry NOT NULL,
- PRIMARY KEY (`fid`),
+ PRIMARY KEY (`fid`),
SPATIAL KEY `g` (`g`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
INSERT INTO t1 (g) VALUES (GeomFromText('LineString(150 150, 150 150)'));
@@ -290,9 +290,9 @@ ALTER TABLE t2 ADD SPATIAL KEY(g);
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `fid` int(11) NOT NULL auto_increment,
+ `fid` int(11) NOT NULL AUTO_INCREMENT,
`g` geometry NOT NULL,
- PRIMARY KEY (`fid`),
+ PRIMARY KEY (`fid`),
SPATIAL KEY `g` (`g`)
) ENGINE=MyISAM AUTO_INCREMENT=101 DEFAULT CHARSET=latin1
SELECT count(*) FROM t2;
@@ -803,7 +803,7 @@ CREATE TABLE t2 (geom GEOMETRY NOT NULL, SPATIAL KEY gk(geom));
INSERT INTO t2 SELECT GeomFromText(st) FROM t1;
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
drop table t1, t2;
-CREATE TABLE t1 (`geometry` geometry NOT NULL default '',SPATIAL KEY `gndx` (`geometry`(32))) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+CREATE TABLE t1 (`geometry` geometry NOT NULL default '',SPATIAL KEY `gndx` (`geometry`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Warnings:
Warning 1101 BLOB/TEXT column 'geometry' can't have a default value
INSERT INTO t1 (geometry) VALUES
@@ -820,7 +820,7 @@ test.t1 check status OK
drop table t1;
CREATE TABLE t1 (
c1 geometry NOT NULL default '',
-SPATIAL KEY i1 (c1(32))
+SPATIAL KEY i1 (c1)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Warnings:
Warning 1101 BLOB/TEXT column 'c1' can't have a default value
@@ -836,7 +836,7 @@ test.t1 check status OK
DROP TABLE t1;
CREATE TABLE t1 (
c1 geometry NOT NULL default '',
-SPATIAL KEY i1 (c1(32))
+SPATIAL KEY i1 (c1)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Warnings:
Warning 1101 BLOB/TEXT column 'c1' can't have a default value
@@ -879,7 +879,7 @@ c1 varchar(15) collate utf8_bin default NULL,
c3 varchar(10) collate utf8_bin default NULL,
spatial_point point NOT NULL,
PRIMARY KEY(id),
-SPATIAL KEY (spatial_point(32))
+SPATIAL KEY (spatial_point)
)ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
INSERT INTO t1 (c2, c1, c3, spatial_point) VALUES
('y', 's', 'j', GeomFromText('POINT(167 74)')),
diff --git a/mysql-test/r/gis.result b/mysql-test/r/gis.result
index 140c133d75f..b40ff6be160 100644
--- a/mysql-test/r/gis.result
+++ b/mysql-test/r/gis.result
@@ -225,8 +225,8 @@ fid AsText(Envelope(g))
120 POLYGON((0 0,10 0,10 10,0 10,0 0))
121 POLYGON((3 6,44 6,44 9,3 9,3 6))
explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelope(g)) from gis_geometry;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21 100.00
Warnings:
Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
SELECT fid, X(g) FROM gis_point;
@@ -242,8 +242,8 @@ fid Y(g)
103 20
104 20
explain extended select X(g),Y(g) FROM gis_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_point ALL NULL NULL NULL NULL 4 100.00
Warnings:
Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
SELECT fid, AsText(StartPoint(g)) FROM gis_line;
@@ -277,8 +277,8 @@ fid IsClosed(g)
106 1
107 0
explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),NumPoints(g),AsText(PointN(g, 2)),IsClosed(g) FROM gis_line;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_line ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
SELECT fid, AsText(Centroid(g)) FROM gis_polygon;
@@ -307,8 +307,8 @@ fid AsText(InteriorRingN(g, 1))
109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
110 NULL
explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumInteriorRings(g),AsText(InteriorRingN(g, 1)) FROM gis_polygon;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
SELECT fid, IsClosed(g) FROM gis_multi_line;
@@ -346,8 +346,8 @@ fid NumGeometries(g)
120 2
121 2
explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
@@ -374,8 +374,8 @@ fid AsText(GeometryN(g, 1))
120 POINT(0 0)
121 POINT(44 6)
explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
SELECT g1.fid as first, g2.fid as second,
@@ -393,9 +393,9 @@ Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE g2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE g1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+1 SIMPLE g2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
@@ -436,26 +436,26 @@ SELECT AsText(GeometryFromWKB(AsWKB(GeometryFromText('POINT(1 4)'))));
AsText(GeometryFromWKB(AsWKB(GeometryFromText('POINT(1 4)'))))
POINT(1 4)
explain extended SELECT AsText(GeometryFromWKB(AsWKB(GeometryFromText('POINT(1 4)'))));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select astext(geometryfromwkb(aswkb(geometryfromtext(_latin1'POINT(1 4)')))) AS `AsText(GeometryFromWKB(AsWKB(GeometryFromText('POINT(1 4)'))))`
+Note 1003 select astext(geometryfromwkb(aswkb(geometryfromtext('POINT(1 4)')))) AS `AsText(GeometryFromWKB(AsWKB(GeometryFromText('POINT(1 4)'))))`
explain extended SELECT AsText(GeometryFromWKB(AsWKB(PointFromText('POINT(1 4)'))));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select astext(geometryfromwkb(aswkb(geometryfromtext(_latin1'POINT(1 4)')))) AS `AsText(GeometryFromWKB(AsWKB(PointFromText('POINT(1 4)'))))`
+Note 1003 select astext(geometryfromwkb(aswkb(geometryfromtext('POINT(1 4)')))) AS `AsText(GeometryFromWKB(AsWKB(PointFromText('POINT(1 4)'))))`
SELECT SRID(GeomFromText('LineString(1 1,2 2)',101));
SRID(GeomFromText('LineString(1 1,2 2)',101))
101
explain extended SELECT SRID(GeomFromText('LineString(1 1,2 2)',101));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select srid(geometryfromtext(_latin1'LineString(1 1,2 2)',101)) AS `SRID(GeomFromText('LineString(1 1,2 2)',101))`
+Note 1003 select srid(geometryfromtext('LineString(1 1,2 2)',101)) AS `SRID(GeomFromText('LineString(1 1,2 2)',101))`
explain extended select issimple(MultiPoint(Point(3, 6), Point(4, 10))), issimple(Point(3, 6));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select issimple(multipoint(point(3,6),point(4,10))) AS `issimple(MultiPoint(Point(3, 6), Point(4, 10)))`,issimple(point(3,6)) AS `issimple(Point(3, 6))`
create table t1 (a geometry not null);
@@ -578,7 +578,7 @@ create table t1 select GeomFromWKB(POINT(1,3));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `GeomFromWKB(POINT(1,3))` geometry default NULL
+ `GeomFromWKB(POINT(1,3))` geometry DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE `t1` (`object_id` bigint(20) unsigned NOT NULL default '0', `geo`
@@ -685,8 +685,8 @@ asbinary(g)
drop table t1;
create table t1 (a TEXT, b GEOMETRY NOT NULL, SPATIAL KEY(b));
alter table t1 disable keys;
-load data infile '../std_data_ln/bad_gis_data.dat' into table t1;
-ERROR 22004: Column was set to data type implicit default; NULL supplied for NOT NULL column 'b' at row 1
+load data infile '../../std_data/bad_gis_data.dat' into table t1;
+ERROR 22004: Column set to default value; NULL supplied to NOT NULL column 'b' at row 1
alter table t1 enable keys;
drop table t1;
create table t1 (a int, b blob);
@@ -781,11 +781,12 @@ insert into t1 values (null,null);
ERROR 23000: Column 's1' cannot be null
drop table t1;
drop procedure if exists fn3;
-create function fn3 () returns point return GeomFromText("point(1 1)");
+create function fn3 () returns point deterministic return GeomFromText("point(1 1)");
show create function fn3;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
fn3 CREATE DEFINER=`root`@`localhost` FUNCTION `fn3`() RETURNS point
-return GeomFromText("point(1 1)")
+ DETERMINISTIC
+return GeomFromText("point(1 1)") latin1 latin1_swedish_ci latin1_swedish_ci
select astext(fn3());
astext(fn3())
POINT(1 1)
@@ -984,3 +985,63 @@ SELECT 1 FROM t1 WHERE a <> (SELECT GEOMETRYCOLLECTIONFROMWKB(b) FROM t1);
1
DROP TABLE t1;
End of 5.0 tests
+create table t1 (f1 tinyint(1), f2 char(1), f3 varchar(1), f4 geometry, f5 datetime);
+create view v1 as select * from t1;
+desc v1;
+Field Type Null Key Default Extra
+f1 tinyint(1) YES NULL
+f2 char(1) YES NULL
+f3 varchar(1) YES NULL
+f4 geometry YES NULL
+f5 datetime YES NULL
+drop view v1;
+drop table t1;
+SELECT MultiPoint(12345,'');
+MultiPoint(12345,'')
+NULL
+SELECT MultiPoint(123451,'');
+MultiPoint(123451,'')
+NULL
+SELECT MultiPoint(1234512,'');
+MultiPoint(1234512,'')
+NULL
+SELECT MultiPoint(12345123,'');
+MultiPoint(12345123,'')
+NULL
+SELECT MultiLineString(12345,'');
+MultiLineString(12345,'')
+NULL
+SELECT MultiLineString(123451,'');
+MultiLineString(123451,'')
+NULL
+SELECT MultiLineString(1234512,'');
+MultiLineString(1234512,'')
+NULL
+SELECT MultiLineString(12345123,'');
+MultiLineString(12345123,'')
+NULL
+SELECT LineString(12345,'');
+LineString(12345,'')
+NULL
+SELECT LineString(123451,'');
+LineString(123451,'')
+NULL
+SELECT LineString(1234512,'');
+LineString(1234512,'')
+NULL
+SELECT LineString(12345123,'');
+LineString(12345123,'')
+NULL
+SELECT Polygon(12345,'');
+Polygon(12345,'')
+NULL
+SELECT Polygon(123451,'');
+Polygon(123451,'')
+NULL
+SELECT Polygon(1234512,'');
+Polygon(1234512,'')
+NULL
+SELECT Polygon(12345123,'');
+Polygon(12345123,'')
+NULL
+End of 5.1 tests
diff --git a/mysql-test/r/grant.result b/mysql-test/r/grant.result
index 7a5b0520f7c..a677d71b266 100644
--- a/mysql-test/r/grant.result
+++ b/mysql-test/r/grant.result
@@ -1,3 +1,5 @@
+SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
drop table if exists t1;
drop database if exists mysqltest;
SET NAMES binary;
@@ -11,8 +13,8 @@ GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
grant delete on mysqltest.* to mysqltest_1@localhost;
select * from mysql.user where user="mysqltest_1";
-Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
-localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0
+Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
+localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
@@ -42,15 +44,15 @@ delete from mysql.user where user='mysqltest_1';
flush privileges;
grant usage on *.* to mysqltest_1@localhost with max_queries_per_hour 10;
select * from mysql.user where user="mysqltest_1";
-Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
-localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0
+Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
+localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10
grant usage on *.* to mysqltest_1@localhost with max_updates_per_hour 20 max_connections_per_hour 30;
select * from mysql.user where user="mysqltest_1";
-Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
-localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0
+Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
+localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30
@@ -85,7 +87,7 @@ revoke LOCK TABLES, ALTER on mysqltest.* from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
+GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
delete from mysql.user where user='mysqltest_1';
flush privileges;
@@ -463,6 +465,7 @@ Create view Tables To create new views
Create user Server Admin To create new users
Delete Tables To delete existing rows
Drop Databases,Tables To drop databases, tables, and views
+Event Server Admin To create, alter, drop and execute events
Execute Functions,Procedures To execute stored routines
File File access on server To read and write files on the server
Grant option Databases,Tables,Functions,Procedures To give to other users those privileges you possess
@@ -479,6 +482,7 @@ Show databases Server Admin To see all databases with SHOW DATABASES
Show view Tables To see views with SHOW CREATE VIEW
Shutdown Server Admin To shut down the server
Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
+Trigger Tables To use triggers
Update Tables To update existing rows
Usage Server Admin No privileges - allow connect only
create database mysqltest;
@@ -505,8 +509,8 @@ SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA TABLE_NAME PRIVILEGES
-mysqltest dummytable ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, UPDATE
-mysqltest dummyview ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, UPDATE
+mysqltest dummytable ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
+mysqltest dummyview ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
FLUSH PRIVILEGES;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
@@ -517,8 +521,8 @@ SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA TABLE_NAME PRIVILEGES
-mysqltest dummytable ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, UPDATE
-mysqltest dummyview ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, UPDATE
+mysqltest dummytable ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
+mysqltest dummyview ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
SHOW FIELDS FROM mysql.tables_priv;
Field Type Null Key Default Extra
Host char(60) NO PRI
@@ -526,8 +530,8 @@ Db char(64) NO PRI
User char(16) NO PRI
Table_name char(64) NO PRI
Grantor char(77) NO MUL
-Timestamp timestamp NO CURRENT_TIMESTAMP
-Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view') NO
+Timestamp timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
+Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger') NO
Column_priv set('Select','Insert','Update','References') NO
use test;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM dummy@localhost;
@@ -609,7 +613,7 @@ flush privileges;
use test;
set @user123="non-existent";
select * from mysql.db where user=@user123;
-Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv
+Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv Event_priv Trigger_priv
set names koi8r;
create database ;
grant select on .* to root@localhost;
@@ -904,11 +908,11 @@ ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for tabl
SHOW CREATE TABLE mysqltest2.v_yn;
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v_yn'
SHOW CREATE TABLE mysqltest2.v_ny;
-View Create View
-v_ny CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_ny` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn`
+View Create View character_set_client collation_connection
+v_ny CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_ny` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` latin1 latin1_swedish_ci
SHOW CREATE VIEW mysqltest2.v_ny;
-View Create View
-v_ny CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_ny` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn`
+View Create View character_set_client collation_connection
+v_ny CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_ny` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` latin1 latin1_swedish_ci
SHOW CREATE TABLE mysqltest3.t_nn;
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't_nn'
SHOW CREATE VIEW mysqltest3.t_nn;
@@ -920,26 +924,26 @@ ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table '
SHOW CREATE TABLE mysqltest2.t_nn;
Table Create Table
t_nn CREATE TABLE `t_nn` (
- `c1` int(11) default NULL
+ `c1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW CREATE VIEW mysqltest2.t_nn;
ERROR HY000: 'mysqltest2.t_nn' is not VIEW
SHOW CREATE VIEW mysqltest2.v_yy;
-View Create View
-v_yy CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_yy` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` where (`mysqltest2`.`t_nn`.`c1` = 55)
+View Create View character_set_client collation_connection
+v_yy CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_yy` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` where (`mysqltest2`.`t_nn`.`c1` = 55) latin1 latin1_swedish_ci
SHOW CREATE TABLE mysqltest2.v_yy;
-View Create View
-v_yy CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_yy` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` where (`mysqltest2`.`t_nn`.`c1` = 55)
+View Create View character_set_client collation_connection
+v_yy CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_yy` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` where (`mysqltest2`.`t_nn`.`c1` = 55) latin1 latin1_swedish_ci
SHOW CREATE TABLE mysqltest2.v_nn;
-View Create View
-v_nn CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_nn` AS select `t_nn`.`c1` AS `c1` from `t_nn`
+View Create View character_set_client collation_connection
+v_nn CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_nn` AS select `t_nn`.`c1` AS `c1` from `t_nn` latin1 latin1_swedish_ci
SHOW CREATE VIEW mysqltest2.v_nn;
-View Create View
-v_nn CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_nn` AS select `t_nn`.`c1` AS `c1` from `t_nn`
+View Create View character_set_client collation_connection
+v_nn CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_nn` AS select `t_nn`.`c1` AS `c1` from `t_nn` latin1 latin1_swedish_ci
SHOW CREATE TABLE mysqltest2.t_nn;
Table Create Table
t_nn CREATE TABLE `t_nn` (
- `c1` int(11) default NULL
+ `c1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW CREATE VIEW mysqltest2.t_nn;
ERROR HY000: 'mysqltest2.t_nn' is not VIEW
@@ -957,6 +961,72 @@ DROP USER 'mysqltest_1'@'localhost';
USE test;
create user mysqltest1_thisisreallytoolong;
ERROR HY000: String 'mysqltest1_thisisreallytoolong' is too long for user name (should be no longer than 16)
+CREATE DATABASE mysqltest1;
+CREATE TABLE mysqltest1.t1 (
+int_field INTEGER UNSIGNED NOT NULL,
+char_field CHAR(10),
+INDEX(`int_field`)
+);
+CREATE TABLE mysqltest1.t2 (int_field INT);
+"Now check that we require equivalent grants for "
+"RENAME TABLE and ALTER TABLE"
+CREATE USER mysqltest_1@localhost;
+GRANT SELECT ON mysqltest1.t1 TO mysqltest_1@localhost;
+SELECT USER();
+USER()
+mysqltest_1@localhost
+SHOW GRANTS;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
+RENAME TABLE t1 TO t2;
+ERROR 42000: DROP,ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
+ALTER TABLE t1 RENAME TO t2;
+ERROR 42000: DROP,ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
+GRANT DROP ON mysqltest1.t1 TO mysqltest_1@localhost;
+RENAME TABLE t1 TO t2;
+ERROR 42000: ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
+ALTER TABLE t1 RENAME TO t2;
+ERROR 42000: ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
+GRANT ALTER ON mysqltest1.t1 TO mysqltest_1@localhost;
+SHOW GRANTS;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
+RENAME TABLE t1 TO t2;
+ERROR 42000: INSERT,CREATE command denied to user 'mysqltest_1'@'localhost' for table 't2'
+ALTER TABLE t1 RENAME TO t2;
+ERROR 42000: INSERT,CREATE command denied to user 'mysqltest_1'@'localhost' for table 't2'
+GRANT INSERT, CREATE ON mysqltest1.t1 TO mysqltest_1@localhost;
+SHOW GRANTS;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
+GRANT INSERT, SELECT, CREATE, ALTER, DROP ON mysqltest1.t2 TO mysqltest_1@localhost;
+DROP TABLE mysqltest1.t2;
+SHOW GRANTS;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t2` TO 'mysqltest_1'@'localhost'
+GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
+RENAME TABLE t1 TO t2;
+RENAME TABLE t2 TO t1;
+ALTER TABLE t1 RENAME TO t2;
+ALTER TABLE t2 RENAME TO t1;
+REVOKE DROP, INSERT ON mysqltest1.t1 FROM mysqltest_1@localhost;
+REVOKE DROP, INSERT ON mysqltest1.t2 FROM mysqltest_1@localhost;
+SHOW GRANTS;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t2` TO 'mysqltest_1'@'localhost'
+GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
+RENAME TABLE t1 TO t2;
+ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1'
+ALTER TABLE t1 RENAME TO t2;
+ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1'
+DROP USER mysqltest_1@localhost;
+DROP DATABASE mysqltest1;
+USE test;
GRANT CREATE ON mysqltest.* TO 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
GRANT CREATE ON mysqltest.* TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
@@ -981,6 +1051,26 @@ REVOKE EXECUTE ON PROCEDURE p1 FROM 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
REVOKE EXECUTE ON PROCEDURE t1 FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
+CREATE USER bug23556@localhost;
+CREATE DATABASE bug23556;
+GRANT SELECT ON bug23556.* TO bug23556@localhost;
+USE bug23556;
+CREATE TABLE t1 (a INT PRIMARY KEY);
+INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
+GRANT DELETE ON t1 TO bug23556@localhost;
+USE bug23556;
+TRUNCATE t1;
+ERROR 42000: DROP command denied to user 'bug23556'@'localhost' for table 't1'
+USE bug23556;
+REVOKE DELETE ON t1 FROM bug23556@localhost;
+GRANT DROP ON t1 TO bug23556@localhost;
+USE bug23556;
+TRUNCATE t1;
+USE bug23556;
+DROP TABLE t1;
+USE test;
+DROP DATABASE bug23556;
+DROP USER bug23556@localhost;
GRANT PROCESS ON * TO user@localhost;
ERROR 3D000: No database selected
DROP DATABASE IF EXISTS mysqltest1;
@@ -1129,6 +1219,12 @@ DROP USER mysqltest_1@localhost;
DROP DATABASE db27878;
USE test;
DROP TABLE t1;
+#
+# Bug#33275 Server crash when creating temporary table mysql.user
+#
+CREATE TEMPORARY TABLE mysql.user (id INT);
+FLUSH PRIVILEGES;
+DROP TABLE mysql.user;
drop table if exists test;
Warnings:
Note 1051 Unknown table 'test'
@@ -1157,3 +1253,163 @@ root@localhost
SET PASSWORD FOR CURRENT_USER() = PASSWORD("admin");
SET PASSWORD FOR CURRENT_USER() = PASSWORD("");
End of 5.0 tests
+set names utf8;
+grant select on test.* to юзер_юзер@localhost;
+user()
+юзер_юзер@localhost
+revoke all on test.* from юзер_юзер@localhost;
+drop user юзер_юзер@localhost;
+grant select on test.* to очень_длинный_юзер@localhost;
+ERROR HY000: String 'очень_длинный_юзер' is too long for user name (should be no longer than 16)
+set names default;
+create database mysqltest;
+use mysqltest;
+grant create on mysqltest.* to mysqltest@localhost;
+create table t1 (i INT);
+insert into t1 values (1);
+ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't1'
+create table t2 (i INT);
+create table t4 (i INT);
+grant select, insert on mysqltest.t2 to mysqltest@localhost;
+grant insert on mysqltest.t4 to mysqltest@localhost;
+grant create, insert on mysqltest.t5 to mysqltest@localhost;
+grant create, insert on mysqltest.t6 to mysqltest@localhost;
+flush privileges;
+insert into t2 values (1);
+create table if not exists t1 select * from t2;
+ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't1'
+create table if not exists t3 select * from t2;
+ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't3'
+create table if not exists t4 select * from t2;
+Warnings:
+Note 1050 Table 't4' already exists
+create table if not exists t5 select * from t2;
+create table t6 select * from t2;
+create table t7 select * from t2;
+ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't7'
+create table t4 select * from t2;
+ERROR 42S01: Table 't4' already exists
+create table t1 select * from t2;
+ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't1'
+drop table t1,t2,t4,t5,t6;
+revoke create on mysqltest.* from mysqltest@localhost;
+revoke select, insert on mysqltest.t2 from mysqltest@localhost;
+revoke insert on mysqltest.t4 from mysqltest@localhost;
+revoke create, insert on mysqltest.t5 from mysqltest@localhost;
+revoke create, insert on mysqltest.t6 from mysqltest@localhost;
+drop user mysqltest@localhost;
+drop database mysqltest;
+use test;
+FLUSH PRIVILEGES without procs_priv table.
+RENAME TABLE mysql.procs_priv TO mysql.procs_gone;
+FLUSH PRIVILEGES;
+ERROR 42S02: Table 'mysql.procs_priv' doesn't exist
+Assigning privileges without procs_priv table.
+CREATE DATABASE mysqltest1;
+CREATE PROCEDURE mysqltest1.test() SQL SECURITY DEFINER
+SELECT 1;
+GRANT EXECUTE ON FUNCTION mysqltest1.test TO mysqltest_1@localhost;
+ERROR 42S02: Table 'mysql.procs_priv' doesn't exist
+GRANT ALL PRIVILEGES ON test.* TO mysqltest_1@localhost;
+CALL mysqltest1.test();
+1
+1
+DROP DATABASE mysqltest1;
+RENAME TABLE mysql.procs_gone TO mysql.procs_priv;
+DROP USER mysqltest_1@localhost;
+FLUSH PRIVILEGES;
+CREATE DATABASE dbbug33464;
+CREATE USER 'userbug33464'@'localhost';
+GRANT CREATE ROUTINE ON dbbug33464.* TO 'userbug33464'@'localhost';
+
+userbug33464@localhost dbbug33464
+DROP PROCEDURE IF EXISTS sp3;
+DROP FUNCTION IF EXISTS fn1;
+CREATE PROCEDURE sp3(v1 char(20))
+BEGIN
+SELECT * from dbbug33464.t6 where t6.f2= 'xyz';
+END//
+CREATE FUNCTION fn1() returns char(50) SQL SECURITY INVOKER
+BEGIN
+return 1;
+END//
+CREATE FUNCTION fn2() returns char(50) SQL SECURITY DEFINER
+BEGIN
+return 2;
+END//
+USE dbbug33464;
+
+root@localhost dbbug33464
+SELECT fn1();
+fn1()
+1
+SELECT fn2();
+fn2()
+2
+DROP USER 'userbug33464'@'localhost';
+DROP FUNCTION fn1;
+Warnings:
+Warning 1403 There is no such grant defined for user 'userbug33464' on host 'localhost' on routine 'fn1'
+DROP FUNCTION fn2;
+Warnings:
+Warning 1403 There is no such grant defined for user 'userbug33464' on host 'localhost' on routine 'fn2'
+DROP PROCEDURE sp3;
+DROP USER 'userbug33464'@'localhost';
+USE test;
+DROP DATABASE dbbug33464;
+SET @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators;
+CREATE USER user1;
+CREATE USER user2;
+GRANT CREATE ON db1.* TO 'user1'@'localhost';
+GRANT CREATE ROUTINE ON db1.* TO 'user1'@'localhost';
+GRANT CREATE ON db1.* TO 'user2'@'%';
+GRANT CREATE ROUTINE ON db1.* TO 'user2'@'%';
+FLUSH PRIVILEGES;
+SHOW GRANTS FOR 'user1'@'localhost';
+Grants for user1@localhost
+GRANT USAGE ON *.* TO 'user1'@'localhost'
+GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user1'@'localhost'
+** Connect as user1 and create a procedure.
+** The creation will imply implicitly assigned
+** EXECUTE and ALTER ROUTINE privileges to
+** the current user user1@localhost.
+SELECT @@GLOBAL.sql_mode;
+@@GLOBAL.sql_mode
+
+SELECT @@SESSION.sql_mode;
+@@SESSION.sql_mode
+
+CREATE DATABASE db1;
+CREATE PROCEDURE db1.proc1(p1 INT)
+BEGIN
+SET @x = 0;
+REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
+END ;||
+** Connect as user2 and create a procedure.
+** Implicitly assignment of privileges will
+** fail because the user2@localhost is an
+** unknown user.
+CREATE PROCEDURE db1.proc2(p1 INT)
+BEGIN
+SET @x = 0;
+REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
+END ;||
+Warnings:
+Warning 1404 Failed to grant EXECUTE and ALTER ROUTINE privileges
+SHOW GRANTS FOR 'user1'@'localhost';
+Grants for user1@localhost
+GRANT USAGE ON *.* TO 'user1'@'localhost'
+GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user1'@'localhost'
+GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc1` TO 'user1'@'localhost'
+SHOW GRANTS FOR 'user2';
+Grants for user2@%
+GRANT USAGE ON *.* TO 'user2'@'%'
+GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user2'@'%'
+DROP PROCEDURE db1.proc1;
+DROP PROCEDURE db1.proc2;
+REVOKE ALL ON db1.* FROM 'user1'@'localhost';
+REVOKE ALL ON db1.* FROM 'user2'@'%';
+DROP USER 'user1';
+DROP USER 'user1'@'localhost';
+DROP USER 'user2';
+DROP DATABASE db1;
diff --git a/mysql-test/r/grant2.result b/mysql-test/r/grant2.result
index 698e602e2e6..7c2023127f0 100644
--- a/mysql-test/r/grant2.result
+++ b/mysql-test/r/grant2.result
@@ -348,15 +348,14 @@ create database TESTDB;
create table t2(a int);
create temporary table t1 as select * from mysql.user;
delete from mysql.user where host='localhost';
-INSERT INTO mysql.user VALUES
-('%','mysqltest_1',password('password'),'N','N','N','N','N','N',
-'N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N',
-'','','','',0,0,0,0);
-INSERT INTO mysql.db VALUES
-('%','TESTDB','mysqltest_1','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','N','Y','Y','Y','
-Y','N');
+INSERT INTO mysql.user (host, user, password) VALUES
+('%','mysqltest_1',password('password'));
Warnings:
-Warning 1265 Data truncated for column 'Alter_routine_priv' at row 1
+Warning 1364 Field 'ssl_cipher' doesn't have a default value
+Warning 1364 Field 'x509_issuer' doesn't have a default value
+Warning 1364 Field 'x509_subject' doesn't have a default value
+INSERT INTO mysql.db (host, db, user, select_priv) VALUES
+('%','TESTDB','mysqltest_1','Y');
FLUSH PRIVILEGES;
create database TEStdb;
Got one of the listed errors
@@ -366,6 +365,8 @@ insert into mysql.user select * from t1;
drop table t1, t2;
drop database TESTDB;
flush privileges;
+SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
GRANT ALL PRIVILEGES ON test.* TO `a@`@localhost;
GRANT EXECUTE ON * TO `a@`@localhost;
CREATE TABLE t2 (s1 INT);
@@ -380,6 +381,7 @@ DROP FUNCTION f2;
DROP TABLE t2;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM `a@`@localhost;
DROP USER `a@`@localhost;
+SET @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators;
drop database if exists mysqltest_1;
drop database if exists mysqltest_2;
drop user mysqltest_u1@localhost;
@@ -396,7 +398,7 @@ grant select on mysqltest_2.t1 to mysqltest_u1@localhost;
show create table mysqltest_2.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t1 like mysqltest_2.t1;
use test;
diff --git a/mysql-test/r/grant_cache_no_prot.result b/mysql-test/r/grant_cache_no_prot.result
new file mode 100644
index 00000000000..32bb9cce90e
--- /dev/null
+++ b/mysql-test/r/grant_cache_no_prot.result
@@ -0,0 +1,219 @@
+drop table if exists test.t1,mysqltest.t1,mysqltest.t2;
+drop database if exists mysqltest;
+set GLOBAL query_cache_size=1355776;
+reset query cache;
+flush status;
+----- establish connection root -----
+show grants for current_user;
+Grants for root@localhost
+GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
+show grants;
+Grants for root@localhost
+GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
+create database if not exists mysqltest;
+create table mysqltest.t1 (a int,b int,c int);
+create table mysqltest.t2 (a int,b int,c int);
+insert into mysqltest.t1 values (1,1,1),(2,2,2);
+insert into mysqltest.t2 values (3,3,3);
+create table test.t1 (a char (10));
+insert into test.t1 values ("test.t1");
+select * from t1;
+a
+test.t1
+----- establish connection root2 -----
+select * from t1;
+a b c
+1 1 1
+2 2 2
+select a from t1;
+a
+1
+2
+select c from t1;
+c
+1
+2
+select * from t2;
+a b c
+3 3 3
+select * from mysqltest.t1,test.t1;
+a b c a
+1 1 1 test.t1
+2 2 2 test.t1
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits%";
+Variable_name Value
+Qcache_hits 0
+grant SELECT on mysqltest.* to mysqltest_1@localhost;
+grant SELECT on mysqltest.t1 to mysqltest_2@localhost;
+grant SELECT on test.t1 to mysqltest_2@localhost;
+grant SELECT(a) on mysqltest.t1 to mysqltest_3@localhost;
+----- establish connection user1 (user=mysqltest_1) -----
+show grants for current_user();
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 0
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 0
+select "user1";
+user1
+user1
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 0
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 1
+select * from t1;
+a b c
+1 1 1
+2 2 2
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 1
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 1
+select a from t1 ;
+a
+1
+2
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 2
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 1
+select c from t1;
+c
+1
+2
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 3
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 1
+----- establish connection unkuser (user=unkuser) -----
+show grants for current_user();
+Grants for @localhost
+GRANT USAGE ON *.* TO ''@'localhost'
+----- establish connection user2 (user=mysqltest_2) -----
+select "user2";
+user2
+user2
+select * from t1;
+a b c
+1 1 1
+2 2 2
+select a from t1;
+a
+1
+2
+select c from t1;
+c
+1
+2
+select * from mysqltest.t1,test.t1;
+a b c a
+1 1 1 test.t1
+2 2 2 test.t1
+select * from t2;
+ERROR 42000: SELECT command denied to user 'mysqltest_2'@'localhost' for table 't2'
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 7
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 2
+----- establish connection user3 (user=mysqltest_3) -----
+select "user3";
+user3
+user3
+select * from t1;
+ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 't1'
+select a from t1;
+a
+1
+2
+select c from t1;
+ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'c' in table 't1'
+select * from t2;
+ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 't2'
+select mysqltest.t1.c from test.t1,mysqltest.t1;
+ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'c' in table 't1'
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 6
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 7
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 7
+----- establish connection user4 (user=mysqltest_1) -----
+select "user4";
+user4
+user4
+show grants;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
+select a from t1;
+ERROR 3D000: No database selected
+select * from mysqltest.t1,test.t1;
+a b c a
+1 1 1 test.t1
+2 2 2 test.t1
+select a from mysqltest.t1;
+a
+1
+2
+select a from mysqltest.t1;
+a
+1
+2
+show status like "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 8
+show status like "Qcache_hits";
+Variable_name Value
+Qcache_hits 8
+show status like "Qcache_not_cached";
+Variable_name Value
+Qcache_not_cached 8
+----- close connections -----
+----- switch to connection default -----
+set names binary;
+delete from mysql.user where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
+delete from mysql.db where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
+delete from mysql.tables_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
+delete from mysql.columns_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
+flush privileges;
+drop table test.t1,mysqltest.t1,mysqltest.t2;
+drop database mysqltest;
+set GLOBAL query_cache_size=default;
diff --git a/mysql-test/r/grant_cache.result b/mysql-test/r/grant_cache_ps_prot.result
index b56ad6dea2a..281468ee2e1 100644
--- a/mysql-test/r/grant_cache.result
+++ b/mysql-test/r/grant_cache_ps_prot.result
@@ -3,6 +3,7 @@ drop database if exists mysqltest;
set GLOBAL query_cache_size=1355776;
reset query cache;
flush status;
+----- establish connection root -----
show grants for current_user;
Grants for root@localhost
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
@@ -19,6 +20,7 @@ insert into test.t1 values ("test.t1");
select * from t1;
a
test.t1
+----- establish connection root2 -----
select * from t1;
a b c
1 1 1
@@ -48,6 +50,7 @@ grant SELECT on mysqltest.* to mysqltest_1@localhost;
grant SELECT on mysqltest.t1 to mysqltest_2@localhost;
grant SELECT on test.t1 to mysqltest_2@localhost;
grant SELECT(a) on mysqltest.t1 to mysqltest_3@localhost;
+----- establish connection user1 (user=mysqltest_1) -----
show grants for current_user();
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
@@ -60,7 +63,7 @@ Variable_name Value
Qcache_hits 0
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 5
+Qcache_not_cached 0
select "user1";
user1
user1
@@ -72,7 +75,7 @@ Variable_name Value
Qcache_hits 0
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 9
+Qcache_not_cached 1
select * from t1;
a b c
1 1 1
@@ -85,7 +88,7 @@ Variable_name Value
Qcache_hits 1
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 12
+Qcache_not_cached 1
select a from t1 ;
a
1
@@ -98,7 +101,7 @@ Variable_name Value
Qcache_hits 2
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 15
+Qcache_not_cached 1
select c from t1;
c
1
@@ -111,10 +114,12 @@ Variable_name Value
Qcache_hits 3
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 18
+Qcache_not_cached 1
+----- establish connection unkuser (user=unkuser) -----
show grants for current_user();
Grants for @localhost
GRANT USAGE ON *.* TO ''@'localhost'
+----- establish connection user2 (user=mysqltest_2) -----
select "user2";
user2
user2
@@ -144,7 +149,8 @@ Variable_name Value
Qcache_hits 7
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 22
+Qcache_not_cached 2
+----- establish connection user3 (user=mysqltest_3) -----
select "user3";
user3
user3
@@ -168,7 +174,8 @@ Variable_name Value
Qcache_hits 7
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 30
+Qcache_not_cached 4
+----- establish connection user4 (user=mysqltest_1) -----
select "user4";
user4
user4
@@ -198,7 +205,9 @@ Variable_name Value
Qcache_hits 8
show status like "Qcache_not_cached";
Variable_name Value
-Qcache_not_cached 34
+Qcache_not_cached 5
+----- close connections -----
+----- switch to connection default -----
set names binary;
delete from mysql.user where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
delete from mysql.db where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
diff --git a/mysql-test/r/greedy_optimizer.result b/mysql-test/r/greedy_optimizer.result
index 534038ee626..c0012c297d1 100644
--- a/mysql-test/r/greedy_optimizer.result
+++ b/mysql-test/r/greedy_optimizer.result
@@ -121,11 +121,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -133,11 +133,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -145,11 +145,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -157,11 +157,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -169,11 +169,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
@@ -181,11 +181,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
@@ -201,11 +201,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -213,11 +213,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -225,51 +225,51 @@ Last_query_cost 821.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
set optimizer_search_depth=1;
select @@optimizer_search_depth;
@@optimizer_search_depth
@@ -277,11 +277,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -289,11 +289,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -304,9 +304,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -316,9 +316,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -328,9 +328,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -340,9 +340,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -353,11 +353,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -365,11 +365,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -377,51 +377,51 @@ Last_query_cost 821.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.c21 1 Using where
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
-Last_query_cost 274.418727
+Last_query_cost 289.418727
set optimizer_prune_level=1;
select @@optimizer_prune_level;
@@optimizer_prune_level
@@ -433,11 +433,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -445,11 +445,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -457,11 +457,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -469,11 +469,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -481,11 +481,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
@@ -493,11 +493,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
@@ -509,11 +509,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -521,11 +521,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -536,9 +536,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -548,9 +548,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -560,9 +560,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -572,9 +572,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
show status like 'Last_query_cost';
Variable_name Value
Last_query_cost 794.837037
@@ -585,11 +585,11 @@ select @@optimizer_search_depth;
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -597,11 +597,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.c22 1
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t4.c42 1
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -609,11 +609,11 @@ Last_query_cost 821.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -621,11 +621,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using index
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using index
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
show status like 'Last_query_cost';
Variable_name Value
@@ -633,11 +633,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
@@ -645,11 +645,11 @@ Last_query_cost 794.837037
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using join buffer
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t1.c12 1 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where; Using join buffer
1 SIMPLE t5 eq_ref PRIMARY PRIMARY 4 test.t1.c14 1 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where; Using join buffer
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
show status like 'Last_query_cost';
Variable_name Value
diff --git a/mysql-test/r/group_by.result b/mysql-test/r/group_by.result
index ffb7ca667c7..742d4b90807 100644
--- a/mysql-test/r/group_by.result
+++ b/mysql-test/r/group_by.result
@@ -285,8 +285,8 @@ spid count(*)
2 2
1 1
explain extended select sql_big_result spid,sum(userid) from t1 group by spid desc;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 8 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 8 100.00 Using filesort
Warnings:
Note 1003 select sql_big_result `test`.`t1`.`spID` AS `spid`,sum(`test`.`t1`.`userID`) AS `sum(userid)` from `test`.`t1` group by `test`.`t1`.`spID` desc
explain select sql_big_result spid,sum(userid) from t1 group by spid desc order by null;
@@ -537,11 +537,11 @@ a b
explain select t1.a,t2.b from t1,t2 where t1.a=t2.a group by t1.a,t2.b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using temporary; Using filesort
-1 SIMPLE t2 ALL a NULL NULL NULL 3 Using where
+1 SIMPLE t2 ALL a NULL NULL NULL 4 Using where; Using join buffer
explain select t1.a,t2.b from t1,t2 where t1.a=t2.a group by t1.a,t2.b ORDER BY NULL;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using temporary
-1 SIMPLE t2 ALL a NULL NULL NULL 3 Using where
+1 SIMPLE t2 ALL a NULL NULL NULL 4 Using where; Using join buffer
drop table t1,t2;
create table t1 (a int, b int);
insert into t1 values (1, 4),(10, 40),(1, 4),(10, 43),(1, 4),(10, 41),(1, 4),(10, 43),(1, 4);
@@ -1065,55 +1065,6 @@ ERROR 42000: 'test.t.f1' isn't in GROUP BY
drop table t1;
SET SQL_MODE = '';
CREATE TABLE t1(
-a INT,
-b INT NOT NULL,
-c INT NOT NULL,
-d INT,
-UNIQUE KEY (c,b)
-);
-INSERT INTO t1 VALUES (1,1,1,50), (1,2,3,40), (2,1,3,4);
-EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b,d;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
-SELECT c,b,d FROM t1 GROUP BY c,b,d;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b,d ORDER BY NULL;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-SELECT c,b,d FROM t1 GROUP BY c,b,d ORDER BY NULL;
-c b d
-1 1 50
-3 2 40
-3 1 4
-EXPLAIN SELECT c,b,d FROM t1 ORDER BY c,b,d;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
-SELECT c,b,d FROM t1 ORDER BY c,b,d;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
-SELECT c,b,d FROM t1 GROUP BY c,b;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b FROM t1 GROUP BY c,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL c 8 NULL 3 Using index
-SELECT c,b FROM t1 GROUP BY c,b;
-c b
-1 1
-3 1
-3 2
-DROP TABLE t1;
-CREATE TABLE t1(
id INT AUTO_INCREMENT PRIMARY KEY,
c1 INT NOT NULL,
c2 INT NOT NULL,
@@ -1177,42 +1128,6 @@ id c1 c2
4 2 3
1 5 1
DROP TABLE t1;
-CREATE TABLE t1 ( a INT, b INT );
-SELECT b c, (SELECT a FROM t1 WHERE b = c)
-FROM t1;
-c (SELECT a FROM t1 WHERE b = c)
-SELECT b c, (SELECT a FROM t1 WHERE b = c)
-FROM t1
-HAVING b = 10;
-c (SELECT a FROM t1 WHERE b = c)
-SELECT MAX(b) c, (SELECT a FROM t1 WHERE b = c)
-FROM t1
-HAVING b = 10;
-ERROR 42S22: Reference 'c' not supported (reference to group function)
-SET @old_sql_mode = @@sql_mode;
-SET @@sql_mode='ONLY_FULL_GROUP_BY';
-SELECT b c, (SELECT a FROM t1 WHERE b = c)
-FROM t1;
-c (SELECT a FROM t1 WHERE b = c)
-SELECT b c, (SELECT a FROM t1 WHERE b = c)
-FROM t1
-HAVING b = 10;
-ERROR 42000: non-grouping field 'b' is used in HAVING clause
-SELECT MAX(b) c, (SELECT a FROM t1 WHERE b = c)
-FROM t1
-HAVING b = 10;
-ERROR 42S22: Reference 'c' not supported (reference to group function)
-INSERT INTO t1 VALUES (1, 1);
-SELECT b c, (SELECT a FROM t1 WHERE b = c)
-FROM t1;
-c (SELECT a FROM t1 WHERE b = c)
-1 1
-INSERT INTO t1 VALUES (2, 1);
-SELECT b c, (SELECT a FROM t1 WHERE b = c)
-FROM t1;
-ERROR 21000: Subquery returns more than 1 row
-DROP TABLE t1;
-SET @@sql_mode = @old_sql_mode;
#
# Bug#27219: Aggregate functions in ORDER BY.
#
@@ -1390,3 +1305,401 @@ SELECT COUNT(varchar_key) AS X FROM t1 WHERE pk = 8 having 'foo'='bar';
X
drop table t1;
End of 5.0 tests
+CREATE TABLE t1 (a INT, b INT,
+PRIMARY KEY (a),
+KEY i2(a,b));
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8);
+INSERT INTO t1 SELECT a + 8,b FROM t1;
+INSERT INTO t1 SELECT a + 16,b FROM t1;
+INSERT INTO t1 SELECT a + 32,b FROM t1;
+INSERT INTO t1 SELECT a + 64,b FROM t1;
+INSERT INTO t1 SELECT a + 128,b FROM t1 limit 16;
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+EXPLAIN SELECT a FROM t1 WHERE a < 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range PRIMARY,i2 PRIMARY 4 NULL 1 Using where; Using index
+EXPLAIN SELECT a FROM t1 WHERE a < 2 ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range PRIMARY,i2 PRIMARY 4 NULL 1 Using where; Using index
+EXPLAIN SELECT a FROM t1 WHERE a < 2 GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range PRIMARY,i2 PRIMARY 4 NULL 1 Using where; Using index
+EXPLAIN SELECT a FROM t1 IGNORE INDEX (PRIMARY,i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 144
+EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR JOIN (PRIMARY,i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 144
+EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR GROUP BY (PRIMARY,i2) GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 144 Using index
+EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR ORDER BY (PRIMARY,i2) ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 144 Using index
+SELECT a FROM t1 IGNORE INDEX FOR ORDER BY (PRIMARY,i2) ORDER BY a;
+a
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR ORDER BY (PRIMARY)
+IGNORE INDEX FOR GROUP BY (i2) GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 144 Using index
+EXPLAIN SELECT a FROM t1 IGNORE INDEX (PRIMARY) IGNORE INDEX FOR ORDER BY (i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
+EXPLAIN SELECT a FROM t1 FORCE INDEX (i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
+EXPLAIN SELECT a FROM t1 USE INDEX ();
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 144
+EXPLAIN SELECT a FROM t1 USE INDEX () USE INDEX (i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 144
+EXPLAIN SELECT a FROM t1
+FORCE INDEX (PRIMARY)
+IGNORE INDEX FOR GROUP BY (i2)
+IGNORE INDEX FOR ORDER BY (i2)
+USE INDEX (i2);
+ERROR HY000: Incorrect usage of USE INDEX and FORCE INDEX
+EXPLAIN SELECT a FROM t1 USE INDEX (i2) USE INDEX ();
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
+EXPLAIN SELECT a FROM t1 FORCE INDEX ();
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
+EXPLAIN SELECT a FROM t1 IGNORE INDEX ();
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
+EXPLAIN SELECT a FROM t1 USE INDEX FOR JOIN (i2)
+USE INDEX FOR GROUP BY (i2) GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 # NULL i2 # NULL # #
+EXPLAIN SELECT a FROM t1 FORCE INDEX FOR JOIN (i2)
+FORCE INDEX FOR GROUP BY (i2) GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range NULL i2 4 NULL 145 Using index for group-by
+EXPLAIN SELECT a FROM t1 USE INDEX () IGNORE INDEX (i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 144
+EXPLAIN SELECT a FROM t1 IGNORE INDEX (i2) USE INDEX ();
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 144
+EXPLAIN SELECT a FROM t1
+USE INDEX FOR GROUP BY (i2)
+USE INDEX FOR ORDER BY (i2)
+USE INDEX FOR JOIN (i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
+EXPLAIN SELECT a FROM t1
+USE INDEX FOR JOIN (i2)
+USE INDEX FOR JOIN (i2)
+USE INDEX FOR JOIN (i2,i2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
+EXPLAIN SELECT 1 FROM t1 WHERE a IN
+(SELECT a FROM t1 USE INDEX (i2) IGNORE INDEX (i2));
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t1 index NULL PRIMARY 4 NULL 144 Using where; Using index
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 144 Using where
+CREATE TABLE t2 (a INT, b INT, KEY(a));
+INSERT INTO t2 VALUES (1, 1), (2, 2), (3,3), (4,4);
+EXPLAIN SELECT a, SUM(b) FROM t2 GROUP BY a LIMIT 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL a 5 NULL 2
+EXPLAIN SELECT a, SUM(b) FROM t2 IGNORE INDEX (a) GROUP BY a LIMIT 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using temporary; Using filesort
+EXPLAIN SELECT 1 FROM t2 WHERE a IN
+(SELECT a FROM t1 USE INDEX (i2) IGNORE INDEX (i2));
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 144 Using where
+SHOW VARIABLES LIKE 'old';
+Variable_name Value
+old OFF
+SET @@old = off;
+ERROR HY000: Variable 'old' is a read only variable
+DROP TABLE t1, t2;
+CREATE TABLE t1(
+a INT,
+b INT NOT NULL,
+c INT NOT NULL,
+d INT,
+UNIQUE KEY (c,b)
+);
+INSERT INTO t1 VALUES (1,1,1,50), (1,2,3,40), (2,1,3,4);
+CREATE TABLE t2(
+a INT,
+b INT,
+UNIQUE KEY(a,b)
+);
+INSERT INTO t2 VALUES (NULL, NULL), (NULL, NULL), (NULL, 1), (1, NULL), (1, 1), (1,2);
+EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b,d;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
+SELECT c,b,d FROM t1 GROUP BY c,b,d;
+c b d
+1 1 50
+3 1 4
+3 2 40
+EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b,d ORDER BY NULL;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3
+SELECT c,b,d FROM t1 GROUP BY c,b,d ORDER BY NULL;
+c b d
+1 1 50
+3 2 40
+3 1 4
+EXPLAIN SELECT c,b,d FROM t1 ORDER BY c,b,d;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
+SELECT c,b,d FROM t1 ORDER BY c,b,d;
+c b d
+1 1 50
+3 1 4
+3 2 40
+EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
+SELECT c,b,d FROM t1 GROUP BY c,b;
+c b d
+1 1 50
+3 1 4
+3 2 40
+EXPLAIN SELECT c,b FROM t1 GROUP BY c,b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL c 8 NULL 3 Using index
+SELECT c,b FROM t1 GROUP BY c,b;
+c b
+1 1
+3 1
+3 2
+EXPLAIN SELECT a,b from t2 ORDER BY a,b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL a 10 NULL 6 Using index
+SELECT a,b from t2 ORDER BY a,b;
+a b
+NULL NULL
+NULL NULL
+NULL 1
+1 NULL
+1 1
+1 2
+EXPLAIN SELECT a,b from t2 GROUP BY a,b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL a 10 NULL 6 Using index
+SELECT a,b from t2 GROUP BY a,b;
+a b
+NULL NULL
+NULL 1
+1 NULL
+1 1
+1 2
+EXPLAIN SELECT a from t2 GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL a 10 NULL 6 Using index
+SELECT a from t2 GROUP BY a;
+a
+NULL
+1
+EXPLAIN SELECT b from t2 GROUP BY b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL a 10 NULL 6 Using index; Using temporary; Using filesort
+SELECT b from t2 GROUP BY b;
+b
+NULL
+1
+2
+DROP TABLE t1;
+DROP TABLE t2;
+CREATE TABLE t1 ( a INT, b INT );
+SELECT b c, (SELECT a FROM t1 WHERE b = c)
+FROM t1;
+c (SELECT a FROM t1 WHERE b = c)
+SELECT b c, (SELECT a FROM t1 WHERE b = c)
+FROM t1
+HAVING b = 10;
+c (SELECT a FROM t1 WHERE b = c)
+SELECT MAX(b) c, (SELECT a FROM t1 WHERE b = c)
+FROM t1
+HAVING b = 10;
+ERROR 42S22: Reference 'c' not supported (reference to group function)
+SET @old_sql_mode = @@sql_mode;
+SET @@sql_mode='ONLY_FULL_GROUP_BY';
+SELECT b c, (SELECT a FROM t1 WHERE b = c)
+FROM t1;
+c (SELECT a FROM t1 WHERE b = c)
+SELECT b c, (SELECT a FROM t1 WHERE b = c)
+FROM t1
+HAVING b = 10;
+ERROR 42000: non-grouping field 'b' is used in HAVING clause
+SELECT MAX(b) c, (SELECT a FROM t1 WHERE b = c)
+FROM t1
+HAVING b = 10;
+ERROR 42S22: Reference 'c' not supported (reference to group function)
+INSERT INTO t1 VALUES (1, 1);
+SELECT b c, (SELECT a FROM t1 WHERE b = c)
+FROM t1;
+c (SELECT a FROM t1 WHERE b = c)
+1 1
+INSERT INTO t1 VALUES (2, 1);
+SELECT b c, (SELECT a FROM t1 WHERE b = c)
+FROM t1;
+ERROR 21000: Subquery returns more than 1 row
+DROP TABLE t1;
+SET @@sql_mode = @old_sql_mode;
+SET @old_sql_mode = @@sql_mode;
+SET @@sql_mode='ONLY_FULL_GROUP_BY';
+CREATE TABLE t1(i INT);
+INSERT INTO t1 VALUES (1), (10);
+SELECT COUNT(i) FROM t1;
+COUNT(i)
+2
+SELECT COUNT(i) FROM t1 WHERE i > 1;
+COUNT(i)
+1
+DROP TABLE t1;
+SET @@sql_mode = @old_sql_mode;
diff --git a/mysql-test/r/group_min_max.result b/mysql-test/r/group_min_max.result
index 9acbbaac499..620f5dc19ec 100644
--- a/mysql-test/r/group_min_max.result
+++ b/mysql-test/r/group_min_max.result
@@ -876,10 +876,10 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range NULL idx_t1_1 163 NULL 17 Using where; Using index for group-by
explain select a1,a2,b, max(c) from t1 where (c > 'b1') or (c <= 'g1') group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range NULL idx_t1_1 147 NULL 17 Using where; Using index for group-by
+1 SIMPLE t1 range NULL idx_t1_1 163 NULL 17 Using where; Using index for group-by
explain select a1,a2,b,min(c),max(c) from t1 where (c > 'b1') or (c <= 'g1') group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range NULL idx_t1_1 147 NULL 17 Using where; Using index for group-by
+1 SIMPLE t1 range NULL idx_t1_1 163 NULL 17 Using where; Using index for group-by
explain select a1,a2,b,min(c),max(c) from t1 where (c > 'b111') and (c <= 'g112') group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range NULL idx_t1_1 163 NULL 17 Using where; Using index for group-by
@@ -924,7 +924,7 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range NULL idx_t2_1 163 NULL # Using where; Using index for group-by
explain select a1,a2,b, max(c) from t2 where (c > 'b1') or (c <= 'g1') group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 range NULL idx_t2_1 146 NULL # Using where; Using index for group-by
+1 SIMPLE t2 range NULL idx_t2_1 163 NULL # Using where; Using index for group-by
explain select a1,a2,b,min(c),max(c) from t2 where (c > 'b1') or (c <= 'g1') group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range NULL idx_t2_1 163 NULL # Using where; Using index for group-by
@@ -1558,9 +1558,11 @@ id select_type table type possible_keys key key_len ref rows Extra
explain select distinct a1,a2,b from t1 where (a2 >= 'b') and (b = 'a');
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range NULL idx_t1_1 147 NULL 17 Using where; Using index for group-by
-explain select distinct a1,a2,b,c from t1 where (a2 >= 'b') and (b = 'a') and (c = 'i121');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL idx_t1_1 163 NULL 128 Using where; Using index
+explain extended select distinct a1,a2,b,c from t1 where (a2 >= 'b') and (b = 'a') and (c = 'i121');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index NULL idx_t1_1 163 NULL 128 50.78 Using where; Using index
+Warnings:
+Note 1003 select distinct `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where ((`test`.`t1`.`c` = 'i121') and (`test`.`t1`.`b` = 'a') and (`test`.`t1`.`a2` >= 'b'))
explain select distinct a1,a2,b from t1 where (a1 > 'a') and (a2 > 'a') and (b = 'c');
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 147 NULL 14 Using where; Using index for group-by
@@ -1573,9 +1575,11 @@ id select_type table type possible_keys key key_len ref rows Extra
explain select distinct a1,a2,b from t2 where (a2 >= 'b') and (b = 'a');
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range NULL idx_t2_1 146 NULL # Using where; Using index for group-by
-explain select distinct a1,a2,b,c from t2 where (a2 >= 'b') and (b = 'a') and (c = 'i121');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 index NULL idx_t2_1 163 NULL 164 Using where; Using index
+explain extended select distinct a1,a2,b,c from t2 where (a2 >= 'b') and (b = 'a') and (c = 'i121');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 index NULL idx_t2_1 163 NULL 164 50.61 Using where; Using index
+Warnings:
+Note 1003 select distinct `test`.`t2`.`a1` AS `a1`,`test`.`t2`.`a2` AS `a2`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`c` AS `c` from `test`.`t2` where ((`test`.`t2`.`c` = 'i121') and (`test`.`t2`.`b` = 'a') and (`test`.`t2`.`a2` >= 'b'))
explain select distinct a1,a2,b from t2 where (a1 > 'a') and (a2 > 'a') and (b = 'c');
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range idx_t2_0,idx_t2_1,idx_t2_2 idx_t2_1 146 NULL # Using where; Using index for group-by
@@ -1800,15 +1804,19 @@ id select_type table type possible_keys key key_len ref rows Extra
explain select count(distinct a1,a2,b,c) from t1 where (a2 >= 'b') and (b = 'a') and (c = 'i121');
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL idx_t1_1 163 NULL 128 Using where; Using index
-explain select count(distinct a1,a2,b) from t1 where (a1 > 'a') and (a2 > 'a') and (b = 'c');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_2 147 NULL 128 Using where; Using index
+explain extended select count(distinct a1,a2,b) from t1 where (a1 > 'a') and (a2 > 'a') and (b = 'c');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_2 147 NULL 128 75.00 Using where; Using index
+Warnings:
+Note 1003 select count(distinct `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`) AS `count(distinct a1,a2,b)` from `test`.`t1` where ((`test`.`t1`.`b` = 'c') and (`test`.`t1`.`a1` > 'a') and (`test`.`t1`.`a2` > 'a'))
explain select count(distinct b) from t1 where (a2 >= 'b') and (b = 'a');
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL idx_t1_2 147 NULL 128 Using where; Using index
-explain select ord(a1) + count(distinct a1,a2,b) from t1 where (a1 > 'a') and (a2 > 'a');
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_2 147 NULL 128 Using where; Using index
+explain extended select ord(a1) + count(distinct a1,a2,b) from t1 where (a1 > 'a') and (a2 > 'a');
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_2 147 NULL 128 75.00 Using where; Using index
+Warnings:
+Note 1003 select (ord(`test`.`t1`.`a1`) + count(distinct `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`)) AS `ord(a1) + count(distinct a1,a2,b)` from `test`.`t1` where ((`test`.`t1`.`a1` > 'a') and (`test`.`t1`.`a2` > 'a'))
select count(distinct a1,a2,b) from t1 where (a2 >= 'b') and (b = 'a');
count(distinct a1,a2,b)
4
@@ -1911,24 +1919,32 @@ id select_type table type possible_keys key key_len ref rows Extra
explain select a1,a2,b,d from t1 group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 128 Using temporary; Using filesort
-explain select a1,a2,min(b),max(b) from t1
+explain extended select a1,a2,min(b),max(b) from t1
where (a1 = 'b' or a1 = 'd' or a1 = 'a' or a1 = 'c') and (a2 > 'a') and (c > 'a111') group by a1,a2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 130 NULL 76 Using where; Using index
-explain select a1,a2,b,min(c),max(c) from t1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 range idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 130 NULL 76 85.53 Using where; Using index
+Warnings:
+Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2`,min(`test`.`t1`.`b`) AS `min(b)`,max(`test`.`t1`.`b`) AS `max(b)` from `test`.`t1` where (((`test`.`t1`.`a1` = 'b') or (`test`.`t1`.`a1` = 'd') or (`test`.`t1`.`a1` = 'a') or (`test`.`t1`.`a1` = 'c')) and (`test`.`t1`.`a2` > 'a') and (`test`.`t1`.`c` > 'a111')) group by `test`.`t1`.`a1`,`test`.`t1`.`a2`
+explain extended select a1,a2,b,min(c),max(c) from t1
where (a1 = 'b' or a1 = 'd' or a1 = 'a' or a1 = 'c') and (a2 > 'a') and (d > 'xy2') group by a1,a2,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL idx_t1_0,idx_t1_1,idx_t1_2 NULL NULL NULL 128 Using where; Using temporary; Using filesort
-explain select a1,a2,b,c from t1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL idx_t1_0,idx_t1_1,idx_t1_2 NULL NULL NULL 128 50.78 Using where; Using temporary; Using filesort
+Warnings:
+Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2`,`test`.`t1`.`b` AS `b`,min(`test`.`t1`.`c`) AS `min(c)`,max(`test`.`t1`.`c`) AS `max(c)` from `test`.`t1` where (((`test`.`t1`.`a1` = 'b') or (`test`.`t1`.`a1` = 'd') or (`test`.`t1`.`a1` = 'a') or (`test`.`t1`.`a1` = 'c')) and (`test`.`t1`.`a2` > 'a') and (`test`.`t1`.`d` > 'xy2')) group by `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`
+explain extended select a1,a2,b,c from t1
where (a1 = 'b' or a1 = 'd' or a1 = 'a' or a1 = 'c') and (a2 > 'a') and (d > 'xy2') group by a1,a2,b,c;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL idx_t1_0,idx_t1_1,idx_t1_2 NULL NULL NULL 128 Using where; Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL idx_t1_0,idx_t1_1,idx_t1_2 NULL NULL NULL 128 50.78 Using where; Using temporary; Using filesort
+Warnings:
+Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where (((`test`.`t1`.`a1` = 'b') or (`test`.`t1`.`a1` = 'd') or (`test`.`t1`.`a1` = 'a') or (`test`.`t1`.`a1` = 'c')) and (`test`.`t1`.`a2` > 'a') and (`test`.`t1`.`d` > 'xy2')) group by `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`,`test`.`t1`.`c`
explain select a1,a2,b,max(c),min(c) from t2 where (a2 = 'a') and (b = 'b') or (b < 'b') group by a1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 index NULL idx_t2_1 163 NULL 164 Using where; Using index
-explain select a1,a2,b from t1 where (a1 = 'b' or a1 = 'd' or a1 = 'a' or a1 = 'c') and (a2 > 'a') and (c > 'a111') group by a1,a2,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 130 NULL 76 Using where; Using index
+explain extended select a1,a2,b from t1 where (a1 = 'b' or a1 = 'd' or a1 = 'a' or a1 = 'c') and (a2 > 'a') and (c > 'a111') group by a1,a2,b;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 range idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 130 NULL 76 85.53 Using where; Using index
+Warnings:
+Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (((`test`.`t1`.`a1` = 'b') or (`test`.`t1`.`a1` = 'd') or (`test`.`t1`.`a1` = 'a') or (`test`.`t1`.`a1` = 'c')) and (`test`.`t1`.`a2` > 'a') and (`test`.`t1`.`c` > 'a111')) group by `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`
explain select a1,a2,min(b),c from t2 where (a2 = 'a') and (c = 'a111') group by a1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 index NULL idx_t2_1 163 NULL 164 Using where; Using index
@@ -1947,16 +1963,20 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 128 Using temporary; Using filesort
explain select a1,a2,count(a2) from t1 group by a1,a2,b;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL idx_t1_1 163 NULL 128 Using index
-explain select a1,a2,count(a2) from t1 where (a1 > 'a') group by a1,a2,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 163 NULL 128 Using where; Using index
-explain select sum(ord(a1)) from t1 where (a1 > 'a') group by a1,a2,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_1 163 NULL 128 Using where; Using index
+1 SIMPLE t1 index NULL idx_t1_2 147 NULL 128 Using index
+explain extended select a1,a2,count(a2) from t1 where (a1 > 'a') group by a1,a2,b;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_2 147 NULL 128 75.00 Using where; Using index
+Warnings:
+Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2`,count(`test`.`t1`.`a2`) AS `count(a2)` from `test`.`t1` where (`test`.`t1`.`a1` > 'a') group by `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`
+explain extended select sum(ord(a1)) from t1 where (a1 > 'a') group by a1,a2,b;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index idx_t1_0,idx_t1_1,idx_t1_2 idx_t1_2 147 NULL 128 75.00 Using where; Using index
+Warnings:
+Note 1003 select sum(ord(`test`.`t1`.`a1`)) AS `sum(ord(a1))` from `test`.`t1` where (`test`.`t1`.`a1` > 'a') group by `test`.`t1`.`a1`,`test`.`t1`.`a2`,`test`.`t1`.`b`
explain select distinct(a1) from t1 where ord(a2) = 98;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL idx_t1_1 163 NULL 128 Using where; Using index
+1 SIMPLE t1 index NULL idx_t1_2 147 NULL 128 Using where; Using index
select distinct(a1) from t1 where ord(a2) = 98;
a1
a
@@ -2226,7 +2246,7 @@ EXPLAIN SELECT 1 FROM t1 AS t1_outer WHERE EXISTS
(SELECT max(b) FROM t1 GROUP BY a HAVING a < 2);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1_outer index NULL a 10 NULL 15 Using index
-2 SUBQUERY t1 index NULL a 10 NULL 8 Using index
+2 SUBQUERY t1 index NULL a 10 NULL 15 Using index
EXPLAIN SELECT 1 FROM t1 AS t1_outer WHERE
(SELECT max(b) FROM t1 GROUP BY a HAVING a < 2) > 12;
id select_type table type possible_keys key key_len ref rows Extra
@@ -2236,7 +2256,7 @@ EXPLAIN SELECT 1 FROM t1 AS t1_outer WHERE
a IN (SELECT max(b) FROM t1 GROUP BY a HAVING a < 2);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1_outer index NULL a 10 NULL 15 Using where; Using index
-2 DEPENDENT SUBQUERY t1 index NULL a 10 NULL 8 Using index
+2 DEPENDENT SUBQUERY t1 index NULL a 10 NULL 1 Using index
EXPLAIN SELECT 1 FROM t1 AS t1_outer GROUP BY a HAVING
a > (SELECT max(b) FROM t1 GROUP BY a HAVING a < 2);
id select_type table type possible_keys key key_len ref rows Extra
@@ -2247,7 +2267,7 @@ ON t1_outer1.a = (SELECT max(b) FROM t1 GROUP BY a HAVING a < 2)
AND t1_outer1.b = t1_outer2.b;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1_outer1 ref a a 5 const 1 Using where; Using index
-1 PRIMARY t1_outer2 index NULL a 10 NULL 15 Using where; Using index
+1 PRIMARY t1_outer2 index NULL a 10 NULL 15 Using where; Using index; Using join buffer
2 SUBQUERY t1 range NULL a 5 NULL 8 Using index for group-by
EXPLAIN SELECT (SELECT (SELECT max(b) FROM t1 GROUP BY a HAVING a < 2) x
FROM t1 AS t1_outer) x2 FROM t1 AS t1_outer2;
@@ -2278,10 +2298,11 @@ Handler_read_key 8
Handler_read_next 0
FLUSH STATUS;
DELETE FROM t3 WHERE (SELECT (SELECT MAX(b) FROM t1 GROUP BY a HAVING a < 2) x
-FROM t1 WHERE a = 1 AND b = 1) > 10000;
+FROM t1) > 10000;
+ERROR 21000: Subquery returns more than 1 row
SHOW STATUS LIKE 'handler_read__e%';
Variable_name Value
-Handler_read_key 9
+Handler_read_key 8
Handler_read_next 1
DROP TABLE t1,t2,t3;
CREATE TABLE t1 (a int, INDEX idx(a));
@@ -2422,8 +2443,8 @@ a b
3 12
3 13
explain extended select sql_buffer_result a, max(b)+1 from t1 where a = 0 group by a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range PRIMARY,index PRIMARY 4 NULL 3 Using where; Using index for group-by; Using temporary
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 range PRIMARY,index PRIMARY 4 NULL 3 100.00 Using where; Using index for group-by; Using temporary
Warnings:
Note 1003 select sql_buffer_result `test`.`t1`.`a` AS `a`,(max(`test`.`t1`.`b`) + 1) AS `max(b)+1` from `test`.`t1` where (`test`.`t1`.`a` = 0) group by `test`.`t1`.`a`
drop table t1;
@@ -2481,3 +2502,15 @@ a MAX(b)
2 1
DROP TABLE t;
End of 5.0 tests
+#
+# Bug #46607: Assertion failed: (cond_type == Item::FUNC_ITEM) results in
+# server crash
+#
+CREATE TABLE t (a INT, b INT, INDEX (a,b));
+INSERT INTO t VALUES (2,0), (2,0), (2,1), (2,1);
+INSERT INTO t SELECT * FROM t;
+SELECT a, MAX(b) FROM t WHERE b GROUP BY a;
+a MAX(b)
+2 1
+DROP TABLE t;
+End of 5.1 tests
diff --git a/mysql-test/r/group_min_max_innodb.result b/mysql-test/r/group_min_max_innodb.result
new file mode 100644
index 00000000000..6607e1babf6
--- /dev/null
+++ b/mysql-test/r/group_min_max_innodb.result
@@ -0,0 +1,96 @@
+drop view if exists v1;
+drop table if exists t1,t4;
+create table t4 (
+pk_col int auto_increment primary key, a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(64) default ' '
+) engine=innodb;
+insert into t4 (a1, a2, b, c, d) values
+('a','a','a','a111','xy1'),('a','a','a','b111','xy2'),('a','a','a','c111','xy3'),('a','a','a','d111','xy4'),
+('a','a','b','e112','xy1'),('a','a','b','f112','xy2'),('a','a','b','g112','xy3'),('a','a','b','h112','xy4'),
+('a','b','a','i121','xy1'),('a','b','a','j121','xy2'),('a','b','a','k121','xy3'),('a','b','a','l121','xy4'),
+('a','b','b','m122','xy1'),('a','b','b','n122','xy2'),('a','b','b','o122','xy3'),('a','b','b','p122','xy4'),
+('b','a','a','a211','xy1'),('b','a','a','b211','xy2'),('b','a','a','c211','xy3'),('b','a','a','d211','xy4'),
+('b','a','b','e212','xy1'),('b','a','b','f212','xy2'),('b','a','b','g212','xy3'),('b','a','b','h212','xy4'),
+('b','b','a','i221','xy1'),('b','b','a','j221','xy2'),('b','b','a','k221','xy3'),('b','b','a','l221','xy4'),
+('b','b','b','m222','xy1'),('b','b','b','n222','xy2'),('b','b','b','o222','xy3'),('b','b','b','p222','xy4'),
+('c','a','a','a311','xy1'),('c','a','a','b311','xy2'),('c','a','a','c311','xy3'),('c','a','a','d311','xy4'),
+('c','a','b','e312','xy1'),('c','a','b','f312','xy2'),('c','a','b','g312','xy3'),('c','a','b','h312','xy4'),
+('c','b','a','i321','xy1'),('c','b','a','j321','xy2'),('c','b','a','k321','xy3'),('c','b','a','l321','xy4'),
+('c','b','b','m322','xy1'),('c','b','b','n322','xy2'),('c','b','b','o322','xy3'),('c','b','b','p322','xy4'),
+('d','a','a','a411','xy1'),('d','a','a','b411','xy2'),('d','a','a','c411','xy3'),('d','a','a','d411','xy4'),
+('d','a','b','e412','xy1'),('d','a','b','f412','xy2'),('d','a','b','g412','xy3'),('d','a','b','h412','xy4'),
+('d','b','a','i421','xy1'),('d','b','a','j421','xy2'),('d','b','a','k421','xy3'),('d','b','a','l421','xy4'),
+('d','b','b','m422','xy1'),('d','b','b','n422','xy2'),('d','b','b','o422','xy3'),('d','b','b','p422','xy4'),
+('a','a','a','a111','xy1'),('a','a','a','b111','xy2'),('a','a','a','c111','xy3'),('a','a','a','d111','xy4'),
+('a','a','b','e112','xy1'),('a','a','b','f112','xy2'),('a','a','b','g112','xy3'),('a','a','b','h112','xy4'),
+('a','b','a','i121','xy1'),('a','b','a','j121','xy2'),('a','b','a','k121','xy3'),('a','b','a','l121','xy4'),
+('a','b','b','m122','xy1'),('a','b','b','n122','xy2'),('a','b','b','o122','xy3'),('a','b','b','p122','xy4'),
+('b','a','a','a211','xy1'),('b','a','a','b211','xy2'),('b','a','a','c211','xy3'),('b','a','a','d211','xy4'),
+('b','a','b','e212','xy1'),('b','a','b','f212','xy2'),('b','a','b','g212','xy3'),('b','a','b','h212','xy4'),
+('b','b','a','i221','xy1'),('b','b','a','j221','xy2'),('b','b','a','k221','xy3'),('b','b','a','l221','xy4'),
+('b','b','b','m222','xy1'),('b','b','b','n222','xy2'),('b','b','b','o222','xy3'),('b','b','b','p222','xy4'),
+('c','a','a','a311','xy1'),('c','a','a','b311','xy2'),('c','a','a','c311','xy3'),('c','a','a','d311','xy4'),
+('c','a','b','e312','xy1'),('c','a','b','f312','xy2'),('c','a','b','g312','xy3'),('c','a','b','h312','xy4'),
+('c','b','a','i321','xy1'),('c','b','a','j321','xy2'),('c','b','a','k321','xy3'),('c','b','a','l321','xy4'),
+('c','b','b','m322','xy1'),('c','b','b','n322','xy2'),('c','b','b','o322','xy3'),('c','b','b','p322','xy4'),
+('d','a','a','a411','xy1'),('d','a','a','b411','xy2'),('d','a','a','c411','xy3'),('d','a','a','d411','xy4'),
+('d','a','b','e412','xy1'),('d','a','b','f412','xy2'),('d','a','b','g412','xy3'),('d','a','b','h412','xy4'),
+('d','b','a','i421','xy1'),('d','b','a','j421','xy2'),('d','b','a','k421','xy3'),('d','b','a','l421','xy4'),
+('d','b','b','m422','xy1'),('d','b','b','n422','xy2'),('d','b','b','o422','xy3'),('d','b','b','p422','xy4');
+create index idx12672_0 on t4 (a1);
+create index idx12672_1 on t4 (a1,a2,b,c);
+create index idx12672_2 on t4 (a1,a2,b);
+analyze table t4;
+Table Op Msg_type Msg_text
+test.t4 analyze status OK
+select distinct a1 from t4 where pk_col not in (1,2,3,4);
+a1
+a
+b
+c
+d
+drop table t4;
+create table t1 (
+a varchar(30), b varchar(30), primary key(a), key(b)
+) engine=innodb;
+select distinct a from t1;
+a
+drop table t1;
+create table t1(a int, key(a)) engine=innodb;
+insert into t1 values(1);
+select a, count(a) from t1 group by a with rollup;
+a count(a)
+1 1
+NULL 1
+drop table t1;
+create table t1 (f1 int, f2 char(1), primary key(f1,f2)) engine=innodb;
+insert into t1 values ( 1,"e"),(2,"a"),( 3,"c"),(4,"d");
+alter table t1 drop primary key, add primary key (f2, f1);
+explain select distinct f1 a, f1 b from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 5 NULL 4 Using index; Using temporary
+explain select distinct f1, f2 from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range NULL PRIMARY 5 NULL 3 Using index for group-by; Using temporary
+drop table t1;
+create table t1(pk int primary key) engine=innodb;
+create view v1 as select pk from t1 where pk < 20;
+insert into t1 values (1), (2), (3), (4);
+select distinct pk from v1;
+pk
+1
+2
+3
+4
+insert into t1 values (5), (6), (7);
+select distinct pk from v1;
+pk
+1
+2
+3
+4
+5
+6
+7
+drop view v1;
+drop table t1;
+End of 5.1 tests
diff --git a/mysql-test/r/handler.result b/mysql-test/r/handler_innodb.result
index 4906111982f..957fc30acef 100644
--- a/mysql-test/r/handler.result
+++ b/mysql-test/r/handler_innodb.result
@@ -1,3 +1,4 @@
+SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1,t3,t4,t5;
create table t1 (a int, b char(10), key a(a), key b(a,b));
insert into t1 values
@@ -137,6 +138,29 @@ a b
handler t2 read last;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
handler t2 close;
+handler t1 open;
+handler t1 read a next;
+a b
+14 aaa
+handler t1 read a next;
+a b
+15 bbb
+handler t1 close;
+handler t1 open;
+handler t1 read a prev;
+a b
+22 iii
+handler t1 read a prev;
+a b
+21 hhh
+handler t1 close;
+handler t1 open as t2;
+handler t2 read first;
+a b
+17 ddd
+alter table t1 engine = InnoDB;
+handler t2 read first;
+ERROR 42S02: Unknown table 't2' in HANDLER
handler t1 open as t2;
drop table t1;
create table t1 (a int);
@@ -144,7 +168,7 @@ insert into t1 values (17);
handler t2 read first;
ERROR 42S02: Unknown table 't2' in HANDLER
handler t1 open as t2;
-alter table t1 engine=MyISAM;
+alter table t1 engine=MEMORY;
handler t2 read first;
ERROR 42S02: Unknown table 't2' in HANDLER
drop table t1;
@@ -214,16 +238,16 @@ insert into t1 values ('');
handler t1 open;
handler t1 read first limit 9;
table_id
-test_test.t1
+test_test.t1
create table t2(table_id char(20) primary key);
insert into t2 values ('test_test.t2');
insert into t2 values ('');
handler t2 open;
handler t2 read first limit 9;
table_id
-test_test.t2
+test_test.t2
use test;
drop table if exists t1;
create table t1(table_id char(20) primary key);
@@ -238,14 +262,14 @@ handler test_test.t1 read first limit 9;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read first limit 9' at line 1
handler t1 read first limit 9;
table_id
-test_test.t1
+test_test.t1
handler test_test.t2 read first limit 9;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read first limit 9' at line 1
handler t2 read first limit 9;
table_id
-test_test.t2
+test_test.t2
handler test_test.t1 close;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'close' at line 1
handler t1 close;
@@ -433,7 +457,7 @@ t1
handler h1_3 read first limit 9;
c1
t1
-alter table t1 engine=MyISAM;
+alter table t1 engine=InnoDB;
handler h1_1 read first limit 9;
ERROR 42S02: Unknown table 'h1_1' in HANDLER
handler h1_2 read first limit 9;
@@ -460,9 +484,19 @@ c1
handler t1 close;
read the result from the other connection
Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
test.t1 optimize status OK
proceed with the normal connection
drop table t1;
+CREATE TABLE t1 ( no1 smallint(5) NOT NULL default '0', no2 int(10) NOT NULL default '0', PRIMARY KEY (no1,no2));
+INSERT INTO t1 VALUES (1,274),(1,275),(2,6),(2,8),(4,1),(4,2);
+HANDLER t1 OPEN;
+HANDLER t1 READ `primary` = (1, 1000);
+no1 no2
+HANDLER t1 READ `primary` PREV;
+no1 no2
+1 275
+DROP TABLE t1;
create table t1 (c1 int);
insert into t1 values (14397);
flush tables with read lock;
@@ -493,15 +527,218 @@ drop table if exists t1;
create table t1 (a int);
handler t1 open as t1_alias;
handler t1_alias read a next;
-ERROR HY000: Key 'a' doesn't exist in table 't1_alias'
+ERROR 42000: Key 'a' doesn't exist in table 't1_alias'
handler t1_alias READ a next where inexistent > 0;
ERROR 42S22: Unknown column 'inexistent' in 'field list'
handler t1_alias read a next;
-ERROR HY000: Key 'a' doesn't exist in table 't1_alias'
+ERROR 42000: Key 'a' doesn't exist in table 't1_alias'
handler t1_alias READ a next where inexistent > 0;
ERROR 42S22: Unknown column 'inexistent' in 'field list'
handler t1_alias close;
drop table t1;
+drop table if exists t1,t2;
+create table t1 (c1 int);
+create table t2 (c1 int);
+insert into t1 values (1);
+insert into t2 values (2);
+connection: default
+handler t1 open;
+handler t1 read first;
+c1
+1
+connection: flush
+flush tables;;
+connection: default
+handler t2 open;
+handler t2 read first;
+c1
+2
+handler t1 read next;
+c1
+1
+handler t1 close;
+handler t2 close;
+drop table t1,t2;
+drop table if exists t1,t2;
+create table t1 (c1 int);
+connection: default
+handler t1 open;
+handler t1 read first;
+c1
+connection: flush
+rename table t1 to t2;;
+connection: default
+handler t2 open;
+handler t2 read first;
+c1
+handler t1 read next;
+ERROR 42S02: Table 'test.t1' doesn't exist
+handler t1 close;
+handler t2 close;
+drop table t2;
+drop table if exists t1;
+create temporary table t1 (a int, b char(1), key a(a), key b(a,b));
+insert into t1 values (0,"a"),(1,"b"),(2,"c"),(3,"d"),(4,"e"),
+(5,"f"),(6,"g"),(7,"h"),(8,"i"),(9,"j");
+select a,b from t1;
+a b
+0 a
+1 b
+2 c
+3 d
+4 e
+5 f
+6 g
+7 h
+8 i
+9 j
+handler t1 open as a1;
+handler a1 read a first;
+a b
+0 a
+handler a1 read a next;
+a b
+1 b
+handler a1 read a next;
+a b
+2 c
+select a,b from t1;
+ERROR HY000: Can't reopen table: 'a1'
+handler a1 read a prev;
+a b
+1 b
+handler a1 read a prev;
+a b
+0 a
+handler a1 read a=(6) where b="g";
+a b
+6 g
+handler a1 close;
+select a,b from t1;
+a b
+0 a
+1 b
+2 c
+3 d
+4 e
+5 f
+6 g
+7 h
+8 i
+9 j
+handler t1 open as a2;
+handler a2 read a first;
+a b
+0 a
+handler a2 read a last;
+a b
+9 j
+handler a2 read a prev;
+a b
+8 i
+handler a2 close;
+drop table t1;
+drop table if exists t1,t2;
+create table t1 (a int);
+handler t1 open as t1_alias;
+drop table t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+flush tables;
+drop table t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+handler t1_alias close;
+drop table t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+handler t1_alias read first;
+a
+drop table t1;
+handler t1_alias read next;
+ERROR 42S02: Unknown table 't1_alias' in HANDLER
+create table t1 (a int);
+create temporary table t2 (a int, key(a));
+handler t1 open as a1;
+handler t2 open as a2;
+handler a2 read a first;
+a
+drop table t1, t2;
+handler a2 read a next;
+ERROR 42S02: Unknown table 'a2' in HANDLER
+handler a1 close;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+create table t1 (a int, key(a));
+create table t2 like t1;
+handler t1 open as a1;
+handler t2 open as a2;
+handler a1 read a first;
+a
+handler a2 read a first;
+a
+alter table t1 add b int;
+handler a1 close;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+handler a2 close;
+drop table t1, t2;
+create table t1 (a int, key(a));
+handler t1 open as a1;
+handler a1 read a first;
+a
+rename table t1 to t2;
+handler a1 read a first;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+drop table t2;
+create table t1 (a int, key(a));
+create table t2 like t1;
+handler t1 open as a1;
+handler t2 open as a2;
+handler a1 read a first;
+a
+handler a2 read a first;
+a
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
+test.t1 optimize status OK
+handler a1 close;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+handler a2 close;
+drop table t1, t2;
+create table t1 (a int, b char(1), key a(a), key b(a,b));
+insert into t1 values (0,"a"),(1,"b"),(2,"c"),(3,"d"),(4,"e"),
+(5,"f"),(6,"g"),(7,"h"),(8,"i"),(9,"j");
+handler t1 open;
+handler t1 read a first;
+a b
+0 a
+handler t1 read a next;
+a b
+1 b
+flush tables;
+handler t1 read a next;
+a b
+0 a
+handler t1 read a next;
+a b
+1 b
+flush tables with read lock;
+handler t1 read a next;
+a b
+0 a
+unlock tables;
+drop table t1;
+handler t1 read a next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+drop table if exists t1;
+create table t1 (a int);
+insert into t1 values (1);
+handler t1 open;
+alter table t1 engine=memory;
+handler t1 read a next;
+ERROR HY000: Table storage engine for 't1' doesn't have this option
+handler t1 close;
+drop table t1;
USE information_schema;
HANDLER COLUMNS OPEN;
ERROR HY000: Incorrect usage of HANDLER OPEN and information_schema
diff --git a/mysql-test/r/handler_myisam.result b/mysql-test/r/handler_myisam.result
new file mode 100644
index 00000000000..90a1bdfe6be
--- /dev/null
+++ b/mysql-test/r/handler_myisam.result
@@ -0,0 +1,759 @@
+SET SESSION STORAGE_ENGINE = MyISAM;
+drop table if exists t1,t3,t4,t5;
+create table t1 (a int, b char(10), key a(a), key b(a,b));
+insert into t1 values
+(17,"ddd"),(18,"eee"),(19,"fff"),(19,"yyy"),
+(14,"aaa"),(15,"bbb"),(16,"ccc"),(16,"xxx"),
+(20,"ggg"),(21,"hhh"),(22,"iii");
+handler t1 open as t2;
+handler t2 read a=(SELECT 1);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT 1)' at line 1
+handler t2 read a first;
+a b
+14 aaa
+handler t2 read a next;
+a b
+15 bbb
+handler t2 read a next;
+a b
+16 ccc
+handler t2 read a prev;
+a b
+15 bbb
+handler t2 read a last;
+a b
+22 iii
+handler t2 read a prev;
+a b
+21 hhh
+handler t2 read a prev;
+a b
+20 ggg
+handler t2 read a first;
+a b
+14 aaa
+handler t2 read a prev;
+a b
+handler t2 read a last;
+a b
+22 iii
+handler t2 read a prev;
+a b
+21 hhh
+handler t2 read a next;
+a b
+22 iii
+handler t2 read a next;
+a b
+handler t2 read a=(15);
+a b
+15 bbb
+handler t2 read a=(16);
+a b
+16 ccc
+handler t2 read a=(19,"fff");
+ERROR 42000: Too many key parts specified; max 1 parts allowed
+handler t2 read b=(19,"fff");
+a b
+19 fff
+handler t2 read b=(19,"yyy");
+a b
+19 yyy
+handler t2 read b=(19);
+a b
+19 fff
+handler t1 read a last;
+ERROR 42S02: Unknown table 't1' in HANDLER
+handler t2 read a=(11);
+a b
+handler t2 read a>=(11);
+a b
+14 aaa
+handler t2 read a=(18);
+a b
+18 eee
+handler t2 read a>=(18);
+a b
+18 eee
+handler t2 read a>(18);
+a b
+19 fff
+handler t2 read a<=(18);
+a b
+18 eee
+handler t2 read a<(18);
+a b
+17 ddd
+handler t2 read a first limit 5;
+a b
+14 aaa
+15 bbb
+16 ccc
+16 xxx
+17 ddd
+handler t2 read a next limit 3;
+a b
+18 eee
+19 fff
+19 yyy
+handler t2 read a prev limit 10;
+a b
+19 fff
+18 eee
+17 ddd
+16 xxx
+16 ccc
+15 bbb
+14 aaa
+handler t2 read a>=(16) limit 4;
+a b
+16 ccc
+16 xxx
+17 ddd
+18 eee
+handler t2 read a>=(16) limit 2,2;
+a b
+17 ddd
+18 eee
+handler t2 read a last limit 3;
+a b
+22 iii
+21 hhh
+20 ggg
+handler t2 read a=(19);
+a b
+19 fff
+handler t2 read a=(19) where b="yyy";
+a b
+19 yyy
+handler t2 read first;
+a b
+17 ddd
+handler t2 read next;
+a b
+18 eee
+handler t2 read next;
+a b
+19 fff
+handler t2 read last;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+handler t2 close;
+handler t1 open;
+handler t1 read a next;
+a b
+14 aaa
+handler t1 read a next;
+a b
+15 bbb
+handler t1 close;
+handler t1 open;
+handler t1 read a prev;
+a b
+22 iii
+handler t1 read a prev;
+a b
+21 hhh
+handler t1 close;
+handler t1 open as t2;
+handler t2 read first;
+a b
+17 ddd
+alter table t1 engine = MyISAM;
+handler t2 read first;
+ERROR 42S02: Unknown table 't2' in HANDLER
+handler t1 open as t2;
+drop table t1;
+create table t1 (a int);
+insert into t1 values (17);
+handler t2 read first;
+ERROR 42S02: Unknown table 't2' in HANDLER
+handler t1 open as t2;
+alter table t1 engine=MEMORY;
+handler t2 read first;
+ERROR 42S02: Unknown table 't2' in HANDLER
+drop table t1;
+create table t1 (a int);
+insert into t1 values (1),(2),(3),(4),(5),(6);
+delete from t1 limit 2;
+handler t1 open;
+handler t1 read first;
+a
+3
+handler t1 read first limit 1,1;
+a
+4
+handler t1 read first limit 2,2;
+a
+5
+6
+delete from t1 limit 3;
+handler t1 read first;
+a
+6
+drop table t1;
+create table t1(a int, index(a));
+insert into t1 values (1), (2), (3);
+handler t1 open;
+handler t1 read a=(W);
+ERROR 42S22: Unknown column 'W' in 'field list'
+handler t1 read a=(a);
+ERROR HY000: Incorrect arguments to HANDLER ... READ
+drop table t1;
+create table t1 (a char(5));
+insert into t1 values ("Ok");
+handler t1 open as t;
+handler t read first;
+a
+Ok
+use mysql;
+handler t read first;
+a
+Ok
+handler t close;
+handler test.t1 open as t;
+handler t read first;
+a
+Ok
+handler t close;
+use test;
+drop table t1;
+create table t1 ( a int, b int, INDEX a (a) );
+insert into t1 values (1,2), (2,1);
+handler t1 open;
+handler t1 read a=(1) where b=2;
+a b
+1 2
+handler t1 read a=(1) where b=3;
+a b
+handler t1 read a=(1) where b=1;
+a b
+handler t1 close;
+drop table t1;
+drop database if exists test_test;
+create database test_test;
+use test_test;
+create table t1(table_id char(20) primary key);
+insert into t1 values ('test_test.t1');
+insert into t1 values ('');
+handler t1 open;
+handler t1 read first limit 9;
+table_id
+test_test.t1
+
+create table t2(table_id char(20) primary key);
+insert into t2 values ('test_test.t2');
+insert into t2 values ('');
+handler t2 open;
+handler t2 read first limit 9;
+table_id
+test_test.t2
+
+use test;
+drop table if exists t1;
+create table t1(table_id char(20) primary key);
+insert into t1 values ('test.t1');
+insert into t1 values ('');
+handler t1 open;
+ERROR 42000: Not unique table/alias: 't1'
+use test;
+handler test.t1 read first limit 9;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read first limit 9' at line 1
+handler test_test.t1 read first limit 9;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read first limit 9' at line 1
+handler t1 read first limit 9;
+table_id
+test_test.t1
+
+handler test_test.t2 read first limit 9;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read first limit 9' at line 1
+handler t2 read first limit 9;
+table_id
+test_test.t2
+
+handler test_test.t1 close;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'close' at line 1
+handler t1 close;
+drop table test_test.t1;
+handler test_test.t2 close;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'close' at line 1
+handler t2 close;
+drop table test_test.t2;
+drop database test_test;
+use test;
+handler test.t1 close;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'close' at line 1
+handler t1 close;
+ERROR 42S02: Unknown table 't1' in HANDLER
+drop table test.t1;
+drop database if exists test_test;
+drop table if exists t1;
+drop table if exists t2;
+drop table if exists t3;
+create database test_test;
+use test_test;
+create table t1 (c1 char(20));
+insert into t1 values ('test_test.t1');
+create table t3 (c1 char(20));
+insert into t3 values ('test_test.t3');
+handler t1 open;
+handler t1 read first limit 9;
+c1
+test_test.t1
+handler t1 open h1;
+handler h1 read first limit 9;
+c1
+test_test.t1
+use test;
+create table t1 (c1 char(20));
+create table t2 (c1 char(20));
+create table t3 (c1 char(20));
+insert into t1 values ('t1');
+insert into t2 values ('t2');
+insert into t3 values ('t3');
+handler t1 open;
+ERROR 42000: Not unique table/alias: 't1'
+handler t2 open t1;
+ERROR 42000: Not unique table/alias: 't1'
+handler t3 open t1;
+ERROR 42000: Not unique table/alias: 't1'
+handler t1 read first limit 9;
+c1
+test_test.t1
+handler test.t1 close;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'close' at line 1
+handler test.t1 open h1;
+ERROR 42000: Not unique table/alias: 'h1'
+handler test_test.t1 open h1;
+ERROR 42000: Not unique table/alias: 'h1'
+handler test_test.t3 open h3;
+handler test.t1 open h2;
+handler t1 read first limit 9;
+c1
+test_test.t1
+handler h1 read first limit 9;
+c1
+test_test.t1
+handler h2 read first limit 9;
+c1
+t1
+handler h3 read first limit 9;
+c1
+test_test.t3
+handler h2 read first limit 9;
+c1
+t1
+handler test.h1 close;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'close' at line 1
+handler t1 close;
+handler h1 close;
+handler h2 close;
+handler t1 read first limit 9;
+ERROR 42S02: Unknown table 't1' in HANDLER
+handler h1 read first limit 9;
+ERROR 42S02: Unknown table 'h1' in HANDLER
+handler h2 read first limit 9;
+ERROR 42S02: Unknown table 'h2' in HANDLER
+handler h3 read first limit 9;
+c1
+test_test.t3
+handler h3 read first limit 9;
+c1
+test_test.t3
+use test_test;
+handler h3 read first limit 9;
+c1
+test_test.t3
+handler test.h3 read first limit 9;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'read first limit 9' at line 1
+handler h3 close;
+use test;
+drop table t3;
+drop table t2;
+drop table t1;
+drop database test_test;
+create table t1 (c1 char(20));
+insert into t1 values ("t1");
+handler t1 open as h1;
+handler h1 read first limit 9;
+c1
+t1
+create table t2 (c1 char(20));
+insert into t2 values ("t2");
+handler t2 open as h2;
+handler h2 read first limit 9;
+c1
+t2
+create table t3 (c1 char(20));
+insert into t3 values ("t3");
+handler t3 open as h3;
+handler h3 read first limit 9;
+c1
+t3
+create table t4 (c1 char(20));
+insert into t4 values ("t4");
+handler t4 open as h4;
+handler h4 read first limit 9;
+c1
+t4
+create table t5 (c1 char(20));
+insert into t5 values ("t5");
+handler t5 open as h5;
+handler h5 read first limit 9;
+c1
+t5
+alter table t1 engine=MyISAM;
+handler h1 read first limit 9;
+ERROR 42S02: Unknown table 'h1' in HANDLER
+handler h2 read first limit 9;
+c1
+t2
+handler h3 read first limit 9;
+c1
+t3
+handler h4 read first limit 9;
+c1
+t4
+handler h5 read first limit 9;
+c1
+t5
+alter table t5 engine=MyISAM;
+handler h1 read first limit 9;
+ERROR 42S02: Unknown table 'h1' in HANDLER
+handler h2 read first limit 9;
+c1
+t2
+handler h3 read first limit 9;
+c1
+t3
+handler h4 read first limit 9;
+c1
+t4
+handler h5 read first limit 9;
+ERROR 42S02: Unknown table 'h5' in HANDLER
+alter table t3 engine=MyISAM;
+handler h1 read first limit 9;
+ERROR 42S02: Unknown table 'h1' in HANDLER
+handler h2 read first limit 9;
+c1
+t2
+handler h3 read first limit 9;
+ERROR 42S02: Unknown table 'h3' in HANDLER
+handler h4 read first limit 9;
+c1
+t4
+handler h5 read first limit 9;
+ERROR 42S02: Unknown table 'h5' in HANDLER
+handler h2 close;
+handler h4 close;
+handler t1 open as h1_1;
+handler t1 open as h1_2;
+handler t1 open as h1_3;
+handler h1_1 read first limit 9;
+c1
+t1
+handler h1_2 read first limit 9;
+c1
+t1
+handler h1_3 read first limit 9;
+c1
+t1
+alter table t1 engine=MyISAM;
+handler h1_1 read first limit 9;
+ERROR 42S02: Unknown table 'h1_1' in HANDLER
+handler h1_2 read first limit 9;
+ERROR 42S02: Unknown table 'h1_2' in HANDLER
+handler h1_3 read first limit 9;
+ERROR 42S02: Unknown table 'h1_3' in HANDLER
+drop table t1;
+drop table t2;
+drop table t3;
+drop table t4;
+drop table t5;
+create table t1 (c1 int);
+insert into t1 values (1);
+handler t1 open;
+handler t1 read first;
+c1
+1
+send the below to another connection, do not wait for the result
+optimize table t1;
+proceed with the normal connection
+handler t1 read next;
+c1
+1
+handler t1 close;
+read the result from the other connection
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+proceed with the normal connection
+drop table t1;
+CREATE TABLE t1 ( no1 smallint(5) NOT NULL default '0', no2 int(10) NOT NULL default '0', PRIMARY KEY (no1,no2));
+INSERT INTO t1 VALUES (1,274),(1,275),(2,6),(2,8),(4,1),(4,2);
+HANDLER t1 OPEN;
+HANDLER t1 READ `primary` = (1, 1000);
+no1 no2
+HANDLER t1 READ `primary` PREV;
+no1 no2
+1 275
+DROP TABLE t1;
+create table t1 (c1 int);
+insert into t1 values (14397);
+flush tables with read lock;
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+send the below to another connection, do not wait for the result
+drop table t1;
+proceed with the normal connection
+select * from t1;
+c1
+14397
+unlock tables;
+read the result from the other connection
+proceed with the normal connection
+select * from t1;
+ERROR 42S02: Table 'test.t1' doesn't exist
+drop table if exists t1;
+Warnings:
+Note 1051 Unknown table 't1'
+drop table if exists t1;
+create table t1 (a int) ENGINE=MEMORY;
+--> client 2
+handler t1 open;
+ERROR HY000: Table storage engine for 't1' doesn't have this option
+--> client 1
+drop table t1;
+drop table if exists t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+handler t1_alias read a next;
+ERROR 42000: Key 'a' doesn't exist in table 't1_alias'
+handler t1_alias READ a next where inexistent > 0;
+ERROR 42S22: Unknown column 'inexistent' in 'field list'
+handler t1_alias read a next;
+ERROR 42000: Key 'a' doesn't exist in table 't1_alias'
+handler t1_alias READ a next where inexistent > 0;
+ERROR 42S22: Unknown column 'inexistent' in 'field list'
+handler t1_alias close;
+drop table t1;
+drop table if exists t1,t2;
+create table t1 (c1 int);
+create table t2 (c1 int);
+insert into t1 values (1);
+insert into t2 values (2);
+connection: default
+handler t1 open;
+handler t1 read first;
+c1
+1
+connection: flush
+flush tables;;
+connection: default
+handler t2 open;
+handler t2 read first;
+c1
+2
+handler t1 read next;
+c1
+1
+handler t1 close;
+handler t2 close;
+drop table t1,t2;
+drop table if exists t1,t2;
+create table t1 (c1 int);
+connection: default
+handler t1 open;
+handler t1 read first;
+c1
+connection: flush
+rename table t1 to t2;;
+connection: default
+handler t2 open;
+handler t2 read first;
+c1
+handler t1 read next;
+ERROR 42S02: Table 'test.t1' doesn't exist
+handler t1 close;
+handler t2 close;
+drop table t2;
+drop table if exists t1;
+create temporary table t1 (a int, b char(1), key a(a), key b(a,b));
+insert into t1 values (0,"a"),(1,"b"),(2,"c"),(3,"d"),(4,"e"),
+(5,"f"),(6,"g"),(7,"h"),(8,"i"),(9,"j");
+select a,b from t1;
+a b
+0 a
+1 b
+2 c
+3 d
+4 e
+5 f
+6 g
+7 h
+8 i
+9 j
+handler t1 open as a1;
+handler a1 read a first;
+a b
+0 a
+handler a1 read a next;
+a b
+1 b
+handler a1 read a next;
+a b
+2 c
+select a,b from t1;
+ERROR HY000: Can't reopen table: 'a1'
+handler a1 read a prev;
+a b
+1 b
+handler a1 read a prev;
+a b
+0 a
+handler a1 read a=(6) where b="g";
+a b
+6 g
+handler a1 close;
+select a,b from t1;
+a b
+0 a
+1 b
+2 c
+3 d
+4 e
+5 f
+6 g
+7 h
+8 i
+9 j
+handler t1 open as a2;
+handler a2 read a first;
+a b
+0 a
+handler a2 read a last;
+a b
+9 j
+handler a2 read a prev;
+a b
+8 i
+handler a2 close;
+drop table t1;
+drop table if exists t1,t2;
+create table t1 (a int);
+handler t1 open as t1_alias;
+drop table t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+flush tables;
+drop table t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+handler t1_alias close;
+drop table t1;
+create table t1 (a int);
+handler t1 open as t1_alias;
+handler t1_alias read first;
+a
+drop table t1;
+handler t1_alias read next;
+ERROR 42S02: Unknown table 't1_alias' in HANDLER
+create table t1 (a int);
+create temporary table t2 (a int, key(a));
+handler t1 open as a1;
+handler t2 open as a2;
+handler a2 read a first;
+a
+drop table t1, t2;
+handler a2 read a next;
+ERROR 42S02: Unknown table 'a2' in HANDLER
+handler a1 close;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+create table t1 (a int, key(a));
+create table t2 like t1;
+handler t1 open as a1;
+handler t2 open as a2;
+handler a1 read a first;
+a
+handler a2 read a first;
+a
+alter table t1 add b int;
+handler a1 close;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+handler a2 close;
+drop table t1, t2;
+create table t1 (a int, key(a));
+handler t1 open as a1;
+handler a1 read a first;
+a
+rename table t1 to t2;
+handler a1 read a first;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+drop table t2;
+create table t1 (a int, key(a));
+create table t2 like t1;
+handler t1 open as a1;
+handler t2 open as a2;
+handler a1 read a first;
+a
+handler a2 read a first;
+a
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status Table is already up to date
+handler a1 close;
+ERROR 42S02: Unknown table 'a1' in HANDLER
+handler a2 close;
+drop table t1, t2;
+create table t1 (a int, b char(1), key a(a), key b(a,b));
+insert into t1 values (0,"a"),(1,"b"),(2,"c"),(3,"d"),(4,"e"),
+(5,"f"),(6,"g"),(7,"h"),(8,"i"),(9,"j");
+handler t1 open;
+handler t1 read a first;
+a b
+0 a
+handler t1 read a next;
+a b
+1 b
+flush tables;
+handler t1 read a next;
+a b
+0 a
+handler t1 read a next;
+a b
+1 b
+flush tables with read lock;
+handler t1 read a next;
+a b
+0 a
+unlock tables;
+drop table t1;
+handler t1 read a next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+drop table if exists t1;
+create table t1 (a int);
+insert into t1 values (1);
+handler t1 open;
+alter table t1 engine=memory;
+handler t1 read a next;
+ERROR HY000: Table storage engine for 't1' doesn't have this option
+handler t1 close;
+drop table t1;
+USE information_schema;
+HANDLER COLUMNS OPEN;
+ERROR HY000: Incorrect usage of HANDLER OPEN and information_schema
+USE test;
+#
+# BUG #46456: HANDLER OPEN + TRUNCATE + DROP (temporary) TABLE, crash
+#
+CREATE TABLE t1 AS SELECT 1 AS f1;
+HANDLER t1 OPEN;
+TRUNCATE t1;
+HANDLER t1 READ FIRST;
+ERROR 42S02: Unknown table 't1' in HANDLER
+DROP TABLE t1;
+CREATE TEMPORARY TABLE t1 AS SELECT 1 AS f1;
+HANDLER t1 OPEN;
+TRUNCATE t1;
+HANDLER t1 READ FIRST;
+ERROR 42S02: Unknown table 't1' in HANDLER
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/have_innodb.require b/mysql-test/r/have_binlog_format_mixed.require
index 48a764a6c58..4b752cbb314 100644
--- a/mysql-test/r/have_innodb.require
+++ b/mysql-test/r/have_binlog_format_mixed.require
@@ -1,2 +1,2 @@
Variable_name Value
-have_innodb YES
+binlog_format MIXED
diff --git a/mysql-test/r/have_archive.require b/mysql-test/r/have_binlog_format_row.require
index c4b4ba24fcd..09ad32dbb9a 100644
--- a/mysql-test/r/have_archive.require
+++ b/mysql-test/r/have_binlog_format_row.require
@@ -1,2 +1,2 @@
Variable_name Value
-have_archive YES
+binlog_format ROW
diff --git a/mysql-test/r/have_binlog_format_statement.require b/mysql-test/r/have_binlog_format_statement.require
new file mode 100644
index 00000000000..81e2e31cd6c
--- /dev/null
+++ b/mysql-test/r/have_binlog_format_statement.require
@@ -0,0 +1,2 @@
+Variable_name Value
+binlog_format STATEMENT
diff --git a/mysql-test/r/have_blackhole.require b/mysql-test/r/have_blackhole.require
deleted file mode 100644
index 15029a460f6..00000000000
--- a/mysql-test/r/have_blackhole.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_blackhole_engine YES
diff --git a/mysql-test/r/have_bug25714.require b/mysql-test/r/have_bug25714.require
deleted file mode 100644
index 5acc378dcf7..00000000000
--- a/mysql-test/r/have_bug25714.require
+++ /dev/null
@@ -1,2 +0,0 @@
-have_bug25714_exe
-1
diff --git a/mysql-test/r/have_cp1251.require b/mysql-test/r/have_cp1251.require
new file mode 100644
index 00000000000..465e8338084
--- /dev/null
+++ b/mysql-test/r/have_cp1251.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+cp1251_general_ci cp1251 51 Yes 0
diff --git a/mysql-test/r/have_cp866.require b/mysql-test/r/have_cp866.require
new file mode 100644
index 00000000000..da2a3e2f05e
--- /dev/null
+++ b/mysql-test/r/have_cp866.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+cp866_general_ci cp866 36 Yes 0
diff --git a/mysql-test/r/have_csv.require b/mysql-test/r/have_csv.require
deleted file mode 100644
index cc2fb28289c..00000000000
--- a/mysql-test/r/have_csv.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_csv YES
diff --git a/mysql-test/r/have_debug_sync.require b/mysql-test/r/have_debug_sync.require
new file mode 100644
index 00000000000..c2090bc5657
--- /dev/null
+++ b/mysql-test/r/have_debug_sync.require
@@ -0,0 +1,2 @@
+debug_sync
+1
diff --git a/mysql-test/r/have_udf.require b/mysql-test/r/have_dynamic_loading.require
index 2d21f65e4ac..2d21f65e4ac 100644
--- a/mysql-test/r/have_udf.require
+++ b/mysql-test/r/have_dynamic_loading.require
diff --git a/mysql-test/r/have_example_plugin.require b/mysql-test/r/have_example_plugin.require
new file mode 100644
index 00000000000..291b8231cbb
--- /dev/null
+++ b/mysql-test/r/have_example_plugin.require
@@ -0,0 +1,2 @@
+have_example_plugin
+1
diff --git a/mysql-test/r/have_exampledb.require b/mysql-test/r/have_exampledb.require
deleted file mode 100644
index 29d0cf8b1a6..00000000000
--- a/mysql-test/r/have_exampledb.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_example_engine YES
diff --git a/mysql-test/r/have_federated_db.require b/mysql-test/r/have_federated_db.require
deleted file mode 100644
index f4c521a8f35..00000000000
--- a/mysql-test/r/have_federated_db.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_federated_engine YES
diff --git a/mysql-test/r/have_koi8r.require b/mysql-test/r/have_koi8r.require
new file mode 100644
index 00000000000..b109b9ae520
--- /dev/null
+++ b/mysql-test/r/have_koi8r.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+koi8r_general_ci koi8r 7 Yes 0
diff --git a/mysql-test/r/have_ndb.require b/mysql-test/r/have_ndb.require
deleted file mode 100644
index f0402b72c6a..00000000000
--- a/mysql-test/r/have_ndb.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_ndbcluster YES
diff --git a/mysql-test/r/have_ndb_extra.require b/mysql-test/r/have_ndb_extra.require
new file mode 100644
index 00000000000..8f7c125196a
--- /dev/null
+++ b/mysql-test/r/have_ndb_extra.require
@@ -0,0 +1,3 @@
+select 1;
+1
+1
diff --git a/mysql-test/r/have_ndb_status_ok.require b/mysql-test/r/have_ndb_status_ok.require
deleted file mode 100644
index 8a82871234b..00000000000
--- a/mysql-test/r/have_ndb_status_ok.require
+++ /dev/null
@@ -1,2 +0,0 @@
-ndb_status_ok
-YES
diff --git a/mysql-test/r/have_ndbapi_examples.require b/mysql-test/r/have_ndbapi_examples.require
new file mode 100644
index 00000000000..924d2d51708
--- /dev/null
+++ b/mysql-test/r/have_ndbapi_examples.require
@@ -0,0 +1,2 @@
+have_ndb_example
+1
diff --git a/mysql-test/r/have_outfile.require b/mysql-test/r/have_outfile.require
index 9fc2f8fdb5a..71137a69a91 100644
--- a/mysql-test/r/have_outfile.require
+++ b/mysql-test/r/have_outfile.require
@@ -1,3 +1,3 @@
-load_file(concat(@tmpdir,"/outfile.test"))
+load_file(concat(@tmpdir,'/outfile.test'))
Outfile OK
diff --git a/mysql-test/r/have_partition.require b/mysql-test/r/have_partition.require
new file mode 100644
index 00000000000..324c04eed6f
--- /dev/null
+++ b/mysql-test/r/have_partition.require
@@ -0,0 +1,2 @@
+Variable_name Value
+have_partitioning YES
diff --git a/mysql-test/r/have_profiling.require b/mysql-test/r/have_profiling.require
deleted file mode 100644
index 54caeba1dae..00000000000
--- a/mysql-test/r/have_profiling.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_profiling YES
diff --git a/mysql-test/r/have_raid.require b/mysql-test/r/have_raid.require
deleted file mode 100644
index 8390f4dbb85..00000000000
--- a/mysql-test/r/have_raid.require
+++ /dev/null
@@ -1,2 +0,0 @@
-Variable_name Value
-have_raid YES
diff --git a/mysql-test/r/have_simple_parser.require b/mysql-test/r/have_simple_parser.require
new file mode 100644
index 00000000000..0e023bd6983
--- /dev/null
+++ b/mysql-test/r/have_simple_parser.require
@@ -0,0 +1,2 @@
+have_simple_parser
+1
diff --git a/mysql-test/r/have_utf8.require b/mysql-test/r/have_utf8.require
new file mode 100644
index 00000000000..71f8ccfff47
--- /dev/null
+++ b/mysql-test/r/have_utf8.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+utf8_general_ci utf8 33 Yes Yes 1
diff --git a/mysql-test/r/having.result b/mysql-test/r/having.result
index bc8596100f8..9c3cc8fc89e 100644
--- a/mysql-test/r/having.result
+++ b/mysql-test/r/having.result
@@ -9,8 +9,8 @@ select count(a) as b from t1 where a=0 having b >=0;
b
0
explain extended select count(a) as b from t1 where a=0 having b >=0;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
Warnings:
Note 1003 select count('0') AS `b` from `test`.`t1` where 0 having (`b` >= 0)
drop table t1;
diff --git a/mysql-test/r/heap.result b/mysql-test/r/heap.result
index 906c431b834..ddf675e2f73 100644
--- a/mysql-test/r/heap.result
+++ b/mysql-test/r/heap.result
@@ -166,7 +166,7 @@ alter table t1 add column new_col char(1) not null, add key (btn,new_col), drop
update t1 set new_col=left(btn,1);
explain select * from t1 where btn="a";
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL btn NULL NULL NULL 11 Using where
+1 SIMPLE t1 ALL btn NULL NULL NULL 14 Using where
explain select * from t1 where btn="a" and new_col="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref btn btn 11 const,const 2 Using where
@@ -195,7 +195,7 @@ SELECT * FROM t1 WHERE b<=>NULL;
a b
99 NULL
INSERT INTO t1 VALUES (1,3);
-ERROR 23000: Duplicate entry '3' for key 1
+ERROR 23000: Duplicate entry '3' for key 'b'
DROP TABLE t1;
CREATE TABLE t1 (
a int default NULL,
@@ -263,41 +263,41 @@ concat('*',v,'*',c,'*',t,'*')
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` varchar(50) default NULL
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
create table t2 like t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` varchar(50) default NULL
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
create table t3 select * from t1;
show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` varchar(50) default NULL
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
alter table t1 modify c varchar(10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` varchar(10) default NULL,
- `t` varchar(50) default NULL
+ `v` varchar(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
alter table t1 modify v char(10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
- `t` varchar(50) default NULL
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
alter table t1 modify t varchar(10);
Warnings:
@@ -305,9 +305,9 @@ Warning 1265 Data truncated for column 't' at row 2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
- `t` varchar(10) default NULL
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` varchar(10) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
select concat('*',v,'*',c,'*',t,'*') from t1;
concat('*',v,'*',c,'*',t,'*')
@@ -318,9 +318,9 @@ create table t1 (v varchar(10), c char(10), t varchar(50), key(v), key(c), key(t
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` varchar(50) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL,
KEY `v` (`v`),
KEY `c` (`c`),
KEY `t` (`t`(10))
@@ -384,7 +384,7 @@ explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a '
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref v v 13 const 10 Using where
alter table t1 add unique(v);
-ERROR 23000: Duplicate entry '{ ' for key 1
+ERROR 23000: Duplicate entry '{ ' for key 'v_2'
select concat('*',v,'*',c,'*',t,'*') as qq from t1 where v='a' order by length(concat('*',v,'*',c,'*',t,'*'));
qq
*a*a*a*
@@ -536,16 +536,16 @@ drop table t1;
create table t1 (a char(10), unique (a));
insert into t1 values ('a');
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a' for key 1
+ERROR 23000: Duplicate entry 'a' for key 'a'
alter table t1 modify a varchar(10);
insert into t1 values ('a '),('a '),('a '),('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
update t1 set a='a ' where a like 'a ';
update t1 set a='a ' where a like 'a ';
drop table t1;
@@ -553,12 +553,12 @@ create table t1 (v varchar(10), c char(10), t varchar(50), key using btree (v),
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` varchar(50) default NULL,
- KEY `v` USING BTREE (`v`),
- KEY `c` USING BTREE (`c`),
- KEY `t` USING BTREE (`t`(10))
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL,
+ KEY `v` (`v`) USING BTREE,
+ KEY `c` (`c`) USING BTREE,
+ KEY `t` (`t`(10)) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
select count(*) from t1;
count(*)
@@ -607,7 +607,7 @@ explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a '
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref v v 13 const # Using where
alter table t1 add unique(v);
-ERROR 23000: Duplicate entry '{ ' for key 1
+ERROR 23000: Duplicate entry '{ ' for key 'v_2'
select concat('*',v,'*',c,'*',t,'*') as qq from t1 where v='a' order by length(concat('*',v,'*',c,'*',t,'*'));
qq
*a*a*a*
@@ -627,16 +627,16 @@ drop table t1;
create table t1 (a char(10), unique using btree (a)) engine=heap;
insert into t1 values ('a');
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a' for key 1
+ERROR 23000: Duplicate entry 'a' for key 'a'
alter table t1 modify a varchar(10);
insert into t1 values ('a '),('a '),('a '),('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
update t1 set a='a ' where a like 'a ';
update t1 set a='a ' where a like 'a ';
drop table t1;
@@ -644,9 +644,9 @@ create table t1 (v varchar(10), c char(10), t varchar(50), key(v(5)), key(c(5)),
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
- `t` varchar(50) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` varchar(50) DEFAULT NULL,
KEY `v` (`v`(5)),
KEY `c` (`c`(5)),
KEY `t` (`t`(5))
@@ -656,7 +656,7 @@ create table t1 (v varchar(65530), key(v(10)));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(65530) default NULL,
+ `v` varchar(65530) DEFAULT NULL,
KEY `v` (`v`(10))
) ENGINE=MEMORY DEFAULT CHARSET=latin1
insert into t1 values(repeat('a',65530));
@@ -699,7 +699,7 @@ ERROR 42000: Incorrect table definition; there can be only one auto column and i
create table t1 (c char(255), primary key(c(90)));
insert into t1 values ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
insert into t1 values ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
-ERROR 23000: Duplicate entry 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl' for key 1
+ERROR 23000: Duplicate entry 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl' for key 'PRIMARY'
drop table t1;
CREATE TABLE t1 (a int, key(a)) engine=heap;
insert into t1 values (0);
@@ -731,3 +731,10 @@ SELECT COUNT(*) FROM t1 WHERE c=REPEAT('a',256);
COUNT(*)
2
DROP TABLE t1;
+CREATE TABLE t1(c1 VARCHAR(100), c2 INT) ENGINE=MEMORY;
+INSERT INTO t1 VALUES('', 0);
+ALTER TABLE t1 MODIFY c1 VARCHAR(101);
+SELECT c2 FROM t1;
+c2
+0
+DROP TABLE t1;
diff --git a/mysql-test/r/heap_btree.result b/mysql-test/r/heap_btree.result
index 65ced2bd24e..7ad0f212d99 100644
--- a/mysql-test/r/heap_btree.result
+++ b/mysql-test/r/heap_btree.result
@@ -224,7 +224,7 @@ SELECT * FROM t1 WHERE b<=>NULL;
a b
99 NULL
INSERT INTO t1 VALUES (1,3);
-ERROR 23000: Duplicate entry '3' for key 1
+ERROR 23000: Duplicate entry '3' for key 'b'
DROP TABLE t1;
CREATE TABLE t1 (a int, b int, c int, key using BTREE (a, b, c)) engine=heap;
INSERT INTO t1 VALUES (1, NULL, NULL), (1, 1, NULL), (1, NULL, 1);
diff --git a/mysql-test/r/heap_hash.result b/mysql-test/r/heap_hash.result
index cb47573b502..bae49af462f 100644
--- a/mysql-test/r/heap_hash.result
+++ b/mysql-test/r/heap_hash.result
@@ -166,7 +166,7 @@ alter table t1 add column new_col char(1) not null, add key using HASH (btn,new_
update t1 set new_col=left(btn,1);
explain select * from t1 where btn="a";
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL btn NULL NULL NULL 11 Using where
+1 SIMPLE t1 ALL btn NULL NULL NULL 14 Using where
explain select * from t1 where btn="a" and new_col="a";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref btn btn 11 const,const 2 Using where
@@ -195,7 +195,7 @@ SELECT * FROM t1 WHERE b<=>NULL;
a b
99 NULL
INSERT INTO t1 VALUES (1,3);
-ERROR 23000: Duplicate entry '3' for key 1
+ERROR 23000: Duplicate entry '3' for key 'b'
DROP TABLE t1;
CREATE TABLE t1 (a int not null, primary key using HASH (a)) engine=heap;
INSERT into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11);
@@ -372,13 +372,13 @@ col2 VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
UNIQUE KEY key1 USING HASH (col1, col2)) ENGINE=MEMORY;
INSERT INTO t1 VALUES('A', 'A');
INSERT INTO t1 VALUES('A ', 'A ');
-ERROR 23000: Duplicate entry 'A -A ' for key 1
+ERROR 23000: Duplicate entry 'A -A ' for key 'key1'
DROP TABLE t1;
CREATE TABLE t1(col1 VARCHAR(32) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
col2 VARCHAR(32) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
UNIQUE KEY key1 USING HASH (col1, col2)) ENGINE=MEMORY;
INSERT INTO t1 VALUES('A', 'A');
INSERT INTO t1 VALUES('A ', 'A ');
-ERROR 23000: Duplicate entry 'A -A ' for key 1
+ERROR 23000: Duplicate entry 'A -A ' for key 'key1'
DROP TABLE t1;
End of 5.0 tests
diff --git a/mysql-test/r/help.result b/mysql-test/r/help.result
index de8ed249528..16719cc8193 100644
--- a/mysql-test/r/help.result
+++ b/mysql-test/r/help.result
@@ -257,3 +257,12 @@ delete from mysql.help_relation where help_keyword_id=@keyword1_id and help_topi
delete from mysql.help_relation where help_keyword_id=@keyword2_id and help_topic_id=@topic1_id;
delete from mysql.help_relation where help_keyword_id=@keyword3_id and help_topic_id=@topic3_id;
delete from mysql.help_relation where help_keyword_id=@keyword3_id and help_topic_id=@topic4_id;
+End of 4.1 tests.
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (i INT);
+LOCK TABLES t1 WRITE;
+HELP no_such_topic;
+name is_it_category
+UNLOCK TABLES;
+DROP TABLE t1;
+End of 5.1 tests.
diff --git a/mysql-test/r/im_daemon_life_cycle.result b/mysql-test/r/im_daemon_life_cycle.result
deleted file mode 100644
index 1a0741e7caf..00000000000
--- a/mysql-test/r/im_daemon_life_cycle.result
+++ /dev/null
@@ -1,26 +0,0 @@
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-SHOW INSTANCES;
-instance_name status
-mysqld1 online
-mysqld2 offline
-Killing the process...
-Waiting...
-Success: the process was restarted.
-Success: server is ready to accept connection on socket.
-
---------------------------------------------------------------------
--- Test for BUG#12751
---------------------------------------------------------------------
-START INSTANCE mysqld2;
-Success: the process has been started.
-Killing the process...
-Waiting...
-Success: the process was restarted.
-Success: server is ready to accept connection on socket.
-SHOW INSTANCE STATUS mysqld1;
-instance_name status version
-mysqld1 STATE VERSION
-STOP INSTANCE mysqld2;
-Success: the process has been stopped.
diff --git a/mysql-test/r/im_life_cycle.result b/mysql-test/r/im_life_cycle.result
deleted file mode 100644
index a9ad85d5947..00000000000
--- a/mysql-test/r/im_life_cycle.result
+++ /dev/null
@@ -1,73 +0,0 @@
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-SHOW INSTANCES;
-instance_name status
-mysqld1 online
-mysqld2 offline
-
---------------------------------------------------------------------
--- 1.1.2.
---------------------------------------------------------------------
-START INSTANCE mysqld2;
-Success: the process has been started.
-SHOW VARIABLES LIKE 'port';
-Variable_name Value
-port IM_MYSQLD2_PORT
-
---------------------------------------------------------------------
--- 1.1.3.
---------------------------------------------------------------------
-STOP INSTANCE mysqld2;
-Success: the process has been stopped.
-
---------------------------------------------------------------------
--- 1.1.4.
---------------------------------------------------------------------
-START INSTANCE mysqld3;
-ERROR HY000: Bad instance name. Check that the instance with such a name exists
-START INSTANCE mysqld1;
-ERROR HY000: The instance is already started
-
---------------------------------------------------------------------
--- 1.1.5.
---------------------------------------------------------------------
-STOP INSTANCE mysqld3;
-ERROR HY000: Bad instance name. Check that the instance with such a name exists
-
---------------------------------------------------------------------
--- 1.1.6.
---------------------------------------------------------------------
-Killing the process...
-Waiting...
-Success: the process was restarted.
-SHOW INSTANCES;
-instance_name status
-mysqld1 online
-mysqld2 offline
-
---------------------------------------------------------------------
--- 1.1.7.
---------------------------------------------------------------------
-START INSTANCE mysqld2;
-Success: the process has been started.
-Killing the process...
-Waiting...
-Success: the process was killed.
-
---------------------------------------------------------------------
--- 1.1.8.
---------------------------------------------------------------------
-SHOW INSTANCE STATUS;
-ERROR 42000: You have an error in your command syntax. Check the manual that corresponds to your MySQL Instance Manager version for the right syntax to use
-
---------------------------------------------------------------------
--- BUG#12813
---------------------------------------------------------------------
-START INSTANCE mysqld1,mysqld2,mysqld3;
-ERROR 42000: You have an error in your command syntax. Check the manual that corresponds to your MySQL Instance Manager version for the right syntax to use
-STOP INSTANCE mysqld1,mysqld2,mysqld3;
-ERROR 42000: You have an error in your command syntax. Check the manual that corresponds to your MySQL Instance Manager version for the right syntax to use
-STOP INSTANCE mysqld2;
-ERROR HY000: Cannot stop instance. Perhaps the instance is not started, or was started manually, so IM cannot find the pidfile.
-End of 5.0 tests
diff --git a/mysql-test/r/im_options_set.result b/mysql-test/r/im_options_set.result
deleted file mode 100644
index f7b7e8eaef7..00000000000
--- a/mysql-test/r/im_options_set.result
+++ /dev/null
@@ -1,22 +0,0 @@
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-SHOW INSTANCES;
-instance_name status
-mysqld1 online
-mysqld2 offline
-SET mysqld1.server_id = 11;
-server_id =11
-server_id = 2
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-SET mysqld2.server_id = 12;
-server_id =11
-server_id =12
-FLUSH INSTANCES;
-server_id =11
-server_id =12
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
diff --git a/mysql-test/r/im_options_unset.result b/mysql-test/r/im_options_unset.result
deleted file mode 100644
index 2ab775e611a..00000000000
--- a/mysql-test/r/im_options_unset.result
+++ /dev/null
@@ -1,17 +0,0 @@
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-SHOW INSTANCES;
-instance_name status
-mysqld1 online
-mysqld2 offline
-UNSET mysqld1.server_id;
-server_id = 2
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-UNSET mysqld2.server_id;
-FLUSH INSTANCES;
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
diff --git a/mysql-test/r/im_utils.result b/mysql-test/r/im_utils.result
deleted file mode 100644
index 626f24b4635..00000000000
--- a/mysql-test/r/im_utils.result
+++ /dev/null
@@ -1,96 +0,0 @@
-SHOW VARIABLES LIKE 'server_id';
-Variable_name Value
-server_id 1
-SHOW INSTANCES;
-instance_name status
-mysqld1 online
-mysqld2 offline
-SHOW INSTANCE OPTIONS mysqld1;
-option_name value
-instance_name VALUE
-mysqld-path VALUE
-socket VALUE
-pid-file VALUE
-port VALUE
-datadir VALUE
-log VALUE
-log-error VALUE
-log-slow-queries VALUE
-language VALUE
-character-sets-dir VALUE
-basedir VALUE
-server_id VALUE
-skip-stack-trace VALUE
-skip-innodb VALUE
-skip-ndbcluster VALUE
-skip-bdb VALUE
-SHOW INSTANCE OPTIONS mysqld2;
-option_name value
-instance_name VALUE
-mysqld-path VALUE
-nonguarded VALUE
-socket VALUE
-pid-file VALUE
-port VALUE
-datadir VALUE
-log VALUE
-log-error VALUE
-log-slow-queries VALUE
-language VALUE
-character-sets-dir VALUE
-basedir VALUE
-server_id VALUE
-skip-stack-trace VALUE
-skip-innodb VALUE
-skip-ndbcluster VALUE
-skip-bdb VALUE
-START INSTANCE mysqld2;
-Success: the process has been started.
-STOP INSTANCE mysqld2;
-Success: the process has been stopped.
-SHOW mysqld1 LOG FILES;
-Logfile Path File size
-ERROR LOG PATH FILE_SIZE
-GENERAL LOG PATH FILE_SIZE
-SLOW LOG PATH FILE_SIZE
-SHOW mysqld2 LOG FILES;
-Logfile Path File size
-ERROR LOG PATH FILE_SIZE
-GENERAL LOG PATH FILE_SIZE
-SLOW LOG PATH FILE_SIZE
-SHOW mysqld1 LOG ERROR 10;
-Log
-LOG_DATA
-SHOW mysqld1 LOG SLOW 10;
-Log
-LOG_DATA
-SHOW mysqld1 LOG GENERAL 10;
-Log
-LOG_DATA
-SHOW mysqld1 LOG ERROR 10, 2;
-Log
-LOG_DATA
-SHOW mysqld1 LOG SLOW 10, 2;
-Log
-LOG_DATA
-SHOW mysqld1 LOG GENERAL 10, 2;
-Log
-LOG_DATA
-SHOW mysqld2 LOG ERROR 10;
-Log
-LOG_DATA
-SHOW mysqld2 LOG SLOW 10;
-Log
-LOG_DATA
-SHOW mysqld2 LOG GENERAL 10;
-Log
-LOG_DATA
-SHOW mysqld2 LOG ERROR 10, 2;
-Log
-LOG_DATA
-SHOW mysqld2 LOG SLOW 10, 2;
-Log
-LOG_DATA
-SHOW mysqld2 LOG GENERAL 10, 2;
-Log
-LOG_DATA
diff --git a/mysql-test/r/index_merge.result b/mysql-test/r/index_merge.result
deleted file mode 100644
index 4b3b0fb54fc..00000000000
--- a/mysql-test/r/index_merge.result
+++ /dev/null
@@ -1,582 +0,0 @@
-drop table if exists t0, t1, t2, t3, t4;
-create table t0
-(
-key1 int not null,
-INDEX i1(key1)
-);
-alter table t0 add key2 int not null, add index i2(key2);
-alter table t0 add key3 int not null, add index i3(key3);
-alter table t0 add key4 int not null, add index i4(key4);
-alter table t0 add key5 int not null, add index i5(key5);
-alter table t0 add key6 int not null, add index i6(key6);
-alter table t0 add key7 int not null, add index i7(key7);
-alter table t0 add key8 int not null, add index i8(key8);
-update t0 set key2=key1,key3=key1,key4=key1,key5=key1,key6=key1,key7=key1,key8=1024-key1;
-analyze table t0;
-Table Op Msg_type Msg_text
-test.t0 analyze status OK
-explain select * from t0 where key1 < 3 or key1 > 1020;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 range i1 i1 4 NULL 78 Using where
-explain
-select * from t0 where key1 < 3 or key2 > 1020;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 45 Using sort_union(i1,i2); Using where
-select * from t0 where key1 < 3 or key2 > 1020;
-key1 key2 key3 key4 key5 key6 key7 key8
-1 1 1 1 1 1 1 1023
-2 2 2 2 2 2 2 1022
-1021 1021 1021 1021 1021 1021 1021 3
-1022 1022 1022 1022 1022 1022 1022 2
-1023 1023 1023 1023 1023 1023 1023 1
-1024 1024 1024 1024 1024 1024 1024 0
-explain select * from t0 where key1 < 3 or key2 <4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 7 Using sort_union(i1,i2); Using where
-explain
-select * from t0 where (key1 > 30 and key1<35) or (key2 >32 and key2 < 40);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 11 Using sort_union(i1,i2); Using where
-select * from t0 where (key1 > 30 and key1<35) or (key2 >32 and key2 < 40);
-key1 key2 key3 key4 key5 key6 key7 key8
-31 31 31 31 31 31 31 993
-32 32 32 32 32 32 32 992
-33 33 33 33 33 33 33 991
-34 34 34 34 34 34 34 990
-35 35 35 35 35 35 35 989
-36 36 36 36 36 36 36 988
-37 37 37 37 37 37 37 987
-38 38 38 38 38 38 38 986
-39 39 39 39 39 39 39 985
-explain select * from t0 ignore index (i2) where key1 < 3 or key2 <4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1 NULL NULL NULL 1024 Using where
-explain select * from t0 where (key1 < 3 or key2 <4) and key3 = 50;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ref i1,i2,i3 i3 4 const 1 Using where
-explain select * from t0 use index (i1,i2) where (key1 < 3 or key2 <4) and key3 = 50;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 7 Using sort_union(i1,i2); Using where
-explain select * from t0 where (key1 > 1 or key2 > 2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1,i2 NULL NULL NULL 1024 Using where
-explain select * from t0 force index (i1,i2) where (key1 > 1 or key2 > 2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 1024 Using sort_union(i1,i2); Using where
-explain
-select * from t0 where key1<3 or key2<3 or (key1>5 and key1<8) or
-(key1>10 and key1<12) or (key2>100 and key2<110);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 17 Using sort_union(i1,i2); Using where
-explain select * from t0 where key2 = 45 or key1 <=> null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 range i1,i2 i2 4 NULL 1 Using where
-explain select * from t0 where key2 = 45 or key1 is not null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1,i2 NULL NULL NULL 1024 Using where
-explain select * from t0 where key2 = 45 or key1 is null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ref i2 i2 4 const 1
-explain select * from t0 where key2=10 or key3=3 or key4 <=> null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i2,i3,i4 i2,i3 4,4 NULL 2 Using union(i2,i3); Using where
-explain select * from t0 where key2=10 or key3=3 or key4 is null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i2,i3 i2,i3 4,4 NULL 2 Using union(i2,i3); Using where
-explain select key1 from t0 where (key1 <=> null) or (key2 < 5) or
-(key3=10) or (key4 <=> null);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i4 i2,i3 4,4 NULL 6 Using sort_union(i2,i3); Using where
-explain select key1 from t0 where (key1 <=> null) or (key1 < 5) or
-(key3=10) or (key4 <=> null);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i3,i4 i1,i3 4,4 NULL 6 Using sort_union(i1,i3); Using where
-explain select * from t0 where
-(key1 < 3 or key2 < 3) and (key3 < 4 or key4 < 4) and (key5 < 5 or key6 < 5);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i4,i5,i6 i1,i2 4,4 NULL 6 Using sort_union(i1,i2); Using where
-explain
-select * from t0 where (key1 < 3 or key2 < 6) and (key1 < 7 or key3 < 4);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3 i1,i2 4,4 NULL 9 Using sort_union(i1,i2); Using where
-select * from t0 where (key1 < 3 or key2 < 6) and (key1 < 7 or key3 < 4);
-key1 key2 key3 key4 key5 key6 key7 key8
-1 1 1 1 1 1 1 1023
-2 2 2 2 2 2 2 1022
-3 3 3 3 3 3 3 1021
-4 4 4 4 4 4 4 1020
-5 5 5 5 5 5 5 1019
-explain select * from t0 where
-(key1 < 3 or key2 < 3) and (key3 < 4 or key4 < 4) and (key5 < 2 or key6 < 2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i4,i5,i6 i1,i2 4,4 NULL 6 Using sort_union(i1,i2); Using where
-explain select * from t0 where
-(key1 < 3 or key2 < 3) and (key3 < 100);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 range i1,i2,i3 i3 4 NULL 95 Using where
-explain select * from t0 where
-(key1 < 3 or key2 < 3) and (key3 < 1000);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1,i2,i3 NULL NULL NULL 1024 Using where
-explain select * from t0 where
-((key1 < 4 or key2 < 4) and (key2 <5 or key3 < 4))
-or
-key2 > 5;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1,i2,i3 NULL NULL NULL 1024 Using where
-explain select * from t0 where
-((key1 < 4 or key2 < 4) and (key2 <5 or key3 < 4))
-or
-key1 < 7;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3 i1,i2 4,4 NULL 10 Using sort_union(i1,i2); Using where
-select * from t0 where
-((key1 < 4 or key2 < 4) and (key2 <5 or key3 < 4))
-or
-key1 < 7;
-key1 key2 key3 key4 key5 key6 key7 key8
-1 1 1 1 1 1 1 1023
-2 2 2 2 2 2 2 1022
-3 3 3 3 3 3 3 1021
-4 4 4 4 4 4 4 1020
-5 5 5 5 5 5 5 1019
-6 6 6 6 6 6 6 1018
-explain select * from t0 where
-((key1 < 4 or key2 < 4) and (key3 <5 or key5 < 4))
-or
-((key5 < 5 or key6 < 6) and (key7 <7 or key8 < 4));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i5,i6,i7,i8 i1,i2,i5,i6 4,4,4,4 NULL 19 Using sort_union(i1,i2,i5,i6); Using where
-explain select * from t0 where
-((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
-or
-((key7 <7 or key8 < 4) and (key5 < 5 or key6 < 6));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i5,i6,i7,i8 i3,i5,i7,i8 4,4,4,4 NULL 20 Using sort_union(i3,i5,i7,i8); Using where
-explain select * from t0 where
-((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
-or
-((key3 <7 or key5 < 2) and (key5 < 5 or key6 < 6));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i5,i6 i3,i5 4,4 NULL 11 Using sort_union(i3,i5); Using where
-explain select * from t0 where
-((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
-or
-(((key3 <7 and key7 < 6) or key5 < 2) and (key5 < 5 or key6 < 6));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i5,i6,i7 i3,i5 4,4 NULL 11 Using sort_union(i3,i5); Using where
-explain select * from t0 where
-((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
-or
-((key3 >=5 or key5 < 2) and (key5 < 5 or key6 < 6));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1,i2,i3,i5,i6 NULL NULL NULL 1024 Using where
-explain select * from t0 force index(i1, i2, i3, i4, i5, i6 ) where
-((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
-or
-((key3 >=5 or key5 < 2) and (key5 < 5 or key6 < 6));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2,i3,i5,i6 i3,i5 0,4 NULL 1024 Using sort_union(i3,i5); Using where
-select * from t0 where key1 < 5 or key8 < 4 order by key1;
-key1 key2 key3 key4 key5 key6 key7 key8
-1 1 1 1 1 1 1 1023
-2 2 2 2 2 2 2 1022
-3 3 3 3 3 3 3 1021
-4 4 4 4 4 4 4 1020
-1021 1021 1021 1021 1021 1021 1021 3
-1022 1022 1022 1022 1022 1022 1022 2
-1023 1023 1023 1023 1023 1023 1023 1
-1024 1024 1024 1024 1024 1024 1024 0
-explain
-select * from t0 where key1 < 5 or key8 < 4 order by key1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i8 i1,i8 4,4 NULL 9 Using sort_union(i1,i8); Using where; Using filesort
-create table t2 like t0;
-insert into t2 select * from t0;
-alter table t2 add index i1_3(key1, key3);
-alter table t2 add index i2_3(key2, key3);
-alter table t2 drop index i1;
-alter table t2 drop index i2;
-alter table t2 add index i321(key3, key2, key1);
-explain select key3 from t2 where key1 = 100 or key2 = 100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 index_merge i1_3,i2_3 i1_3,i2_3 4,4 NULL 2 Using sort_union(i1_3,i2_3); Using where
-explain select key3 from t2 where key1 <100 or key2 < 100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 index i1_3,i2_3 i321 12 NULL 1024 Using where; Using index
-explain select key7 from t2 where key1 <100 or key2 < 100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL i1_3,i2_3 NULL NULL NULL 1024 Using where
-create table t4 (
-key1a int not null,
-key1b int not null,
-key2 int not null,
-key2_1 int not null,
-key2_2 int not null,
-key3 int not null,
-index i1a (key1a, key1b),
-index i1b (key1b, key1a),
-index i2_1(key2, key2_1),
-index i2_2(key2, key2_1)
-);
-insert into t4 select key1,key1,key1 div 10, key1 % 10, key1 % 10, key1 from t0;
-select * from t4 where key1a = 3 or key1b = 4;
-key1a key1b key2 key2_1 key2_2 key3
-3 3 0 3 3 3
-4 4 0 4 4 4
-explain select * from t4 where key1a = 3 or key1b = 4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t4 index_merge i1a,i1b i1a,i1b 4,4 NULL 2 Using sort_union(i1a,i1b); Using where
-explain select * from t4 where key2 = 1 and (key2_1 = 1 or key3 = 5);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t4 ref i2_1,i2_2 i2_1 4 const 10 Using where
-explain select * from t4 where key2 = 1 and (key2_1 = 1 or key2_2 = 5);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t4 ref i2_1,i2_2 i2_1 4 const 10 Using where
-explain select * from t4 where key2_1 = 1 or key2_2 = 5;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t4 ALL NULL NULL NULL NULL 1024 Using where
-create table t1 like t0;
-insert into t1 select * from t0;
-explain select * from t0 left join t1 on (t0.key1=t1.key1)
-where t0.key1=3 or t0.key2=4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
-1 SIMPLE t1 ref i1 i1 4 test.t0.key1 1
-select * from t0 left join t1 on (t0.key1=t1.key1)
-where t0.key1=3 or t0.key2=4;
-key1 key2 key3 key4 key5 key6 key7 key8 key1 key2 key3 key4 key5 key6 key7 key8
-3 3 3 3 3 3 3 1021 3 3 3 3 3 3 3 1021
-4 4 4 4 4 4 4 1020 4 4 4 4 4 4 4 1020
-explain
-select * from t0,t1 where (t0.key1=t1.key1) and ( t0.key1=3 or t0.key2=4);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
-1 SIMPLE t1 ref i1 i1 4 test.t0.key1 1
-explain
-select * from t0,t1 where (t0.key1=t1.key1) and
-(t0.key1=3 or t0.key2=4) and t1.key1<200;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL i1,i2 NULL NULL NULL 1024 Using where
-1 SIMPLE t1 ref i1 i1 4 test.t0.key1 1
-explain
-select * from t0,t1 where (t0.key1=t1.key1) and
-(t0.key1=3 or t0.key2<4) and t1.key1=2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ref i1,i2 i1 4 const 1 Using where
-1 SIMPLE t1 ref i1 i1 4 const 1
-explain select * from t0,t1 where t0.key1 = 5 and
-(t1.key1 = t0.key1 or t1.key8 = t0.key1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ref i1 i1 4 const 1
-1 SIMPLE t1 index_merge i1,i8 i1,i8 4,4 NULL 2 Using union(i1,i8); Using where
-explain select * from t0,t1 where t0.key1 < 3 and
-(t1.key1 = t0.key1 or t1.key8 = t0.key1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 range i1 i1 4 NULL 3 Using where
-1 SIMPLE t1 ALL i1,i8 NULL NULL NULL 1024 Range checked for each record (index map: 0x81)
-explain select * from t1 where key1=3 or key2=4
-union select * from t1 where key1<4 or key3=5;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
-2 UNION t1 index_merge i1,i3 i1,i3 4,4 NULL 5 Using sort_union(i1,i3); Using where
-NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
-explain select * from (select * from t1 where key1 = 3 or key2 =3) as Z where key8 >5;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> system NULL NULL NULL NULL 1
-2 DERIVED t1 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where; Using index
-create table t3 like t0;
-insert into t3 select * from t0;
-alter table t3 add key9 int not null, add index i9(key9);
-alter table t3 add keyA int not null, add index iA(keyA);
-alter table t3 add keyB int not null, add index iB(keyB);
-alter table t3 add keyC int not null, add index iC(keyC);
-update t3 set key9=key1,keyA=key1,keyB=key1,keyC=key1;
-explain select * from t3 where
-key1=1 or key2=2 or key3=3 or key4=4 or
-key5=5 or key6=6 or key7=7 or key8=8 or
-key9=9 or keyA=10 or keyB=11 or keyC=12;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index_merge i1,i2,i3,i4,i5,i6,i7,i8,i9,iA,iB,iC i1,i2,i3,i4,i5,i6,i7,i8,i9,iA,iB,iC 4,4,4,4,4,4,4,4,4,4,4,4 NULL 12 Using union(i1,i2,i3,i4,i5,i6,i7,i8,i9,iA,iB,iC); Using where
-select * from t3 where
-key1=1 or key2=2 or key3=3 or key4=4 or
-key5=5 or key6=6 or key7=7 or key8=8 or
-key9=9 or keyA=10 or keyB=11 or keyC=12;
-key1 key2 key3 key4 key5 key6 key7 key8 key9 keyA keyB keyC
-1 1 1 1 1 1 1 1023 1 1 1 1
-2 2 2 2 2 2 2 1022 2 2 2 2
-3 3 3 3 3 3 3 1021 3 3 3 3
-4 4 4 4 4 4 4 1020 4 4 4 4
-5 5 5 5 5 5 5 1019 5 5 5 5
-6 6 6 6 6 6 6 1018 6 6 6 6
-7 7 7 7 7 7 7 1017 7 7 7 7
-9 9 9 9 9 9 9 1015 9 9 9 9
-10 10 10 10 10 10 10 1014 10 10 10 10
-11 11 11 11 11 11 11 1013 11 11 11 11
-12 12 12 12 12 12 12 1012 12 12 12 12
-1016 1016 1016 1016 1016 1016 1016 8 1016 1016 1016 1016
-explain select * from t0 where key1 < 3 or key2 < 4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 7 Using sort_union(i1,i2); Using where
-select * from t0 where key1 < 3 or key2 < 4;
-key1 key2 key3 key4 key5 key6 key7 key8
-1 1 1 1 1 1 1 1023
-2 2 2 2 2 2 2 1022
-3 3 3 3 3 3 3 1021
-update t0 set key8=123 where key1 < 3 or key2 < 4;
-select * from t0 where key1 < 3 or key2 < 4;
-key1 key2 key3 key4 key5 key6 key7 key8
-1 1 1 1 1 1 1 123
-2 2 2 2 2 2 2 123
-3 3 3 3 3 3 3 123
-delete from t0 where key1 < 3 or key2 < 4;
-select * from t0 where key1 < 3 or key2 < 4;
-key1 key2 key3 key4 key5 key6 key7 key8
-select count(*) from t0;
-count(*)
-1021
-drop table t4;
-create table t4 (a int);
-insert into t4 values (1),(4),(3);
-set @save_join_buffer_size=@@join_buffer_size;
-set join_buffer_size= 4000;
-Warnings:
-Warning 1292 Truncated incorrect join_buffer_size value: '4000'
-explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
-where (A.key1 < 500000 or A.key2 < 3)
-and (B.key1 < 500000 or B.key2 < 3);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE A index_merge i1,i2 i1,i2 4,4 NULL 1013 Using sort_union(i1,i2); Using where
-1 SIMPLE B index_merge i1,i2 i1,i2 4,4 NULL 1013 Using sort_union(i1,i2); Using where
-select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
-where (A.key1 < 500000 or A.key2 < 3)
-and (B.key1 < 500000 or B.key2 < 3);
-max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-10240
-update t0 set key1=1;
-explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
-where (A.key1 = 1 or A.key2 = 1)
-and (B.key1 = 1 or B.key2 = 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE A index_merge i1,i2 i1,i2 4,4 NULL 1020 Using union(i1,i2); Using where
-1 SIMPLE B index_merge i1,i2 i1,i2 4,4 NULL 1020 Using union(i1,i2); Using where
-select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
-where (A.key1 = 1 or A.key2 = 1)
-and (B.key1 = 1 or B.key2 = 1);
-max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-8194
-alter table t0 add filler1 char(200), add filler2 char(200), add filler3 char(200);
-update t0 set key2=1, key3=1, key4=1, key5=1,key6=1,key7=1 where key7 < 500;
-explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-from t0 as A, t0 as B
-where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
-and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key7 = 1 or B.key8=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE A index_merge i1,i2,i3,i4,i5,i6,i7?,i8 i2,i3,i4,i5,i6,i7?,i8 X NULL # Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
-1 SIMPLE B index_merge i1,i2,i3,i4,i5,i6,i7?,i8 i2,i3,i4,i5,i6,i7?,i8 X NULL # Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
-select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-from t0 as A, t0 as B
-where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
-and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key7 = 1 or B.key8=1);
-max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
-8186
-set join_buffer_size= @save_join_buffer_size;
-drop table t0, t1, t2, t3, t4;
-CREATE TABLE t1 (
-cola char(3) not null, colb char(3) not null, filler char(200),
-key(cola), key(colb)
-);
-INSERT INTO t1 VALUES ('foo','bar', 'ZZ'),('fuz','baz', 'ZZ');
-OPTIMIZE TABLE t1;
-Table Op Msg_type Msg_text
-test.t1 optimize status OK
-select count(*) from t1;
-count(*)
-8704
-explain select * from t1 WHERE cola = 'foo' AND colb = 'bar';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge cola,colb cola,colb 3,3 NULL 24 Using intersect(cola,colb); Using where
-explain select * from t1 force index(cola,colb) WHERE cola = 'foo' AND colb = 'bar';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge cola,colb cola,colb 3,3 NULL 24 Using intersect(cola,colb); Using where
-drop table t1;
-create table t0 (a int);
-insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
-create table t1 (
-a int, b int,
-filler1 char(200), filler2 char(200),
-key(a),key(b)
-);
-insert into t1 select @v:= A.a, @v, 't1', 'filler2' from t0 A, t0 B, t0 C;
-create table t2 like t1;
-create table t3 (
-a int, b int,
-filler1 char(200), filler2 char(200),
-key(a),key(b)
-) engine=merge union=(t1,t2);
-explain select * from t1 where a=1 and b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge a,b a,b 5,5 NULL # Using intersect(a,b); Using where
-explain select * from t3 where a=1 and b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index_merge a,b a,b 5,5 NULL # Using intersect(a,b); Using where
-drop table t3;
-drop table t0, t1, t2;
-CREATE TABLE t1(a INT);
-INSERT INTO t1 VALUES(1);
-CREATE TABLE t2(a INT, b INT, dummy CHAR(16) DEFAULT '', KEY(a), KEY(b));
-INSERT INTO t2(a,b) VALUES
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
-(1,2);
-LOCK TABLES t1 WRITE, t2 WRITE;
-INSERT INTO t2(a,b) VALUES(1,2);
-SELECT t2.a FROM t1,t2 WHERE t2.b=2 AND t2.a=1;
-a
-1
-1
-UNLOCK TABLES;
-DROP TABLE t1, t2;
-CREATE TABLE `t1` (
-`a` int(11) DEFAULT NULL,
-`filler` char(200) DEFAULT NULL,
-`b` int(11) DEFAULT NULL,
-KEY `a` (`a`),
-KEY `b` (`b`)
-) ENGINE=MEMORY DEFAULT CHARSET=latin1;
-insert into t1 values
-(0, 'filler', 0), (1, 'filler', 1), (2, 'filler', 2), (3, 'filler', 3),
-(4, 'filler', 4), (5, 'filler', 5), (6, 'filler', 6), (7, 'filler', 7),
-(8, 'filler', 8), (9, 'filler', 9), (0, 'filler', 0), (1, 'filler', 1),
-(2, 'filler', 2), (3, 'filler', 3), (4, 'filler', 4), (5, 'filler', 5),
-(6, 'filler', 6), (7, 'filler', 7), (8, 'filler', 8), (9, 'filler', 9),
-(10, 'filler', 10), (11, 'filler', 11), (12, 'filler', 12), (13, 'filler', 13),
-(14, 'filler', 14), (15, 'filler', 15), (16, 'filler', 16), (17, 'filler', 17),
-(18, 'filler', 18), (19, 'filler', 19), (4, '5 ', 0), (5, '4 ', 0),
-(4, '4 ', 0), (4, 'qq ', 5), (5, 'qq ', 4), (4, 'zz ', 4);
-create table t2(
-`a` int(11) DEFAULT NULL,
-`filler` char(200) DEFAULT NULL,
-`b` int(11) DEFAULT NULL,
-KEY USING BTREE (`a`),
-KEY USING BTREE (`b`)
-) ENGINE=MEMORY DEFAULT CHARSET=latin1;
-insert into t2 select * from t1;
-must use sort-union rather than union:
-explain select * from t1 where a=4 or b=4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge a,b a,b 5,5 NULL # Using sort_union(a,b); Using where
-select * from t1 where a=4 or b=4;
-a filler b
-4 4 0
-4 5 0
-4 filler 4
-4 filler 4
-4 qq 5
-4 zz 4
-5 qq 4
-select * from t1 ignore index(a,b) where a=4 or b=4;
-a filler b
-4 4 0
-4 5 0
-4 filler 4
-4 filler 4
-4 qq 5
-4 zz 4
-5 qq 4
-must use union, not sort-union:
-explain select * from t2 where a=4 or b=4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 index_merge a,b a,b 5,5 NULL # Using union(a,b); Using where
-select * from t2 where a=4 or b=4;
-a filler b
-4 4 0
-4 5 0
-4 filler 4
-4 filler 4
-4 qq 5
-4 zz 4
-5 qq 4
-drop table t1, t2;
-CREATE TABLE t1 (a varchar(8), b set('a','b','c','d','e','f','g','h'),
-KEY b(b), KEY a(a));
-INSERT INTO t1 VALUES ('y',''), ('z','');
-SELECT b,a from t1 WHERE (b!='c' AND b!='f' && b!='h') OR
-(a='pure-S') OR (a='DE80337a') OR (a='DE80799');
-b a
- y
- z
-DROP TABLE t1;
-#
-# BUG#40974: Incorrect query results when using clause evaluated using range check
-#
-create table t0 (a int);
-insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
-create table t1 (a int);
-insert into t1 values (1),(2);
-create table t2(a int, b int);
-insert into t2 values (1,1), (2, 1000);
-create table t3 (a int, b int, filler char(100), key(a), key(b));
-insert into t3 select 1000, 1000,'filler' from t0 A, t0 B, t0 C;
-insert into t3 values (1,1,'data');
-insert into t3 values (1,1,'data');
-The plan should be ALL/ALL/ALL(Range checked for each record (index map: 0x3)
-explain select * from t1
-where exists (select 1 from t2, t3
-where t2.a=t1.a and (t3.a=t2.b or t3.b=t2.b or t3.b=t2.b+1));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 2 Using where
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 Using where
-2 DEPENDENT SUBQUERY t3 ALL a,b NULL NULL NULL 1002 Range checked for each record (index map: 0x3)
-select * from t1
-where exists (select 1 from t2, t3
-where t2.a=t1.a and (t3.a=t2.b or t3.b=t2.b or t3.b=t2.b+1));
-a
-1
-2
-drop table t0, t1, t2, t3;
-#
-# BUG#44810: index merge and order by with low sort_buffer_size
-# crashes server!
-#
-CREATE TABLE t1(a VARCHAR(128),b VARCHAR(128),KEY(A),KEY(B));
-INSERT INTO t1 VALUES (REPEAT('a',128),REPEAT('b',128));
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-SET SESSION sort_buffer_size=1;
-Warnings:
-Warning 1292 Truncated incorrect sort_buffer_size value: '1'
-EXPLAIN
-SELECT * FROM t1 FORCE INDEX(a,b) WHERE a LIKE 'a%' OR b LIKE 'b%'
-ORDER BY a,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge a,b a,b 131,131 NULL 64 Using sort_union(a,b); Using where; Using filesort
-SELECT * FROM t1 FORCE INDEX(a,b) WHERE a LIKE 'a%' OR b LIKE 'b%'
-ORDER BY a,b;
-SET SESSION sort_buffer_size=DEFAULT;
-DROP TABLE t1;
-End of 5.0 tests
diff --git a/mysql-test/r/index_merge_bdb.result b/mysql-test/r/index_merge_bdb.result
deleted file mode 100644
index 3113bf95d3a..00000000000
--- a/mysql-test/r/index_merge_bdb.result
+++ /dev/null
@@ -1,136 +0,0 @@
-drop table if exists t1;
-create table t1 (
-pk int primary key,
-key1 int,
-key2 int,
-filler char(200),
-filler2 char(200),
-index(key1),
-index(key2)
-) engine=bdb;
-select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 );
-pk key1 key2 filler filler2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-9 9 9 filler-data filler-data-2
-10 10 10 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-5 5 5 filler-data filler-data-2
-6 6 6 filler-data filler-data-2
-7 7 7 filler-data filler-data-2
-8 8 8 filler-data filler-data-2
-set @maxv=1000;
-select * from t1 where
-(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
-or key1=18 or key1=60;
-pk key1 key2 filler filler2
-18 18 18 filler-data filler-data-2
-60 60 60 filler-data filler-data-2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-select * from t1 where
-(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
-or key1 < 3 or key1 > @maxv-11;
-pk key1 key2 filler filler2
-990 990 990 filler-data filler-data-2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-select * from t1 where
-(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
-or
-(key1 < 5) or (key1 > 10 and key1 < 15) or (key1 >= 50 and key1 < 55 ) or (key1 > @maxv-10);
-pk key1 key2 filler filler2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-select * from t1 where
-(pk > 10 and pk < 15) or (pk >= 50 and pk < 55 )
-or
-(key1 < 5) or (key1 > @maxv-10);
-pk key1 key2 filler filler2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-drop table t1;
diff --git a/mysql-test/r/index_merge_innodb.result b/mysql-test/r/index_merge_innodb.result
index c0c850ee310..588de70e6e5 100644
--- a/mysql-test/r/index_merge_innodb.result
+++ b/mysql-test/r/index_merge_innodb.result
@@ -1,11 +1,13 @@
+#---------------- Index merge test 2 -------------------------------------------
+SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1,t2;
create table t1
(
-key1 int not null,
-key2 int not null,
+key1 int not null,
+key2 int not null,
INDEX i1(key1),
INDEX i2(key2)
-) engine=innodb;
+);
explain select * from t1 where key1 < 5 or key2 > 197;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index_merge i1,i2 i1,i2 4,4 NULL 8 Using sort_union(i1,i2); Using where
@@ -26,7 +28,7 @@ key1 key2
2 198
3 197
4 196
-alter table t1 add str1 char (255) not null,
+alter table t1 add str1 char (255) not null,
add zeroval int not null default 0,
add str2 char (255) not null,
add str3 char (255) not null;
@@ -60,7 +62,7 @@ key2 integer not null,
filler char (200),
index (key1),
index (key2)
-) engine=innodb;
+);
show warnings;
Level Code Message
explain select pk from t1 where key1 = 1 and key2 = 1;
@@ -91,14 +93,14 @@ filler1 char (200),
index i1(key1a, key1b),
index i2(key2a, key2b),
index i3(key3a, key3b)
-) engine=innodb;
+);
create table t2 (a int);
insert into t2 values (0),(1),(2),(3),(4),(NULL);
-insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
+insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
select A.a, B.a, C.a, D.a, C.a, D.a from t2 A,t2 B,t2 C, t2 D;
-insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
+insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
select key1a, key1b, key2a, key2b, key3a, key3b from t1;
-insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
+insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
select key1a, key1b, key2a, key2b, key3a, key3b from t1;
analyze table t1;
Table Op Msg_type Msg_text
@@ -106,19 +108,19 @@ test.t1 analyze status OK
select count(*) from t1;
count(*)
5184
-explain select count(*) from t1 where
+explain select count(*) from t1 where
key1a = 2 and key1b is null and key2a = 2 and key2b is null;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge i1,i2 i1,i2 10,10 NULL 3 Using intersect(i1,i2); Using where; Using index
-select count(*) from t1 where
+1 SIMPLE t1 index_merge i1,i2 i1,i2 10,10 NULL 4 Using intersect(i1,i2); Using where; Using index
+select count(*) from t1 where
key1a = 2 and key1b is null and key2a = 2 and key2b is null;
count(*)
4
-explain select count(*) from t1 where
+explain select count(*) from t1 where
key1a = 2 and key1b is null and key3a = 2 and key3b is null;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge i1,i3 i1,i3 10,10 NULL 3 Using intersect(i1,i3); Using where; Using index
-select count(*) from t1 where
+1 SIMPLE t1 index_merge i1,i3 i1,i3 10,10 NULL 4 Using intersect(i1,i3); Using where; Using index
+select count(*) from t1 where
key1a = 2 and key1b is null and key3a = 2 and key3b is null;
count(*)
4
@@ -127,8 +129,8 @@ create table t1 (
id1 int,
id2 date ,
index idx2 (id1,id2),
-index idx1 (id2)
-) engine = innodb;
+index idx1 (id2)
+);
insert into t1 values(1,'20040101'), (2,'20040102');
select * from t1 where id1 = 1 and id2= '20040101';
id1 id2
@@ -147,8 +149,8 @@ PRIMARY KEY (`oid`),
KEY `fk_bbk_niederlassung` (`fk_bbk_niederlassung`),
KEY `fk_wochentag` (`fk_wochentag`),
KEY `ix_version` (`version`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-insert into t1 values
+) DEFAULT CHARSET=latin1;
+insert into t1 values
(1, 38, 1, '08:00:00', '13:00:00', 0, 1),
(2, 38, 2, '08:00:00', '13:00:00', 0, 1),
(3, 38, 3, '08:00:00', '13:00:00', 0, 1),
@@ -174,25 +176,25 @@ insert into t1 values
(23, 7, 3, '08:00:00', '13:00:00', 0, 1),
(24, 7, 4, '08:00:00', '13:00:00', 0, 1),
(25, 7, 5, '08:00:00', '13:00:00', 0, 1);
-create view v1 as
-select
-zeit1.oid AS oid,
+create view v1 as
+select
+zeit1.oid AS oid,
zeit1.fk_bbk_niederlassung AS fk_bbk_niederlassung,
zeit1.fk_wochentag AS fk_wochentag,
-zeit1.uhrzeit_von AS uhrzeit_von,
-zeit1.uhrzeit_bis AS uhrzeit_bis,
+zeit1.uhrzeit_von AS uhrzeit_von,
+zeit1.uhrzeit_bis AS uhrzeit_bis,
zeit1.geloescht AS geloescht,
zeit1.version AS version
-from
+from
t1 zeit1
-where
-(zeit1.version =
+where
+(zeit1.version =
(select max(zeit2.version) AS `max(version)`
- from t1 zeit2
-where
-((zeit1.fk_bbk_niederlassung = zeit2.fk_bbk_niederlassung) and
-(zeit1.fk_wochentag = zeit2.fk_wochentag) and
-(zeit1.uhrzeit_von = zeit2.uhrzeit_von) and
+ from t1 zeit2
+where
+((zeit1.fk_bbk_niederlassung = zeit2.fk_bbk_niederlassung) and
+(zeit1.fk_wochentag = zeit2.fk_wochentag) and
+(zeit1.uhrzeit_von = zeit2.uhrzeit_von) and
(zeit1.uhrzeit_bis = zeit2.uhrzeit_bis)
)
)
@@ -213,7 +215,7 @@ filler2 char(250) default NULL,
PRIMARY KEY (t_cpac,t_vers,t_rele,t_cust),
UNIQUE KEY IX_4 (t_cust,t_cpac,t_vers,t_rele),
KEY IX_5 (t_vers,t_rele,t_cust)
-) ENGINE=InnoDB;
+);
insert into t1 values
('tm','2.5 ','a ',' ','',''), ('tm','2.5U','a ','stnd','',''),
('da','3.3 ','b ',' ','',''), ('da','3.3U','b ','stnd','',''),
@@ -244,9 +246,9 @@ t1 CREATE TABLE `t1` (
`t_vers` varchar(4) NOT NULL,
`t_rele` varchar(2) NOT NULL,
`t_cust` varchar(4) NOT NULL,
- `filler1` char(250) default NULL,
- `filler2` char(250) default NULL,
- PRIMARY KEY (`t_cpac`,`t_vers`,`t_rele`,`t_cust`),
+ `filler1` char(250) DEFAULT NULL,
+ `filler2` char(250) DEFAULT NULL,
+ PRIMARY KEY (`t_cpac`,`t_vers`,`t_rele`,`t_cust`),
UNIQUE KEY `IX_4` (`t_cust`,`t_cpac`,`t_vers`,`t_rele`),
KEY `IX_5` (`t_vers`,`t_rele`,`t_cust`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
@@ -275,10 +277,307 @@ primary key (pk),
key idx1(a,b,c),
key idx2(c),
key idx3(kp1,kp2,kp3,kp4,kp5)
-) engine=innodb default charset=latin1;
+) default charset=latin1;
set @fill=NULL;
-SELECT COUNT(*) FROM t1 WHERE b = 0 AND a = 0 AND c = 13286427 AND
+SELECT COUNT(*) FROM t1 WHERE b = 0 AND a = 0 AND c = 13286427 AND
kp1='279' AND kp2='ELM0678' AND kp3='6' AND kp4='10' AND kp5 = 'R ';
COUNT(*)
1
drop table t1;
+create table t1
+(
+key1 int not null,
+key2 int not null default 0,
+key3 int not null default 0
+);
+insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8);
+set @d=8;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+alter table t1 add index i2(key2);
+alter table t1 add index i3(key3);
+update t1 set key2=key1,key3=key1;
+explain select * from t1 where (key3 > 30 and key3<35) or (key2 >32 and key2 < 40);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i2,i3 i3,i2 4,4 NULL 9 Using sort_union(i3,i2); Using where
+select * from t1 where (key3 > 30 and key3<35) or (key2 >32 and key2 < 40);
+key1 key2 key3
+31 31 31
+32 32 32
+33 33 33
+34 34 34
+35 35 35
+36 36 36
+37 37 37
+38 38 38
+39 39 39
+drop table t1;
+#---------------- 2-sweeps read Index merge test 2 -------------------------------
+SET SESSION STORAGE_ENGINE = InnoDB;
+drop table if exists t1;
+create table t1 (
+pk int primary key,
+key1 int,
+key2 int,
+filler char(200),
+filler2 char(200),
+index(key1),
+index(key2)
+);
+select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 );
+pk key1 key2 filler filler2
+2 2 2 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+9 9 9 filler-data filler-data-2
+10 10 10 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+5 5 5 filler-data filler-data-2
+6 6 6 filler-data filler-data-2
+7 7 7 filler-data filler-data-2
+8 8 8 filler-data filler-data-2
+set @maxv=1000;
+select * from t1 where
+(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
+or key1=18 or key1=60;
+pk key1 key2 filler filler2
+18 18 18 filler-data filler-data-2
+60 60 60 filler-data filler-data-2
+1 1 1 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+1000 1000 1000 filler-data filler-data-2
+select * from t1 where
+(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
+or key1 < 3 or key1 > @maxv-11;
+pk key1 key2 filler filler2
+990 990 990 filler-data filler-data-2
+1 1 1 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+1000 1000 1000 filler-data filler-data-2
+select * from t1 where
+(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
+or
+(key1 < 5) or (key1 > 10 and key1 < 15) or (key1 >= 50 and key1 < 55 ) or (key1 > @maxv-10);
+pk key1 key2 filler filler2
+1 1 1 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+1000 1000 1000 filler-data filler-data-2
+select * from t1 where
+(pk > 10 and pk < 15) or (pk >= 50 and pk < 55 )
+or
+(key1 < 5) or (key1 > @maxv-10);
+pk key1 key2 filler filler2
+1 1 1 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+1000 1000 1000 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+drop table t1;
+#---------------- Clustered PK ROR-index_merge tests -----------------------------
+SET SESSION STORAGE_ENGINE = InnoDB;
+drop table if exists t1;
+create table t1
+(
+pk1 int not null,
+pk2 int not null,
+key1 int not null,
+key2 int not null,
+pktail1ok int not null,
+pktail2ok int not null,
+pktail3bad int not null,
+pktail4bad int not null,
+pktail5bad int not null,
+pk2copy int not null,
+badkey int not null,
+filler1 char (200),
+filler2 char (200),
+key (key1),
+key (key2),
+/* keys with tails from CPK members */
+key (pktail1ok, pk1),
+key (pktail2ok, pk1, pk2),
+key (pktail3bad, pk2, pk1),
+key (pktail4bad, pk1, pk2copy),
+key (pktail5bad, pk1, pk2, pk2copy),
+primary key (pk1, pk2)
+);
+explain select * from t1 where pk1 = 1 and pk2 < 80 and key1=0;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range PRIMARY,key1 PRIMARY 8 NULL 9 Using where
+select * from t1 where pk1 = 1 and pk2 < 80 and key1=0;
+pk1 pk2 key1 key2 pktail1ok pktail2ok pktail3bad pktail4bad pktail5bad pk2copy badkey filler1 filler2
+1 10 0 0 0 0 0 0 0 10 0 filler-data-10 filler2
+1 11 0 0 0 0 0 0 0 11 0 filler-data-11 filler2
+1 12 0 0 0 0 0 0 0 12 0 filler-data-12 filler2
+1 13 0 0 0 0 0 0 0 13 0 filler-data-13 filler2
+1 14 0 0 0 0 0 0 0 14 0 filler-data-14 filler2
+1 15 0 0 0 0 0 0 0 15 0 filler-data-15 filler2
+1 16 0 0 0 0 0 0 0 16 0 filler-data-16 filler2
+1 17 0 0 0 0 0 0 0 17 0 filler-data-17 filler2
+1 18 0 0 0 0 0 0 0 18 0 filler-data-18 filler2
+1 19 0 0 0 0 0 0 0 19 0 filler-data-19 filler2
+explain select pk1,pk2 from t1 where key1 = 10 and key2=10 and 2*pk1+1 < 2*96+1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 4,4 NULL 1 Using intersect(key1,key2); Using where; Using index
+select pk1,pk2 from t1 where key1 = 10 and key2=10 and 2*pk1+1 < 2*96+1;
+pk1 pk2
+95 50
+95 51
+95 52
+95 53
+95 54
+95 55
+95 56
+95 57
+95 58
+95 59
+explain select * from t1 where badkey=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1 key1 4 const 100 Using where
+explain select * from t1 where pk1 < 7500 and key1 = 10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge PRIMARY,key1 key1,PRIMARY 4,4 NULL ROWS Using intersect(key1,PRIMARY); Using where
+explain select * from t1 where pktail1ok=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,pktail1ok key1,pktail1ok 4,4 NULL 1 Using intersect(key1,pktail1ok); Using where
+explain select * from t1 where pktail2ok=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,pktail2ok key1,pktail2ok 4,4 NULL 1 Using intersect(key1,pktail2ok); Using where
+explain select * from t1 where (pktail2ok=1 and pk1< 50000) or key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge PRIMARY,key1,pktail2ok pktail2ok,key1 8,4 NULL 199 Using sort_union(pktail2ok,key1); Using where
+explain select * from t1 where pktail3bad=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail3bad key1 4 const 100 Using where
+explain select * from t1 where pktail4bad=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail4bad key1 4 const 100 Using where
+explain select * from t1 where pktail5bad=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail5bad key1 4 const 100 Using where
+explain select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 4,4 NULL 1 Using intersect(key1,key2); Using where; Using index
+select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
+pk1 pk2 key1 key2
+95 50 10 10
+95 51 10 10
+95 52 10 10
+95 53 10 10
+95 54 10 10
+95 55 10 10
+95 56 10 10
+95 57 10 10
+95 58 10 10
+95 59 10 10
+drop table t1;
+create table t1
+(
+RUNID varchar(22),
+SUBMITNR varchar(5),
+ORDERNR char(1),
+PROGRAMM varchar(8),
+TESTID varchar(4),
+UCCHECK char(1),
+ETEXT varchar(80),
+ETEXT_TYPE char(1),
+INFO char(1),
+SEVERITY tinyint(3),
+TADIRFLAG char(1),
+PRIMARY KEY (RUNID,SUBMITNR,ORDERNR,PROGRAMM,TESTID,UCCHECK),
+KEY `TVERM~KEY` (PROGRAMM,TESTID,UCCHECK)
+) DEFAULT CHARSET=latin1;
+update t1 set `ETEXT` = '', `ETEXT_TYPE`='', `INFO`='', `SEVERITY`='', `TADIRFLAG`=''
+WHERE
+`RUNID`= '' AND `SUBMITNR`= '' AND `ORDERNR`='' AND `PROGRAMM`='' AND
+`TESTID`='' AND `UCCHECK`='';
+drop table t1;
diff --git a/mysql-test/r/index_merge_innodb2.result b/mysql-test/r/index_merge_innodb2.result
deleted file mode 100644
index 91dd989fe90..00000000000
--- a/mysql-test/r/index_merge_innodb2.result
+++ /dev/null
@@ -1,136 +0,0 @@
-drop table if exists t1;
-create table t1 (
-pk int primary key,
-key1 int,
-key2 int,
-filler char(200),
-filler2 char(200),
-index(key1),
-index(key2)
-) engine=innodb;
-select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 );
-pk key1 key2 filler filler2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-9 9 9 filler-data filler-data-2
-10 10 10 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-5 5 5 filler-data filler-data-2
-6 6 6 filler-data filler-data-2
-7 7 7 filler-data filler-data-2
-8 8 8 filler-data filler-data-2
-set @maxv=1000;
-select * from t1 where
-(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
-or key1=18 or key1=60;
-pk key1 key2 filler filler2
-18 18 18 filler-data filler-data-2
-60 60 60 filler-data filler-data-2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-select * from t1 where
-(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
-or key1 < 3 or key1 > @maxv-11;
-pk key1 key2 filler filler2
-990 990 990 filler-data filler-data-2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-select * from t1 where
-(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
-or
-(key1 < 5) or (key1 > 10 and key1 < 15) or (key1 >= 50 and key1 < 55 ) or (key1 > @maxv-10);
-pk key1 key2 filler filler2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-select * from t1 where
-(pk > 10 and pk < 15) or (pk >= 50 and pk < 55 )
-or
-(key1 < 5) or (key1 > @maxv-10);
-pk key1 key2 filler filler2
-1 1 1 filler-data filler-data-2
-2 2 2 filler-data filler-data-2
-3 3 3 filler-data filler-data-2
-4 4 4 filler-data filler-data-2
-991 991 991 filler-data filler-data-2
-992 992 992 filler-data filler-data-2
-993 993 993 filler-data filler-data-2
-994 994 994 filler-data filler-data-2
-995 995 995 filler-data filler-data-2
-996 996 996 filler-data filler-data-2
-997 997 997 filler-data filler-data-2
-998 998 998 filler-data filler-data-2
-999 999 999 filler-data filler-data-2
-1000 1000 1000 filler-data filler-data-2
-11 11 11 filler-data filler-data-2
-12 12 12 filler-data filler-data-2
-13 13 13 filler-data filler-data-2
-14 14 14 filler-data filler-data-2
-50 50 50 filler-data filler-data-2
-51 51 51 filler-data filler-data-2
-52 52 52 filler-data filler-data-2
-53 53 53 filler-data filler-data-2
-54 54 54 filler-data filler-data-2
-drop table t1;
diff --git a/mysql-test/r/index_merge_myisam.result b/mysql-test/r/index_merge_myisam.result
new file mode 100644
index 00000000000..c639b20de91
--- /dev/null
+++ b/mysql-test/r/index_merge_myisam.result
@@ -0,0 +1,1588 @@
+#---------------- Index merge test 1 -------------------------------------------
+SET SESSION STORAGE_ENGINE = MyISAM;
+drop table if exists t0, t1, t2, t3, t4;
+create table t0
+(
+key1 int not null,
+INDEX i1(key1)
+);
+alter table t0 add key2 int not null, add index i2(key2);
+alter table t0 add key3 int not null, add index i3(key3);
+alter table t0 add key4 int not null, add index i4(key4);
+alter table t0 add key5 int not null, add index i5(key5);
+alter table t0 add key6 int not null, add index i6(key6);
+alter table t0 add key7 int not null, add index i7(key7);
+alter table t0 add key8 int not null, add index i8(key8);
+update t0 set key2=key1,key3=key1,key4=key1,key5=key1,key6=key1,key7=key1,key8=1024-key1;
+analyze table t0;
+Table Op Msg_type Msg_text
+test.t0 analyze status OK
+explain select * from t0 where key1 < 3 or key1 > 1020;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 range i1 i1 4 NULL 78 Using where
+explain
+select * from t0 where key1 < 3 or key2 > 1020;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 45 Using sort_union(i1,i2); Using where
+select * from t0 where key1 < 3 or key2 > 1020;
+key1 key2 key3 key4 key5 key6 key7 key8
+1 1 1 1 1 1 1 1023
+2 2 2 2 2 2 2 1022
+1021 1021 1021 1021 1021 1021 1021 3
+1022 1022 1022 1022 1022 1022 1022 2
+1023 1023 1023 1023 1023 1023 1023 1
+1024 1024 1024 1024 1024 1024 1024 0
+explain select * from t0 where key1 < 3 or key2 <4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 7 Using sort_union(i1,i2); Using where
+explain
+select * from t0 where (key1 > 30 and key1<35) or (key2 >32 and key2 < 40);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 11 Using sort_union(i1,i2); Using where
+select * from t0 where (key1 > 30 and key1<35) or (key2 >32 and key2 < 40);
+key1 key2 key3 key4 key5 key6 key7 key8
+31 31 31 31 31 31 31 993
+32 32 32 32 32 32 32 992
+33 33 33 33 33 33 33 991
+34 34 34 34 34 34 34 990
+35 35 35 35 35 35 35 989
+36 36 36 36 36 36 36 988
+37 37 37 37 37 37 37 987
+38 38 38 38 38 38 38 986
+39 39 39 39 39 39 39 985
+explain select * from t0 ignore index (i2) where key1 < 3 or key2 <4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1 NULL NULL NULL 1024 Using where
+explain select * from t0 where (key1 < 3 or key2 <4) and key3 = 50;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ref i1,i2,i3 i3 4 const 1 Using where
+explain select * from t0 use index (i1,i2) where (key1 < 3 or key2 <4) and key3 = 50;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 7 Using sort_union(i1,i2); Using where
+explain select * from t0 where (key1 > 1 or key2 > 2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1,i2 NULL NULL NULL 1024 Using where
+explain select * from t0 force index (i1,i2) where (key1 > 1 or key2 > 2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 1024 Using sort_union(i1,i2); Using where
+explain
+select * from t0 where key1<3 or key2<3 or (key1>5 and key1<8) or
+(key1>10 and key1<12) or (key2>100 and key2<110);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 17 Using sort_union(i1,i2); Using where
+explain select * from t0 where key2 = 45 or key1 <=> null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 range i1,i2 i2 4 NULL 1 Using where
+explain select * from t0 where key2 = 45 or key1 is not null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1,i2 NULL NULL NULL 1024 Using where
+explain select * from t0 where key2 = 45 or key1 is null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ref i2 i2 4 const 1
+explain select * from t0 where key2=10 or key3=3 or key4 <=> null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i2,i3,i4 i2,i3 4,4 NULL 2 Using union(i2,i3); Using where
+explain select * from t0 where key2=10 or key3=3 or key4 is null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i2,i3 i2,i3 4,4 NULL 2 Using union(i2,i3); Using where
+explain select key1 from t0 where (key1 <=> null) or (key2 < 5) or
+(key3=10) or (key4 <=> null);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i4 i2,i3 4,4 NULL 6 Using sort_union(i2,i3); Using where
+explain select key1 from t0 where (key1 <=> null) or (key1 < 5) or
+(key3=10) or (key4 <=> null);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i3,i4 i1,i3 4,4 NULL 6 Using sort_union(i1,i3); Using where
+explain select * from t0 where
+(key1 < 3 or key2 < 3) and (key3 < 4 or key4 < 4) and (key5 < 5 or key6 < 5);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i4,i5,i6 i1,i2 4,4 NULL 6 Using sort_union(i1,i2); Using where
+explain
+select * from t0 where (key1 < 3 or key2 < 6) and (key1 < 7 or key3 < 4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3 i1,i2 4,4 NULL 9 Using sort_union(i1,i2); Using where
+select * from t0 where (key1 < 3 or key2 < 6) and (key1 < 7 or key3 < 4);
+key1 key2 key3 key4 key5 key6 key7 key8
+1 1 1 1 1 1 1 1023
+2 2 2 2 2 2 2 1022
+3 3 3 3 3 3 3 1021
+4 4 4 4 4 4 4 1020
+5 5 5 5 5 5 5 1019
+explain select * from t0 where
+(key1 < 3 or key2 < 3) and (key3 < 4 or key4 < 4) and (key5 < 2 or key6 < 2);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i4,i5,i6 i1,i2 4,4 NULL 6 Using sort_union(i1,i2); Using where
+explain select * from t0 where
+(key1 < 3 or key2 < 3) and (key3 < 100);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 range i1,i2,i3 i3 4 NULL 95 Using where
+explain select * from t0 where
+(key1 < 3 or key2 < 3) and (key3 < 1000);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1,i2,i3 NULL NULL NULL 1024 Using where
+explain select * from t0 where
+((key1 < 4 or key2 < 4) and (key2 <5 or key3 < 4))
+or
+key2 > 5;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1,i2,i3 NULL NULL NULL 1024 Using where
+explain select * from t0 where
+((key1 < 4 or key2 < 4) and (key2 <5 or key3 < 4))
+or
+key1 < 7;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3 i1,i2 4,4 NULL 10 Using sort_union(i1,i2); Using where
+select * from t0 where
+((key1 < 4 or key2 < 4) and (key2 <5 or key3 < 4))
+or
+key1 < 7;
+key1 key2 key3 key4 key5 key6 key7 key8
+1 1 1 1 1 1 1 1023
+2 2 2 2 2 2 2 1022
+3 3 3 3 3 3 3 1021
+4 4 4 4 4 4 4 1020
+5 5 5 5 5 5 5 1019
+6 6 6 6 6 6 6 1018
+explain select * from t0 where
+((key1 < 4 or key2 < 4) and (key3 <5 or key5 < 4))
+or
+((key5 < 5 or key6 < 6) and (key7 <7 or key8 < 4));
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i5,i6,i7,i8 i1,i2,i5,i6 4,4,4,4 NULL 19 Using sort_union(i1,i2,i5,i6); Using where
+explain select * from t0 where
+((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
+or
+((key7 <7 or key8 < 4) and (key5 < 5 or key6 < 6));
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i5,i6,i7,i8 i3,i5,i7,i8 4,4,4,4 NULL 20 Using sort_union(i3,i5,i7,i8); Using where
+explain select * from t0 where
+((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
+or
+((key3 <7 or key5 < 2) and (key5 < 5 or key6 < 6));
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i5,i6 i3,i5 4,4 NULL 11 Using sort_union(i3,i5); Using where
+explain select * from t0 where
+((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
+or
+(((key3 <7 and key7 < 6) or key5 < 2) and (key5 < 5 or key6 < 6));
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i5,i6,i7 i3,i5 4,4 NULL 11 Using sort_union(i3,i5); Using where
+explain select * from t0 where
+((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
+or
+((key3 >=5 or key5 < 2) and (key5 < 5 or key6 < 6));
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1,i2,i3,i5,i6 NULL NULL NULL 1024 Using where
+explain select * from t0 force index(i1, i2, i3, i4, i5, i6 ) where
+((key3 <5 or key5 < 4) and (key1 < 4 or key2 < 4))
+or
+((key3 >=5 or key5 < 2) and (key5 < 5 or key6 < 6));
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2,i3,i5,i6 i3,i5 0,4 NULL 1024 Using sort_union(i3,i5); Using where
+select * from t0 where key1 < 5 or key8 < 4 order by key1;
+key1 key2 key3 key4 key5 key6 key7 key8
+1 1 1 1 1 1 1 1023
+2 2 2 2 2 2 2 1022
+3 3 3 3 3 3 3 1021
+4 4 4 4 4 4 4 1020
+1021 1021 1021 1021 1021 1021 1021 3
+1022 1022 1022 1022 1022 1022 1022 2
+1023 1023 1023 1023 1023 1023 1023 1
+1024 1024 1024 1024 1024 1024 1024 0
+explain
+select * from t0 where key1 < 5 or key8 < 4 order by key1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i8 i1,i8 4,4 NULL 9 Using sort_union(i1,i8); Using where; Using filesort
+create table t2 like t0;
+insert into t2 select * from t0;
+alter table t2 add index i1_3(key1, key3);
+alter table t2 add index i2_3(key2, key3);
+alter table t2 drop index i1;
+alter table t2 drop index i2;
+alter table t2 add index i321(key3, key2, key1);
+explain select key3 from t2 where key1 = 100 or key2 = 100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index_merge i1_3,i2_3 i1_3,i2_3 4,4 NULL 2 Using sort_union(i1_3,i2_3); Using where
+explain select key3 from t2 where key1 <100 or key2 < 100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index i1_3,i2_3 i321 12 NULL 1024 Using where; Using index
+explain select key7 from t2 where key1 <100 or key2 < 100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ALL i1_3,i2_3 NULL NULL NULL 1024 Using where
+create table t4 (
+key1a int not null,
+key1b int not null,
+key2 int not null,
+key2_1 int not null,
+key2_2 int not null,
+key3 int not null,
+index i1a (key1a, key1b),
+index i1b (key1b, key1a),
+index i2_1(key2, key2_1),
+index i2_2(key2, key2_1)
+);
+insert into t4 select key1,key1,key1 div 10, key1 % 10, key1 % 10, key1 from t0;
+select * from t4 where key1a = 3 or key1b = 4;
+key1a key1b key2 key2_1 key2_2 key3
+3 3 0 3 3 3
+4 4 0 4 4 4
+explain select * from t4 where key1a = 3 or key1b = 4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 index_merge i1a,i1b i1a,i1b 4,4 NULL 2 Using sort_union(i1a,i1b); Using where
+explain select * from t4 where key2 = 1 and (key2_1 = 1 or key3 = 5);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 ref i2_1,i2_2 i2_1 4 const 10 Using where
+explain select * from t4 where key2 = 1 and (key2_1 = 1 or key2_2 = 5);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 ref i2_1,i2_2 i2_1 4 const 10 Using where
+explain select * from t4 where key2_1 = 1 or key2_2 = 5;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 ALL NULL NULL NULL NULL 1024 Using where
+create table t1 like t0;
+insert into t1 select * from t0;
+explain select * from t0 left join t1 on (t0.key1=t1.key1)
+where t0.key1=3 or t0.key2=4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
+1 SIMPLE t1 ref i1 i1 4 test.t0.key1 1
+select * from t0 left join t1 on (t0.key1=t1.key1)
+where t0.key1=3 or t0.key2=4;
+key1 key2 key3 key4 key5 key6 key7 key8 key1 key2 key3 key4 key5 key6 key7 key8
+3 3 3 3 3 3 3 1021 3 3 3 3 3 3 3 1021
+4 4 4 4 4 4 4 1020 4 4 4 4 4 4 4 1020
+explain
+select * from t0,t1 where (t0.key1=t1.key1) and ( t0.key1=3 or t0.key2=4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
+1 SIMPLE t1 ref i1 i1 4 test.t0.key1 1
+explain
+select * from t0,t1 where (t0.key1=t1.key1) and
+(t0.key1=3 or t0.key2=4) and t1.key1<200;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ALL i1,i2 NULL NULL NULL 1024 Using where
+1 SIMPLE t1 ref i1 i1 4 test.t0.key1 1
+explain
+select * from t0,t1 where (t0.key1=t1.key1) and
+(t0.key1=3 or t0.key2<4) and t1.key1=2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ref i1,i2 i1 4 const 1 Using where
+1 SIMPLE t1 ref i1 i1 4 const 1
+explain select * from t0,t1 where t0.key1 = 5 and
+(t1.key1 = t0.key1 or t1.key8 = t0.key1);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 ref i1 i1 4 const 1
+1 SIMPLE t1 index_merge i1,i8 i1,i8 4,4 NULL 2 Using union(i1,i8); Using where; Using join buffer
+explain select * from t0,t1 where t0.key1 < 3 and
+(t1.key1 = t0.key1 or t1.key8 = t0.key1);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 range i1 i1 4 NULL 3 Using where
+1 SIMPLE t1 ALL i1,i8 NULL NULL NULL 1024 Range checked for each record (index map: 0x81)
+explain select * from t1 where key1=3 or key2=4
+union select * from t1 where key1<4 or key3=5;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t1 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
+2 UNION t1 index_merge i1,i3 i1,i3 4,4 NULL 5 Using sort_union(i1,i3); Using where
+NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
+explain select * from (select * from t1 where key1 = 3 or key2 =3) as Z where key8 >5;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY <derived2> system NULL NULL NULL NULL 1
+2 DERIVED t1 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where; Using index
+create table t3 like t0;
+insert into t3 select * from t0;
+alter table t3 add key9 int not null, add index i9(key9);
+alter table t3 add keyA int not null, add index iA(keyA);
+alter table t3 add keyB int not null, add index iB(keyB);
+alter table t3 add keyC int not null, add index iC(keyC);
+update t3 set key9=key1,keyA=key1,keyB=key1,keyC=key1;
+explain select * from t3 where
+key1=1 or key2=2 or key3=3 or key4=4 or
+key5=5 or key6=6 or key7=7 or key8=8 or
+key9=9 or keyA=10 or keyB=11 or keyC=12;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t3 index_merge i1,i2,i3,i4,i5,i6,i7,i8,i9,iA,iB,iC i1,i2,i3,i4,i5,i6,i7,i8,i9,iA,iB,iC 4,4,4,4,4,4,4,4,4,4,4,4 NULL 12 Using union(i1,i2,i3,i4,i5,i6,i7,i8,i9,iA,iB,iC); Using where
+select * from t3 where
+key1=1 or key2=2 or key3=3 or key4=4 or
+key5=5 or key6=6 or key7=7 or key8=8 or
+key9=9 or keyA=10 or keyB=11 or keyC=12;
+key1 key2 key3 key4 key5 key6 key7 key8 key9 keyA keyB keyC
+1 1 1 1 1 1 1 1023 1 1 1 1
+2 2 2 2 2 2 2 1022 2 2 2 2
+3 3 3 3 3 3 3 1021 3 3 3 3
+4 4 4 4 4 4 4 1020 4 4 4 4
+5 5 5 5 5 5 5 1019 5 5 5 5
+6 6 6 6 6 6 6 1018 6 6 6 6
+7 7 7 7 7 7 7 1017 7 7 7 7
+9 9 9 9 9 9 9 1015 9 9 9 9
+10 10 10 10 10 10 10 1014 10 10 10 10
+11 11 11 11 11 11 11 1013 11 11 11 11
+12 12 12 12 12 12 12 1012 12 12 12 12
+1016 1016 1016 1016 1016 1016 1016 8 1016 1016 1016 1016
+explain select * from t0 where key1 < 3 or key2 < 4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t0 index_merge i1,i2 i1,i2 4,4 NULL 7 Using sort_union(i1,i2); Using where
+select * from t0 where key1 < 3 or key2 < 4;
+key1 key2 key3 key4 key5 key6 key7 key8
+1 1 1 1 1 1 1 1023
+2 2 2 2 2 2 2 1022
+3 3 3 3 3 3 3 1021
+update t0 set key8=123 where key1 < 3 or key2 < 4;
+select * from t0 where key1 < 3 or key2 < 4;
+key1 key2 key3 key4 key5 key6 key7 key8
+1 1 1 1 1 1 1 123
+2 2 2 2 2 2 2 123
+3 3 3 3 3 3 3 123
+delete from t0 where key1 < 3 or key2 < 4;
+select * from t0 where key1 < 3 or key2 < 4;
+key1 key2 key3 key4 key5 key6 key7 key8
+select count(*) from t0;
+count(*)
+1021
+drop table t4;
+create table t4 (a int);
+insert into t4 values (1),(4),(3);
+set @save_join_buffer_size=@@join_buffer_size;
+set join_buffer_size= 4000;
+Warnings:
+Warning 1292 Truncated incorrect join_buffer_size value: '4000'
+explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
+where (A.key1 < 500000 or A.key2 < 3)
+and (B.key1 < 500000 or B.key2 < 3);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE A index_merge i1,i2 i1,i2 4,4 NULL 1013 Using sort_union(i1,i2); Using where
+1 SIMPLE B index_merge i1,i2 i1,i2 4,4 NULL 1013 Using sort_union(i1,i2); Using where; Using join buffer
+select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
+where (A.key1 < 500000 or A.key2 < 3)
+and (B.key1 < 500000 or B.key2 < 3);
+max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+10240
+update t0 set key1=1;
+explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
+where (A.key1 = 1 or A.key2 = 1)
+and (B.key1 = 1 or B.key2 = 1);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE A index_merge i1,i2 i1,i2 4,4 NULL 1020 Using union(i1,i2); Using where
+1 SIMPLE B index_merge i1,i2 i1,i2 4,4 NULL 1020 Using union(i1,i2); Using where; Using join buffer
+select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
+where (A.key1 = 1 or A.key2 = 1)
+and (B.key1 = 1 or B.key2 = 1);
+max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+8194
+alter table t0 add filler1 char(200), add filler2 char(200), add filler3 char(200);
+update t0 set key2=1, key3=1, key4=1, key5=1,key6=1,key7=1 where key7 < 500;
+explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+from t0 as A, t0 as B
+where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
+and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key7 = 1 or B.key8=1);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE A index_merge i1,i2,i3,i4,i5,i6,i7?,i8 i2,i3,i4,i5,i6,i7?,i8 X NULL # Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
+1 SIMPLE B index_merge i1,i2,i3,i4,i5,i6,i7?,i8 i2,i3,i4,i5,i6,i7?,i8 X NULL # Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where; Using join buffer
+select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+from t0 as A, t0 as B
+where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
+and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key7 = 1 or B.key8=1);
+max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
+8186
+set join_buffer_size= @save_join_buffer_size;
+drop table t0, t1, t2, t3, t4;
+CREATE TABLE t1 (
+cola char(3) not null, colb char(3) not null, filler char(200),
+key(cola), key(colb)
+);
+INSERT INTO t1 VALUES ('foo','bar', 'ZZ'),('fuz','baz', 'ZZ');
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+select count(*) from t1;
+count(*)
+8704
+explain select * from t1 WHERE cola = 'foo' AND colb = 'bar';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge cola,colb cola,colb 3,3 NULL 32 Using intersect(cola,colb); Using where
+explain select * from t1 force index(cola,colb) WHERE cola = 'foo' AND colb = 'bar';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge cola,colb cola,colb 3,3 NULL 32 Using intersect(cola,colb); Using where
+drop table t1;
+create table t0 (a int);
+insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t1 (
+a int, b int,
+filler1 char(200), filler2 char(200),
+key(a),key(b)
+);
+insert into t1 select @v:= A.a, @v, 't1', 'filler2' from t0 A, t0 B, t0 C;
+create table t2 like t1;
+create table t3 (
+a int, b int,
+filler1 char(200), filler2 char(200),
+key(a),key(b)
+) engine=merge union=(t1,t2);
+explain select * from t1 where a=1 and b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL # Using intersect(a,b); Using where
+explain select * from t3 where a=1 and b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t3 index_merge a,b a,b 5,5 NULL # Using intersect(a,b); Using where
+drop table t3;
+drop table t0, t1, t2;
+CREATE TABLE t1(a INT);
+INSERT INTO t1 VALUES(1);
+CREATE TABLE t2(a INT, b INT, dummy CHAR(16) DEFAULT '', KEY(a), KEY(b));
+INSERT INTO t2(a,b) VALUES
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(1,2);
+LOCK TABLES t1 WRITE, t2 WRITE;
+INSERT INTO t2(a,b) VALUES(1,2);
+SELECT t2.a FROM t1,t2 WHERE t2.b=2 AND t2.a=1;
+a
+1
+1
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+CREATE TABLE `t1` (
+`a` int(11) DEFAULT NULL,
+`filler` char(200) DEFAULT NULL,
+`b` int(11) DEFAULT NULL,
+KEY `a` (`a`),
+KEY `b` (`b`)
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+insert into t1 values
+(0, 'filler', 0), (1, 'filler', 1), (2, 'filler', 2), (3, 'filler', 3),
+(4, 'filler', 4), (5, 'filler', 5), (6, 'filler', 6), (7, 'filler', 7),
+(8, 'filler', 8), (9, 'filler', 9), (0, 'filler', 0), (1, 'filler', 1),
+(2, 'filler', 2), (3, 'filler', 3), (4, 'filler', 4), (5, 'filler', 5),
+(6, 'filler', 6), (7, 'filler', 7), (8, 'filler', 8), (9, 'filler', 9),
+(10, 'filler', 10), (11, 'filler', 11), (12, 'filler', 12), (13, 'filler', 13),
+(14, 'filler', 14), (15, 'filler', 15), (16, 'filler', 16), (17, 'filler', 17),
+(18, 'filler', 18), (19, 'filler', 19), (4, '5 ', 0), (5, '4 ', 0),
+(4, '4 ', 0), (4, 'qq ', 5), (5, 'qq ', 4), (4, 'zz ', 4);
+create table t2(
+`a` int(11) DEFAULT NULL,
+`filler` char(200) DEFAULT NULL,
+`b` int(11) DEFAULT NULL,
+KEY USING BTREE (`a`),
+KEY USING BTREE (`b`)
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+insert into t2 select * from t1;
+must use sort-union rather than union:
+explain select * from t1 where a=4 or b=4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL # Using sort_union(a,b); Using where
+select * from t1 where a=4 or b=4;
+a filler b
+4 4 0
+4 5 0
+4 filler 4
+4 filler 4
+4 qq 5
+4 zz 4
+5 qq 4
+select * from t1 ignore index(a,b) where a=4 or b=4;
+a filler b
+4 4 0
+4 5 0
+4 filler 4
+4 filler 4
+4 qq 5
+4 zz 4
+5 qq 4
+must use union, not sort-union:
+explain select * from t2 where a=4 or b=4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index_merge a,b a,b 5,5 NULL # Using union(a,b); Using where
+select * from t2 where a=4 or b=4;
+a filler b
+4 4 0
+4 5 0
+4 filler 4
+4 filler 4
+4 qq 5
+4 zz 4
+5 qq 4
+drop table t1, t2;
+CREATE TABLE t1 (a varchar(8), b set('a','b','c','d','e','f','g','h'),
+KEY b(b), KEY a(a));
+INSERT INTO t1 VALUES ('y',''), ('z','');
+SELECT b,a from t1 WHERE (b!='c' AND b!='f' && b!='h') OR
+(a='pure-S') OR (a='DE80337a') OR (a='DE80799');
+b a
+ y
+ z
+DROP TABLE t1;
+#
+# BUG#40974: Incorrect query results when using clause evaluated using range check
+#
+create table t0 (a int);
+insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t1 (a int);
+insert into t1 values (1),(2);
+create table t2(a int, b int);
+insert into t2 values (1,1), (2, 1000);
+create table t3 (a int, b int, filler char(100), key(a), key(b));
+insert into t3 select 1000, 1000,'filler' from t0 A, t0 B, t0 C;
+insert into t3 values (1,1,'data');
+insert into t3 values (1,1,'data');
+The plan should be ALL/ALL/ALL(Range checked for each record (index map: 0x3)
+explain select * from t1
+where exists (select 1 from t2, t3
+where t2.a=t1.a and (t3.a=t2.b or t3.b=t2.b or t3.b=t2.b+1));
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2 Using where
+2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 Using where
+2 DEPENDENT SUBQUERY t3 ALL a,b NULL NULL NULL 1002 Range checked for each record (index map: 0x3)
+select * from t1
+where exists (select 1 from t2, t3
+where t2.a=t1.a and (t3.a=t2.b or t3.b=t2.b or t3.b=t2.b+1));
+a
+1
+2
+drop table t0, t1, t2, t3;
+#
+# BUG#44810: index merge and order by with low sort_buffer_size
+# crashes server!
+#
+CREATE TABLE t1(a VARCHAR(128),b VARCHAR(128),KEY(A),KEY(B));
+INSERT INTO t1 VALUES (REPEAT('a',128),REPEAT('b',128));
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+SET SESSION sort_buffer_size=1;
+Warnings:
+Warning 1292 Truncated incorrect sort_buffer_size value: '1'
+EXPLAIN
+SELECT * FROM t1 FORCE INDEX(a,b) WHERE a LIKE 'a%' OR b LIKE 'b%'
+ORDER BY a,b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 131,131 NULL 64 Using sort_union(a,b); Using where; Using filesort
+SELECT * FROM t1 FORCE INDEX(a,b) WHERE a LIKE 'a%' OR b LIKE 'b%'
+ORDER BY a,b;
+SET SESSION sort_buffer_size=DEFAULT;
+DROP TABLE t1;
+End of 5.0 tests
+#---------------- ROR-index_merge tests -----------------------
+SET SESSION STORAGE_ENGINE = MyISAM;
+drop table if exists t0,t1,t2;
+create table t1
+(
+/* Field names reflect value(rowid) distribution, st=STairs, swt= SaWTooth */
+st_a int not null default 0,
+swt1a int not null default 0,
+swt2a int not null default 0,
+st_b int not null default 0,
+swt1b int not null default 0,
+swt2b int not null default 0,
+/* fields/keys for row retrieval tests */
+key1 int,
+key2 int,
+key3 int,
+key4 int,
+/* make rows much bigger then keys */
+filler1 char (200),
+filler2 char (200),
+filler3 char (200),
+filler4 char (200),
+filler5 char (200),
+filler6 char (200),
+/* order of keys is important */
+key sta_swt12a(st_a,swt1a,swt2a),
+key sta_swt1a(st_a,swt1a),
+key sta_swt2a(st_a,swt2a),
+key sta_swt21a(st_a,swt2a,swt1a),
+key st_a(st_a),
+key stb_swt1a_2b(st_b,swt1b,swt2a),
+key stb_swt1b(st_b,swt1b),
+key st_b(st_b),
+key(key1),
+key(key2),
+key(key3),
+key(key4)
+) ;
+create table t0 as select * from t1;
+# Printing of many insert into t0 values (....) disabled.
+alter table t1 disable keys;
+# Printing of many insert into t1 select .... from t0 disabled.
+# Printing of many insert into t1 (...) values (....) disabled.
+alter table t1 enable keys;
+select count(*) from t1;
+count(*)
+64801
+explain select key1,key2 from t1 where key1=100 and key2=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 77 Using intersect(key1,key2); Using where; Using index
+select key1,key2 from t1 where key1=100 and key2=100;
+key1 key2
+100 100
+explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 154 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
+select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+key1 key2 key3 key4 filler1
+100 100 100 100 key1-key2-key3-key4
+insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, -1, -1, 'key1-key2');
+insert into t1 (key1, key2, key3, key4, filler1) values (-1, -1, 100, 100, 'key4-key3');
+explain select key1,key2,filler1 from t1 where key1=100 and key2=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 77 Using intersect(key1,key2); Using where
+select key1,key2,filler1 from t1 where key1=100 and key2=100;
+key1 key2 filler1
+100 100 key1-key2-key3-key4
+100 100 key1-key2
+explain select key1,key2 from t1 where key1=100 and key2=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 77 Using intersect(key1,key2); Using where; Using index
+select key1,key2 from t1 where key1=100 and key2=100;
+key1 key2
+100 100
+100 100
+explain select key1,key2,key3,key4 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 154 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
+select key1,key2,key3,key4 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+key1 key2 key3 key4
+100 100 100 100
+100 100 -1 -1
+-1 -1 100 100
+explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 154 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
+select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+key1 key2 key3 key4 filler1
+100 100 100 100 key1-key2-key3-key4
+100 100 -1 -1 key1-key2
+-1 -1 100 100 key4-key3
+explain select key1,key2,key3 from t1 where key1=100 and key2=100 and key3=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3 key1,key2,key3 5,5,5 NULL 2 Using intersect(key1,key2,key3); Using where; Using index
+select key1,key2,key3 from t1 where key1=100 and key2=100 and key3=100;
+key1 key2 key3
+100 100 100
+insert into t1 (key1,key2,key3,key4,filler1) values (101,101,101,101, 'key1234-101');
+explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=101;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3 key1,key2,key3 5,5,5 NULL 83 Using union(intersect(key1,key2),key3); Using where
+select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=101;
+key1 key2 key3 key4 filler1
+100 100 100 100 key1-key2-key3-key4
+100 100 -1 -1 key1-key2
+101 101 101 101 key1234-101
+select key1,key2, filler1 from t1 where key1=100 and key2=100;
+key1 key2 filler1
+100 100 key1-key2-key3-key4
+100 100 key1-key2
+update t1 set filler1='to be deleted' where key1=100 and key2=100;
+update t1 set key1=200,key2=200 where key1=100 and key2=100;
+delete from t1 where key1=200 and key2=200;
+select key1,key2,filler1 from t1 where key2=100 and key2=200;
+key1 key2 filler1
+explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 152 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
+select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+key1 key2 key3 key4 filler1
+-1 -1 100 100 key4-key3
+delete from t1 where key3=100 and key4=100;
+explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 152 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
+select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
+key1 key2 key3 key4 filler1
+explain select key1,key2 from t1 where key1=100 and key2=100;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 76 Using intersect(key1,key2); Using where; Using index
+select key1,key2 from t1 where key1=100 and key2=100;
+key1 key2
+insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 200, 200,'key1-key2-key3-key4-1');
+insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 200, 200,'key1-key2-key3-key4-2');
+insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 200, 200,'key1-key2-key3-key4-3');
+explain select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key3,key1,key2,key4 5,5,5,5 NULL 136 Using union(key3,intersect(key1,key2),key4); Using where
+select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
+key1 key2 key3 key4 filler1
+100 100 200 200 key1-key2-key3-key4-3
+100 100 200 200 key1-key2-key3-key4-2
+100 100 200 200 key1-key2-key3-key4-1
+insert into t1 (key1, key2, key3, key4, filler1) values (-1, -1, -1, 200,'key4');
+explain select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key3,key1,key2,key4 5,5,5,5 NULL 146 Using union(key3,intersect(key1,key2),key4); Using where
+select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
+key1 key2 key3 key4 filler1
+100 100 200 200 key1-key2-key3-key4-3
+100 100 200 200 key1-key2-key3-key4-2
+100 100 200 200 key1-key2-key3-key4-1
+-1 -1 -1 200 key4
+insert into t1 (key1, key2, key3, key4, filler1) values (-1, -1, 200, -1,'key3');
+explain select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2,key3,key4 key3,key1,key2,key4 5,5,5,5 NULL 156 Using union(key3,intersect(key1,key2),key4); Using where
+select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
+key1 key2 key3 key4 filler1
+100 100 200 200 key1-key2-key3-key4-3
+100 100 200 200 key1-key2-key3-key4-2
+100 100 200 200 key1-key2-key3-key4-1
+-1 -1 -1 200 key4
+-1 -1 200 -1 key3
+explain select * from t1 where st_a=1 and st_b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b st_a,st_b 4,4 NULL 3515 Using intersect(st_a,st_b); Using where
+explain select st_a,st_b from t1 where st_a=1 and st_b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b st_a,st_b 4,4 NULL 3515 Using intersect(st_a,st_b); Using where; Using index
+explain select st_a from t1 ignore index (st_a) where st_a=1 and st_b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,stb_swt1a_2b,stb_swt1b,st_b st_b 4 const 15093 Using where
+explain select * from t1 where st_a=1 and swt1a=1 and swt2a=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a sta_swt21a 12 const,const,const 971
+explain select * from t1 where st_b=1 and swt1b=1 and swt2b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref stb_swt1a_2b,stb_swt1b,st_b stb_swt1a_2b 8 const,const 3879 Using where
+explain select * from t1 where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt12a,stb_swt1a_2b 12,12 NULL 58 Using intersect(sta_swt12a,stb_swt1a_2b); Using where
+explain select * from t1 ignore index (sta_swt21a, stb_swt1a_2b)
+where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,st_a,stb_swt1b,st_b sta_swt12a,stb_swt1b 12,8 NULL 58 Using intersect(sta_swt12a,stb_swt1b); Using where
+explain select * from t1 ignore index (sta_swt21a, sta_swt12a, stb_swt1a_2b)
+where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt1a,sta_swt2a,st_a,stb_swt1b,st_b sta_swt1a,sta_swt2a,stb_swt1b 8,8,8 NULL 57 Using intersect(sta_swt1a,sta_swt2a,stb_swt1b); Using where
+explain select * from t1 ignore index (sta_swt21a, sta_swt12a, stb_swt1a_2b, stb_swt1b)
+where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt1a,sta_swt2a,st_a,st_b sta_swt1a,sta_swt2a,st_b 8,8,4 NULL 223 Using intersect(sta_swt1a,sta_swt2a,st_b); Using where
+explain select * from t1
+where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt12a,stb_swt1a_2b 12,12 NULL 58 Using intersect(sta_swt12a,stb_swt1a_2b); Using where
+explain select * from t1
+where st_a=1 and swt1a=1 and st_b=1 and swt1b=1 and swt1b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt1a,stb_swt1b 8,8 NULL 232 Using intersect(sta_swt1a,stb_swt1b); Using where
+explain select st_a from t1
+where st_a=1 and swt1a=1 and st_b=1 and swt1b=1 and swt1b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt1a,stb_swt1b 8,8 NULL 232 Using intersect(sta_swt1a,stb_swt1b); Using where; Using index
+explain select st_a from t1
+where st_a=1 and swt1a=1 and st_b=1 and swt1b=1 and swt1b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt1a,stb_swt1b 8,8 NULL 232 Using intersect(sta_swt1a,stb_swt1b); Using where; Using index
+drop table t0,t1;
+create table t2 (
+a char(10),
+b char(10),
+filler1 char(255),
+filler2 char(255),
+key(a(5)),
+key(b(5))
+);
+select count(a) from t2 where a='BBBBBBBB';
+count(a)
+4
+select count(a) from t2 where b='BBBBBBBB';
+count(a)
+4
+expla_or_bin select count(a_or_b) from t2 where a_or_b='AAAAAAAA' a_or_bnd a_or_b='AAAAAAAA';
+id select_type ta_or_ba_or_ble type possia_or_ble_keys key key_len ref rows Extra_or_b
+1 SIMPLE t2 ref a_or_b,a_or_b a_or_b 6 const 4 Using where
+select count(a) from t2 where a='AAAAAAAA' and b='AAAAAAAA';
+count(a)
+4
+select count(a) from t2 ignore index(a,b) where a='AAAAAAAA' and b='AAAAAAAA';
+count(a)
+4
+insert into t2 values ('ab', 'ab', 'uh', 'oh');
+explain select a from t2 where a='ab';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 6 const 1 Using where
+drop table t2;
+CREATE TABLE t1(c1 INT, c2 INT DEFAULT 0, c3 CHAR(255) DEFAULT '',
+KEY(c1), KEY(c2), KEY(c3));
+INSERT INTO t1(c1) VALUES(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),
+(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0);
+INSERT INTO t1 VALUES(0,0,0);
+CREATE TABLE t2(c1 int);
+INSERT INTO t2 VALUES(1);
+DELETE t1 FROM t1,t2 WHERE t1.c1=0 AND t1.c2=0;
+SELECT * FROM t1;
+c1 c2 c3
+DROP TABLE t1,t2;
+#---------------- Index merge test 2 -------------------------------------------
+SET SESSION STORAGE_ENGINE = MyISAM;
+drop table if exists t1,t2;
+create table t1
+(
+key1 int not null,
+key2 int not null,
+INDEX i1(key1),
+INDEX i2(key2)
+);
+explain select * from t1 where key1 < 5 or key2 > 197;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i1,i2 i1,i2 4,4 NULL 10 Using sort_union(i1,i2); Using where
+select * from t1 where key1 < 5 or key2 > 197;
+key1 key2
+0 200
+1 199
+2 198
+3 197
+4 196
+explain select * from t1 where key1 < 3 or key2 > 195;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i1,i2 i1,i2 4,4 NULL 10 Using sort_union(i1,i2); Using where
+select * from t1 where key1 < 3 or key2 > 195;
+key1 key2
+0 200
+1 199
+2 198
+3 197
+4 196
+alter table t1 add str1 char (255) not null,
+add zeroval int not null default 0,
+add str2 char (255) not null,
+add str3 char (255) not null;
+update t1 set str1='aaa', str2='bbb', str3=concat(key2, '-', key1 div 2, '_' ,if(key1 mod 2 = 0, 'a', 'A'));
+alter table t1 add primary key (str1, zeroval, str2, str3);
+explain select * from t1 where key1 < 5 or key2 > 197;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i1,i2 i1,i2 4,4 NULL 10 Using sort_union(i1,i2); Using where
+select * from t1 where key1 < 5 or key2 > 197;
+key1 key2 str1 zeroval str2 str3
+0 200 aaa 0 bbb 200-0_a
+1 199 aaa 0 bbb 199-0_A
+2 198 aaa 0 bbb 198-1_a
+3 197 aaa 0 bbb 197-1_A
+4 196 aaa 0 bbb 196-2_a
+explain select * from t1 where key1 < 3 or key2 > 195;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i1,i2 i1,i2 4,4 NULL 10 Using sort_union(i1,i2); Using where
+select * from t1 where key1 < 3 or key2 > 195;
+key1 key2 str1 zeroval str2 str3
+0 200 aaa 0 bbb 200-0_a
+1 199 aaa 0 bbb 199-0_A
+2 198 aaa 0 bbb 198-1_a
+3 197 aaa 0 bbb 197-1_A
+4 196 aaa 0 bbb 196-2_a
+drop table t1;
+create table t1 (
+pk integer not null auto_increment primary key,
+key1 integer,
+key2 integer not null,
+filler char (200),
+index (key1),
+index (key2)
+);
+show warnings;
+Level Code Message
+explain select pk from t1 where key1 = 1 and key2 = 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,key2 key1 5 const 4 Using where
+select pk from t1 where key2 = 1 and key1 = 1;
+pk
+26
+27
+select pk from t1 ignore index(key1,key2) where key2 = 1 and key1 = 1;
+pk
+26
+27
+drop table t1;
+create table t1 (
+pk int primary key auto_increment,
+key1a int,
+key2a int,
+key1b int,
+key2b int,
+dummy1 int,
+dummy2 int,
+dummy3 int,
+dummy4 int,
+key3a int,
+key3b int,
+filler1 char (200),
+index i1(key1a, key1b),
+index i2(key2a, key2b),
+index i3(key3a, key3b)
+);
+create table t2 (a int);
+insert into t2 values (0),(1),(2),(3),(4),(NULL);
+insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
+select A.a, B.a, C.a, D.a, C.a, D.a from t2 A,t2 B,t2 C, t2 D;
+insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
+select key1a, key1b, key2a, key2b, key3a, key3b from t1;
+insert into t1 (key1a, key1b, key2a, key2b, key3a, key3b)
+select key1a, key1b, key2a, key2b, key3a, key3b from t1;
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+select count(*) from t1;
+count(*)
+5184
+explain select count(*) from t1 where
+key1a = 2 and key1b is null and key2a = 2 and key2b is null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i1,i2 i1,i2 10,10 NULL 2 Using intersect(i1,i2); Using where; Using index
+select count(*) from t1 where
+key1a = 2 and key1b is null and key2a = 2 and key2b is null;
+count(*)
+4
+explain select count(*) from t1 where
+key1a = 2 and key1b is null and key3a = 2 and key3b is null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i1,i3 i1,i3 10,10 NULL 2 Using intersect(i1,i3); Using where; Using index
+select count(*) from t1 where
+key1a = 2 and key1b is null and key3a = 2 and key3b is null;
+count(*)
+4
+drop table t1,t2;
+create table t1 (
+id1 int,
+id2 date ,
+index idx2 (id1,id2),
+index idx1 (id2)
+);
+insert into t1 values(1,'20040101'), (2,'20040102');
+select * from t1 where id1 = 1 and id2= '20040101';
+id1 id2
+1 2004-01-01
+drop table t1;
+drop view if exists v1;
+CREATE TABLE t1 (
+`oid` int(11) unsigned NOT NULL auto_increment,
+`fk_bbk_niederlassung` int(11) unsigned NOT NULL,
+`fk_wochentag` int(11) unsigned NOT NULL,
+`uhrzeit_von` time NOT NULL COMMENT 'HH:MM',
+`uhrzeit_bis` time NOT NULL COMMENT 'HH:MM',
+`geloescht` tinyint(4) NOT NULL,
+`version` int(5) NOT NULL,
+PRIMARY KEY (`oid`),
+KEY `fk_bbk_niederlassung` (`fk_bbk_niederlassung`),
+KEY `fk_wochentag` (`fk_wochentag`),
+KEY `ix_version` (`version`)
+) DEFAULT CHARSET=latin1;
+insert into t1 values
+(1, 38, 1, '08:00:00', '13:00:00', 0, 1),
+(2, 38, 2, '08:00:00', '13:00:00', 0, 1),
+(3, 38, 3, '08:00:00', '13:00:00', 0, 1),
+(4, 38, 4, '08:00:00', '13:00:00', 0, 1),
+(5, 38, 5, '08:00:00', '13:00:00', 0, 1),
+(6, 38, 5, '08:00:00', '13:00:00', 1, 2),
+(7, 38, 3, '08:00:00', '13:00:00', 1, 2),
+(8, 38, 1, '08:00:00', '13:00:00', 1, 2),
+(9, 38, 2, '08:00:00', '13:00:00', 1, 2),
+(10, 38, 4, '08:00:00', '13:00:00', 1, 2),
+(11, 38, 1, '08:00:00', '13:00:00', 0, 3),
+(12, 38, 2, '08:00:00', '13:00:00', 0, 3),
+(13, 38, 3, '08:00:00', '13:00:00', 0, 3),
+(14, 38, 4, '08:00:00', '13:00:00', 0, 3),
+(15, 38, 5, '08:00:00', '13:00:00', 0, 3),
+(16, 38, 4, '08:00:00', '13:00:00', 0, 4),
+(17, 38, 5, '08:00:00', '13:00:00', 0, 4),
+(18, 38, 1, '08:00:00', '13:00:00', 0, 4),
+(19, 38, 2, '08:00:00', '13:00:00', 0, 4),
+(20, 38, 3, '08:00:00', '13:00:00', 0, 4),
+(21, 7, 1, '08:00:00', '13:00:00', 0, 1),
+(22, 7, 2, '08:00:00', '13:00:00', 0, 1),
+(23, 7, 3, '08:00:00', '13:00:00', 0, 1),
+(24, 7, 4, '08:00:00', '13:00:00', 0, 1),
+(25, 7, 5, '08:00:00', '13:00:00', 0, 1);
+create view v1 as
+select
+zeit1.oid AS oid,
+zeit1.fk_bbk_niederlassung AS fk_bbk_niederlassung,
+zeit1.fk_wochentag AS fk_wochentag,
+zeit1.uhrzeit_von AS uhrzeit_von,
+zeit1.uhrzeit_bis AS uhrzeit_bis,
+zeit1.geloescht AS geloescht,
+zeit1.version AS version
+from
+t1 zeit1
+where
+(zeit1.version =
+(select max(zeit2.version) AS `max(version)`
+ from t1 zeit2
+where
+((zeit1.fk_bbk_niederlassung = zeit2.fk_bbk_niederlassung) and
+(zeit1.fk_wochentag = zeit2.fk_wochentag) and
+(zeit1.uhrzeit_von = zeit2.uhrzeit_von) and
+(zeit1.uhrzeit_bis = zeit2.uhrzeit_bis)
+)
+)
+)
+and (zeit1.geloescht = 0);
+select * from v1 where oid = 21;
+oid fk_bbk_niederlassung fk_wochentag uhrzeit_von uhrzeit_bis geloescht version
+21 7 1 08:00:00 13:00:00 0 1
+drop view v1;
+drop table t1;
+CREATE TABLE t1(
+t_cpac varchar(2) NOT NULL,
+t_vers varchar(4) NOT NULL,
+t_rele varchar(2) NOT NULL,
+t_cust varchar(4) NOT NULL,
+filler1 char(250) default NULL,
+filler2 char(250) default NULL,
+PRIMARY KEY (t_cpac,t_vers,t_rele,t_cust),
+UNIQUE KEY IX_4 (t_cust,t_cpac,t_vers,t_rele),
+KEY IX_5 (t_vers,t_rele,t_cust)
+);
+insert into t1 values
+('tm','2.5 ','a ',' ','',''), ('tm','2.5U','a ','stnd','',''),
+('da','3.3 ','b ',' ','',''), ('da','3.3U','b ','stnd','',''),
+('tl','7.6 ','a ',' ','',''), ('tt','7.6 ','a ',' ','',''),
+('bc','B61 ','a ',' ','',''), ('bp','B61 ','a ',' ','',''),
+('ca','B61 ','a ',' ','',''), ('ci','B61 ','a ',' ','',''),
+('cp','B61 ','a ',' ','',''), ('dm','B61 ','a ',' ','',''),
+('ec','B61 ','a ',' ','',''), ('ed','B61 ','a ',' ','',''),
+('fm','B61 ','a ',' ','',''), ('nt','B61 ','a ',' ','',''),
+('qm','B61 ','a ',' ','',''), ('tc','B61 ','a ',' ','',''),
+('td','B61 ','a ',' ','',''), ('tf','B61 ','a ',' ','',''),
+('tg','B61 ','a ',' ','',''), ('ti','B61 ','a ',' ','',''),
+('tp','B61 ','a ',' ','',''), ('ts','B61 ','a ',' ','',''),
+('wh','B61 ','a ',' ','',''), ('bc','B61U','a ','stnd','',''),
+('bp','B61U','a ','stnd','',''), ('ca','B61U','a ','stnd','',''),
+('ci','B61U','a ','stnd','',''), ('cp','B61U','a ','stnd','',''),
+('dm','B61U','a ','stnd','',''), ('ec','B61U','a ','stnd','',''),
+('fm','B61U','a ','stnd','',''), ('nt','B61U','a ','stnd','',''),
+('qm','B61U','a ','stnd','',''), ('tc','B61U','a ','stnd','',''),
+('td','B61U','a ','stnd','',''), ('tf','B61U','a ','stnd','',''),
+('tg','B61U','a ','stnd','',''), ('ti','B61U','a ','stnd','',''),
+('tp','B61U','a ','stnd','',''), ('ts','B61U','a ','stnd','',''),
+('wh','B61U','a ','stnd','','');
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `t_cpac` varchar(2) NOT NULL,
+ `t_vers` varchar(4) NOT NULL,
+ `t_rele` varchar(2) NOT NULL,
+ `t_cust` varchar(4) NOT NULL,
+ `filler1` char(250) DEFAULT NULL,
+ `filler2` char(250) DEFAULT NULL,
+ PRIMARY KEY (`t_cpac`,`t_vers`,`t_rele`,`t_cust`),
+ UNIQUE KEY `IX_4` (`t_cust`,`t_cpac`,`t_vers`,`t_rele`),
+ KEY `IX_5` (`t_vers`,`t_rele`,`t_cust`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select t_vers,t_rele,t_cust,filler1 from t1 where t_vers = '7.6';
+t_vers t_rele t_cust filler1
+7.6 a
+7.6 a
+select t_vers,t_rele,t_cust,filler1 from t1 where t_vers = '7.6'
+ and t_rele='a' and t_cust = ' ';
+t_vers t_rele t_cust filler1
+7.6 a
+7.6 a
+drop table t1;
+create table t1 (
+pk int(11) not null auto_increment,
+a int(11) not null default '0',
+b int(11) not null default '0',
+c int(11) not null default '0',
+filler1 datetime, filler2 varchar(15),
+filler3 longtext,
+kp1 varchar(4), kp2 varchar(7),
+kp3 varchar(2), kp4 varchar(4),
+kp5 varchar(7),
+filler4 char(1),
+primary key (pk),
+key idx1(a,b,c),
+key idx2(c),
+key idx3(kp1,kp2,kp3,kp4,kp5)
+) default charset=latin1;
+set @fill=NULL;
+SELECT COUNT(*) FROM t1 WHERE b = 0 AND a = 0 AND c = 13286427 AND
+kp1='279' AND kp2='ELM0678' AND kp3='6' AND kp4='10' AND kp5 = 'R ';
+COUNT(*)
+1
+drop table t1;
+create table t1
+(
+key1 int not null,
+key2 int not null default 0,
+key3 int not null default 0
+);
+insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8);
+set @d=8;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+insert into t1 (key1) select key1+@d from t1;
+set @d=@d*2;
+alter table t1 add index i2(key2);
+alter table t1 add index i3(key3);
+update t1 set key2=key1,key3=key1;
+explain select * from t1 where (key3 > 30 and key3<35) or (key2 >32 and key2 < 40);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge i2,i3 i3,i2 4,4 NULL 11 Using sort_union(i3,i2); Using where
+select * from t1 where (key3 > 30 and key3<35) or (key2 >32 and key2 < 40);
+key1 key2 key3
+31 31 31
+32 32 32
+33 33 33
+34 34 34
+35 35 35
+36 36 36
+37 37 37
+38 38 38
+39 39 39
+drop table t1;
+#---------------- 2-sweeps read Index merge test 2 -------------------------------
+SET SESSION STORAGE_ENGINE = MyISAM;
+drop table if exists t1;
+create table t1 (
+pk int primary key,
+key1 int,
+key2 int,
+filler char(200),
+filler2 char(200),
+index(key1),
+index(key2)
+);
+select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 );
+pk key1 key2 filler filler2
+10 10 10 filler-data filler-data-2
+9 9 9 filler-data filler-data-2
+8 8 8 filler-data filler-data-2
+7 7 7 filler-data filler-data-2
+6 6 6 filler-data filler-data-2
+5 5 5 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+set @maxv=1000;
+select * from t1 where
+(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
+or key1=18 or key1=60;
+pk key1 key2 filler filler2
+1000 1000 1000 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+60 60 60 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+18 18 18 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+1 1 1 filler-data filler-data-2
+select * from t1 where
+(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
+or key1 < 3 or key1 > @maxv-11;
+pk key1 key2 filler filler2
+1000 1000 1000 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+990 990 990 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+1 1 1 filler-data filler-data-2
+select * from t1 where
+(pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
+or
+(key1 < 5) or (key1 > 10 and key1 < 15) or (key1 >= 50 and key1 < 55 ) or (key1 > @maxv-10);
+pk key1 key2 filler filler2
+1000 1000 1000 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+1 1 1 filler-data filler-data-2
+select * from t1 where
+(pk > 10 and pk < 15) or (pk >= 50 and pk < 55 )
+or
+(key1 < 5) or (key1 > @maxv-10);
+pk key1 key2 filler filler2
+1000 1000 1000 filler-data filler-data-2
+999 999 999 filler-data filler-data-2
+998 998 998 filler-data filler-data-2
+997 997 997 filler-data filler-data-2
+996 996 996 filler-data filler-data-2
+995 995 995 filler-data filler-data-2
+994 994 994 filler-data filler-data-2
+993 993 993 filler-data filler-data-2
+992 992 992 filler-data filler-data-2
+991 991 991 filler-data filler-data-2
+54 54 54 filler-data filler-data-2
+53 53 53 filler-data filler-data-2
+52 52 52 filler-data filler-data-2
+51 51 51 filler-data filler-data-2
+50 50 50 filler-data filler-data-2
+14 14 14 filler-data filler-data-2
+13 13 13 filler-data filler-data-2
+12 12 12 filler-data filler-data-2
+11 11 11 filler-data filler-data-2
+4 4 4 filler-data filler-data-2
+3 3 3 filler-data filler-data-2
+2 2 2 filler-data filler-data-2
+1 1 1 filler-data filler-data-2
+drop table t1;
+#---------------- Clustered PK ROR-index_merge tests -----------------------------
+SET SESSION STORAGE_ENGINE = MyISAM;
+drop table if exists t1;
+create table t1
+(
+pk1 int not null,
+pk2 int not null,
+key1 int not null,
+key2 int not null,
+pktail1ok int not null,
+pktail2ok int not null,
+pktail3bad int not null,
+pktail4bad int not null,
+pktail5bad int not null,
+pk2copy int not null,
+badkey int not null,
+filler1 char (200),
+filler2 char (200),
+key (key1),
+key (key2),
+/* keys with tails from CPK members */
+key (pktail1ok, pk1),
+key (pktail2ok, pk1, pk2),
+key (pktail3bad, pk2, pk1),
+key (pktail4bad, pk1, pk2copy),
+key (pktail5bad, pk1, pk2, pk2copy),
+primary key (pk1, pk2)
+);
+explain select * from t1 where pk1 = 1 and pk2 < 80 and key1=0;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range PRIMARY,key1 PRIMARY 8 NULL 7 Using where
+select * from t1 where pk1 = 1 and pk2 < 80 and key1=0;
+pk1 pk2 key1 key2 pktail1ok pktail2ok pktail3bad pktail4bad pktail5bad pk2copy badkey filler1 filler2
+1 10 0 0 0 0 0 0 0 10 0 filler-data-10 filler2
+1 11 0 0 0 0 0 0 0 11 0 filler-data-11 filler2
+1 12 0 0 0 0 0 0 0 12 0 filler-data-12 filler2
+1 13 0 0 0 0 0 0 0 13 0 filler-data-13 filler2
+1 14 0 0 0 0 0 0 0 14 0 filler-data-14 filler2
+1 15 0 0 0 0 0 0 0 15 0 filler-data-15 filler2
+1 16 0 0 0 0 0 0 0 16 0 filler-data-16 filler2
+1 17 0 0 0 0 0 0 0 17 0 filler-data-17 filler2
+1 18 0 0 0 0 0 0 0 18 0 filler-data-18 filler2
+1 19 0 0 0 0 0 0 0 19 0 filler-data-19 filler2
+explain select pk1,pk2 from t1 where key1 = 10 and key2=10 and 2*pk1+1 < 2*96+1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 4,4 NULL 1 Using intersect(key1,key2); Using where
+select pk1,pk2 from t1 where key1 = 10 and key2=10 and 2*pk1+1 < 2*96+1;
+pk1 pk2
+95 59
+95 58
+95 57
+95 56
+95 55
+95 54
+95 53
+95 52
+95 51
+95 50
+explain select * from t1 where badkey=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1 key1 4 const 91 Using where
+explain select * from t1 where pk1 < 7500 and key1 = 10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref PRIMARY,key1 key1 4 const ROWS Using where
+explain select * from t1 where pktail1ok=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail1ok pktail1ok 4 const 76 Using where
+explain select * from t1 where pktail2ok=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail2ok pktail2ok 4 const 82 Using where
+explain select * from t1 where (pktail2ok=1 and pk1< 50000) or key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge PRIMARY,key1,pktail2ok pktail2ok,key1 8,4 NULL 173 Using sort_union(pktail2ok,key1); Using where
+explain select * from t1 where pktail3bad=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail3bad pktail3bad 4 const 73 Using where
+explain select * from t1 where pktail4bad=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail4bad pktail4bad 4 const 82 Using where
+explain select * from t1 where pktail5bad=1 and key1=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref key1,pktail5bad pktail5bad 4 const 70 Using where
+explain select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge key1,key2 key1,key2 4,4 NULL 1 Using intersect(key1,key2); Using where
+select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
+pk1 pk2 key1 key2
+104 49 10 10
+104 48 10 10
+104 47 10 10
+104 46 10 10
+104 45 10 10
+104 44 10 10
+104 43 10 10
+104 42 10 10
+104 41 10 10
+104 40 10 10
+drop table t1;
+create table t1
+(
+RUNID varchar(22),
+SUBMITNR varchar(5),
+ORDERNR char(1),
+PROGRAMM varchar(8),
+TESTID varchar(4),
+UCCHECK char(1),
+ETEXT varchar(80),
+ETEXT_TYPE char(1),
+INFO char(1),
+SEVERITY tinyint(3),
+TADIRFLAG char(1),
+PRIMARY KEY (RUNID,SUBMITNR,ORDERNR,PROGRAMM,TESTID,UCCHECK),
+KEY `TVERM~KEY` (PROGRAMM,TESTID,UCCHECK)
+) DEFAULT CHARSET=latin1;
+update t1 set `ETEXT` = '', `ETEXT_TYPE`='', `INFO`='', `SEVERITY`='', `TADIRFLAG`=''
+WHERE
+`RUNID`= '' AND `SUBMITNR`= '' AND `ORDERNR`='' AND `PROGRAMM`='' AND
+`TESTID`='' AND `UCCHECK`='';
+drop table t1;
+#
+# Generic @@optimizer_switch tests (move those into a separate file if
+# we get another @@optimizer_switch user)
+#
+select @@optimizer_switch;
+@@optimizer_switch
+index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on
+set optimizer_switch='index_merge=off,index_merge_union=off';
+select @@optimizer_switch;
+@@optimizer_switch
+index_merge=off,index_merge_union=off,index_merge_sort_union=on,index_merge_intersection=on
+set optimizer_switch='index_merge_union=on';
+select @@optimizer_switch;
+@@optimizer_switch
+index_merge=off,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on
+set optimizer_switch='default,index_merge_sort_union=off';
+select @@optimizer_switch;
+@@optimizer_switch
+index_merge=on,index_merge_union=on,index_merge_sort_union=off,index_merge_intersection=on
+set optimizer_switch=4;
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of '4'
+set optimizer_switch=NULL;
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'NULL'
+set optimizer_switch='default,index_merge';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge'
+set optimizer_switch='index_merge=index_merge';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge=index_merge'
+set optimizer_switch='index_merge=on,but...';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'but...'
+set optimizer_switch='index_merge=';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge='
+set optimizer_switch='index_merge';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge'
+set optimizer_switch='on';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'on'
+set optimizer_switch='index_merge=on,index_merge=off';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge=off'
+set optimizer_switch='index_merge_union=on,index_merge_union=default';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge_union=default'
+set optimizer_switch='default,index_merge=on,index_merge=off,default';
+ERROR 42000: Variable 'optimizer_switch' can't be set to the value of 'index_merge=off,default'
+set optimizer_switch=default;
+set optimizer_switch='index_merge=off,index_merge_union=off,default';
+select @@optimizer_switch;
+@@optimizer_switch
+index_merge=off,index_merge_union=off,index_merge_sort_union=on,index_merge_intersection=on
+set optimizer_switch=default;
+select @@global.optimizer_switch;
+@@global.optimizer_switch
+index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on
+set @@global.optimizer_switch=default;
+select @@global.optimizer_switch;
+@@global.optimizer_switch
+index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on
+#
+# Check index_merge's @@optimizer_switch flags
+#
+select @@optimizer_switch;
+@@optimizer_switch
+index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on
+create table t0 (a int);
+insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t1 (a int, b int, c int, filler char(100),
+key(a), key(b), key(c));
+insert into t1 select
+A.a * B.a*10 + C.a*100,
+A.a * B.a*10 + C.a*100,
+A.a,
+'filler'
+from t0 A, t0 B, t0 C;
+This should use union:
+explain select * from t1 where a=1 or b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 2 Using union(a,b); Using where
+This should use ALL:
+set optimizer_switch='default,index_merge=off';
+explain select * from t1 where a=1 or b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL a,b NULL NULL NULL 1000 Using where
+This should use sort-union:
+set optimizer_switch='default,index_merge_union=off';
+explain select * from t1 where a=1 or b=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 2 Using sort_union(a,b); Using where
+This will use sort-union:
+set optimizer_switch=default;
+explain select * from t1 where a<1 or b <1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 38 Using sort_union(a,b); Using where
+This should use ALL:
+set optimizer_switch='default,index_merge_sort_union=off';
+explain select * from t1 where a<1 or b <1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL a,b NULL NULL NULL 1000 Using where
+This should use ALL:
+set optimizer_switch='default,index_merge=off';
+explain select * from t1 where a<1 or b <1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL a,b NULL NULL NULL 1000 Using where
+This will use sort-union:
+set optimizer_switch='default,index_merge_union=off';
+explain select * from t1 where a<1 or b <1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 38 Using sort_union(a,b); Using where
+alter table t1 add d int, add key(d);
+update t1 set d=a;
+This will use sort_union:
+set optimizer_switch=default;
+explain select * from t1 where (a=3 or b in (1,2)) and (c=3 or d=4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b,c,d a,b 5,5 NULL 3 Using sort_union(a,b); Using where
+And if we disable sort_union, union:
+set optimizer_switch='default,index_merge_sort_union=off';
+explain select * from t1 where (a=3 or b in (1,2)) and (c=3 or d=4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b,c,d c,d 5,5 NULL 100 Using union(c,d); Using where
+drop table t1;
+create table t1 (
+a int, b int, c int,
+filler1 char(200), filler2 char(200),
+key(a),key(b),key(c)
+);
+insert into t1
+select A.a+10*B.a, A.a+10*B.a, A.a+10*B.a+100*C.a, 'foo', 'bar'
+from t0 A, t0 B, t0 C, t0 D where D.a<5;
+This should be intersect:
+set optimizer_switch=default;
+explain select * from t1 where a=10 and b=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 1 Using intersect(a,b); Using where
+No intersect when index_merge is disabled:
+set optimizer_switch='default,index_merge=off';
+explain select * from t1 where a=10 and b=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a,b a 5 const 49 Using where
+No intersect if it is disabled:
+set optimizer_switch='default,index_merge_intersection=off';
+explain select * from t1 where a=10 and b=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a,b a 5 const 49 Using where
+Do intersect when union was disabled
+set optimizer_switch='default,index_merge_union=off';
+explain select * from t1 where a=10 and b=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 1 Using intersect(a,b); Using where
+Do intersect when sort_union was disabled
+set optimizer_switch='default,index_merge_sort_union=off';
+explain select * from t1 where a=10 and b=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b a,b 5,5 NULL 1 Using intersect(a,b); Using where
+This will use intersection inside a union:
+set optimizer_switch=default;
+explain select * from t1 where a=10 and b=10 or c=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b,c a,b,c 5,5,5 NULL 6 Using union(intersect(a,b),c); Using where
+Should be only union left:
+set optimizer_switch='default,index_merge_intersection=off';
+explain select * from t1 where a=10 and b=10 or c=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b,c a,c 5,5 NULL 54 Using union(a,c); Using where
+This will switch to sort-union (intersection will be gone, too,
+thats a known limitation:
+set optimizer_switch='default,index_merge_union=off';
+explain select * from t1 where a=10 and b=10 or c=10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index_merge a,b,c a,c 5,5 NULL 54 Using sort_union(a,c); Using where
+set optimizer_switch=default;
+show variables like 'optimizer_switch';
+Variable_name Value
+optimizer_switch index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on
+drop table t0, t1;
diff --git a/mysql-test/r/index_merge_ror.result b/mysql-test/r/index_merge_ror.result
deleted file mode 100644
index 5d08125be53..00000000000
--- a/mysql-test/r/index_merge_ror.result
+++ /dev/null
@@ -1,207 +0,0 @@
-drop table if exists t0,t1,t2;
-select count(*) from t1;
-count(*)
-64801
-explain select key1,key2 from t1 where key1=100 and key2=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 58 Using intersect(key1,key2); Using where; Using index
-select key1,key2 from t1 where key1=100 and key2=100;
-key1 key2
-100 100
-explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 154 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
-select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-key1 key2 key3 key4 filler1
-100 100 100 100 key1-key2-key3-key4
-insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, -1, -1, 'key1-key2');
-insert into t1 (key1, key2, key3, key4, filler1) values (-1, -1, 100, 100, 'key4-key3');
-explain select key1,key2,filler1 from t1 where key1=100 and key2=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 58 Using intersect(key1,key2); Using where
-select key1,key2,filler1 from t1 where key1=100 and key2=100;
-key1 key2 filler1
-100 100 key1-key2-key3-key4
-100 100 key1-key2
-explain select key1,key2 from t1 where key1=100 and key2=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 58 Using intersect(key1,key2); Using where; Using index
-select key1,key2 from t1 where key1=100 and key2=100;
-key1 key2
-100 100
-100 100
-explain select key1,key2,key3,key4 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 154 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
-select key1,key2,key3,key4 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-key1 key2 key3 key4
-100 100 100 100
-100 100 -1 -1
--1 -1 100 100
-explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 154 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
-select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-key1 key2 key3 key4 filler1
-100 100 100 100 key1-key2-key3-key4
-100 100 -1 -1 key1-key2
--1 -1 100 100 key4-key3
-explain select key1,key2,key3 from t1 where key1=100 and key2=100 and key3=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3 key1,key2,key3 5,5,5 NULL 2 Using intersect(key1,key2,key3); Using where; Using index
-select key1,key2,key3 from t1 where key1=100 and key2=100 and key3=100;
-key1 key2 key3
-100 100 100
-insert into t1 (key1,key2,key3,key4,filler1) values (101,101,101,101, 'key1234-101');
-explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=101;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3 key1,key2,key3 5,5,5 NULL 83 Using union(intersect(key1,key2),key3); Using where
-select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=101;
-key1 key2 key3 key4 filler1
-100 100 100 100 key1-key2-key3-key4
-100 100 -1 -1 key1-key2
-101 101 101 101 key1234-101
-select key1,key2, filler1 from t1 where key1=100 and key2=100;
-key1 key2 filler1
-100 100 key1-key2-key3-key4
-100 100 key1-key2
-update t1 set filler1='to be deleted' where key1=100 and key2=100;
-update t1 set key1=200,key2=200 where key1=100 and key2=100;
-delete from t1 where key1=200 and key2=200;
-select key1,key2,filler1 from t1 where key2=100 and key2=200;
-key1 key2 filler1
-explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 152 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
-select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-key1 key2 key3 key4 filler1
--1 -1 100 100 key4-key3
-delete from t1 where key3=100 and key4=100;
-explain select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key1,key2,key3,key4 5,5,5,5 NULL 152 Using union(intersect(key1,key2),intersect(key3,key4)); Using where
-select key1,key2,key3,key4,filler1 from t1 where key1=100 and key2=100 or key3=100 and key4=100;
-key1 key2 key3 key4 filler1
-explain select key1,key2 from t1 where key1=100 and key2=100;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 57 Using intersect(key1,key2); Using where; Using index
-select key1,key2 from t1 where key1=100 and key2=100;
-key1 key2
-insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 200, 200,'key1-key2-key3-key4-1');
-insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 200, 200,'key1-key2-key3-key4-2');
-insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 200, 200,'key1-key2-key3-key4-3');
-explain select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key3,key1,key2,key4 5,5,5,5 NULL 136 Using union(key3,intersect(key1,key2),key4); Using where
-select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
-key1 key2 key3 key4 filler1
-100 100 200 200 key1-key2-key3-key4-3
-100 100 200 200 key1-key2-key3-key4-2
-100 100 200 200 key1-key2-key3-key4-1
-insert into t1 (key1, key2, key3, key4, filler1) values (-1, -1, -1, 200,'key4');
-explain select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key3,key1,key2,key4 5,5,5,5 NULL 146 Using union(key3,intersect(key1,key2),key4); Using where
-select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
-key1 key2 key3 key4 filler1
-100 100 200 200 key1-key2-key3-key4-3
-100 100 200 200 key1-key2-key3-key4-2
-100 100 200 200 key1-key2-key3-key4-1
--1 -1 -1 200 key4
-insert into t1 (key1, key2, key3, key4, filler1) values (-1, -1, 200, -1,'key3');
-explain select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2,key3,key4 key3,key1,key2,key4 5,5,5,5 NULL 156 Using union(key3,intersect(key1,key2),key4); Using where
-select key1,key2,key3,key4,filler1 from t1 where key3=200 or (key1=100 and key2=100) or key4=200;
-key1 key2 key3 key4 filler1
-100 100 200 200 key1-key2-key3-key4-3
-100 100 200 200 key1-key2-key3-key4-2
-100 100 200 200 key1-key2-key3-key4-1
--1 -1 -1 200 key4
--1 -1 200 -1 key3
-explain select * from t1 where st_a=1 and st_b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b st_a,st_b 4,4 NULL 2637 Using intersect(st_a,st_b); Using where
-explain select st_a,st_b from t1 where st_a=1 and st_b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b st_a,st_b 4,4 NULL 2637 Using intersect(st_a,st_b); Using where; Using index
-explain select st_a from t1 ignore index (st_a) where st_a=1 and st_b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,stb_swt1a_2b,stb_swt1b,st_b st_b 4 const 15093 Using where
-explain select * from t1 where st_a=1 and swt1a=1 and swt2a=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a sta_swt21a 12 const,const,const 971
-explain select * from t1 where st_b=1 and swt1b=1 and swt2b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref stb_swt1a_2b,stb_swt1b,st_b stb_swt1a_2b 8 const,const 3879 Using where
-explain select * from t1 where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt12a,stb_swt1a_2b 12,12 NULL 44 Using intersect(sta_swt12a,stb_swt1a_2b); Using where
-explain select * from t1 ignore index (sta_swt21a, stb_swt1a_2b)
-where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,st_a,stb_swt1b,st_b sta_swt12a,stb_swt1b 12,8 NULL 44 Using intersect(sta_swt12a,stb_swt1b); Using where
-explain select * from t1 ignore index (sta_swt21a, sta_swt12a, stb_swt1a_2b)
-where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt1a,sta_swt2a,st_a,stb_swt1b,st_b sta_swt1a,sta_swt2a,stb_swt1b 8,8,8 NULL 43 Using intersect(sta_swt1a,sta_swt2a,stb_swt1b); Using where
-explain select * from t1 ignore index (sta_swt21a, sta_swt12a, stb_swt1a_2b, stb_swt1b)
-where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1 and swt2b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt1a,sta_swt2a,st_a,st_b sta_swt1a,sta_swt2a,st_b 8,8,4 NULL 168 Using intersect(sta_swt1a,sta_swt2a,st_b); Using where
-explain select * from t1
-where st_a=1 and swt1a=1 and swt2a=1 and st_b=1 and swt1b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt12a,stb_swt1a_2b 12,12 NULL 44 Using intersect(sta_swt12a,stb_swt1a_2b); Using where
-explain select * from t1
-where st_a=1 and swt1a=1 and st_b=1 and swt1b=1 and swt1b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt1a,stb_swt1b 8,8 NULL 174 Using intersect(sta_swt1a,stb_swt1b); Using where
-explain select st_a from t1
-where st_a=1 and swt1a=1 and st_b=1 and swt1b=1 and swt1b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt1a,stb_swt1b 8,8 NULL 174 Using intersect(sta_swt1a,stb_swt1b); Using where; Using index
-explain select st_a from t1
-where st_a=1 and swt1a=1 and st_b=1 and swt1b=1 and swt1b=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a,stb_swt1a_2b,stb_swt1b,st_b sta_swt1a,stb_swt1b 8,8 NULL 174 Using intersect(sta_swt1a,stb_swt1b); Using where; Using index
-drop table t0,t1;
-create table t2 (
-a char(10),
-b char(10),
-filler1 char(255),
-filler2 char(255),
-key(a(5)),
-key(b(5))
-);
-select count(a) from t2 where a='BBBBBBBB';
-count(a)
-4
-select count(a) from t2 where b='BBBBBBBB';
-count(a)
-4
-expla_or_bin select count(a_or_b) from t2 where a_or_b='AAAAAAAA' a_or_bnd a_or_b='AAAAAAAA';
-id select_type ta_or_ba_or_ble type possia_or_ble_keys key key_len ref rows Extra_or_b
-1 SIMPLE t2 ref a_or_b,a_or_b a_or_b 6 const 4 Using where
-select count(a) from t2 where a='AAAAAAAA' and b='AAAAAAAA';
-count(a)
-4
-select count(a) from t2 ignore index(a,b) where a='AAAAAAAA' and b='AAAAAAAA';
-count(a)
-4
-insert into t2 values ('ab', 'ab', 'uh', 'oh');
-explain select a from t2 where a='ab';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ref a a 6 const 1 Using where
-drop table t2;
-CREATE TABLE t1(c1 INT, c2 INT DEFAULT 0, c3 CHAR(255) DEFAULT '',
-KEY(c1), KEY(c2), KEY(c3));
-INSERT INTO t1(c1) VALUES(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),
-(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0);
-INSERT INTO t1 VALUES(0,0,0);
-CREATE TABLE t2(c1 int);
-INSERT INTO t2 VALUES(1);
-DELETE t1 FROM t1,t2 WHERE t1.c1=0 AND t1.c2=0;
-SELECT * FROM t1;
-c1 c2 c3
-DROP TABLE t1,t2;
diff --git a/mysql-test/r/index_merge_ror_cpk.result b/mysql-test/r/index_merge_ror_cpk.result
deleted file mode 100644
index 79bb1297abf..00000000000
--- a/mysql-test/r/index_merge_ror_cpk.result
+++ /dev/null
@@ -1,120 +0,0 @@
-drop table if exists t1;
-create table t1
-(
-pk1 int not null,
-pk2 int not null,
-key1 int not null,
-key2 int not null,
-pktail1ok int not null,
-pktail2ok int not null,
-pktail3bad int not null,
-pktail4bad int not null,
-pktail5bad int not null,
-pk2copy int not null,
-badkey int not null,
-filler1 char (200),
-filler2 char (200),
-key (key1),
-key (key2),
-/* keys with tails from CPK members */
-key (pktail1ok, pk1),
-key (pktail2ok, pk1, pk2),
-key (pktail3bad, pk2, pk1),
-key (pktail4bad, pk1, pk2copy),
-key (pktail5bad, pk1, pk2, pk2copy),
-primary key (pk1, pk2)
-) engine=innodb;
-explain select * from t1 where pk1 = 1 and pk2 < 80 and key1=0;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range PRIMARY,key1 PRIMARY 8 NULL 9 Using where
-select * from t1 where pk1 = 1 and pk2 < 80 and key1=0;
-pk1 pk2 key1 key2 pktail1ok pktail2ok pktail3bad pktail4bad pktail5bad pk2copy badkey filler1 filler2
-1 10 0 0 0 0 0 0 0 10 0 filler-data-10 filler2
-1 11 0 0 0 0 0 0 0 11 0 filler-data-11 filler2
-1 12 0 0 0 0 0 0 0 12 0 filler-data-12 filler2
-1 13 0 0 0 0 0 0 0 13 0 filler-data-13 filler2
-1 14 0 0 0 0 0 0 0 14 0 filler-data-14 filler2
-1 15 0 0 0 0 0 0 0 15 0 filler-data-15 filler2
-1 16 0 0 0 0 0 0 0 16 0 filler-data-16 filler2
-1 17 0 0 0 0 0 0 0 17 0 filler-data-17 filler2
-1 18 0 0 0 0 0 0 0 18 0 filler-data-18 filler2
-1 19 0 0 0 0 0 0 0 19 0 filler-data-19 filler2
-explain select pk1,pk2 from t1 where key1 = 10 and key2=10 and 2*pk1+1 < 2*96+1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 4,4 NULL 1 Using intersect(key1,key2); Using where; Using index
-select pk1,pk2 from t1 where key1 = 10 and key2=10 and 2*pk1+1 < 2*96+1;
-pk1 pk2
-95 50
-95 51
-95 52
-95 53
-95 54
-95 55
-95 56
-95 57
-95 58
-95 59
-explain select * from t1 where badkey=1 and key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref key1 key1 4 const 100 Using where
-explain select * from t1 where pk1 < 7500 and key1 = 10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge PRIMARY,key1 key1,PRIMARY 4,4 NULL ROWS Using intersect(key1,PRIMARY); Using where
-explain select * from t1 where pktail1ok=1 and key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,pktail1ok key1,pktail1ok 4,4 NULL 1 Using intersect(key1,pktail1ok); Using where
-explain select * from t1 where pktail2ok=1 and key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,pktail2ok key1,pktail2ok 4,4 NULL 1 Using intersect(key1,pktail2ok); Using where
-select ' The following is actually a deficiency, it uses sort_union currently:' as 'note:';
-note:
- The following is actually a deficiency, it uses sort_union currently:
-explain select * from t1 where (pktail2ok=1 and pk1< 50000) or key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge PRIMARY,key1,pktail2ok pktail2ok,key1 8,4 NULL 199 Using sort_union(pktail2ok,key1); Using where
-explain select * from t1 where pktail3bad=1 and key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref key1,pktail3bad key1 4 const 100 Using where
-explain select * from t1 where pktail4bad=1 and key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref key1,pktail4bad key1 4 const 100 Using where
-explain select * from t1 where pktail5bad=1 and key1=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref key1,pktail5bad key1 4 const 100 Using where
-explain select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 4,4 NULL 1 Using intersect(key1,key2); Using where; Using index
-select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
-pk1 pk2 key1 key2
-95 50 10 10
-95 51 10 10
-95 52 10 10
-95 53 10 10
-95 54 10 10
-95 55 10 10
-95 56 10 10
-95 57 10 10
-95 58 10 10
-95 59 10 10
-drop table t1;
-create table t1
-(
-RUNID varchar(22),
-SUBMITNR varchar(5),
-ORDERNR char(1) ,
-PROGRAMM varchar(8),
-TESTID varchar(4),
-UCCHECK char(1),
-ETEXT varchar(80),
-ETEXT_TYPE char(1),
-INFO char(1),
-SEVERITY tinyint(3),
-TADIRFLAG char(1),
-PRIMARY KEY (RUNID,SUBMITNR,ORDERNR,PROGRAMM,TESTID,UCCHECK),
-KEY `TVERM~KEY` (PROGRAMM,TESTID,UCCHECK)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-update t1 set `ETEXT` = '', `ETEXT_TYPE`='', `INFO`='', `SEVERITY`='', `TADIRFLAG`=''
-WHERE
-`RUNID`= '' AND `SUBMITNR`= '' AND `ORDERNR`='' AND `PROGRAMM`='' AND
-`TESTID`='' AND `UCCHECK`='';
-drop table t1;
diff --git a/mysql-test/r/information_schema.result b/mysql-test/r/information_schema.result
index 54fa4be027e..9a75e478264 100644
--- a/mysql-test/r/information_schema.result
+++ b/mysql-test/r/information_schema.result
@@ -9,11 +9,13 @@ create user mysqltest_3@localhost;
create user mysqltest_3;
select * from information_schema.SCHEMATA where schema_name > 'm';
CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME DEFAULT_COLLATION_NAME SQL_PATH
+NULL mtr latin1 latin1_swedish_ci NULL
NULL mysql latin1 latin1_swedish_ci NULL
NULL test latin1 latin1_swedish_ci NULL
select schema_name from information_schema.schemata;
schema_name
information_schema
+mtr
mysql
test
show databases like 't%';
@@ -22,6 +24,7 @@ test
show databases;
Database
information_schema
+mtr
mysql
test
show databases where `database` = 't%';
@@ -33,7 +36,11 @@ create table t3(a int, KEY a_data (a));
create table mysqltest.t4(a int);
create table t5 (id int auto_increment primary key);
insert into t5 values (10);
-create view v1 (c) as select table_name from information_schema.TABLES;
+create view v1 (c) as
+SELECT table_name FROM information_schema.TABLES
+WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND
+table_name<>'ndb_binlog_index' AND
+table_name<>'ndb_apply_status';
select * from v1;
c
CHARACTER_SETS
@@ -41,11 +48,22 @@ COLLATIONS
COLLATION_CHARACTER_SET_APPLICABILITY
COLUMNS
COLUMN_PRIVILEGES
+ENGINES
+EVENTS
+FILES
+GLOBAL_STATUS
+GLOBAL_VARIABLES
KEY_COLUMN_USAGE
+PARTITIONS
+PLUGINS
+PROCESSLIST
PROFILING
+REFERENTIAL_CONSTRAINTS
ROUTINES
SCHEMATA
SCHEMA_PRIVILEGES
+SESSION_STATUS
+SESSION_VARIABLES
STATISTICS
TABLES
TABLE_CONSTRAINTS
@@ -55,14 +73,19 @@ USER_PRIVILEGES
VIEWS
columns_priv
db
+event
func
+general_log
help_category
help_keyword
help_relation
help_topic
host
+plugin
proc
procs_priv
+servers
+slow_log
tables_priv
time_zone
time_zone_leap_second
@@ -185,6 +208,8 @@ select table_name, column_name, privileges from information_schema.columns
where table_schema = 'mysqltest' and table_name = 'v1';
table_name column_name privileges
v1 c select
+explain select * from v1;
+ERROR HY000: EXPLAIN/SHOW can not be issued; lacking privileges for underlying table
drop view v1, mysqltest.v1;
drop tables mysqltest.t4, mysqltest.t1, t2, t3, t5;
drop database mysqltest;
@@ -251,19 +276,19 @@ select * from t1;
select * from t2;
end|
select parameter_style, sql_data_access, dtd_identifier
-from information_schema.routines;
+from information_schema.routines where routine_schema='test';
parameter_style sql_data_access dtd_identifier
SQL CONTAINS SQL NULL
SQL CONTAINS SQL int(11)
-show procedure status;
-Db Name Type Definer Modified Created Security_type Comment
-test sel2 PROCEDURE root@localhost # # DEFINER
-show function status;
-Db Name Type Definer Modified Created Security_type Comment
-test sub1 FUNCTION root@localhost # # DEFINER
+show procedure status where db='test';
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test sel2 PROCEDURE root@localhost # # DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
+show function status where db='test';
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test sub1 FUNCTION root@localhost # # DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
select a.ROUTINE_NAME from information_schema.ROUTINES a,
information_schema.SCHEMATA b where
-a.ROUTINE_SCHEMA = b.SCHEMA_NAME;
+a.ROUTINE_SCHEMA = b.SCHEMA_NAME AND b.SCHEMA_NAME='test';
ROUTINE_NAME
sel2
sub1
@@ -271,17 +296,17 @@ explain select a.ROUTINE_NAME from information_schema.ROUTINES a,
information_schema.SCHEMATA b where
a.ROUTINE_SCHEMA = b.SCHEMA_NAME;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE # ALL NULL NULL NULL NULL 2
-1 SIMPLE # ALL NULL NULL NULL NULL 2 Using where
+1 SIMPLE # ALL NULL NULL NULL NULL NULL
+1 SIMPLE # ALL NULL NULL NULL NULL NULL Using where; Using join buffer
select a.ROUTINE_NAME, b.name from information_schema.ROUTINES a,
-mysql.proc b where a.ROUTINE_NAME = convert(b.name using utf8) order by 1;
+mysql.proc b where a.ROUTINE_NAME = convert(b.name using utf8) AND a.ROUTINE_SCHEMA='test' order by 1;
ROUTINE_NAME name
sel2 sel2
sub1 sub1
-select count(*) from information_schema.ROUTINES;
+select count(*) from information_schema.ROUTINES where routine_schema='test';
count(*)
2
-create view v1 as select routine_schema, routine_name from information_schema.routines
+create view v1 as select routine_schema, routine_name from information_schema.routines where routine_schema='test'
order by routine_schema, routine_name;
select * from v1;
routine_schema routine_name
@@ -309,35 +334,36 @@ sel2 NULL
sub1 NULL
sub2 return i+1
show create procedure sel2;
-Procedure sql_mode Create Procedure
-sel2 NULL
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+sel2 NULL latin1 latin1_swedish_ci latin1_swedish_ci
show create function sub1;
-Function sql_mode Create Function
-sub1 NULL
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+sub1 NULL latin1 latin1_swedish_ci latin1_swedish_ci
show create function sub2;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
sub2 CREATE DEFINER=`mysqltest_1`@`localhost` FUNCTION `sub2`(i int) RETURNS int(11)
-return i+1
+return i+1 latin1 latin1_swedish_ci latin1_swedish_ci
show function status like "sub2";
-Db Name Type Definer Modified Created Security_type Comment
-test sub2 FUNCTION mysqltest_1@localhost # # DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test sub2 FUNCTION mysqltest_1@localhost # # DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
drop function sub2;
show create procedure sel2;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
sel2 CREATE DEFINER=`root`@`localhost` PROCEDURE `sel2`()
begin
select * from t1;
select * from t2;
-end
+end latin1 latin1_swedish_ci latin1_swedish_ci
create view v0 (c) as select schema_name from information_schema.schemata;
select * from v0;
c
information_schema
+mtr
mysql
test
explain select * from v0;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE # ALL NULL NULL NULL NULL 2
+1 SIMPLE # ALL NULL NULL NULL NULL NULL
create view v1 (c) as select table_name from information_schema.tables
where table_name="v1";
select * from v1;
@@ -368,12 +394,12 @@ latin1_spanish_ci
show keys from v4;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
select * from information_schema.views where TABLE_NAME like "v%";
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE
-NULL test v0 /* ALGORITHM=UNDEFINED */ select `schemata`.`SCHEMA_NAME` AS `c` from `information_schema`.`schemata` NONE NO root@localhost DEFINER
-NULL test v1 /* ALGORITHM=UNDEFINED */ select `tables`.`TABLE_NAME` AS `c` from `information_schema`.`tables` where (`tables`.`TABLE_NAME` = _utf8'v1') NONE NO root@localhost DEFINER
-NULL test v2 /* ALGORITHM=UNDEFINED */ select `columns`.`COLUMN_NAME` AS `c` from `information_schema`.`columns` where (`columns`.`TABLE_NAME` = _utf8'v2') NONE NO root@localhost DEFINER
-NULL test v3 /* ALGORITHM=UNDEFINED */ select `character_sets`.`CHARACTER_SET_NAME` AS `c` from `information_schema`.`character_sets` where (`character_sets`.`CHARACTER_SET_NAME` like _utf8'latin1%') NONE NO root@localhost DEFINER
-NULL test v4 /* ALGORITHM=UNDEFINED */ select `collations`.`COLLATION_NAME` AS `c` from `information_schema`.`collations` where (`collations`.`COLLATION_NAME` like _utf8'latin1%') NONE NO root@localhost DEFINER
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL test v0 select `schemata`.`SCHEMA_NAME` AS `c` from `information_schema`.`schemata` NONE NO root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v1 select `tables`.`TABLE_NAME` AS `c` from `information_schema`.`tables` where (`tables`.`TABLE_NAME` = 'v1') NONE NO root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v2 select `columns`.`COLUMN_NAME` AS `c` from `information_schema`.`columns` where (`columns`.`TABLE_NAME` = 'v2') NONE NO root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v3 select `character_sets`.`CHARACTER_SET_NAME` AS `c` from `information_schema`.`character_sets` where (`character_sets`.`CHARACTER_SET_NAME` like 'latin1%') NONE NO root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v4 select `collations`.`COLLATION_NAME` AS `c` from `information_schema`.`collations` where (`collations`.`COLLATION_NAME` like 'latin1%') NONE NO root@localhost DEFINER latin1 latin1_swedish_ci
drop view v0, v1, v2, v3, v4;
create table t1 (a int);
grant select,update,insert on t1 to mysqltest_1@localhost;
@@ -400,6 +426,8 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA PRIVILEGE_TYPE IS_GRANTABLE
'mysqltest_1'@'localhost' NULL test SHOW VIEW YES
'mysqltest_1'@'localhost' NULL test CREATE ROUTINE YES
'mysqltest_1'@'localhost' NULL test ALTER ROUTINE YES
+'mysqltest_1'@'localhost' NULL test EVENT YES
+'mysqltest_1'@'localhost' NULL test TRIGGER YES
select * from information_schema.TABLE_PRIVILEGES where grantee like '%mysqltest_1%';
GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE
'mysqltest_1'@'localhost' NULL test t1 SELECT NO
@@ -424,8 +452,8 @@ alter table t1 add constraint constraint_2 unique key_2(a);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL default '0',
- PRIMARY KEY (`a`),
+ `a` int(11) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`a`),
UNIQUE KEY `constraint_1` (`a`),
UNIQUE KEY `key_1` (`a`),
UNIQUE KEY `key_2` (`a`)
@@ -463,10 +491,10 @@ create view v1 (c) as select a from t1 with check option;
create view v2 (c) as select a from t1 WITH LOCAL CHECK OPTION;
create view v3 (c) as select a from t1 WITH CASCADED CHECK OPTION;
select * from information_schema.views;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE
-NULL test v1 /* ALGORITHM=UNDEFINED */ select `test`.`t1`.`a` AS `c` from `test`.`t1` CASCADED YES root@localhost DEFINER
-NULL test v2 /* ALGORITHM=UNDEFINED */ select `test`.`t1`.`a` AS `c` from `test`.`t1` LOCAL YES root@localhost DEFINER
-NULL test v3 /* ALGORITHM=UNDEFINED */ select `test`.`t1`.`a` AS `c` from `test`.`t1` CASCADED YES root@localhost DEFINER
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL test v1 select `test`.`t1`.`a` AS `c` from `test`.`t1` CASCADED YES root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v2 select `test`.`t1`.`a` AS `c` from `test`.`t1` LOCAL YES root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v3 select `test`.`t1`.`a` AS `c` from `test`.`t1` CASCADED YES root@localhost DEFINER latin1 latin1_swedish_ci
grant select (a) on test.t1 to joe@localhost with grant option;
select * from INFORMATION_SCHEMA.COLUMN_PRIVILEGES;
GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE
@@ -492,25 +520,24 @@ select s1 from t1 where s1 in (select version from
information_schema.tables) union select version from
information_schema.tables;
s1
-0
10
drop table t1;
SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets;
Table Create Table
CHARACTER_SETS CREATE TEMPORARY TABLE `CHARACTER_SETS` (
- `CHARACTER_SET_NAME` varchar(64) NOT NULL default '',
- `DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
- `DESCRIPTION` varchar(60) NOT NULL default '',
- `MAXLEN` bigint(3) NOT NULL default '0'
+ `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DESCRIPTION` varchar(60) NOT NULL DEFAULT '',
+ `MAXLEN` bigint(3) NOT NULL DEFAULT '0'
) ENGINE=MEMORY DEFAULT CHARSET=utf8
set names latin2;
SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets;
Table Create Table
CHARACTER_SETS CREATE TEMPORARY TABLE `CHARACTER_SETS` (
- `CHARACTER_SET_NAME` varchar(64) NOT NULL default '',
- `DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
- `DESCRIPTION` varchar(60) NOT NULL default '',
- `MAXLEN` bigint(3) NOT NULL default '0'
+ `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DESCRIPTION` varchar(60) NOT NULL DEFAULT '',
+ `MAXLEN` bigint(3) NOT NULL DEFAULT '0'
) ENGINE=MEMORY DEFAULT CHARSET=utf8
set names latin1;
create table t1 select * from information_schema.CHARACTER_SETS
@@ -522,10 +549,10 @@ alter table t1 default character set utf8;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `CHARACTER_SET_NAME` varchar(64) NOT NULL default '',
- `DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
- `DESCRIPTION` varchar(60) NOT NULL default '',
- `MAXLEN` bigint(3) NOT NULL default '0'
+ `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '',
+ `DESCRIPTION` varchar(60) NOT NULL DEFAULT '',
+ `MAXLEN` bigint(3) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8
drop table t1;
create view v1 as select * from information_schema.TABLES;
@@ -560,13 +587,17 @@ proc sql_data_access enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL
proc is_deterministic enum('YES','NO')
proc security_type enum('INVOKER','DEFINER')
proc param_list blob
-proc returns char(64)
+proc returns longblob
proc body longblob
proc definer char(77)
proc created timestamp
proc modified timestamp
-proc sql_mode set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE')
+proc sql_mode set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH')
proc comment char(64)
+proc character_set_client char(32)
+proc collation_connection char(32)
+proc db_collation char(32)
+proc body_utf8 longblob
drop table t115;
create procedure p108 () begin declare c cursor for select data_type
from information_schema.columns; open c; open c; end;//
@@ -656,17 +687,11 @@ where table_schema='test';
table_name
v2
v3
-Warnings:
-Warning 1356 View 'test.v2' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
-Warning 1356 View 'test.v3' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
select table_name from information_schema.views
where table_schema='test';
table_name
v2
v3
-Warnings:
-Warning 1356 View 'test.v2' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
-Warning 1356 View 'test.v3' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
select column_name from information_schema.columns
where table_schema='test';
column_name
@@ -681,13 +706,13 @@ select constraint_name from information_schema.table_constraints
where table_schema='test';
constraint_name
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `test`.`t1`.`f1` AS `c` from `t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `test`.`t1`.`f1` AS `c` from `t1` latin1 latin1_swedish_ci
Warnings:
Warning 1356 View 'test.v2' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
show create table v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `sub1`(1) AS `c`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `sub1`(1) AS `c` latin1 latin1_swedish_ci
Warnings:
Warning 1356 View 'test.v3' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
drop view v2;
@@ -699,8 +724,8 @@ select column_type from information_schema.columns
where table_schema="information_schema" and table_name="COLUMNS" and
(column_name="character_set_name" or column_name="collation_name");
column_type
-varchar(64)
-varchar(64)
+varchar(32)
+varchar(32)
select TABLE_ROWS from information_schema.tables where
table_schema="information_schema" and table_name="COLUMNS";
TABLE_ROWS
@@ -726,11 +751,12 @@ create view v1 as select * from t1, t2;
set @got_val= (select count(*) from information_schema.columns);
drop view v1;
drop table t1, t2;
+use test;
CREATE TABLE t_crashme ( f1 BIGINT);
CREATE VIEW a1 (t_CRASHME) AS SELECT f1 FROM t_crashme GROUP BY f1;
CREATE VIEW a2 AS SELECT t_CRASHME FROM a1;
count(*)
-102
+68
drop view a2, a1;
drop table t_crashme;
select table_schema,table_name, column_name from
@@ -739,22 +765,44 @@ where data_type = 'longtext';
table_schema table_name column_name
information_schema COLUMNS COLUMN_DEFAULT
information_schema COLUMNS COLUMN_TYPE
+information_schema EVENTS EVENT_DEFINITION
+information_schema PARTITIONS PARTITION_EXPRESSION
+information_schema PARTITIONS SUBPARTITION_EXPRESSION
+information_schema PARTITIONS PARTITION_DESCRIPTION
+information_schema PLUGINS PLUGIN_DESCRIPTION
+information_schema PROCESSLIST INFO
information_schema ROUTINES ROUTINE_DEFINITION
-information_schema ROUTINES SQL_MODE
information_schema TRIGGERS ACTION_CONDITION
information_schema TRIGGERS ACTION_STATEMENT
-information_schema TRIGGERS SQL_MODE
-information_schema TRIGGERS DEFINER
information_schema VIEWS VIEW_DEFINITION
select table_name, column_name, data_type from information_schema.columns
where data_type = 'datetime';
table_name column_name data_type
+EVENTS EXECUTE_AT datetime
+EVENTS STARTS datetime
+EVENTS ENDS datetime
+EVENTS CREATED datetime
+EVENTS LAST_ALTERED datetime
+EVENTS LAST_EXECUTED datetime
+FILES CREATION_TIME datetime
+FILES LAST_UPDATE_TIME datetime
+FILES LAST_ACCESS_TIME datetime
+FILES CREATE_TIME datetime
+FILES UPDATE_TIME datetime
+FILES CHECK_TIME datetime
+PARTITIONS CREATE_TIME datetime
+PARTITIONS UPDATE_TIME datetime
+PARTITIONS CHECK_TIME datetime
ROUTINES CREATED datetime
ROUTINES LAST_ALTERED datetime
TABLES CREATE_TIME datetime
TABLES UPDATE_TIME datetime
TABLES CHECK_TIME datetime
TRIGGERS CREATED datetime
+event execute_at datetime
+event last_executed datetime
+event starts datetime
+event ends datetime
SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES A
WHERE NOT EXISTS
(SELECT * FROM INFORMATION_SCHEMA.COLUMNS B
@@ -790,7 +838,10 @@ where COLUMN_NAME='TABLE_NAME';
TABLE_NAME COLUMN_NAME PRIVILEGES
COLUMNS TABLE_NAME select
COLUMN_PRIVILEGES TABLE_NAME select
+FILES TABLE_NAME select
KEY_COLUMN_USAGE TABLE_NAME select
+PARTITIONS TABLE_NAME select
+REFERENTIAL_CONSTRAINTS TABLE_NAME select
STATISTICS TABLE_NAME select
TABLES TABLE_NAME select
TABLE_CONSTRAINTS TABLE_NAME select
@@ -799,10 +850,10 @@ VIEWS TABLE_NAME select
delete from mysql.user where user='mysqltest_4';
delete from mysql.db where user='mysqltest_4';
flush privileges;
-SELECT table_schema, count(*) FROM information_schema.TABLES GROUP BY TABLE_SCHEMA;
+SELECT table_schema, count(*) FROM information_schema.TABLES WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND table_name<>'ndb_binlog_index' AND table_name<>'ndb_apply_status' GROUP BY TABLE_SCHEMA;
table_schema count(*)
-information_schema 17
-mysql 17
+information_schema 28
+mysql 22
create table t1 (i int, j int);
create trigger trg1 before insert on t1 for each row
begin
@@ -823,39 +874,39 @@ set @fired:= "Yes";
end if;
end|
show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 begin
if new.j > 10 then
set new.j := 10;
end if;
-end BEFORE NULL root@localhost
+end BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg2 UPDATE t1 begin
if old.i % 2 = 0 then
set new.j := -1;
end if;
-end BEFORE NULL root@localhost
+end BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg3 UPDATE t1 begin
if new.j = -1 then
set @fired:= "Yes";
end if;
-end AFTER NULL root@localhost
-select * from information_schema.triggers;
-TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
+end AFTER NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+select * from information_schema.triggers where trigger_schema in ('mysql', 'information_schema', 'test', 'mysqltest');
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
NULL test trg1 INSERT NULL test t1 0 NULL begin
if new.j > 10 then
set new.j := 10;
end if;
-end ROW BEFORE NULL NULL OLD NEW NULL root@localhost
+end ROW BEFORE NULL NULL OLD NEW NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
NULL test trg2 UPDATE NULL test t1 0 NULL begin
if old.i % 2 = 0 then
set new.j := -1;
end if;
-end ROW BEFORE NULL NULL OLD NEW NULL root@localhost
+end ROW BEFORE NULL NULL OLD NEW NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
NULL test trg3 UPDATE NULL test t1 0 NULL begin
if new.j = -1 then
set @fired:= "Yes";
end if;
-end ROW AFTER NULL NULL OLD NEW NULL root@localhost
+end ROW AFTER NULL NULL OLD NEW NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
drop trigger trg1;
drop trigger trg2;
drop trigger trg3;
@@ -1028,7 +1079,7 @@ BEGIN
SELECT 'foo' FROM DUAL;
END |
ERROR 42000: Unknown database 'information_schema'
-select ROUTINE_NAME from routines;
+select ROUTINE_NAME from routines where ROUTINE_SCHEMA='information_schema';
ROUTINE_NAME
grant all on information_schema.* to 'user1'@'localhost';
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
@@ -1091,11 +1142,13 @@ DROP FUNCTION func2;
select column_type, group_concat(table_schema, '.', table_name), count(*) as num
from information_schema.columns where
table_schema='information_schema' and
-(column_type = 'varchar(7)' or column_type = 'varchar(20)')
+(column_type = 'varchar(7)' or column_type = 'varchar(20)'
+ or column_type = 'varchar(27)')
group by column_type order by num;
column_type group_concat(table_schema, '.', table_name) num
-varchar(20) information_schema.COLUMNS,information_schema.PROFILING 2
+varchar(27) information_schema.COLUMNS 1
varchar(7) information_schema.ROUTINES,information_schema.VIEWS 2
+varchar(20) information_schema.FILES,information_schema.FILES,information_schema.PLUGINS,information_schema.PLUGINS,information_schema.PLUGINS,information_schema.PROFILING 6
create table t1(f1 char(1) not null, f2 char(9) not null)
default character set utf8;
select CHARACTER_MAXIMUM_LENGTH, CHARACTER_OCTET_LENGTH from
@@ -1107,8 +1160,8 @@ drop table t1;
use mysql;
INSERT INTO `proc` VALUES ('test','','PROCEDURE','','SQL','CONTAINS_SQL',
'NO','DEFINER','','','BEGIN\r\n \r\nEND','root@%','2006-03-02 18:40:03',
-'2006-03-02 18:40:03','','');
-select routine_name from information_schema.routines;
+'2006-03-02 18:40:03','','','utf8','utf8_general_ci','utf8_general_ci','n/a');
+select routine_name from information_schema.routines where ROUTINE_SCHEMA='test';
routine_name
delete from proc where name='';
@@ -1120,9 +1173,9 @@ create definer = mysqltest_1@localhost
sql security definer view v2 as select 1;
select * from information_schema.views
where table_name='v1' or table_name='v2';
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE
-NULL test v1 NONE YES root@localhost DEFINER
-NULL test v2 /* ALGORITHM=UNDEFINED */ select 1 AS `1` NONE NO mysqltest_1@localhost DEFINER
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL test v1 NONE YES root@localhost DEFINER latin1 latin1_swedish_ci
+NULL test v2 select 1 AS `1` NONE NO mysqltest_1@localhost DEFINER latin1 latin1_swedish_ci
drop view v1, v2;
drop table t1;
drop user mysqltest_1@localhost;
@@ -1142,28 +1195,28 @@ CREATE FUNCTION f1() RETURNS INT RETURN @a + 1;
CREATE USER mysql_bug20230@localhost;
GRANT EXECUTE ON PROCEDURE p1 TO mysql_bug20230@localhost;
GRANT EXECUTE ON FUNCTION f1 TO mysql_bug20230@localhost;
-SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES;
+SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA='test';
ROUTINE_NAME ROUTINE_DEFINITION
f1 RETURN @a + 1
p1 SET @a= 1
SHOW CREATE PROCEDURE p1;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
-SET @a= 1
+SET @a= 1 latin1 latin1_swedish_ci latin1_swedish_ci
SHOW CREATE FUNCTION f1;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
f1 CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-RETURN @a + 1
-SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES;
+RETURN @a + 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA='test';
ROUTINE_NAME ROUTINE_DEFINITION
f1 NULL
p1 NULL
SHOW CREATE PROCEDURE p1;
-Procedure sql_mode Create Procedure
-p1 NULL
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 NULL latin1 latin1_swedish_ci latin1_swedish_ci
SHOW CREATE FUNCTION f1;
-Function sql_mode Create Function
-f1 NULL
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+f1 NULL latin1 latin1_swedish_ci latin1_swedish_ci
CALL p1();
SELECT f1();
f1()
@@ -1191,11 +1244,22 @@ COLLATIONS COLLATION_NAME
COLLATION_CHARACTER_SET_APPLICABILITY COLLATION_NAME
COLUMNS TABLE_SCHEMA
COLUMN_PRIVILEGES TABLE_SCHEMA
+ENGINES ENGINE
+EVENTS EVENT_SCHEMA
+FILES TABLE_SCHEMA
+GLOBAL_STATUS VARIABLE_NAME
+GLOBAL_VARIABLES VARIABLE_NAME
KEY_COLUMN_USAGE CONSTRAINT_SCHEMA
+PARTITIONS TABLE_SCHEMA
+PLUGINS PLUGIN_NAME
+PROCESSLIST ID
PROFILING QUERY_ID
+REFERENTIAL_CONSTRAINTS CONSTRAINT_SCHEMA
ROUTINES ROUTINE_SCHEMA
SCHEMATA SCHEMA_NAME
SCHEMA_PRIVILEGES TABLE_SCHEMA
+SESSION_STATUS VARIABLE_NAME
+SESSION_VARIABLES VARIABLE_NAME
STATISTICS TABLE_SCHEMA
TABLES TABLE_SCHEMA
TABLE_CONSTRAINTS CONSTRAINT_SCHEMA
@@ -1223,11 +1287,22 @@ COLLATIONS COLLATION_NAME
COLLATION_CHARACTER_SET_APPLICABILITY COLLATION_NAME
COLUMNS TABLE_SCHEMA
COLUMN_PRIVILEGES TABLE_SCHEMA
+ENGINES ENGINE
+EVENTS EVENT_SCHEMA
+FILES TABLE_SCHEMA
+GLOBAL_STATUS VARIABLE_NAME
+GLOBAL_VARIABLES VARIABLE_NAME
KEY_COLUMN_USAGE CONSTRAINT_SCHEMA
+PARTITIONS TABLE_SCHEMA
+PLUGINS PLUGIN_NAME
+PROCESSLIST ID
PROFILING QUERY_ID
+REFERENTIAL_CONSTRAINTS CONSTRAINT_SCHEMA
ROUTINES ROUTINE_SCHEMA
SCHEMATA SCHEMA_NAME
SCHEMA_PRIVILEGES TABLE_SCHEMA
+SESSION_STATUS VARIABLE_NAME
+SESSION_VARIABLES VARIABLE_NAME
STATISTICS TABLE_SCHEMA
TABLES TABLE_SCHEMA
TABLE_CONSTRAINTS CONSTRAINT_SCHEMA
@@ -1235,12 +1310,12 @@ TABLE_PRIVILEGES TABLE_SCHEMA
TRIGGERS TRIGGER_SCHEMA
USER_PRIVILEGES GRANTEE
VIEWS TABLE_SCHEMA
-SELECT MAX(table_name) FROM information_schema.tables;
+SELECT MAX(table_name) FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test');
MAX(table_name)
VIEWS
SELECT table_name from information_schema.tables
WHERE table_name=(SELECT MAX(table_name)
-FROM information_schema.tables);
+FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test'));
table_name
VIEWS
DROP TABLE IF EXISTS bug23037;
@@ -1264,11 +1339,11 @@ from information_schema.tables
order by object_schema;
explain select * from v1;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE tables ALL NULL NULL NULL NULL 2 Using filesort
+1 SIMPLE tables ALL NULL NULL NULL NULL NULL Open_frm_only; Scanned all databases; Using filesort
explain select * from (select table_name from information_schema.tables) as a;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> system NULL NULL NULL NULL 0 const row not found
-2 DERIVED tables ALL NULL NULL NULL NULL 2
+2 DERIVED tables ALL NULL NULL NULL NULL NULL Skip_open_table; Scanned all databases
drop view v1;
create table t1 (f1 int(11));
create table t2 (f1 int(11), f2 int(11));
@@ -1306,11 +1381,22 @@ COLLATIONS information_schema.COLLATIONS 1
COLLATION_CHARACTER_SET_APPLICABILITY information_schema.COLLATION_CHARACTER_SET_APPLICABILITY 1
COLUMNS information_schema.COLUMNS 1
COLUMN_PRIVILEGES information_schema.COLUMN_PRIVILEGES 1
+ENGINES information_schema.ENGINES 1
+EVENTS information_schema.EVENTS 1
+FILES information_schema.FILES 1
+GLOBAL_STATUS information_schema.GLOBAL_STATUS 1
+GLOBAL_VARIABLES information_schema.GLOBAL_VARIABLES 1
KEY_COLUMN_USAGE information_schema.KEY_COLUMN_USAGE 1
+PARTITIONS information_schema.PARTITIONS 1
+PLUGINS information_schema.PLUGINS 1
+PROCESSLIST information_schema.PROCESSLIST 1
PROFILING information_schema.PROFILING 1
+REFERENTIAL_CONSTRAINTS information_schema.REFERENTIAL_CONSTRAINTS 1
ROUTINES information_schema.ROUTINES 1
SCHEMATA information_schema.SCHEMATA 1
SCHEMA_PRIVILEGES information_schema.SCHEMA_PRIVILEGES 1
+SESSION_STATUS information_schema.SESSION_STATUS 1
+SESSION_VARIABLES information_schema.SESSION_VARIABLES 1
STATISTICS information_schema.STATISTICS 1
TABLES information_schema.TABLES 1
TABLE_CONSTRAINTS information_schema.TABLE_CONSTRAINTS 1
@@ -1343,8 +1429,8 @@ where event_object_table='t1';
trigger_name
t1_ai
show triggers from mysqltest;
-Trigger Event Table Statement Timing Created sql_mode Definer
-t1_ai INSERT t1 set @a = new.a + new.b + new.c AFTER NULL root@localhost
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+t1_ai INSERT t1 set @a = new.a + new.b + new.c AFTER NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
show columns from t1;
Field Type Null Key Default Extra
b int(11) YES NULL
@@ -1352,7 +1438,7 @@ select column_name from information_schema.columns where table_name='t1';
column_name
b
show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
select trigger_name from information_schema.triggers
where event_object_table='t1';
trigger_name
@@ -1389,6 +1475,111 @@ f6 bigint(20) NO 10
f7 datetime NO NULL
f8 datetime YES 2006-01-01 00:00:00
drop table t1;
+show fields from information_schema.table_names;
+ERROR 42S02: Unknown table 'table_names' in information_schema
+show keys from information_schema.table_names;
+ERROR 42S02: Unknown table 'table_names' in information_schema
+USE information_schema;
+SET max_heap_table_size = 16384;
+CREATE TABLE test.t1( a INT );
+SELECT *
+FROM tables ta
+JOIN collations co ON ( co.collation_name = ta.table_catalog )
+JOIN character_sets cs ON ( cs.character_set_name = ta.table_catalog );
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT COLLATION_NAME CHARACTER_SET_NAME ID IS_DEFAULT IS_COMPILED SORTLEN CHARACTER_SET_NAME DEFAULT_COLLATE_NAME DESCRIPTION MAXLEN
+DROP TABLE test.t1;
+SET max_heap_table_size = DEFAULT;
+USE test;
+End of 5.0 tests.
+select * from information_schema.engines WHERE ENGINE="MyISAM";
+ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS
+MyISAM DEFAULT Default engine as of MySQL 3.23 with great performance NO NO NO
+grant select on *.* to user3148@localhost;
+select user,db from information_schema.processlist;
+user db
+user3148 test
+drop user user3148@localhost;
+DROP TABLE IF EXISTS server_status;
+DROP EVENT IF EXISTS event_status;
+SET GLOBAL event_scheduler=1;
+CREATE EVENT event_status
+ON SCHEDULE AT NOW()
+ON COMPLETION NOT PRESERVE
+DO
+BEGIN
+CREATE TABLE server_status
+SELECT variable_name
+FROM information_schema.global_status
+WHERE variable_name LIKE 'ABORTED_CONNECTS' OR
+variable_name LIKE 'BINLOG_CACHE_DISK_USE';
+END$$
+SELECT variable_name FROM server_status;
+variable_name
+ABORTED_CONNECTS
+BINLOG_CACHE_DISK_USE
+DROP TABLE server_status;
+SET GLOBAL event_scheduler=0;
+explain select table_name from information_schema.views where
+table_schema='test' and table_name='v1';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE views ALL NULL TABLE_SCHEMA,TABLE_NAME NULL NULL NULL Using where; Open_frm_only; Scanned 0 databases
+explain select * from information_schema.tables;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE tables ALL NULL NULL NULL NULL NULL Open_full_table; Scanned all databases
+explain select * from information_schema.collations;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE collations ALL NULL NULL NULL NULL NULL
+explain select * from information_schema.tables where
+table_schema='test' and table_name= 't1';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE tables ALL NULL TABLE_SCHEMA,TABLE_NAME NULL NULL NULL Using where; Open_full_table; Scanned 0 databases
+explain select table_name, table_type from information_schema.tables
+where table_schema='test';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE tables ALL NULL TABLE_SCHEMA NULL NULL NULL Using where; Open_frm_only; Scanned 1 database
+explain select b.table_name
+from information_schema.tables a, information_schema.columns b
+where a.table_name='t1' and a.table_schema='test' and b.table_name=a.table_name;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE a ALL NULL TABLE_SCHEMA,TABLE_NAME NULL NULL NULL Using where; Skip_open_table; Scanned 0 databases
+1 SIMPLE b ALL NULL NULL NULL NULL NULL Using where; Open_frm_only; Scanned all databases; Using join buffer
+SELECT * FROM INFORMATION_SCHEMA.SCHEMATA
+WHERE SCHEMA_NAME = 'mysqltest';
+CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME DEFAULT_COLLATION_NAME SQL_PATH
+SELECT * FROM INFORMATION_SCHEMA.SCHEMATA
+WHERE SCHEMA_NAME = '';
+CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME DEFAULT_COLLATION_NAME SQL_PATH
+SELECT * FROM INFORMATION_SCHEMA.SCHEMATA
+WHERE SCHEMA_NAME = 'test';
+CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME DEFAULT_COLLATION_NAME SQL_PATH
+NULL test latin1 latin1_swedish_ci NULL
+select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='mysql' AND TABLE_NAME='nonexisting';
+count(*)
+0
+select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='mysql' AND TABLE_NAME='';
+count(*)
+0
+select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='' AND TABLE_NAME='';
+count(*)
+0
+select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='' AND TABLE_NAME='nonexisting';
+count(*)
+0
+CREATE VIEW v1
+AS SELECT *
+FROM information_schema.tables;
+SELECT VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS where TABLE_NAME = 'v1';
+VIEW_DEFINITION
+select `tables`.`TABLE_CATALOG` AS `TABLE_CATALOG`,`tables`.`TABLE_SCHEMA` AS `TABLE_SCHEMA`,`tables`.`TABLE_NAME` AS `TABLE_NAME`,`tables`.`TABLE_TYPE` AS `TABLE_TYPE`,`tables`.`ENGINE` AS `ENGINE`,`tables`.`VERSION` AS `VERSION`,`tables`.`ROW_FORMAT` AS `ROW_FORMAT`,`tables`.`TABLE_ROWS` AS `TABLE_ROWS`,`tables`.`AVG_ROW_LENGTH` AS `AVG_ROW_LENGTH`,`tables`.`DATA_LENGTH` AS `DATA_LENGTH`,`tables`.`MAX_DATA_LENGTH` AS `MAX_DATA_LENGTH`,`tables`.`INDEX_LENGTH` AS `INDEX_LENGTH`,`tables`.`DATA_FREE` AS `DATA_FREE`,`tables`.`AUTO_INCREMENT` AS `AUTO_INCREMENT`,`tables`.`CREATE_TIME` AS `CREATE_TIME`,`tables`.`UPDATE_TIME` AS `UPDATE_TIME`,`tables`.`CHECK_TIME` AS `CHECK_TIME`,`tables`.`TABLE_COLLATION` AS `TABLE_COLLATION`,`tables`.`CHECKSUM` AS `CHECKSUM`,`tables`.`CREATE_OPTIONS` AS `CREATE_OPTIONS`,`tables`.`TABLE_COMMENT` AS `TABLE_COMMENT` from `information_schema`.`tables`
+DROP VIEW v1;
+SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA
+WHERE SCHEMA_NAME ='information_schema';
+SCHEMA_NAME
+information_schema
+SELECT TABLE_COLLATION FROM INFORMATION_SCHEMA.TABLES
+WHERE TABLE_SCHEMA='mysql' and TABLE_NAME= 'db';
+TABLE_COLLATION
+utf8_bin
select * from information_schema.columns where table_schema = NULL;
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT
select * from `information_schema`.`COLUMNS` where `TABLE_NAME` = NULL;
@@ -1397,6 +1588,14 @@ select * from `information_schema`.`KEY_COLUMN_USAGE` where `TABLE_SCHEMA` = NUL
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION POSITION_IN_UNIQUE_CONSTRAINT REFERENCED_TABLE_SCHEMA REFERENCED_TABLE_NAME REFERENCED_COLUMN_NAME
select * from `information_schema`.`KEY_COLUMN_USAGE` where `TABLE_NAME` = NULL;
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION POSITION_IN_UNIQUE_CONSTRAINT REFERENCED_TABLE_SCHEMA REFERENCED_TABLE_NAME REFERENCED_COLUMN_NAME
+select * from `information_schema`.`PARTITIONS` where `TABLE_SCHEMA` = NULL;
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+select * from `information_schema`.`PARTITIONS` where `TABLE_NAME` = NULL;
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+select * from `information_schema`.`REFERENTIAL_CONSTRAINTS` where `CONSTRAINT_SCHEMA` = NULL;
+CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME UNIQUE_CONSTRAINT_CATALOG UNIQUE_CONSTRAINT_SCHEMA UNIQUE_CONSTRAINT_NAME MATCH_OPTION UPDATE_RULE DELETE_RULE TABLE_NAME REFERENCED_TABLE_NAME
+select * from `information_schema`.`REFERENTIAL_CONSTRAINTS` where `TABLE_NAME` = NULL;
+CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME UNIQUE_CONSTRAINT_CATALOG UNIQUE_CONSTRAINT_SCHEMA UNIQUE_CONSTRAINT_NAME MATCH_OPTION UPDATE_RULE DELETE_RULE TABLE_NAME REFERENCED_TABLE_NAME
select * from information_schema.schemata where schema_name = NULL;
CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME DEFAULT_COLLATION_NAME SQL_PATH
select * from `information_schema`.`STATISTICS` where `TABLE_SCHEMA` = NULL;
@@ -1414,26 +1613,116 @@ CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_SCHEMA TABLE_NAME CON
select * from `information_schema`.`TABLE_CONSTRAINTS` where `TABLE_NAME` = NULL;
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_SCHEMA TABLE_NAME CONSTRAINT_TYPE
select * from `information_schema`.`TRIGGERS` where `EVENT_OBJECT_SCHEMA` = NULL;
-TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
select * from `information_schema`.`TRIGGERS` where `EVENT_OBJECT_TABLE` = NULL;
-TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
select * from `information_schema`.`VIEWS` where `TABLE_SCHEMA` = NULL;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
select * from `information_schema`.`VIEWS` where `TABLE_NAME` = NULL;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE
-show fields from information_schema.table_names;
-ERROR 42S02: Unknown table 'table_names' in information_schema
-show keys from information_schema.table_names;
-ERROR 42S02: Unknown table 'table_names' in information_schema
-USE information_schema;
-SET max_heap_table_size = 16384;
-CREATE TABLE test.t1( a INT );
-SELECT *
-FROM tables ta
-JOIN collations co ON ( co.collation_name = ta.table_catalog )
-JOIN character_sets cs ON ( cs.character_set_name = ta.table_catalog );
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT COLLATION_NAME CHARACTER_SET_NAME ID IS_DEFAULT IS_COMPILED SORTLEN CHARACTER_SET_NAME DEFAULT_COLLATE_NAME DESCRIPTION MAXLEN
-DROP TABLE test.t1;
-SET max_heap_table_size = DEFAULT;
-USE test;
-End of 5.0 tests.
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+explain extended select 1 from information_schema.tables;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE tables ALL NULL NULL NULL NULL NULL NULL Skip_open_table; Scanned all databases
+Warnings:
+Note 1003 select 1 AS `1` from `information_schema`.`tables`
+use information_schema;
+show events;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+show events from information_schema;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+show events where Db= 'information_schema';
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+use test;
+#
+# Bug#34166 Server crash in SHOW OPEN TABLES and prelocking
+#
+drop table if exists t1;
+drop function if exists f1;
+create table t1 (a int);
+create function f1() returns int
+begin
+insert into t1 (a) values (1);
+return 0;
+end|
+show open tables where f1()=0;
+show open tables where f1()=0;
+drop table t1;
+drop function f1;
+select * from information_schema.tables where 1=sleep(100000);
+select * from information_schema.columns where 1=sleep(100000);
+explain select count(*) from information_schema.tables;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE tables ALL NULL NULL NULL NULL NULL Skip_open_table; Scanned all databases
+explain select count(*) from information_schema.columns;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE columns ALL NULL NULL NULL NULL NULL Open_frm_only; Scanned all databases
+explain select count(*) from information_schema.views;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE views ALL NULL NULL NULL NULL NULL Open_frm_only; Scanned all databases
+set global init_connect="drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;\
+drop table if exists t1;drop table if exists t1;";
+select * from information_schema.global_variables where variable_name='init_connect';
+VARIABLE_NAME VARIABLE_VALUE
+INIT_CONNECT drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists t1;
+drop table if exists t1;drop table if exists
+Warnings:
+Warning 1265 Data truncated for column 'VARIABLE_VALUE' at row 1
+set global init_connect="";
+create table t0 select * from information_schema.global_status where VARIABLE_NAME='COM_SELECT';
+SELECT 1;
+1
+1
+select a.VARIABLE_VALUE - b.VARIABLE_VALUE from t0 b, information_schema.global_status a
+where a.VARIABLE_NAME = b.VARIABLE_NAME;
+a.VARIABLE_VALUE - b.VARIABLE_VALUE
+2
+drop table t0;
+CREATE TABLE t1(a INT) KEY_BLOCK_SIZE=1;
+SELECT CREATE_OPTIONS FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1';
+CREATE_OPTIONS
+KEY_BLOCK_SIZE=1
+DROP TABLE t1;
+SET TIMESTAMP=@@TIMESTAMP + 10000000;
+SELECT 'OK' AS TEST_RESULT FROM INFORMATION_SCHEMA.PROCESSLIST WHERE time < 0;
+TEST_RESULT
+OK
+SET TIMESTAMP=DEFAULT;
+End of 5.1 tests.
diff --git a/mysql-test/r/information_schema_db.result b/mysql-test/r/information_schema_db.result
index 92c5b6de2ec..2e3fa7f4acd 100644
--- a/mysql-test/r/information_schema_db.result
+++ b/mysql-test/r/information_schema_db.result
@@ -10,11 +10,22 @@ COLLATIONS
COLLATION_CHARACTER_SET_APPLICABILITY
COLUMNS
COLUMN_PRIVILEGES
+ENGINES
+EVENTS
+FILES
+GLOBAL_STATUS
+GLOBAL_VARIABLES
KEY_COLUMN_USAGE
+PARTITIONS
+PLUGINS
+PROCESSLIST
PROFILING
+REFERENTIAL_CONSTRAINTS
ROUTINES
SCHEMATA
SCHEMA_PRIVILEGES
+SESSION_STATUS
+SESSION_VARIABLES
STATISTICS
TABLES
TABLE_CONSTRAINTS
@@ -64,11 +75,11 @@ drop table t1;
select table_name, table_type, table_comment from information_schema.tables
where table_schema='inf%' and func2();
table_name table_type table_comment
-v1 VIEW View 'inf%.v1' references invalid table(s) or column(s) or function(s) or define
+v1 VIEW VIEW
select table_name, table_type, table_comment from information_schema.tables
where table_schema='inf%' and func2();
table_name table_type table_comment
-v1 VIEW View 'inf%.v1' references invalid table(s) or column(s) or function(s) or define
+v1 VIEW VIEW
drop view v1;
drop function func1;
drop function func2;
@@ -117,23 +128,23 @@ grant show view on v6 to testdb_2@localhost;
create table t2 (f1 char(4));
create definer=`no_such_user`@`no_such_host` view v7 as select * from t2;
Warnings:
-Note 1449 There is no 'no_such_user'@'no_such_host' registered
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
show fields from testdb_1.v6;
Field Type Null Key Default Extra
f1 char(4) YES NULL
show create view testdb_1.v6;
-View Create View
-v6 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v6` AS select `t1`.`f1` AS `f1` from `t1`
+View Create View character_set_client collation_connection
+v6 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v6` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
show create view testdb_1.v7;
-View Create View
-v7 CREATE ALGORITHM=UNDEFINED DEFINER=`no_such_user`@`no_such_host` SQL SECURITY DEFINER VIEW `v7` AS select `testdb_1`.`t2`.`f1` AS `f1` from `t2`
+View Create View character_set_client collation_connection
+v7 CREATE ALGORITHM=UNDEFINED DEFINER=`no_such_user`@`no_such_host` SQL SECURITY DEFINER VIEW `v7` AS select `testdb_1`.`t2`.`f1` AS `f1` from `t2` latin1 latin1_swedish_ci
Warnings:
-Warning 1356 View 'testdb_1.v7' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
show fields from testdb_1.v7;
Field Type Null Key Default Extra
f1 char(4) YES NULL
Warnings:
-Note 1449 There is no 'no_such_user'@'no_such_host' registered
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
create table t3 (f1 char(4), f2 char(4));
create view v3 as select f1,f2 from t3;
grant insert(f1), insert(f2) on v3 to testdb_2@localhost;
@@ -142,23 +153,23 @@ create view v4 as select f1,f2 from testdb_1.v3;
show fields from testdb_1.v5;
Field Type Null Key Default Extra
show create view testdb_1.v5;
-View Create View
-v5 CREATE ALGORITHM=UNDEFINED DEFINER=`testdb_1`@`localhost` SQL SECURITY DEFINER VIEW `testdb_1`.`v5` AS select `testdb_1`.`t1`.`f1` AS `f1` from `testdb_1`.`t1`
+View Create View character_set_client collation_connection
+v5 CREATE ALGORITHM=UNDEFINED DEFINER=`testdb_1`@`localhost` SQL SECURITY DEFINER VIEW `testdb_1`.`v5` AS select `testdb_1`.`t1`.`f1` AS `f1` from `testdb_1`.`t1` latin1 latin1_swedish_ci
show fields from testdb_1.v6;
Field Type Null Key Default Extra
show create view testdb_1.v6;
-View Create View
-v6 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `testdb_1`.`v6` AS select `testdb_1`.`t1`.`f1` AS `f1` from `testdb_1`.`t1`
+View Create View character_set_client collation_connection
+v6 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `testdb_1`.`v6` AS select `testdb_1`.`t1`.`f1` AS `f1` from `testdb_1`.`t1` latin1 latin1_swedish_ci
show fields from testdb_1.v7;
Field Type Null Key Default Extra
f1 char(4) YES NULL
Warnings:
-Note 1449 There is no 'no_such_user'@'no_such_host' registered
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
show create view testdb_1.v7;
-View Create View
-v7 CREATE ALGORITHM=UNDEFINED DEFINER=`no_such_user`@`no_such_host` SQL SECURITY DEFINER VIEW `v7` AS select `testdb_1`.`t2`.`f1` AS `f1` from `t2`
+View Create View character_set_client collation_connection
+v7 CREATE ALGORITHM=UNDEFINED DEFINER=`no_such_user`@`no_such_host` SQL SECURITY DEFINER VIEW `v7` AS select `testdb_1`.`t2`.`f1` AS `f1` from `t2` latin1 latin1_swedish_ci
Warnings:
-Warning 1356 View 'testdb_1.v7' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
revoke insert(f1) on v3 from testdb_2@localhost;
revoke show view on v5 from testdb_2@localhost;
use testdb_1;
@@ -176,7 +187,8 @@ ERROR 42000: SELECT command denied to user 'testdb_2'@'localhost' for table 'v7'
show create view testdb_1.v7;
ERROR 42000: SELECT command denied to user 'testdb_2'@'localhost' for table 'v7'
show create view v4;
-ERROR HY000: EXPLAIN/SHOW can not be issued; lacking privileges for underlying table
+View Create View character_set_client collation_connection
+v4 CREATE ALGORITHM=UNDEFINED DEFINER=`testdb_2`@`localhost` SQL SECURITY DEFINER VIEW `v4` AS select `v3`.`f1` AS `f1`,`v3`.`f2` AS `f2` from `testdb_1`.`v3` latin1 latin1_swedish_ci
show fields from v4;
Field Type Null Key Default Extra
f1 char(4) YES NULL
@@ -188,8 +200,8 @@ show fields from testdb_1.v1;
Field Type Null Key Default Extra
f1 char(4) YES NULL
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`testdb_2`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `v1`.`f1` AS `f1` from `testdb_1`.`v1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`testdb_2`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `v1`.`f1` AS `f1` from `testdb_1`.`v1` latin1 latin1_swedish_ci
show create view testdb_1.v1;
ERROR 42000: SHOW VIEW command denied to user 'testdb_2'@'localhost' for table 'v1'
select table_name from information_schema.columns a
@@ -199,7 +211,7 @@ v2
select view_definition from information_schema.views a
where a.table_name = 'v2';
view_definition
-/* ALGORITHM=UNDEFINED */ select `v1`.`f1` AS `f1` from `testdb_1`.`v1`
+select `v1`.`f1` AS `f1` from `testdb_1`.`v1`
select view_definition from information_schema.views a
where a.table_name = 'testdb_1.v1';
view_definition
@@ -218,10 +230,10 @@ grant select on testdb_1.v1 to mysqltest_1@localhost;
select table_schema, table_name, view_definition from information_schema.views
where table_name='v1';
table_schema table_name view_definition
-testdb_1 v1 /* ALGORITHM=UNDEFINED */ select `testdb_1`.`t1`.`a` AS `a` from `testdb_1`.`t1`
+testdb_1 v1 select `testdb_1`.`t1`.`a` AS `a` from `testdb_1`.`t1`
show create view testdb_1.v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `testdb_1`.`v1` AS select `testdb_1`.`t1`.`a` AS `a` from `testdb_1`.`t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `testdb_1`.`v1` AS select `testdb_1`.`t1`.`a` AS `a` from `testdb_1`.`t1` latin1 latin1_swedish_ci
revoke select on testdb_1.v1 from mysqltest_1@localhost;
select table_schema, table_name, view_definition from information_schema.views
where table_name='v1';
diff --git a/mysql-test/r/information_schema_inno.result b/mysql-test/r/information_schema_inno.result
index fb6584673f6..4f36fd2b8b5 100644
--- a/mysql-test/r/information_schema_inno.result
+++ b/mysql-test/r/information_schema_inno.result
@@ -25,3 +25,67 @@ NULL test PRIMARY NULL test t3 id 1 NULL NULL NULL NULL
NULL test t3_ibfk_1 NULL test t3 id 1 1 test t2 t1_id
NULL test t3_ibfk_1 NULL test t3 t2_id 2 2 test t2 id
drop table t3, t2, t1;
+CREATE TABLE t1(a1 INT NOT NULL, a2 INT NOT NULL,
+PRIMARY KEY(a1, a2)) ENGINE=INNODB;
+CREATE TABLE t2(b1 INT, b2 INT, INDEX (b1, b2),
+CONSTRAINT A1
+FOREIGN KEY (b1, b2) REFERENCES t1(a1, a2)
+ON UPDATE CASCADE ON DELETE NO ACTION) ENGINE=INNODB;
+CREATE TABLE t3(b1 INT, b2 INT, INDEX t3_indx (b1, b2),
+CONSTRAINT A2
+FOREIGN KEY (b1, b2) REFERENCES t2(b1, b2)
+ON UPDATE SET NULL ON DELETE RESTRICT) ENGINE=INNODB;
+CREATE TABLE t4(b1 INT, b2 INT, UNIQUE KEY t4_ukey (b1, b2),
+CONSTRAINT A3
+FOREIGN KEY (b1, b2) REFERENCES t3(b1, b2)
+ON UPDATE NO ACTION ON DELETE SET NULL) ENGINE=INNODB;
+CREATE TABLE t5(b1 INT, b2 INT, INDEX (b1, b2),
+CONSTRAINT A4
+FOREIGN KEY (b1, b2) REFERENCES t4(b1, b2)
+ON UPDATE RESTRICT ON DELETE CASCADE) ENGINE=INNODB;
+select a.CONSTRAINT_SCHEMA, b.TABLE_NAME, CONSTRAINT_TYPE,
+b.CONSTRAINT_NAME, UNIQUE_CONSTRAINT_SCHEMA, UNIQUE_CONSTRAINT_NAME,
+MATCH_OPTION, UPDATE_RULE, DELETE_RULE, b.REFERENCED_TABLE_NAME
+from information_schema.TABLE_CONSTRAINTS a,
+information_schema.REFERENTIAL_CONSTRAINTS b
+where a.CONSTRAINT_SCHEMA = 'test' and a.CONSTRAINT_SCHEMA = b.CONSTRAINT_SCHEMA and
+a.CONSTRAINT_NAME = b.CONSTRAINT_NAME;
+CONSTRAINT_SCHEMA TABLE_NAME CONSTRAINT_TYPE CONSTRAINT_NAME UNIQUE_CONSTRAINT_SCHEMA UNIQUE_CONSTRAINT_NAME MATCH_OPTION UPDATE_RULE DELETE_RULE REFERENCED_TABLE_NAME
+test t2 FOREIGN KEY A1 test PRIMARY NONE CASCADE NO ACTION t1
+test t3 FOREIGN KEY A2 test b1 NONE SET NULL RESTRICT t2
+test t4 FOREIGN KEY A3 test t3_indx NONE NO ACTION SET NULL t3
+test t5 FOREIGN KEY A4 test t4_ukey NONE RESTRICT CASCADE t4
+drop tables t5, t4, t3, t2, t1;
+create database `db-1`;
+use `db-1`;
+create table `t-2` (
+id int(10) unsigned not null auto_increment,
+primary key (id)
+) engine=innodb;
+create table `t-1` (
+id int(10) unsigned not null auto_increment,
+idtype int(10) unsigned not null,
+primary key (id),
+key fk_t1_1 (idtype),
+constraint fk_t1_1 foreign key (idtype) references `t-2` (id)
+) engine=innodb;
+use test;
+select referenced_table_schema, referenced_table_name
+from information_schema.key_column_usage
+where constraint_schema = 'db-1';
+referenced_table_schema referenced_table_name
+NULL NULL
+db-1 t-2
+NULL NULL
+drop database `db-1`;
+create table t1(id int primary key) engine = Innodb;
+create table t2(pid int, foreign key (pid) references t1(id)) engine = Innodb;
+set foreign_key_checks = 0;
+drop table t1;
+select UNIQUE_CONSTRAINT_NAME
+from information_schema.referential_constraints
+where constraint_schema = schema();
+UNIQUE_CONSTRAINT_NAME
+NULL
+drop table t2;
+set foreign_key_checks = 1;
diff --git a/mysql-test/r/information_schema_part.result b/mysql-test/r/information_schema_part.result
new file mode 100644
index 00000000000..04dc9ccf2c0
--- /dev/null
+++ b/mysql-test/r/information_schema_part.result
@@ -0,0 +1,153 @@
+drop table if exists t1,t2,t3,t4;
+create table t1 (a int not null,b int not null,c int not null, primary key(a,b))
+partition by list (b*a)
+(partition x1 values in (1) tablespace ts1,
+partition x2 values in (3, 11, 5, 7) tablespace ts2,
+partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
+select * from information_schema.partitions where table_schema="test"
+and table_name="t1";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t1 x1 NULL 1 NULL LIST NULL b*a NULL 1 0 0 0 # 1024 0 # # NULL NULL default ts1
+NULL test t1 x2 NULL 2 NULL LIST NULL b*a NULL 3,11,5,7 0 0 0 # 1024 0 # # NULL NULL default ts2
+NULL test t1 x3 NULL 3 NULL LIST NULL b*a NULL 16,8,24,27 0 0 0 # 1024 0 # # NULL NULL default ts3
+create table t2 (a int not null,b int not null,c int not null, primary key(a,b))
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than maxvalue tablespace ts3);
+select * from information_schema.partitions where table_schema="test"
+and table_name="t2";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t2 x1 NULL 1 NULL RANGE NULL a NULL 5 0 0 0 # 1024 0 # # NULL NULL default ts1
+NULL test t2 x2 NULL 2 NULL RANGE NULL a NULL 10 0 0 0 # 1024 0 # # NULL NULL default ts2
+NULL test t2 x3 NULL 3 NULL RANGE NULL a NULL MAXVALUE 0 0 0 # 1024 0 # # NULL NULL default ts3
+create table t3 (f1 date)
+partition by hash(month(f1))
+partitions 3;
+select * from information_schema.partitions where table_schema="test"
+and table_name="t3";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t3 p0 NULL 1 NULL HASH NULL month(f1) NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+NULL test t3 p1 NULL 2 NULL HASH NULL month(f1) NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+NULL test t3 p2 NULL 3 NULL HASH NULL month(f1) NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+create table t4 (f1 date, f2 int)
+partition by key(f1,f2)
+partitions 3;
+select * from information_schema.partitions where table_schema="test"
+and table_name="t4";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t4 p0 NULL 1 NULL KEY NULL f1,f2 NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+NULL test t4 p1 NULL 2 NULL KEY NULL f1,f2 NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+NULL test t4 p2 NULL 3 NULL KEY NULL f1,f2 NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+drop table t1,t2,t3,t4;
+create table t1 (a int not null,b int not null,c int not null,primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1,
+subpartition x12 tablespace t2),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1,
+subpartition x22 tablespace t2)
+);
+create table t2 (a int not null,b int not null,c int not null,primary key (a,b))
+partition by range (a)
+subpartition by key (a)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1,
+subpartition x12 tablespace t2),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1,
+subpartition x22 tablespace t2)
+);
+select * from information_schema.partitions where table_schema="test";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t1 x1 x11 1 1 RANGE HASH a a+b 1 0 0 0 # 1024 0 # # NULL NULL default t1
+NULL test t1 x1 x12 1 2 RANGE HASH a a+b 1 0 0 0 # 1024 0 # # NULL NULL default t2
+NULL test t1 x2 x21 2 1 RANGE HASH a a+b 5 0 0 0 # 1024 0 # # NULL NULL default t1
+NULL test t1 x2 x22 2 2 RANGE HASH a a+b 5 0 0 0 # 1024 0 # # NULL NULL default t2
+NULL test t2 x1 x11 1 1 RANGE KEY a a 1 0 0 0 # 1024 0 # # NULL NULL default t1
+NULL test t2 x1 x12 1 2 RANGE KEY a a 1 0 0 0 # 1024 0 # # NULL NULL default t2
+NULL test t2 x2 x21 2 1 RANGE KEY a a 5 0 0 0 # 1024 0 # # NULL NULL default t1
+NULL test t2 x2 x22 2 2 RANGE KEY a a 5 0 0 0 # 1024 0 # # NULL NULL default t2
+drop table t1,t2;
+create table t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1 nodegroup 0,
+subpartition x12 tablespace t2 nodegroup 1),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1 nodegroup 0,
+subpartition x22 tablespace t2 nodegroup 1)
+);
+select * from information_schema.partitions where table_schema="test";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t1 x1 x11 1 1 RANGE HASH a a+b 1 0 0 0 # 1024 0 # # NULL NULL 0 t1
+NULL test t1 x1 x12 1 2 RANGE HASH a a+b 1 0 0 0 # 1024 0 # # NULL NULL 1 t2
+NULL test t1 x2 x21 2 1 RANGE HASH a a+b 5 0 0 0 # 1024 0 # # NULL NULL 0 t1
+NULL test t1 x2 x22 2 2 RANGE HASH a a+b 5 0 0 0 # 1024 0 # # NULL NULL 1 t2
+show tables;
+Tables_in_test
+t1
+drop table t1;
+create table t1(f1 int, f2 int);
+select * from information_schema.partitions where table_schema="test";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t1 NULL NULL NULL NULL NULL NULL NULL NULL NULL 0 0 0 # 1024 0 # # NULL NULL NULL
+drop table t1;
+create table t1 (f1 date)
+partition by linear hash(month(f1))
+partitions 3;
+select * from information_schema.partitions where table_schema="test"
+and table_name="t1";
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
+NULL test t1 p0 NULL 1 NULL LINEAR HASH NULL month(f1) NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+NULL test t1 p1 NULL 2 NULL LINEAR HASH NULL month(f1) NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+NULL test t1 p2 NULL 3 NULL LINEAR HASH NULL month(f1) NULL NULL 0 0 0 # 1024 0 # # NULL NULL default NULL
+drop table t1;
+create table t1 (a int)
+PARTITION BY RANGE (a)
+SUBPARTITION BY LINEAR HASH (a)
+(PARTITION p0 VALUES LESS THAN (10));
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY LINEAR HASH (a)
+(PARTITION p0 VALUES LESS THAN (10) ENGINE = MyISAM) */
+select SUBPARTITION_METHOD FROM information_schema.partitions WHERE
+table_schema="test" AND table_name="t1";
+SUBPARTITION_METHOD
+LINEAR HASH
+drop table t1;
+create table t1 (a int)
+PARTITION BY LIST (a)
+(PARTITION p0 VALUES IN
+(10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,
+32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53));
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY LIST (a)
+(PARTITION p0 VALUES IN (10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53) ENGINE = MyISAM) */
+SELECT PARTITION_DESCRIPTION FROM information_schema.partitions WHERE
+table_schema = "test" AND table_name = "t1";
+PARTITION_DESCRIPTION
+10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53
+drop table t1;
+drop table if exists t1;
+create table t1 (f1 int key) partition by key(f1) partitions 2;
+select create_options from information_schema.tables where table_schema="test";
+create_options
+partitioned
+drop table t1;
diff --git a/mysql-test/r/init_file.result b/mysql-test/r/init_file.result
index 6394014f3e5..43ed908ad01 100644
--- a/mysql-test/r/init_file.result
+++ b/mysql-test/r/init_file.result
@@ -21,3 +21,4 @@ y
11
13
drop table t1, t2;
+call mtr.force_restart();
diff --git a/mysql-test/r/innodb-autoinc-optimize.result b/mysql-test/r/innodb-autoinc-optimize.result
index 49e31a3eede..c6da43555b2 100644
--- a/mysql-test/r/innodb-autoinc-optimize.result
+++ b/mysql-test/r/innodb-autoinc-optimize.result
@@ -3,6 +3,7 @@ create table t1(a int not null auto_increment primary key) engine=innodb;
insert into t1 set a = -1;
optimize table t1;
Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
test.t1 optimize status OK
==== clean up ====
DROP TABLE t1;
diff --git a/mysql-test/r/innodb-autoinc.result b/mysql-test/r/innodb-autoinc.result
new file mode 100644
index 00000000000..d2e8eb19e0c
--- /dev/null
+++ b/mysql-test/r/innodb-autoinc.result
@@ -0,0 +1,891 @@
+drop table if exists t1;
+CREATE TABLE t1 (c1 BIGINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (9223372036854775807, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+9223372036854775807 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 TINYINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (127, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+127 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 TINYINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (255, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+255 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 SMALLINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (32767, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+32767 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (65535, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+65535 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 MEDIUMINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (8388607, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+8388607 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 MEDIUMINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (16777215, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+16777215 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 INT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (2147483647, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+2147483647 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (4294967295, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+4294967295 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 BIGINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (9223372036854775807, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+9223372036854775807 NULL
+DROP TABLE t1;
+CREATE TABLE t1 (c1 BIGINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (18446744073709551615, null);
+INSERT INTO t1 (c2) VALUES ('innodb');
+Got one of the listed errors
+SELECT * FROM t1;
+c1 c2
+18446744073709551615 NULL
+DROP TABLE t1;
+CREATE TABLE t1(c1 INT PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1), (2), (3);
+INSERT INTO t1 VALUES (NULL), (NULL), (NULL);
+SELECT c1 FROM t1;
+c1
+1
+2
+3
+4
+5
+6
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`c1`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1
+TRUNCATE TABLE t1;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`c1`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+INSERT INTO t1 VALUES (1), (2), (3);
+INSERT INTO t1 VALUES (NULL), (NULL), (NULL);
+SELECT c1 FROM t1;
+c1
+1
+2
+3
+4
+5
+6
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`c1`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1
+DROP TABLE t1;
+CREATE TABLE t1(c1 INT PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1), (2), (3);
+INSERT INTO t1 VALUES (NULL), (NULL), (NULL);
+SELECT c1 FROM t1;
+c1
+1
+2
+3
+4
+5
+6
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`c1`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1
+DELETE FROM t1;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`c1`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1
+INSERT INTO t1 VALUES (1), (2), (3);
+INSERT INTO t1 VALUES (NULL), (NULL), (NULL);
+SELECT c1 FROM t1;
+c1
+1
+2
+3
+7
+8
+9
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`c1`)
+) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=latin1
+DROP TABLE t1;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT AUTO_INCREMENT, c2 INT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (NULL, 1);
+DELETE FROM t1 WHERE c1 = 1;
+INSERT INTO t1 VALUES (2,1);
+INSERT INTO t1 VALUES (NULL,8);
+SELECT * FROM t1;
+c1 c2
+2 1
+3 8
+DROP TABLE t1;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT AUTO_INCREMENT, c2 INT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (NULL, 1);
+DELETE FROM t1 WHERE c1 = 1;
+INSERT INTO t1 VALUES (2,1), (NULL, 8);
+INSERT INTO t1 VALUES (NULL,9);
+SELECT * FROM t1;
+c1 c2
+2 1
+3 8
+5 9
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=100, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 100
+auto_increment_offset 10
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (NULL),(5),(NULL);
+INSERT INTO t1 VALUES (250),(NULL);
+SELECT * FROM t1;
+c1
+5
+10
+110
+250
+310
+INSERT INTO t1 VALUES (1000);
+SET @@INSERT_ID=400;
+INSERT INTO t1 VALUES(NULL),(NULL);
+SELECT * FROM t1;
+c1
+5
+10
+110
+250
+310
+400
+410
+1000
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(0);
+SELECT * FROM t1;
+c1
+1
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=100, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+INSERT INTO t1 VALUES (-1), (NULL),(2),(NULL);
+INSERT INTO t1 VALUES (250),(NULL);
+SELECT * FROM t1;
+c1
+-1
+1
+2
+10
+110
+250
+410
+SET @@INSERT_ID=400;
+INSERT INTO t1 VALUES(NULL),(NULL);
+Got one of the listed errors
+SELECT * FROM t1;
+c1
+-1
+1
+2
+10
+110
+250
+410
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(-1);
+SELECT * FROM t1;
+c1
+-1
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=100, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 100
+auto_increment_offset 10
+INSERT INTO t1 VALUES (-2), (NULL),(2),(NULL);
+INSERT INTO t1 VALUES (250),(NULL);
+SELECT * FROM t1;
+c1
+-2
+-1
+1
+2
+10
+250
+310
+INSERT INTO t1 VALUES (1000);
+SET @@INSERT_ID=400;
+INSERT INTO t1 VALUES(NULL),(NULL);
+SELECT * FROM t1;
+c1
+-2
+-1
+1
+2
+10
+250
+310
+400
+410
+1000
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT UNSIGNED AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(-1);
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+SELECT * FROM t1;
+c1
+1
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=100, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 100
+auto_increment_offset 10
+INSERT INTO t1 VALUES (-2);
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+INSERT INTO t1 VALUES (NULL);
+INSERT INTO t1 VALUES (2);
+INSERT INTO t1 VALUES (NULL);
+INSERT INTO t1 VALUES (250);
+INSERT INTO t1 VALUES (NULL);
+SELECT * FROM t1;
+c1
+1
+2
+10
+110
+210
+250
+310
+INSERT INTO t1 VALUES (1000);
+SET @@INSERT_ID=400;
+INSERT INTO t1 VALUES(NULL);
+INSERT INTO t1 VALUES(NULL);
+SELECT * FROM t1;
+c1
+1
+2
+10
+110
+210
+250
+310
+400
+1000
+1010
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 INT UNSIGNED AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(-1);
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+SELECT * FROM t1;
+c1
+1
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=100, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 100
+auto_increment_offset 10
+INSERT INTO t1 VALUES (-2),(NULL),(2),(NULL);
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+INSERT INTO t1 VALUES (250),(NULL);
+SELECT * FROM t1;
+c1
+1
+2
+10
+110
+210
+250
+410
+INSERT INTO t1 VALUES (1000);
+SET @@INSERT_ID=400;
+INSERT INTO t1 VALUES(NULL),(NULL);
+Got one of the listed errors
+SELECT * FROM t1;
+c1
+1
+2
+10
+110
+210
+250
+410
+1000
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 BIGINT AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL);
+INSERT INTO t1 VALUES (9223372036854775794);
+SELECT * FROM t1;
+c1
+1
+9223372036854775794
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=2, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 2
+auto_increment_offset 10
+INSERT INTO t1 VALUES (NULL),(NULL),(NULL),(NULL),(NULL),(NULL);
+SELECT * FROM t1;
+c1
+1
+9223372036854775794
+9223372036854775796
+9223372036854775798
+9223372036854775800
+9223372036854775802
+9223372036854775804
+9223372036854775806
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 BIGINT UNSIGNED AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL);
+INSERT INTO t1 VALUES (18446744073709551603);
+SELECT * FROM t1;
+c1
+1
+18446744073709551603
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=2, @@SESSION.AUTO_INCREMENT_OFFSET=10;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 2
+auto_increment_offset 10
+INSERT INTO t1 VALUES (NULL),(NULL),(NULL),(NULL),(NULL),(NULL);
+SELECT * FROM t1;
+c1
+1
+18446744073709551603
+18446744073709551604
+18446744073709551606
+18446744073709551608
+18446744073709551610
+18446744073709551612
+18446744073709551614
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 BIGINT UNSIGNED AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL);
+INSERT INTO t1 VALUES (18446744073709551603);
+SELECT * FROM t1;
+c1
+1
+18446744073709551603
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=5, @@SESSION.AUTO_INCREMENT_OFFSET=7;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 5
+auto_increment_offset 7
+INSERT INTO t1 VALUES (NULL),(NULL);
+SELECT * FROM t1;
+c1
+1
+18446744073709551603
+18446744073709551607
+18446744073709551612
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 BIGINT AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL);
+INSERT INTO t1 VALUES(-9223372036854775806);
+INSERT INTO t1 VALUES(-9223372036854775807);
+INSERT INTO t1 VALUES(-9223372036854775808);
+SELECT * FROM t1;
+c1
+-9223372036854775808
+-9223372036854775807
+-9223372036854775806
+1
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=3, @@SESSION.AUTO_INCREMENT_OFFSET=3;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 3
+auto_increment_offset 3
+INSERT INTO t1 VALUES (NULL),(NULL), (NULL);
+SELECT * FROM t1;
+c1
+-9223372036854775808
+-9223372036854775807
+-9223372036854775806
+1
+3
+6
+9
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1 (c1 BIGINT UNSIGNED AUTO_INCREMENT, PRIMARY KEY(c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL);
+INSERT INTO t1 VALUES (18446744073709551610);
+SELECT * FROM t1;
+c1
+1
+18446744073709551610
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1152921504606846976, @@SESSION.AUTO_INCREMENT_OFFSET=1152921504606846976;
+Warnings:
+Warning 1292 Truncated incorrect auto_increment_increment value: '1152921504606846976'
+Warning 1292 Truncated incorrect auto_increment_offset value: '1152921504606846976'
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 65535
+auto_increment_offset 65535
+INSERT INTO t1 VALUES (NULL);
+SELECT * FROM t1;
+c1
+1
+18446744073709551610
+18446744073709551615
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
+SET @@INSERT_ID=1;
+SHOW VARIABLES LIKE "%auto_inc%";
+Variable_name Value
+auto_increment_increment 1
+auto_increment_offset 1
+CREATE TABLE t1 (c1 DOUBLE NOT NULL AUTO_INCREMENT, c2 INT, PRIMARY KEY (c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL, 1);
+INSERT INTO t1 VALUES(NULL, 2);
+SELECT * FROM t1;
+c1 c2
+1 1
+2 2
+ALTER TABLE t1 CHANGE c1 c1 SERIAL;
+SELECT * FROM t1;
+c1 c2
+1 1
+2 2
+INSERT INTO t1 VALUES(NULL, 3);
+INSERT INTO t1 VALUES(NULL, 4);
+SELECT * FROM t1;
+c1 c2
+1 1
+2 2
+3 3
+4 4
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (c1 FLOAT NOT NULL AUTO_INCREMENT, c2 INT, PRIMARY KEY (c1)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(NULL, 1);
+INSERT INTO t1 VALUES(NULL, 2);
+SELECT * FROM t1;
+c1 c2
+1 1
+2 2
+ALTER TABLE t1 CHANGE c1 c1 SERIAL;
+SELECT * FROM t1;
+c1 c2
+1 1
+2 2
+INSERT INTO t1 VALUES(NULL, 3);
+INSERT INTO t1 VALUES(NULL, 4);
+SELECT * FROM t1;
+c1 c2
+1 1
+2 2
+3 3
+4 4
+DROP TABLE t1;
+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=5;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+DROP TABLE IF EXISTS t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TABLE t1 (
+a INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+b INT(10) UNSIGNED NOT NULL,
+c ENUM('FALSE','TRUE') DEFAULT NULL,
+PRIMARY KEY (a)) ENGINE = InnoDB;
+CREATE TABLE t2 (
+m INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+n INT(10) UNSIGNED NOT NULL,
+o enum('FALSE','TRUE') DEFAULT NULL,
+PRIMARY KEY (m)) ENGINE = InnoDB;
+INSERT INTO t2 (n,o) VALUES
+(1 , 'true'), (1 , 'false'), (2 , 'true'), (2 , 'false'), (3 , 'true'),
+(3 , 'false'), (4 , 'true'), (4 , 'false'), (5 , 'true'), (5 , 'false');
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `m` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `n` int(10) unsigned NOT NULL,
+ `o` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`m`)
+) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 ;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 ;
+SELECT * FROM t1;
+a b c
+1 1 TRUE
+2 1 FALSE
+3 2 TRUE
+4 2 FALSE
+5 3 TRUE
+6 3 FALSE
+7 4 TRUE
+8 4 FALSE
+9 5 TRUE
+10 5 FALSE
+13 1 TRUE
+14 1 FALSE
+15 2 TRUE
+16 2 FALSE
+17 3 TRUE
+18 3 FALSE
+19 4 TRUE
+20 4 FALSE
+21 5 TRUE
+22 5 FALSE
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 WHERE o = 'false';
+SELECT * FROM t1;
+a b c
+1 1 TRUE
+2 1 FALSE
+3 2 TRUE
+4 2 FALSE
+5 3 TRUE
+6 3 FALSE
+7 4 TRUE
+8 4 FALSE
+9 5 TRUE
+10 5 FALSE
+13 1 TRUE
+14 1 FALSE
+15 2 TRUE
+16 2 FALSE
+17 3 TRUE
+18 3 FALSE
+19 4 TRUE
+20 4 FALSE
+21 5 TRUE
+22 5 FALSE
+23 1 FALSE
+24 2 FALSE
+25 3 FALSE
+26 4 FALSE
+27 5 FALSE
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 WHERE o = 'false';
+SELECT * FROM t1;
+a b c
+1 1 TRUE
+2 1 FALSE
+3 2 TRUE
+4 2 FALSE
+5 3 TRUE
+6 3 FALSE
+7 4 TRUE
+8 4 FALSE
+9 5 TRUE
+10 5 FALSE
+13 1 TRUE
+14 1 FALSE
+15 2 TRUE
+16 2 FALSE
+17 3 TRUE
+18 3 FALSE
+19 4 TRUE
+20 4 FALSE
+21 5 TRUE
+22 5 FALSE
+23 1 FALSE
+24 2 FALSE
+25 3 FALSE
+26 4 FALSE
+27 5 FALSE
+30 1 FALSE
+31 2 FALSE
+32 3 FALSE
+33 4 FALSE
+34 5 FALSE
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 WHERE o = 'false';
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=44 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 WHERE o = 'false';
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=51 DEFAULT CHARSET=latin1
+INSERT INTO t1 (b,c) SELECT n,o FROM t2 WHERE o = 'false';
+SELECT * FROM t1;
+a b c
+1 1 TRUE
+2 1 FALSE
+3 2 TRUE
+4 2 FALSE
+5 3 TRUE
+6 3 FALSE
+7 4 TRUE
+8 4 FALSE
+9 5 TRUE
+10 5 FALSE
+13 1 TRUE
+14 1 FALSE
+15 2 TRUE
+16 2 FALSE
+17 3 TRUE
+18 3 FALSE
+19 4 TRUE
+20 4 FALSE
+21 5 TRUE
+22 5 FALSE
+23 1 FALSE
+24 2 FALSE
+25 3 FALSE
+26 4 FALSE
+27 5 FALSE
+30 1 FALSE
+31 2 FALSE
+32 3 FALSE
+33 4 FALSE
+34 5 FALSE
+37 1 FALSE
+38 2 FALSE
+39 3 FALSE
+40 4 FALSE
+41 5 FALSE
+44 1 FALSE
+45 2 FALSE
+46 3 FALSE
+47 4 FALSE
+48 5 FALSE
+51 1 FALSE
+52 2 FALSE
+53 3 FALSE
+54 4 FALSE
+55 5 FALSE
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `b` int(10) unsigned NOT NULL,
+ `c` enum('FALSE','TRUE') DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=InnoDB AUTO_INCREMENT=58 DEFAULT CHARSET=latin1
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+DROP TABLE IF EXISTS t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TABLE t1(
+c1 INT(10) UNSIGNED NOT NULL AUTO_INCREMENT
+PRIMARY KEY) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL);
+CREATE TABLE t2(
+c1 TINYINT(3) UNSIGNED NOT NULL AUTO_INCREMENT
+PRIMARY KEY) ENGINE=InnoDB;
+INSERT INTO t2 SELECT c1 FROM t1;
+Got one of the listed errors
+INSERT INTO t2 SELECT NULL FROM t1;
+Got one of the listed errors
+DROP TABLE t1;
+DROP TABLE t2;
+CREATE TABLE t1 (c1 INT PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (null);
+INSERT INTO t1 VALUES (null);
+ALTER TABLE t1 CHANGE c1 d1 INT NOT NULL AUTO_INCREMENT;
+SELECT * FROM t1;
+d1
+1
+3
+SELECT * FROM t1;
+d1
+1
+3
+INSERT INTO t1 VALUES(null);
+Got one of the listed errors
+ALTER TABLE t1 AUTO_INCREMENT = 3;
+INSERT INTO t1 VALUES(null);
+SELECT * FROM t1;
+d1
+1
+3
+4
+DROP TABLE t1;
diff --git a/mysql-test/r/innodb-replace.result b/mysql-test/r/innodb-replace.result
index 77e0aeb38fd..c926bb89a2e 100644
--- a/mysql-test/r/innodb-replace.result
+++ b/mysql-test/r/innodb-replace.result
@@ -3,11 +3,11 @@ create table t1 (c1 char(5) unique not null, c2 int, stamp timestamp) engine=inn
select * from t1;
c1 c2 stamp
replace delayed into t1 (c1, c2) values ( "text1","11");
-ERROR HY000: Table storage engine for 't1' doesn't have this option
+ERROR HY000: DELAYED option not supported for table 't1'
select * from t1;
c1 c2 stamp
replace delayed into t1 (c1, c2) values ( "text1","12");
-ERROR HY000: Table storage engine for 't1' doesn't have this option
+ERROR HY000: DELAYED option not supported for table 't1'
select * from t1;
c1 c2 stamp
drop table t1;
diff --git a/mysql-test/r/innodb-semi-consistent.result b/mysql-test/r/innodb-semi-consistent.result
new file mode 100644
index 00000000000..ca0e362ef80
--- /dev/null
+++ b/mysql-test/r/innodb-semi-consistent.result
@@ -0,0 +1,47 @@
+drop table if exists t1;
+set binlog_format=mixed;
+set session transaction isolation level repeatable read;
+create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1;
+insert into t1 values (1),(2),(3),(4),(5),(6),(7);
+set autocommit=0;
+select * from t1 where a=3 lock in share mode;
+a
+3
+set binlog_format=mixed;
+set session transaction isolation level repeatable read;
+set autocommit=0;
+update t1 set a=10 where a=5;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+set session transaction isolation level read committed;
+update t1 set a=10 where a=5;
+select * from t1 where a=2 for update;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1 where a=2 limit 1 for update;
+a
+2
+update t1 set a=11 where a=6;
+update t1 set a=12 where a=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+update t1 set a=13 where a=1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+update t1 set a=14 where a=1;
+commit;
+select * from t1;
+a
+14
+2
+3
+4
+10
+11
+7
+drop table t1;
+create table t1 (a int, b int) engine=myisam;
+create table t2 (c int, d int, key (c)) engine=innodb;
+insert into t1 values (1,1);
+insert into t2 values (1,2);
+set session transaction isolation level read committed;
+delete from t1 using t1 join t2 on t1.a = t2.c where t2.d in (1);
+drop table t1, t2;
diff --git a/mysql-test/r/innodb-ucs2.result b/mysql-test/r/innodb-ucs2.result
index a1c73c912b2..b6bff7d5f42 100644
--- a/mysql-test/r/innodb-ucs2.result
+++ b/mysql-test/r/innodb-ucs2.result
@@ -1,3 +1,4 @@
+drop table if exists t1, t2;
create table t1 (
a int, b char(10), c char(10), filler char(10), primary key(a, b(2)), unique key (a, c(2))
) character set utf8 engine = innodb;
diff --git a/mysql-test/r/innodb.result b/mysql-test/r/innodb.result
index 415fbe87f53..b6602c9cfaf 100644
--- a/mysql-test/r/innodb.result
+++ b/mysql-test/r/innodb.result
@@ -166,6 +166,7 @@ level id parent_id
1 1007 101
optimize table t1;
Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
test.t1 optimize status OK
show keys from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
@@ -190,6 +191,7 @@ create table t1 (a int) engine=innodb;
insert into t1 values (1), (2);
optimize table t1;
Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
test.t1 optimize status OK
delete from t1 where a = 1;
select * from t1;
@@ -234,7 +236,7 @@ n after commit
commit;
insert into t1 values (5);
insert into t1 values (4);
-ERROR 23000: Duplicate entry '4' for key 1
+ERROR 23000: Duplicate entry '4' for key 'PRIMARY'
commit;
select n, "after commit" from t1;
n after commit
@@ -243,7 +245,7 @@ n after commit
set autocommit=1;
insert into t1 values (6);
insert into t1 values (4);
-ERROR 23000: Duplicate entry '4' for key 1
+ERROR 23000: Duplicate entry '4' for key 'PRIMARY'
select n from t1;
n
4
@@ -318,7 +320,7 @@ drop table t1;
CREATE TABLE t1 (id char(8) not null primary key, val int not null) engine=innodb;
insert into t1 values ('pippo', 12);
insert into t1 values ('pippo', 12);
-ERROR 23000: Duplicate entry 'pippo' for key 1
+ERROR 23000: Duplicate entry 'pippo' for key 'PRIMARY'
delete from t1;
delete from t1 where id = 'pippo';
select * from t1;
@@ -472,43 +474,6 @@ a b
3 3
drop table t1,t2;
CREATE TABLE t1 (
-id int(11) NOT NULL auto_increment,
-ggid varchar(32) binary DEFAULT '' NOT NULL,
-email varchar(64) DEFAULT '' NOT NULL,
-passwd varchar(32) binary DEFAULT '' NOT NULL,
-PRIMARY KEY (id),
-UNIQUE ggid (ggid)
-) ENGINE=innodb;
-insert into t1 (ggid,passwd) values ('test1','xxx');
-insert into t1 (ggid,passwd) values ('test2','yyy');
-insert into t1 (ggid,passwd) values ('test2','this will fail');
-ERROR 23000: Duplicate entry 'test2' for key 2
-insert into t1 (ggid,id) values ('this will fail',1);
-ERROR 23000: Duplicate entry '1' for key 1
-select * from t1 where ggid='test1';
-id ggid email passwd
-1 test1 xxx
-select * from t1 where passwd='xxx';
-id ggid email passwd
-1 test1 xxx
-select * from t1 where id=2;
-id ggid email passwd
-2 test2 yyy
-replace into t1 (ggid,id) values ('this will work',1);
-replace into t1 (ggid,passwd) values ('test2','this will work');
-update t1 set id=100,ggid='test2' where id=1;
-ERROR 23000: Duplicate entry 'test2' for key 2
-select * from t1;
-id ggid email passwd
-1 this will work
-3 test2 this will work
-select * from t1 where id=1;
-id ggid email passwd
-1 this will work
-select * from t1 where id=999;
-id ggid email passwd
-drop table t1;
-CREATE TABLE t1 (
user_name varchar(12),
password text,
subscribed char(1),
@@ -775,6 +740,7 @@ world 2
hello 1
optimize table t1;
Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
test.t1 optimize status OK
show keys from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
@@ -816,7 +782,7 @@ create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(3
insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJKL');
LOCK TABLES t1 WRITE;
insert into t1 values (99,1,2,'D'),(1,1,2,'D');
-ERROR 23000: Duplicate entry '1-1' for key 1
+ERROR 23000: Duplicate entry '1-1' for key 'PRIMARY'
select id from t1;
id
0
@@ -834,7 +800,7 @@ insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJ
LOCK TABLES t1 WRITE;
begin;
insert into t1 values (99,1,2,'D'),(1,1,2,'D');
-ERROR 23000: Duplicate entry '1-1' for key 1
+ERROR 23000: Duplicate entry '1-1' for key 'PRIMARY'
select id from t1;
id
0
@@ -856,7 +822,7 @@ create table t1 (a char(20), index (a(5))) engine=innodb;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(20) default NULL,
+ `a` char(20) DEFAULT NULL,
KEY `a` (`a`(5))
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1;
@@ -947,7 +913,7 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL #
explain select * from t1 order by b;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL b 4 NULL #
+1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
explain select * from t1 order by c;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
@@ -1058,6 +1024,7 @@ id code name
4 2 Erik
5 3 Sasha
COMMIT;
+SET binlog_format='MIXED';
BEGIN;
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
insert into t1 (code, name) values (3, 'Jeremy'), (4, 'Matt');
@@ -1086,38 +1053,18 @@ n d
1 30
2 20
drop table t1,t2;
-CREATE TABLE `t1` (
-`a` int(11) NOT NULL auto_increment,
-`b` int(11) default NULL,
-PRIMARY KEY (`a`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;
-CREATE TABLE `t2` (
-`a` int(11) NOT NULL auto_increment,
-`b` int(11) default NULL,
-PRIMARY KEY (`a`)
-) ENGINE=INNODB DEFAULT CHARSET=latin1 ;
-insert into t1 values (1,1),(2,2);
-insert into t2 values (1,1),(4,4);
-reset master;
-UPDATE t2,t1 SET t2.a=t1.a+2;
-ERROR 23000: Duplicate entry '3' for key 1
-select * from t2 /* must be (3,1), (4,4) */;
-a b
-1 1
-4 4
-show master status /* there must no UPDATE in binlog */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
-delete from t1;
-delete from t2;
-insert into t1 values (1,2),(3,4),(4,4);
-insert into t2 values (1,2),(3,4),(4,4);
-reset master;
-UPDATE t2,t1 SET t2.a=t2.b where t2.a=t1.a;
-ERROR 23000: Duplicate entry '4' for key 1
-show master status /* there must be no UPDATE query event */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
+drop table if exists t1, t2;
+CREATE TABLE t1 (a int, PRIMARY KEY (a));
+CREATE TABLE t2 (a int, PRIMARY KEY (a)) ENGINE=InnoDB;
+create trigger trg_del_t2 after delete on t2 for each row
+insert into t1 values (1);
+insert into t1 values (1);
+insert into t2 values (1),(2);
+delete t2 from t2;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+select count(*) from t2 /* must be 2 as restored after rollback caused by the error */;
+count(*)
+2
drop table t1, t2;
drop table if exists t1, t2;
CREATE TABLE t1 (a int, PRIMARY KEY (a));
@@ -1127,7 +1074,7 @@ insert into t1 values (1);
insert into t1 values (1);
insert into t2 values (1),(2);
delete t2 from t2;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select count(*) from t2 /* must be 2 as restored after rollback caused by the error */;
count(*)
2
@@ -1341,22 +1288,14 @@ insert into t2 (a) select b from t1;
insert into t1 (a) select b from t2;
insert into t2 (a) select b from t1;
insert into t1 (a) select b from t2;
-insert into t2 (a) select b from t1;
-insert into t1 (a) select b from t2;
-insert into t2 (a) select b from t1;
-insert into t1 (a) select b from t2;
-insert into t2 (a) select b from t1;
-insert into t1 (a) select b from t2;
-insert into t2 (a) select b from t1;
-insert into t1 (a) select b from t2;
select count(*) from t1;
count(*)
-29267
-explain select * from t1 where c between 1 and 10000;
+623
+explain select * from t1 where c between 1 and 2500;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range c c 5 NULL # Using where
update t1 set c=a;
-explain select * from t1 where c between 1 and 10000;
+explain select * from t1 where c between 1 and 2500;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL c NULL NULL NULL # Using where
drop table t1,t2;
@@ -1424,9 +1363,9 @@ insert into `t2`values ( 1 ) ;
create table `t3` (`id` int( 11 ) not null default '0',key `id` ( `id` ) ,constraint `t2_id_fk` foreign key ( `id` ) references `t2` (`id` )) engine = innodb;
insert into `t3`values ( 1 ) ;
delete t3,t2,t1 from t1,t2,t3 where t1.id =1 and t2.id = t1.id and t3.id = t2.id;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t1_id_fk` FOREIGN KEY (`id`) REFERENCES `t1` (`id`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t1_id_fk` FOREIGN KEY (`id`) REFERENCES `t1` (`id`))
update t1,t2,t3 set t3.id=5, t2.id=6, t1.id=7 where t1.id =1 and t2.id = t1.id and t3.id = t2.id;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t1_id_fk` FOREIGN KEY (`id`) REFERENCES `t1` (`id`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t1_id_fk` FOREIGN KEY (`id`) REFERENCES `t1` (`id`))
update t3 set t3.id=7 where t1.id =1 and t2.id = t1.id and t3.id = t2.id;
ERROR 42S22: Unknown column 't1.id' in 'where clause'
drop table t3,t2,t1;
@@ -1438,7 +1377,7 @@ foreign key(pid) references t1(id) on delete cascade) engine=innodb;
insert into t1 values(0,0),(1,0),(2,1),(3,2),(4,3),(5,4),(6,5),(7,6),
(8,7),(9,8),(10,9),(11,10),(12,11),(13,12),(14,13),(15,14);
delete from t1 where id=0;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`pid`) REFERENCES `t1` (`id`) ON DELETE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`pid`) REFERENCES `t1` (`id`) ON DELETE CASCADE)
delete from t1 where id=15;
delete from t1 where id=0;
drop table t1;
@@ -1633,9 +1572,9 @@ create table t2 (id int(11) not null auto_increment, id2 int(11) not null, const
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `id` int(11) NOT NULL auto_increment,
+ `id` int(11) NOT NULL AUTO_INCREMENT,
`id2` int(11) NOT NULL,
- PRIMARY KEY (`id`),
+ PRIMARY KEY (`id`),
KEY `id` (`id`,`id2`),
CONSTRAINT `t1_id_fk` FOREIGN KEY (`id`) REFERENCES `t1` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
@@ -1644,7 +1583,7 @@ create table t2 (id int(11) not null auto_increment, id2 int(11) not null, const
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `id` int(11) NOT NULL auto_increment,
+ `id` int(11) NOT NULL AUTO_INCREMENT,
`id2` int(11) NOT NULL,
KEY `t1_id_fk` (`id`),
CONSTRAINT `t1_id_fk` FOREIGN KEY (`id`) REFERENCES `t1` (`id`)
@@ -1653,7 +1592,7 @@ alter table t2 add index id_test (id), add index id_test2 (id,id2);
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `id` int(11) NOT NULL auto_increment,
+ `id` int(11) NOT NULL AUTO_INCREMENT,
`id2` int(11) NOT NULL,
KEY `id_test` (`id`),
KEY `id_test2` (`id`,`id2`),
@@ -1666,9 +1605,9 @@ create table t2 (a int auto_increment primary key, b int, index(b), foreign key
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` int(11) NOT NULL auto_increment,
- `b` int(11) default NULL,
- PRIMARY KEY (`a`),
+ `a` int(11) NOT NULL AUTO_INCREMENT,
+ `b` int(11) DEFAULT NULL,
+ PRIMARY KEY (`a`),
UNIQUE KEY `b_2` (`b`),
KEY `b` (`b`),
CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`b`) REFERENCES `t1` (`id`)
@@ -1678,9 +1617,9 @@ create table t2 (a int auto_increment primary key, b int, foreign key (b) refere
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` int(11) NOT NULL auto_increment,
- `b` int(11) default NULL,
- PRIMARY KEY (`a`),
+ `a` int(11) NOT NULL AUTO_INCREMENT,
+ `b` int(11) DEFAULT NULL,
+ PRIMARY KEY (`a`),
UNIQUE KEY `b` (`b`),
CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`b`) REFERENCES `t1` (`id`),
CONSTRAINT `t2_ibfk_2` FOREIGN KEY (`b`) REFERENCES `t1` (`id`)
@@ -1797,33 +1736,36 @@ select count(*) from t1 where x = 18446744073709551601;
count(*)
1
drop table t1;
-show status like "Innodb_buffer_pool_pages_total";
-Variable_name Value
-Innodb_buffer_pool_pages_total 512
-show status like "Innodb_page_size";
-Variable_name Value
-Innodb_page_size 16384
-innodb_rows_deleted
-73
-innodb_rows_inserted
-29734
-innodb_rows_updated
-29532
-show status like "Innodb_row_lock_waits";
-Variable_name Value
-Innodb_row_lock_waits 0
-show status like "Innodb_row_lock_current_waits";
-Variable_name Value
-Innodb_row_lock_current_waits 0
-show status like "Innodb_row_lock_time";
-Variable_name Value
-Innodb_row_lock_time 0
-show status like "Innodb_row_lock_time_max";
-Variable_name Value
-Innodb_row_lock_time_max 0
-show status like "Innodb_row_lock_time_avg";
-Variable_name Value
-Innodb_row_lock_time_avg 0
+SELECT variable_value FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_buffer_pool_pages_total';
+variable_value
+512
+SELECT variable_value FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_page_size';
+variable_value
+16384
+SELECT variable_value - @innodb_rows_deleted_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_rows_deleted';
+variable_value - @innodb_rows_deleted_orig
+71
+SELECT variable_value - @innodb_rows_inserted_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_rows_inserted';
+variable_value - @innodb_rows_inserted_orig
+1084
+SELECT variable_value - @innodb_rows_updated_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_rows_updated';
+variable_value - @innodb_rows_updated_orig
+885
+SELECT variable_value - @innodb_row_lock_waits_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_row_lock_waits';
+variable_value - @innodb_row_lock_waits_orig
+0
+SELECT variable_value - @innodb_row_lock_current_waits_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_row_lock_current_waits';
+variable_value - @innodb_row_lock_current_waits_orig
+0
+SELECT variable_value - @innodb_row_lock_time_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_row_lock_time';
+variable_value - @innodb_row_lock_time_orig
+0
+SELECT variable_value - @innodb_row_lock_time_max_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_row_lock_time_max';
+variable_value - @innodb_row_lock_time_max_orig
+0
+SELECT variable_value - @innodb_row_lock_time_avg_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_row_lock_time_avg';
+variable_value - @innodb_row_lock_time_avg_orig
+0
show variables like "innodb_sync_spin_loops";
Variable_name Value
innodb_sync_spin_loops 20
@@ -1839,12 +1781,13 @@ set global innodb_sync_spin_loops=20;
show variables like "innodb_sync_spin_loops";
Variable_name Value
innodb_sync_spin_loops 20
+SET @old_innodb_thread_concurrency= @@global.innodb_thread_concurrency;
show variables like "innodb_thread_concurrency";
Variable_name Value
innodb_thread_concurrency 8
set global innodb_thread_concurrency=1001;
Warnings:
-Warning 1292 Truncated incorrect innodb_thread_concurrency value: '1001'
+Warning 1292 Truncated incorrect thread_concurrency value: '1001'
show variables like "innodb_thread_concurrency";
Variable_name Value
innodb_thread_concurrency 1000
@@ -1856,6 +1799,7 @@ set global innodb_thread_concurrency=16;
show variables like "innodb_thread_concurrency";
Variable_name Value
innodb_thread_concurrency 16
+SET @@global.innodb_thread_concurrency= @old_innodb_thread_concurrency;
show variables like "innodb_concurrency_tickets";
Variable_name Value
innodb_concurrency_tickets 500
@@ -1865,7 +1809,7 @@ Variable_name Value
innodb_concurrency_tickets 1000
set global innodb_concurrency_tickets=0;
Warnings:
-Warning 1292 Truncated incorrect innodb_concurrency_tickets value: '0'
+Warning 1292 Truncated incorrect concurrency_tickets value: '0'
show variables like "innodb_concurrency_tickets";
Variable_name Value
innodb_concurrency_tickets 1
@@ -1905,40 +1849,40 @@ concat('*',v,'*',c,'*',t,'*')
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
create table t2 like t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
create table t3 select * from t1;
show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
alter table t1 modify c varchar(10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` varchar(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
`t` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
alter table t1 modify v char(10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
`t` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
alter table t1 modify t varchar(10);
@@ -1947,9 +1891,9 @@ Note 1265 Data truncated for column 't' at row 2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
- `t` varchar(10) default NULL
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` varchar(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
select concat('*',v,'*',c,'*',t,'*') from t1;
concat('*',v,'*',c,'*',t,'*')
@@ -1960,8 +1904,8 @@ create table t1 (v varchar(10), c char(10), t text, key(v), key(c), key(t(10)));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `v` (`v`),
KEY `c` (`c`),
@@ -2026,7 +1970,7 @@ explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a '
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref v v 13 const # Using where; Using index
alter table t1 add unique(v);
-ERROR 23000: Duplicate entry '{ ' for key 1
+ERROR 23000: Duplicate entry '{ ' for key 'v_2'
alter table t1 add key(v);
select concat('*',v,'*',c,'*',t,'*') as qq from t1 where v='a';
qq
@@ -2179,8 +2123,8 @@ alter table t1 modify v varchar(300), drop key v, drop key v_2, add key v (v);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(300) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(300) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `c` (`c`),
KEY `t` (`t`(10)),
@@ -2259,8 +2203,8 @@ alter table t1 drop key v, add key v (v(30));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(300) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(300) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `c` (`c`),
KEY `t` (`t`(10)),
@@ -2339,8 +2283,8 @@ alter table t1 modify v varchar(600), drop key v, add key v (v);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(600) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(600) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `c` (`c`),
KEY `t` (`t`(10)),
@@ -2386,16 +2330,16 @@ drop table t1;
create table t1 (a char(10), unique (a));
insert into t1 values ('a ');
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a' for key 1
+ERROR 23000: Duplicate entry 'a' for key 'a'
alter table t1 modify a varchar(10);
insert into t1 values ('a '),('a '),('a '),('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
update t1 set a='a ' where a like 'a%';
select concat(a,'.') from t1;
concat(a,'.')
@@ -2417,8 +2361,8 @@ create table t1 (v varchar(10), c char(10), t text, key(v(5)), key(c(5)), key(t(
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `v` (`v`(5)),
KEY `c` (`c`(5)),
@@ -2429,15 +2373,15 @@ create table t1 (v char(10) character set utf8);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) character set utf8 default NULL
+ `v` char(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1;
create table t1 (v varchar(10), c char(10)) row_format=fixed;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
insert into t1 values('a','a'),('a ','a ');
select concat('*',v,'*',c,'*') from t1;
@@ -2479,7 +2423,7 @@ Note 1246 Converting column 'v' from VARCHAR to TEXT
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` mediumtext character set utf8
+ `v` mediumtext CHARACTER SET utf8
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1;
set storage_engine=MyISAM;
@@ -2518,7 +2462,7 @@ key (rowid), unique(val)) engine=innodb;
replace into t1 (val) values ('1'),('2');
replace into t1 (val) values ('1'),('2');
insert into t1 (val) values ('1'),('2');
-ERROR 23000: Duplicate entry '1' for key 2
+ERROR 23000: Duplicate entry '1' for key 'val'
select * from t1;
rowid val
3 1
@@ -2528,7 +2472,7 @@ create table t1 (a int not null auto_increment primary key, val int) engine=Inno
insert into t1 (val) values (1);
update t1 set a=2 where a=1;
insert into t1 (val) values (1);
-ERROR 23000: Duplicate entry '2' for key 1
+ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
select * from t1;
a val
2 1
@@ -2606,8 +2550,8 @@ character set = latin1 engine = innodb;
show create table t9;
Table Create Table
t9 CREATE TABLE `t9` (
- `col1` varchar(512) default NULL,
- `col2` varchar(512) default NULL,
+ `col1` varchar(512) DEFAULT NULL,
+ `col2` varchar(512) DEFAULT NULL,
KEY `col1` (`col1`,`col2`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1, t2, t3, t4, t5, t6, t7, t8, t9;
@@ -2630,7 +2574,7 @@ Warning 1071 Specified key was too long; max key length is 767 bytes
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `col1` varchar(768) default NULL,
+ `col1` varchar(768) DEFAULT NULL,
KEY `col1` (`col1`(767))
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1, t2, t3, t4;
@@ -2656,18 +2600,18 @@ v INT,
CONSTRAINT c1 FOREIGN KEY (v) REFERENCES t1(id)
) ENGINE=InnoDB;
INSERT INTO t2 VALUES(2);
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c1` FOREIGN KEY (`v`) REFERENCES `t1` (`id`))
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c1` FOREIGN KEY (`v`) REFERENCES `t1` (`id`))
INSERT INTO t1 VALUES(1);
INSERT INTO t2 VALUES(1);
DELETE FROM t1 WHERE id = 1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c1` FOREIGN KEY (`v`) REFERENCES `t1` (`id`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c1` FOREIGN KEY (`v`) REFERENCES `t1` (`id`))
DROP TABLE t1;
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
SET FOREIGN_KEY_CHECKS=0;
DROP TABLE t1;
SET FOREIGN_KEY_CHECKS=1;
INSERT INTO t2 VALUES(3);
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c1` FOREIGN KEY (`v`) REFERENCES `t1` (`id`))
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c1` FOREIGN KEY (`v`) REFERENCES `t1` (`id`))
DROP TABLE t2;
create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1;
insert into t1 values (1),(2);
@@ -2700,13 +2644,13 @@ drop table t1;
set foreign_key_checks=0;
create table t2 (a int primary key, b int, foreign key (b) references t1(a)) engine = innodb;
create table t1(a char(10) primary key, b varchar(20)) engine = innodb;
-ERROR HY000: Can't create table './test/t1.frm' (errno: 150)
+ERROR HY000: Can't create table 'test.t1' (errno: 150)
set foreign_key_checks=1;
drop table t2;
set foreign_key_checks=0;
create table t1(a varchar(10) primary key) engine = innodb DEFAULT CHARSET=latin1;
create table t2 (a varchar(10), foreign key (a) references t1(a)) engine = innodb DEFAULT CHARSET=utf8;
-ERROR HY000: Can't create table './test/t2.frm' (errno: 150)
+ERROR HY000: Can't create table 'test.t2' (errno: 150)
set foreign_key_checks=1;
drop table t1;
set foreign_key_checks=0;
@@ -2736,23 +2680,23 @@ create table t4(a int primary key,constraint foreign key(a)references t3(a)) row
insert into t1 values(1);
insert into t3 values(1);
insert into t2 values(2);
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
insert into t4 values(2);
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
insert into t2 values(1);
insert into t4 values(1);
update t1 set a=2;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
update t2 set a=2;
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
update t3 set a=2;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
update t4 set a=2;
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
truncate t1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t1` (`a`))
truncate t3;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`a`) REFERENCES `t3` (`a`))
truncate t2;
truncate t4;
truncate t1;
@@ -2777,13 +2721,13 @@ create table t3 (s1 varchar(2) binary,primary key (s1)) engine=innodb;
create table t4 (s1 char(2) binary,primary key (s1)) engine=innodb;
insert into t1 values (0x41),(0x4120),(0x4100);
insert into t2 values (0x41),(0x4120),(0x4100);
-ERROR 23000: Duplicate entry 'A' for key 1
+ERROR 23000: Duplicate entry 'A' for key 'PRIMARY'
insert into t2 values (0x41),(0x4120);
insert into t3 values (0x41),(0x4120),(0x4100);
-ERROR 23000: Duplicate entry 'A ' for key 1
+ERROR 23000: Duplicate entry 'A ' for key 'PRIMARY'
insert into t3 values (0x41),(0x4100);
insert into t4 values (0x41),(0x4120),(0x4100);
-ERROR 23000: Duplicate entry 'A' for key 1
+ERROR 23000: Duplicate entry 'A' for key 'PRIMARY'
insert into t4 values (0x41),(0x4100);
select hex(s1) from t1;
hex(s1)
@@ -2807,7 +2751,7 @@ create table t1 (a int primary key,s1 varbinary(3) not null unique) engine=innod
create table t2 (s1 binary(2) not null, constraint c foreign key(s1) references t1(s1) on update cascade) engine=innodb;
insert into t1 values(1,0x4100),(2,0x41),(3,0x4120),(4,0x42);
insert into t2 values(0x42);
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
insert into t2 values(0x41);
select hex(s1) from t2;
hex(s1)
@@ -2817,11 +2761,11 @@ select hex(s1) from t2;
hex(s1)
4100
update t1 set s1=0x12 where a=1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
update t1 set s1=0x12345678 where a=1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
update t1 set s1=0x123457 where a=1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
update t1 set s1=0x1220 where a=1;
select hex(s1) from t2;
hex(s1)
@@ -2835,11 +2779,11 @@ select hex(s1) from t2;
hex(s1)
4200
delete from t1 where a=1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
delete from t1 where a=2;
update t2 set s1=0x4120;
delete from t1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
delete from t1 where a!=3;
select a,hex(s1) from t1;
a hex(s1)
@@ -2865,7 +2809,7 @@ hex(s1)
12
delete from t1 where a=1;
delete from t1 where a=2;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `c` FOREIGN KEY (`s1`) REFERENCES `t1` (`s1`) ON UPDATE CASCADE)
select a,hex(s1) from t1;
a hex(s1)
2 12
@@ -2882,7 +2826,7 @@ ALTER TABLE t2 DROP FOREIGN KEY t2_ibfk_0;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` int(11) default NULL,
+ `a` int(11) DEFAULT NULL,
KEY `t2_ibfk_0` (`a`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
DROP TABLE t2,t1;
@@ -2944,6 +2888,55 @@ drop trigger t2t;
drop trigger t3t;
drop trigger t4t;
drop table t1, t2, t3, t4, t5;
+CREATE TABLE t1 (
+field1 varchar(8) NOT NULL DEFAULT '',
+field2 varchar(8) NOT NULL DEFAULT '',
+PRIMARY KEY (field1, field2)
+) ENGINE=InnoDB;
+CREATE TABLE t2 (
+field1 varchar(8) NOT NULL DEFAULT '' PRIMARY KEY,
+FOREIGN KEY (field1) REFERENCES t1 (field1)
+ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB;
+INSERT INTO t1 VALUES ('old', 'somevalu');
+INSERT INTO t1 VALUES ('other', 'anyvalue');
+INSERT INTO t2 VALUES ('old');
+INSERT INTO t2 VALUES ('other');
+UPDATE t1 SET field1 = 'other' WHERE field2 = 'somevalu';
+ERROR 23000: Upholding foreign key constraints for table 't1', entry 'other-somevalu', key 1 would lead to a duplicate entry
+DROP TABLE t2;
+DROP TABLE t1;
+create table t1 (
+c1 bigint not null,
+c2 bigint not null,
+primary key (c1),
+unique key (c2)
+) engine=innodb;
+create table t2 (
+c1 bigint not null,
+primary key (c1)
+) engine=innodb;
+alter table t1 add constraint c2_fk foreign key (c2)
+references t2(c1) on delete cascade;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` bigint(20) NOT NULL,
+ `c2` bigint(20) NOT NULL,
+ PRIMARY KEY (`c1`),
+ UNIQUE KEY `c2` (`c2`),
+ CONSTRAINT `c2_fk` FOREIGN KEY (`c2`) REFERENCES `t2` (`c1`) ON DELETE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+alter table t1 drop foreign key c2_fk;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` bigint(20) NOT NULL,
+ `c2` bigint(20) NOT NULL,
+ PRIMARY KEY (`c1`),
+ UNIQUE KEY `c2` (`c2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+drop table t1, t2;
create table t1(a date) engine=innodb;
create table t2(a date, key(a)) engine=innodb;
insert into t1 values('2005-10-01');
@@ -2953,8 +2946,147 @@ where t2.a between t1.a - interval 2 day and t1.a + interval 2 day;
a a
2005-10-01 2005-10-01
drop table t1, t2;
+create table t1 (id int not null, f_id int not null, f int not null,
+primary key(f_id, id)) engine=innodb;
+create table t2 (id int not null,s_id int not null,s varchar(200),
+primary key(id)) engine=innodb;
+INSERT INTO t1 VALUES (8, 1, 3);
+INSERT INTO t1 VALUES (1, 2, 1);
+INSERT INTO t2 VALUES (1, 0, '');
+INSERT INTO t2 VALUES (8, 1, '');
+commit;
+DELETE ml.* FROM t1 AS ml LEFT JOIN t2 AS mm ON (mm.id=ml.id)
+WHERE mm.id IS NULL;
+select ml.* from t1 as ml left join t2 as mm on (mm.id=ml.id)
+where mm.id is null lock in share mode;
+id f_id f
+drop table t1,t2;
+create table t1(a int not null, b int, primary key(a)) engine=innodb;
+insert into t1 values(1,1),(2,2),(3,1),(4,2),(5,1),(6,2),(7,3);
+commit;
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+update t1 set b = 5 where b = 1;
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+select * from t1 where a = 7 and b = 3 for update;
+a b
+7 3
+commit;
+commit;
+drop table t1;
+create table t1(a int not null, b int, primary key(a)) engine=innodb;
+insert into t1 values(1,1),(2,2),(3,1),(4,2),(5,1),(6,2);
+commit;
+set autocommit = 0;
+select * from t1 lock in share mode;
+a b
+1 1
+2 2
+3 1
+4 2
+5 1
+6 2
+update t1 set b = 5 where b = 1;
+set autocommit = 0;
+select * from t1 where a = 2 and b = 2 for update;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+commit;
+drop table t1;
+create table t1(a int not null, b int, primary key(a)) engine=innodb;
+insert into t1 values (1,2),(5,3),(4,2);
+create table t2(d int not null, e int, primary key(d)) engine=innodb;
+insert into t2 values (8,6),(12,1),(3,1);
+commit;
+set autocommit = 0;
+select * from t2 for update;
+d e
+3 1
+8 6
+12 1
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+insert into t1 select * from t2;
+update t1 set b = (select e from t2 where a = d);
+create table t3(d int not null, e int, primary key(d)) engine=innodb
+select * from t2;
+commit;
+commit;
+drop table t1, t2, t3;
+create table t1(a int not null, b int, primary key(a)) engine=innodb;
+insert into t1 values (1,2),(5,3),(4,2);
+create table t2(a int not null, b int, primary key(a)) engine=innodb;
+insert into t2 values (8,6),(12,1),(3,1);
+create table t3(d int not null, b int, primary key(d)) engine=innodb;
+insert into t3 values (8,6),(12,1),(3,1);
+create table t5(a int not null, b int, primary key(a)) engine=innodb;
+insert into t5 values (1,2),(5,3),(4,2);
+create table t6(d int not null, e int, primary key(d)) engine=innodb;
+insert into t6 values (8,6),(12,1),(3,1);
+create table t8(a int not null, b int, primary key(a)) engine=innodb;
+insert into t8 values (1,2),(5,3),(4,2);
+create table t9(d int not null, e int, primary key(d)) engine=innodb;
+insert into t9 values (8,6),(12,1),(3,1);
+commit;
+set autocommit = 0;
+select * from t2 for update;
+a b
+3 1
+8 6
+12 1
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+insert into t1 select * from t2;
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+update t3 set b = (select b from t2 where a = d);
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+create table t4(a int not null, b int, primary key(a)) engine=innodb select * from t2;
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+insert into t5 (select * from t2 lock in share mode);
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+update t6 set e = (select b from t2 where a = d lock in share mode);
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+create table t7(a int not null, b int, primary key(a)) engine=innodb select * from t2 lock in share mode;
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+insert into t8 (select * from t2 for update);
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+update t9 set e = (select b from t2 where a = d for update);
+SET binlog_format='MIXED';
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+create table t10(a int not null, b int, primary key(a)) engine=innodb select * from t2 for update;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+drop table t1, t2, t3, t5, t6, t8, t9;
CREATE TABLE t1 (DB_ROW_ID int) engine=innodb;
-ERROR HY000: Can't create table './test/t1.frm' (errno: -1)
+ERROR HY000: Can't create table 'test.t1' (errno: -1)
CREATE TABLE t1 (
a BIGINT(20) NOT NULL,
PRIMARY KEY (a)
@@ -2990,8 +3122,31 @@ SELECT p0.a FROM t2 p0 WHERE BINARY p0.b = 'customer_over';
a
1
drop table t2, t1;
-create table t1 (g geometry not null, spatial gk(g)) engine=innodb;
-ERROR HY000: The used table type doesn't support SPATIAL indexes
+CREATE TABLE t1 ( a int ) ENGINE=innodb;
+BEGIN;
+INSERT INTO t1 VALUES (1);
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
+test.t1 optimize status OK
+DROP TABLE t1;
+CREATE TABLE t1 (id int PRIMARY KEY, f int NOT NULL, INDEX(f)) ENGINE=InnoDB;
+CREATE TABLE t2 (id int PRIMARY KEY, f INT NOT NULL,
+CONSTRAINT t2_t1 FOREIGN KEY (id) REFERENCES t1 (id)
+ON DELETE CASCADE ON UPDATE CASCADE) ENGINE=InnoDB;
+ALTER TABLE t2 ADD FOREIGN KEY (f) REFERENCES t1 (f) ON
+DELETE CASCADE ON UPDATE CASCADE;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `id` int(11) NOT NULL,
+ `f` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `f` (`f`),
+ CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`f`) REFERENCES `t1` (`f`) ON DELETE CASCADE ON UPDATE CASCADE,
+ CONSTRAINT `t2_t1` FOREIGN KEY (`id`) REFERENCES `t1` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TABLE t2, t1;
CREATE TABLE t1 (a INT, INDEX(a)) ENGINE=InnoDB;
CREATE TABLE t2 (a INT, INDEX(a)) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1);
@@ -3021,8 +3176,8 @@ id
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `id` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`id`)
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=349 DEFAULT CHARSET=latin1
CREATE TABLE t2 (id int PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t2 VALUES(42),(347),(348);
@@ -3030,8 +3185,123 @@ ALTER TABLE t1 ADD CONSTRAINT t1_t2 FOREIGN KEY (id) REFERENCES t2(id);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `id` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`id`),
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`id`),
CONSTRAINT `t1_t2` FOREIGN KEY (`id`) REFERENCES `t2` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=349 DEFAULT CHARSET=latin1
DROP TABLE t1,t2;
+CREATE TABLE t1 (
+c01 CHAR(255), c02 CHAR(255), c03 CHAR(255), c04 CHAR(255),
+c05 CHAR(255), c06 CHAR(255), c07 CHAR(255), c08 CHAR(255),
+c09 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255)
+) ENGINE = InnoDB;
+ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1(
+id BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY
+) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(-10);
+SELECT * FROM t1;
+id
+-10
+INSERT INTO t1 VALUES(NULL);
+SELECT * FROM t1;
+id
+-10
+1
+DROP TABLE t1;
+SET binlog_format='MIXED';
+SET TX_ISOLATION='read-committed';
+SET AUTOCOMMIT=0;
+DROP TABLE IF EXISTS t1, t2;
+Warnings:
+Note 1051 Unknown table 't1'
+Note 1051 Unknown table 't2'
+CREATE TABLE t1 ( a int ) ENGINE=InnoDB;
+CREATE TABLE t2 LIKE t1;
+SELECT * FROM t2;
+a
+SET binlog_format='MIXED';
+SET TX_ISOLATION='read-committed';
+SET AUTOCOMMIT=0;
+INSERT INTO t1 VALUES (1);
+COMMIT;
+SELECT * FROM t1 WHERE a=1;
+a
+1
+SET binlog_format='MIXED';
+SET TX_ISOLATION='read-committed';
+SET AUTOCOMMIT=0;
+SELECT * FROM t2;
+a
+SET binlog_format='MIXED';
+SET TX_ISOLATION='read-committed';
+SET AUTOCOMMIT=0;
+INSERT INTO t1 VALUES (2);
+COMMIT;
+SELECT * FROM t1 WHERE a=2;
+a
+2
+SELECT * FROM t1 WHERE a=2;
+a
+2
+DROP TABLE t1;
+DROP TABLE t2;
+create table t1 (i int, j int) engine=innodb;
+insert into t1 (i, j) values (1, 1), (2, 2);
+update t1 set j = 2;
+affected rows: 1
+info: Rows matched: 2 Changed: 1 Warnings: 0
+drop table t1;
+create table t1 (id int) comment='this is a comment' engine=innodb;
+select table_comment, data_free > 0 as data_free_is_set
+from information_schema.tables
+where table_schema='test' and table_name = 't1';
+table_comment data_free_is_set
+this is a comment 1
+drop table t1;
+CREATE TABLE t1 (
+c1 INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
+c2 VARCHAR(128) NOT NULL,
+PRIMARY KEY(c1)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=100;
+CREATE TABLE t2 (
+c1 INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
+c2 INT(10) UNSIGNED DEFAULT NULL,
+PRIMARY KEY(c1)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=200;
+SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE table_name = 't2';
+AUTO_INCREMENT
+200
+ALTER TABLE t2 ADD CONSTRAINT t1_t2_1 FOREIGN KEY(c1) REFERENCES t1(c1);
+SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE table_name = 't2';
+AUTO_INCREMENT
+200
+DROP TABLE t2;
+DROP TABLE t1;
+CREATE TABLE t1 (c1 int default NULL,
+c2 int default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+TRUNCATE TABLE t1;
+affected rows: 0
+INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
+affected rows: 5
+info: Records: 5 Duplicates: 0 Warnings: 0
+TRUNCATE TABLE t1;
+affected rows: 0
+DROP TABLE t1;
+Variable_name Value
+Handler_update 0
+Variable_name Value
+Handler_delete 0
+Variable_name Value
+Handler_update 1
+Variable_name Value
+Handler_delete 1
diff --git a/mysql-test/r/innodb_autoinc_lock_mode_zero.result b/mysql-test/r/innodb_autoinc_lock_mode_zero.result
new file mode 100644
index 00000000000..3d016684338
--- /dev/null
+++ b/mysql-test/r/innodb_autoinc_lock_mode_zero.result
@@ -0,0 +1,39 @@
+drop table if exists t1;
+CREATE TABLE t1 (
+id int(11) NOT NULL auto_increment,
+ggid varchar(32) binary DEFAULT '' NOT NULL,
+email varchar(64) DEFAULT '' NOT NULL,
+passwd varchar(32) binary DEFAULT '' NOT NULL,
+PRIMARY KEY (id),
+UNIQUE ggid (ggid)
+) ENGINE=innodb;
+insert into t1 (ggid,passwd) values ('test1','xxx');
+insert into t1 (ggid,passwd) values ('test2','yyy');
+insert into t1 (ggid,passwd) values ('test2','this will fail');
+ERROR 23000: Duplicate entry 'test2' for key 'ggid'
+insert into t1 (ggid,id) values ('this will fail',1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+select * from t1 where ggid='test1';
+id ggid email passwd
+1 test1 xxx
+select * from t1 where passwd='xxx';
+id ggid email passwd
+1 test1 xxx
+select * from t1 where id=2;
+id ggid email passwd
+2 test2 yyy
+replace into t1 (ggid,id) values ('this will work',1);
+replace into t1 (ggid,passwd) values ('test2','this will work');
+update t1 set id=100,ggid='test2' where id=1;
+ERROR 23000: Duplicate entry 'test2' for key 'ggid'
+select * from t1;
+id ggid email passwd
+1 this will work
+3 test2 this will work
+select * from t1 where id=1;
+id ggid email passwd
+1 this will work
+select * from t1 where id=999;
+id ggid email passwd
+drop table t1;
+End of tests
diff --git a/mysql-test/r/innodb_bug21704.result b/mysql-test/r/innodb_bug21704.result
new file mode 100644
index 00000000000..b8e0b15d50d
--- /dev/null
+++ b/mysql-test/r/innodb_bug21704.result
@@ -0,0 +1,55 @@
+#
+# Bug#21704: Renaming column does not update FK definition.
+#
+
+# Test that it's not possible to rename columns participating in a
+# foreign key (either in the referencing or referenced table).
+
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t1 (a INT PRIMARY KEY, b INT) ROW_FORMAT=COMPACT ENGINE=INNODB;
+CREATE TABLE t2 (a INT PRIMARY KEY, b INT,
+CONSTRAINT fk1 FOREIGN KEY (a) REFERENCES t1(a))
+ROW_FORMAT=COMPACT ENGINE=INNODB;
+CREATE TABLE t3 (a INT PRIMARY KEY, b INT, KEY(b), C INT,
+CONSTRAINT fk2 FOREIGN KEY (b) REFERENCES t3 (a))
+ROW_FORMAT=COMPACT ENGINE=INNODB;
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3);
+INSERT INTO t2 VALUES (1,1),(2,2),(3,3);
+INSERT INTO t3 VALUES (1,1,1),(2,2,2),(3,3,3);
+
+# Test renaming the column in the referenced table.
+
+ALTER TABLE t1 CHANGE a c INT;
+ERROR HY000: Error on rename of '#sql-temporary' to './test/t1' (errno: 150)
+# Ensure that online column rename works.
+ALTER TABLE t1 CHANGE b c INT;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+
+# Test renaming the column in the referencing table
+
+ALTER TABLE t2 CHANGE a c INT;
+ERROR HY000: Error on rename of '#sql-temporary' to './test/t2' (errno: 150)
+# Ensure that online column rename works.
+ALTER TABLE t2 CHANGE b c INT;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+
+# Test with self-referential constraints
+
+ALTER TABLE t3 CHANGE a d INT;
+ERROR HY000: Error on rename of '#sql-temporary' to './test/t3' (errno: 150)
+ALTER TABLE t3 CHANGE b d INT;
+ERROR HY000: Error on rename of '#sql-temporary' to './test/t3' (errno: 150)
+# Ensure that online column rename works.
+ALTER TABLE t3 CHANGE c d INT;
+affected rows: 0
+info: Records: 0 Duplicates: 0 Warnings: 0
+
+# Cleanup.
+
+DROP TABLE t3;
+DROP TABLE t2;
+DROP TABLE t1;
diff --git a/mysql-test/r/innodb_bug30919.result b/mysql-test/r/innodb_bug30919.result
new file mode 100644
index 00000000000..42aa4ff302b
--- /dev/null
+++ b/mysql-test/r/innodb_bug30919.result
@@ -0,0 +1,1043 @@
+use test;
+CREATE TABLE test.part_tbl(id MEDIUMINT NOT NULL AUTO_INCREMENT,
+dt TIMESTAMP, user CHAR(255), uuidf LONGBLOB,
+fkid MEDIUMINT, filler VARCHAR(255),
+PRIMARY KEY(id)) ENGINE='innodb'
+PARTITION BY RANGE(id)
+SUBPARTITION BY hash(id) subpartitions 2
+(PARTITION pa3 values less than (42),
+PARTITION pa6 values less than (60),
+PARTITION pa7 values less than (70),
+PARTITION pa8 values less than (80),
+PARTITION pa9 values less than (90),
+PARTITION pa10 values less than (100),
+PARTITION pa11 values less than MAXVALUE);
+CREATE PROCEDURE test.proc_part()
+BEGIN
+DECLARE ins_count INT DEFAULT 1000;
+DECLARE del_count INT;
+DECLARE cur_user VARCHAR(255);
+DECLARE local_uuid VARCHAR(255);
+DECLARE local_time TIMESTAMP;
+SET local_time= NOW();
+SET cur_user= CURRENT_USER();
+SET local_uuid= UUID();
+WHILE ins_count > 0 DO
+INSERT INTO test.part_tbl VALUES (NULL, NOW(), USER() , UUID(),
+ins_count,'Going to test MBR for MySQL');
+SET ins_count = ins_count - 1;
+END WHILE;
+SELECT MAX(id) FROM test.part_tbl INTO del_count;
+WHILE del_count > 0 DO
+DELETE FROM test.part_tbl WHERE id = del_count;
+select count(*) as internal_count, del_count -- these two lines are for
+FROM test.part_tbl; -- debug to show the problem
+SET del_count = del_count - 2;
+END WHILE;
+END|
+CALL test.proc_part();
+internal_count del_count
+999 1000
+internal_count del_count
+998 998
+internal_count del_count
+997 996
+internal_count del_count
+996 994
+internal_count del_count
+995 992
+internal_count del_count
+994 990
+internal_count del_count
+993 988
+internal_count del_count
+992 986
+internal_count del_count
+991 984
+internal_count del_count
+990 982
+internal_count del_count
+989 980
+internal_count del_count
+988 978
+internal_count del_count
+987 976
+internal_count del_count
+986 974
+internal_count del_count
+985 972
+internal_count del_count
+984 970
+internal_count del_count
+983 968
+internal_count del_count
+982 966
+internal_count del_count
+981 964
+internal_count del_count
+980 962
+internal_count del_count
+979 960
+internal_count del_count
+978 958
+internal_count del_count
+977 956
+internal_count del_count
+976 954
+internal_count del_count
+975 952
+internal_count del_count
+974 950
+internal_count del_count
+973 948
+internal_count del_count
+972 946
+internal_count del_count
+971 944
+internal_count del_count
+970 942
+internal_count del_count
+969 940
+internal_count del_count
+968 938
+internal_count del_count
+967 936
+internal_count del_count
+966 934
+internal_count del_count
+965 932
+internal_count del_count
+964 930
+internal_count del_count
+963 928
+internal_count del_count
+962 926
+internal_count del_count
+961 924
+internal_count del_count
+960 922
+internal_count del_count
+959 920
+internal_count del_count
+958 918
+internal_count del_count
+957 916
+internal_count del_count
+956 914
+internal_count del_count
+955 912
+internal_count del_count
+954 910
+internal_count del_count
+953 908
+internal_count del_count
+952 906
+internal_count del_count
+951 904
+internal_count del_count
+950 902
+internal_count del_count
+949 900
+internal_count del_count
+948 898
+internal_count del_count
+947 896
+internal_count del_count
+946 894
+internal_count del_count
+945 892
+internal_count del_count
+944 890
+internal_count del_count
+943 888
+internal_count del_count
+942 886
+internal_count del_count
+941 884
+internal_count del_count
+940 882
+internal_count del_count
+939 880
+internal_count del_count
+938 878
+internal_count del_count
+937 876
+internal_count del_count
+936 874
+internal_count del_count
+935 872
+internal_count del_count
+934 870
+internal_count del_count
+933 868
+internal_count del_count
+932 866
+internal_count del_count
+931 864
+internal_count del_count
+930 862
+internal_count del_count
+929 860
+internal_count del_count
+928 858
+internal_count del_count
+927 856
+internal_count del_count
+926 854
+internal_count del_count
+925 852
+internal_count del_count
+924 850
+internal_count del_count
+923 848
+internal_count del_count
+922 846
+internal_count del_count
+921 844
+internal_count del_count
+920 842
+internal_count del_count
+919 840
+internal_count del_count
+918 838
+internal_count del_count
+917 836
+internal_count del_count
+916 834
+internal_count del_count
+915 832
+internal_count del_count
+914 830
+internal_count del_count
+913 828
+internal_count del_count
+912 826
+internal_count del_count
+911 824
+internal_count del_count
+910 822
+internal_count del_count
+909 820
+internal_count del_count
+908 818
+internal_count del_count
+907 816
+internal_count del_count
+906 814
+internal_count del_count
+905 812
+internal_count del_count
+904 810
+internal_count del_count
+903 808
+internal_count del_count
+902 806
+internal_count del_count
+901 804
+internal_count del_count
+900 802
+internal_count del_count
+899 800
+internal_count del_count
+898 798
+internal_count del_count
+897 796
+internal_count del_count
+896 794
+internal_count del_count
+895 792
+internal_count del_count
+894 790
+internal_count del_count
+893 788
+internal_count del_count
+892 786
+internal_count del_count
+891 784
+internal_count del_count
+890 782
+internal_count del_count
+889 780
+internal_count del_count
+888 778
+internal_count del_count
+887 776
+internal_count del_count
+886 774
+internal_count del_count
+885 772
+internal_count del_count
+884 770
+internal_count del_count
+883 768
+internal_count del_count
+882 766
+internal_count del_count
+881 764
+internal_count del_count
+880 762
+internal_count del_count
+879 760
+internal_count del_count
+878 758
+internal_count del_count
+877 756
+internal_count del_count
+876 754
+internal_count del_count
+875 752
+internal_count del_count
+874 750
+internal_count del_count
+873 748
+internal_count del_count
+872 746
+internal_count del_count
+871 744
+internal_count del_count
+870 742
+internal_count del_count
+869 740
+internal_count del_count
+868 738
+internal_count del_count
+867 736
+internal_count del_count
+866 734
+internal_count del_count
+865 732
+internal_count del_count
+864 730
+internal_count del_count
+863 728
+internal_count del_count
+862 726
+internal_count del_count
+861 724
+internal_count del_count
+860 722
+internal_count del_count
+859 720
+internal_count del_count
+858 718
+internal_count del_count
+857 716
+internal_count del_count
+856 714
+internal_count del_count
+855 712
+internal_count del_count
+854 710
+internal_count del_count
+853 708
+internal_count del_count
+852 706
+internal_count del_count
+851 704
+internal_count del_count
+850 702
+internal_count del_count
+849 700
+internal_count del_count
+848 698
+internal_count del_count
+847 696
+internal_count del_count
+846 694
+internal_count del_count
+845 692
+internal_count del_count
+844 690
+internal_count del_count
+843 688
+internal_count del_count
+842 686
+internal_count del_count
+841 684
+internal_count del_count
+840 682
+internal_count del_count
+839 680
+internal_count del_count
+838 678
+internal_count del_count
+837 676
+internal_count del_count
+836 674
+internal_count del_count
+835 672
+internal_count del_count
+834 670
+internal_count del_count
+833 668
+internal_count del_count
+832 666
+internal_count del_count
+831 664
+internal_count del_count
+830 662
+internal_count del_count
+829 660
+internal_count del_count
+828 658
+internal_count del_count
+827 656
+internal_count del_count
+826 654
+internal_count del_count
+825 652
+internal_count del_count
+824 650
+internal_count del_count
+823 648
+internal_count del_count
+822 646
+internal_count del_count
+821 644
+internal_count del_count
+820 642
+internal_count del_count
+819 640
+internal_count del_count
+818 638
+internal_count del_count
+817 636
+internal_count del_count
+816 634
+internal_count del_count
+815 632
+internal_count del_count
+814 630
+internal_count del_count
+813 628
+internal_count del_count
+812 626
+internal_count del_count
+811 624
+internal_count del_count
+810 622
+internal_count del_count
+809 620
+internal_count del_count
+808 618
+internal_count del_count
+807 616
+internal_count del_count
+806 614
+internal_count del_count
+805 612
+internal_count del_count
+804 610
+internal_count del_count
+803 608
+internal_count del_count
+802 606
+internal_count del_count
+801 604
+internal_count del_count
+800 602
+internal_count del_count
+799 600
+internal_count del_count
+798 598
+internal_count del_count
+797 596
+internal_count del_count
+796 594
+internal_count del_count
+795 592
+internal_count del_count
+794 590
+internal_count del_count
+793 588
+internal_count del_count
+792 586
+internal_count del_count
+791 584
+internal_count del_count
+790 582
+internal_count del_count
+789 580
+internal_count del_count
+788 578
+internal_count del_count
+787 576
+internal_count del_count
+786 574
+internal_count del_count
+785 572
+internal_count del_count
+784 570
+internal_count del_count
+783 568
+internal_count del_count
+782 566
+internal_count del_count
+781 564
+internal_count del_count
+780 562
+internal_count del_count
+779 560
+internal_count del_count
+778 558
+internal_count del_count
+777 556
+internal_count del_count
+776 554
+internal_count del_count
+775 552
+internal_count del_count
+774 550
+internal_count del_count
+773 548
+internal_count del_count
+772 546
+internal_count del_count
+771 544
+internal_count del_count
+770 542
+internal_count del_count
+769 540
+internal_count del_count
+768 538
+internal_count del_count
+767 536
+internal_count del_count
+766 534
+internal_count del_count
+765 532
+internal_count del_count
+764 530
+internal_count del_count
+763 528
+internal_count del_count
+762 526
+internal_count del_count
+761 524
+internal_count del_count
+760 522
+internal_count del_count
+759 520
+internal_count del_count
+758 518
+internal_count del_count
+757 516
+internal_count del_count
+756 514
+internal_count del_count
+755 512
+internal_count del_count
+754 510
+internal_count del_count
+753 508
+internal_count del_count
+752 506
+internal_count del_count
+751 504
+internal_count del_count
+750 502
+internal_count del_count
+749 500
+internal_count del_count
+748 498
+internal_count del_count
+747 496
+internal_count del_count
+746 494
+internal_count del_count
+745 492
+internal_count del_count
+744 490
+internal_count del_count
+743 488
+internal_count del_count
+742 486
+internal_count del_count
+741 484
+internal_count del_count
+740 482
+internal_count del_count
+739 480
+internal_count del_count
+738 478
+internal_count del_count
+737 476
+internal_count del_count
+736 474
+internal_count del_count
+735 472
+internal_count del_count
+734 470
+internal_count del_count
+733 468
+internal_count del_count
+732 466
+internal_count del_count
+731 464
+internal_count del_count
+730 462
+internal_count del_count
+729 460
+internal_count del_count
+728 458
+internal_count del_count
+727 456
+internal_count del_count
+726 454
+internal_count del_count
+725 452
+internal_count del_count
+724 450
+internal_count del_count
+723 448
+internal_count del_count
+722 446
+internal_count del_count
+721 444
+internal_count del_count
+720 442
+internal_count del_count
+719 440
+internal_count del_count
+718 438
+internal_count del_count
+717 436
+internal_count del_count
+716 434
+internal_count del_count
+715 432
+internal_count del_count
+714 430
+internal_count del_count
+713 428
+internal_count del_count
+712 426
+internal_count del_count
+711 424
+internal_count del_count
+710 422
+internal_count del_count
+709 420
+internal_count del_count
+708 418
+internal_count del_count
+707 416
+internal_count del_count
+706 414
+internal_count del_count
+705 412
+internal_count del_count
+704 410
+internal_count del_count
+703 408
+internal_count del_count
+702 406
+internal_count del_count
+701 404
+internal_count del_count
+700 402
+internal_count del_count
+699 400
+internal_count del_count
+698 398
+internal_count del_count
+697 396
+internal_count del_count
+696 394
+internal_count del_count
+695 392
+internal_count del_count
+694 390
+internal_count del_count
+693 388
+internal_count del_count
+692 386
+internal_count del_count
+691 384
+internal_count del_count
+690 382
+internal_count del_count
+689 380
+internal_count del_count
+688 378
+internal_count del_count
+687 376
+internal_count del_count
+686 374
+internal_count del_count
+685 372
+internal_count del_count
+684 370
+internal_count del_count
+683 368
+internal_count del_count
+682 366
+internal_count del_count
+681 364
+internal_count del_count
+680 362
+internal_count del_count
+679 360
+internal_count del_count
+678 358
+internal_count del_count
+677 356
+internal_count del_count
+676 354
+internal_count del_count
+675 352
+internal_count del_count
+674 350
+internal_count del_count
+673 348
+internal_count del_count
+672 346
+internal_count del_count
+671 344
+internal_count del_count
+670 342
+internal_count del_count
+669 340
+internal_count del_count
+668 338
+internal_count del_count
+667 336
+internal_count del_count
+666 334
+internal_count del_count
+665 332
+internal_count del_count
+664 330
+internal_count del_count
+663 328
+internal_count del_count
+662 326
+internal_count del_count
+661 324
+internal_count del_count
+660 322
+internal_count del_count
+659 320
+internal_count del_count
+658 318
+internal_count del_count
+657 316
+internal_count del_count
+656 314
+internal_count del_count
+655 312
+internal_count del_count
+654 310
+internal_count del_count
+653 308
+internal_count del_count
+652 306
+internal_count del_count
+651 304
+internal_count del_count
+650 302
+internal_count del_count
+649 300
+internal_count del_count
+648 298
+internal_count del_count
+647 296
+internal_count del_count
+646 294
+internal_count del_count
+645 292
+internal_count del_count
+644 290
+internal_count del_count
+643 288
+internal_count del_count
+642 286
+internal_count del_count
+641 284
+internal_count del_count
+640 282
+internal_count del_count
+639 280
+internal_count del_count
+638 278
+internal_count del_count
+637 276
+internal_count del_count
+636 274
+internal_count del_count
+635 272
+internal_count del_count
+634 270
+internal_count del_count
+633 268
+internal_count del_count
+632 266
+internal_count del_count
+631 264
+internal_count del_count
+630 262
+internal_count del_count
+629 260
+internal_count del_count
+628 258
+internal_count del_count
+627 256
+internal_count del_count
+626 254
+internal_count del_count
+625 252
+internal_count del_count
+624 250
+internal_count del_count
+623 248
+internal_count del_count
+622 246
+internal_count del_count
+621 244
+internal_count del_count
+620 242
+internal_count del_count
+619 240
+internal_count del_count
+618 238
+internal_count del_count
+617 236
+internal_count del_count
+616 234
+internal_count del_count
+615 232
+internal_count del_count
+614 230
+internal_count del_count
+613 228
+internal_count del_count
+612 226
+internal_count del_count
+611 224
+internal_count del_count
+610 222
+internal_count del_count
+609 220
+internal_count del_count
+608 218
+internal_count del_count
+607 216
+internal_count del_count
+606 214
+internal_count del_count
+605 212
+internal_count del_count
+604 210
+internal_count del_count
+603 208
+internal_count del_count
+602 206
+internal_count del_count
+601 204
+internal_count del_count
+600 202
+internal_count del_count
+599 200
+internal_count del_count
+598 198
+internal_count del_count
+597 196
+internal_count del_count
+596 194
+internal_count del_count
+595 192
+internal_count del_count
+594 190
+internal_count del_count
+593 188
+internal_count del_count
+592 186
+internal_count del_count
+591 184
+internal_count del_count
+590 182
+internal_count del_count
+589 180
+internal_count del_count
+588 178
+internal_count del_count
+587 176
+internal_count del_count
+586 174
+internal_count del_count
+585 172
+internal_count del_count
+584 170
+internal_count del_count
+583 168
+internal_count del_count
+582 166
+internal_count del_count
+581 164
+internal_count del_count
+580 162
+internal_count del_count
+579 160
+internal_count del_count
+578 158
+internal_count del_count
+577 156
+internal_count del_count
+576 154
+internal_count del_count
+575 152
+internal_count del_count
+574 150
+internal_count del_count
+573 148
+internal_count del_count
+572 146
+internal_count del_count
+571 144
+internal_count del_count
+570 142
+internal_count del_count
+569 140
+internal_count del_count
+568 138
+internal_count del_count
+567 136
+internal_count del_count
+566 134
+internal_count del_count
+565 132
+internal_count del_count
+564 130
+internal_count del_count
+563 128
+internal_count del_count
+562 126
+internal_count del_count
+561 124
+internal_count del_count
+560 122
+internal_count del_count
+559 120
+internal_count del_count
+558 118
+internal_count del_count
+557 116
+internal_count del_count
+556 114
+internal_count del_count
+555 112
+internal_count del_count
+554 110
+internal_count del_count
+553 108
+internal_count del_count
+552 106
+internal_count del_count
+551 104
+internal_count del_count
+550 102
+internal_count del_count
+549 100
+internal_count del_count
+548 98
+internal_count del_count
+547 96
+internal_count del_count
+546 94
+internal_count del_count
+545 92
+internal_count del_count
+544 90
+internal_count del_count
+543 88
+internal_count del_count
+542 86
+internal_count del_count
+541 84
+internal_count del_count
+540 82
+internal_count del_count
+539 80
+internal_count del_count
+538 78
+internal_count del_count
+537 76
+internal_count del_count
+536 74
+internal_count del_count
+535 72
+internal_count del_count
+534 70
+internal_count del_count
+533 68
+internal_count del_count
+532 66
+internal_count del_count
+531 64
+internal_count del_count
+530 62
+internal_count del_count
+529 60
+internal_count del_count
+528 58
+internal_count del_count
+527 56
+internal_count del_count
+526 54
+internal_count del_count
+525 52
+internal_count del_count
+524 50
+internal_count del_count
+523 48
+internal_count del_count
+522 46
+internal_count del_count
+521 44
+internal_count del_count
+520 42
+internal_count del_count
+519 40
+internal_count del_count
+518 38
+internal_count del_count
+517 36
+internal_count del_count
+516 34
+internal_count del_count
+515 32
+internal_count del_count
+514 30
+internal_count del_count
+513 28
+internal_count del_count
+512 26
+internal_count del_count
+511 24
+internal_count del_count
+510 22
+internal_count del_count
+509 20
+internal_count del_count
+508 18
+internal_count del_count
+507 16
+internal_count del_count
+506 14
+internal_count del_count
+505 12
+internal_count del_count
+504 10
+internal_count del_count
+503 8
+internal_count del_count
+502 6
+internal_count del_count
+501 4
+internal_count del_count
+500 2
+select count(*) as Part from test.part_tbl;
+Part
+500
+DROP PROCEDURE test.proc_part;
+DROP TABLE test.part_tbl;
diff --git a/mysql-test/r/innodb_bug34053.result b/mysql-test/r/innodb_bug34053.result
new file mode 100644
index 00000000000..195775f74c8
--- /dev/null
+++ b/mysql-test/r/innodb_bug34053.result
@@ -0,0 +1 @@
+SET storage_engine=InnoDB;
diff --git a/mysql-test/r/innodb_bug34300.result b/mysql-test/r/innodb_bug34300.result
new file mode 100644
index 00000000000..03ae355de7b
--- /dev/null
+++ b/mysql-test/r/innodb_bug34300.result
@@ -0,0 +1,9 @@
+SELECT f4, f8 FROM bug34300;
+f4 f8
+xxx zzz
+ALTER TABLE bug34300 ADD COLUMN (f10 INT);
+SELECT f4, f8 FROM bug34300;
+f4 f8
+xxx zzz
+DROP TABLE bug34300;
+SET @@global.max_allowed_packet=default;
diff --git a/mysql-test/r/innodb_bug38231.result b/mysql-test/r/innodb_bug38231.result
new file mode 100644
index 00000000000..2f909779755
--- /dev/null
+++ b/mysql-test/r/innodb_bug38231.result
@@ -0,0 +1,11 @@
+SET storage_engine=InnoDB;
+INSERT INTO bug38231 VALUES (1), (10), (300);
+SET autocommit=0;
+SELECT * FROM bug38231 FOR UPDATE;
+a
+1
+10
+300
+TRUNCATE TABLE bug38231;
+COMMIT;
+DROP TABLE bug38231;
diff --git a/mysql-test/r/innodb_bug39438.result b/mysql-test/r/innodb_bug39438.result
new file mode 100644
index 00000000000..195775f74c8
--- /dev/null
+++ b/mysql-test/r/innodb_bug39438.result
@@ -0,0 +1 @@
+SET storage_engine=InnoDB;
diff --git a/mysql-test/r/innodb_bug42101-nonzero.result b/mysql-test/r/innodb_bug42101-nonzero.result
new file mode 100644
index 00000000000..277dfffdd35
--- /dev/null
+++ b/mysql-test/r/innodb_bug42101-nonzero.result
@@ -0,0 +1,26 @@
+set global innodb_commit_concurrency=0;
+ERROR HY000: Incorrect arguments to SET
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+1
+set global innodb_commit_concurrency=1;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+1
+set global innodb_commit_concurrency=42;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+42
+set global innodb_commit_concurrency=DEFAULT;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+1
+set global innodb_commit_concurrency=0;
+ERROR HY000: Incorrect arguments to SET
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+1
+set global innodb_commit_concurrency=1;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+1
diff --git a/mysql-test/r/innodb_bug42101.result b/mysql-test/r/innodb_bug42101.result
new file mode 100644
index 00000000000..805097ffe9d
--- /dev/null
+++ b/mysql-test/r/innodb_bug42101.result
@@ -0,0 +1,22 @@
+set global innodb_commit_concurrency=0;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+0
+set global innodb_commit_concurrency=1;
+ERROR HY000: Incorrect arguments to SET
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+0
+set global innodb_commit_concurrency=42;
+ERROR HY000: Incorrect arguments to SET
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+0
+set global innodb_commit_concurrency=0;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+0
+set global innodb_commit_concurrency=DEFAULT;
+select @@innodb_commit_concurrency;
+@@innodb_commit_concurrency
+0
diff --git a/mysql-test/r/innodb_bug44369.result b/mysql-test/r/innodb_bug44369.result
new file mode 100644
index 00000000000..e4b84ecac19
--- /dev/null
+++ b/mysql-test/r/innodb_bug44369.result
@@ -0,0 +1,14 @@
+create table bug44369 (DB_ROW_ID int) engine=innodb;
+ERROR HY000: Can't create table 'test.bug44369' (errno: -1)
+create table bug44369 (db_row_id int) engine=innodb;
+ERROR HY000: Can't create table 'test.bug44369' (errno: -1)
+show errors;
+Level Code Message
+Error 1005 Error creating table 'test/bug44369' with column name 'db_row_id'. 'db_row_id' is a reserved name. Please try to re-create the table with a different column name.
+Error 1005 Can't create table 'test.bug44369' (errno: -1)
+create table bug44369 (db_TRX_Id int) engine=innodb;
+ERROR HY000: Can't create table 'test.bug44369' (errno: -1)
+show errors;
+Level Code Message
+Error 1005 Error creating table 'test/bug44369' with column name 'db_TRX_Id'. 'db_TRX_Id' is a reserved name. Please try to re-create the table with a different column name.
+Error 1005 Can't create table 'test.bug44369' (errno: -1)
diff --git a/mysql-test/r/innodb_bug45357.result b/mysql-test/r/innodb_bug45357.result
new file mode 100644
index 00000000000..7adeff2062f
--- /dev/null
+++ b/mysql-test/r/innodb_bug45357.result
@@ -0,0 +1,7 @@
+set session transaction isolation level read committed;
+create table bug45357(a int, b int,key(b))engine=innodb;
+insert into bug45357 values (25170,6122);
+update bug45357 set a=1 where b=30131;
+delete from bug45357 where b < 20996;
+delete from bug45357 where b < 7001;
+drop table bug45357;
diff --git a/mysql-test/r/innodb_bug46000.result b/mysql-test/r/innodb_bug46000.result
new file mode 100644
index 00000000000..ccff888a48d
--- /dev/null
+++ b/mysql-test/r/innodb_bug46000.result
@@ -0,0 +1,17 @@
+create table bug46000(`id` int,key `GEN_CLUST_INDEX`(`id`))engine=innodb;
+ERROR HY000: Can't create table 'test.bug46000' (errno: -1)
+create table bug46000(`id` int, key `GEN_clust_INDEX`(`id`))engine=innodb;
+ERROR HY000: Can't create table 'test.bug46000' (errno: -1)
+show errors;
+Level Code Message
+Error 1005 Cannot Create Index with name 'GEN_CLUST_INDEX'. The name is reserved for the system default primary index.
+Error 1005 Can't create table 'test.bug46000' (errno: -1)
+create table bug46000(id int) engine=innodb;
+create index GEN_CLUST_INDEX on bug46000(id);
+ERROR HY000: Can't create table '#sql-temporary' (errno: -1)
+show errors;
+Level Code Message
+Error 1005 Cannot Create Index with name 'GEN_CLUST_INDEX'. The name is reserved for the system default primary index.
+Error 1005 Can't create table '#sql-temporary' (errno: -1)
+create index idx on bug46000(id);
+drop table bug46000;
diff --git a/mysql-test/r/innodb_gis.result b/mysql-test/r/innodb_gis.result
index 0f2607e9787..c6c775afc9f 100644
--- a/mysql-test/r/innodb_gis.result
+++ b/mysql-test/r/innodb_gis.result
@@ -1,50 +1,51 @@
SET storage_engine=innodb;
DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE gis_point (fid INTEGER, g POINT);
-CREATE TABLE gis_line (fid INTEGER, g LINESTRING);
-CREATE TABLE gis_polygon (fid INTEGER, g POLYGON);
-CREATE TABLE gis_multi_point (fid INTEGER, g MULTIPOINT);
-CREATE TABLE gis_multi_line (fid INTEGER, g MULTILINESTRING);
-CREATE TABLE gis_multi_polygon (fid INTEGER, g MULTIPOLYGON);
-CREATE TABLE gis_geometrycollection (fid INTEGER, g GEOMETRYCOLLECTION);
-CREATE TABLE gis_geometry (fid INTEGER, g GEOMETRY);
+CREATE TABLE gis_point (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g POINT);
+CREATE TABLE gis_line (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g LINESTRING);
+CREATE TABLE gis_polygon (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g POLYGON);
+CREATE TABLE gis_multi_point (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g MULTIPOINT);
+CREATE TABLE gis_multi_line (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g MULTILINESTRING);
+CREATE TABLE gis_multi_polygon (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g MULTIPOLYGON);
+CREATE TABLE gis_geometrycollection (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g GEOMETRYCOLLECTION);
+CREATE TABLE gis_geometry (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g GEOMETRY);
SHOW CREATE TABLE gis_point;
Table Create Table
gis_point CREATE TABLE `gis_point` (
- `fid` int(11) default NULL,
- `g` point default NULL
+ `fid` int(11) NOT NULL AUTO_INCREMENT,
+ `g` point DEFAULT NULL,
+ PRIMARY KEY (`fid`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SHOW FIELDS FROM gis_point;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g point YES NULL
SHOW FIELDS FROM gis_line;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g linestring YES NULL
SHOW FIELDS FROM gis_polygon;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g polygon YES NULL
SHOW FIELDS FROM gis_multi_point;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g multipoint YES NULL
SHOW FIELDS FROM gis_multi_line;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g multilinestring YES NULL
SHOW FIELDS FROM gis_multi_polygon;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g multipolygon YES NULL
SHOW FIELDS FROM gis_geometrycollection;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g geometrycollection YES NULL
SHOW FIELDS FROM gis_geometry;
Field Type Null Key Default Extra
-fid int(11) YES NULL
+fid int(11) NO PRI NULL auto_increment
g geometry YES NULL
INSERT INTO gis_point VALUES
(101, PointFromText('POINT(10 10)')),
@@ -232,8 +233,8 @@ fid AsText(Envelope(g))
120 POLYGON((0 0,10 0,10 10,0 10,0 0))
121 POLYGON((3 6,44 6,44 9,3 9,3 6))
explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelope(g)) from gis_geometry;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21 100.00
Warnings:
Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
SELECT fid, X(g) FROM gis_point ORDER by fid;
@@ -249,8 +250,8 @@ fid Y(g)
103 20
104 20
explain extended select X(g),Y(g) FROM gis_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_point ALL NULL NULL NULL NULL 4 100.00
Warnings:
Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
SELECT fid, AsText(StartPoint(g)) FROM gis_line ORDER by fid;
@@ -284,8 +285,8 @@ fid IsClosed(g)
106 1
107 0
explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),NumPoints(g),AsText(PointN(g, 2)),IsClosed(g) FROM gis_line;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_line ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
SELECT fid, AsText(Centroid(g)) FROM gis_polygon ORDER by fid;
@@ -314,8 +315,8 @@ fid AsText(InteriorRingN(g, 1))
109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
110 NULL
explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumInteriorRings(g),AsText(InteriorRingN(g, 1)) FROM gis_polygon;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
SELECT fid, IsClosed(g) FROM gis_multi_line ORDER by fid;
@@ -353,8 +354,8 @@ fid NumGeometries(g)
120 2
121 2
explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point ORDER by fid;
@@ -381,8 +382,8 @@ fid AsText(GeometryN(g, 1))
120 POINT(0 0)
121 POINT(44 6)
explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
SELECT g1.fid as first, g2.fid as second,
@@ -400,13 +401,14 @@ Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE g2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE g1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
+1 SIMPLE g2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
Warnings:
Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
CREATE TABLE t1 (
+a INTEGER PRIMARY KEY AUTO_INCREMENT,
gp point,
ln linestring,
pg polygon,
@@ -418,6 +420,7 @@ gm geometry
);
SHOW FIELDS FROM t1;
Field Type Null Key Default Extra
+a int(11) NO PRI NULL auto_increment
gp point YES NULL
ln linestring YES NULL
pg polygon YES NULL
@@ -429,6 +432,7 @@ gm geometry YES NULL
ALTER TABLE t1 ADD fid INT;
SHOW FIELDS FROM t1;
Field Type Null Key Default Extra
+a int(11) NO PRI NULL auto_increment
gp point YES NULL
ln linestring YES NULL
pg polygon YES NULL
@@ -439,21 +443,21 @@ gc geometrycollection YES NULL
gm geometry YES NULL
fid int(11) YES NULL
DROP TABLE t1;
-create table t1 (a geometry not null);
-insert into t1 values (GeomFromText('Point(1 2)'));
-insert into t1 values ('Garbage');
+create table t1 (pk integer primary key auto_increment, a geometry not null);
+insert into t1 (a) values (GeomFromText('Point(1 2)'));
+insert into t1 (a) values ('Garbage');
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert IGNORE into t1 values ('Garbage');
+insert IGNORE into t1 (a) values ('Garbage');
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
drop table t1;
-create table t1 (fl geometry not null);
-insert into t1 values (1);
+create table t1 (pk integer primary key auto_increment, fl geometry not null);
+insert into t1 (fl) values (1);
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (1.11);
+insert into t1 (fl) values (1.11);
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values ("qwerty");
+insert into t1 (fl) values ("qwerty");
ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (pointfromtext('point(1,1)'));
+insert into t1 (fl) values (pointfromtext('point(1,1)'));
ERROR 23000: Column 'fl' cannot be null
drop table t1;
End of 4.1 tests
@@ -581,3 +585,5 @@ COUNT(*)
2
DROP TABLE t1, t2;
End of 5.0 tests
+create table t1 (g geometry not null, spatial gk(g)) engine=innodb;
+ERROR HY000: The used table type doesn't support SPATIAL indexes
diff --git a/mysql-test/r/innodb_handler.result b/mysql-test/r/innodb_handler.result
deleted file mode 100644
index 7e853a55e37..00000000000
--- a/mysql-test/r/innodb_handler.result
+++ /dev/null
@@ -1,167 +0,0 @@
-drop table if exists t1,t2;
-create table t1 (a int, b char(10), key a(a), key b(a,b)) engine=innodb;
-insert into t1 values
-(17,"ddd"),(18,"eee"),(19,"fff"),(19,"yyy"),
-(14,"aaa"),(15,"bbb"),(16,"ccc"),(16,"xxx"),
-(20,"ggg"),(21,"hhh"),(22,"iii");
-handler t1 open as t2;
-handler t2 read a first;
-a b
-14 aaa
-handler t2 read a next;
-a b
-15 bbb
-handler t2 read a next;
-a b
-16 ccc
-handler t2 read a prev;
-a b
-15 bbb
-handler t2 read a last;
-a b
-22 iii
-handler t2 read a prev;
-a b
-21 hhh
-handler t2 read a prev;
-a b
-20 ggg
-handler t2 read a first;
-a b
-14 aaa
-handler t2 read a prev;
-a b
-handler t2 read a last;
-a b
-22 iii
-handler t2 read a prev;
-a b
-21 hhh
-handler t2 read a next;
-a b
-22 iii
-handler t2 read a next;
-a b
-handler t2 read a=(15);
-a b
-15 bbb
-handler t2 read a=(16);
-a b
-16 ccc
-handler t2 read a=(19,"fff");
-ERROR 42000: Too many key parts specified; max 1 parts allowed
-handler t2 read b=(19,"fff");
-a b
-19 fff
-handler t2 read b=(19,"yyy");
-a b
-19 yyy
-handler t2 read b=(19);
-a b
-19 fff
-handler t1 read a last;
-ERROR 42S02: Unknown table 't1' in HANDLER
-handler t2 read a=(11);
-a b
-handler t2 read a>=(11);
-a b
-14 aaa
-handler t2 read a=(18);
-a b
-18 eee
-handler t2 read a>=(18);
-a b
-18 eee
-handler t2 read a>(18);
-a b
-19 fff
-handler t2 read a<=(18);
-a b
-18 eee
-handler t2 read a<(18);
-a b
-17 ddd
-handler t2 read a first limit 5;
-a b
-14 aaa
-15 bbb
-16 ccc
-16 xxx
-17 ddd
-handler t2 read a next limit 3;
-a b
-18 eee
-19 fff
-19 yyy
-handler t2 read a prev limit 10;
-a b
-19 fff
-18 eee
-17 ddd
-16 xxx
-16 ccc
-15 bbb
-14 aaa
-handler t2 read a>=(16) limit 4;
-a b
-16 ccc
-16 xxx
-17 ddd
-18 eee
-handler t2 read a>=(16) limit 2,2;
-a b
-17 ddd
-18 eee
-handler t2 read a last limit 3;
-a b
-22 iii
-21 hhh
-20 ggg
-handler t2 read a=(19);
-a b
-19 fff
-handler t2 read a=(19) where b="yyy";
-a b
-19 yyy
-handler t2 read first;
-a b
-17 ddd
-handler t2 read next;
-a b
-18 eee
-handler t2 read last;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
-handler t2 close;
-handler t1 open;
-handler t1 read a next;
-a b
-14 aaa
-handler t1 read a next;
-a b
-15 bbb
-handler t1 close;
-handler t1 open;
-handler t1 read a prev;
-a b
-22 iii
-handler t1 read a prev;
-a b
-21 hhh
-handler t1 close;
-handler t1 open as t2;
-handler t2 read first;
-a b
-17 ddd
-alter table t1 engine=innodb;
-handler t2 read first;
-ERROR 42S02: Unknown table 't2' in HANDLER
-drop table t1;
-CREATE TABLE t1 ( no1 smallint(5) NOT NULL default '0', no2 int(10) NOT NULL default '0', PRIMARY KEY (no1,no2)) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,274),(1,275),(2,6),(2,8),(4,1),(4,2);
-HANDLER t1 OPEN;
-HANDLER t1 READ `primary` = (1, 1000);
-no1 no2
-HANDLER t1 READ `primary` PREV;
-no1 no2
-1 275
-DROP TABLE t1;
diff --git a/mysql-test/r/innodb_ignore_builtin.result b/mysql-test/r/innodb_ignore_builtin.result
new file mode 100644
index 00000000000..4694a61b20a
--- /dev/null
+++ b/mysql-test/r/innodb_ignore_builtin.result
@@ -0,0 +1,9 @@
+show variables like 'ignore_builtin_innodb';
+Variable_name Value
+ignore_builtin_innodb ON
+select PLUGIN_NAME from information_schema.plugins
+where PLUGIN_NAME = "InnoDb";
+PLUGIN_NAME
+select ENGINE from information_schema.engines
+where ENGINE = "InnoDB";
+ENGINE
diff --git a/mysql-test/r/innodb_mysql.result b/mysql-test/r/innodb_mysql.result
index a51dc978f3e..c882d2af1ed 100644
--- a/mysql-test/r/innodb_mysql.result
+++ b/mysql-test/r/innodb_mysql.result
@@ -1,11 +1,15 @@
-drop table if exists t1,t2,t3,t4;
+set global innodb_support_xa=default;
+set session innodb_support_xa=default;
+SET SESSION STORAGE_ENGINE = InnoDB;
+drop table if exists t1,t2,t3,t1m,t1i,t2m,t2i,t4;
+drop procedure if exists p1;
create table t1 (
c_id int(11) not null default '0',
org_id int(11) default null,
unique key contacts$c_id (c_id),
key contacts$org_id (org_id)
-) engine=innodb;
-insert into t1 values
+);
+insert into t1 values
(2,null),(120,null),(141,null),(218,7), (128,1),
(151,2),(234,2),(236,2),(243,2),(255,2),(259,2),(232,3),(235,3),(238,3),
(246,3),(253,3),(269,3),(285,3),(291,3),(293,3),(131,4),(230,4),(231,4);
@@ -27,16 +31,16 @@ sla_set int(11) default null,
unique key t2$slai_id (slai_id),
key t2$owner_id (owner_id),
key t2$sla_id (sla_id)
-) engine=innodb;
+);
insert into t2(slai_id, owner_tbl, owner_id, sla_id) values
(1,3,1,1), (3,3,10,2), (4,3,3,6), (5,3,2,5), (6,3,8,3), (7,3,9,7),
(8,3,6,8), (9,3,4,9), (10,3,5,10), (11,3,11,11), (12,3,7,12);
flush tables;
select si.slai_id
from t1 c join t2 si on
-((si.owner_tbl = 3 and si.owner_id = c.org_id) or
-( si.owner_tbl = 2 and si.owner_id = c.c_id))
-where
+((si.owner_tbl = 3 and si.owner_id = c.org_id) or
+( si.owner_tbl = 2 and si.owner_id = c.c_id))
+where
c.c_id = 218 and expiredate is null;
slai_id
12
@@ -47,17 +51,17 @@ c_id org_id
141 NULL
select si.slai_id
from t1 c join t2 si on
-((si.owner_tbl = 3 and si.owner_id = c.org_id) or
-( si.owner_tbl = 2 and si.owner_id = c.c_id))
-where
+((si.owner_tbl = 3 and si.owner_id = c.org_id) or
+( si.owner_tbl = 2 and si.owner_id = c.c_id))
+where
c.c_id = 218 and expiredate is null;
slai_id
12
drop table t1, t2;
-CREATE TABLE t1 (a int, b int, KEY b (b)) Engine=InnoDB;
-CREATE TABLE t2 (a int, b int, PRIMARY KEY (a,b)) Engine=InnoDB;
-CREATE TABLE t3 (a int, b int, c int, PRIMARY KEY (a),
-UNIQUE KEY b (b,c), KEY a (a,b,c)) Engine=InnoDB;
+CREATE TABLE t1 (a int, b int, KEY b (b));
+CREATE TABLE t2 (a int, b int, PRIMARY KEY (a,b));
+CREATE TABLE t3 (a int, b int, c int, PRIMARY KEY (a),
+UNIQUE KEY b (b,c), KEY a (a,b,c));
INSERT INTO t1 VALUES (1, 1);
INSERT INTO t1 SELECT a + 1, b + 1 FROM t1;
INSERT INTO t1 SELECT a + 2, b + 2 FROM t1;
@@ -67,14 +71,14 @@ DELETE FROM t2 WHERE a = 1 AND b < 2;
INSERT INTO t3 VALUES (1,1,1),(2,1,2);
INSERT INTO t3 SELECT a + 2, a + 2, 3 FROM t3;
INSERT INTO t3 SELECT a + 4, a + 4, 3 FROM t3;
-SELECT STRAIGHT_JOIN SQL_NO_CACHE t1.b, t1.a FROM t1, t3, t2 WHERE
-t3.a = t2.a AND t2.b = t1.a AND t3.b = 1 AND t3.c IN (1, 2)
+SELECT STRAIGHT_JOIN SQL_NO_CACHE t1.b, t1.a FROM t1, t3, t2 WHERE
+t3.a = t2.a AND t2.b = t1.a AND t3.b = 1 AND t3.c IN (1, 2)
ORDER BY t1.b LIMIT 2;
b a
1 1
2 2
-SELECT STRAIGHT_JOIN SQL_NO_CACHE t1.b, t1.a FROM t1, t3, t2 WHERE
-t3.a = t2.a AND t2.b = t1.a AND t3.b = 1 AND t3.c IN (1, 2)
+SELECT STRAIGHT_JOIN SQL_NO_CACHE t1.b, t1.a FROM t1, t3, t2 WHERE
+t3.a = t2.a AND t2.b = t1.a AND t3.b = 1 AND t3.c IN (1, 2)
ORDER BY t1.b LIMIT 5;
b a
1 1
@@ -92,8 +96,8 @@ CREATE TABLE `t2` (
`id4` INT NOT NULL,
UNIQUE (`id2`,`id4`),
KEY (`id1`)
-) ENGINE=InnoDB;
-INSERT INTO `t2`(`id1`,`id2`,`id3`,`id4`) VALUES
+);
+INSERT INTO `t2`(`id1`,`id2`,`id3`,`id4`) VALUES
(1,1,1,0),
(1,1,2,1),
(5,1,2,2),
@@ -165,67 +169,12 @@ t1.a4='UNcT5pIde4I6c2SheTo4gt92OV1jgJCVkXmzyf325R1DwLURkbYHwhydANIZMbKTgdcR5xS';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
DROP TABLE t1;
-End of 4.1 tests
-create table t1m (a int) engine=myisam;
-create table t1i (a int) engine=innodb;
-create table t2m (a int) engine=myisam;
-create table t2i (a int) engine=innodb;
+create table t1m (a int) engine = MEMORY;
+create table t1i (a int);
+create table t2m (a int) engine = MEMORY;
+create table t2i (a int);
insert into t2m values (5);
insert into t2i values (5);
-select min(a) from t1m;
-min(a)
-NULL
-select min(7) from t1m;
-min(7)
-NULL
-select min(7) from DUAL;
-min(7)
-7
-explain select min(7) from t2m join t1m;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
-select min(7) from t2m join t1m;
-min(7)
-NULL
-select max(a) from t1m;
-max(a)
-NULL
-select max(7) from t1m;
-max(7)
-NULL
-select max(7) from DUAL;
-max(7)
-7
-explain select max(7) from t2m join t1m;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
-select max(7) from t2m join t1m;
-max(7)
-NULL
-select 1, min(a) from t1m where a=99;
-1 min(a)
-1 NULL
-select 1, min(a) from t1m where 1=99;
-1 min(a)
-1 NULL
-select 1, min(1) from t1m where a=99;
-1 min(1)
-1 NULL
-select 1, min(1) from t1m where 1=99;
-1 min(1)
-1 NULL
-select 1, max(a) from t1m where a=99;
-1 max(a)
-1 NULL
-select 1, max(a) from t1m where 1=99;
-1 max(a)
-1 NULL
-select 1, max(1) from t1m where a=99;
-1 max(1)
-1 NULL
-select 1, max(1) from t1m where 1=99;
-1 max(1)
-1 NULL
select min(a) from t1i;
min(a)
NULL
@@ -238,7 +187,7 @@ min(7)
explain select min(7) from t2i join t1i;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2i ALL NULL NULL NULL NULL 1
-1 SIMPLE t1i ALL NULL NULL NULL NULL 1
+1 SIMPLE t1i ALL NULL NULL NULL NULL 1 Using join buffer
select min(7) from t2i join t1i;
min(7)
NULL
@@ -254,7 +203,7 @@ max(7)
explain select max(7) from t2i join t1i;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2i ALL NULL NULL NULL NULL 1
-1 SIMPLE t1i ALL NULL NULL NULL NULL 1
+1 SIMPLE t1i ALL NULL NULL NULL NULL 1 Using join buffer
select max(7) from t2i join t1i;
max(7)
NULL
@@ -306,7 +255,7 @@ count(*) min(7) max(7)
drop table t1m, t1i, t2m, t2i;
create table t1 (
a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(64) default ' '
-);
+) ENGINE = MEMORY;
insert into t1 (a1, a2, b, c, d) values
('a','a','a','a111','xy1'),('a','a','a','b111','xy2'),('a','a','a','c111','xy3'),('a','a','a','d111','xy4'),
('a','a','b','e112','xy1'),('a','a','b','f112','xy2'),('a','a','b','g112','xy3'),('a','a','b','h112','xy4'),
@@ -342,14 +291,14 @@ insert into t1 (a1, a2, b, c, d) values
('d','b','b','m422','xy1'),('d','b','b','n422','xy2'),('d','b','b','o422','xy3'),('d','b','b','p422','xy4');
create table t4 (
pk_col int auto_increment primary key, a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(64) default ' '
-) engine=innodb;
+);
insert into t4 (a1, a2, b, c, d, dummy) select * from t1;
create index idx12672_0 on t4 (a1);
create index idx12672_1 on t4 (a1,a2,b,c);
create index idx12672_2 on t4 (a1,a2,b);
-analyze table t1;
+analyze table t4;
Table Op Msg_type Msg_text
-test.t1 analyze status OK
+test.t4 analyze status OK
select distinct a1 from t4 where pk_col not in (1,2,3,4);
a1
a
@@ -367,7 +316,7 @@ INSERT INTO t1 VALUES (1);
INSERT INTO t2 VALUES (1);
DELETE IGNORE FROM t1 WHERE i = 1;
Warnings:
-Error 1451 Cannot delete or update a parent row: a foreign key constraint fails (`test/t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`i`) REFERENCES `t1` (`i`) ON DELETE NO ACTION)
+Error 1451 Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`i`) REFERENCES `t1` (`i`) ON DELETE NO ACTION)
SELECT * FROM t1, t2;
i i
1 1
@@ -375,18 +324,18 @@ DROP TABLE t2, t1;
End of 4.1 tests.
create table t1 (
a varchar(30), b varchar(30), primary key(a), key(b)
-) engine=innodb;
+);
select distinct a from t1;
a
drop table t1;
-create table t1(a int, key(a)) engine=innodb;
+create table t1(a int, key(a));
insert into t1 values(1);
select a, count(a) from t1 group by a with rollup;
a count(a)
1 1
NULL 1
drop table t1;
-create table t1 (f1 int, f2 char(1), primary key(f1,f2)) engine=innodb;
+create table t1 (f1 int, f2 char(1), primary key(f1,f2));
insert into t1 values ( 1,"e"),(2,"a"),( 3,"c"),(4,"d");
alter table t1 drop primary key, add primary key (f2, f1);
explain select distinct f1 a, f1 b from t1;
@@ -397,46 +346,24 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range NULL PRIMARY 5 NULL 3 Using index for group-by; Using temporary
drop table t1;
CREATE TABLE t1 (id int(11) NOT NULL PRIMARY KEY, name varchar(20),
-INDEX (name)) ENGINE=InnoDB;
-CREATE TABLE t2 (id int(11) NOT NULL PRIMARY KEY, fkey int(11),
-FOREIGN KEY (fkey) REFERENCES t2(id)) ENGINE=InnoDB;
+INDEX (name));
+CREATE TABLE t2 (id int(11) NOT NULL PRIMARY KEY, fkey int(11));
+ALTER TABLE t2 ADD FOREIGN KEY (fkey) REFERENCES t2(id);
INSERT INTO t1 VALUES (1,'A1'),(2,'A2'),(3,'B');
INSERT INTO t2 VALUES (1,1),(2,2),(3,2),(4,3),(5,3);
EXPLAIN
-SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
+SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
WHERE t1.name LIKE 'A%';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index PRIMARY,name name 23 NULL 3 Using where; Using index
1 SIMPLE t2 ref fkey fkey 5 test.t1.id 1 Using where; Using index
EXPLAIN
-SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
+SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
WHERE t1.name LIKE 'A%' OR FALSE;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 index NULL fkey 5 NULL 5 Using index
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.fkey 1 Using where
DROP TABLE t1,t2;
-create table t1(f1 varchar(800) binary not null, key(f1)) engine = innodb
-character set utf8 collate utf8_general_ci;
-Warnings:
-Warning 1071 Specified key was too long; max key length is 767 bytes
-insert into t1 values('aaa');
-drop table t1;
-CREATE TABLE t1 (a INT PRIMARY KEY, b INT, c FLOAT, KEY b(b)) ENGINE = INNODB;
-INSERT INTO t1 VALUES ( 1 , 1 , 1);
-INSERT INTO t1 SELECT a + 1 , MOD(a + 1 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 2 , MOD(a + 2 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 4 , MOD(a + 4 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 8 , MOD(a + 8 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 16, MOD(a + 16, 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 32, MOD(a + 32, 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 64, MOD(a + 64, 20), 1 FROM t1;
-EXPLAIN SELECT b, SUM(c) FROM t1 GROUP BY b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL b 5 NULL 128
-EXPLAIN SELECT SQL_BIG_RESULT b, SUM(c) FROM t1 GROUP BY b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 128 Using filesort
-DROP TABLE t1;
CREATE TABLE t1 (
id int NOT NULL,
name varchar(20) NOT NULL,
@@ -458,12 +385,14 @@ name dept
rs5 cs10
rs5 cs9
DELETE FROM t1;
+# Masking (#) number in "rows" column of the following EXPLAIN output, as it may vary (bug#47746).
EXPLAIN SELECT DISTINCT t1.name, t1.dept FROM t1 WHERE t1.name='rs5';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range name name 44 NULL 2 Using where; Using index for group-by
+1 SIMPLE t1 range name name 44 NULL # Using where; Using index for group-by
SELECT DISTINCT t1.name, t1.dept FROM t1 WHERE t1.name='rs5';
name dept
DROP TABLE t1;
+drop table if exists t1;
show variables like 'innodb_rollback_on_timeout';
Variable_name Value
innodb_rollback_on_timeout OFF
@@ -526,6 +455,43 @@ tes 1234
drop table test;
set global query_cache_type=@save_qcache_type;
set global query_cache_size=@save_qcache_size;
+drop table if exists t1;
+show variables like 'innodb_rollback_on_timeout';
+Variable_name Value
+innodb_rollback_on_timeout OFF
+create table t1 (a int unsigned not null primary key) engine = innodb;
+insert into t1 values (1);
+commit;
+begin work;
+insert into t1 values (2);
+select * from t1;
+a
+1
+2
+begin work;
+insert into t1 values (5);
+select * from t1;
+a
+1
+5
+insert into t1 values (2);
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1;
+a
+1
+5
+commit;
+select * from t1;
+a
+1
+2
+commit;
+select * from t1;
+a
+1
+2
+5
+drop table t1;
create table t1(
id int auto_increment,
c char(1) not null,
@@ -612,6 +578,7 @@ id select_type table type possible_keys key key_len ref rows Extra
INSERT INTO t2 SELECT * FROM t1;
OPTIMIZE TABLE t2;
Table Op Msg_type Msg_text
+test.t2 optimize note Table does not support optimize, doing recreate + analyze instead
test.t2 optimize status OK
EXPLAIN SELECT COUNT(*) FROM t2 WHERE stat_id IN (1,3) AND acct_id=785;
id select_type table type possible_keys key key_len ref rows Extra
@@ -622,7 +589,7 @@ alter table t1 comment '123';
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='123'
drop table t1;
CREATE TABLE t1 (a CHAR(2), KEY (a)) ENGINE = InnoDB DEFAULT CHARSET=UTF8;
@@ -662,13 +629,13 @@ SELECT * FROM t3 WHERE a = 'uk';
a
DROP TABLE t1,t2,t3;
create table t1 (a int) engine=innodb;
-select * from t2;
-ERROR 42S02: Table 'test.t2' doesn't exist
+select * from bug29807;
+ERROR 42S02: Table 'test.bug29807' doesn't exist
drop table t1;
-drop table t2;
-ERROR 42S02: Unknown table 't2'
-create table t2 (a int);
-drop table t2;
+drop table bug29807;
+ERROR 42S02: Unknown table 'bug29807'
+create table bug29807 (a int);
+drop table bug29807;
CREATE TABLE t1 (a INT) ENGINE=InnoDB;
CREATE TABLE t2 (a INT) ENGINE=InnoDB;
switch to connection c1
@@ -737,6 +704,122 @@ COUNT(*)
3072
set @@sort_buffer_size=default;
DROP TABLE t1,t2;
+CREATE TABLE t1 (a int, b int);
+insert into t1 values (1,1),(1,2);
+CREATE TABLE t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+drop table if exists t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TEMPORARY TABLE t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+drop table if exists t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TABLE t2 (a int, b int, primary key (a));
+BEGIN;
+INSERT INTO t2 values(100,100);
+CREATE TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+100 100
+ROLLBACK;
+SELECT * from t2;
+a b
+100 100
+TRUNCATE table t2;
+INSERT INTO t2 select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+drop table t2;
+CREATE TEMPORARY TABLE t2 (a int, b int, primary key (a));
+BEGIN;
+INSERT INTO t2 values(100,100);
+CREATE TEMPORARY TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+100 100
+COMMIT;
+BEGIN;
+INSERT INTO t2 values(101,101);
+CREATE TEMPORARY TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+100 100
+101 101
+ROLLBACK;
+SELECT * from t2;
+a b
+100 100
+TRUNCATE table t2;
+INSERT INTO t2 select * from t1;
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+SELECT * from t2;
+a b
+drop table t1,t2;
+create table t1(f1 varchar(800) binary not null, key(f1))
+character set utf8 collate utf8_general_ci;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 767 bytes
+insert into t1 values('aaa');
+drop table t1;
+CREATE TABLE t1 (a INT PRIMARY KEY, b INT, c FLOAT, KEY b(b)) ENGINE = INNODB;
+INSERT INTO t1 VALUES ( 1 , 1 , 1);
+INSERT INTO t1 SELECT a + 1 , MOD(a + 1 , 20), 1 FROM t1;
+INSERT INTO t1 SELECT a + 2 , MOD(a + 2 , 20), 1 FROM t1;
+INSERT INTO t1 SELECT a + 4 , MOD(a + 4 , 20), 1 FROM t1;
+INSERT INTO t1 SELECT a + 8 , MOD(a + 8 , 20), 1 FROM t1;
+INSERT INTO t1 SELECT a + 16, MOD(a + 16, 20), 1 FROM t1;
+INSERT INTO t1 SELECT a + 32, MOD(a + 32, 20), 1 FROM t1;
+INSERT INTO t1 SELECT a + 64, MOD(a + 64, 20), 1 FROM t1;
+EXPLAIN SELECT b, SUM(c) FROM t1 GROUP BY b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL b 5 NULL 128
+EXPLAIN SELECT SQL_BIG_RESULT b, SUM(c) FROM t1 GROUP BY b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 128 Using filesort
+DROP TABLE t1;
+drop table if exists t1;
+show variables like 'innodb_rollback_on_timeout';
+Variable_name Value
+innodb_rollback_on_timeout OFF
+create table t1 (a int unsigned not null primary key) engine = innodb;
+insert into t1 values (1);
+commit;
+begin work;
+insert into t1 values (2);
+select * from t1;
+a
+1
+2
+begin work;
+insert into t1 values (5);
+select * from t1;
+a
+1
+5
+insert into t1 values (2);
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1;
+a
+1
+5
+commit;
+select * from t1;
+a
+1
+2
+commit;
+select * from t1;
+a
+1
+2
+5
+drop table t1;
drop table if exists t1;
create table t1 (a int) engine=innodb;
alter table t1 alter a set default 1;
@@ -1042,6 +1125,7 @@ insert into t1 values('aaa');
alter table t1 add index(a(1024));
Warnings:
Warning 1071 Specified key was too long; max key length is 767 bytes
+Warning 1071 Specified key was too long; max key length is 767 bytes
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -1213,17 +1297,39 @@ a b
3 2
1 1
DROP TABLE t1;
-CREATE TABLE t1 (id int, type char(6), d int, INDEX idx(id,d)) ENGINE=InnoDB;
-INSERT INTO t1 VALUES
-(191, 'member', 1), (NULL, 'member', 3), (NULL, 'member', 4), (201, 'member', 2);
-EXPLAIN SELECT * FROM t1 WHERE id=191 OR id IS NULL ORDER BY d;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL idx NULL NULL NULL 3 Using where; Using filesort
-SELECT * FROM t1 WHERE id=191 OR id IS NULL ORDER BY d;
-id type d
-191 member 1
-NULL member 3
-NULL member 4
+
+#
+# Bug#27610: ALTER TABLE ROW_FORMAT=... does not rebuild the table.
+#
+
+# - prepare;
+
+DROP TABLE IF EXISTS t1;
+
+CREATE TABLE t1(c INT)
+ENGINE = InnoDB
+ROW_FORMAT = COMPACT;
+
+# - initial check;
+
+SELECT table_schema, table_name, row_format
+FROM INFORMATION_SCHEMA.TABLES
+WHERE table_schema = DATABASE() AND table_name = 't1';
+table_schema table_name row_format
+test t1 Compact
+
+# - change ROW_FORMAT and check;
+
+ALTER TABLE t1 ROW_FORMAT = REDUNDANT;
+
+SELECT table_schema, table_name, row_format
+FROM INFORMATION_SCHEMA.TABLES
+WHERE table_schema = DATABASE() AND table_name = 't1';
+table_schema table_name row_format
+test t1 Redundant
+
+# - that's it, cleanup.
+
DROP TABLE t1;
create table t1(a char(10) not null, unique key aa(a(1)),
b char(4) not null, unique key bb(b(4))) engine=innodb;
@@ -1240,6 +1346,18 @@ t1 CREATE TABLE `t1` (
UNIQUE KEY `aa` (`a`(1))
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1;
+CREATE TABLE t1 (id int, type char(6), d int, INDEX idx(id,d)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES
+(191, 'member', 1), (NULL, 'member', 3), (NULL, 'member', 4), (201, 'member', 2);
+EXPLAIN SELECT * FROM t1 WHERE id=191 OR id IS NULL ORDER BY d;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL idx NULL NULL NULL 4 Using where; Using filesort
+SELECT * FROM t1 WHERE id=191 OR id IS NULL ORDER BY d;
+id type d
+191 member 1
+NULL member 3
+NULL member 4
+DROP TABLE t1;
set @my_innodb_autoextend_increment=@@global.innodb_autoextend_increment;
set global innodb_autoextend_increment=8;
set global innodb_autoextend_increment=@my_innodb_autoextend_increment;
@@ -1252,7 +1370,7 @@ INSERT INTO t1 (a,b,c) VALUES (1,1,1), (2,1,1), (3,1,1), (4,1,1);
INSERT INTO t1 (a,b,c) SELECT a+4,b,c FROM t1;
EXPLAIN SELECT a, b, c FROM t1 WHERE b = 1 ORDER BY a DESC LIMIT 5;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range t1_b t1_b 5 NULL 4 Using where
+1 SIMPLE t1 index t1_b PRIMARY 4 NULL 8 Using where
SELECT a, b, c FROM t1 WHERE b = 1 ORDER BY a DESC LIMIT 5;
a b c
8 1 1
@@ -1296,9 +1414,9 @@ SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`f1` int(11) NOT NULL COMMENT 'My ID#',
- `f2` int(11) default NULL,
- `f3` char(10) default 'My ID#',
- PRIMARY KEY (`f1`),
+ `f2` int(11) DEFAULT NULL,
+ `f3` char(10) DEFAULT 'My ID#',
+ PRIMARY KEY (`f1`),
KEY `f2_ref` (`f2`),
CONSTRAINT `f2_ref` FOREIGN KEY (`f2`) REFERENCES `t1` (`f1`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
@@ -1316,3 +1434,821 @@ id select_type table type possible_keys key key_len ref rows Extra
2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 1
DROP TABLE t1,t2;
End of 5.0 tests
+CREATE TABLE `t2` (
+`k` int(11) NOT NULL auto_increment,
+`a` int(11) default NULL,
+`c` int(11) default NULL,
+PRIMARY KEY (`k`),
+UNIQUE KEY `idx_1` (`a`)
+);
+insert into t2 ( a ) values ( 6 ) on duplicate key update c =
+ifnull( c,
+0 ) + 1;
+insert into t2 ( a ) values ( 7 ) on duplicate key update c =
+ifnull( c,
+0 ) + 1;
+select last_insert_id();
+last_insert_id()
+2
+select * from t2;
+k a c
+1 6 NULL
+2 7 NULL
+insert into t2 ( a ) values ( 6 ) on duplicate key update c =
+ifnull( c,
+0 ) + 1;
+select last_insert_id();
+last_insert_id()
+2
+select last_insert_id(0);
+last_insert_id(0)
+0
+insert into t2 ( a ) values ( 6 ) on duplicate key update c =
+ifnull( c,
+0 ) + 1;
+select last_insert_id();
+last_insert_id()
+0
+select * from t2;
+k a c
+1 6 2
+2 7 NULL
+insert ignore into t2 values (null,6,1),(10,8,1);
+select last_insert_id();
+last_insert_id()
+0
+insert ignore into t2 values (null,6,1),(null,8,1),(null,15,1),(null,20,1);
+select last_insert_id();
+last_insert_id()
+11
+select * from t2;
+k a c
+1 6 2
+2 7 NULL
+10 8 1
+11 15 1
+12 20 1
+insert into t2 ( a ) values ( 6 ) on duplicate key update c =
+ifnull( c,
+0 ) + 1, k=last_insert_id(k);
+select last_insert_id();
+last_insert_id()
+1
+select * from t2;
+k a c
+1 6 3
+2 7 NULL
+10 8 1
+11 15 1
+12 20 1
+drop table t2;
+drop table if exists t1, t2;
+create table t1 (i int);
+alter table t1 modify i int default 1;
+alter table t1 modify i int default 2, rename t2;
+lock table t2 write;
+alter table t2 modify i int default 3;
+unlock tables;
+lock table t2 write;
+alter table t2 modify i int default 4, rename t1;
+unlock tables;
+drop table t1;
+drop table if exists t1;
+create table t1 (i int);
+insert into t1 values ();
+lock table t1 write;
+alter table t1 modify i int default 1;
+insert into t1 values ();
+select * from t1;
+i
+NULL
+1
+alter table t1 change i c char(10) default "Two";
+insert into t1 values ();
+select * from t1;
+c
+NULL
+1
+Two
+unlock tables;
+select * from t1;
+c
+NULL
+1
+Two
+drop tables t1;
+create table t1(f1 varchar(5) unique, f2 timestamp NOT NULL DEFAULT
+CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP);
+insert into t1(f1) values(1);
+select @a:=f2 from t1;
+@a:=f2
+#
+update t1 set f1=1;
+select @b:=f2 from t1;
+@b:=f2
+#
+select if(@a=@b,"ok","wrong");
+if(@a=@b,"ok","wrong")
+ok
+insert into t1(f1) values (1) on duplicate key update f1="1";
+select @b:=f2 from t1;
+@b:=f2
+#
+select if(@a=@b,"ok","wrong");
+if(@a=@b,"ok","wrong")
+ok
+insert into t1(f1) select f1 from t1 on duplicate key update f1="1";
+select @b:=f2 from t1;
+@b:=f2
+#
+select if(@a=@b,"ok","wrong");
+if(@a=@b,"ok","wrong")
+ok
+drop table t1;
+SET SESSION AUTOCOMMIT = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+set binlog_format=mixed;
+# Switch to connection con1
+CREATE TABLE t1 (a INT PRIMARY KEY, b VARCHAR(256))
+ENGINE = InnoDB;
+INSERT INTO t1 VALUES (1,2);
+# 1. test for locking:
+BEGIN;
+UPDATE t1 SET b = 12 WHERE a = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+SELECT * FROM t1;
+a b
+1 12
+# Switch to connection con2
+UPDATE t1 SET b = 21 WHERE a = 1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Switch to connection con1
+SELECT * FROM t1;
+a b
+1 12
+ROLLBACK;
+# 2. test for serialized update:
+CREATE TABLE t2 (a INT);
+TRUNCATE t1;
+INSERT INTO t1 VALUES (1,'init');
+CREATE PROCEDURE p1()
+BEGIN
+UPDATE t1 SET b = CONCAT(b, '+con2') WHERE a = 1;
+INSERT INTO t2 VALUES ();
+END|
+BEGIN;
+UPDATE t1 SET b = CONCAT(b, '+con1') WHERE a = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+SELECT * FROM t1;
+a b
+1 init+con1
+# Switch to connection con2
+CALL p1;;
+# Switch to connection con1
+SELECT * FROM t1;
+a b
+1 init+con1
+COMMIT;
+SELECT * FROM t1;
+a b
+1 init+con1
+# Switch to connection con2
+SELECT * FROM t1;
+a b
+1 init+con1+con2
+# Switch to connection con1
+# 3. test for updated key column:
+TRUNCATE t1;
+TRUNCATE t2;
+INSERT INTO t1 VALUES (1,'init');
+BEGIN;
+UPDATE t1 SET a = 2, b = CONCAT(b, '+con1') WHERE a = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+SELECT * FROM t1;
+a b
+2 init+con1
+# Switch to connection con2
+CALL p1;;
+# Switch to connection con1
+SELECT * FROM t1;
+a b
+2 init+con1
+COMMIT;
+SELECT * FROM t1;
+a b
+2 init+con1
+# Switch to connection con2
+SELECT * FROM t1;
+a b
+2 init+con1
+DROP PROCEDURE p1;
+DROP TABLE t1, t2;
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL, PRIMARY KEY (a,b)) engine=innodb;
+CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
+CONSTRAINT c2 FOREIGN KEY f2 (c) REFERENCES t1 (a,b) ON UPDATE NO ACTION) engine=innodb;
+ERROR 42000: Incorrect foreign key definition for 'f2': Key reference and table reference don't match
+CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
+CONSTRAINT c2 FOREIGN KEY (c) REFERENCES t1 (a,b) ON UPDATE NO ACTION) engine=innodb;
+ERROR 42000: Incorrect foreign key definition for 'c2': Key reference and table reference don't match
+CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
+CONSTRAINT c1 FOREIGN KEY c2 (c) REFERENCES t1 (a) ON DELETE NO ACTION,
+CONSTRAINT c2 FOREIGN KEY (c) REFERENCES t1 (a) ON UPDATE NO ACTION) engine=innodb;
+ALTER TABLE t2 DROP FOREIGN KEY c2;
+DROP TABLE t2;
+CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
+FOREIGN KEY (c) REFERENCES t1 (a,k) ON UPDATE NO ACTION) engine=innodb;
+ERROR 42000: Incorrect foreign key definition for 'foreign key without name': Key reference and table reference don't match
+CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
+FOREIGN KEY f1 (c) REFERENCES t1 (a,k) ON UPDATE NO ACTION) engine=innodb;
+ERROR 42000: Incorrect foreign key definition for 'f1': Key reference and table reference don't match
+CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
+CONSTRAINT c1 FOREIGN KEY f1 (c) REFERENCES t1 (a) ON DELETE NO ACTION,
+CONSTRAINT c2 FOREIGN KEY (c) REFERENCES t1 (a) ON UPDATE NO ACTION,
+FOREIGN KEY f3 (c) REFERENCES t1 (a) ON UPDATE NO ACTION,
+FOREIGN KEY (c) REFERENCES t1 (a) ON UPDATE NO ACTION) engine=innodb;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `c` int(11) NOT NULL,
+ `d` int(11) NOT NULL,
+ PRIMARY KEY (`c`,`d`),
+ CONSTRAINT `c1` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON DELETE NO ACTION,
+ CONSTRAINT `c2` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON UPDATE NO ACTION,
+ CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON UPDATE NO ACTION,
+ CONSTRAINT `t2_ibfk_2` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON UPDATE NO ACTION
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TABLE t2;
+DROP TABLE t1;
+create table t1 (a int auto_increment primary key) engine=innodb;
+alter table t1 order by a;
+Warnings:
+Warning 1105 ORDER BY ignored as there is a user-defined clustered index in the table 't1'
+drop table t1;
+CREATE TABLE t1
+(vid integer NOT NULL,
+tid integer NOT NULL,
+idx integer NOT NULL,
+name varchar(128) NOT NULL,
+type varchar(128) NULL,
+PRIMARY KEY(idx, vid, tid),
+UNIQUE(vid, tid, name)
+) ENGINE=InnoDB;
+INSERT INTO t1 VALUES
+(1,1,1,'pk',NULL),(2,1,1,'pk',NULL),(3,1,1,'pk',NULL),(4,1,1,'c1',NULL),
+(5,1,1,'pk',NULL),(1,1,2,'c1',NULL),(2,1,2,'c1',NULL),(3,1,2,'c1',NULL),
+(4,1,2,'c2',NULL),(5,1,2,'c1',NULL),(2,1,3,'c2',NULL),(3,1,3,'c2',NULL),
+(4,1,3,'pk',NULL),(5,1,3,'c2',NULL),
+(2,1,4,'c_extra',NULL),(3,1,4,'c_extra',NULL);
+EXPLAIN SELECT * FROM t1 FORCE INDEX (PRIMARY) WHERE tid = 1 AND vid = 3 ORDER BY idx DESC;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 12 NULL 16 Using where
+SELECT * FROM t1 FORCE INDEX (PRIMARY) WHERE tid = 1 AND vid = 3 ORDER BY idx DESC;
+vid tid idx name type
+3 1 4 c_extra NULL
+3 1 3 c2 NULL
+3 1 2 c1 NULL
+3 1 1 pk NULL
+DROP TABLE t1;
+#
+# Bug #44290: explain crashes for subquery with distinct in
+# SQL_SELECT::test_quick_select
+# (reproduced only with InnoDB tables)
+#
+CREATE TABLE t1 (c1 INT, c2 INT, c3 INT, KEY (c3), KEY (c2, c3))
+ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1,1,1), (1,1,1), (1,1,2), (1,1,1), (1,1,2);
+SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
+FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
+1
+1
+EXPLAIN
+SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
+FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY <derived2> system NULL NULL NULL NULL 1
+2 DERIVED t1 index c3,c2 c2 10 NULL 5
+DROP TABLE t1;
+CREATE TABLE t1 (c1 REAL, c2 REAL, c3 REAL, KEY (c3), KEY (c2, c3))
+ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1,1,1), (1,1,1), (1,1,2), (1,1,1), (1,1,2);
+SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
+FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
+1
+1
+EXPLAIN
+SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
+FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY <derived2> system NULL NULL NULL NULL 1
+2 DERIVED t1 index c3,c2 c2 18 NULL 5
+DROP TABLE t1;
+CREATE TABLE t1 (c1 DECIMAL(12,2), c2 DECIMAL(12,2), c3 DECIMAL(12,2),
+KEY (c3), KEY (c2, c3))
+ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1,1,1), (1,1,1), (1,1,2), (1,1,1), (1,1,2);
+SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
+FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
+1
+1
+EXPLAIN
+SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
+FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY <derived2> system NULL NULL NULL NULL 1
+2 DERIVED t1 index c3,c2 c2 14 NULL 5
+DROP TABLE t1;
+End of 5.1 tests
+drop table if exists t1, t2, t3;
+create table t1(a int);
+insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t2 (a int, b int, pk int, key(a,b), primary key(pk)) engine=innodb;
+insert into t2 select @a:=A.a+10*(B.a + 10*C.a),@a, @a from t1 A, t1 B, t1 C;
+this must use key 'a', not PRIMARY:
+explain select a from t2 where a=b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL a 10 NULL # Using where; Using index
+drop table t1, t2;
+SET SESSION BINLOG_FORMAT=STATEMENT;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+select @@session.sql_log_bin, @@session.binlog_format, @@session.tx_isolation;
+@@session.sql_log_bin 1
+@@session.binlog_format STATEMENT
+@@session.tx_isolation READ-COMMITTED
+CREATE TABLE t1 ( a INT ) ENGINE=InnoDB;
+INSERT INTO t1 VALUES(1);
+DROP TABLE t1;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a char(50)) ENGINE=InnoDB;
+CREATE INDEX i1 on t1 (a(3));
+SELECT * FROM t1 WHERE a = 'abcde';
+a
+DROP TABLE t1;
+CREATE TABLE foo (a int, b int, c char(10),
+PRIMARY KEY (c(3)),
+KEY b (b)
+) engine=innodb;
+CREATE TABLE foo2 (a int, b int, c char(10),
+PRIMARY KEY (c),
+KEY b (b)
+) engine=innodb;
+CREATE TABLE bar (a int, b int, c char(10),
+PRIMARY KEY (c(3)),
+KEY b (b)
+) engine=myisam;
+INSERT INTO foo VALUES
+(1,2,'abcdefghij'), (2,3,''), (3,4,'klmnopqrst'),
+(4,5,'uvwxyz'), (5,6,'meotnsyglt'), (4,5,'asfdewe');
+INSERT INTO bar SELECT * FROM foo;
+INSERT INTO foo2 SELECT * FROM foo;
+EXPLAIN SELECT c FROM bar WHERE b>2;;
+id 1
+select_type SIMPLE
+table bar
+type ALL
+possible_keys b
+key NULL
+key_len NULL
+ref NULL
+rows 6
+Extra Using where
+EXPLAIN SELECT c FROM foo WHERE b>2;;
+id 1
+select_type SIMPLE
+table foo
+type ALL
+possible_keys b
+key NULL
+key_len NULL
+ref NULL
+rows 6
+Extra Using where
+EXPLAIN SELECT c FROM foo2 WHERE b>2;;
+id 1
+select_type SIMPLE
+table foo2
+type range
+possible_keys b
+key b
+key_len 5
+ref NULL
+rows 3
+Extra Using where; Using index
+EXPLAIN SELECT c FROM bar WHERE c>2;;
+id 1
+select_type SIMPLE
+table bar
+type ALL
+possible_keys PRIMARY
+key NULL
+key_len NULL
+ref NULL
+rows 6
+Extra Using where
+EXPLAIN SELECT c FROM foo WHERE c>2;;
+id 1
+select_type SIMPLE
+table foo
+type ALL
+possible_keys PRIMARY
+key NULL
+key_len NULL
+ref NULL
+rows 6
+Extra Using where
+EXPLAIN SELECT c FROM foo2 WHERE c>2;;
+id 1
+select_type SIMPLE
+table foo2
+type index
+possible_keys PRIMARY
+key b
+key_len 5
+ref NULL
+rows 6
+Extra Using where; Using index
+DROP TABLE foo, bar, foo2;
+DROP TABLE IF EXISTS t1,t3,t2;
+DROP FUNCTION IF EXISTS f1;
+CREATE FUNCTION f1() RETURNS VARCHAR(250)
+BEGIN
+return 'hhhhhhh' ;
+END|
+CREATE TABLE t1 (a VARCHAR(20), b VARCHAR(20), c VARCHAR(20)) ENGINE=INNODB;
+BEGIN WORK;
+CREATE TEMPORARY TABLE t2 (a VARCHAR(20), b VARCHAR(20), c varchar(20)) ENGINE=INNODB;
+CREATE TEMPORARY TABLE t3 LIKE t2;
+INSERT INTO t1 VALUES ('a','b',NULL),('c','d',NULL),('e','f',NULL);
+SET @stmt := CONCAT('INSERT INTO t2 SELECT tbl.a, tbl.b, f1()',' FROM t1 tbl');
+PREPARE stmt1 FROM @stmt;
+SET @stmt := CONCAT('INSERT INTO t3', ' SELECT * FROM t2');
+PREPARE stmt3 FROM @stmt;
+EXECUTE stmt1;
+COMMIT;
+DEALLOCATE PREPARE stmt1;
+DEALLOCATE PREPARE stmt3;
+DROP TABLE t1,t3,t2;
+DROP FUNCTION f1;
+DROP TABLE IF EXISTS t1,t2;
+CREATE TABLE t1 (id INT NOT NULL, PRIMARY KEY (id)) ENGINE=INNODB;
+CREATE TABLE t2 (id INT PRIMARY KEY,
+t1_id INT, INDEX par_ind (t1_id),
+FOREIGN KEY (t1_id) REFERENCES t1(id)) ENGINE=INNODB;
+INSERT INTO t1 VALUES (1),(2);
+INSERT INTO t2 VALUES (3,2);
+SET AUTOCOMMIT = 0;
+START TRANSACTION;
+TRUNCATE TABLE t1;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
+SELECT * FROM t1;
+id
+1
+2
+COMMIT;
+SELECT * FROM t1;
+id
+1
+2
+START TRANSACTION;
+TRUNCATE TABLE t1;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
+SELECT * FROM t1;
+id
+1
+2
+ROLLBACK;
+SELECT * FROM t1;
+id
+1
+2
+SET AUTOCOMMIT = 1;
+START TRANSACTION;
+SELECT * FROM t1;
+id
+1
+2
+COMMIT;
+TRUNCATE TABLE t1;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
+SELECT * FROM t1;
+id
+1
+2
+DELETE FROM t2 WHERE id = 3;
+START TRANSACTION;
+SELECT * FROM t1;
+id
+1
+2
+TRUNCATE TABLE t1;
+ROLLBACK;
+SELECT * FROM t1;
+id
+TRUNCATE TABLE t2;
+DROP TABLE t2;
+DROP TABLE t1;
+#
+# Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation on 5.0
+#
+CREATE TABLE t1 (
+id INT UNSIGNED NOT NULL AUTO_INCREMENT,
+PRIMARY KEY (id)
+) ENGINE=InnoDB;
+CREATE TABLE t2 (
+id INT UNSIGNED NOT NULL AUTO_INCREMENT,
+aid INT UNSIGNED NOT NULL,
+PRIMARY KEY (id),
+FOREIGN KEY (aid) REFERENCES t1 (id)
+) ENGINE=InnoDB;
+CREATE TABLE t3 (
+bid INT UNSIGNED NOT NULL,
+FOREIGN KEY (bid) REFERENCES t2 (id)
+) ENGINE=InnoDB;
+CREATE TABLE t4 (
+a INT
+) ENGINE=InnoDB;
+CREATE TABLE t5 (
+a INT
+) ENGINE=InnoDB;
+INSERT INTO t1 (id) VALUES (1);
+INSERT INTO t2 (id, aid) VALUES (1, 1),(2,1),(3,1),(4,1);
+INSERT INTO t3 (bid) VALUES (1);
+INSERT INTO t4 VALUES (1),(2),(3),(4),(5);
+INSERT INTO t5 VALUES (1);
+DELETE t5 FROM t4 LEFT JOIN t5 ON t4.a= t5.a;
+DELETE t2, t1 FROM t2 INNER JOIN t1 ON (t2.aid = t1.id) WHERE t2.id = 1;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t3`, CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`bid`) REFERENCES `t2` (`id`))
+DELETE t2, t1 FROM t2 INNER JOIN t1 ON (t2.aid = t1.id) WHERE t2.id = 1;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t3`, CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`bid`) REFERENCES `t2` (`id`))
+DELETE IGNORE t2, t1 FROM t2 INNER JOIN t1 ON (t2.aid = t1.id) WHERE t2.id = 1;
+DROP TABLE t3;
+DROP TABLE t2;
+DROP TABLE t1;
+DROP TABLES t4,t5;
+# Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation on 5.0
+# Testing for any side effects of IGNORE on AFTER DELETE triggers used with
+# transactional tables.
+#
+CREATE TABLE t1 (i INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
+CREATE TABLE t2 (a VARCHAR(100)) ENGINE=InnoDB;
+CREATE TABLE t3 (i INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
+CREATE TABLE t4 (i INT NOT NULL PRIMARY KEY, t1i INT,
+FOREIGN KEY (t1i) REFERENCES t1(i))
+ENGINE=InnoDB;
+CREATE TRIGGER trg AFTER DELETE ON t1 FOR EACH ROW
+BEGIN
+SET @b:='EXECUTED TRIGGER';
+INSERT INTO t2 VALUES (@b);
+SET @a:= error_happens_here;
+END||
+SET @b:="";
+SET @a:="";
+INSERT INTO t1 VALUES (1),(2),(3),(4);
+INSERT INTO t3 SELECT * FROM t1;
+** An error in a trigger causes rollback of the statement.
+DELETE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
+ERROR 42S22: Unknown column 'error_happens_here' in 'field list'
+SELECT @a,@b;
+@a @b
+ EXECUTED TRIGGER
+SELECT * FROM t2;
+a
+SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
+i i
+1 1
+2 2
+3 3
+4 4
+** Same happens with the IGNORE option
+DELETE IGNORE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
+ERROR 42S22: Unknown column 'error_happens_here' in 'field list'
+SELECT * FROM t2;
+a
+SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
+i i
+1 1
+2 2
+3 3
+4 4
+**
+** The following is an attempt to demonstrate
+** error handling inside a row iteration.
+**
+DROP TRIGGER trg;
+TRUNCATE TABLE t1;
+TRUNCATE TABLE t2;
+TRUNCATE TABLE t3;
+INSERT INTO t1 VALUES (1),(2),(3),(4);
+INSERT INTO t3 VALUES (1),(2),(3),(4);
+INSERT INTO t4 VALUES (3,3),(4,4);
+CREATE TRIGGER trg AFTER DELETE ON t1 FOR EACH ROW
+BEGIN
+SET @b:= CONCAT('EXECUTED TRIGGER FOR ROW ',CAST(OLD.i AS CHAR));
+INSERT INTO t2 VALUES (@b);
+END||
+** DELETE is prevented by foreign key constrains but errors are silenced.
+** The AFTER trigger isn't fired.
+DELETE IGNORE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
+** Tables are modified by best effort:
+SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
+i i
+3 3
+4 4
+** The AFTER trigger was only executed on successful rows:
+SELECT * FROM t2;
+a
+EXECUTED TRIGGER FOR ROW 1
+EXECUTED TRIGGER FOR ROW 2
+DROP TRIGGER trg;
+**
+** Induce an error midway through an AFTER-trigger
+**
+TRUNCATE TABLE t4;
+TRUNCATE TABLE t1;
+TRUNCATE TABLE t3;
+INSERT INTO t1 VALUES (1),(2),(3),(4);
+INSERT INTO t3 VALUES (1),(2),(3),(4);
+CREATE TRIGGER trg AFTER DELETE ON t1 FOR EACH ROW
+BEGIN
+SET @a:= @a+1;
+IF @a > 2 THEN
+INSERT INTO t4 VALUES (5,5);
+END IF;
+END||
+SET @a:=0;
+** Errors in the trigger causes the statement to abort.
+DELETE IGNORE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
+ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`t1i`) REFERENCES `t1` (`i`))
+SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
+i i
+1 1
+2 2
+3 3
+4 4
+SELECT * FROM t4;
+i t1i
+DROP TRIGGER trg;
+DROP TABLE t4;
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+CREATE TABLE t1 (a INT, b INT, KEY (a)) ENGINE = INNODB;
+CREATE TABLE t2 (a INT KEY, b INT, KEY (b)) ENGINE = INNODB;
+CREATE TABLE t3 (a INT, b INT KEY, KEY (a)) ENGINE = INNODB;
+CREATE TABLE t4 (a INT KEY, b INT, KEY (b)) ENGINE = INNODB;
+INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6);
+INSERT INTO t2 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
+INSERT INTO t3 VALUES (1, 101), (2, 102), (3, 103), (4, 104), (5, 105), (6, 106);
+INSERT INTO t4 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
+UPDATE t1, t2 SET t1.a = t1.a + 100, t2.b = t1.a + 10
+WHERE t1.a BETWEEN 2 AND 4 AND t2.a = t1.b;
+SELECT * FROM t2;
+a b
+1 1
+2 12
+3 13
+4 14
+5 5
+UPDATE t3, t4 SET t3.a = t3.a + 100, t4.b = t3.a + 10
+WHERE t3.a BETWEEN 2 AND 4 AND t4.a = t3.b - 100;
+SELECT * FROM t4;
+a b
+1 1
+2 12
+3 13
+4 14
+5 5
+DROP TABLE t1, t2, t3, t4;
+#
+# Bug#44886: SIGSEGV in test_if_skip_sort_order() -
+# uninitialized variable used as subscript
+#
+CREATE TABLE t1 (a INT, b INT, c INT, d INT, PRIMARY KEY (b), KEY (a,c))
+ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1,1,1,0);
+CREATE TABLE t2 (a INT, b INT, e INT, KEY (e)) ENGINE=InnoDB;
+INSERT INTO t2 VALUES (1,1,2);
+CREATE TABLE t3 (a INT, b INT) ENGINE=MyISAM;
+INSERT INTO t3 VALUES (1, 1);
+SELECT * FROM t1, t2, t3
+WHERE t1.a = t3.a AND (t1.b = t3.b OR t1.d) AND t2.b = t1.b AND t2.e = 2
+GROUP BY t1.b;
+a b c d a b e a b
+1 1 1 0 1 1 2 1 1
+DROP TABLE t1, t2, t3;
+#
+# Bug #45828: Optimizer won't use partial primary key if another
+# index can prevent filesort
+#
+CREATE TABLE `t1` (
+c1 int NOT NULL,
+c2 int NOT NULL,
+c3 int NOT NULL,
+PRIMARY KEY (c1,c2),
+KEY (c3)
+) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (5,2,1246276747);
+INSERT INTO t1 VALUES (2,1,1246281721);
+INSERT INTO t1 VALUES (7,3,1246281756);
+INSERT INTO t1 VALUES (4,2,1246282139);
+INSERT INTO t1 VALUES (3,1,1246282230);
+INSERT INTO t1 VALUES (1,0,1246282712);
+INSERT INTO t1 VALUES (8,3,1246282765);
+INSERT INTO t1 SELECT c1+10,c2+10,c3+10 FROM t1;
+INSERT INTO t1 SELECT c1+100,c2+100,c3+100 from t1;
+INSERT INTO t1 SELECT c1+1000,c2+1000,c3+1000 from t1;
+INSERT INTO t1 SELECT c1+10000,c2+10000,c3+10000 from t1;
+INSERT INTO t1 SELECT c1+100000,c2+100000,c3+100000 from t1;
+INSERT INTO t1 SELECT c1+1000000,c2+1000000,c3+1000000 from t1;
+SELECT * FROM t1 WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
+c1 c2 c3
+EXPLAIN SELECT * FROM t1 WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref PRIMARY,c3 PRIMARY 4 const 1 Using where; Using filesort
+EXPLAIN SELECT * FROM t1 FORCE INDEX (PRIMARY) WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref PRIMARY PRIMARY 4 const 1 Using where; Using filesort
+CREATE TABLE t2 (
+c1 int NOT NULL,
+c2 int NOT NULL,
+c3 int NOT NULL,
+KEY (c1,c2),
+KEY (c3)
+) ENGINE=InnoDB;
+explain SELECT * FROM t2 WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref c1,c3 c1 4 const 1 Using where; Using filesort
+DROP TABLE t1,t2;
+#
+# 36259: Optimizing with ORDER BY
+#
+CREATE TABLE t1 (
+a INT NOT NULL AUTO_INCREMENT,
+b INT NOT NULL,
+c INT NOT NULL,
+d VARCHAR(5),
+e INT NOT NULL,
+PRIMARY KEY (a), KEY i2 (b,c,d)
+) ENGINE=InnoDB;
+INSERT INTO t1 (b,c,d,e) VALUES (1,1,'a',1), (2,2,'b',2);
+INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
+INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
+INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
+INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
+INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
+INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
+EXPLAIN SELECT * FROM t1 WHERE b=1 AND c=1 ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref i2 i2 8 const,const 1 Using where; Using filesort
+EXPLAIN SELECT * FROM t1 FORCE INDEX(i2) WHERE b=1 and c=1 ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref i2 i2 8 const,const 1 Using where; Using filesort
+EXPLAIN SELECT * FROM t1 FORCE INDEX(PRIMARY) WHERE b=1 AND c=1 ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 128 Using where
+DROP TABLE t1;
+#
+# Bug #47963: Wrong results when index is used
+#
+CREATE TABLE t1(
+a VARCHAR(5) NOT NULL,
+b VARCHAR(5) NOT NULL,
+c DATETIME NOT NULL,
+KEY (c)
+) ENGINE=InnoDB;
+INSERT INTO t1 VALUES('TEST', 'TEST', '2009-10-09 00:00:00');
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00' AND c <= '2009-10-09 00:00:00';
+a b c
+TEST TEST 2009-10-09 00:00:00
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00.0' AND c <= '2009-10-09 00:00:00.0';
+a b c
+TEST TEST 2009-10-09 00:00:00
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00.0' AND c <= '2009-10-09 00:00:00';
+a b c
+TEST TEST 2009-10-09 00:00:00
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00' AND c <= '2009-10-09 00:00:00.0';
+a b c
+TEST TEST 2009-10-09 00:00:00
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00.000' AND c <= '2009-10-09 00:00:00.000';
+a b c
+TEST TEST 2009-10-09 00:00:00
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00.00' AND c <= '2009-10-09 00:00:00.001';
+a b c
+TEST TEST 2009-10-09 00:00:00
+SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00.001' AND c <= '2009-10-09 00:00:00.00';
+a b c
+EXPLAIN SELECT * FROM t1 WHERE a = 'TEST' AND
+c >= '2009-10-09 00:00:00.001' AND c <= '2009-10-09 00:00:00.00';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/innodb_mysql_rbk.result b/mysql-test/r/innodb_mysql_rbk.result
new file mode 100644
index 00000000000..21ac4295325
--- /dev/null
+++ b/mysql-test/r/innodb_mysql_rbk.result
@@ -0,0 +1,21 @@
+CREATE TABLE t1(a INT, b INT NOT NULL, PRIMARY KEY (a)) ENGINE=innodb
+DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7);
+START TRANSACTION;
+SELECT * FROM t1 WHERE b=3 LIMIT 1 FOR UPDATE;
+a b
+3 3
+START TRANSACTION;
+UPDATE t1 SET b=b+12 WHERE a > 2 ORDER BY a;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ROLLBACK;
+START TRANSACTION;
+SELECT * FROM t1 WHERE b=3 LIMIT 1 FOR UPDATE;
+a b
+3 3
+START TRANSACTION;
+UPDATE t1 SET b=10 WHERE a > 1 ORDER BY a;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+SELECT * FROM t1 WHERE b = 10;
+a b
+DROP TABLE t1;
diff --git a/mysql-test/r/innodb_notembedded.result b/mysql-test/r/innodb_notembedded.result
index cc13a429dfc..af332aba38a 100644
--- a/mysql-test/r/innodb_notembedded.result
+++ b/mysql-test/r/innodb_notembedded.result
@@ -1,4 +1,6 @@
drop table if exists t1;
+SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
create table t1 (col1 integer primary key, col2 integer) engine=innodb;
insert t1 values (1,100);
create function f1 () returns integer begin
@@ -18,3 +20,4 @@ rollback;
rollback;
drop table t1;
drop function f1;
+SET @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators;
diff --git a/mysql-test/r/innodb_timeout_rollback.result b/mysql-test/r/innodb_timeout_rollback.result
index b25a2bbd815..e2da6ba8af7 100644
--- a/mysql-test/r/innodb_timeout_rollback.result
+++ b/mysql-test/r/innodb_timeout_rollback.result
@@ -1,3 +1,4 @@
+drop table if exists t1;
show variables like 'innodb_rollback_on_timeout';
Variable_name Value
innodb_rollback_on_timeout ON
diff --git a/mysql-test/r/innodb_trx_weight.result b/mysql-test/r/innodb_trx_weight.result
new file mode 100644
index 00000000000..195775f74c8
--- /dev/null
+++ b/mysql-test/r/innodb_trx_weight.result
@@ -0,0 +1 @@
+SET storage_engine=InnoDB;
diff --git a/mysql-test/r/innodb_unsafe_binlog.result b/mysql-test/r/innodb_unsafe_binlog.result
deleted file mode 100644
index 4a4f0e0fae5..00000000000
--- a/mysql-test/r/innodb_unsafe_binlog.result
+++ /dev/null
@@ -1,48 +0,0 @@
-drop table if exists t1,t2;
-create table t1 (id int not null, f_id int not null, f int not null,
-primary key(f_id, id)) engine=innodb;
-create table t2 (id int not null,s_id int not null,s varchar(200),
-primary key(id)) engine=innodb;
-INSERT INTO t1 VALUES (8, 1, 3);
-INSERT INTO t1 VALUES (1, 2, 1);
-INSERT INTO t2 VALUES (1, 0, '');
-INSERT INTO t2 VALUES (8, 1, '');
-commit;
-DELETE ml.* FROM t1 AS ml LEFT JOIN t2 AS mm ON (mm.id=ml.id)
-WHERE mm.id IS NULL;
-select ml.* from t1 as ml left join t2 as mm on (mm.id=ml.id)
-where mm.id is null lock in share mode;
-id f_id f
-drop table t1,t2;
-create table t1 (id int not null, f_id int not null, f int not null,
-primary key(id),key(f_id)) engine=innodb;
-create table t2 (id int not null,s_id int not null,s varchar(200),
-primary key(id),key(s_id)) engine=innodb;
-INSERT INTO t1 VALUES (8, 1, 3);
-INSERT INTO t1 VALUES (1, 2, 1);
-INSERT INTO t2 VALUES (1, 0, '');
-INSERT INTO t2 VALUES (8, 1, '');
-commit;
-delete ml.* from t1 as ml left join t2 as mm on (mm.s_id=ml.f_id) where mm.s is null;
-select ml.* from t1 as ml left join t2 as mm on (mm.s_id=ml.f_id) where mm.s is null lock in share mode;
-id f_id f
-drop table t1,t2;
-create table t1(a int not null, b int, primary key(a)) engine=innodb;
-insert into t1 values(1,1),(2,2),(3,1),(4,2),(5,1),(6,2);
-commit;
-set autocommit = 0;
-select * from t1 lock in share mode;
-a b
-1 1
-2 2
-3 1
-4 2
-5 1
-6 2
-update t1 set b = 5 where b = 1;
-set autocommit = 0;
-select * from t1 where a = 2 and b = 2 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-commit;
-commit;
-drop table t1;
diff --git a/mysql-test/r/insert.result b/mysql-test/r/insert.result
index c98ed104a69..3f91039d592 100644
--- a/mysql-test/r/insert.result
+++ b/mysql-test/r/insert.result
@@ -2,8 +2,8 @@ drop table if exists t1,t2,t3;
create table t1 (a int not null);
insert into t1 values (1);
insert into t1 values (a+2);
-insert into t1 values (a+3);
-insert into t1 values (4),(a+5);
+insert into t1 values (a+3),(a+4);
+insert into t1 values (5),(a+6);
select * from t1;
a
1
@@ -11,6 +11,7 @@ a
3
4
5
+6
drop table t1;
create table t1 (id int not null auto_increment primary key, username varchar(32) not null, unique (username));
insert into t1 values (0,"mysql");
@@ -157,20 +158,20 @@ f_float_3_1_u 0.0
set @value= "1e+1111111111a";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f_double' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_7_2' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_7_2' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_4_3' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_4_3' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_double' at row 1
+Warning 1264 Out of range value for column 'f_float' at row 1
+Warning 1264 Out of range value for column 'f_float' at row 1
+Warning 1264 Out of range value for column 'f_double_7_2' at row 1
+Warning 1264 Out of range value for column 'f_double_7_2' at row 1
+Warning 1264 Out of range value for column 'f_float_4_3' at row 1
+Warning 1264 Out of range value for column 'f_float_4_3' at row 1
+Warning 1264 Out of range value for column 'f_double_u' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number 4
original_value 1e+1111111111a
@@ -185,21 +186,21 @@ f_float_3_1_u 99.9
set @value= "-1e+1111111111a";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f_double' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_7_2' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_7_2' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_4_3' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_4_3' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_double' at row 1
+Warning 1264 Out of range value for column 'f_float' at row 1
+Warning 1264 Out of range value for column 'f_float' at row 1
+Warning 1264 Out of range value for column 'f_double_7_2' at row 1
+Warning 1264 Out of range value for column 'f_double_7_2' at row 1
+Warning 1264 Out of range value for column 'f_float_4_3' at row 1
+Warning 1264 Out of range value for column 'f_float_4_3' at row 1
+Warning 1264 Out of range value for column 'f_double_u' at row 1
+Warning 1264 Out of range value for column 'f_double_u' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number 5
original_value -1e+1111111111a
@@ -218,12 +219,12 @@ ERROR 22007: Illegal double '1e+1111111111' value found during parsing
set @value= 1e+111;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f_float' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_7_2' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_4_3' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float' at row 1
+Warning 1264 Out of range value for column 'f_double_7_2' at row 1
+Warning 1264 Out of range value for column 'f_float_4_3' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number 6
original_value 1e+111
@@ -238,13 +239,13 @@ f_float_3_1_u 99.9
set @value= -1e+111;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f_float' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_7_2' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_4_3' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float' at row 1
+Warning 1264 Out of range value for column 'f_double_7_2' at row 1
+Warning 1264 Out of range value for column 'f_float_4_3' at row 1
+Warning 1264 Out of range value for column 'f_double_u' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number 7
original_value -1e+111
@@ -272,10 +273,10 @@ f_float_3_1_u 1.0
set @value= -1;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f_double_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_double_15_1_u' at row 1
-Warning 1264 Out of range value adjusted for column 'f_float_3_1_u' at row 1
+Warning 1264 Out of range value for column 'f_double_u' at row 1
+Warning 1264 Out of range value for column 'f_float_u' at row 1
+Warning 1264 Out of range value for column 'f_double_15_1_u' at row 1
+Warning 1264 Out of range value for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number 9
original_value -1
@@ -299,6 +300,27 @@ select count(*) from t2;
count(*)
25500
drop table t1,t2,t3;
+create table t1 (a int, b int);
+insert into t1 (a,b) values (a,b);
+insert into t1 SET a=1, b=a+1;
+insert into t1 (a,b) select 1,2;
+INSERT INTO t1 ( a ) SELECT 0 ON DUPLICATE KEY UPDATE a = a + VALUES (a);
+prepare stmt1 from ' replace into t1 (a,a) select 100, ''hundred'' ';
+execute stmt1;
+ERROR 42000: Column 'a' specified twice
+insert into t1 (a,b,b) values (1,1,1);
+ERROR 42000: Column 'b' specified twice
+insert into t1 (a,a) values (1,1,1);
+ERROR 21S01: Column count doesn't match value count at row 1
+insert into t1 (a,a) values (1,1);
+ERROR 42000: Column 'a' specified twice
+insert into t1 SET a=1,b=2,a=1;
+ERROR 42000: Column 'a' specified twice
+insert into t1 (b,b) select 1,2;
+ERROR 42000: Column 'b' specified twice
+INSERT INTO t1 (b,b) SELECT 0,0 ON DUPLICATE KEY UPDATE a = a + VALUES (a);
+ERROR 42000: Column 'b' specified twice
+drop table t1;
create table t1 (id int primary key, data int);
insert into t1 values (1, 1), (2, 2), (3, 3);
select row_count();
@@ -346,6 +368,22 @@ f1 f2
12 NULL
drop view v1;
drop table t1,t2;
+create table t1 (id int primary key auto_increment, data int, unique(data));
+insert ignore into t1 values(NULL,100),(NULL,110),(NULL,120);
+insert ignore into t1 values(NULL,10),(NULL,20),(NULL,110),(NULL,120),(NULL,100),(NULL,90);
+insert ignore into t1 values(NULL,130),(NULL,140),(500,110),(550,120),(450,100),(NULL,150);
+select * from t1 order by id;
+id data
+1 100
+2 110
+3 120
+4 10
+5 20
+6 90
+7 130
+8 140
+9 150
+drop table t1;
DROP TABLE IF EXISTS t1;
DROP FUNCTION IF EXISTS f1;
DROP FUNCTION IF EXISTS f2;
diff --git a/mysql-test/r/insert_notembedded.result b/mysql-test/r/insert_notembedded.result
index 816060b7ec9..ac69cb65972 100644
--- a/mysql-test/r/insert_notembedded.result
+++ b/mysql-test/r/insert_notembedded.result
@@ -105,3 +105,22 @@ DROP VIEW view_target2;
DROP VIEW view_target3;
DROP USER user20989@localhost;
DROP DATABASE meow;
+connection: default
+set low_priority_updates=1;
+drop table if exists t1;
+create table t1 (a int, b int, unique key t1$a (a));
+lock table t1 read;
+connection: update
+set low_priority_updates=1;
+show variables like 'low_priority_updates';
+Variable_name Value
+low_priority_updates ON
+insert into t1 values (1, 2) ON DUPLICATE KEY UPDATE b = 2;;
+connection: select
+select * from t1;
+a b
+connection: default
+select * from t1;
+a b
+drop table t1;
+set low_priority_updates=default;
diff --git a/mysql-test/r/insert_select-binlog.result b/mysql-test/r/insert_select-binlog.result
deleted file mode 100644
index 76f460b1de2..00000000000
--- a/mysql-test/r/insert_select-binlog.result
+++ /dev/null
@@ -1,25 +0,0 @@
-create table t1(a int, unique(a));
-insert into t1 values(2);
-create table t2(a int);
-insert into t2 values(1),(2);
-reset master;
-insert into t1 select * from t2;
-ERROR 23000: Duplicate entry '2' for key 1
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
-master-bin.000001 98 Query 1 192 use `test`; insert into t1 select * from t2
-select * from t1;
-a
-1
-2
-drop table t1, t2;
-create table t1(a int);
-insert into t1 values(1),(1);
-reset master;
-create table t2(unique(a)) select a from t1;
-ERROR 23000: Duplicate entry '1' for key 1
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
-drop table t1;
diff --git a/mysql-test/r/insert_select.result b/mysql-test/r/insert_select.result
index 2b977acdeb1..f12c9a0a61a 100644
--- a/mysql-test/r/insert_select.result
+++ b/mysql-test/r/insert_select.result
@@ -4,7 +4,7 @@ insert into t1 (bandID,payoutID) VALUES (1,6),(2,6),(3,4),(4,9),(5,10),(6,1),(7,
create table t2 (payoutID SMALLINT UNSIGNED NOT NULL PRIMARY KEY);
insert into t2 (payoutID) SELECT DISTINCT payoutID FROM t1;
insert into t2 (payoutID) SELECT payoutID+10 FROM t1;
-ERROR 23000: Duplicate entry '16' for key 1
+ERROR 23000: Duplicate entry '16' for key 'PRIMARY'
insert ignore into t2 (payoutID) SELECT payoutID+10 FROM t1;
select * from t2;
payoutID
@@ -561,7 +561,7 @@ create table t2 (a int not null, b char(10));
insert into t1 values (1,"t1:1"),(3,"t1:3");
insert into t2 values (2,"t2:2"), (3,"t2:3");
insert into t1 select * from t2;
-ERROR 23000: Duplicate entry '3' for key 1
+ERROR 23000: Duplicate entry '3' for key 'PRIMARY'
select * from t1;
a b
1 t1:1
@@ -752,20 +752,6 @@ select * from t1;
f1 f2
1 2
drop table t1;
-create table t1(f1 int primary key auto_increment, f2 int unique);
-insert into t1(f2) values(1);
-select @@identity;
-@@identity
-1
-insert ignore t1(f2) values(1);
-select @@identity;
-@@identity
-0
-insert ignore t1(f2) select 1;
-select @@identity;
-@@identity
-0
-drop table t1;
CREATE TABLE t1 (f1 INT, f2 INT );
CREATE TABLE t2 (f1 INT PRIMARY KEY, f2 INT);
INSERT INTO t1 VALUES (1,1),(2,2),(10,10);
@@ -779,6 +765,11 @@ f1 f2
2 2
10 10
DROP TABLE t1, t2;
+CREATE TABLE t1 ( a INT KEY, b INT );
+INSERT INTO t1 VALUES ( 0, 1 );
+INSERT INTO t1 ( b ) SELECT MAX( b ) FROM t1 WHERE b = 2;
+ERROR 23000: Duplicate entry '0' for key 'PRIMARY'
+DROP TABLE t1;
SET SQL_MODE='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
CREATE TABLE t1 (c VARCHAR(30), INDEX ix_c (c(10)));
CREATE TABLE t2 (d VARCHAR(10));
@@ -850,8 +841,9 @@ SET max_heap_table_size = 16384;
SET @old_myisam_data_pointer_size = @@myisam_data_pointer_size;
SET GLOBAL myisam_data_pointer_size = 2;
INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
+call mtr.add_suppression("mysqld: The table '.*#sql.*' is full");
INSERT IGNORE INTO t1 SELECT t1.a FROM t1,t1 t2,t1 t3,t1 t4,t1 t5,t1 t6,t1 t7;
-ERROR HY000: The table '' is full
+Got one of the listed errors
SET GLOBAL myisam_data_pointer_size = @old_myisam_data_pointer_size;
DROP TABLE t1;
End of 5.0 tests
diff --git a/mysql-test/r/insert_update.result b/mysql-test/r/insert_update.result
index b648531b455..a285810b78b 100644
--- a/mysql-test/r/insert_update.result
+++ b/mysql-test/r/insert_update.result
@@ -26,7 +26,7 @@ a b c
3 4 1020
5 6 130
INSERT t1 VALUES (1,9,70) ON DUPLICATE KEY UPDATE c=c+100000, b=4;
-ERROR 23000: Duplicate entry '4' for key 2
+ERROR 23000: Duplicate entry '4' for key 'b'
SELECT * FROM t1;
a b c
1 2 10010
@@ -57,13 +57,13 @@ a b c VALUES(a)
8 9 60 NULL
2 1 11 NULL
explain extended SELECT *, VALUES(a) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c`,values(`test`.`t1`.`a`) AS `VALUES(a)` from `test`.`t1`
explain extended select * from t1 where values(a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 Using where
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where values(`test`.`t1`.`a`)
DROP TABLE t1;
@@ -132,7 +132,7 @@ a b c
3 4 1020
5 6 130
INSERT t1 SELECT 1,9,70 FROM DUAL ON DUPLICATE KEY UPDATE c=c+100000, b=4;
-ERROR 23000: Duplicate entry '4' for key 2
+ERROR 23000: Duplicate entry '4' for key 'b'
SELECT * FROM t1;
a b c
1 2 10010
@@ -315,7 +315,7 @@ INSERT IGNORE INTO t1 (f1) VALUES ("test1"),("test4")
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);
SELECT LAST_INSERT_ID();
LAST_INSERT_ID()
-1
+2
SELECT * FROM t1;
id f1
1 test1
diff --git a/mysql-test/r/is_embedded.require b/mysql-test/r/is_embedded.require
new file mode 100644
index 00000000000..10594809fe7
--- /dev/null
+++ b/mysql-test/r/is_embedded.require
@@ -0,0 +1,2 @@
+have_embedded
+1
diff --git a/mysql-test/r/join.result b/mysql-test/r/join.result
index b869d1a97b1..77f73532474 100644
--- a/mysql-test/r/join.result
+++ b/mysql-test/r/join.result
@@ -404,7 +404,7 @@ SELECT STRAIGHT_JOIN t2.e FROM t1,t2 WHERE t2.d=1 AND t1.b=t2.e
ORDER BY t1.b, t1.c;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 32 Using temporary; Using filesort
-1 SIMPLE t2 ALL NULL NULL NULL NULL 16 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 16 Using where; Using join buffer
SELECT STRAIGHT_JOIN t2.e FROM t1,t2 WHERE t2.d=1 AND t1.b=t2.e
ORDER BY t1.b, t1.c;
e
@@ -859,4 +859,218 @@ Handler_read_prev 0
Handler_read_rnd 0
Handler_read_rnd_next 5
drop table t1, t2, t3;
+create table t1 (a int);
+insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t2 (a int, b int, filler char(100), key(a), key(b));
+create table t3 (a int, b int, filler char(100), key(a), key(b));
+insert into t2
+select @a:= A.a + 10*(B.a + 10*C.a), @a, 'filler' from t1 A, t1 B, t1 C;
+insert into t3 select * from t2 where a < 800;
+explain select * from t2,t3 where t2.a < 200 and t2.b=t3.b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ALL a,b NULL NULL NULL 1000 Using where
+1 SIMPLE t3 ref b b 5 test.t2.b 1 Using where
+drop table t1, t2, t3;
+create table t1 (a int);
+insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t2 (a int, b int, primary key(a));
+insert into t2 select @v:=A.a+10*B.a, @v from t1 A, t1 B;
+explain select * from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10
+show status like '%cost%';
+Variable_name Value
+Last_query_cost 4.016090
+select 'The cost of accessing t1 (dont care if it changes' '^';
+The cost of accessing t1 (dont care if it changes
+The cost of accessing t1 (dont care if it changes^
+select 'vv: Following query must use ALL(t1), eq_ref(A), eq_ref(B): vv' Z;
+Z
+vv: Following query must use ALL(t1), eq_ref(A), eq_ref(B): vv
+explain select * from t1, t2 A, t2 B where A.a = t1.a and B.a=A.b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10
+1 SIMPLE A eq_ref PRIMARY PRIMARY 4 test.t1.a 1
+1 SIMPLE B eq_ref PRIMARY PRIMARY 4 test.A.b 1
+show status like '%cost%';
+Variable_name Value
+Last_query_cost 24.016090
+select '^^: The above should be ~= 20 + cost(select * from t1). Value less than 20 is an error' Z;
+Z
+^^: The above should be ~= 20 + cost(select * from t1). Value less than 20 is an error
+drop table t1, t2;
+CREATE TABLE t1 (a INT PRIMARY KEY, b INT);
+CREATE TABLE t2 (c INT PRIMARY KEY, d INT);
+INSERT INTO t1 VALUES(1,NULL),(2,NULL),(3,NULL),(4,NULL);
+INSERT INTO t1 SELECT a + 4, b FROM t1;
+INSERT INTO t1 SELECT a + 8, b FROM t1;
+INSERT INTO t1 SELECT a + 16, b FROM t1;
+INSERT INTO t1 SELECT a + 32, b FROM t1;
+INSERT INTO t1 SELECT a + 64, b FROM t1;
+INSERT INTO t2 SELECT a, b FROM t1;
+EXPLAIN SELECT * FROM t1 JOIN t2 ON b=c ORDER BY a LIMIT 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 2
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.b 1
+EXPLAIN SELECT * FROM t1 JOIN t2 ON a=c ORDER BY a LIMIT 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index PRIMARY PRIMARY 4 NULL 2
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.a 1
+SELECT * FROM t1 JOIN t2 ON b=c ORDER BY a LIMIT 2;
+a b c d
+SELECT * FROM t1 JOIN t2 ON a=c ORDER BY a LIMIT 2;
+a b c d
+1 NULL 1 NULL
+2 NULL 2 NULL
+EXPLAIN SELECT * FROM t1 JOIN t2 ON b=c ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 128 Using filesort
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.b 1
+EXPLAIN SELECT * FROM t1 JOIN t2 ON a=c ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 128 Using filesort
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.a 1
+SELECT * FROM t1 JOIN t2 ON b=c ORDER BY a;
+a b c d
+SELECT * FROM t1 JOIN t2 ON a=c ORDER BY a;
+a b c d
+1 NULL 1 NULL
+2 NULL 2 NULL
+3 NULL 3 NULL
+4 NULL 4 NULL
+5 NULL 5 NULL
+6 NULL 6 NULL
+7 NULL 7 NULL
+8 NULL 8 NULL
+9 NULL 9 NULL
+10 NULL 10 NULL
+11 NULL 11 NULL
+12 NULL 12 NULL
+13 NULL 13 NULL
+14 NULL 14 NULL
+15 NULL 15 NULL
+16 NULL 16 NULL
+17 NULL 17 NULL
+18 NULL 18 NULL
+19 NULL 19 NULL
+20 NULL 20 NULL
+21 NULL 21 NULL
+22 NULL 22 NULL
+23 NULL 23 NULL
+24 NULL 24 NULL
+25 NULL 25 NULL
+26 NULL 26 NULL
+27 NULL 27 NULL
+28 NULL 28 NULL
+29 NULL 29 NULL
+30 NULL 30 NULL
+31 NULL 31 NULL
+32 NULL 32 NULL
+33 NULL 33 NULL
+34 NULL 34 NULL
+35 NULL 35 NULL
+36 NULL 36 NULL
+37 NULL 37 NULL
+38 NULL 38 NULL
+39 NULL 39 NULL
+40 NULL 40 NULL
+41 NULL 41 NULL
+42 NULL 42 NULL
+43 NULL 43 NULL
+44 NULL 44 NULL
+45 NULL 45 NULL
+46 NULL 46 NULL
+47 NULL 47 NULL
+48 NULL 48 NULL
+49 NULL 49 NULL
+50 NULL 50 NULL
+51 NULL 51 NULL
+52 NULL 52 NULL
+53 NULL 53 NULL
+54 NULL 54 NULL
+55 NULL 55 NULL
+56 NULL 56 NULL
+57 NULL 57 NULL
+58 NULL 58 NULL
+59 NULL 59 NULL
+60 NULL 60 NULL
+61 NULL 61 NULL
+62 NULL 62 NULL
+63 NULL 63 NULL
+64 NULL 64 NULL
+65 NULL 65 NULL
+66 NULL 66 NULL
+67 NULL 67 NULL
+68 NULL 68 NULL
+69 NULL 69 NULL
+70 NULL 70 NULL
+71 NULL 71 NULL
+72 NULL 72 NULL
+73 NULL 73 NULL
+74 NULL 74 NULL
+75 NULL 75 NULL
+76 NULL 76 NULL
+77 NULL 77 NULL
+78 NULL 78 NULL
+79 NULL 79 NULL
+80 NULL 80 NULL
+81 NULL 81 NULL
+82 NULL 82 NULL
+83 NULL 83 NULL
+84 NULL 84 NULL
+85 NULL 85 NULL
+86 NULL 86 NULL
+87 NULL 87 NULL
+88 NULL 88 NULL
+89 NULL 89 NULL
+90 NULL 90 NULL
+91 NULL 91 NULL
+92 NULL 92 NULL
+93 NULL 93 NULL
+94 NULL 94 NULL
+95 NULL 95 NULL
+96 NULL 96 NULL
+97 NULL 97 NULL
+98 NULL 98 NULL
+99 NULL 99 NULL
+100 NULL 100 NULL
+101 NULL 101 NULL
+102 NULL 102 NULL
+103 NULL 103 NULL
+104 NULL 104 NULL
+105 NULL 105 NULL
+106 NULL 106 NULL
+107 NULL 107 NULL
+108 NULL 108 NULL
+109 NULL 109 NULL
+110 NULL 110 NULL
+111 NULL 111 NULL
+112 NULL 112 NULL
+113 NULL 113 NULL
+114 NULL 114 NULL
+115 NULL 115 NULL
+116 NULL 116 NULL
+117 NULL 117 NULL
+118 NULL 118 NULL
+119 NULL 119 NULL
+120 NULL 120 NULL
+121 NULL 121 NULL
+122 NULL 122 NULL
+123 NULL 123 NULL
+124 NULL 124 NULL
+125 NULL 125 NULL
+126 NULL 126 NULL
+127 NULL 127 NULL
+128 NULL 128 NULL
+DROP TABLE IF EXISTS t1,t2;
End of 5.0 tests.
+CREATE TABLE t1 (f1 int);
+CREATE TABLE t2 (f1 int);
+INSERT INTO t2 VALUES (1);
+CREATE VIEW v1 AS SELECT * FROM t2;
+PREPARE stmt FROM 'UPDATE t2 AS A NATURAL JOIN v1 B SET B.f1 = 1';
+EXECUTE stmt;
+EXECUTE stmt;
+DEALLOCATE PREPARE stmt;
+DROP VIEW v1;
+DROP TABLE t1, t2;
diff --git a/mysql-test/r/join_nested.result b/mysql-test/r/join_nested.result
index daf63579e9c..2bdac08e7fd 100644
--- a/mysql-test/r/join_nested.result
+++ b/mysql-test/r/join_nested.result
@@ -71,10 +71,10 @@ LEFT JOIN
(t3, t4)
ON t2.b=t4.b
WHERE t3.a=1 OR t3.c IS NULL;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t2` left join (`test`.`t3` join `test`.`t4`) on((`test`.`t4`.`b` = `test`.`t2`.`b`)) where ((`test`.`t3`.`a` = 1) or isnull(`test`.`t3`.`c`))
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
@@ -147,11 +147,11 @@ LEFT JOIN
(t3, t4, t5)
ON t2.b=t4.b
WHERE t3.a>1 OR t3.c IS NULL;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2
-1 SIMPLE t5 ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b` from `test`.`t2` left join (`test`.`t3` join `test`.`t4` join `test`.`t5`) on((`test`.`t4`.`b` = `test`.`t2`.`b`)) where ((`test`.`t3`.`a` > 1) or isnull(`test`.`t3`.`c`))
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
@@ -177,11 +177,11 @@ LEFT JOIN
ON t2.b=t4.b
WHERE (t3.a>1 OR t3.c IS NULL) AND
(t5.a<3 OR t5.c IS NULL);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2
-1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00 Using where
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b` from `test`.`t2` left join (`test`.`t3` join `test`.`t4` join `test`.`t5`) on((`test`.`t4`.`b` = `test`.`t2`.`b`)) where (((`test`.`t3`.`a` > 1) or isnull(`test`.`t3`.`c`)) and ((`test`.`t5`.`a` < 3) or isnull(`test`.`t5`.`c`)))
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
@@ -227,10 +227,10 @@ FROM (t6, t7)
LEFT JOIN
t8
ON t7.b=t8.b AND t6.b < 10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3
-1 SIMPLE t8 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using join buffer
+1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select `test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b` from `test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10))) where 1
SELECT t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
@@ -542,16 +542,16 @@ ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
WHERE t0.a=1 AND
t0.b=t1.b AND
(t2.a >= 4 OR t2.c IS NULL);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2
-1 SIMPLE t5 ALL NULL NULL NULL NULL 3
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3
-1 SIMPLE t8 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t8`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t7`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` >= 2)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t5`.`b` = `test`.`t0`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) where ((`test`.`t1`.`b` = `test`.`t0`.`b`) and (`test`.`t0`.`a` = 1) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)))
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
@@ -637,17 +637,17 @@ t0.b=t1.b AND
(t8.a < 1 OR t8.c IS NULL) AND
(t8.b=t9.b OR t8.c IS NULL) AND
(t9.a=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t8 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
Warnings:
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t8`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t7`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` >= 2)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t5`.`b` = `test`.`t0`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t9`.`a` = 1) and (`test`.`t1`.`b` = `test`.`t0`.`b`) and (`test`.`t0`.`a` = 1) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t4`.`b` = `test`.`t3`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t9`.`b` = `test`.`t8`.`b`) or isnull(`test`.`t8`.`c`)))
SELECT t9.a,t9.b
@@ -834,11 +834,11 @@ RIGHT JOIN
t2
ON t3.a=1 AND t2.b=t4.b
WHERE t1.a <= 2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t1` join `test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) where (`test`.`t1`.`a` <= 2)
CREATE INDEX idx_b ON t2(b);
@@ -848,11 +848,11 @@ FROM (t3,t4)
LEFT JOIN
(t1,t2)
ON t3.a=1 AND t3.b=t2.b AND t2.b=t4.b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2
-1 SIMPLE t2 ref idx_b idx_b 5 test.t3.b 2
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
+1 SIMPLE t2 ref idx_b idx_b 5 test.t3.b 2 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t3` join `test`.`t4` left join (`test`.`t1` join `test`.`t2`) on(((`test`.`t3`.`a` = 1) and (`test`.`t3`.`b` = `test`.`t2`.`b`) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) where 1
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
@@ -904,17 +904,17 @@ t0.b=t1.b AND
(t8.a < 1 OR t8.c IS NULL) AND
(t8.b=t9.b OR t8.c IS NULL) AND
(t9.a=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t8 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
Warnings:
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t8`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t7`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` >= 2)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t5`.`b` = `test`.`t0`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t9`.`a` = 1) and (`test`.`t1`.`b` = `test`.`t0`.`b`) and (`test`.`t0`.`a` = 1) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t4`.`b` = `test`.`t3`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t9`.`b` = `test`.`t8`.`b`) or isnull(`test`.`t8`.`c`)))
CREATE INDEX idx_b ON t4(b);
@@ -954,17 +954,17 @@ t0.b=t1.b AND
(t8.a < 1 OR t8.c IS NULL) AND
(t8.b=t9.b OR t8.c IS NULL) AND
(t9.a=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 Using where
-1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 Using where
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t8 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 100.00 Using where
+1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
Warnings:
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t8`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t7`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` >= 2)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t5`.`b` = `test`.`t0`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t9`.`a` = 1) and (`test`.`t1`.`b` = `test`.`t0`.`b`) and (`test`.`t0`.`a` = 1) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t4`.`b` = `test`.`t3`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t9`.`b` = `test`.`t8`.`b`) or isnull(`test`.`t8`.`c`)))
CREATE INDEX idx_b ON t8(b);
@@ -1003,17 +1003,17 @@ t0.b=t1.b AND
(t8.a < 1 OR t8.c IS NULL) AND
(t8.b=t9.b OR t8.c IS NULL) AND
(t9.a=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 Using where
-1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 Using where
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t8 ref idx_b idx_b 5 test.t5.b 2 Using where
-1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 100.00 Using where
+1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t8 ref idx_b idx_b 5 test.t5.b 2 100.00 Using where
+1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
Warnings:
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t8`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t7`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` >= 2)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t5`.`b` = `test`.`t0`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t9`.`a` = 1) and (`test`.`t1`.`b` = `test`.`t0`.`b`) and (`test`.`t0`.`a` = 1) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t4`.`b` = `test`.`t3`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t9`.`b` = `test`.`t8`.`b`) or isnull(`test`.`t8`.`c`)))
CREATE INDEX idx_b ON t1(b);
@@ -1053,17 +1053,17 @@ t0.b=t1.b AND
(t8.a < 1 OR t8.c IS NULL) AND
(t8.b=t9.b OR t8.c IS NULL) AND
(t9.a=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t0 ref idx_a idx_a 5 const 1 Using where
-1 SIMPLE t1 ref idx_b idx_b 5 test.t0.b 2 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 Using where
-1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 Using where
-1 SIMPLE t7 ALL NULL NULL NULL NULL 2 Using where
-1 SIMPLE t6 ALL NULL NULL NULL NULL 3 Using where
-1 SIMPLE t8 ref idx_b idx_b 5 test.t5.b 2 Using where
-1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t0 ref idx_a idx_a 5 const 1 100.00 Using where
+1 SIMPLE t1 ref idx_b idx_b 5 test.t0.b 2 100.00 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 100.00 Using where
+1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
+1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 SIMPLE t8 ref idx_b idx_b 5 test.t5.b 2 100.00 Using where
+1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
Warnings:
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t4`.`b` = `test`.`t2`.`b`) and (`test`.`t3`.`a` = 1))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t8`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t7`.`b` = `test`.`t5`.`b`) and (`test`.`t6`.`b` >= 2)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t5`.`b` = `test`.`t0`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t9`.`a` = 1) and (`test`.`t1`.`b` = `test`.`t0`.`b`) and (`test`.`t0`.`a` = 1) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t4`.`b` = `test`.`t3`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t9`.`b` = `test`.`t8`.`b`) or isnull(`test`.`t8`.`c`)))
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
diff --git a/mysql-test/r/join_outer.result b/mysql-test/r/join_outer.result
index 1366a8fe97a..1e4fc91b8bd 100644
--- a/mysql-test/r/join_outer.result
+++ b/mysql-test/r/join_outer.result
@@ -169,7 +169,7 @@ usr_id uniq_id increment usr2_id c_amount max
3 4 84676 NULL NULL NULL
INSERT INTO t2 VALUES (2,3,3000,6000,0,0,746584,837484,'yes');
INSERT INTO t2 VALUES (2,3,3000,6000,0,0,746584,837484,'yes');
-ERROR 23000: Duplicate entry '2-3' for key 1
+ERROR 23000: Duplicate entry '2-3' for key 'PRIMARY'
INSERT INTO t2 VALUES (7,3,1000,2000,0,0,746294,937484,'yes');
SELECT t1.usr_id,t1.uniq_id,t1.increment,t2.usr2_id,t2.c_amount,t2.max FROM t1 LEFT JOIN t2 ON t2.id = t1.uniq_id WHERE t1.uniq_id = 4 ORDER BY t2.c_amount;
usr_id uniq_id increment usr2_id c_amount max
diff --git a/mysql-test/r/join_outer_innodb.result b/mysql-test/r/join_outer_innodb.result
new file mode 100644
index 00000000000..e8a2d6f668b
--- /dev/null
+++ b/mysql-test/r/join_outer_innodb.result
@@ -0,0 +1,19 @@
+CREATE TABLE t1 (id int(11) NOT NULL PRIMARY KEY, name varchar(20),
+INDEX (name)) ENGINE=InnoDB;
+CREATE TABLE t2 (id int(11) NOT NULL PRIMARY KEY, fkey int(11),
+FOREIGN KEY (fkey) REFERENCES t2(id)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES (1,'A1'),(2,'A2'),(3,'B');
+INSERT INTO t2 VALUES (1,1),(2,2),(3,2),(4,3),(5,3);
+EXPLAIN
+SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
+WHERE t1.name LIKE 'A%';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index PRIMARY,name name 23 NULL 3 Using where; Using index
+1 SIMPLE t2 ref fkey fkey 5 test.t1.id 1 Using where; Using index
+EXPLAIN
+SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
+WHERE t1.name LIKE 'A%' OR FALSE;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index NULL fkey 5 NULL 5 Using index
+1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.fkey 1 Using where
+DROP TABLE t1,t2;
diff --git a/mysql-test/r/key.result b/mysql-test/r/key.result
index 0f1ea46bd61..fcc09a0244d 100644
--- a/mysql-test/r/key.result
+++ b/mysql-test/r/key.result
@@ -127,7 +127,7 @@ primary key (SEQNO, MOTYPEID, MOINSTANCEID, ATTRID, VALUE )
INSERT INTO t1 VALUES (1, 1, 1, 1, 'a');
INSERT INTO t1 VALUES (1, 1, 1, 1, 'b');
INSERT INTO t1 VALUES (1, 1, 1, 1, 'a');
-ERROR 23000: Duplicate entry '1-1-1-1-a' for key 1
+ERROR 23000: Duplicate entry '1-1-1-1-a' for key 'PRIMARY'
drop table t1;
CREATE TABLE t1 (
a tinytext NOT NULL,
@@ -242,8 +242,8 @@ create table t1 (c varchar(30) character set utf8, t text character set utf8, un
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` varchar(30) character set utf8 default NULL,
- `t` text character set utf8,
+ `c` varchar(30) CHARACTER SET utf8 DEFAULT NULL,
+ `t` text CHARACTER SET utf8,
UNIQUE KEY `c` (`c`(2)),
UNIQUE KEY `t` (`t`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
@@ -251,13 +251,13 @@ insert t1 values ('cccc', 'tttt'),
(0xD0B1212223D0B1D0B1D0B1D0B1D0B1, 0xD0B1D0B1212223D0B1D0B1D0B1D0B1),
(0xD0B1222123D0B1D0B1D0B1D0B1D0B1, 0xD0B1D0B1222123D0B1D0B1D0B1D0B1);
insert t1 (c) values ('cc22');
-ERROR 23000: Duplicate entry 'cc22' for key 1
+ERROR 23000: Duplicate entry 'cc22' for key 'c'
insert t1 (t) values ('ttt22');
-ERROR 23000: Duplicate entry 'ttt22' for key 2
+ERROR 23000: Duplicate entry 'ttt22' for key 't'
insert t1 (c) values (0xD0B1212322D0B1D0B1D0B1D0B1D0B1);
-ERROR 23000: Duplicate entry 'б!#"' for key 1
+ERROR 23000: Duplicate entry 'б!#"' for key 'c'
insert t1 (t) values (0xD0B1D0B1212322D0B1D0B1D0B1D0B1);
-ERROR 23000: Duplicate entry 'бб!#"б' for key 2
+ERROR 23000: Duplicate entry 'бб!#"б' for key 't'
select c from t1 where c='cccc';
c
cccc
@@ -368,24 +368,24 @@ create table t1 (a varchar(10), b varchar(10), key(a(10),b(10)));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(10) default NULL,
- `b` varchar(10) default NULL,
+ `a` varchar(10) DEFAULT NULL,
+ `b` varchar(10) DEFAULT NULL,
KEY `a` (`a`,`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify b varchar(20);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(10) default NULL,
- `b` varchar(20) default NULL,
+ `a` varchar(10) DEFAULT NULL,
+ `b` varchar(20) DEFAULT NULL,
KEY `a` (`a`,`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify a varchar(20);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(20) default NULL,
- `b` varchar(20) default NULL,
+ `a` varchar(20) DEFAULT NULL,
+ `b` varchar(20) DEFAULT NULL,
KEY `a` (`a`,`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
@@ -414,6 +414,81 @@ a int(11) NO PRI NULL
b varchar(20) NO MUL NULL
c varchar(20) NO NULL
drop table t1;
+create table t1 (
+c1 int,
+c2 char(12),
+c3 varchar(123),
+c4 timestamp,
+index (c1),
+index i1 (c1),
+index i2 (c2),
+index i3 (c3),
+unique i4 (c4),
+index i5 (c1, c2, c3, c4),
+primary key (c2, c3),
+index (c2, c4));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) DEFAULT NULL,
+ `c2` char(12) NOT NULL DEFAULT '',
+ `c3` varchar(123) NOT NULL DEFAULT '',
+ `c4` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ PRIMARY KEY (`c2`,`c3`),
+ UNIQUE KEY `i4` (`c4`),
+ KEY `c1` (`c1`),
+ KEY `i1` (`c1`),
+ KEY `i2` (`c2`),
+ KEY `i3` (`c3`),
+ KEY `i5` (`c1`,`c2`,`c3`,`c4`),
+ KEY `c2` (`c2`,`c4`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1 drop index c1;
+alter table t1 add index (c1);
+alter table t1 add index (c1);
+alter table t1 drop index i3;
+alter table t1 add index i3 (c3);
+alter table t1 drop index i2, drop index i4;
+alter table t1 add index i2 (c2), add index i4 (c4);
+alter table t1 drop index i2, drop index i4, add index i6 (c2, c4);
+alter table t1 add index i2 (c2), add index i4 (c4), drop index i6;
+alter table t1 drop index i2, drop index i4, add unique i4 (c4);
+alter table t1 add index i2 (c2), drop index i4, add index i4 (c4);
+alter table t1 drop index c2, add index (c2(4),c3(7));
+alter table t1 drop index c2, add index (c2(4),c3(7));
+alter table t1 add primary key (c1, c2), drop primary key;
+alter table t1 drop primary key;
+alter table t1 add primary key (c1, c2), drop primary key;
+ERROR 42000: Can't DROP 'PRIMARY'; check that column/key exists
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) NOT NULL DEFAULT '0',
+ `c2` char(12) NOT NULL DEFAULT '',
+ `c3` varchar(123) NOT NULL DEFAULT '',
+ `c4` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ KEY `i1` (`c1`),
+ KEY `i5` (`c1`,`c2`,`c3`,`c4`),
+ KEY `c1` (`c1`),
+ KEY `c1_2` (`c1`),
+ KEY `i3` (`c3`),
+ KEY `i2` (`c2`),
+ KEY `i4` (`c4`),
+ KEY `c2` (`c2`(4),`c3`(7))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values(1, 'a', 'a', NULL);
+insert into t1 values(1, 'b', 'b', NULL);
+alter table t1 drop index i3, drop index i2, drop index i1;
+alter table t1 add index i3 (c3), add index i2 (c2), add unique index i1 (c1);
+ERROR 23000: Duplicate entry '1' for key 'i1'
+drop table t1;
+CREATE TABLE t1( a TINYINT, KEY(a) ) ENGINE=MyISAM;
+INSERT INTO t1 VALUES( 1 );
+ALTER TABLE t1 DISABLE KEYS;
+EXPLAIN SELECT MAX(a) FROM t1 FORCE INDEX(a);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1
+drop table t1;
CREATE TABLE t1 (
a INTEGER auto_increment PRIMARY KEY,
b INTEGER NOT NULL,
@@ -455,13 +530,6 @@ ORDER BY c.b, c.d
a b c d e f g h i j a b c d
2 2 1 2004-11-30 12:00:00 1 0 0 0 0 0 2 3388000 -553000 NULL
DROP TABLE t1, t2;
-CREATE TABLE t1( a TINYINT, KEY(a) ) ENGINE=MyISAM;
-INSERT INTO t1 VALUES( 1 );
-ALTER TABLE t1 DISABLE KEYS;
-EXPLAIN SELECT MAX(a) FROM t1 FORCE INDEX(a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
-DROP TABLE t1;
create table t1(a int not null, key aa(a),
b char(10) not null, unique key bb(b(1)),
c char(4) not null, unique key cc(c));
@@ -506,4 +574,33 @@ t1 CREATE TABLE `t1` (
KEY `aa` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
-End of 5.0 tests.
+End of 5.0 tests
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a INT PRIMARY KEY AUTO_INCREMENT);
+INSERT INTO t1 VALUES (), (), ();
+SELECT 1 AS c1
+FROM t1
+ORDER BY (
+SELECT 1 AS c2
+FROM t1
+GROUP BY GREATEST(LAST_INSERT_ID(), t1.a) ASC
+LIMIT 1);
+c1
+1
+1
+1
+DROP TABLE t1;
+CREATE TABLE t1 (a INT, b INT, INDEX (a,b));
+INSERT INTO t1 (a, b)
+VALUES
+(1,1), (1,2), (1,3), (1,4), (1,5),
+(2,2), (2,3), (2,1), (3,1), (4,1), (4,2), (4,3), (4,4), (4,5), (4,6);
+EXPLAIN SELECT 1 FROM t1 AS t1_outer WHERE
+(SELECT max(b) FROM t1 GROUP BY a HAVING a < 2) > 12;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+2 SUBQUERY t1 range NULL a 5 NULL 8 Using index for group-by
+SELECT 1 as RES FROM t1 AS t1_outer WHERE
+(SELECT max(b) FROM t1 GROUP BY a HAVING a < 2) > 12;
+RES
+DROP TABLE t1;
diff --git a/mysql-test/r/key_cache.result b/mysql-test/r/key_cache.result
index 9ada5dc0784..08d8059f61b 100644
--- a/mysql-test/r/key_cache.result
+++ b/mysql-test/r/key_cache.result
@@ -276,8 +276,6 @@ Variable_name Value
Key_blocks_unused KEY_BLOCKS_UNUSED
set global keycache2.key_buffer_size=0;
set global keycache3.key_buffer_size=100;
-Warnings:
-Warning 1292 Truncated incorrect key_buffer_size value: '100'
set global keycache3.key_buffer_size=0;
create table t1 (mytext text, FULLTEXT (mytext));
insert t1 values ('aaabbb');
diff --git a/mysql-test/r/key_diff.result b/mysql-test/r/key_diff.result
index c3f4f743967..9d26bee4557 100644
--- a/mysql-test/r/key_diff.result
+++ b/mysql-test/r/key_diff.result
@@ -36,7 +36,7 @@ a a a a
explain select t1.*,t2.* from t1,t1 as t2 where t1.A=t2.B;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a NULL NULL NULL 5
-1 SIMPLE t2 ALL b NULL NULL NULL 4 Using where
+1 SIMPLE t2 ALL b NULL NULL NULL 5 Using where; Using join buffer
select t1.*,t2.* from t1,t1 as t2 where t1.A=t2.B order by binary t1.a,t2.a;
a b a b
A B a a
diff --git a/mysql-test/r/keywords.result b/mysql-test/r/keywords.result
index c14ae584c86..5f338ad6a62 100644
--- a/mysql-test/r/keywords.result
+++ b/mysql-test/r/keywords.result
@@ -16,6 +16,22 @@ select events.binlog from events;
binlog
1
drop table events;
+create procedure p1()
+begin
+declare n int default 2;
+authors: while n > 0 do
+set n = n -1;
+end while authors;
+end|
+create procedure p2()
+begin
+declare n int default 2;
+contributors: while n > 0 do
+set n = n -1;
+end while contributors;
+end|
+drop procedure p1;
+drop procedure p2;
create table t1 (connection int, b int);
create procedure p1()
begin
diff --git a/mysql-test/r/kill.result b/mysql-test/r/kill.result
index 7ddabe74c5f..8b6830d4798 100644
--- a/mysql-test/r/kill.result
+++ b/mysql-test/r/kill.result
@@ -1,3 +1,5 @@
+set @old_concurrent_insert= @@global.concurrent_insert;
+set @@global.concurrent_insert= 0;
drop table if exists t1, t2, t3;
create table t1 (kill_id int);
insert into t1 values(connection_id());
@@ -16,7 +18,7 @@ select 4;
4
drop table t1;
kill (select count(*) from mysql.user);
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select count(*) from mysql.user)' at line 1
+ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
create table t1 (id int primary key);
create table t2 (id int unsigned not null);
insert into t2 select id from t1;
@@ -125,3 +127,15 @@ drop function bug27563;
drop procedure proc27563;
PREPARE stmt FROM 'EXPLAIN SELECT * FROM t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40 WHERE a1=a2 AND a2=a3 AND a3=a4 AND a4=a5 AND a5=a6 AND a6=a7 AND a7=a8 AND a8=a9 AND a9=a10 AND a10=a11 AND a11=a12 AND a12=a13 AND a13=a14 AND a14=a15 AND a15=a16 AND a16=a17 AND a17=a18 AND a18=a19 AND a19=a20 AND a20=a21 AND a21=a22 AND a22=a23 AND a23=a24 AND a24=a25 AND a25=a26 AND a26=a27 AND a27=a28 AND a28=a29 AND a29=a30 AND a30=a31 AND a31=a32 AND a32=a33 AND a33=a34 AND a34=a35 AND a35=a36 AND a36=a37 AND a37=a38 AND a38=a39 AND a39=a40 ';
EXECUTE stmt;
+#
+# Bug#19723: kill of active connection yields different error code
+# depending on platform.
+#
+
+# Connection: con2.
+KILL CONNECTION_ID();
+# CR_SERVER_LOST, CR_SERVER_GONE_ERROR, depending on the timing
+# of close of the connection socket
+SELECT 1;
+Got one of the listed errors
+set @@global.concurrent_insert= @old_concurrent_insert;
diff --git a/mysql-test/r/loaddata.result b/mysql-test/r/loaddata.result
index 6e879114119..1e488b320d7 100644
--- a/mysql-test/r/loaddata.result
+++ b/mysql-test/r/loaddata.result
@@ -1,6 +1,6 @@
drop table if exists t1, t2;
create table t1 (a date, b date, c date not null, d date);
-load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',';
+load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',';
Warnings:
Warning 1265 Data truncated for column 'a' at row 1
Warning 1265 Data truncated for column 'c' at row 1
@@ -8,7 +8,7 @@ Warning 1265 Data truncated for column 'd' at row 1
Warning 1265 Data truncated for column 'a' at row 2
Warning 1265 Data truncated for column 'b' at row 2
Warning 1265 Data truncated for column 'd' at row 2
-load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
+load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
SELECT * from t1;
a b c d
0000-00-00 NULL 0000-00-00 0000-00-00
@@ -16,7 +16,7 @@ a b c d
2003-03-03 2003-03-03 2003-03-03 NULL
2003-03-03 2003-03-03 2003-03-03 NULL
truncate table t1;
-load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
+load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
Warnings:
Warning 1265 Data truncated for column 'c' at row 1
Warning 1265 Data truncated for column 'd' at row 1
@@ -29,7 +29,7 @@ NULL 0000-00-00 0000-00-00 0000-00-00
NULL 2003-03-03 2003-03-03 NULL
drop table t1;
create table t1 (a text, b text);
-load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
+load data infile '../../std_data/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
Warnings:
Warning 1261 Row 3 doesn't contain data for all columns
select concat('|',a,'|'), concat('|',b,'|') from t1;
@@ -41,7 +41,7 @@ Field 3,'Field 4|
|Field 6| | 'Field 7'|
drop table t1;
create table t1 (a int, b char(10));
-load data infile '../std_data_ln/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
+load data infile '../../std_data/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
Warnings:
Warning 1366 Incorrect integer value: 'error ' for column 'a' at row 3
Warning 1262 Row 3 was truncated; it contained more data than there were input columns
@@ -55,7 +55,7 @@ a b
3 row 3
0 1234567890
truncate table t1;
-load data infile '../std_data_ln/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines;
+load data infile '../../std_data/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines;
Warnings:
Warning 1366 Incorrect integer value: '
' for column 'a' at row 4
@@ -79,7 +79,7 @@ id
SET @@SQL_MODE=@OLD_SQL_MODE;
drop table t1;
create table t1 (a varchar(20), b varchar(20));
-load data infile '../std_data_ln/loaddata_dq.dat' into table t1 fields terminated by ',' enclosed by '"' escaped by '"' (a,b);
+load data infile '../../std_data/loaddata_dq.dat' into table t1 fields terminated by ',' enclosed by '"' escaped by '"' (a,b);
select * from t1;
a b
field1 field2
@@ -141,25 +141,25 @@ SELECT t1.id, c1, c2 FROM t1 RIGHT JOIN t2 ON t1.id=t2.id WHERE c1 != c2;
id c1 c2
DROP TABLE t1,t2;
create table t1 (a int default 100, b int, c varchar(60));
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (a, @b) set b=@b+10, c=concat("b=",@b);
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 (a, @b) set b=@b+10, c=concat("b=",@b);
select * from t1;
a b c
NULL 20 b=10
NULL 25 b=15
truncate table t1;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (a, @b) set c= if(a is null,"oops",a);
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 (a, @b) set c= if(a is null,"oops",a);
select * from t1;
a b c
NULL NULL oops
NULL NULL oops
truncate table t1;
set @c:=123;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, b) set c= if(@a is null,@c,b);
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, b) set c= if(@a is null,@c,b);
select * from t1;
a b c
100 10 123
100 15 123
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, @b);
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, @b);
select * from t1;
a b c
100 10 123
@@ -170,25 +170,34 @@ select @a, @b;
@a @b
NULL 15
truncate table t1;
-load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c="Wow";
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 set c=b;
+Warnings:
+Warning 1261 Row 1 doesn't contain data for all columns
+Warning 1261 Row 2 doesn't contain data for all columns
+select * from t1;
+a b c
+NULL 10 10
+NULL 15 15
+truncate table t1;
+load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c="Wow";
select * from t1;
a b c
1 2 Wow
3 4 Wow
5 6 Wow
truncate table t1;
-load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c=concat(a,"+",b,"+",@c,"+",b,"+",if(c is null,"NIL",c));
+load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c=concat(a,"+",b,"+",@c,"+",b,"+",if(c is null,"NIL",c));
select * from t1;
a b c
1 2 1+2+123+2+NIL
3 4 3+4+123+4+NIL
5 6 5+6+123+6+NIL
-load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, @b);
+load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, @b);
ERROR HY000: Can't load value from file with fixed size rows to variable
create table t2 (num int primary key, str varchar(10));
insert into t2 values (10,'Ten'), (15,'Fifteen');
truncate table t1;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@dummy,@n) set a= @n, c= (select str from t2 where num=@n);
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@dummy,@n) set a= @n, c= (select str from t2 where num=@n);
select * from t1;
a b c
10 NULL Ten
@@ -203,7 +212,7 @@ set @@secure_file_priv= 0;
ERROR HY000: Variable 'secure_file_priv' is a read only variable
truncate table t1;
load data infile 'MYSQL_TEST_DIR/t/loaddata.test' into table t1;
-ERROR HY000: The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
+Got one of the listed errors
select * from t1;
a b c
select load_file("MYSQL_TEST_DIR/t/loaddata.test");
@@ -268,7 +277,7 @@ CREATE VIEW v1 AS SELECT * FROM t1;
CREATE VIEW v2 AS SELECT 1 + 2 AS c0, c1, c2 FROM t1;
CREATE VIEW v3 AS SELECT 1 AS d1, 2 AS d2;
-LOAD DATA INFILE '../std_data_ln/bug35469.dat' INTO TABLE v1
+LOAD DATA INFILE '../../std_data/bug35469.dat' INTO TABLE v1
FIELDS ESCAPED BY '\\'
TERMINATED BY ','
ENCLOSED BY '"'
@@ -288,7 +297,7 @@ c1 c2
DELETE FROM t1;
-LOAD DATA INFILE '../std_data_ln/bug35469.dat' INTO TABLE v2
+LOAD DATA INFILE '../../std_data/bug35469.dat' INTO TABLE v2
FIELDS ESCAPED BY '\\'
TERMINATED BY ','
ENCLOSED BY '"'
@@ -308,14 +317,14 @@ c0 c1 c2
DELETE FROM t1;
-LOAD DATA INFILE '../std_data_ln/bug35469.dat' INTO TABLE v2
+LOAD DATA INFILE '../../std_data/bug35469.dat' INTO TABLE v2
FIELDS ESCAPED BY '\\'
TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n' (c0, c2);
ERROR HY000: Invalid column reference (v2.c0) in LOAD DATA
-LOAD DATA INFILE '../std_data_ln/bug35469.dat' INTO TABLE v3
+LOAD DATA INFILE '../../std_data/bug35469.dat' INTO TABLE v3
FIELDS ESCAPED BY '\\'
TERMINATED BY ','
ENCLOSED BY '"'
@@ -448,3 +457,31 @@ LOAD_FILE("MYSQLTEST_VARDIR/tmp/bug37114.txt")
set session sql_mode=@OLD_SQL_MODE;
DROP TABLE t1,t2;
End of 5.0 tests
+CREATE TABLE t1 (a int);
+INSERT INTO t1 VALUES (1);
+SET NAMES latin1;
+SET character_set_filesystem=filename;
+select @@character_set_filesystem;
+@@character_set_filesystem
+filename
+SELECT * INTO OUTFILE 't-1' FROM t1;
+DELETE FROM t1;
+LOAD DATA INFILE 't-1' INTO TABLE t1;
+SELECT * FROM t1;
+a
+1
+DELETE FROM t1;
+SET character_set_filesystem=latin1;
+select @@character_set_filesystem;
+@@character_set_filesystem
+latin1
+LOAD DATA INFILE 't@002d1' INTO TABLE t1;
+SELECT * FROM t1;
+a
+1
+DROP TABLE t1;
+SET character_set_filesystem=default;
+select @@character_set_filesystem;
+@@character_set_filesystem
+binary
+End of 5.1 tests
diff --git a/mysql-test/r/loaddata_autocom_innodb.result b/mysql-test/r/loaddata_autocom_innodb.result
index 10da6b5dde7..c1e6b7f2fba 100644
--- a/mysql-test/r/loaddata_autocom_innodb.result
+++ b/mysql-test/r/loaddata_autocom_innodb.result
@@ -1,8 +1,8 @@
SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1;
-create table t1 (a text, b text);
+create table t1 (id int unsigned not null auto_increment primary key, a text, b text);
start transaction;
-load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
+load data infile 'LOAD_FILE' into table t1 fields terminated by ',' enclosed by '''' (a, b);
Warnings:
Warning 1261 Row 3 doesn't contain data for all columns
commit;
@@ -11,7 +11,7 @@ count(*)
4
truncate table t1;
start transaction;
-load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
+load data infile 'LOAD_FILE' into table t1 fields terminated by ',' enclosed by '''' (a, b);
Warnings:
Warning 1261 Row 3 doesn't contain data for all columns
rollback;
diff --git a/mysql-test/r/loaddata_autocom_ndb.result b/mysql-test/r/loaddata_autocom_ndb.result
deleted file mode 100644
index 94e5f825fa2..00000000000
--- a/mysql-test/r/loaddata_autocom_ndb.result
+++ /dev/null
@@ -1,23 +0,0 @@
-SET SESSION STORAGE_ENGINE = ndbcluster;
-drop table if exists t1;
-create table t1 (a text, b text);
-start transaction;
-load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
-Warnings:
-Warning 1261 Row 3 doesn't contain data for all columns
-commit;
-select count(*) from t1;
-count(*)
-4
-truncate table t1;
-start transaction;
-load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
-Warnings:
-Warning 1261 Row 3 doesn't contain data for all columns
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-select count(*) from t1;
-count(*)
-4
-drop table t1;
diff --git a/mysql-test/r/locale.result b/mysql-test/r/locale.result
new file mode 100644
index 00000000000..89883b070d2
--- /dev/null
+++ b/mysql-test/r/locale.result
@@ -0,0 +1,29 @@
+DROP TABLE IF EXISTS t1;
+Start of 5.4 tests
+#
+# Bug#43207 wrong LC_TIME names for romanian locale
+#
+SET NAMES utf8;
+SET lc_time_names=ro_RO;
+SELECT DATE_FORMAT('2001-01-01', '%w %a %W');
+DATE_FORMAT('2001-01-01', '%w %a %W')
+1 Lu Luni
+SELECT DATE_FORMAT('2001-01-02', '%w %a %W');
+DATE_FORMAT('2001-01-02', '%w %a %W')
+2 Ma Marţi
+SELECT DATE_FORMAT('2001-01-03', '%w %a %W');
+DATE_FORMAT('2001-01-03', '%w %a %W')
+3 Mi Miercuri
+SELECT DATE_FORMAT('2001-01-04', '%w %a %W');
+DATE_FORMAT('2001-01-04', '%w %a %W')
+4 Jo Joi
+SELECT DATE_FORMAT('2001-01-05', '%w %a %W');
+DATE_FORMAT('2001-01-05', '%w %a %W')
+5 Vi Vineri
+SELECT DATE_FORMAT('2001-01-06', '%w %a %W');
+DATE_FORMAT('2001-01-06', '%w %a %W')
+6 Sâ Sâmbătă
+SELECT DATE_FORMAT('2001-01-07', '%w %a %W');
+DATE_FORMAT('2001-01-07', '%w %a %W')
+0 Du Duminică
+End of 5.4 tests
diff --git a/mysql-test/r/lock.result b/mysql-test/r/lock.result
index a5a78ecc986..7ec07fb5273 100644
--- a/mysql-test/r/lock.result
+++ b/mysql-test/r/lock.result
@@ -69,3 +69,128 @@ ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
delete t2 from t1,t2 where t1.a=t2.a;
ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
drop table t1,t2;
+End of 4.1 tests.
+drop table if exists t1;
+create table t1 (a int);
+lock table t1 write;
+flush tables with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables;
+drop table t1;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (i INT);
+LOCK TABLES mysql.time_zone READ, mysql.proc READ, t1 READ;
+UNLOCK TABLES;
+LOCK TABLES mysql.time_zone READ, mysql.proc READ, t1 WRITE;
+UNLOCK TABLES;
+LOCK TABLES mysql.time_zone READ, mysql.proc READ;
+UNLOCK TABLES;
+LOCK TABLES mysql.time_zone WRITE, mysql.proc WRITE;
+UNLOCK TABLES;
+LOCK TABLES mysql.time_zone READ, mysql.proc WRITE, t1 READ;
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
+LOCK TABLES mysql.time_zone WRITE, mysql.proc WRITE, t1 READ;
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
+LOCK TABLES mysql.time_zone WRITE, mysql.proc WRITE, t1 WRITE;
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
+LOCK TABLES mysql.time_zone READ, mysql.proc WRITE;
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
+DROP TABLE t1;
+
+Bug#5719 impossible to lock VIEW
+
+Just covering existing behaviour with tests.
+Consistency has not been found here.
+
+drop view if exists v_bug5719;
+drop table if exists t1, t2, t3;
+create table t1 (a int);
+create temporary table t2 (a int);
+create table t3 (a int);
+create view v_bug5719 as select 1;
+lock table v_bug5719 write;
+select * from t1;
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
+
+Allowed to select from a temporary talbe under LOCK TABLES
+
+select * from t2;
+a
+select * from t3;
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+select * from v_bug5719;
+1
+1
+drop view v_bug5719;
+
+sic: did not left LOCK TABLES mode automatically
+
+select * from t1;
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
+unlock tables;
+create view v_bug5719 as select * from t1;
+lock tables v_bug5719 write;
+select * from v_bug5719;
+a
+
+Allowed to use an underlying table under LOCK TABLES <view>
+
+select * from t1;
+a
+
+Allowed to select from a temporary table under LOCK TABLES
+
+select * from t2;
+a
+select * from t3;
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+drop table t1;
+
+sic: left LOCK TABLES mode
+
+select * from t3;
+a
+select * from v_bug5719;
+ERROR HY000: View 'test.v_bug5719' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+unlock tables;
+drop view v_bug5719;
+
+When limitation to use temporary tables in views is removed, please
+add a test that shows what happens under LOCK TABLES when a view
+references a temporary table, is locked, and the underlying table
+is dropped.
+
+create view v_bug5719 as select * from t2;
+ERROR HY000: View's SELECT refers to a temporary table 't2'
+
+Cleanup.
+
+drop table t2, t3;
+#
+# Bug#39843 DELETE requires write access to table in subquery in where clause
+#
+DROP TABLE IF EXISTS t1,t2;
+CREATE TABLE t1 (
+table1_rowid SMALLINT NOT NULL
+);
+CREATE TABLE t2 (
+table2_rowid SMALLINT NOT NULL
+);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (1);
+LOCK TABLES t1 WRITE, t2 READ;
+# Sub-select should not try to aquire a write lock.
+DELETE FROM t1
+WHERE EXISTS
+(
+SELECT 'x'
+FROM t2
+WHERE t1.table1_rowid = t2.table2_rowid
+) ;
+# While implementing the patch we didn't break old behavior;
+# The following sub-select should still requires a write lock:
+SELECT * FROM t1 WHERE 1 IN (SELECT * FROM t2 FOR UPDATE);
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+UNLOCK TABLES;
+DROP TABLE t1,t2;
+End of 5.1 tests.
diff --git a/mysql-test/r/lock_multi.result b/mysql-test/r/lock_multi.result
index 037b375fe0b..d8768e802ea 100644
--- a/mysql-test/r/lock_multi.result
+++ b/mysql-test/r/lock_multi.result
@@ -13,9 +13,9 @@ insert into t1 values (1);
lock tables t1 read;
update low_priority t1 set n = 4;
select n from t1;
-unlock tables;
n
1
+unlock tables;
drop table t1;
create table t1 (a int, b int);
create table t2 (c int, d int);
@@ -36,6 +36,14 @@ insert t1 select * from t2;
drop table t2;
ERROR 42S02: Table 'test.t2' doesn't exist
drop table t1;
+create table t1 (a int);
+create table t2 (a int);
+lock table t1 write, t2 write, t1 as t1_2 write, t2 as t2_2 write;
+insert t1 select * from t2;
+drop table t2;
+ERROR 42S02: Table 'test.t2' doesn't exist
+drop table t1;
+End of 4.1 tests
create table t1(a int);
lock tables t1 write;
show columns from t1;
@@ -43,14 +51,6 @@ Field Type Null Key Default Extra
a int(11) YES NULL
unlock tables;
drop table t1;
-CREATE DATABASE mysqltest_1;
-FLUSH TABLES WITH READ LOCK;
-DROP DATABASE mysqltest_1;
-DROP DATABASE mysqltest_1;
-ERROR HY000: Can't execute the query because you have a conflicting read lock
-UNLOCK TABLES;
-DROP DATABASE mysqltest_1;
-ERROR HY000: Can't drop database 'mysqltest_1'; database doesn't exist
USE mysql;
LOCK TABLES columns_priv WRITE, db WRITE, host WRITE, user WRITE;
FLUSH TABLES;
@@ -82,57 +82,20 @@ ERROR HY000: Table 't2' was not locked with LOCK TABLES
UNLOCK TABLES;
UNLOCK TABLES;
DROP TABLE t1;
+CREATE DATABASE mysqltest_1;
+FLUSH TABLES WITH READ LOCK;
+DROP DATABASE mysqltest_1;
+DROP DATABASE mysqltest_1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+UNLOCK TABLES;
+DROP DATABASE mysqltest_1;
+ERROR HY000: Can't drop database 'mysqltest_1'; database doesn't exist
create table t1 (f1 int(12) unsigned not null auto_increment, primary key(f1)) engine=innodb;
lock tables t1 write;
-alter table t1 auto_increment=0; alter table t1 auto_increment=0; alter table t1 auto_increment=0; alter table t1 auto_increment=0; alter table t1 auto_increment=0; //
-alter table t1 auto_increment=0; alter table t1 auto_increment=0; alter table t1 auto_increment=0; alter table t1 auto_increment=0; alter table t1 auto_increment=0; //
+alter table t1 auto_increment=0;
+alter table t1 auto_increment=0;
unlock tables;
drop table t1;
-drop table if exists t1;
-create table t1 (a int);
-connection: locker
-lock tables t1 read;
-connection: writer
-create table t2 like t1;
-connection: default
-kill query
-ERROR 70100: Query execution was interrupted
-unlock tables;
-drop table t1;
-CREATE TABLE t1 (
-a int(11) unsigned default NULL,
-b varchar(255) default NULL,
-UNIQUE KEY a (a),
-KEY b (b)
-);
-INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3);
-CREATE TABLE t2 SELECT * FROM t1;
-CREATE TABLE t3 SELECT * FROM t1;
-# test altering of columns that multiupdate doesn't use
-# normal mode
-# PS mode
-# test altering of columns that multiupdate uses
-# normal mode
-# PS mode
-DROP TABLE t1, t2, t3;
-CREATE TABLE t1( a INT, b INT );
-INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4);
-# 1. test regular tables
-# 1.1. test altering of columns that multiupdate doesn't use
-# 1.1.1. normal mode
-# 1.1.2. PS mode
-# 1.2. test altering of columns that multiupdate uses
-# 1.2.1. normal mode
-# 1.2.2. PS mode
-ALTER TABLE t1 ADD COLUMN a INT;
-# 2. test UNIONs
-# 2.1. test altering of columns that multiupdate doesn't use
-# 2.1.1. normal mode
-# 2.1.2. PS mode
-# 2.2. test altering of columns that multiupdate uses
-# 2.2.1. normal mode
-# 2.2.2. PS mode
-DROP TABLE t1;
create table t1 (a int);
create table t2 like t1;
# con1
@@ -188,3 +151,61 @@ unlock tables;
# con1
unlock tables;
drop table t1,t2;
+End of 5.0 tests
+create table t1 (i int);
+lock table t1 read;
+update t1 set i= 10;
+select * from t1;
+kill query ID;
+i
+ERROR 70100: Query execution was interrupted
+unlock tables;
+drop table t1;
+drop table if exists t1;
+create table t1 (a int) ENGINE=MEMORY;
+--> client 2
+handler t1 open;
+ERROR HY000: Table storage engine for 't1' doesn't have this option
+--> client 1
+drop table t1;
+drop table if exists t1;
+create table t1 (i int);
+connection: default
+lock tables t1 write;
+connection: flush
+flush tables with read lock;;
+connection: default
+alter table t1 add column j int;
+connection: insert
+insert into t1 values (1,2);;
+connection: default
+unlock tables;
+connection: flush
+select * from t1;
+i j
+unlock tables;
+select * from t1;
+i j
+1 2
+drop table t1;
+drop table if exists t1;
+create table t1 (i int);
+connection: default
+lock tables t1 write;
+connection: flush
+flush tables with read lock;;
+connection: default
+flush tables;
+unlock tables;
+drop table t1;
+drop table if exists t1,t2;
+create table t1 (a int);
+flush status;
+lock tables t1 read;
+insert into t1 values(1);;
+unlock tables;
+drop table t1;
+select @tlwa < @tlwb;
+@tlwa < @tlwb
+1
+End of 5.1 tests
diff --git a/mysql-test/r/lock_multi_bug38499.result b/mysql-test/r/lock_multi_bug38499.result
index fd0f2138a8d..9b3f57c8e53 100644
--- a/mysql-test/r/lock_multi_bug38499.result
+++ b/mysql-test/r/lock_multi_bug38499.result
@@ -1,3 +1,5 @@
+SET @odl_sync_frm = @@global.sync_frm;
+SET @@global.sync_frm = OFF;
DROP TABLE IF EXISTS t1;
CREATE TABLE t1( a INT, b INT );
INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4);
@@ -17,3 +19,4 @@ ALTER TABLE t1 ADD COLUMN a INT;
# 2.2.1. normal mode
# 2.2.2. PS mode
DROP TABLE t1;
+SET @@global.sync_frm = @odl_sync_frm;
diff --git a/mysql-test/r/lock_multi_bug38691.result b/mysql-test/r/lock_multi_bug38691.result
index 74b9603d8e3..d0aa1c0277c 100644
--- a/mysql-test/r/lock_multi_bug38691.result
+++ b/mysql-test/r/lock_multi_bug38691.result
@@ -1,3 +1,5 @@
+SET @odl_sync_frm = @@global.sync_frm;
+SET @@global.sync_frm = OFF;
DROP TABLE IF EXISTS t1,t2,t3;
CREATE TABLE t1 (
a int(11) unsigned default NULL,
@@ -15,3 +17,4 @@ CREATE TABLE t3 SELECT * FROM t1;
# normal mode
# PS mode
DROP TABLE t1, t2, t3;
+SET @@global.sync_frm = @odl_sync_frm;
diff --git a/mysql-test/r/log_state.result b/mysql-test/r/log_state.result
new file mode 100644
index 00000000000..5c3e3d789a1
--- /dev/null
+++ b/mysql-test/r/log_state.result
@@ -0,0 +1,316 @@
+SET @old_general_log= @@global.general_log;
+SET @old_general_log_file= @@global.general_log_file;
+SET @old_slow_query_log= @@global.slow_query_log;
+SET @old_slow_query_log_file= @@global.slow_query_log_file;
+set global general_log= OFF;
+truncate table mysql.general_log;
+truncate table mysql.slow_log;
+show global variables
+where Variable_name = 'log' or Variable_name = 'log_slow_queries' or
+Variable_name = 'general_log' or Variable_name = 'slow_query_log';
+Variable_name Value
+general_log OFF
+log OFF
+log_slow_queries OFF
+slow_query_log OFF
+flush logs;
+set global general_log= ON;
+create table t1(f1 int);
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST # 1 Query create table t1(f1 int)
+TIMESTAMP USER_HOST # 1 Query select * from mysql.general_log
+set global general_log= OFF;
+drop table t1;
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST # 1 Query create table t1(f1 int)
+TIMESTAMP USER_HOST # 1 Query select * from mysql.general_log
+TIMESTAMP USER_HOST # 1 Query set global general_log= OFF
+set global general_log= ON;
+flush logs;
+show global variables
+where Variable_name = 'log' or Variable_name = 'log_slow_queries' or
+Variable_name = 'general_log' or Variable_name = 'slow_query_log';
+Variable_name Value
+general_log ON
+log ON
+log_slow_queries OFF
+slow_query_log OFF
+# Establish connection con1 (user=root)
+# Switch to connection con1
+set @long_query_time = <long_query_time>;
+set session long_query_time = @long_query_time;
+select sleep(@long_query_time + 1);
+sleep(@long_query_time + 1)
+0
+select * from mysql.slow_log where sql_text NOT LIKE '%slow_log%';
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+# Switch to connection default
+set global slow_query_log= ON;
+# Switch to connection con1
+set session long_query_time = @long_query_time;
+select sleep(@long_query_time + 1);
+sleep(@long_query_time + 1)
+0
+select * from mysql.slow_log where sql_text NOT LIKE '%slow_log%';
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+TIMESTAMP USER_HOST QUERY_TIME 00:00:00 1 0 test 0 0 1 select sleep(@long_query_time + 1)
+# Switch to connection default
+show global variables
+where Variable_name = 'log' or Variable_name = 'log_slow_queries' or
+Variable_name = 'general_log' or Variable_name = 'slow_query_log';
+Variable_name Value
+general_log ON
+log ON
+log_slow_queries ON
+slow_query_log ON
+set global general_log= ON;
+set global general_log= OFF;
+set global general_log= OFF;
+set global slow_query_log= ON;
+set global slow_query_log= OFF;
+set global slow_query_log= OFF;
+set global general_log= ON;
+truncate table mysql.general_log;
+create table t1(f1 int);
+drop table t1;
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST # 1 Query create table t1(f1 int)
+TIMESTAMP USER_HOST # 1 Query drop table t1
+TIMESTAMP USER_HOST # 1 Query select * from mysql.general_log
+set global general_log= OFF;
+truncate table mysql.general_log;
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+set global general_log= ON;
+show global variables
+where Variable_name = 'log' or Variable_name = 'log_slow_queries' or
+Variable_name = 'general_log' or Variable_name = 'slow_query_log';
+Variable_name Value
+general_log ON
+log ON
+log_slow_queries OFF
+slow_query_log OFF
+show variables like 'general_log_file';
+Variable_name Value
+general_log_file #
+show variables like 'slow_query_log_file';
+Variable_name Value
+slow_query_log_file #
+show variables like 'log_output';
+Variable_name Value
+log_output FILE,TABLE
+set global general_log_file='/not existing path/log.master';
+ERROR 42000: Variable 'general_log_file' can't be set to the value of '/not existing path/log.master'
+set global general_log_file='MYSQLTEST_VARDIR';
+ERROR 42000: Variable 'general_log_file' can't be set to the value of 'MYSQLTEST_VARDIR'
+set global general_log_file='';
+ERROR 42000: Variable 'general_log_file' can't be set to the value of ''
+show variables like 'general_log_file';
+Variable_name Value
+general_log_file #
+set global general_log= OFF;
+set global general_log_file='MYSQLTEST_VARDIR/tmp/log.master';
+set global general_log= ON;
+create table t1(f1 int);
+drop table t1;
+set global general_log= OFF;
+set global general_log_file=default;
+set global general_log= ON;
+create table t1(f1 int);
+drop table t1;
+show variables like 'general_log_file';
+Variable_name Value
+general_log_file #
+show variables like 'slow_query_log_file';
+Variable_name Value
+slow_query_log_file #
+set global general_log= default;
+set global slow_query_log= default;
+set global general_log_file= default;
+set global slow_query_log_file= default;
+show variables like 'general_log';
+Variable_name Value
+general_log OFF
+show variables like 'slow_query_log';
+Variable_name Value
+slow_query_log OFF
+set global general_log=ON;
+set global log_output=default;
+show variables like 'log_output';
+Variable_name Value
+log_output FILE
+set global general_log=OFF;
+set global log_output=FILE;
+truncate table mysql.general_log;
+show variables like 'log_output';
+Variable_name Value
+log_output FILE
+set global general_log=ON;
+create table t1(f1 int);
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+set global general_log=OFF;
+set global log_output="FILE,TABLE";
+show variables like 'log_output';
+Variable_name Value
+log_output FILE,TABLE
+set global general_log=ON;
+drop table t1;
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST # 1 Query drop table t1
+TIMESTAMP USER_HOST # 1 Query select * from mysql.general_log
+SET @@global.general_log = @old_general_log;
+SET @@global.general_log_file = @old_general_log_file;
+SET @@global.slow_query_log = @old_slow_query_log;
+SET @@global.slow_query_log_file = @old_slow_query_log_file;
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+FLUSH TABLES WITH READ LOCK;
+SET GLOBAL general_log = OFF;
+SET GLOBAL slow_query_log = OFF;
+UNLOCK TABLES;
+FLUSH TABLES WITH READ LOCK;
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+UNLOCK TABLES;
+SET GLOBAL READ_ONLY = ON;
+SET GLOBAL general_log = OFF;
+SET GLOBAL slow_query_log = OFF;
+SET GLOBAL READ_ONLY = OFF;
+SET GLOBAL READ_ONLY = ON;
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+SET GLOBAL READ_ONLY = OFF;
+SET GLOBAL general_log = @old_general_log;
+SET GLOBAL slow_query_log = @old_slow_query_log;
+SET GLOBAL general_log = ON;
+SHOW VARIABLES LIKE 'general_log';
+Variable_name Value
+general_log ON
+SHOW VARIABLES LIKE 'log';
+Variable_name Value
+log ON
+SELECT @@general_log, @@log;
+@@general_log @@log
+1 1
+SET GLOBAL log = 0;
+Warnings:
+Warning 1287 The syntax '@@log' is deprecated and will be removed in MySQL 7.0. Please use '@@general_log' instead
+SHOW VARIABLES LIKE 'general_log';
+Variable_name Value
+general_log OFF
+SHOW VARIABLES LIKE 'log';
+Variable_name Value
+log OFF
+SELECT @@general_log, @@log;
+@@general_log @@log
+0 0
+SET GLOBAL general_log = 1;
+SHOW VARIABLES LIKE 'general_log';
+Variable_name Value
+general_log ON
+SHOW VARIABLES LIKE 'log';
+Variable_name Value
+log ON
+SELECT @@general_log, @@log;
+@@general_log @@log
+1 1
+SHOW VARIABLES LIKE 'slow_query_log';
+Variable_name Value
+slow_query_log OFF
+SHOW VARIABLES LIKE 'log_slow_queries';
+Variable_name Value
+log_slow_queries OFF
+SELECT @@slow_query_log, @@log_slow_queries;
+@@slow_query_log @@log_slow_queries
+0 0
+SET GLOBAL log_slow_queries = 0;
+Warnings:
+Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '@@slow_query_log' instead
+SHOW VARIABLES LIKE 'slow_query_log';
+Variable_name Value
+slow_query_log OFF
+SHOW VARIABLES LIKE 'log_slow_queries';
+Variable_name Value
+log_slow_queries OFF
+SELECT @@slow_query_log, @@log_slow_queries;
+@@slow_query_log @@log_slow_queries
+0 0
+SET GLOBAL slow_query_log = 1;
+SHOW VARIABLES LIKE 'slow_query_log';
+Variable_name Value
+slow_query_log ON
+SHOW VARIABLES LIKE 'log_slow_queries';
+Variable_name Value
+log_slow_queries ON
+SELECT @@slow_query_log, @@log_slow_queries;
+@@slow_query_log @@log_slow_queries
+1 1
+SET GLOBAL general_log = @old_general_log;
+SET GLOBAL slow_query_log = @old_slow_query_log;
+SET GLOBAL general_log_file= CONCAT('/not existing path/log.maste', 'r');
+ERROR 42000: Variable 'general_log_file' can't be set to the value of '/not existing path/log.master'
+SET GLOBAL general_log_file= NULL;
+ERROR 42000: Variable 'general_log_file' can't be set to the value of 'NULL'
+SET GLOBAL slow_query_log_file= CONCAT('/not existing path/log.maste', 'r');
+ERROR 42000: Variable 'slow_query_log_file' can't be set to the value of '/not existing path/log.master'
+SET GLOBAL slow_query_log_file= NULL;
+ERROR 42000: Variable 'slow_query_log_file' can't be set to the value of 'NULL'
+SET GLOBAL general_log_file= @old_general_log_file;
+SET GLOBAL slow_query_log_file= @old_slow_query_log_file;
+
+# --
+# -- Bug#32748: Inconsistent handling of assignments to
+# -- general_log_file/slow_query_log_file.
+# --
+
+SET GLOBAL general_log_file = 'bug32748.query.log';
+SET GLOBAL slow_query_log_file = 'bug32748.slow.log';
+
+SHOW VARIABLES LIKE '%log_file';
+Variable_name Value
+general_log_file bug32748.query.log
+slow_query_log_file bug32748.slow.log
+
+SET GLOBAL general_log_file = @old_general_log_file;
+SET GLOBAL slow_query_log_file = @old_slow_query_log_file;
+
+# -- End of Bug#32748.
+deprecated:
+SET GLOBAL log = 0;
+Warnings:
+Warning 1287 The syntax '@@log' is deprecated and will be removed in MySQL 7.0. Please use '@@general_log' instead
+SET GLOBAL log_slow_queries = 0;
+Warnings:
+Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '@@slow_query_log' instead
+SET GLOBAL log = DEFAULT;
+Warnings:
+Warning 1287 The syntax '@@log' is deprecated and will be removed in MySQL 7.0. Please use '@@general_log' instead
+SET GLOBAL log_slow_queries = DEFAULT;
+Warnings:
+Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '@@slow_query_log' instead
+not deprecated:
+SELECT @@global.general_log_file INTO @my_glf;
+SELECT @@global.slow_query_log_file INTO @my_sqlf;
+SET GLOBAL general_log = 0;
+SET GLOBAL slow_query_log = 0;
+SET GLOBAL general_log_file = 'WL4403_G.log';
+SET GLOBAL slow_query_log_file = 'WL4403_SQ.log';
+SET GLOBAL general_log_file = @my_glf;
+SET GLOBAL slow_query_log_file = @my_sqlf;
+SET GLOBAL general_log = DEFAULT;
+SET GLOBAL slow_query_log = DEFAULT;
+SET @@global.general_log = @old_general_log;
+SET @@global.general_log_file = @old_general_log_file;
+SET @@global.slow_query_log = @old_slow_query_log;
+SET @@global.slow_query_log_file = @old_slow_query_log_file;
+End of 5.1 tests
+# Close connection con1
+SET global general_log = @old_general_log;
+SET global general_log_file = @old_general_log_file;
+SET global slow_query_log = @old_slow_query_log;
+SET global slow_query_log_file = @old_slow_query_log_file;
diff --git a/mysql-test/r/log_tables-big.result b/mysql-test/r/log_tables-big.result
new file mode 100644
index 00000000000..9b81127c825
--- /dev/null
+++ b/mysql-test/r/log_tables-big.result
@@ -0,0 +1,29 @@
+set session long_query_time=10;
+select get_lock('bug27638', 1);
+get_lock('bug27638', 1)
+1
+set session long_query_time=1;
+truncate table mysql.slow_log;
+select get_lock('bug27638', 2);
+get_lock('bug27638', 2)
+0
+select if (query_time between '00:00:01' and '00:00:10', 'OK', 'WRONG') as qt, sql_text from mysql.slow_log;
+qt sql_text
+OK select get_lock('bug27638', 2)
+truncate table mysql.slow_log;
+select get_lock('bug27638', 60);
+get_lock('bug27638', 60)
+0
+select if (query_time between '00:00:59' and '00:01:10', 'OK', 'WRONG') as qt, sql_text from mysql.slow_log;
+qt sql_text
+OK select get_lock('bug27638', 60)
+truncate table mysql.slow_log;
+select get_lock('bug27638', 101);
+get_lock('bug27638', 101)
+0
+select if (query_time between '00:01:40' and '00:01:50', 'OK', 'WRONG') as qt, sql_text from mysql.slow_log;
+qt sql_text
+OK select get_lock('bug27638', 101)
+select release_lock('bug27638');
+release_lock('bug27638')
+1
diff --git a/mysql-test/r/log_tables.result b/mysql-test/r/log_tables.result
new file mode 100644
index 00000000000..f8321520880
--- /dev/null
+++ b/mysql-test/r/log_tables.result
@@ -0,0 +1,905 @@
+SET @old_general_log_state = @@global.general_log;
+SET @old_log_output= @@global.log_output;
+SET @old_slow_query_log= @@global.slow_query_log;
+SET @old_general_log= @@global.general_log;
+SET @old_long_query_time= @@session.long_query_time;
+use mysql;
+SET @saved_long_query_time = @@long_query_time;
+SET @saved_log_output = @@log_output;
+SET @saved_general_log = @@GLOBAL.general_log;
+SET @saved_slow_query_log = @@GLOBAL.slow_query_log;
+SELECT @saved_long_query_time, @saved_log_output, @saved_general_log, @saved_slow_query_log;
+@saved_long_query_time @saved_log_output @saved_general_log @saved_slow_query_log
+10 FILE,TABLE 1 1
+truncate table general_log;
+select * from general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from general_log
+truncate table slow_log;
+select * from slow_log;
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+truncate table general_log;
+select * from general_log where argument like '%general_log%';
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from general_log where argument like '%general_log%'
+create table join_test (verbose_comment varchar (80), command_type varchar(64));
+insert into join_test values ("User performed a usual SQL query", "Query");
+insert into join_test values ("New DB connection was registered", "Connect");
+insert into join_test values ("Get the table info", "Field List");
+select verbose_comment, user_host, argument
+from mysql.general_log join join_test
+on (mysql.general_log.command_type = join_test.command_type);
+verbose_comment user_host argument
+User performed a usual SQL query USER_HOST select * from general_log where argument like '%general_log%'
+User performed a usual SQL query USER_HOST create table join_test (verbose_comment varchar (80), command_type varchar(64))
+User performed a usual SQL query USER_HOST insert into join_test values ("User performed a usual SQL query", "Query")
+User performed a usual SQL query USER_HOST insert into join_test values ("New DB connection was registered", "Connect")
+User performed a usual SQL query USER_HOST insert into join_test values ("Get the table info", "Field List")
+User performed a usual SQL query USER_HOST select verbose_comment, user_host, argument
+from mysql.general_log join join_test
+on (mysql.general_log.command_type = join_test.command_type)
+drop table join_test;
+flush logs;
+lock tables mysql.general_log WRITE;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.slow_log WRITE;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.general_log READ;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.slow_log READ;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.slow_log READ LOCAL, mysql.general_log READ LOCAL;
+ERROR HY000: You can't use locks with log tables.
+show create table mysql.general_log;
+Table Create Table
+general_log CREATE TABLE `general_log` (
+ `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `thread_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `command_type` varchar(64) NOT NULL,
+ `argument` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log'
+show fields from mysql.general_log;
+Field Type Null Key Default Extra
+event_time timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
+user_host mediumtext NO NULL
+thread_id int(11) NO NULL
+server_id int(10) unsigned NO NULL
+command_type varchar(64) NO NULL
+argument mediumtext NO NULL
+show create table mysql.slow_log;
+Table Create Table
+slow_log CREATE TABLE `slow_log` (
+ `start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `query_time` time NOT NULL,
+ `lock_time` time NOT NULL,
+ `rows_sent` int(11) NOT NULL,
+ `rows_examined` int(11) NOT NULL,
+ `db` varchar(512) NOT NULL,
+ `last_insert_id` int(11) NOT NULL,
+ `insert_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `sql_text` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log'
+show fields from mysql.slow_log;
+Field Type Null Key Default Extra
+start_time timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
+user_host mediumtext NO NULL
+query_time time NO NULL
+lock_time time NO NULL
+rows_sent int(11) NO NULL
+rows_examined int(11) NO NULL
+db varchar(512) NO NULL
+last_insert_id int(11) NO NULL
+insert_id int(11) NO NULL
+server_id int(10) unsigned NO NULL
+sql_text mediumtext NO NULL
+flush logs;
+flush tables;
+SET GLOBAL GENERAL_LOG=ON;
+SET GLOBAL SLOW_QUERY_LOG=ON;
+show open tables;
+Database Table In_use Name_locked
+mysql general_log 0 0
+flush logs;
+show open tables;
+Database Table In_use Name_locked
+mysql general_log 0 0
+flush tables;
+show open tables;
+Database Table In_use Name_locked
+mysql general_log 0 0
+SET GLOBAL GENERAL_LOG=OFF;
+SET GLOBAL SLOW_QUERY_LOG=OFF;
+flush tables;
+show open tables;
+Database Table In_use Name_locked
+SET GLOBAL GENERAL_LOG=ON;
+SET GLOBAL SLOW_QUERY_LOG=ON;
+truncate table mysql.general_log;
+set names binary;
+select _koi8r'' as test;
+test
+
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query set names binary
+TIMESTAMP USER_HOST THREAD_ID 1 Query select _koi8r'\xD4\xC5\xD3\xD4' as test
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from mysql.general_log
+set names utf8;
+truncate table mysql.general_log;
+set names utf8;
+create table bug16905 (s char(15) character set utf8 default 'пусто');
+insert into bug16905 values ('новое');
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query set names utf8
+TIMESTAMP USER_HOST THREAD_ID 1 Query create table bug16905 (s char(15) character set utf8 default 'пусто')
+TIMESTAMP USER_HOST THREAD_ID 1 Query insert into bug16905 values ('новое')
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from mysql.general_log
+drop table bug16905;
+truncate table mysql.slow_log;
+set session long_query_time=1;
+select sleep(2);
+sleep(2)
+0
+select * from mysql.slow_log;
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+TIMESTAMP USER_HOST QUERY_TIME 00:00:00 1 0 mysql 0 0 1 select sleep(2)
+set @@session.long_query_time = @saved_long_query_time;
+alter table mysql.general_log engine=myisam;
+ERROR HY000: You cannot 'ALTER' a log table if logging is enabled
+alter table mysql.slow_log engine=myisam;
+ERROR HY000: You cannot 'ALTER' a log table if logging is enabled
+drop table mysql.general_log;
+ERROR HY000: You cannot 'DROP' a log table if logging is enabled
+drop table mysql.slow_log;
+ERROR HY000: You cannot 'DROP' a log table if logging is enabled
+set global general_log='OFF';
+alter table mysql.slow_log engine=myisam;
+ERROR HY000: You cannot 'ALTER' a log table if logging is enabled
+set global slow_query_log='OFF';
+show create table mysql.general_log;
+Table Create Table
+general_log CREATE TABLE `general_log` (
+ `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `thread_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `command_type` varchar(64) NOT NULL,
+ `argument` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log'
+show create table mysql.slow_log;
+Table Create Table
+slow_log CREATE TABLE `slow_log` (
+ `start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `query_time` time NOT NULL,
+ `lock_time` time NOT NULL,
+ `rows_sent` int(11) NOT NULL,
+ `rows_examined` int(11) NOT NULL,
+ `db` varchar(512) NOT NULL,
+ `last_insert_id` int(11) NOT NULL,
+ `insert_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `sql_text` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log'
+alter table mysql.general_log engine=myisam;
+alter table mysql.slow_log engine=myisam;
+show create table mysql.general_log;
+Table Create Table
+general_log CREATE TABLE `general_log` (
+ `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `thread_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `command_type` varchar(64) NOT NULL,
+ `argument` mediumtext NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='General log'
+show create table mysql.slow_log;
+Table Create Table
+slow_log CREATE TABLE `slow_log` (
+ `start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `query_time` time NOT NULL,
+ `lock_time` time NOT NULL,
+ `rows_sent` int(11) NOT NULL,
+ `rows_examined` int(11) NOT NULL,
+ `db` varchar(512) NOT NULL,
+ `last_insert_id` int(11) NOT NULL,
+ `insert_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `sql_text` mediumtext NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Slow log'
+set global general_log='ON';
+set global slow_query_log='ON';
+select * from mysql.general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query set names utf8
+TIMESTAMP USER_HOST THREAD_ID 1 Query create table bug16905 (s char(15) character set utf8 default 'пусто')
+TIMESTAMP USER_HOST THREAD_ID 1 Query insert into bug16905 values ('новое')
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from mysql.general_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query drop table bug16905
+TIMESTAMP USER_HOST THREAD_ID 1 Query truncate table mysql.slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query set session long_query_time=1
+TIMESTAMP USER_HOST THREAD_ID 1 Query select sleep(2)
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from mysql.slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query set @@session.long_query_time = @saved_long_query_time
+TIMESTAMP USER_HOST THREAD_ID 1 Query alter table mysql.general_log engine=myisam
+TIMESTAMP USER_HOST THREAD_ID 1 Query alter table mysql.slow_log engine=myisam
+TIMESTAMP USER_HOST THREAD_ID 1 Query drop table mysql.general_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query drop table mysql.slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query set global general_log='OFF'
+TIMESTAMP USER_HOST THREAD_ID 1 Query set global slow_query_log='ON'
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from mysql.general_log
+flush logs;
+lock tables mysql.general_log WRITE;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.slow_log WRITE;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.general_log READ;
+ERROR HY000: You can't use locks with log tables.
+lock tables mysql.slow_log READ;
+ERROR HY000: You can't use locks with log tables.
+set global general_log='OFF';
+set global slow_query_log='OFF';
+set @save_storage_engine= @@session.storage_engine;
+set storage_engine= MEMORY;
+alter table mysql.slow_log engine=ndb;
+ERROR HY000: This storage engine cannot be used for log tables"
+alter table mysql.slow_log engine=innodb;
+ERROR HY000: This storage engine cannot be used for log tables"
+alter table mysql.slow_log engine=archive;
+ERROR HY000: This storage engine cannot be used for log tables"
+alter table mysql.slow_log engine=blackhole;
+ERROR HY000: This storage engine cannot be used for log tables"
+set storage_engine= @save_storage_engine;
+drop table mysql.slow_log;
+drop table mysql.general_log;
+drop table mysql.general_log;
+ERROR 42S02: Unknown table 'general_log'
+drop table mysql.slow_log;
+ERROR 42S02: Unknown table 'slow_log'
+use mysql;
+CREATE TABLE `general_log` (
+`event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
+ON UPDATE CURRENT_TIMESTAMP,
+`user_host` mediumtext NOT NULL,
+`thread_id` int(11) NOT NULL,
+`server_id` int(10) unsigned NOT NULL,
+`command_type` varchar(64) NOT NULL,
+`argument` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log';
+CREATE TABLE `slow_log` (
+`start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
+ON UPDATE CURRENT_TIMESTAMP,
+`user_host` mediumtext NOT NULL,
+`query_time` time NOT NULL,
+`lock_time` time NOT NULL,
+`rows_sent` int(11) NOT NULL,
+`rows_examined` int(11) NOT NULL,
+`db` varchar(512) NOT NULL,
+`last_insert_id` int(11) NOT NULL,
+`insert_id` int(11) NOT NULL,
+`server_id` int(10) unsigned NOT NULL,
+`sql_text` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log';
+set global general_log='ON';
+set global slow_query_log='ON';
+use test;
+flush tables with read lock;
+unlock tables;
+use mysql;
+lock tables general_log read local, help_category read local;
+ERROR HY000: You can't use locks with log tables.
+unlock tables;
+SET SESSION long_query_time = 1000;
+drop table if exists mysql.renamed_general_log;
+drop table if exists mysql.renamed_slow_log;
+drop table if exists mysql.general_log_new;
+drop table if exists mysql.slow_log_new;
+use mysql;
+RENAME TABLE general_log TO renamed_general_log;
+ERROR HY000: Cannot rename 'general_log'. When logging enabled, rename to/from log table must rename two tables: the log table to an archive table and another table back to 'general_log'
+RENAME TABLE slow_log TO renamed_slow_log;
+ERROR HY000: Cannot rename 'slow_log'. When logging enabled, rename to/from log table must rename two tables: the log table to an archive table and another table back to 'slow_log'
+truncate table general_log;
+select * from general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from general_log
+truncate table slow_log;
+select * from slow_log;
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+create table general_log_new like general_log;
+rename table general_log TO renamed_general_log, general_log_new TO general_log;
+create table slow_log_new like slow_log;
+rename table slow_log TO renamed_slow_log, slow_log_new TO slow_log;
+rename table general_log TO general_log_new, renamed_general_log TO general_log, slow_log to renamed_slow_log;
+ERROR HY000: Cannot rename 'slow_log'. When logging enabled, rename to/from log table must rename two tables: the log table to an archive table and another table back to 'slow_log'
+select * from general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query create table slow_log_new like slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query rename table slow_log TO renamed_slow_log, slow_log_new TO slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query rename table general_log TO general_log_new, renamed_general_log TO general_log, slow_log to renamed_slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from general_log
+select * from renamed_general_log;
+event_time user_host thread_id server_id command_type argument
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from general_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query truncate table slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query select * from slow_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query create table general_log_new like general_log
+TIMESTAMP USER_HOST THREAD_ID 1 Query rename table general_log TO renamed_general_log, general_log_new TO general_log
+select * from slow_log;
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+select * from renamed_slow_log;
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text
+set global general_log='OFF';
+RENAME TABLE general_log TO general_log2;
+set global slow_query_log='OFF';
+RENAME TABLE slow_log TO slow_log2;
+set global general_log='ON';
+ERROR 42S02: Table 'mysql.general_log' doesn't exist
+set global slow_query_log='ON';
+ERROR 42S02: Table 'mysql.slow_log' doesn't exist
+RENAME TABLE general_log2 TO general_log;
+RENAME TABLE slow_log2 TO slow_log;
+SET SESSION long_query_time = @saved_long_query_time;
+set global general_log='ON';
+set global slow_query_log='ON';
+flush logs;
+flush logs;
+drop table renamed_general_log, renamed_slow_log;
+use test;
+use mysql;
+repair table general_log;
+Table Op Msg_type Msg_text
+mysql.general_log repair status OK
+repair table slow_log;
+Table Op Msg_type Msg_text
+mysql.slow_log repair status OK
+create table general_log_new like general_log;
+create table slow_log_new like slow_log;
+show tables like "%log%";
+Tables_in_mysql (%log%)
+general_log
+general_log_new
+ndb_binlog_index
+slow_log
+slow_log_new
+drop table slow_log_new, general_log_new;
+use test;
+SET GLOBAL LOG_OUTPUT = 'TABLE';
+SET GLOBAL general_log = 0;
+FLUSH LOGS;
+TRUNCATE TABLE mysql.general_log;
+ALTER TABLE mysql.general_log ENGINE = MyISAM;
+ALTER TABLE mysql.general_log
+ADD COLUMN seq BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY;
+SET GLOBAL general_log = 1;
+FLUSH LOGS;
+SELECT * FROM mysql.general_log;
+event_time user_host thread_id server_id command_type argument seq
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query FLUSH LOGS 1
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT * FROM mysql.general_log 2
+SELECT * FROM mysql.general_log;
+event_time user_host thread_id server_id command_type argument seq
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query FLUSH LOGS 1
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT * FROM mysql.general_log 2
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT * FROM mysql.general_log 3
+SELECT "My own query 1";
+My own query 1
+My own query 1
+SELECT "My own query 2";
+My own query 2
+My own query 2
+SELECT * FROM mysql.general_log;
+event_time user_host thread_id server_id command_type argument seq
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query FLUSH LOGS 1
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT * FROM mysql.general_log 2
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT * FROM mysql.general_log 3
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT "My own query 1" 4
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT "My own query 2" 5
+EVENT_TIME USER_HOST THREAD_ID SERVER_ID Query SELECT * FROM mysql.general_log 6
+SET GLOBAL general_log = 0;
+FLUSH LOGS;
+ALTER TABLE mysql.general_log DROP COLUMN seq;
+ALTER TABLE mysql.general_log ENGINE = CSV;
+SET GLOBAL slow_query_log = 0;
+FLUSH LOGS;
+TRUNCATE TABLE mysql.slow_log;
+ALTER TABLE mysql.slow_log ENGINE = MyISAM;
+ALTER TABLE mysql.slow_log
+ADD COLUMN seq BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY;
+SET SESSION long_query_time = 1;
+SET GLOBAL slow_query_log = 1;
+FLUSH LOGS;
+SELECT "My own slow query", sleep(2);
+My own slow query sleep(2)
+My own slow query 0
+SELECT "My own slow query", sleep(2);
+My own slow query sleep(2)
+My own slow query 0
+SELECT "My own slow query", sleep(2);
+My own slow query sleep(2)
+My own slow query 0
+SELECT "My own slow query", sleep(2);
+My own slow query sleep(2)
+My own slow query 0
+SELECT * FROM mysql.slow_log WHERE seq >= 2 LIMIT 3;
+start_time user_host query_time lock_time rows_sent rows_examined db last_insert_id insert_id server_id sql_text seq
+START_TIME USER_HOST QUERY_TIME 00:00:00 1 0 test 0 0 1 SELECT "My own slow query", sleep(2) 2
+START_TIME USER_HOST QUERY_TIME 00:00:00 1 0 test 0 0 1 SELECT "My own slow query", sleep(2) 3
+START_TIME USER_HOST QUERY_TIME 00:00:00 1 0 test 0 0 1 SELECT "My own slow query", sleep(2) 4
+SET GLOBAL slow_query_log = 0;
+SET SESSION long_query_time =@saved_long_query_time;
+FLUSH LOGS;
+ALTER TABLE mysql.slow_log DROP COLUMN seq;
+ALTER TABLE mysql.slow_log ENGINE = CSV;
+SET GLOBAL general_log = @old_general_log;
+SET GLOBAL slow_query_log = @old_slow_query_log;
+drop procedure if exists proc25422_truncate_slow;
+drop procedure if exists proc25422_truncate_general;
+drop procedure if exists proc25422_alter_slow;
+drop procedure if exists proc25422_alter_general;
+use test//
+create procedure proc25422_truncate_slow (loops int)
+begin
+declare v1 int default 0;
+declare continue handler for sqlexception /* errors from truncate */
+begin end;
+while v1 < loops do
+truncate mysql.slow_log;
+set v1 = v1 + 1;
+end while;
+end//
+create procedure proc25422_truncate_general (loops int)
+begin
+declare v1 int default 0;
+declare continue handler for sqlexception /* errors from truncate */
+begin end;
+while v1 < loops do
+truncate mysql.general_log;
+set v1 = v1 + 1;
+end while;
+end//
+create procedure proc25422_alter_slow (loops int)
+begin
+declare v1 int default 0;
+declare ER_BAD_LOG_STATEMENT condition for 1575;
+declare continue handler for ER_BAD_LOG_STATEMENT begin end;
+while v1 < loops do
+set @old_log_state = @@global.slow_query_log;
+set global slow_query_log = 'OFF';
+alter table mysql.slow_log engine = CSV;
+set global slow_query_log = @old_log_state;
+set v1 = v1 + 1;
+end while;
+end//
+create procedure proc25422_alter_general (loops int)
+begin
+declare v1 int default 0;
+declare ER_BAD_LOG_STATEMENT condition for 1575;
+declare continue handler for ER_BAD_LOG_STATEMENT begin end;
+while v1 < loops do
+set @old_log_state = @@global.general_log;
+set global general_log = 'OFF';
+alter table mysql.general_log engine = CSV;
+set global general_log = @old_log_state;
+set v1 = v1 + 1;
+end while;
+end//
+set @iterations=100;
+"Serial test (proc25422_truncate_slow)"
+call proc25422_truncate_slow(@iterations);
+"Serial test (proc25422_truncate_general)"
+call proc25422_truncate_general(@iterations);
+"Serial test (proc25422_alter_slow)"
+call proc25422_alter_slow(@iterations);
+"Serial test (proc25422_alter_general)"
+call proc25422_alter_general(@iterations);
+"Parallel test"
+call proc25422_truncate_slow(@iterations);
+call proc25422_truncate_slow(@iterations);
+call proc25422_truncate_general(@iterations);
+call proc25422_truncate_general(@iterations);
+call proc25422_alter_slow(@iterations);
+call proc25422_alter_slow(@iterations);
+call proc25422_alter_general(@iterations);
+call proc25422_alter_general(@iterations);
+drop procedure proc25422_truncate_slow;
+drop procedure proc25422_truncate_general;
+drop procedure proc25422_alter_slow;
+drop procedure proc25422_alter_general;
+FLUSH TABLE mysql.general_log;
+show warnings;
+Level Code Message
+FLUSH TABLE mysql.slow_log;
+show warnings;
+Level Code Message
+DROP TABLE IF EXISTS `db_17876.slow_log_data`;
+DROP TABLE IF EXISTS `db_17876.general_log_data`;
+DROP PROCEDURE IF EXISTS `db_17876.archiveSlowLog`;
+DROP PROCEDURE IF EXISTS `db_17876.archiveGeneralLog`;
+DROP DATABASE IF EXISTS `db_17876`;
+CREATE DATABASE db_17876;
+CREATE TABLE `db_17876.slow_log_data` (
+`start_time` timestamp default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+`user_host` mediumtext ,
+`query_time` time ,
+`lock_time` time ,
+`rows_sent` int(11) ,
+`rows_examined` int(11) ,
+`db` varchar(512) default NULL,
+`last_insert_id` int(11) default NULL,
+`insert_id` int(11) default NULL,
+`server_id` int(11) default NULL,
+`sql_text` mediumtext
+);
+CREATE TABLE `db_17876.general_log_data` (
+`event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+`user_host` mediumtext,
+`thread_id` int(11) DEFAULT NULL,
+`server_id` int(11) DEFAULT NULL,
+`command_type` varchar(64) DEFAULT NULL,
+`argument` mediumtext
+);
+CREATE procedure `db_17876.archiveSlowLog`()
+BEGIN
+DECLARE start_time, query_time, lock_time CHAR(20);
+DECLARE user_host MEDIUMTEXT;
+DECLARE rows_set, rows_examined, last_insert_id, insert_id, server_id INT;
+DECLARE dbname MEDIUMTEXT;
+DECLARE sql_text BLOB;
+DECLARE done INT DEFAULT 0;
+DECLARE ER_SP_FETCH_NO_DATA CONDITION for 1329;
+DECLARE cur1 CURSOR FOR SELECT * FROM mysql.slow_log;
+OPEN cur1;
+REPEAT
+BEGIN
+BEGIN
+DECLARE CONTINUE HANDLER FOR ER_SP_FETCH_NO_DATA SET done = 1;
+FETCH cur1 INTO
+start_time, user_host, query_time, lock_time,
+rows_set, rows_examined, dbname, last_insert_id,
+insert_id, server_id, sql_text;
+END;
+IF NOT done THEN
+BEGIN
+INSERT INTO
+`db_17876.slow_log_data`
+ VALUES(start_time, user_host, query_time, lock_time, rows_set, rows_examined,
+dbname, last_insert_id, insert_id, server_id, sql_text);
+END;
+END IF;
+END;
+UNTIL done END REPEAT;
+CLOSE cur1;
+TRUNCATE mysql.slow_log;
+END //
+CREATE procedure `db_17876.archiveGeneralLog`()
+BEGIN
+DECLARE event_time CHAR(20);
+DECLARE user_host, argument MEDIUMTEXT;
+DECLARE thread_id, server_id INT;
+DECLARE sql_text BLOB;
+DECLARE done INT DEFAULT 0;
+DECLARE command_type VARCHAR(64);
+DECLARE ER_SP_FETCH_NO_DATA CONDITION for 1329;
+DECLARE cur1 CURSOR FOR SELECT * FROM mysql.general_log;
+OPEN cur1;
+REPEAT
+BEGIN
+BEGIN
+DECLARE CONTINUE HANDLER FOR ER_SP_FETCH_NO_DATA SET done = 1;
+FETCH cur1 INTO
+event_time, user_host, thread_id, server_id,
+command_type, argument;
+END;
+IF NOT done THEN
+BEGIN
+INSERT INTO
+`db_17876.general_log_data`
+ VALUES(event_time, user_host, thread_id, server_id,
+command_type, argument);
+END;
+END IF;
+END;
+UNTIL done END REPEAT;
+CLOSE cur1;
+TRUNCATE mysql.general_log;
+END //
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+select "put something into general_log";
+put something into general_log
+put something into general_log
+select "... and something more ...";
+... and something more ...
+... and something more ...
+call `db_17876.archiveSlowLog`();
+call `db_17876.archiveGeneralLog`();
+SET GLOBAL general_log = OFF;
+SET GLOBAL slow_query_log = OFF;
+call `db_17876.archiveSlowLog`();
+call `db_17876.archiveGeneralLog`();
+DROP TABLE `db_17876.slow_log_data`;
+DROP TABLE `db_17876.general_log_data`;
+DROP PROCEDURE IF EXISTS `db_17876.archiveSlowLog`;
+DROP PROCEDURE IF EXISTS `db_17876.archiveGeneralLog`;
+DROP DATABASE IF EXISTS `db_17876`;
+SET GLOBAL general_log = @old_general_log;
+SET GLOBAL slow_query_log = @old_slow_query_log;
+select CONNECTION_ID() into @thread_id;
+truncate table mysql.general_log;
+set global general_log = on;
+set @lparam = "000 001 002 003 004 005 006 007 008 009"
+ "010 011 012 013 014 015 016 017 018 019"
+ "020 021 022 023 024 025 026 027 028 029"
+ "030 031 032 033 034 035 036 037 038 039"
+ "040 041 042 043 044 045 046 047 048 049"
+ "050 051 052 053 054 055 056 057 058 059"
+ "060 061 062 063 064 065 066 067 068 069"
+ "070 071 072 073 074 075 076 077 078 079"
+ "080 081 082 083 084 085 086 087 088 089"
+ "090 091 092 093 094 095 096 097 098 099"
+ "100 101 102 103 104 105 106 107 108 109"
+ "110 111 112 113 114 115 116 117 118 119"
+ "120 121 122 123 124 125 126 127 128 129"
+ "130 131 132 133 134 135 136 137 138 139"
+ "140 141 142 143 144 145 146 147 148 149"
+ "150 151 152 153 154 155 156 157 158 159"
+ "160 161 162 163 164 165 166 167 168 169"
+ "170 171 172 173 174 175 176 177 178 179"
+ "180 181 182 183 184 185 186 187 188 189"
+ "190 191 192 193 194 195 196 197 198 199"
+ "200 201 202 203 204 205 206 207 208 209"
+ "210 211 212 213 214 215 216 217 218 219"
+ "220 221 222 223 224 225 226 227 228 229"
+ "230 231 232 233 234 235 236 237 238 239"
+ "240 241 242 243 244 245 246 247 248 249"
+ "250 251 252 253 254 255 256 257 258 259"
+ "260 261 262 263 264 265 266 267 268 269"
+ "270 271 272 273 274 275 276 277 278 279"
+ "280 281 282 283 284 285 286 287 288 289"
+ "290 291 292 293 294 295 296 297 298 299"
+ "300 301 302 303 304 305 306 307 308 309"
+ "310 311 312 313 314 315 316 317 318 319"
+ "320 321 322 323 324 325 326 327 328 329"
+ "330 331 332 333 334 335 336 337 338 339"
+ "340 341 342 343 344 345 346 347 348 349"
+ "350 351 352 353 354 355 356 357 358 359"
+ "360 361 362 363 364 365 366 367 368 369"
+ "370 371 372 373 374 375 376 377 378 379"
+ "380 381 382 383 384 385 386 387 388 389"
+ "390 391 392 393 394 395 396 397 398 399"
+ "400 401 402 403 404 405 406 407 408 409"
+ "410 411 412 413 414 415 416 417 418 419"
+ "420 421 422 423 424 425 426 427 428 429"
+ "430 431 432 433 434 435 436 437 438 439"
+ "440 441 442 443 444 445 446 447 448 449"
+ "450 451 452 453 454 455 456 457 458 459"
+ "460 461 462 463 464 465 466 467 468 469"
+ "470 471 472 473 474 475 476 477 478 479"
+ "480 481 482 483 484 485 486 487 488 489"
+ "490 491 492 493 494 495 496 497 498 499"
+ "500 501 502 503 504 505 506 507 508 509"
+ "510 511 512 513 514 515 516 517 518 519"
+ "520 521 522 523 524 525 526 527 528 529"
+ "530 531 532 533 534 535 536 537 538 539"
+ "540 541 542 543 544 545 546 547 548 549"
+ "550 551 552 553 554 555 556 557 558 559"
+ "560 561 562 563 564 565 566 567 568 569"
+ "570 571 572 573 574 575 576 577 578 579"
+ "580 581 582 583 584 585 586 587 588 589"
+ "590 591 592 593 594 595 596 597 598 599"
+ "600 601 602 603 604 605 606 607 608 609"
+ "610 611 612 613 614 615 616 617 618 619"
+ "620 621 622 623 624 625 626 627 628 629"
+ "630 631 632 633 634 635 636 637 638 639"
+ "640 641 642 643 644 645 646 647 648 649"
+ "650 651 652 653 654 655 656 657 658 659"
+ "660 661 662 663 664 665 666 667 668 669"
+ "670 671 672 673 674 675 676 677 678 679"
+ "680 681 682 683 684 685 686 687 688 689"
+ "690 691 692 693 694 695 696 697 698 699"
+ "700 701 702 703 704 705 706 707 708 709"
+ "710 711 712 713 714 715 716 717 718 719"
+ "720 721 722 723 724 725 726 727 728 729"
+ "730 731 732 733 734 735 736 737 738 739"
+ "740 741 742 743 744 745 746 747 748 749"
+ "750 751 752 753 754 755 756 757 758 759"
+ "760 761 762 763 764 765 766 767 768 769"
+ "770 771 772 773 774 775 776 777 778 779"
+ "780 781 782 783 784 785 786 787 788 789"
+ "790 791 792 793 794 795 796 797 798 799"
+ "800 801 802 803 804 805 806 807 808 809"
+ "810 811 812 813 814 815 816 817 818 819"
+ "820 821 822 823 824 825 826 827 828 829"
+ "830 831 832 833 834 835 836 837 838 839"
+ "840 841 842 843 844 845 846 847 848 849"
+ "850 851 852 853 854 855 856 857 858 859"
+ "860 861 862 863 864 865 866 867 868 869"
+ "870 871 872 873 874 875 876 877 878 879"
+ "880 881 882 883 884 885 886 887 888 889"
+ "890 891 892 893 894 895 896 897 898 899"
+ "900 901 902 903 904 905 906 907 908 909"
+ "910 911 912 913 914 915 916 917 918 919"
+ "920 921 922 923 924 925 926 927 928 929"
+ "930 931 932 933 934 935 936 937 938 939"
+ "940 941 942 943 944 945 946 947 948 949"
+ "950 951 952 953 954 955 956 957 958 959"
+ "960 961 962 963 964 965 966 967 968 969"
+ "970 971 972 973 974 975 976 977 978 979"
+ "980 981 982 983 984 985 986 987 988 989"
+ "990 991 992 993 994 995 996 997 998 999";
+prepare long_query from "select ? as long_query";
+execute long_query using @lparam;
+set global general_log = off;
+select command_type, argument from mysql.general_log where thread_id = @thread_id;
+command_type argument
+Query set global general_log = on
+Query set @lparam = "000 001 002 003 004 005 006 007 008 009"
+ "010 011 012 013 014 015 016 017 018 019"
+ "020 021 022 023 024 025 026 027 028 029"
+ "030 031 032 033 034 035 036 037 038 039"
+ "040 041 042 043 044 045 046 047 048 049"
+ "050 051 052 053 054 055 056 057 058 059"
+ "060 061 062 063 064 065 066 067 068 069"
+ "070 071 072 073 074 075 076 077 078 079"
+ "080 081 082 083 084 085 086 087 088 089"
+ "090 091 092 093 094 095 096 097 098 099"
+ "100 101 102 103 104 105 106 107 108 109"
+ "110 111 112 113 114 115 116 117 118 119"
+ "120 121 122 123 124 125 126 127 128 129"
+ "130 131 132 133 134 135 136 137 138 139"
+ "140 141 142 143 144 145 146 147 148 149"
+ "150 151 152 153 154 155 156 157 158 159"
+ "160 161 162 163 164 165 166 167 168 169"
+ "170 171 172 173 174 175 176 177 178 179"
+ "180 181 182 183 184 185 186 187 188 189"
+ "190 191 192 193 194 195 196 197 198 199"
+ "200 201 202 203 204 205 206 207 208 209"
+ "210 211 212 213 214 215 216 217 218 219"
+ "220 221 222 223 224 225 226 227 228 229"
+ "230 231 232 233 234 235 236 237 238 239"
+ "240 241 242 243 244 245 246 247 248 249"
+ "250 251 252 253 254 255 256 257 258 259"
+ "260 261 262 263 264 265 266 267 268 269"
+ "270 271 272 273 274 275 276 277 278 279"
+ "280 281 282 283 284 285 286 287 288 289"
+ "290 291 292 293 294 295 296 297 298 299"
+ "300 301 302 303 304 305 306 307 308 309"
+ "310 311 312 313 314 315 316 317 318 319"
+ "320 321 322 323 324 325 326 327 328 329"
+ "330 331 332 333 334 335 336 337 338 339"
+ "340 341 342 343 344 345 346 347 348 349"
+ "350 351 352 353 354 355 356 357 358 359"
+ "360 361 362 363 364 365 366 367 368 369"
+ "370 371 372 373 374 375 376 377 378 379"
+ "380 381 382 383 384 385 386 387 388 389"
+ "390 391 392 393 394 395 396 397 398 399"
+ "400 401 402 403 404 405 406 407 408 409"
+ "410 411 412 413 414 415 416 417 418 419"
+ "420 421 422 423 424 425 426 427 428 429"
+ "430 431 432 433 434 435 436 437 438 439"
+ "440 441 442 443 444 445 446 447 448 449"
+ "450 451 452 453 454 455 456 457 458 459"
+ "460 461 462 463 464 465 466 467 468 469"
+ "470 471 472 473 474 475 476 477 478 479"
+ "480 481 482 483 484 485 486 487 488 489"
+ "490 491 492 493 494 495 496 497 498 499"
+ "500 501 502 503 504 505 506 507 508 509"
+ "510 511 512 513 514 515 516 517 518 519"
+ "520 521 522 523 524 525 526 527 528 529"
+ "530 531 532 533 534 535 536 537 538 539"
+ "540 541 542 543 544 545 546 547 548 549"
+ "550 551 552 553 554 555 556 557 558 559"
+ "560 561 562 563 564 565 566 567 568 569"
+ "570 571 572 573 574 575 576 577 578 579"
+ "580 581 582 583 584 585 586 587 588 589"
+ "590 591 592 593 594 595 596 597 598 599"
+ "600 601 602 603 604 605 606 607 608 609"
+ "610 611 612 613 614 615 616 617 618 619"
+ "620 621 622 623 624 625 626 627 628 629"
+ "630 631 632 633 634 635 636 637 638 639"
+ "640 641 642 643 644 645 646 647 648 649"
+ "650 651 652 653 654 655 656 657 658 659"
+ "660 661 662 663 664 665 666 667 668 669"
+ "670 671 672 673 674 675 676 677 678 679"
+ "680 681 682 683 684 685 686 687 688 689"
+ "690 691 692 693 694 695 696 697 698 699"
+ "700 701 702 703 704 705 706 707 708 709"
+ "710 711 712 713 714 715 716 717 718 719"
+ "720 721 722 723 724 725 726 727 728 729"
+ "730 731 732 733 734 735 736 737 738 739"
+ "740 741 742 743 744 745 746 747 748 749"
+ "750 751 752 753 754 755 756 757 758 759"
+ "760 761 762 763 764 765 766 767 768 769"
+ "770 771 772 773 774 775 776 777 778 779"
+ "780 781 782 783 784 785 786 787 788 789"
+ "790 791 792 793 794 795 796 797 798 799"
+ "800 801 802 803 804 805 806 807 808 809"
+ "810 811 812 813 814 815 816 817 818 819"
+ "820 821 822 823 824 825 826 827 828 829"
+ "830 831 832 833 834 835 836 837 838 839"
+ "840 841 842 843 844 845 846 847 848 849"
+ "850 851 852 853 854 855 856 857 858 859"
+ "860 861 862 863 864 865 866 867 868 869"
+ "870 871 872 873 874 875 876 877 878 879"
+ "880 881 882 883 884 885 886 887 888 889"
+ "890 891 892 893 894 895 896 897 898 899"
+ "900 901 902 903 904 905 906 907 908 909"
+ "910 911 912 913 914 915 916 917 918 919"
+ "920 921 922 923 924 925 926 927 928 929"
+ "930 931 932 933 934 935 936 937 938 939"
+ "940 941 942 943 944 945 946 947 948 949"
+ "950 951 952 953 954 955 956 957 958 959"
+ "960 961 962 963 964 965 966 967 968 969"
+ "970 971 972 973 974 975 976 977 978 979"
+ "980 981 982 983 984 985 986 987 988 989"
+ "990 991 992 993 994 995 996 997 998 999"
+Query prepare long_query from "select ? as long_query"
+Prepare select ? as long_query
+Query execute long_query using @lparam
+Execute select '000 001 002 003 004 005 006 007 008 009010 011 012 013 014 015 016 017 018 019020 021 022 023 024 025 026 027 028 029030 031 032 033 034 035 036 037 038 039040 041 042 043 044 045 046 047 048 049050 051 052 053 054 055 056 057 058 059060 061 062 063 064 065 066 067 068 069070 071 072 073 074 075 076 077 078 079080 081 082 083 084 085 086 087 088 089090 091 092 093 094 095 096 097 098 099100 101 102 103 104 105 106 107 108 109110 111 112 113 114 115 116 117 118 119120 121 122 123 124 125 126 127 128 129130 131 132 133 134 135 136 137 138 139140 141 142 143 144 145 146 147 148 149150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169170 171 172 173 174 175 176 177 178 179180 181 182 183 184 185 186 187 188 189190 191 192 193 194 195 196 197 198 199200 201 202 203 204 205 206 207 208 209210 211 212 213 214 215 216 217 218 219220 221 222 223 224 225 226 227 228 229230 231 232 233 234 235 236 237 238 239240 241 242 243 244 245 246 247 248 249250 251 252 253 254 255 256 257 258 259260 261 262 263 264 265 266 267 268 269270 271 272 273 274 275 276 277 278 279280 281 282 283 284 285 286 287 288 289290 291 292 293 294 295 296 297 298 299300 301 302 303 304 305 306 307 308 309310 311 312 313 314 315 316 317 318 319320 321 322 323 324 325 326 327 328 329330 331 332 333 334 335 336 337 338 339340 341 342 343 344 345 346 347 348 349350 351 352 353 354 355 356 357 358 359360 361 362 363 364 365 366 367 368 369370 371 372 373 374 375 376 377 378 379380 381 382 383 384 385 386 387 388 389390 391 392 393 394 395 396 397 398 399400 401 402 403 404 405 406 407 408 409410 411 412 413 414 415 416 417 418 419420 421 422 423 424 425 426 427 428 429430 431 432 433 434 435 436 437 438 439440 441 442 443 444 445 446 447 448 449450 451 452 453 454 455 456 457 458 459460 461 462 463 464 465 466 467 468 469470 471 472 473 474 475 476 477 478 479480 481 482 483 484 485 486 487 488 489490 491 492 493 494 495 496 497 498 499500 501 502 503 504 505 506 507 508 509510 511 512 513 514 515 516 517 518 519520 521 522 523 524 525 526 527 528 529530 531 532 533 534 535 536 537 538 539540 541 542 543 544 545 546 547 548 549550 551 552 553 554 555 556 557 558 559560 561 562 563 564 565 566 567 568 569570 571 572 573 574 575 576 577 578 579580 581 582 583 584 585 586 587 588 589590 591 592 593 594 595 596 597 598 599600 601 602 603 604 605 606 607 608 609610 611 612 613 614 615 616 617 618 619620 621 622 623 624 625 626 627 628 629630 631 632 633 634 635 636 637 638 639640 641 642 643 644 645 646 647 648 649650 651 652 653 654 655 656 657 658 659660 661 662 663 664 665 666 667 668 669670 671 672 673 674 675 676 677 678 679680 681 682 683 684 685 686 687 688 689690 691 692 693 694 695 696 697 698 699700 701 702 703 704 705 706 707 708 709710 711 712 713 714 715 716 717 718 719720 721 722 723 724 725 726 727 728 729730 731 732 733 734 735 736 737 738 739740 741 742 743 744 745 746 747 748 749750 751 752 753 754 755 756 757 758 759760 761 762 763 764 765 766 767 768 769770 771 772 773 774 775 776 777 778 779780 781 782 783 784 785 786 787 788 789790 791 792 793 794 795 796 797 798 799800 801 802 803 804 805 806 807 808 809810 811 812 813 814 815 816 817 818 819820 821 822 823 824 825 826 827 828 829830 831 832 833 834 835 836 837 838 839840 841 842 843 844 845 846 847 848 849850 851 852 853 854 855 856 857 858 859860 861 862 863 864 865 866 867 868 869870 871 872 873 874 875 876 877 878 879880 881 882 883 884 885 886 887 888 889890 891 892 893 894 895 896 897 898 899900 901 902 903 904 905 906 907 908 909910 911 912 913 914 915 916 917 918 919920 921 922 923 924 925 926 927 928 929930 931 932 933 934 935 936 937 938 939940 941 942 943 944 945 946 947 948 949950 951 952 953 954 955 956 957 958 959960 961 962 963 964 965 966 967 968 969970 971 972 973 974 975 976 977 978 979980 981 982 983 984 985 986 987 988 989990 991 992 993 994 995 996 997 998 999' as long_query
+Query set global general_log = off
+deallocate prepare long_query;
+set global general_log = @old_general_log;
+DROP TABLE IF EXISTS log_count;
+DROP TABLE IF EXISTS slow_log_copy;
+DROP TABLE IF EXISTS general_log_copy;
+CREATE TABLE log_count (count BIGINT(21));
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+CREATE TABLE slow_log_copy SELECT * FROM mysql.slow_log;
+INSERT INTO slow_log_copy SELECT * FROM mysql.slow_log;
+INSERT INTO log_count (count) VALUES ((SELECT count(*) FROM mysql.slow_log));
+DROP TABLE slow_log_copy;
+CREATE TABLE general_log_copy SELECT * FROM mysql.general_log;
+INSERT INTO general_log_copy SELECT * FROM mysql.general_log;
+INSERT INTO log_count (count) VALUES ((SELECT count(*) FROM mysql.general_log));
+DROP TABLE general_log_copy;
+SET GLOBAL general_log = OFF;
+SET GLOBAL slow_query_log = OFF;
+CREATE TABLE slow_log_copy SELECT * FROM mysql.slow_log;
+INSERT INTO slow_log_copy SELECT * FROM mysql.slow_log;
+INSERT INTO log_count (count) VALUES ((SELECT count(*) FROM mysql.slow_log));
+DROP TABLE slow_log_copy;
+CREATE TABLE general_log_copy SELECT * FROM mysql.general_log;
+INSERT INTO general_log_copy SELECT * FROM mysql.general_log;
+INSERT INTO log_count (count) VALUES ((SELECT count(*) FROM mysql.general_log));
+DROP TABLE general_log_copy;
+SET GLOBAL general_log = @saved_general_log;
+SET GLOBAL slow_query_log = @saved_slow_query_log;
+DROP TABLE log_count;
+SET SESSION long_query_time = 0;
+SET GLOBAL slow_query_log = ON;
+FLUSH LOGS;
+TRUNCATE TABLE mysql.slow_log;
+CREATE TABLE t1 (f1 SERIAL,f2 INT, f3 INT, PRIMARY KEY(f1), KEY(f2));
+INSERT INTO t1 VALUES (1,1,1);
+INSERT INTO t1 VALUES (2,2,2);
+INSERT INTO t1 VALUES (3,3,3);
+INSERT INTO t1 VALUES (4,4,4);
+SELECT SQL_NO_CACHE 'Bug#31700 - SCAN',f1,f2,f3,SLEEP(1.1) FROM t1 WHERE f3=4;
+Bug#31700 - SCAN f1 f2 f3 SLEEP(1.1)
+Bug#31700 - SCAN 4 4 4 0
+SELECT SQL_NO_CACHE 'Bug#31700 - KEY', f1,f2,f3,SLEEP(1.1) FROM t1 WHERE f2=3;
+Bug#31700 - KEY f1 f2 f3 SLEEP(1.1)
+Bug#31700 - KEY 3 3 3 0
+SELECT SQL_NO_CACHE 'Bug#31700 - PK', f1,f2,f3,SLEEP(1.1) FROM t1 WHERE f1=2;
+Bug#31700 - PK f1 f2 f3 SLEEP(1.1)
+Bug#31700 - PK 2 2 2 0
+SELECT start_time, rows_examined, rows_sent, sql_text FROM mysql.slow_log WHERE sql_text LIKE '%Bug#31700%' ORDER BY start_time;
+start_time rows_examined rows_sent sql_text
+TIMESTAMP 4 1 SELECT SQL_NO_CACHE 'Bug#31700 - SCAN',f1,f2,f3,SLEEP(1.1) FROM t1 WHERE f3=4
+TIMESTAMP 1 1 SELECT SQL_NO_CACHE 'Bug#31700 - KEY', f1,f2,f3,SLEEP(1.1) FROM t1 WHERE f2=3
+TIMESTAMP 1 1 SELECT SQL_NO_CACHE 'Bug#31700 - PK', f1,f2,f3,SLEEP(1.1) FROM t1 WHERE f1=2
+DROP TABLE t1;
+TRUNCATE TABLE mysql.slow_log;
+SET @@session.long_query_time= @old_long_query_time;
+SET @@global.log_output= @old_log_output;
+SET @@global.slow_query_log= @old_slow_query_log;
+SET @@global.general_log= @old_general_log;
diff --git a/mysql-test/r/log_tables_debug.result b/mysql-test/r/log_tables_debug.result
new file mode 100644
index 00000000000..daedb8c103a
--- /dev/null
+++ b/mysql-test/r/log_tables_debug.result
@@ -0,0 +1,24 @@
+SET @old_general_log= @@global.general_log;
+SET @old_general_log_file= @@global.general_log_file;
+SET @old_slow_query_log= @@global.slow_query_log;
+SET @old_slow_query_log_file= @@global.slow_query_log_file;
+#
+# Bug#45387 Information about statement id for prepared
+# statements missed from general log
+#
+SET @@global.general_log = ON;
+SET @@global.general_log_file = 'bug45387_general.log';
+SET SESSION debug='+d,reset_log_last_time';
+FLUSH LOGS;
+SET @@global.general_log = @old_general_log;
+SET @@global.general_log_file = @old_general_log_file;
+SET SESSION debug='-d';
+Bug#45387: ID match.
+End of 5.1 tests
+#
+# Cleanup
+#
+SET global general_log = @old_general_log;
+SET global general_log_file = @old_general_log_file;
+SET global slow_query_log = @old_slow_query_log;
+SET global slow_query_log_file = @old_slow_query_log_file;
diff --git a/mysql-test/r/lowercase0.require b/mysql-test/r/lowercase0.require
index a63906557f8..5550a2e93b8 100644
--- a/mysql-test/r/lowercase0.require
+++ b/mysql-test/r/lowercase0.require
@@ -1,3 +1,2 @@
Variable_name Value
-lower_case_file_system ON
lower_case_table_names 0
diff --git a/mysql-test/r/lowercase_mixed_tmpdir_innodb.result b/mysql-test/r/lowercase_mixed_tmpdir_innodb.result
new file mode 100755
index 00000000000..a478b49cfda
--- /dev/null
+++ b/mysql-test/r/lowercase_mixed_tmpdir_innodb.result
@@ -0,0 +1,6 @@
+drop table if exists t1;
+create table t1 (id int) engine=InnoDB;
+insert into t1 values (1);
+create temporary table t2 engine=InnoDB select * from t1;
+drop temporary table t2;
+drop table t1;
diff --git a/mysql-test/r/lowercase_table.result b/mysql-test/r/lowercase_table.result
index 6df3cf61ddb..464f423fa92 100644
--- a/mysql-test/r/lowercase_table.result
+++ b/mysql-test/r/lowercase_table.result
@@ -90,7 +90,7 @@ create table İ (s1 int);
show create table İ;
Table Create Table
İ CREATE TABLE `i` (
- `s1` int(11) default NULL
+ `s1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show tables;
Tables_in_test
@@ -100,7 +100,7 @@ create table İİ (s1 int);
show create table İİ;
Table Create Table
İİ CREATE TABLE `ii` (
- `s1` int(11) default NULL
+ `s1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show tables;
Tables_in_test
diff --git a/mysql-test/r/lowercase_table2.result b/mysql-test/r/lowercase_table2.result
index e369fb7e482..51c2ac0faf5 100644
--- a/mysql-test/r/lowercase_table2.result
+++ b/mysql-test/r/lowercase_table2.result
@@ -13,7 +13,7 @@ T1
SHOW CREATE TABLE T1;
Table Create Table
T1 CREATE TABLE `T1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
RENAME TABLE T1 TO T2;
SHOW TABLES LIKE "T2";
@@ -68,7 +68,7 @@ T1
SHOW CREATE TABLE T1;
Table Create Table
T1 CREATE TABLE `T1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
RENAME TABLE T1 TO T2;
SHOW TABLES LIKE "T2";
diff --git a/mysql-test/r/lowercase_table3.result b/mysql-test/r/lowercase_table3.result
index 995a2c0d08a..22e80aaeb26 100644
--- a/mysql-test/r/lowercase_table3.result
+++ b/mysql-test/r/lowercase_table3.result
@@ -1,10 +1,11 @@
+call mtr.add_suppression("Cannot find or open table test/BUG29839 from");
DROP TABLE IF EXISTS t1,T1;
-CREATE TABLE t1 (a int);
-SELECT * from T1;
+CREATE TABLE t1 (a INT);
+SELECT * FROM T1;
a
-drop table t1;
-flush tables;
-CREATE TABLE t1 (a int) ENGINE=INNODB;
-SELECT * from T1;
-ERROR 42S02: Table 'test.T1' doesn't exist
-drop table t1;
+FLUSH TABLES;
+DROP TABLE t1;
+CREATE TABLE bug29839 (a INT) ENGINE=INNODB;
+SELECT * FROM BUG29839;
+ERROR 42S02: Table 'test.BUG29839' doesn't exist
+DROP TABLE bug29839;
diff --git a/mysql-test/r/lowercase_table_grant.result b/mysql-test/r/lowercase_table_grant.result
index c3813d57074..afb54f8c472 100644
--- a/mysql-test/r/lowercase_table_grant.result
+++ b/mysql-test/r/lowercase_table_grant.result
@@ -6,8 +6,8 @@ Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
select * from db where user = 'mysqltest_1';
-Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv
-localhost mysqltest mysqltest_1 Y Y Y Y Y Y N Y Y Y Y Y Y Y Y Y Y
+Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv Event_priv Trigger_priv
+localhost mysqltest mysqltest_1 Y Y Y Y Y Y N Y Y Y Y Y Y Y Y Y Y Y Y
update db set db = 'MYSQLtest' where db = 'mysqltest' and user = 'mysqltest_1' and host = 'localhost';
flush privileges;
show grants for mysqltest_1@localhost;
@@ -15,8 +15,8 @@ Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
select * from db where user = 'mysqltest_1';
-Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv
-localhost MYSQLtest mysqltest_1 Y Y Y Y Y Y N Y Y Y Y Y Y Y Y Y Y
+Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv Event_priv Trigger_priv
+localhost MYSQLtest mysqltest_1 Y Y Y Y Y Y N Y Y Y Y Y Y Y Y Y Y Y Y
delete from db where db = 'MYSQLtest' and user = 'mysqltest_1' and host = 'localhost';
flush privileges;
drop user mysqltest_1@localhost;
diff --git a/mysql-test/r/lowercase_utf8.result b/mysql-test/r/lowercase_utf8.result
index 945e0912e80..043226e1f64 100644
--- a/mysql-test/r/lowercase_utf8.result
+++ b/mysql-test/r/lowercase_utf8.result
@@ -1,9 +1,9 @@
set names utf8;
-create table `А` (id int);
-show tables from test like 'А';
-Tables_in_test (А)
-show tables from test like 'а';
-Tables_in_test (а)
-drop table `А`;
+create table `Ö` (id int);
+show tables from test like 'Ö';
+Tables_in_test (Ö)
+show tables from test like 'ö';
+Tables_in_test (ö)
+drop table `Ö`;
diff --git a/mysql-test/r/lowercase_view.result b/mysql-test/r/lowercase_view.result
index a89b79263c5..c37dc41c495 100644
--- a/mysql-test/r/lowercase_view.result
+++ b/mysql-test/r/lowercase_view.result
@@ -6,8 +6,8 @@ use MySQLTest;
create table TaB (Field int);
create view ViE as select * from TAb;
show create table VIe;
-View Create View
-vie CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `vie` AS select `tab`.`Field` AS `Field` from `tab`
+View Create View character_set_client collation_connection
+vie CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `vie` AS select `tab`.`Field` AS `Field` from `tab` latin1 latin1_swedish_ci
drop database MySQLTest;
use test;
create table t1Aa (col1 int);
@@ -118,8 +118,8 @@ drop table t1Aa,t2Aa;
create table t1Aa (col1 int);
create view v1Aa as select col1 from t1Aa as AaA;
show create view v1AA;
-View Create View
-v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa`
+View Create View character_set_client collation_connection
+v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa` latin1 latin1_swedish_ci
drop view v1AA;
select Aaa.col1 from t1Aa as AaA;
col1
@@ -127,8 +127,8 @@ create view v1Aa as select Aaa.col1 from t1Aa as AaA;
drop view v1AA;
create view v1Aa as select AaA.col1 from t1Aa as AaA;
show create view v1AA;
-View Create View
-v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa`
+View Create View character_set_client collation_connection
+v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa` latin1 latin1_swedish_ci
drop view v1AA;
drop table t1Aa;
CREATE TABLE t1 (a int, b int);
@@ -141,8 +141,8 @@ a
CREATE OR REPLACE VIEW v1 AS
select X.a from t1 AS X group by X.b having (X.a = 1);
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `x`.`a` AS `a` from `t1` `x` group by `x`.`b` having (`x`.`a` = 1)
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `x`.`a` AS `a` from `t1` `x` group by `x`.`b` having (`x`.`a` = 1) latin1 latin1_swedish_ci
SELECT * FROM v1;
a
DROP VIEW v1;
diff --git a/mysql-test/r/merge-big.result b/mysql-test/r/merge-big.result
new file mode 100644
index 00000000000..e34ebbd9578
--- /dev/null
+++ b/mysql-test/r/merge-big.result
@@ -0,0 +1,26 @@
+drop table if exists t1,t2,t3,t4,t5,t6;
+#
+# Bug#26379 - Combination of FLUSH TABLE and REPAIR TABLE
+# corrupts a MERGE table
+# Problem #3
+#
+CREATE TABLE t1 (c1 INT) ENGINE= MyISAM;
+LOCK TABLE t1 WRITE;
+# connection con1
+SET SESSION debug="+d,sleep_open_and_lock_after_open";
+INSERT INTO t1 VALUES (1);
+# connection default
+# Let INSERT go into thr_multi_lock().
+# Kick INSERT out of thr_multi_lock().
+FLUSH TABLES;
+# Let INSERT go through open_tables() where it sleeps.
+# Unlock and close table and wait for con1 to close too.
+FLUSH TABLES;
+# This should give no result.
+SELECT * FROM t1;
+c1
+UNLOCK TABLES;
+# connection con1
+SET SESSION debug="-d,sleep_open_and_lock_after_open";
+# connection default
+DROP TABLE t1;
diff --git a/mysql-test/r/merge.result b/mysql-test/r/merge.result
index 3f2ac3e08ec..893ea5acf88 100644
--- a/mysql-test/r/merge.result
+++ b/mysql-test/r/merge.result
@@ -86,7 +86,7 @@ a b
19 Testing
explain select a from t3 order by a desc limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index NULL a 4 NULL 1131 Using index
+1 SIMPLE t3 index NULL a 4 NULL 10 Using index
select a from t3 order by a desc limit 10;
a
699
@@ -173,7 +173,7 @@ show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
`a` int(11) NOT NULL,
- `b` char(20) default NULL,
+ `b` char(20) DEFAULT NULL,
KEY `a` (`a`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`,`t2`)
create table t4 (a int not null, b char(10), key(a)) engine=MERGE UNION=(t1,t2);
@@ -181,6 +181,9 @@ select * from t4;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
alter table t4 add column c int;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+flush tables;
+select * from t4;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
create database mysqltest;
create table mysqltest.t6 (a int not null primary key auto_increment, message char(20));
create table t5 (a int not null, b char(20), key(a)) engine=MERGE UNION=(test.t1,mysqltest.t6);
@@ -188,7 +191,7 @@ show create table t5;
Table Create Table
t5 CREATE TABLE `t5` (
`a` int(11) NOT NULL,
- `b` char(20) default NULL,
+ `b` char(20) DEFAULT NULL,
KEY `a` (`a`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`,`mysqltest`.`t6`)
alter table t5 engine=myisam;
@@ -262,7 +265,7 @@ Table Create Table
t3 CREATE TABLE `t3` (
`incr` int(11) NOT NULL,
`othr` int(11) NOT NULL,
- PRIMARY KEY (`incr`)
+ PRIMARY KEY (`incr`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`,`t2`)
alter table t3 drop primary key;
show create table t3;
@@ -274,7 +277,7 @@ t3 CREATE TABLE `t3` (
drop table t3,t2,t1;
create table t1 (a int not null, key(a)) engine=merge;
select * from t1;
-a
+ERROR HY000: Got error 124 from storage engine
drop table t1;
create table t1 (a int not null, b int not null, key(a,b));
create table t2 (a int not null, b int not null, key(a,b));
@@ -311,15 +314,15 @@ show create table t5;
Table Create Table
t5 CREATE TABLE `t5` (
`a` int(11) NOT NULL,
- `b` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`a`,`b`)
+ `b` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`a`,`b`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=FIRST UNION=(`t1`,`t2`)
show create table t6;
Table Create Table
t6 CREATE TABLE `t6` (
`a` int(11) NOT NULL,
- `b` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`a`,`b`)
+ `b` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`a`,`b`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`t1`,`t2`)
insert into t1 values (1,NULL),(1,NULL),(1,NULL),(1,NULL);
insert into t2 values (2,NULL),(2,NULL),(2,NULL),(2,NULL);
@@ -545,9 +548,9 @@ select * from t4 where a+0 > 90;
a b
99 1
insert t5 values (1,1);
-ERROR 23000: Duplicate entry '1-1' for key 1
+ERROR 23000: Duplicate entry '1-1' for key 'PRIMARY'
insert t6 values (2,1);
-ERROR 23000: Duplicate entry '2-1' for key 1
+ERROR 23000: Duplicate entry '2-1' for key 'PRIMARY'
insert t5 values (1,1) on duplicate key update b=b+10;
insert t6 values (2,1) on duplicate key update b=b+20;
select * from t5 where a < 3;
@@ -581,9 +584,7 @@ insert into t1 values (1);
insert into t2 values (2);
create temporary table t3 (a int not null) ENGINE=MERGE UNION=(t1,t2);
select * from t3;
-a
-1
-2
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
create temporary table t4 (a int not null);
create temporary table t5 (a int not null);
insert into t4 values (1);
@@ -594,6 +595,54 @@ a
1
2
drop table t6, t3, t1, t2, t4, t5;
+create temporary table t1 (a int not null);
+create temporary table t2 (a int not null);
+insert into t1 values (1);
+insert into t2 values (2);
+create table t3 (a int not null) ENGINE=MERGE UNION=(t1,t2);
+select * from t3;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+drop table t3, t2, t1;
+create table t1 (a int not null);
+create temporary table t2 (a int not null);
+insert into t1 values (1);
+insert into t2 values (2);
+create table t3 (a int not null) ENGINE=MERGE UNION=(t1,t2);
+select * from t3;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+drop table t3;
+create temporary table t3 (a int not null) ENGINE=MERGE UNION=(t1,t2);
+select * from t3;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+drop table t3, t2, t1;
+# CREATE...SELECT is not implemented for MERGE tables.
+CREATE TEMPORARY TABLE t1 (c1 INT NOT NULL);
+CREATE TEMPORARY TABLE t2 (c1 INT NOT NULL);
+CREATE TABLE t3 (c1 INT NOT NULL);
+INSERT INTO t3 VALUES (3), (33);
+LOCK TABLES t3 READ;
+CREATE TEMPORARY TABLE t4 (c1 INT NOT NULL) ENGINE=MERGE UNION=(t1,t2)
+INSERT_METHOD=LAST SELECT * FROM t3;
+ERROR HY000: 'test.t4' is not BASE TABLE
+SELECT * FROM t4;
+ERROR HY000: Table 't4' was not locked with LOCK TABLES
+UNLOCK TABLES;
+CREATE TEMPORARY TABLE t4 (c1 INT NOT NULL) ENGINE=MERGE UNION=(t1,t2)
+INSERT_METHOD=LAST;
+INSERT INTO t4 SELECT * FROM t3;
+# Alter temporary MERGE table.
+ALTER TABLE t4 UNION=(t1);
+LOCK TABLES t4 WRITE;
+# Alter temporary MERGE table under LOCk tables.
+ALTER TABLE t4 UNION=(t1,t2);
+UNLOCK TABLES;
+# MERGE table and function.
+CREATE FUNCTION f1 () RETURNS INT RETURN (SELECT max(c1) FROM t3);
+SELECT * FROM t4 WHERE c1 < f1();
+c1
+3
+DROP FUNCTION f1;
+DROP TABLE t4, t3, t2, t1;
CREATE TABLE t1 (
fileset_id tinyint(3) unsigned NOT NULL default '0',
file_code varchar(32) NOT NULL default '',
@@ -647,11 +696,11 @@ create table t2 (a int);
insert into t1 values (0);
insert into t2 values (1);
create table t3 engine=merge union=(t1, t2) select * from t1;
-ERROR HY000: You can't specify target table 't1' for update in FROM clause
+ERROR HY000: 'test.t3' is not BASE TABLE
create table t3 engine=merge union=(t1, t2) select * from t2;
-ERROR HY000: You can't specify target table 't2' for update in FROM clause
+ERROR HY000: 'test.t3' is not BASE TABLE
create table t3 engine=merge union=(t1, t2) select (select max(a) from t2);
-ERROR HY000: You can't specify target table 't2' for update in FROM clause
+ERROR HY000: 'test.t3' is not BASE TABLE
drop table t1, t2;
create table t1 (
a double(14,4),
@@ -849,8 +898,7 @@ SELECT * FROM tm1;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
-test.tm1 check Error Table 'test.t1' is differently defined or of non-MyISAM type or doesn't exist
-test.tm1 check Error Table 'test.t2' is differently defined or of non-MyISAM type or doesn't exist
+test.tm1 check Error Table 'test.t1' doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
CREATE TABLE t1(a INT);
@@ -858,7 +906,7 @@ SELECT * FROM tm1;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
-test.tm1 check Error Table 'test.t2' is differently defined or of non-MyISAM type or doesn't exist
+test.tm1 check Error Table 'test.t2' doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
CREATE TABLE t2(a BLOB);
@@ -923,21 +971,21 @@ CREATE TABLE m1(a INT) ENGINE=MERGE;
SHOW CREATE TABLE m1;
Table Create Table
m1 CREATE TABLE `m1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
DROP TABLE m1;
CREATE TABLE m1(a INT) ENGINE=MERGE UNION=();
SHOW CREATE TABLE m1;
Table Create Table
m1 CREATE TABLE `m1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
ALTER TABLE m1 UNION=(t1);
ALTER TABLE m1 UNION=();
SHOW CREATE TABLE m1;
Table Create Table
m1 CREATE TABLE `m1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1, m1;
CREATE TABLE t1(a INT);
@@ -952,3 +1000,1223 @@ SELECT * FROM m2;
a
DROP TABLE t1, t2, m1, m2;
End of 5.0 tests
+create table t1 (c1 int, index(c1));
+create table t2 (c1 int, index(c1)) engine=merge union=(t1);
+insert into t1 values (1);
+flush tables;
+select * from t2;
+c1
+1
+flush tables;
+truncate table t1;
+insert into t1 values (1);
+flush tables;
+select * from t2;
+c1
+1
+truncate table t1;
+insert into t1 values (1);
+drop table t1,t2;
+#
+# Extra tests for TRUNCATE.
+#
+# Truncate MERGE table.
+CREATE TABLE t1 (c1 INT, INDEX(c1));
+CREATE TABLE t2 (c1 INT, INDEX(c1));
+CREATE TABLE t3 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1,t2);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+SELECT * FROM t3;
+c1
+1
+2
+TRUNCATE TABLE t3;
+SELECT * FROM t3;
+c1
+#
+# Truncate child table.
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+TRUNCATE TABLE t1;
+SELECT * FROM t3;
+c1
+2
+#
+# Truncate MERGE table under locked tables.
+LOCK TABLE t1 WRITE, t2 WRITE, t3 WRITE;
+INSERT INTO t1 VALUES (1);
+TRUNCATE TABLE t3;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3;
+c1
+1
+2
+#
+# Truncate child table under locked tables.
+TRUNCATE TABLE t1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3;
+c1
+1
+2
+UNLOCK TABLES;
+DROP TABLE t1, t2, t3;
+#
+# Truncate temporary MERGE table.
+CREATE TEMPORARY TABLE t1 (c1 INT, INDEX(c1));
+CREATE TEMPORARY TABLE t2 (c1 INT, INDEX(c1));
+CREATE TEMPORARY TABLE t3 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1,t2);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+SELECT * FROM t3;
+c1
+1
+2
+TRUNCATE TABLE t3;
+SELECT * FROM t3;
+c1
+#
+# Truncate temporary child table.
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+TRUNCATE TABLE t1;
+SELECT * FROM t3;
+c1
+2
+#
+# Truncate temporary MERGE table under locked tables.
+INSERT INTO t1 VALUES (1);
+CREATE TABLE t4 (c1 INT, INDEX(c1));
+LOCK TABLE t4 WRITE;
+TRUNCATE TABLE t3;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3;
+c1
+1
+2
+#
+# Truncate temporary child table under locked tables.
+TRUNCATE TABLE t1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3;
+c1
+1
+2
+UNLOCK TABLES;
+DROP TABLE t1, t2, t3, t4;
+CREATE TABLE t1 (c1 INT) ENGINE= MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE= MRG_MYISAM UNION= (t1) INSERT_METHOD= LAST;
+REPAIR TABLE t1;
+INSERT INTO t2 VALUES (1);
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+DROP TABLE t1, t2;
+CREATE TABLE t1 (c1 INT) ENGINE= MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE= MRG_MYISAM UNION= (t1) INSERT_METHOD= LAST;
+LOCK TABLE t1 WRITE;
+INSERT INTO t2 VALUES (1);
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+CREATE TABLE t1 (c1 INT) ENGINE= MyISAM;
+LOCK TABLE t1 WRITE;
+INSERT INTO t1 VALUES (1);
+FLUSH TABLES;
+FLUSH TABLES;
+SELECT * FROM t1;
+c1
+UNLOCK TABLES;
+DROP TABLE t1;
+#
+# Extra tests for Bug#26379 - Combination of FLUSH TABLE and
+# REPAIR TABLE corrupts a MERGE table
+#
+# CREATE ... SELECT is disabled for MERGE tables.
+#
+CREATE TABLE t1(c1 INT);
+INSERT INTO t1 VALUES (1);
+CREATE TABLE t2 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+CREATE TABLE t3 ENGINE=MRG_MYISAM INSERT_METHOD=LAST SELECT * FROM t2;
+ERROR HY000: Table 't3' is read only
+SHOW CREATE TABLE t3;
+ERROR 42S02: Table 'test.t3' doesn't exist
+CREATE TABLE t3 ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST
+SELECT * FROM t2;
+ERROR HY000: 'test.t3' is not BASE TABLE
+SHOW CREATE TABLE t3;
+ERROR 42S02: Table 'test.t3' doesn't exist
+DROP TABLE t1, t2;
+#
+# CREATE ... LIKE
+#
+# 1. Create like.
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE t2 (c1 INT);
+CREATE TABLE t3 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2)
+INSERT_METHOD=LAST;
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+INSERT INTO t3 VALUES (3);
+CREATE TABLE t4 LIKE t3;
+SHOW CREATE TABLE t4;
+Table Create Table
+t4 CREATE TABLE `t4` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
+INSERT INTO t4 VALUES (4);
+ERROR HY000: Table 't4' is read only
+DROP TABLE t4;
+#
+# 1. Create like with locked tables.
+LOCK TABLES t3 WRITE, t2 WRITE, t1 WRITE;
+CREATE TABLE t4 LIKE t3;
+SHOW CREATE TABLE t4;
+ERROR HY000: Table 't4' was not locked with LOCK TABLES
+INSERT INTO t4 VALUES (4);
+ERROR HY000: Table 't4' was not locked with LOCK TABLES
+UNLOCK TABLES;
+SHOW CREATE TABLE t4;
+Table Create Table
+t4 CREATE TABLE `t4` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
+INSERT INTO t4 VALUES (4);
+ERROR HY000: Table 't4' is read only
+DROP TABLE t4;
+#
+# Rename child.
+#
+# 1. Normal rename of non-MERGE table.
+CREATE TABLE t4 (c1 INT);
+INSERT INTO t4 VALUES (4);
+SELECT * FROM t4 ORDER BY c1;
+c1
+4
+RENAME TABLE t4 TO t5;
+SELECT * FROM t5 ORDER BY c1;
+c1
+4
+RENAME TABLE t5 TO t4;
+SELECT * FROM t4 ORDER BY c1;
+c1
+4
+DROP TABLE t4;
+#
+# 2. Normal rename.
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+RENAME TABLE t2 TO t5;
+SELECT * FROM t3 ORDER BY c1;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+RENAME TABLE t5 TO t2;
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+#
+# 3. Normal rename with locked tables.
+LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE;
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+RENAME TABLE t2 TO t5;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+RENAME TABLE t5 TO t2;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+#
+# 4. Alter table rename.
+ALTER TABLE t2 RENAME TO t5;
+SELECT * FROM t3 ORDER BY c1;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+ALTER TABLE t5 RENAME TO t2;
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+#
+# 5. Alter table rename with locked tables.
+LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE;
+ALTER TABLE t2 RENAME TO t5;
+SELECT * FROM t3 ORDER BY c1;
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+ALTER TABLE t5 RENAME TO t2;
+ERROR HY000: Table 't5' was not locked with LOCK TABLES
+UNLOCK TABLES;
+ALTER TABLE t5 RENAME TO t2;
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+#
+# Rename parent.
+#
+# 1. Normal rename with locked tables.
+LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE;
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+RENAME TABLE t3 TO t5;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+RENAME TABLE t5 TO t3;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+#
+# 5. Alter table rename with locked tables.
+ALTER TABLE t3 RENAME TO t5;
+SELECT * FROM t5 ORDER BY c1;
+ERROR HY000: Table 't5' was not locked with LOCK TABLES
+ALTER TABLE t5 RENAME TO t3;
+ERROR HY000: Table 't5' was not locked with LOCK TABLES
+UNLOCK TABLES;
+ALTER TABLE t5 RENAME TO t3;
+SELECT * FROM t3 ORDER BY c1;
+c1
+1
+2
+3
+DROP TABLE t1, t2, t3;
+#
+# Drop locked tables.
+#
+# 1. Drop parent.
+CREATE TABLE t1 (c1 INT, INDEX(c1));
+CREATE TABLE t2 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+LOCK TABLES t1 WRITE, t2 WRITE;
+INSERT INTO t1 VALUES (1);
+DROP TABLE t2;
+SELECT * FROM t2;
+ERROR HY000: Table 't2' was not locked with LOCK TABLES
+SELECT * FROM t1;
+c1
+1
+UNLOCK TABLES;
+# 2. Drop child.
+CREATE TABLE t2 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+LOCK TABLES t1 WRITE, t2 WRITE;
+INSERT INTO t1 VALUES (1);
+DROP TABLE t1;
+SELECT * FROM t2;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+SELECT * FROM t1;
+ERROR 42S02: Table 'test.t1' doesn't exist
+UNLOCK TABLES;
+DROP TABLE t2;
+#
+# ALTER TABLE. Change child list.
+#
+CREATE TABLE t1 (c1 INT, INDEX(c1));
+CREATE TABLE t2 (c1 INT, INDEX(c1));
+CREATE TABLE t3 (c1 INT, INDEX(c1));
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+INSERT INTO t3 VALUES (3);
+CREATE TABLE t4 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t3,t2)
+INSERT_METHOD=LAST;
+# Shrink child list.
+ALTER TABLE t4 UNION=(t3);
+SHOW CREATE TABLE t4;
+Table Create Table
+t4 CREATE TABLE `t4` (
+ `c1` int(11) DEFAULT NULL,
+ KEY `c1` (`c1`)
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`t3`)
+SELECT * FROM t4 ORDER BY c1;
+c1
+3
+# Extend child list.
+ALTER TABLE t4 UNION=(t3,t2);
+SHOW CREATE TABLE t4;
+Table Create Table
+t4 CREATE TABLE `t4` (
+ `c1` int(11) DEFAULT NULL,
+ KEY `c1` (`c1`)
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`t3`,`t2`)
+SELECT * FROM t4 ORDER BY c1;
+c1
+2
+3
+#
+# ALTER TABLE under LOCK TABLES. Change child list.
+#
+LOCK TABLES t4 WRITE, t3 WRITE, t2 WRITE;
+# Shrink child list.
+ALTER TABLE t4 UNION=(t3);
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# Extend child list within locked tables.
+ALTER TABLE t4 UNION=(t3,t2);
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# Extend child list beyond locked tables.
+ALTER TABLE t4 UNION=(t3,t2,t1);
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+SHOW CREATE TABLE t4;
+Table Create Table
+t4 CREATE TABLE `t4` (
+ `c1` int(11) DEFAULT NULL,
+ KEY `c1` (`c1`)
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`t3`,`t2`)
+SELECT * FROM t4 ORDER BY c1;
+c1
+2
+3
+UNLOCK TABLES;
+DROP TABLE t4;
+#
+# ALTER TABLE under LOCK TABLES. Grave change, table re-creation.
+#
+CREATE TABLE t4 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1,t2,t3)
+INSERT_METHOD=LAST;
+# Lock parent first and then children.
+LOCK TABLES t4 WRITE, t3 WRITE, t2 WRITE, t1 WRITE;
+ALTER TABLE t4 DROP INDEX c1, ADD UNIQUE INDEX (c1);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+ALTER TABLE t2 DROP INDEX c1, ADD UNIQUE INDEX (c1);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+# Lock children first and then parent.
+LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE, t4 WRITE;
+ALTER TABLE t4 DROP INDEX c1, ADD UNIQUE INDEX (c1);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+ALTER TABLE t2 DROP INDEX c1, ADD UNIQUE INDEX (c1);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+# Lock parent between children.
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+ALTER TABLE t4 DROP INDEX c1, ADD UNIQUE INDEX (c1);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+ALTER TABLE t2 DROP INDEX c1, ADD UNIQUE INDEX (c1);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+DROP TABLE t1, t2, t3, t4;
+#
+# ALTER TABLE under LOCK TABLES. Simple change, no re-creation.
+#
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE t2 (c1 INT);
+CREATE TABLE t3 (c1 INT);
+CREATE TABLE t4 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2,t3)
+INSERT_METHOD=LAST;
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+INSERT INTO t3 VALUES (3);
+# Lock parent first and then children.
+LOCK TABLES t4 WRITE, t3 WRITE, t2 WRITE, t1 WRITE;
+ALTER TABLE t4 ALTER COLUMN c1 SET DEFAULT 44;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+ALTER TABLE t2 ALTER COLUMN c1 SET DEFAULT 22;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+# Lock children first and then parent.
+LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE, t4 WRITE;
+ALTER TABLE t4 ALTER COLUMN c1 SET DEFAULT 44;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+ALTER TABLE t2 ALTER COLUMN c1 SET DEFAULT 22;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+# Lock parent between children.
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+ALTER TABLE t4 ALTER COLUMN c1 SET DEFAULT 44;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+ALTER TABLE t2 ALTER COLUMN c1 SET DEFAULT 22;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+#
+# FLUSH TABLE under LOCK TABLES.
+#
+# Lock parent first and then children.
+LOCK TABLES t4 WRITE, t3 WRITE, t2 WRITE, t1 WRITE;
+FLUSH TABLE t4;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+FLUSH TABLE t2;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+FLUSH TABLES;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+# Lock children first and then parent.
+LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE, t4 WRITE;
+FLUSH TABLE t4;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+FLUSH TABLE t2;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+FLUSH TABLES;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+# Lock parent between children.
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+FLUSH TABLE t4;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+FLUSH TABLE t2;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+FLUSH TABLES;
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+UNLOCK TABLES;
+#
+# Triggers
+#
+# Trigger on parent
+DELETE FROM t4 WHERE c1 = 4;
+CREATE TRIGGER t4_ai AFTER INSERT ON t4 FOR EACH ROW SET @a=1;
+SET @a=0;
+INSERT INTO t4 VALUES (4);
+SELECT @a;
+@a
+1
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+DROP TRIGGER t4_ai;
+# Trigger on parent under LOCK TABLES
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+CREATE TRIGGER t4_ai AFTER INSERT ON t4 FOR EACH ROW SET @a=1;
+SET @a=0;
+INSERT INTO t4 VALUES (4);
+SELECT @a;
+@a
+1
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+DROP TRIGGER t4_ai;
+UNLOCK TABLES;
+#
+# Trigger on child
+DELETE FROM t4 WHERE c1 = 4;
+CREATE TRIGGER t3_ai AFTER INSERT ON t3 FOR EACH ROW SET @a=1;
+SET @a=0;
+INSERT INTO t4 VALUES (4);
+SELECT @a;
+@a
+0
+INSERT INTO t3 VALUES (33);
+SELECT @a;
+@a
+1
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+33
+DROP TRIGGER t3_ai;
+# Trigger on child under LOCK TABLES
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+CREATE TRIGGER t3_ai AFTER INSERT ON t3 FOR EACH ROW SET @a=1;
+SET @a=0;
+INSERT INTO t4 VALUES (4);
+SELECT @a;
+@a
+0
+INSERT INTO t3 VALUES (33);
+SELECT @a;
+@a
+1
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+33
+33
+DELETE FROM t4 WHERE c1 = 33;
+DROP TRIGGER t3_ai;
+#
+# Trigger with table use on child
+DELETE FROM t4 WHERE c1 = 4;
+CREATE TRIGGER t3_ai AFTER INSERT ON t3 FOR EACH ROW INSERT INTO t2 VALUES(22);
+INSERT INTO t4 VALUES (4);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+INSERT INTO t3 VALUES (33);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+22
+33
+DELETE FROM t4 WHERE c1 = 22;
+DELETE FROM t4 WHERE c1 = 33;
+DROP TRIGGER t3_ai;
+# Trigger with table use on child under LOCK TABLES
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+CREATE TRIGGER t3_ai AFTER INSERT ON t3 FOR EACH ROW INSERT INTO t2 VALUES(22);
+INSERT INTO t4 VALUES (4);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+INSERT INTO t3 VALUES (33);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+22
+33
+DROP TRIGGER t3_ai;
+DELETE FROM t4 WHERE c1 = 22;
+DELETE FROM t4 WHERE c1 = 33;
+UNLOCK TABLES;
+#
+# Repair
+#
+REPAIR TABLE t4;
+Table Op Msg_type Msg_text
+test.t4 repair note The storage engine for the table doesn't support repair
+REPAIR TABLE t2;
+Table Op Msg_type Msg_text
+test.t2 repair status OK
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+REPAIR TABLE t4;
+Table Op Msg_type Msg_text
+test.t4 repair note The storage engine for the table doesn't support repair
+REPAIR TABLE t2;
+Table Op Msg_type Msg_text
+test.t2 repair status OK
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+UNLOCK TABLES;
+#
+# Optimize
+#
+OPTIMIZE TABLE t4;
+Table Op Msg_type Msg_text
+test.t4 optimize note The storage engine for the table doesn't support optimize
+OPTIMIZE TABLE t2;
+Table Op Msg_type Msg_text
+test.t2 optimize status OK
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+OPTIMIZE TABLE t4;
+Table Op Msg_type Msg_text
+test.t4 optimize note The storage engine for the table doesn't support optimize
+OPTIMIZE TABLE t2;
+Table Op Msg_type Msg_text
+test.t2 optimize status Table is already up to date
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+UNLOCK TABLES;
+#
+# Checksum
+#
+CHECKSUM TABLE t4;
+Table Checksum
+test.t4 46622073
+CHECKSUM TABLE t2;
+Table Checksum
+test.t2 3700403066
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+CHECKSUM TABLE t4;
+Table Checksum
+test.t4 46622073
+CHECKSUM TABLE t2;
+Table Checksum
+test.t2 3700403066
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+UNLOCK TABLES;
+#
+# Insert delayed
+#
+INSERT DELAYED INTO t4 VALUES(44);
+DELETE FROM t4 WHERE c1 = 44;
+INSERT DELAYED INTO t3 VALUES(33);
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+33
+LOCK TABLES t3 WRITE, t2 WRITE, t4 WRITE, t1 WRITE;
+INSERT DELAYED INTO t4 VALUES(444);
+Got one of the listed errors
+INSERT DELAYED INTO t3 VALUES(333);
+Got one of the listed errors
+SELECT * FROM t4 ORDER BY c1;
+c1
+1
+2
+3
+4
+4
+33
+UNLOCK TABLES;
+DROP TABLE t1, t2, t3, t4;
+#
+# Recursive inclusion of merge tables in their union clauses.
+#
+CREATE TABLE t1 (c1 INT, INDEX(c1));
+CREATE TABLE t2 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+CREATE TABLE t3 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t2,t1)
+INSERT_METHOD=LAST;
+ALTER TABLE t2 UNION=(t3,t1);
+SELECT * FROM t2;
+ERROR HY000: Table 't3' is differently defined or of non-MyISAM type or doesn't exist
+DROP TABLE t1, t2, t3;
+CREATE TABLE t1 (c1 INT) ENGINE= MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE= MyISAM;
+CREATE TABLE t3 (c1 INT) ENGINE= MRG_MYISAM UNION= (t1, t2);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+SELECT * FROM t3;
+c1
+1
+2
+TRUNCATE TABLE t1;
+SELECT * FROM t3;
+c1
+2
+DROP TABLE t1, t2, t3;
+CREATE TABLE t1 (id INTEGER, grp TINYINT, id_rev INTEGER);
+SET @rnd_max= 2147483647;
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+SET @rnd= RAND();
+SET @id = CAST(@rnd * @rnd_max AS UNSIGNED);
+SET @id_rev= @rnd_max - @id;
+SET @grp= CAST(127.0 * @rnd AS UNSIGNED);
+INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
+set @@read_buffer_size=2*1024*1024;
+CREATE TABLE t2 SELECT * FROM t1;
+INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
+INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
+INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
+INSERT INTO t2 (id, grp, id_rev) SELECT id, grp, id_rev FROM t1;
+INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
+CREATE TABLE t3 (id INTEGER, grp TINYINT, id_rev INTEGER)
+ENGINE= MRG_MYISAM UNION= (t1, t2);
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+130
+SELECT COUNT(*) FROM t2;
+COUNT(*)
+80
+SELECT COUNT(*) FROM t3;
+COUNT(*)
+210
+SELECT COUNT(DISTINCT a1.id) FROM t3 AS a1, t3 AS a2
+WHERE a1.id = a2.id GROUP BY a2.grp;
+TRUNCATE TABLE t1;
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+0
+SELECT COUNT(*) FROM t2;
+COUNT(*)
+80
+SELECT COUNT(*) FROM t3;
+COUNT(*)
+80
+DROP TABLE t1, t2, t3;
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+INSERT INTO t2 VALUES (1);
+SELECT * FROM t2;
+c1
+1
+LOCK TABLES t2 WRITE, t1 WRITE;
+FLUSH TABLES;
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+UNLOCK TABLES;
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+LOCK TABLES t2 WRITE, t1 WRITE;
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+UNLOCK TABLES;
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1, t2;
+CREATE TABLE t1 ( a INT ) ENGINE=MyISAM;
+CREATE TABLE m1 ( a INT ) ENGINE=MRG_MYISAM UNION=(t1);
+LOCK TABLES t1 WRITE, m1 WRITE;
+FLUSH TABLE t1;
+UNLOCK TABLES;
+DROP TABLE m1, t1;
+CREATE TABLE t1 ( a INT ) ENGINE=MyISAM;
+CREATE TABLE m1 ( a INT ) ENGINE=MRG_MYISAM UNION=(t1);
+LOCK TABLES m1 WRITE, t1 WRITE;
+FLUSH TABLE t1;
+UNLOCK TABLES;
+DROP TABLE m1, t1;
+CREATE TABLE t1 (c1 INT, c2 INT) ENGINE= MyISAM;
+CREATE TABLE t2 (c1 INT, c2 INT) ENGINE= MyISAM;
+CREATE TABLE t3 (c1 INT, c2 INT) ENGINE= MRG_MYISAM UNION(t1, t2);
+INSERT INTO t1 VALUES (1, 1);
+INSERT INTO t2 VALUES (2, 2);
+SELECT * FROM t3;
+c1 c2
+1 1
+2 2
+ALTER TABLE t1 ENGINE= MEMORY;
+INSERT INTO t1 VALUES (0, 0);
+SELECT * FROM t3;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+DROP TABLE t1, t2, t3;
+CREATE TABLE t1 (c1 INT, KEY(c1));
+CREATE TABLE t2 (c1 INT, KEY(c1)) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=FIRST;
+LOCK TABLE t1 WRITE, t2 WRITE;
+FLUSH TABLES t2, t1;
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status Table is already up to date
+FLUSH TABLES t1;
+UNLOCK TABLES;
+FLUSH TABLES;
+INSERT INTO t1 VALUES (1);
+LOCK TABLE t1 WRITE, t2 WRITE;
+FLUSH TABLES t2, t1;
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+FLUSH TABLES t1;
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+CREATE TABLE t1 (ID INT) ENGINE=MYISAM;
+CREATE TABLE m1 (ID INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=FIRST;
+INSERT INTO t1 VALUES ();
+INSERT INTO m1 VALUES ();
+LOCK TABLE t1 WRITE, m1 WRITE;
+FLUSH TABLES m1, t1;
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+FLUSH TABLES m1, t1;
+UNLOCK TABLES;
+DROP TABLE t1, m1;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=FIRST;
+SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE
+TABLE_SCHEMA = 'test' and TABLE_NAME='tm1';
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT
+NULL test tm1 BASE TABLE NULL NULL NULL # # # # # # # # # # NULL # # Unable to open underlying table which is differently defined or of non-MyISAM ty
+DROP TABLE tm1;
+CREATE TABLE t1(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
+CREATE TABLE t2(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
+CREATE TABLE t3(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
+CREATE TABLE t4(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2))
+ENGINE=MRG_MYISAM UNION=(t1, t2, t3);
+INSERT INTO t1 VALUES (1,1), (1,2),(1,3), (1,4);
+INSERT INTO t2 VALUES (2,1), (2,2),(2,3), (2,4);
+INSERT INTO t3 VALUES (3,1), (3,2),(3,3), (3,4);
+EXPLAIN SELECT COUNT(*) FROM t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+EXPLAIN SELECT COUNT(*) FROM t4;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+DROP TABLE t1, t2, t3, t4;
+CREATE TABLE t1(a INT, KEY(a));
+INSERT INTO t1 VALUES(0),(1),(2),(3),(4);
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+CREATE TABLE m1(a INT, KEY(a)) ENGINE=MERGE UNION=(t1);
+SELECT CARDINALITY FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA='test' AND TABLE_NAME='m1';
+CARDINALITY
+5
+SELECT CARDINALITY FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA='test' AND TABLE_NAME='m1';
+CARDINALITY
+5
+SELECT CARDINALITY FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA='test' AND TABLE_NAME='m1';
+CARDINALITY
+5
+SELECT CARDINALITY FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA='test' AND TABLE_NAME='m1';
+CARDINALITY
+5
+DROP TABLE t1, m1;
+#
+# Bug #40675 MySQL 5.1 crash with index merge algorithm and Merge tables
+#
+# create MYISAM table t1 and insert values into it
+CREATE TABLE t1(a INT);
+INSERT INTO t1 VALUES(1);
+# create MYISAM table t2 and insert values into it
+CREATE TABLE t2(a INT, b INT, dummy CHAR(16) DEFAULT '', KEY(a), KEY(b));
+INSERT INTO t2(a,b) VALUES
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),(0,0),
+(1,2);
+# Create the merge table t3
+CREATE TABLE t3(a INT, b INT, dummy CHAR(16) DEFAULT '', KEY(a), KEY(b))
+ENGINE=MERGE UNION=(t2) INSERT_METHOD=FIRST;
+# Lock tables t1 and t3 for write
+LOCK TABLES t1 WRITE, t3 WRITE;
+# Insert values into the merge table t3
+INSERT INTO t3(a,b) VALUES(1,2);
+# select from the join of t2 and t3 (The merge table)
+SELECT t3.a FROM t1,t3 WHERE t3.b=2 AND t3.a=1;
+a
+1
+1
+# Unlock the tables
+UNLOCK TABLES;
+# drop the created tables
+DROP TABLE t1, t2, t3;
+# insert duplicate value in child table while merge table doesn't have key
+create table t1 (
+col1 int(10),
+primary key (col1)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+CREATE TABLE m1 (
+col1 int(10) NOT NULL
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(t1);
+insert into m1 (col1) values (1);
+insert into m1 (col1) values (1);
+ERROR 23000: Duplicate entry '' for key '*UNKNOWN*'
+drop table m1, t1;
+#
+# Bug#45800 crash when replacing into a merge table and there is a duplicate
+#
+# Replace duplicate value in child table when merge table doesn't have key
+CREATE TABLE t1 (c1 INT PRIMARY KEY) ENGINE=MyISAM;
+CREATE TABLE m1 (c1 INT NOT NULL) ENGINE=MRG_MyISAM INSERT_METHOD=LAST UNION=(t1);
+INSERT INTO m1 VALUES (666);
+SELECT * FROM m1;
+c1
+666
+# insert the duplicate value into the merge table
+REPLACE INTO m1 VALUES (666);
+SELECT * FROM m1;
+c1
+666
+DROP TABLE m1, t1;
+# Insert... on duplicate key update (with duplicate values in the table)
+CREATE TABLE t1 (c1 INT PRIMARY KEY) ENGINE=MyISAM;
+CREATE TABLE m1 (c1 INT NOT NULL) ENGINE=MRG_MyISAM INSERT_METHOD=LAST UNION=(t1);
+INSERT INTO m1 VALUES (666);
+SELECT * FROM m1;
+c1
+666
+# insert the duplicate value into the merge table
+INSERT INTO m1 VALUES (666) ON DUPLICATE KEY UPDATE c1=c1+1;
+SELECT * FROM m1;
+c1
+667
+DROP TABLE m1, t1;
+# Insert duplicate value on MERGE table, where, MERGE has a key but MyISAM has more keys
+CREATE TABLE t1 (c1 INT, c2 INT, UNIQUE (c1), UNIQUE (c2));
+CREATE TABLE m1 (c1 INT, c2 INT, UNIQUE (c1)) ENGINE=MRG_MyISAM INSERT_METHOD=LAST UNION=(t1);
+INSERT INTO m1 VALUES (1,2);
+# insert the duplicate value into the merge table
+INSERT INTO m1 VALUES (3,2);
+ERROR 23000: Duplicate entry '' for key '*UNKNOWN*'
+DROP TABLE m1,t1;
+# Try to define MERGE and MyISAM with keys on different columns
+CREATE TABLE t1 (c1 INT, c2 INT, UNIQUE (c1));
+CREATE TABLE m1 (c1 INT, c2 INT, UNIQUE (c2)) ENGINE=MRG_MyISAM INSERT_METHOD=LAST UNION=(t1);
+# Try accessing the merge table for inserts (error occurs)
+INSERT INTO m1 VALUES (1,2);
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+INSERT INTO m1 VALUES (1,4);
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+DROP TABLE m1,t1;
+CREATE TABLE t1 (
+col1 INT(10)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+CREATE VIEW v1 as SELECT * FROM t1;
+CREATE TABLE m1 (
+col1 INT(10)
+)ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(v1);
+#Select should detect that the child table is a view and fail.
+SELECT * FROM m1;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+DROP VIEW v1;
+DROP TABLE m1, t1;
+#
+# Bug #45796: invalid memory reads and writes when altering merge and
+# base tables
+#
+CREATE TABLE t1(c1 INT) ENGINE=MyISAM;
+CREATE TABLE m1(c1 INT) ENGINE=MERGE UNION=(t1);
+ALTER TABLE m1 ADD INDEX idx_c1(c1);
+SELECT * FROM m1;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+ALTER TABLE t1 ADD INDEX idx_c1(c1);
+SELECT * FROM m1;
+c1
+DROP TABLE m1;
+DROP TABLE t1;
+#
+# Bug45781 infinite hang/crash in "opening tables" after handler tries to
+# open merge table
+#
+DROP TABLE IF EXISTS m1,t1;
+CREATE TABLE t1(a int)engine=myisam;
+CREATE TABLE t2(a int)engine=myisam;
+CREATE TABLE t3(a int)engine=myisam;
+CREATE TABLE t4(a int)engine=myisam;
+CREATE TABLE t5(a int)engine=myisam;
+CREATE TABLE t6(a int)engine=myisam;
+CREATE TABLE t7(a int)engine=myisam;
+CREATE TABLE m1(a int)engine=merge union=(t1,t2,t3,t4,t5,t6,t7);
+SELECT 1 FROM m1;
+1
+HANDLER m1 OPEN;
+ERROR HY000: Table storage engine for 'm1' doesn't have this option
+DROP TABLE m1,t1,t2,t3,t4,t5,t6,t7;
+SELECT 1 FROM m1;
+ERROR 42S02: Table 'test.m1' doesn't exist
+#
+# Bug #46614: Assertion in show_create_trigger()
+#
+CREATE TABLE t1(a int);
+CREATE TABLE t2(a int);
+CREATE TABLE t3(a int) ENGINE = MERGE UNION(t1, t2);
+CREATE TRIGGER tr1 AFTER INSERT ON t3 FOR EACH ROW CALL foo();
+SHOW CREATE TRIGGER tr1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+tr1 CREATE DEFINER=`root`@`localhost` TRIGGER tr1 AFTER INSERT ON t3 FOR EACH ROW CALL foo() latin1 latin1_swedish_ci latin1_swedish_ci
+DROP TRIGGER tr1;
+DROP TABLE t1, t2, t3;
+End of 5.1 tests
diff --git a/mysql-test/r/merge_innodb.result b/mysql-test/r/merge_innodb.result
new file mode 100644
index 00000000000..f6057d279b1
--- /dev/null
+++ b/mysql-test/r/merge_innodb.result
@@ -0,0 +1,37 @@
+DROP TABLE IF EXISTS t1, t2, t3, t4, t5;
+CREATE TABLE t1 (c1 varchar(100)) ENGINE=MyISAM;
+CREATE TABLE t2 (c1 varchar(100)) ENGINE=MyISAM;
+CREATE TABLE t3 (c1 varchar(100)) ENGINE=InnoDB;
+INSERT INTO t1 VALUES ('Ann'), ('Alice');
+INSERT INTO t2 VALUES ('Bob'), ('Brian');
+INSERT INTO t3 VALUES ('Chris'), ('Charlie');
+CREATE TABLE t4 (c1 varchar(100)) ENGINE=MRG_MYISAM UNION=(t1,t2)
+INSERT_METHOD=LAST;
+CREATE TABLE t5 (c1 varchar(100)) ENGINE=MRG_MYISAM UNION=(t1,t3)
+INSERT_METHOD=LAST;
+SELECT * FROM t5;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+SELECT * FROM t4;
+c1
+Ann
+Alice
+Bob
+Brian
+ALTER TABLE t2 ENGINE=InnoDB;
+SELECT * FROM t4;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+DELETE FROM t2 LIMIT 1;
+SELECT * FROM t4;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+INSERT INTO t4 VALUES ('Beware');
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+SELECT * FROM t4;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+SELECT * FROM t2;
+c1
+Brian
+SELECT * FROM t1;
+c1
+Ann
+Alice
+DROP TABLE t1, t2, t3, t4, t5;
diff --git a/mysql-test/r/metadata.result b/mysql-test/r/metadata.result
index 5aad5874ffc..6b498e55d85 100644
--- a/mysql-test/r/metadata.result
+++ b/mysql-test/r/metadata.result
@@ -21,7 +21,7 @@ def test t1 t1 g g 5 4 0 Y 32768 3 63
def test t1 t1 h h 246 7 0 Y 0 4 63
def test t1 t1 i i 13 4 0 Y 32864 0 63
def test t1 t1 j j 10 10 0 Y 128 0 63
-def test t1 t1 k k 7 19 0 N 1249 0 63
+def test t1 t1 k k 7 19 0 N 9441 0 63
def test t1 t1 l l 12 19 0 Y 128 0 63
def test t1 t1 m m 254 1 0 Y 256 0 8
def test t1 t1 n n 254 3 0 Y 2048 0 8
diff --git a/mysql-test/r/mix2_myisam.result b/mysql-test/r/mix2_myisam.result
new file mode 100644
index 00000000000..cabc4de8d21
--- /dev/null
+++ b/mysql-test/r/mix2_myisam.result
@@ -0,0 +1,2163 @@
+SET SESSION STORAGE_ENGINE = MEMORY;
+drop table if exists t1,t2,t3,t4;
+drop database if exists mysqltest;
+create table t1 (id int unsigned not null auto_increment, code tinyint unsigned not null, name char(20) not null, primary key (id), key (code), unique (name)) engine=MyISAM;
+insert into t1 (code, name) values (1, 'Tim'), (1, 'Monty'), (2, 'David'), (2, 'Erik'), (3, 'Sasha'), (3, 'Jeremy'), (4, 'Matt');
+select id, code, name from t1 order by id;
+id code name
+1 1 Tim
+2 1 Monty
+3 2 David
+4 2 Erik
+5 3 Sasha
+6 3 Jeremy
+7 4 Matt
+update ignore t1 set id = 8, name = 'Sinisa' where id < 3;
+select id, code, name from t1 order by id;
+id code name
+2 1 Monty
+3 2 David
+4 2 Erik
+5 3 Sasha
+6 3 Jeremy
+7 4 Matt
+8 1 Sinisa
+update ignore t1 set id = id + 10, name = 'Ralph' where id < 4;
+select id, code, name from t1 order by id;
+id code name
+3 2 David
+4 2 Erik
+5 3 Sasha
+6 3 Jeremy
+7 4 Matt
+8 1 Sinisa
+12 1 Ralph
+drop table t1;
+CREATE TABLE t1 (
+id int(11) NOT NULL auto_increment,
+parent_id int(11) DEFAULT '0' NOT NULL,
+level tinyint(4) DEFAULT '0' NOT NULL,
+PRIMARY KEY (id),
+KEY parent_id (parent_id),
+KEY level (level)
+) engine=MyISAM;
+INSERT INTO t1 VALUES (1,0,0),(3,1,1),(4,1,1),(8,2,2),(9,2,2),(17,3,2),(22,4,2),(24,4,2),(28,5,2),(29,5,2),(30,5,2),(31,6,2),(32,6,2),(33,6,2),(203,7,2),(202,7,2),(20,3,2),(157,0,0),(193,5,2),(40,7,2),(2,1,1),(15,2,2),(6,1,1),(34,6,2),(35,6,2),(16,3,2),(7,1,1),(36,7,2),(18,3,2),(26,5,2),(27,5,2),(183,4,2),(38,7,2),(25,5,2),(37,7,2),(21,4,2),(19,3,2),(5,1,1),(179,5,2);
+update t1 set parent_id=parent_id+100;
+select * from t1 where parent_id=102;
+id parent_id level
+8 102 2
+9 102 2
+15 102 2
+update t1 set id=id+1000;
+update t1 set id=1024 where id=1009;
+Got one of the listed errors
+select * from t1;
+id parent_id level
+1001 100 0
+1003 101 1
+1004 101 1
+1008 102 2
+1009 102 2
+1017 103 2
+1022 104 2
+1024 104 2
+1028 105 2
+1029 105 2
+1030 105 2
+1031 106 2
+1032 106 2
+1033 106 2
+1203 107 2
+1202 107 2
+1020 103 2
+1157 100 0
+1193 105 2
+1040 107 2
+1002 101 1
+1015 102 2
+1006 101 1
+1034 106 2
+1035 106 2
+1016 103 2
+1007 101 1
+1036 107 2
+1018 103 2
+1026 105 2
+1027 105 2
+1183 104 2
+1038 107 2
+1025 105 2
+1037 107 2
+1021 104 2
+1019 103 2
+1005 101 1
+1179 105 2
+update ignore t1 set id=id+1;
+select * from t1;
+id parent_id level
+1001 100 0
+1003 101 1
+1004 101 1
+1008 102 2
+1010 102 2
+1017 103 2
+1023 104 2
+1024 104 2
+1028 105 2
+1029 105 2
+1030 105 2
+1031 106 2
+1032 106 2
+1033 106 2
+1204 107 2
+1203 107 2
+1020 103 2
+1158 100 0
+1194 105 2
+1041 107 2
+1002 101 1
+1015 102 2
+1006 101 1
+1034 106 2
+1035 106 2
+1016 103 2
+1007 101 1
+1036 107 2
+1018 103 2
+1026 105 2
+1027 105 2
+1184 104 2
+1039 107 2
+1025 105 2
+1038 107 2
+1022 104 2
+1019 103 2
+1005 101 1
+1180 105 2
+update ignore t1 set id=1023 where id=1010;
+select * from t1 where parent_id=102;
+id parent_id level
+1008 102 2
+1010 102 2
+1015 102 2
+explain select level from t1 where level=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref level level 1 const # Using index
+explain select level,id from t1 where level=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref level level 1 const #
+explain select level,id,parent_id from t1 where level=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref level level 1 const #
+select level,id from t1 where level=1;
+level id
+1 1003
+1 1004
+1 1002
+1 1006
+1 1007
+1 1005
+select level,id,parent_id from t1 where level=1;
+level id parent_id
+1 1003 101
+1 1004 101
+1 1002 101
+1 1006 101
+1 1007 101
+1 1005 101
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+show keys from t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 0 PRIMARY 1 id A # NULL NULL BTREE
+t1 1 parent_id 1 parent_id A # NULL NULL BTREE
+t1 1 level 1 level A # NULL NULL BTREE
+drop table t1;
+CREATE TABLE t1 (
+gesuchnr int(11) DEFAULT '0' NOT NULL,
+benutzer_id int(11) DEFAULT '0' NOT NULL,
+PRIMARY KEY (gesuchnr,benutzer_id)
+) engine=MyISAM;
+replace into t1 (gesuchnr,benutzer_id) values (2,1);
+replace into t1 (gesuchnr,benutzer_id) values (1,1);
+replace into t1 (gesuchnr,benutzer_id) values (1,1);
+select * from t1;
+gesuchnr benutzer_id
+1 1
+2 1
+drop table t1;
+create table t1 (a int) engine=MyISAM;
+insert into t1 values (1), (2);
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+delete from t1 where a = 1;
+select * from t1;
+a
+2
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+create table t1 (a int,b varchar(20)) engine=MyISAM;
+insert into t1 values (1,""), (2,"testing");
+delete from t1 where a = 1;
+select * from t1;
+a b
+2 testing
+create index skr on t1 (a);
+insert into t1 values (3,""), (4,"testing");
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+show keys from t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 1 skr 1 a A # NULL NULL YES BTREE
+drop table t1;
+create table t1 (a int,b varchar(20),key(a)) engine=MyISAM;
+insert into t1 values (1,""), (2,"testing");
+select * from t1 where a = 1;
+a b
+1
+drop table t1;
+CREATE TABLE t1 (
+user_id int(10) DEFAULT '0' NOT NULL,
+name varchar(100),
+phone varchar(100),
+ref_email varchar(100) DEFAULT '' NOT NULL,
+detail varchar(200),
+PRIMARY KEY (user_id,ref_email)
+)engine=MyISAM;
+INSERT INTO t1 VALUES (10292,'sanjeev','29153373','sansh777@hotmail.com','xxx'),(10292,'shirish','2333604','shirish@yahoo.com','ddsds'),(10292,'sonali','323232','sonali@bolly.com','filmstar');
+select * from t1 where user_id=10292;
+user_id name phone ref_email detail
+10292 sanjeev 29153373 sansh777@hotmail.com xxx
+10292 shirish 2333604 shirish@yahoo.com ddsds
+10292 sonali 323232 sonali@bolly.com filmstar
+INSERT INTO t1 VALUES (10291,'sanjeev','29153373','sansh777@hotmail.com','xxx'),(10293,'shirish','2333604','shirish@yahoo.com','ddsds');
+select * from t1 where user_id=10292;
+user_id name phone ref_email detail
+10292 sanjeev 29153373 sansh777@hotmail.com xxx
+10292 shirish 2333604 shirish@yahoo.com ddsds
+10292 sonali 323232 sonali@bolly.com filmstar
+select * from t1 where user_id>=10292;
+user_id name phone ref_email detail
+10292 sanjeev 29153373 sansh777@hotmail.com xxx
+10292 shirish 2333604 shirish@yahoo.com ddsds
+10292 sonali 323232 sonali@bolly.com filmstar
+10293 shirish 2333604 shirish@yahoo.com ddsds
+select * from t1 where user_id>10292;
+user_id name phone ref_email detail
+10293 shirish 2333604 shirish@yahoo.com ddsds
+select * from t1 where user_id<10292;
+user_id name phone ref_email detail
+10291 sanjeev 29153373 sansh777@hotmail.com xxx
+drop table t1;
+CREATE TABLE t1 (a int not null, b int not null,c int not null,
+key(a),primary key(a,b), unique(c),key(a),unique(b)) ENGINE = MyISAM;
+show index from t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 0 PRIMARY 1 a A # NULL NULL BTREE
+t1 0 PRIMARY 2 b A # NULL NULL BTREE
+t1 0 c 1 c A # NULL NULL BTREE
+t1 0 b 1 b A # NULL NULL BTREE
+t1 1 a 1 a A # NULL NULL BTREE
+t1 1 a_2 1 a A # NULL NULL BTREE
+drop table t1;
+create table t1 (col1 int not null, col2 char(4) not null, primary key(col1)) ENGINE = MEMORY;
+alter table t1 engine=MyISAM;
+insert into t1 values ('1','1'),('5','2'),('2','3'),('3','4'),('4','4');
+select * from t1;
+col1 col2
+1 1
+5 2
+2 3
+3 4
+4 4
+update t1 set col2='7' where col1='4';
+select * from t1;
+col1 col2
+1 1
+5 2
+2 3
+3 4
+4 7
+alter table t1 add co3 int not null;
+select * from t1;
+col1 col2 co3
+1 1 0
+5 2 0
+2 3 0
+3 4 0
+4 7 0
+update t1 set col2='9' where col1='2';
+select * from t1;
+col1 col2 co3
+1 1 0
+5 2 0
+2 9 0
+3 4 0
+4 7 0
+drop table t1;
+create table t1 (a int not null , b int, primary key (a)) engine = MyISAM;
+create table t2 (a int not null , b int, primary key (a)) engine = MEMORY;
+insert into t1 VALUES (1,3) , (2,3), (3,3);
+select * from t1;
+a b
+1 3
+2 3
+3 3
+insert into t2 select * from t1;
+select * from t2;
+a b
+1 3
+2 3
+3 3
+delete from t1 where b = 3;
+select * from t1;
+a b
+insert into t1 select * from t2;
+select * from t1;
+a b
+3 3
+2 3
+1 3
+select * from t2;
+a b
+1 3
+2 3
+3 3
+drop table t1,t2;
+CREATE TABLE t1 (
+id int(11) NOT NULL auto_increment,
+ggid varchar(32) binary DEFAULT '' NOT NULL,
+email varchar(64) DEFAULT '' NOT NULL,
+passwd varchar(32) binary DEFAULT '' NOT NULL,
+PRIMARY KEY (id),
+UNIQUE ggid (ggid)
+) ENGINE=MyISAM;
+insert into t1 (ggid,passwd) values ('test1','xxx');
+insert into t1 (ggid,passwd) values ('test2','yyy');
+insert into t1 (ggid,passwd) values ('test2','this will fail');
+ERROR 23000: Duplicate entry 'test2' for key 'ggid'
+insert into t1 (ggid,id) values ('this will fail',1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+select * from t1 where ggid='test1';
+id ggid email passwd
+1 test1 xxx
+select * from t1 where passwd='xxx';
+id ggid email passwd
+1 test1 xxx
+select * from t1 where id=2;
+id ggid email passwd
+2 test2 yyy
+replace into t1 (ggid,id) values ('this will work',1);
+replace into t1 (ggid,passwd) values ('test2','this will work');
+update t1 set id=100,ggid='test2' where id=1;
+ERROR 23000: Duplicate entry 'test2' for key 'ggid'
+select * from t1;
+id ggid email passwd
+1 this will work
+3 test2 this will work
+select * from t1 where id=1;
+id ggid email passwd
+1 this will work
+select * from t1 where id=999;
+id ggid email passwd
+drop table t1;
+CREATE TABLE t1 (
+user_name varchar(12),
+password text,
+subscribed char(1),
+user_id int(11) DEFAULT '0' NOT NULL,
+quota bigint(20),
+weight double,
+access_date date,
+access_time time,
+approved datetime,
+dummy_primary_key int(11) NOT NULL auto_increment,
+PRIMARY KEY (dummy_primary_key)
+) ENGINE=MyISAM;
+INSERT INTO t1 VALUES ('user_0','somepassword','N',0,0,0,'2000-09-07','23:06:59','2000-09-07 23:06:59',1);
+INSERT INTO t1 VALUES ('user_1','somepassword','Y',1,1,1,'2000-09-07','23:06:59','2000-09-07 23:06:59',2);
+INSERT INTO t1 VALUES ('user_2','somepassword','N',2,2,1.4142135623731,'2000-09-07','23:06:59','2000-09-07 23:06:59',3);
+INSERT INTO t1 VALUES ('user_3','somepassword','Y',3,3,1.7320508075689,'2000-09-07','23:06:59','2000-09-07 23:06:59',4);
+INSERT INTO t1 VALUES ('user_4','somepassword','N',4,4,2,'2000-09-07','23:06:59','2000-09-07 23:06:59',5);
+select user_name, password , subscribed, user_id, quota, weight, access_date, access_time, approved, dummy_primary_key from t1 order by user_name;
+user_name password subscribed user_id quota weight access_date access_time approved dummy_primary_key
+user_0 somepassword N 0 0 0 2000-09-07 23:06:59 2000-09-07 23:06:59 1
+user_1 somepassword Y 1 1 1 2000-09-07 23:06:59 2000-09-07 23:06:59 2
+user_2 somepassword N 2 2 1.4142135623731 2000-09-07 23:06:59 2000-09-07 23:06:59 3
+user_3 somepassword Y 3 3 1.7320508075689 2000-09-07 23:06:59 2000-09-07 23:06:59 4
+user_4 somepassword N 4 4 2 2000-09-07 23:06:59 2000-09-07 23:06:59 5
+drop table t1;
+CREATE TABLE t1 (
+id int(11) NOT NULL auto_increment,
+parent_id int(11) DEFAULT '0' NOT NULL,
+level tinyint(4) DEFAULT '0' NOT NULL,
+KEY (id),
+KEY parent_id (parent_id),
+KEY level (level)
+) engine=MyISAM;
+INSERT INTO t1 VALUES (1,0,0),(3,1,1),(4,1,1),(8,2,2),(9,2,2),(17,3,2),(22,4,2),(24,4,2),(28,5,2),(29,5,2),(30,5,2),(31,6,2),(32,6,2),(33,6,2),(203,7,2),(202,7,2),(20,3,2),(157,0,0),(193,5,2),(40,7,2),(2,1,1),(15,2,2),(6,1,1),(34,6,2),(35,6,2),(16,3,2),(7,1,1),(36,7,2),(18,3,2),(26,5,2),(27,5,2),(183,4,2),(38,7,2),(25,5,2),(37,7,2),(21,4,2),(19,3,2),(5,1,1);
+INSERT INTO t1 values (179,5,2);
+update t1 set parent_id=parent_id+100;
+select * from t1 where parent_id=102;
+id parent_id level
+8 102 2
+9 102 2
+15 102 2
+update t1 set id=id+1000;
+update t1 set id=1024 where id=1009;
+select * from t1;
+id parent_id level
+1001 100 0
+1003 101 1
+1004 101 1
+1008 102 2
+1024 102 2
+1017 103 2
+1022 104 2
+1024 104 2
+1028 105 2
+1029 105 2
+1030 105 2
+1031 106 2
+1032 106 2
+1033 106 2
+1203 107 2
+1202 107 2
+1020 103 2
+1157 100 0
+1193 105 2
+1040 107 2
+1002 101 1
+1015 102 2
+1006 101 1
+1034 106 2
+1035 106 2
+1016 103 2
+1007 101 1
+1036 107 2
+1018 103 2
+1026 105 2
+1027 105 2
+1183 104 2
+1038 107 2
+1025 105 2
+1037 107 2
+1021 104 2
+1019 103 2
+1005 101 1
+1179 105 2
+update ignore t1 set id=id+1;
+select * from t1;
+id parent_id level
+1002 100 0
+1004 101 1
+1005 101 1
+1009 102 2
+1025 102 2
+1018 103 2
+1023 104 2
+1025 104 2
+1029 105 2
+1030 105 2
+1031 105 2
+1032 106 2
+1033 106 2
+1034 106 2
+1204 107 2
+1203 107 2
+1021 103 2
+1158 100 0
+1194 105 2
+1041 107 2
+1003 101 1
+1016 102 2
+1007 101 1
+1035 106 2
+1036 106 2
+1017 103 2
+1008 101 1
+1037 107 2
+1019 103 2
+1027 105 2
+1028 105 2
+1184 104 2
+1039 107 2
+1026 105 2
+1038 107 2
+1022 104 2
+1020 103 2
+1006 101 1
+1180 105 2
+update ignore t1 set id=1023 where id=1010;
+select * from t1 where parent_id=102;
+id parent_id level
+1009 102 2
+1025 102 2
+1016 102 2
+explain select level from t1 where level=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref level level 1 const # Using index
+select level,id from t1 where level=1;
+level id
+1 1004
+1 1005
+1 1003
+1 1007
+1 1008
+1 1006
+select level,id,parent_id from t1 where level=1;
+level id parent_id
+1 1004 101
+1 1005 101
+1 1003 101
+1 1007 101
+1 1008 101
+1 1006 101
+select level,id from t1 where level=1 order by id;
+level id
+1 1003
+1 1004
+1 1005
+1 1006
+1 1007
+1 1008
+delete from t1 where level=1;
+select * from t1;
+id parent_id level
+1002 100 0
+1009 102 2
+1025 102 2
+1018 103 2
+1023 104 2
+1025 104 2
+1029 105 2
+1030 105 2
+1031 105 2
+1032 106 2
+1033 106 2
+1034 106 2
+1204 107 2
+1203 107 2
+1021 103 2
+1158 100 0
+1194 105 2
+1041 107 2
+1016 102 2
+1035 106 2
+1036 106 2
+1017 103 2
+1037 107 2
+1019 103 2
+1027 105 2
+1028 105 2
+1184 104 2
+1039 107 2
+1026 105 2
+1038 107 2
+1022 104 2
+1020 103 2
+1180 105 2
+drop table t1;
+CREATE TABLE t1 (
+sca_code char(6) NOT NULL,
+cat_code char(6) NOT NULL,
+sca_desc varchar(50),
+lan_code char(2) NOT NULL,
+sca_pic varchar(100),
+sca_sdesc varchar(50),
+sca_sch_desc varchar(16),
+PRIMARY KEY (sca_code, cat_code, lan_code),
+INDEX sca_pic (sca_pic)
+) engine = MyISAM ;
+INSERT INTO t1 ( sca_code, cat_code, sca_desc, lan_code, sca_pic, sca_sdesc, sca_sch_desc) VALUES ( 'PD', 'J', 'PENDANT', 'EN', NULL, NULL, 'PENDANT'),( 'RI', 'J', 'RING', 'EN', NULL, NULL, 'RING'),( 'QQ', 'N', 'RING', 'EN', 'not null', NULL, 'RING');
+select count(*) from t1 where sca_code = 'PD';
+count(*)
+1
+select count(*) from t1 where sca_code <= 'PD';
+count(*)
+1
+select count(*) from t1 where sca_pic is null;
+count(*)
+2
+alter table t1 drop index sca_pic, add index sca_pic (cat_code, sca_pic);
+select count(*) from t1 where sca_code='PD' and sca_pic is null;
+count(*)
+1
+select count(*) from t1 where cat_code='E';
+count(*)
+0
+alter table t1 drop index sca_pic, add index (sca_pic, cat_code);
+select count(*) from t1 where sca_code='PD' and sca_pic is null;
+count(*)
+1
+select count(*) from t1 where sca_pic >= 'n';
+count(*)
+1
+select sca_pic from t1 where sca_pic is null;
+sca_pic
+NULL
+NULL
+update t1 set sca_pic="test" where sca_pic is null;
+delete from t1 where sca_code='pd';
+drop table t1;
+set @a:=now();
+CREATE TABLE t1 (a int not null, b timestamp not null, primary key (a)) engine=MyISAM;
+insert into t1 (a) values(1),(2),(3);
+select t1.a from t1 natural join t1 as t2 where t1.b >= @a order by t1.a;
+a
+1
+2
+3
+select a from t1 natural join t1 as t2 where b >= @a order by a;
+a
+1
+2
+3
+update t1 set a=5 where a=1;
+select a from t1;
+a
+2
+3
+5
+drop table t1;
+create table t1 (a varchar(100) not null, primary key(a), b int not null) engine=MyISAM;
+insert into t1 values("hello",1),("world",2);
+select * from t1 order by b desc;
+a b
+world 2
+hello 1
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+show keys from t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 0 PRIMARY 1 a A # NULL NULL BTREE
+drop table t1;
+create table t1 (i int, j int ) ENGINE=MyISAM;
+insert into t1 values (1,2);
+select * from t1 where i=1 and j=2;
+i j
+1 2
+create index ax1 on t1 (i,j);
+select * from t1 where i=1 and j=2;
+i j
+1 2
+drop table t1;
+CREATE TABLE t1 (
+a int3 unsigned NOT NULL,
+b int1 unsigned NOT NULL,
+UNIQUE (a, b)
+) ENGINE = MyISAM;
+INSERT INTO t1 VALUES (1, 1);
+SELECT MIN(B),MAX(b) FROM t1 WHERE t1.a = 1;
+MIN(B) MAX(b)
+1 1
+drop table t1;
+CREATE TABLE t1 (a int unsigned NOT NULL) engine=MyISAM;
+INSERT INTO t1 VALUES (1);
+SELECT * FROM t1;
+a
+1
+DROP TABLE t1;
+create table t1 (a int primary key,b int, c int, d int, e int, f int, g int, h int, i int, j int, k int, l int, m int, n int, o int, p int, q int, r int, s int, t int, u int, v int, w int, x int, y int, z int, a1 int, a2 int, a3 int, a4 int, a5 int, a6 int, a7 int, a8 int, a9 int, b1 int, b2 int, b3 int, b4 int, b5 int, b6 int) engine = MyISAM;
+insert into t1 values (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
+explain select * from t1 where a > 0 and a < 50;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 system PRIMARY NULL NULL NULL #
+drop table t1;
+create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(30),primary key (id,id2),index index_id3 (id3)) engine=MyISAM;
+insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJKL');
+LOCK TABLES t1 WRITE;
+insert into t1 values (99,1,2,'D'),(1,1,2,'D');
+ERROR 23000: Duplicate entry '1-1' for key 'PRIMARY'
+select id from t1;
+id
+0
+1
+2
+99
+select id from t1;
+id
+0
+1
+2
+99
+UNLOCK TABLES;
+DROP TABLE t1;
+create table t1 (id int NOT NULL,id2 int NOT NULL,id3 int NOT NULL,dummy1 char(30),primary key (id,id2),index index_id3 (id3)) engine=MyISAM;
+insert into t1 values (0,0,0,'ABCDEFGHIJ'),(2,2,2,'BCDEFGHIJK'),(1,1,1,'CDEFGHIJKL');
+LOCK TABLES t1 WRITE;
+begin;
+insert into t1 values (99,1,2,'D'),(1,1,2,'D');
+ERROR 23000: Duplicate entry '1-1' for key 'PRIMARY'
+select id from t1;
+id
+0
+1
+2
+99
+insert ignore into t1 values (100,1,2,'D'),(1,1,99,'D');
+commit;
+select id,id3 from t1;
+id id3
+0 0
+2 2
+1 1
+99 2
+100 2
+UNLOCK TABLES;
+DROP TABLE t1;
+create table t1 (a char(20), unique (a(5))) engine=MyISAM;
+drop table t1;
+create table t1 (a char(20), index (a(5))) engine=MyISAM;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` char(20) DEFAULT NULL,
+ KEY `a` (`a`(5))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create temporary table t1 (a int not null auto_increment, primary key(a)) engine=MyISAM;
+insert into t1 values (NULL),(NULL),(NULL);
+delete from t1 where a=3;
+insert into t1 values (NULL);
+select * from t1;
+a
+1
+2
+4
+alter table t1 add b int;
+select * from t1;
+a b
+1 NULL
+2 NULL
+4 NULL
+drop table t1;
+create table t1
+(
+id int auto_increment primary key,
+name varchar(32) not null,
+value text not null,
+uid int not null,
+unique key(name,uid)
+) engine=MyISAM;
+insert into t1 values (1,'one','one value',101),
+(2,'two','two value',102),(3,'three','three value',103);
+set insert_id=5;
+replace into t1 (value,name,uid) values ('other value','two',102);
+delete from t1 where uid=102;
+set insert_id=5;
+replace into t1 (value,name,uid) values ('other value','two',102);
+set insert_id=6;
+replace into t1 (value,name,uid) values ('other value','two',102);
+select * from t1;
+id name value uid
+1 one one value 101
+3 three three value 103
+6 two other value 102
+drop table t1;
+create database mysqltest;
+create table mysqltest.t1 (a int not null) engine= MyISAM;
+insert into mysqltest.t1 values(1);
+create table mysqltest.t2 (a int not null) engine= MEMORY;
+insert into mysqltest.t2 values(1);
+create table mysqltest.t3 (a int not null) engine= MEMORY;
+insert into mysqltest.t3 values(1);
+commit;
+drop database mysqltest;
+show tables from mysqltest;
+ERROR 42000: Unknown database 'mysqltest'
+set autocommit=0;
+create table t1 (a int not null) engine= MyISAM;
+insert into t1 values(1),(2);
+truncate table t1;
+commit;
+truncate table t1;
+truncate table t1;
+select * from t1;
+a
+insert into t1 values(1),(2);
+delete from t1;
+select * from t1;
+a
+commit;
+drop table t1;
+set autocommit=1;
+create table t1 (a int not null) engine= MyISAM;
+insert into t1 values(1),(2);
+truncate table t1;
+insert into t1 values(1),(2);
+select * from t1;
+a
+1
+2
+truncate table t1;
+insert into t1 values(1),(2);
+delete from t1;
+select * from t1;
+a
+drop table t1;
+create table t1 (a int not null, b int not null, c int not null, primary key (a),key(b)) engine=MyISAM;
+insert into t1 values (3,3,3),(1,1,1),(2,2,2),(4,4,4);
+explain select * from t1 order by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
+explain select * from t1 order by b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
+explain select * from t1 order by c;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
+explain select a from t1 order by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL # Using index
+explain select b from t1 order by b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL b 4 NULL # Using index
+explain select a,b from t1 order by b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL # Using filesort
+explain select a,b from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL #
+explain select a,b,c from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL #
+drop table t1;
+create table t1 (t int not null default 1, key (t)) engine=MyISAM;
+desc t1;
+Field Type Null Key Default Extra
+t int(11) NO MUL 1
+drop table t1;
+CREATE TABLE t1 (
+number bigint(20) NOT NULL default '0',
+cname char(15) NOT NULL default '',
+carrier_id smallint(6) NOT NULL default '0',
+privacy tinyint(4) NOT NULL default '0',
+last_mod_date timestamp NOT NULL,
+last_mod_id smallint(6) NOT NULL default '0',
+last_app_date timestamp NOT NULL,
+last_app_id smallint(6) default '-1',
+version smallint(6) NOT NULL default '0',
+assigned_scps int(11) default '0',
+status tinyint(4) default '0'
+) ENGINE=MyISAM;
+INSERT INTO t1 VALUES (4077711111,'SeanWheeler',90,2,20020111112846,500,00000000000000,-1,2,3,1);
+INSERT INTO t1 VALUES (9197722223,'berry',90,3,20020111112809,500,20020102114532,501,4,10,0);
+INSERT INTO t1 VALUES (650,'San Francisco',0,0,20011227111336,342,00000000000000,-1,1,24,1);
+INSERT INTO t1 VALUES (302467,'Sue\'s Subshop',90,3,20020109113241,500,20020102115111,501,7,24,0);
+INSERT INTO t1 VALUES (6014911113,'SudzCarwash',520,1,20020102115234,500,20020102115259,501,33,32768,0);
+INSERT INTO t1 VALUES (333,'tubs',99,2,20020109113440,501,20020109113440,500,3,10,0);
+CREATE TABLE t2 (
+number bigint(20) NOT NULL default '0',
+cname char(15) NOT NULL default '',
+carrier_id smallint(6) NOT NULL default '0',
+privacy tinyint(4) NOT NULL default '0',
+last_mod_date timestamp NOT NULL,
+last_mod_id smallint(6) NOT NULL default '0',
+last_app_date timestamp NOT NULL,
+last_app_id smallint(6) default '-1',
+version smallint(6) NOT NULL default '0',
+assigned_scps int(11) default '0',
+status tinyint(4) default '0'
+) ENGINE=MyISAM;
+INSERT INTO t2 VALUES (4077711111,'SeanWheeler',0,2,20020111112853,500,00000000000000,-1,2,3,1);
+INSERT INTO t2 VALUES (9197722223,'berry',90,3,20020111112818,500,20020102114532,501,4,10,0);
+INSERT INTO t2 VALUES (650,'San Francisco',90,0,20020109113158,342,00000000000000,-1,1,24,1);
+INSERT INTO t2 VALUES (333,'tubs',99,2,20020109113453,501,20020109113453,500,3,10,0);
+select * from t1;
+number cname carrier_id privacy last_mod_date last_mod_id last_app_date last_app_id version assigned_scps status
+4077711111 SeanWheeler 90 2 2002-01-11 11:28:46 500 0000-00-00 00:00:00 -1 2 3 1
+9197722223 berry 90 3 2002-01-11 11:28:09 500 2002-01-02 11:45:32 501 4 10 0
+650 San Francisco 0 0 2001-12-27 11:13:36 342 0000-00-00 00:00:00 -1 1 24 1
+302467 Sue's Subshop 90 3 2002-01-09 11:32:41 500 2002-01-02 11:51:11 501 7 24 0
+6014911113 SudzCarwash 520 1 2002-01-02 11:52:34 500 2002-01-02 11:52:59 501 33 32768 0
+333 tubs 99 2 2002-01-09 11:34:40 501 2002-01-09 11:34:40 500 3 10 0
+select * from t2;
+number cname carrier_id privacy last_mod_date last_mod_id last_app_date last_app_id version assigned_scps status
+4077711111 SeanWheeler 0 2 2002-01-11 11:28:53 500 0000-00-00 00:00:00 -1 2 3 1
+9197722223 berry 90 3 2002-01-11 11:28:18 500 2002-01-02 11:45:32 501 4 10 0
+650 San Francisco 90 0 2002-01-09 11:31:58 342 0000-00-00 00:00:00 -1 1 24 1
+333 tubs 99 2 2002-01-09 11:34:53 501 2002-01-09 11:34:53 500 3 10 0
+delete t1, t2 from t1 left join t2 on t1.number=t2.number where (t1.carrier_id=90 and t1.number=t2.number) or (t2.carrier_id=90 and t1.number=t2.number) or (t1.carrier_id=90 and t2.number is null);
+select * from t1;
+number cname carrier_id privacy last_mod_date last_mod_id last_app_date last_app_id version assigned_scps status
+6014911113 SudzCarwash 520 1 2002-01-02 11:52:34 500 2002-01-02 11:52:59 501 33 32768 0
+333 tubs 99 2 2002-01-09 11:34:40 501 2002-01-09 11:34:40 500 3 10 0
+select * from t2;
+number cname carrier_id privacy last_mod_date last_mod_id last_app_date last_app_id version assigned_scps status
+333 tubs 99 2 2002-01-09 11:34:53 501 2002-01-09 11:34:53 500 3 10 0
+select * from t2;
+number cname carrier_id privacy last_mod_date last_mod_id last_app_date last_app_id version assigned_scps status
+333 tubs 99 2 2002-01-09 11:34:53 501 2002-01-09 11:34:53 500 3 10 0
+drop table t1,t2;
+create table t1 (id int unsigned not null auto_increment, code tinyint unsigned not null, name char(20) not null, primary key (id), key (code), unique (name)) engine=MyISAM;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+SELECT @@tx_isolation,@@global.tx_isolation;
+@@tx_isolation @@global.tx_isolation
+SERIALIZABLE REPEATABLE-READ
+insert into t1 (code, name) values (1, 'Tim'), (1, 'Monty'), (2, 'David');
+select id, code, name from t1 order by id;
+id code name
+1 1 Tim
+2 1 Monty
+3 2 David
+COMMIT;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
+insert into t1 (code, name) values (2, 'Erik'), (3, 'Sasha');
+select id, code, name from t1 order by id;
+id code name
+1 1 Tim
+2 1 Monty
+3 2 David
+4 2 Erik
+5 3 Sasha
+COMMIT;
+BEGIN;
+SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
+insert into t1 (code, name) values (3, 'Jeremy'), (4, 'Matt');
+select id, code, name from t1 order by id;
+id code name
+1 1 Tim
+2 1 Monty
+3 2 David
+4 2 Erik
+5 3 Sasha
+6 3 Jeremy
+7 4 Matt
+COMMIT;
+DROP TABLE t1;
+create table t1 (n int(10), d int(10)) engine=MyISAM;
+create table t2 (n int(10), d int(10)) engine=MyISAM;
+insert into t1 values(1,1),(1,2);
+insert into t2 values(1,10),(2,20);
+UPDATE t1,t2 SET t1.d=t2.d,t2.d=30 WHERE t1.n=t2.n;
+select * from t1;
+n d
+1 10
+1 10
+select * from t2;
+n d
+1 30
+2 20
+drop table t1,t2;
+create table t1 (a int, b int) engine=MyISAM;
+insert into t1 values(20,null);
+select t2.b, ifnull(t2.b,"this is null") from t1 as t2 left join t1 as t3 on
+t2.b=t3.a;
+b ifnull(t2.b,"this is null")
+NULL this is null
+select t2.b, ifnull(t2.b,"this is null") from t1 as t2 left join t1 as t3 on
+t2.b=t3.a order by 1;
+b ifnull(t2.b,"this is null")
+NULL this is null
+insert into t1 values(10,null);
+select t2.b, ifnull(t2.b,"this is null") from t1 as t2 left join t1 as t3 on
+t2.b=t3.a order by 1;
+b ifnull(t2.b,"this is null")
+NULL this is null
+NULL this is null
+drop table t1;
+create table t1 (a varchar(10) not null) engine = MEMORY;
+create table t2 (b varchar(10) not null unique) engine=MyISAM;
+select t1.a from t1,t2 where t1.a=t2.b;
+a
+drop table t1,t2;
+create table t1 (a int not null, b int, primary key (a)) engine = MyISAM;
+create table t2 (a int not null, b int, primary key (a)) engine = MyISAM;
+insert into t1 values (10, 20);
+insert into t2 values (10, 20);
+update t1, t2 set t1.b = 150, t2.b = t1.b where t2.a = t1.a and t1.a = 10;
+drop table t1,t2;
+CREATE TABLE t1 (a int not null primary key, b int not null, unique (b)) engine=MyISAM;
+INSERT INTO t1 values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8),(9,9);
+UPDATE t1 set a=a+100 where b between 2 and 3 and a < 1000;
+SELECT * from t1;
+a b
+1 1
+102 2
+103 3
+4 4
+5 5
+6 6
+7 7
+8 8
+9 9
+drop table t1;
+CREATE TABLE t1 (a int not null primary key, b int not null, key (b)) engine=MyISAM;
+CREATE TABLE t2 (a int not null primary key, b int not null, key (b)) engine=MyISAM;
+INSERT INTO t1 values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8),(9,9),(10,10),(11,11),(12,12);
+INSERT INTO t2 values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8),(9,9);
+update t1,t2 set t1.a=t1.a+100;
+select * from t1;
+a b
+101 1
+102 2
+103 3
+104 4
+105 5
+106 6
+107 7
+108 8
+109 9
+110 10
+111 11
+112 12
+update t1,t2 set t1.a=t1.a+100 where t1.a=101;
+select * from t1;
+a b
+201 1
+102 2
+103 3
+104 4
+105 5
+106 6
+107 7
+108 8
+109 9
+110 10
+111 11
+112 12
+update t1,t2 set t1.b=t1.b+10 where t1.b=2;
+select * from t1;
+a b
+201 1
+102 12
+103 3
+104 4
+105 5
+106 6
+107 7
+108 8
+109 9
+110 10
+111 11
+112 12
+update t1,t2 set t1.b=t1.b+2,t2.b=t1.b+10 where t1.b between 3 and 5 and t1.a=t2.a+100;
+select * from t1;
+a b
+201 1
+102 12
+103 5
+104 6
+105 7
+106 6
+107 7
+108 8
+109 9
+110 10
+111 11
+112 12
+select * from t2;
+a b
+1 1
+2 2
+3 13
+4 14
+5 15
+6 6
+7 7
+8 8
+9 9
+drop table t1,t2;
+CREATE TABLE t2 ( NEXT_T BIGINT NOT NULL PRIMARY KEY) ENGINE=MEMORY;
+CREATE TABLE t1 ( B_ID INTEGER NOT NULL PRIMARY KEY) ENGINE=MyISAM;
+SET AUTOCOMMIT=0;
+INSERT INTO t1 ( B_ID ) VALUES ( 1 );
+INSERT INTO t2 ( NEXT_T ) VALUES ( 1 );
+ROLLBACK;
+Warnings:
+Warning 1196 Some non-transactional changed tables couldn't be rolled back
+SELECT * FROM t1;
+B_ID
+1
+drop table t1,t2;
+create table t1 ( pk int primary key, parent int not null, child int not null, index (parent) ) engine = MyISAM;
+insert into t1 values (1,0,4), (2,1,3), (3,2,1), (4,1,2);
+select distinct parent,child from t1 order by parent;
+parent child
+0 4
+1 2
+1 3
+2 1
+drop table t1;
+create table t1 (a int not null auto_increment primary key, b int, c int, key(c)) engine=MyISAM;
+create table t2 (a int not null auto_increment primary key, b int) ENGINE = MEMORY;
+insert into t1 (b) values (null),(null),(null),(null),(null),(null),(null);
+insert into t2 (a) select b from t1;
+insert into t1 (b) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+insert into t2 (a) select b from t1;
+insert into t1 (a) select b from t2;
+select count(*) from t1;
+count(*)
+29267
+explain select * from t1 where c between 1 and 2500;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c c 5 NULL # Using where
+update t1 set c=a;
+explain select * from t1 where c between 1 and 2500;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range c c 5 NULL # Using where
+drop table t1,t2;
+create table t1 (id int primary key auto_increment, fk int, index index_fk (fk)) engine=MyISAM;
+insert into t1 (id) values (null),(null),(null),(null),(null);
+update t1 set fk=69 where fk is null order by id limit 1;
+SELECT * from t1;
+id fk
+1 69
+2 NULL
+3 NULL
+4 NULL
+5 NULL
+drop table t1;
+create table t1 (a int not null, b int not null, key (a)) engine=MyISAM;
+insert into t1 values (1,1),(1,2),(1,3),(3,1),(3,2),(3,3),(3,1),(3,2),(3,3),(2,1),(2,2),(2,3);
+SET @tmp=0;
+update t1 set b=(@tmp:=@tmp+1) order by a;
+update t1 set b=99 where a=1 order by b asc limit 1;
+update t1 set b=100 where a=1 order by b desc limit 2;
+update t1 set a=a+10+b where a=1 order by b;
+select * from t1 order by a,b;
+a b
+2 4
+2 5
+2 6
+3 7
+3 8
+3 9
+3 10
+3 11
+3 12
+13 2
+111 100
+111 100
+drop table t1;
+create table t1 ( c char(8) not null ) engine=MyISAM;
+insert into t1 values ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9');
+insert into t1 values ('A'),('B'),('C'),('D'),('E'),('F');
+alter table t1 add b char(8) not null;
+alter table t1 add a char(8) not null;
+alter table t1 add primary key (a,b,c);
+update t1 set a=c, b=c;
+create table t2 (c char(8) not null, b char(8) not null, a char(8) not null, primary key(a,b,c)) engine=MyISAM;
+insert into t2 select * from t1;
+delete t1,t2 from t2,t1 where t1.a<'B' and t2.b=t1.b;
+drop table t1,t2;
+SET AUTOCOMMIT=1;
+create table t1 (a integer auto_increment primary key) engine=MyISAM;
+insert into t1 (a) values (NULL),(NULL);
+truncate table t1;
+insert into t1 (a) values (NULL),(NULL);
+SELECT * from t1;
+a
+1
+2
+drop table t1;
+CREATE TABLE t1 (col1 int(1))ENGINE=MyISAM;
+CREATE TABLE t2 (col1 int(1),stamp TIMESTAMP,INDEX stamp_idx
+(stamp))ENGINE=MyISAM;
+insert into t1 values (1),(2),(3);
+insert into t2 values (1, 20020204130000),(2, 20020204130000),(4,20020204310000 ),(5,20020204230000);
+Warnings:
+Warning 1265 Data truncated for column 'stamp' at row 3
+SELECT col1 FROM t1 UNION SELECT col1 FROM t2 WHERE stamp <
+'20020204120000' GROUP BY col1;
+col1
+1
+2
+3
+4
+drop table t1,t2;
+CREATE TABLE t1 (
+`id` int(10) unsigned NOT NULL auto_increment,
+`id_object` int(10) unsigned default '0',
+`id_version` int(10) unsigned NOT NULL default '1',
+`label` varchar(100) NOT NULL default '',
+`description` text,
+PRIMARY KEY (`id`),
+KEY `id_object` (`id_object`),
+KEY `id_version` (`id_version`)
+) ENGINE=MyISAM;
+INSERT INTO t1 VALUES("6", "3382", "9", "Test", NULL), ("7", "102", "5", "Le Pekin (Test)", NULL),("584", "1794", "4", "Test de resto", NULL),("837", "1822", "6", "Test 3", NULL),("1119", "3524", "1", "Societe Test", NULL),("1122", "3525", "1", "Fournisseur Test", NULL);
+CREATE TABLE t2 (
+`id` int(10) unsigned NOT NULL auto_increment,
+`id_version` int(10) unsigned NOT NULL default '1',
+PRIMARY KEY (`id`),
+KEY `id_version` (`id_version`)
+) ENGINE=MyISAM;
+INSERT INTO t2 VALUES("3524", "1"),("3525", "1"),("1794", "4"),("102", "5"),("1822", "6"),("3382", "9");
+SELECT t2.id, t1.`label` FROM t2 INNER JOIN
+(SELECT t1.id_object as id_object FROM t1 WHERE t1.`label` LIKE '%test%') AS lbl
+ON (t2.id = lbl.id_object) INNER JOIN t1 ON (t2.id = t1.id_object);
+id label
+3382 Test
+102 Le Pekin (Test)
+1794 Test de resto
+1822 Test 3
+3524 Societe Test
+3525 Fournisseur Test
+drop table t1,t2;
+create table t1 (a int, b varchar(200), c text not null) checksum=1 engine=MyISAM;
+create table t2 (a int, b varchar(200), c text not null) checksum=0 engine=MyISAM;
+create table t3 (a int, b varchar(200), c varchar(200) not null) checksum=1 engine=MEMORY;
+create table t4 (a int, b varchar(200), c varchar(200) not null) checksum=0 engine=MEMORY;
+create table t5 (a int, b varchar(200), c text not null) checksum=1 engine=MyISAM;
+create table t6 (a int, b varchar(200), c text not null) checksum=0 engine=MyISAM;
+insert t1 values (1, "aaa", "bbb"), (NULL, "", "ccccc"), (0, NULL, "");
+insert t2 select * from t1;
+insert t3 select * from t1;
+insert t4 select * from t1;
+insert t5 select * from t1;
+insert t6 select * from t1;
+checksum table t1, t2, t3, t4, t5, t6, t7 quick;
+Table Checksum
+test.t1 2948697075
+test.t2 NULL
+test.t3 NULL
+test.t4 NULL
+test.t5 2948697075
+test.t6 NULL
+test.t7 NULL
+Warnings:
+Error 1146 Table 'test.t7' doesn't exist
+checksum table t1, t2, t3, t4, t5, t6, t7;
+Table Checksum
+test.t1 2948697075
+test.t2 2948697075
+test.t3 2948697075
+test.t4 2948697075
+test.t5 2948697075
+test.t6 2948697075
+test.t7 NULL
+Warnings:
+Error 1146 Table 'test.t7' doesn't exist
+checksum table t1, t2, t3, t4, t5, t6, t7 extended;
+Table Checksum
+test.t1 2948697075
+test.t2 2948697075
+test.t3 2948697075
+test.t4 2948697075
+test.t5 2948697075
+test.t6 2948697075
+test.t7 NULL
+Warnings:
+Error 1146 Table 'test.t7' doesn't exist
+drop table t1,t2,t3, t4, t5, t6;
+create table t1 (id int, name char(10) not null, name2 char(10) not null) engine=MyISAM;
+insert into t1 values(1,'first','fff'),(2,'second','sss'),(3,'third','ttt');
+select trim(name2) from t1 union all select trim(name) from t1 union all select trim(id) from t1;
+trim(name2)
+fff
+sss
+ttt
+first
+second
+third
+1
+2
+3
+drop table t1;
+create table t1 (a int) engine=MyISAM;
+create table t2 like t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1,t2;
+flush status;
+show status like "binlog_cache_use";
+Variable_name Value
+Binlog_cache_use 0
+show status like "binlog_cache_disk_use";
+Variable_name Value
+Binlog_cache_disk_use 0
+create table t1 (a int) engine=MyISAM;
+show status like "binlog_cache_use";
+Variable_name Value
+Binlog_cache_use 0
+show status like "binlog_cache_disk_use";
+Variable_name Value
+Binlog_cache_disk_use 0
+begin;
+delete from t1;
+commit;
+show status like "binlog_cache_use";
+Variable_name Value
+Binlog_cache_use 0
+show status like "binlog_cache_disk_use";
+Variable_name Value
+Binlog_cache_disk_use 0
+drop table t1;
+create table t1 (c char(10), index (c,c)) engine=MyISAM;
+ERROR 42S21: Duplicate column name 'c'
+create table t1 (c1 char(10), c2 char(10), index (c1,c2,c1)) engine=MyISAM;
+ERROR 42S21: Duplicate column name 'c1'
+create table t1 (c1 char(10), c2 char(10), index (c1,c1,c2)) engine=MyISAM;
+ERROR 42S21: Duplicate column name 'c1'
+create table t1 (c1 char(10), c2 char(10), index (c2,c1,c1)) engine=MyISAM;
+ERROR 42S21: Duplicate column name 'c1'
+create table t1 (c1 char(10), c2 char(10)) engine=MyISAM;
+alter table t1 add key (c1,c1);
+ERROR 42S21: Duplicate column name 'c1'
+alter table t1 add key (c2,c1,c1);
+ERROR 42S21: Duplicate column name 'c1'
+alter table t1 add key (c1,c2,c1);
+ERROR 42S21: Duplicate column name 'c1'
+alter table t1 add key (c1,c1,c2);
+ERROR 42S21: Duplicate column name 'c1'
+drop table t1;
+create table t1(a int(1) , b int(1)) engine=MyISAM;
+insert into t1 values ('1111', '3333');
+select distinct concat(a, b) from t1;
+concat(a, b)
+11113333
+drop table t1;
+create temporary table t1 (a int) engine=MyISAM;
+insert into t1 values (4711);
+truncate t1;
+insert into t1 values (42);
+select * from t1;
+a
+42
+drop table t1;
+create table t1 (a int) engine=MyISAM;
+insert into t1 values (4711);
+truncate t1;
+insert into t1 values (42);
+select * from t1;
+a
+42
+drop table t1;
+create table t1 (a int not null, b int not null, c blob not null, d int not null, e int, primary key (a,b,c(255),d)) engine=MyISAM;
+insert into t1 values (2,2,"b",2,2),(1,1,"a",1,1),(3,3,"ab",3,3);
+select * from t1 order by a,b,c,d;
+a b c d e
+1 1 a 1 1
+2 2 b 2 2
+3 3 ab 3 3
+explain select * from t1 order by a,b,c,d;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
+drop table t1;
+create table t1 (a char(1), b char(1), key(a, b)) engine=MyISAM;
+insert into t1 values ('8', '6'), ('4', '7');
+select min(a) from t1;
+min(a)
+4
+select min(b) from t1 where a='8';
+min(b)
+6
+drop table t1;
+create table t1 (x bigint unsigned not null primary key) engine=MyISAM;
+insert into t1(x) values (0xfffffffffffffff0),(0xfffffffffffffff1);
+select * from t1;
+x
+18446744073709551600
+18446744073709551601
+select count(*) from t1 where x>0;
+count(*)
+2
+select count(*) from t1 where x=0;
+count(*)
+0
+select count(*) from t1 where x<0;
+count(*)
+0
+select count(*) from t1 where x < -16;
+count(*)
+0
+select count(*) from t1 where x = -16;
+count(*)
+0
+explain select count(*) from t1 where x > -16;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 2 Using where; Using index
+select count(*) from t1 where x > -16;
+count(*)
+2
+select * from t1 where x > -16;
+x
+18446744073709551600
+18446744073709551601
+select count(*) from t1 where x = 18446744073709551601;
+count(*)
+1
+drop table t1;
+set storage_engine=MyISAM;
+drop table if exists t1,t2,t3;
+--- Testing varchar ---
+--- Testing varchar ---
+create table t1 (v varchar(10), c char(10), t text);
+insert into t1 values('+ ', '+ ', '+ ');
+set @a=repeat(' ',20);
+insert into t1 values (concat('+',@a),concat('+',@a),concat('+',@a));
+Warnings:
+Note 1265 Data truncated for column 'v' at row 1
+select concat('*',v,'*',c,'*',t,'*') from t1;
+concat('*',v,'*',c,'*',t,'*')
+*+ *+*+ *
+*+ *+*+ *
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create table t2 like t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create table t3 select * from t1;
+show create table t3;
+Table Create Table
+t3 CREATE TABLE `t3` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1 modify c varchar(10);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` text
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1 modify v char(10);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` text
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1 modify t varchar(10);
+Warnings:
+Note 1265 Data truncated for column 't' at row 2
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select concat('*',v,'*',c,'*',t,'*') from t1;
+concat('*',v,'*',c,'*',t,'*')
+*+*+*+ *
+*+*+*+ *
+drop table t1,t2,t3;
+create table t1 (v varchar(10), c char(10), t text, key(v), key(c), key(t(10)));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text,
+ KEY `v` (`v`),
+ KEY `c` (`c`),
+ KEY `t` (`t`(10))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select count(*) from t1;
+count(*)
+270
+insert into t1 values(concat('a',char(1)),concat('a',char(1)),concat('a',char(1)));
+select count(*) from t1 where v='a';
+count(*)
+10
+select count(*) from t1 where c='a';
+count(*)
+10
+select count(*) from t1 where t='a';
+count(*)
+10
+select count(*) from t1 where v='a ';
+count(*)
+10
+select count(*) from t1 where c='a ';
+count(*)
+10
+select count(*) from t1 where t='a ';
+count(*)
+10
+select count(*) from t1 where v between 'a' and 'a ';
+count(*)
+10
+select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
+count(*)
+10
+select count(*) from t1 where v like 'a%';
+count(*)
+11
+select count(*) from t1 where c like 'a%';
+count(*)
+11
+select count(*) from t1 where t like 'a%';
+count(*)
+11
+select count(*) from t1 where v like 'a %';
+count(*)
+9
+explain select count(*) from t1 where v='a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 13 const # Using where; Using index
+explain select count(*) from t1 where c='a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref c c 11 const # Using where; Using index
+explain select count(*) from t1 where t='a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref t t 13 const # Using where
+explain select count(*) from t1 where v like 'a%';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range v v 13 NULL # Using where; Using index
+explain select count(*) from t1 where v between 'a' and 'a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 13 const # Using where; Using index
+explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 13 const # Using where; Using index
+alter table t1 add unique(v);
+ERROR 23000: Duplicate entry '{ ' for key 'v_2'
+alter table t1 add key(v);
+select concat('*',v,'*',c,'*',t,'*') as qq from t1 where v='a';
+qq
+*a*a*a*
+*a *a*a *
+*a *a*a *
+*a *a*a *
+*a *a*a *
+*a *a*a *
+*a *a*a *
+*a *a*a *
+*a *a*a *
+*a *a*a *
+explain select * from t1 where v='a';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v,v_2 # 13 const # Using where
+select v,count(*) from t1 group by v limit 10;
+v count(*)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select v,count(c) from t1 group by v limit 10;
+v count(c)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result v,count(c) from t1 group by v limit 10;
+v count(c)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select c,count(*) from t1 group by c limit 10;
+c count(*)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select c,count(t) from t1 group by c limit 10;
+c count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result c,count(t) from t1 group by c limit 10;
+c count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select t,count(*) from t1 group by t limit 10;
+t count(*)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select t,count(t) from t1 group by t limit 10;
+t count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result t,count(t) from t1 group by t limit 10;
+t count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+alter table t1 modify v varchar(300), drop key v, drop key v_2, add key v (v);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(300) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text,
+ KEY `c` (`c`),
+ KEY `t` (`t`(10)),
+ KEY `v` (`v`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select count(*) from t1 where v='a';
+count(*)
+10
+select count(*) from t1 where v='a ';
+count(*)
+10
+select count(*) from t1 where v between 'a' and 'a ';
+count(*)
+10
+select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
+count(*)
+10
+select count(*) from t1 where v like 'a%';
+count(*)
+11
+select count(*) from t1 where v like 'a %';
+count(*)
+9
+explain select count(*) from t1 where v='a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 303 const # Using where; Using index
+explain select count(*) from t1 where v like 'a%';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range v v 303 NULL # Using where; Using index
+explain select count(*) from t1 where v between 'a' and 'a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 303 const # Using where; Using index
+explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 303 const # Using where; Using index
+explain select * from t1 where v='a';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 303 const # Using where
+select v,count(*) from t1 group by v limit 10;
+v count(*)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+alter table t1 drop key v, add key v (v(30));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(300) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text,
+ KEY `c` (`c`),
+ KEY `t` (`t`(10)),
+ KEY `v` (`v`(30))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select count(*) from t1 where v='a';
+count(*)
+10
+select count(*) from t1 where v='a ';
+count(*)
+10
+select count(*) from t1 where v between 'a' and 'a ';
+count(*)
+10
+select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
+count(*)
+10
+select count(*) from t1 where v like 'a%';
+count(*)
+11
+select count(*) from t1 where v like 'a %';
+count(*)
+9
+explain select count(*) from t1 where v='a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 33 const # Using where
+explain select count(*) from t1 where v like 'a%';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range v v 33 NULL # Using where
+explain select count(*) from t1 where v between 'a' and 'a ';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 33 const # Using where
+explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a ' and 'b\n';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 33 const # Using where
+explain select * from t1 where v='a';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref v v 33 const # Using where
+select v,count(*) from t1 group by v limit 10;
+v count(*)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+alter table t1 modify v varchar(600), drop key v, add key v (v);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(600) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text,
+ KEY `c` (`c`),
+ KEY `t` (`t`(10)),
+ KEY `v` (`v`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select v,count(*) from t1 group by v limit 10;
+v count(*)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+select sql_big_result v,count(t) from t1 group by v limit 10;
+v count(t)
+a 1
+a 10
+b 10
+c 10
+d 10
+e 10
+f 10
+g 10
+h 10
+i 10
+drop table t1;
+create table t1 (a char(10), unique (a));
+insert into t1 values ('a ');
+insert into t1 values ('a ');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+alter table t1 modify a varchar(10);
+insert into t1 values ('a '),('a '),('a '),('a ');
+ERROR 23000: Duplicate entry 'a ' for key 'a'
+insert into t1 values ('a ');
+ERROR 23000: Duplicate entry 'a ' for key 'a'
+insert into t1 values ('a ');
+ERROR 23000: Duplicate entry 'a ' for key 'a'
+insert into t1 values ('a ');
+ERROR 23000: Duplicate entry 'a ' for key 'a'
+update t1 set a='a ' where a like 'a%';
+select concat(a,'.') from t1;
+concat(a,'.')
+a .
+update t1 set a='abc ' where a like 'a ';
+select concat(a,'.') from t1;
+concat(a,'.')
+a .
+update t1 set a='a ' where a like 'a %';
+select concat(a,'.') from t1;
+concat(a,'.')
+a .
+update t1 set a='a ' where a like 'a ';
+select concat(a,'.') from t1;
+concat(a,'.')
+a .
+drop table t1;
+create table t1 (v varchar(10), c char(10), t text, key(v(5)), key(c(5)), key(t(5)));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
+ `t` text,
+ KEY `v` (`v`(5)),
+ KEY `c` (`c`(5)),
+ KEY `t` (`t`(5))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (v char(10) character set utf8);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` char(10) CHARACTER SET utf8 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (v varchar(10), c char(10)) row_format=fixed;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
+insert into t1 values('a','a'),('a ','a ');
+select concat('*',v,'*',c,'*') from t1;
+concat('*',v,'*',c,'*')
+*a*a*
+*a *a*
+drop table t1;
+create table t1 (v varchar(65530), key(v(10)));
+insert into t1 values(repeat('a',65530));
+select length(v) from t1 where v=repeat('a',65530);
+length(v)
+65530
+drop table t1;
+create table t1(a int, b varchar(12), key ba(b, a));
+insert into t1 values (1, 'A'), (20, NULL);
+explain select * from t1 where a=20 and b is null;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref ba ba 20 const,const 1 Using where; Using index
+select * from t1 where a=20 and b is null;
+a b
+20 NULL
+drop table t1;
+create table t1 (v varchar(65530), key(v));
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+drop table t1;
+create table t1 (v varchar(65536));
+Warnings:
+Note 1246 Converting column 'v' from VARCHAR to TEXT
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` mediumtext
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (v varchar(65530) character set utf8);
+Warnings:
+Note 1246 Converting column 'v' from VARCHAR to TEXT
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `v` mediumtext CHARACTER SET utf8
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set storage_engine=MEMORY;
+create table t1 (v varchar(16384)) engine=MyISAM;
+drop table t1;
+create table t1 (a char(1), b char(1), key(a, b)) engine=MyISAM;
+insert into t1 values ('8', '6'), ('4', '7');
+select min(a) from t1;
+min(a)
+4
+select min(b) from t1 where a='8';
+min(b)
+6
+drop table t1;
+CREATE TABLE t1 ( `a` int(11) NOT NULL auto_increment, `b` int(11) default NULL,PRIMARY KEY (`a`),UNIQUE KEY `b` (`b`)) ENGINE=MyISAM;
+insert into t1 (b) values (1);
+replace into t1 (b) values (2), (1), (3);
+select * from t1;
+a b
+3 1
+2 2
+4 3
+truncate table t1;
+insert into t1 (b) values (1);
+replace into t1 (b) values (2);
+replace into t1 (b) values (1);
+replace into t1 (b) values (3);
+select * from t1;
+a b
+3 1
+2 2
+4 3
+drop table t1;
+create table t1 (rowid int not null auto_increment, val int not null,primary
+key (rowid), unique(val)) engine=MyISAM;
+replace into t1 (val) values ('1'),('2');
+replace into t1 (val) values ('1'),('2');
+insert into t1 (val) values ('1'),('2');
+ERROR 23000: Duplicate entry '1' for key 'val'
+select * from t1;
+rowid val
+3 1
+4 2
+drop table t1;
+CREATE TABLE t1 (GRADE DECIMAL(4) NOT NULL, PRIMARY KEY (GRADE)) ENGINE=MyISAM;
+INSERT INTO t1 (GRADE) VALUES (151),(252),(343);
+SELECT GRADE FROM t1 WHERE GRADE > 160 AND GRADE < 300;
+GRADE
+252
+SELECT GRADE FROM t1 WHERE GRADE= 151;
+GRADE
+151
+DROP TABLE t1;
+create table t1 (f1 varchar(10), f2 varchar(10), primary key (f1,f2)) engine=MyISAM;
+create table t2 (f3 varchar(10), f4 varchar(10), key (f4)) engine=MyISAM;
+insert into t2 values ('aa','cc');
+insert into t1 values ('aa','bb'),('aa','cc');
+delete t1 from t1,t2 where f1=f3 and f4='cc';
+select * from t1;
+f1 f2
+drop table t1,t2;
+create table t1(a int not null, b int, c int, d int, primary key(a)) engine=MyISAM;
+insert into t1(a) values (1),(2),(3);
+commit;
+set autocommit = 0;
+update t1 set b = 5 where a = 2;
+create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
+set autocommit = 0;
+insert into t1(a) values (10),(20),(30),(40),(50),(60),(70),(80),(90),(100),
+(11),(21),(31),(41),(51),(61),(71),(81),(91),(101),
+(12),(22),(32),(42),(52),(62),(72),(82),(92),(102),
+(13),(23),(33),(43),(53),(63),(73),(83),(93),(103),
+(14),(24),(34),(44),(54),(64),(74),(84),(94),(104);
+commit;
+commit;
+drop trigger t1t;
+drop table t1;
+create table t1(a int not null, b int, c int, d int, primary key(a)) engine=MyISAM;
+create table t2(a int not null, b int, c int, d int, primary key(a)) engine=MyISAM;
+create table t3(a int not null, b int, c int, d int, primary key(a)) engine=MyISAM;
+create table t4(a int not null, b int, c int, d int, primary key(a)) engine=MyISAM;
+create table t5(a int not null, b int, c int, d int, primary key(a)) engine=MyISAM;
+insert into t1(a) values (1),(2),(3);
+insert into t2(a) values (1),(2),(3);
+insert into t3(a) values (1),(2),(3);
+insert into t4(a) values (1),(2),(3);
+insert into t3(a) values (5),(7),(8);
+insert into t4(a) values (5),(7),(8);
+insert into t5(a) values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12);
+create trigger t1t before insert on t1 for each row begin
+INSERT INTO t2 SET a = NEW.a;
+end |
+create trigger t2t before insert on t2 for each row begin
+DELETE FROM t3 WHERE a = NEW.a;
+end |
+create trigger t3t before delete on t3 for each row begin
+UPDATE t4 SET b = b + 1 WHERE a = OLD.a;
+end |
+create trigger t4t before update on t4 for each row begin
+UPDATE t5 SET b = b + 1 where a = NEW.a;
+end |
+commit;
+set autocommit = 0;
+update t1 set b = b + 5 where a = 1;
+update t2 set b = b + 5 where a = 1;
+update t3 set b = b + 5 where a = 1;
+update t4 set b = b + 5 where a = 1;
+insert into t5(a) values(20);
+set autocommit = 0;
+insert into t1(a) values(7);
+insert into t2(a) values(8);
+delete from t2 where a = 3;
+update t4 set b = b + 1 where a = 3;
+commit;
+drop trigger t1t;
+drop trigger t2t;
+drop trigger t3t;
+drop trigger t4t;
+drop table t1, t2, t3, t4, t5;
+create table t1(a date) engine=MyISAM;
+create table t2(a date, key(a)) engine=MyISAM;
+insert into t1 values('2005-10-01');
+insert into t2 values('2005-10-01');
+select * from t1, t2
+where t2.a between t1.a - interval 2 day and t1.a + interval 2 day;
+a a
+2005-10-01 2005-10-01
+drop table t1, t2;
+create table t1 (id int not null, f_id int not null, f int not null,
+primary key(f_id, id)) engine=MyISAM;
+create table t2 (id int not null,s_id int not null,s varchar(200),
+primary key(id)) engine=MyISAM;
+INSERT INTO t1 VALUES (8, 1, 3);
+INSERT INTO t1 VALUES (1, 2, 1);
+INSERT INTO t2 VALUES (1, 0, '');
+INSERT INTO t2 VALUES (8, 1, '');
+commit;
+DELETE ml.* FROM t1 AS ml LEFT JOIN t2 AS mm ON (mm.id=ml.id)
+WHERE mm.id IS NULL;
+select ml.* from t1 as ml left join t2 as mm on (mm.id=ml.id)
+where mm.id is null lock in share mode;
+id f_id f
+drop table t1,t2;
+create table t1(a int not null, b int, primary key(a)) engine=MyISAM;
+insert into t1 values(1,1),(2,2),(3,1),(4,2),(5,1),(6,2),(7,3);
+commit;
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+update t1 set b = 5 where b = 1;
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+select * from t1 where a = 7 and b = 3 for update;
+a b
+7 3
+commit;
+commit;
+drop table t1;
+CREATE TABLE t1 ( a int ) ENGINE=MyISAM;
+BEGIN;
+INSERT INTO t1 VALUES (1);
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+DROP TABLE t1;
diff --git a/mysql-test/r/mix2_myisam_ucs2.result b/mysql-test/r/mix2_myisam_ucs2.result
new file mode 100644
index 00000000000..830d3b87eb5
--- /dev/null
+++ b/mysql-test/r/mix2_myisam_ucs2.result
@@ -0,0 +1,312 @@
+create table t1 (
+a int, b char(10), c char(10), filler char(10), primary key(a, b(2)), unique key (a, c(2))
+) character set utf8 engine = MyISAM;
+create table t2 (
+a int, b char(10), c char(10), filler char(10), primary key(a, b(2)), unique key (a, c(2))
+) character set ucs2 engine = MyISAM;
+insert into t1 values (1,'abcdefg','abcdefg','one');
+insert into t1 values (2,'ijkilmn','ijkilmn','two');
+insert into t1 values (3,'qrstuvw','qrstuvw','three');
+insert into t1 values (4,_utf8 0xe880bd,_utf8 0xe880bd,'four');
+insert into t1 values (4,_utf8 0x5b,_utf8 0x5b,'five');
+insert into t1 values (4,_utf8 0xe880bde880bd,_utf8 0xe880bde880bd,'six');
+insert into t1 values (4,_utf8 0xe880bdD0B1e880bd,_utf8 0xe880bdD0B1e880bd,'seven');
+insert into t1 values (4,_utf8 0xD0B1,_utf8 0xD0B1,'eight');
+insert into t2 values (1,'abcdefg','abcdefg','one');
+insert into t2 values (2,'ijkilmn','ijkilmn','two');
+insert into t2 values (3,'qrstuvw','qrstuvw','three');
+insert into t2 values (4,_ucs2 0x00e400,_ucs2 0x00e400,'four');
+insert into t2 values (4,_ucs2 0x00640065,_ucs2 0x00640065,'five');
+insert into t2 values (4,_ucs2 0x00e400e50068,_ucs2 0x00e400e50068,'six');
+insert into t2 values (4,_ucs2 0x01fc,_ucs2 0x01fc,'seven');
+insert into t2 values (4,_ucs2 0x0120,_ucs2 0x0120,'eight');
+insert into t2 values (4,_ucs2 0x0563,_ucs2 0x0563,'ten');
+insert into t2 values (4,_ucs2 0x05630563,_ucs2 0x05630563,'eleven');
+insert into t2 values (4,_ucs2 0x0563001fc0563,_ucs2 0x0563001fc0563,'point');
+insert into t2 values (4,_ucs2 0x05612020,_ucs2 0x05612020,'taken');
+update t1 set filler = 'boo' where a = 1;
+update t2 set filler ='email' where a = 4;
+select a,hex(b),hex(c),filler from t1 order by filler;
+a hex(b) hex(c) filler
+1 61626364656667 61626364656667 boo
+4 D0B1 D0B1 eight
+4 5B 5B five
+4 E880BD E880BD four
+4 E880BDD0B1E880BD E880BDD0B1E880BD seven
+4 E880BDE880BD E880BDE880BD six
+3 71727374757677 71727374757677 three
+2 696A6B696C6D6E 696A6B696C6D6E two
+select a,hex(b),hex(c),filler from t2 order by filler;
+a hex(b) hex(c) filler
+4 05612020 05612020 email
+4 0000563001FC0563 0000563001FC0563 email
+4 05630563 05630563 email
+4 0563 0563 email
+4 0120 0120 email
+4 01FC 01FC email
+4 00E400E50068 00E400E50068 email
+4 00640065 00640065 email
+4 0000E400 0000E400 email
+1 0061006200630064006500660067 0061006200630064006500660067 one
+3 0071007200730074007500760077 0071007200730074007500760077 three
+2 0069006A006B0069006C006D006E 0069006A006B0069006C006D006E two
+drop table t1;
+drop table t2;
+create table t1 (
+a int, b varchar(10), c varchar(10), filler varchar(10), primary key(a, b(2)), unique key (a, c(2))
+) character set utf8 engine = MyISAM;
+create table t2 (
+a int, b varchar(10), c varchar(10), filler varchar(10), primary key(a, b(2)), unique key (a, c(2))
+) character set ucs2 engine = MyISAM;
+insert into t1 values (1,'abcdefg','abcdefg','one');
+insert into t1 values (2,'ijkilmn','ijkilmn','two');
+insert into t1 values (3,'qrstuvw','qrstuvw','three');
+insert into t1 values (4,_utf8 0xe880bd,_utf8 0xe880bd,'four');
+insert into t1 values (4,_utf8 0x5b,_utf8 0x5b,'five');
+insert into t1 values (4,_utf8 0xe880bde880bd,_utf8 0xe880bde880bd,'six');
+insert into t1 values (4,_utf8 0xe880bdD0B1e880bd,_utf8 0xe880bdD0B1e880bd,'seven');
+insert into t1 values (4,_utf8 0xD0B1,_utf8 0xD0B1,'eight');
+insert into t2 values (1,'abcdefg','abcdefg','one');
+insert into t2 values (2,'ijkilmn','ijkilmn','two');
+insert into t2 values (3,'qrstuvw','qrstuvw','three');
+insert into t2 values (4,_ucs2 0x00e400,_ucs2 0x00e400,'four');
+insert into t2 values (4,_ucs2 0x00640065,_ucs2 0x00640065,'five');
+insert into t2 values (4,_ucs2 0x00e400e50068,_ucs2 0x00e400e50068,'six');
+insert into t2 values (4,_ucs2 0x01fc,_ucs2 0x01fc,'seven');
+insert into t2 values (4,_ucs2 0x0120,_ucs2 0x0120,'eight');
+insert into t2 values (4,_ucs2 0x0563,_ucs2 0x0563,'ten');
+insert into t2 values (4,_ucs2 0x05630563,_ucs2 0x05630563,'eleven');
+insert into t2 values (4,_ucs2 0x0563001fc0563,_ucs2 0x0563001fc0563,'point');
+insert into t2 values (4,_ucs2 0x05612020,_ucs2 0x05612020,'taken');
+update t1 set filler = 'boo' where a = 1;
+update t2 set filler ='email' where a = 4;
+select a,hex(b),hex(c),filler from t1 order by filler;
+a hex(b) hex(c) filler
+1 61626364656667 61626364656667 boo
+4 D0B1 D0B1 eight
+4 5B 5B five
+4 E880BD E880BD four
+4 E880BDD0B1E880BD E880BDD0B1E880BD seven
+4 E880BDE880BD E880BDE880BD six
+3 71727374757677 71727374757677 three
+2 696A6B696C6D6E 696A6B696C6D6E two
+select a,hex(b),hex(c),filler from t2 order by filler;
+a hex(b) hex(c) filler
+4 05612020 05612020 email
+4 0000563001FC0563 0000563001FC0563 email
+4 05630563 05630563 email
+4 0563 0563 email
+4 0120 0120 email
+4 01FC 01FC email
+4 00E400E50068 00E400E50068 email
+4 00640065 00640065 email
+4 0000E400 0000E400 email
+1 0061006200630064006500660067 0061006200630064006500660067 one
+3 0071007200730074007500760077 0071007200730074007500760077 three
+2 0069006A006B0069006C006D006E 0069006A006B0069006C006D006E two
+drop table t1;
+drop table t2;
+create table t1 (
+a int, b text(10), c text(10), filler text(10), primary key(a, b(2)), unique key (a, c(2))
+) character set utf8 engine = MyISAM;
+create table t2 (
+a int, b text(10), c text(10), filler text(10), primary key(a, b(2)), unique key (a, c(2))
+) character set ucs2 engine = MyISAM;
+insert into t1 values (1,'abcdefg','abcdefg','one');
+insert into t1 values (2,'ijkilmn','ijkilmn','two');
+insert into t1 values (3,'qrstuvw','qrstuvw','three');
+insert into t1 values (4,_utf8 0xe880bd,_utf8 0xe880bd,'four');
+insert into t1 values (4,_utf8 0x5b,_utf8 0x5b,'five');
+insert into t1 values (4,_utf8 0xe880bde880bd,_utf8 0xe880bde880bd,'six');
+insert into t1 values (4,_utf8 0xe880bdD0B1e880bd,_utf8 0xe880bdD0B1e880bd,'seven');
+insert into t1 values (4,_utf8 0xD0B1,_utf8 0xD0B1,'eight');
+insert into t2 values (1,'abcdefg','abcdefg','one');
+insert into t2 values (2,'ijkilmn','ijkilmn','two');
+insert into t2 values (3,'qrstuvw','qrstuvw','three');
+insert into t2 values (4,_ucs2 0x00e400,_ucs2 0x00e400,'four');
+insert into t2 values (4,_ucs2 0x00640065,_ucs2 0x00640065,'five');
+insert into t2 values (4,_ucs2 0x00e400e50068,_ucs2 0x00e400e50068,'six');
+insert into t2 values (4,_ucs2 0x01fc,_ucs2 0x01fc,'seven');
+insert into t2 values (4,_ucs2 0x0120,_ucs2 0x0120,'eight');
+insert into t2 values (4,_ucs2 0x0563,_ucs2 0x0563,'ten');
+insert into t2 values (4,_ucs2 0x05630563,_ucs2 0x05630563,'eleven');
+insert into t2 values (4,_ucs2 0x0563001fc0563,_ucs2 0x0563001fc0563,'point');
+insert into t2 values (4,_ucs2 0x05612020,_ucs2 0x05612020,'taken');
+update t1 set filler = 'boo' where a = 1;
+update t2 set filler ='email' where a = 4;
+select a,hex(b),hex(c),filler from t1 order by filler;
+a hex(b) hex(c) filler
+1 61626364656667 61626364656667 boo
+4 D0B1 D0B1 eight
+4 5B 5B five
+4 E880BD E880BD four
+4 E880BDD0B1E880BD E880BDD0B1E880BD seven
+4 E880BDE880BD E880BDE880BD six
+3 71727374757677 71727374757677 three
+2 696A6B696C6D6E 696A6B696C6D6E two
+select a,hex(b),hex(c),filler from t2 order by filler;
+a hex(b) hex(c) filler
+4 0000E400 0000E400 email
+4 00640065 00640065 email
+4 00E400E50068 00E400E50068 email
+4 01FC 01FC email
+4 0120 0120 email
+4 0563 0563 email
+4 05630563 05630563 email
+4 0000563001FC0563 0000563001FC0563 email
+4 05612020 05612020 email
+1 0061006200630064006500660067 0061006200630064006500660067 one
+3 0071007200730074007500760077 0071007200730074007500760077 three
+2 0069006A006B0069006C006D006E 0069006A006B0069006C006D006E two
+drop table t1;
+drop table t2;
+create table t1 (
+a int, b blob(10), c blob(10), filler blob(10), primary key(a, b(2)), unique key (a, c(2))
+) character set utf8 engine = MyISAM;
+create table t2 (
+a int, b blob(10), c blob(10), filler blob(10), primary key(a, b(2)), unique key (a, c(2))
+) character set ucs2 engine = MyISAM;
+insert into t1 values (1,'abcdefg','abcdefg','one');
+insert into t1 values (2,'ijkilmn','ijkilmn','two');
+insert into t1 values (3,'qrstuvw','qrstuvw','three');
+insert into t1 values (4,_utf8 0xe880bd,_utf8 0xe880bd,'four');
+insert into t1 values (4,_utf8 0x5b,_utf8 0x5b,'five');
+insert into t1 values (4,_utf8 0xD0B1,_utf8 0xD0B1,'eight');
+insert into t2 values (1,'abcdefg','abcdefg','one');
+insert into t2 values (2,'ijkilmn','ijkilmn','two');
+insert into t2 values (3,'qrstuvw','qrstuvw','three');
+insert into t2 values (4,_ucs2 0x00e400,_ucs2 0x00e400,'four');
+insert into t2 values (4,_ucs2 0x00640065,_ucs2 0x00640065,'five');
+insert into t2 values (4,_ucs2 0x00e400e50068,_ucs2 0x00e400e50068,'six');
+insert into t2 values (4,_ucs2 0x01fc,_ucs2 0x01fc,'seven');
+insert into t2 values (4,_ucs2 0x0120,_ucs2 0x0120,'eight');
+insert into t2 values (4,_ucs2 0x0563,_ucs2 0x0563,'ten');
+insert into t2 values (4,_ucs2 0x05612020,_ucs2 0x05612020,'taken');
+update t1 set filler = 'boo' where a = 1;
+update t2 set filler ='email' where a = 4;
+select a,hex(b),hex(c),filler from t1 order by filler;
+a hex(b) hex(c) filler
+1 61626364656667 61626364656667 boo
+4 D0B1 D0B1 eight
+4 5B 5B five
+4 E880BD E880BD four
+3 71727374757677 71727374757677 three
+2 696A6B696C6D6E 696A6B696C6D6E two
+select a,hex(b),hex(c),filler from t2 order by filler;
+a hex(b) hex(c) filler
+4 0000E400 0000E400 email
+4 00640065 00640065 email
+4 00E400E50068 00E400E50068 email
+4 01FC 01FC email
+4 0120 0120 email
+4 0563 0563 email
+4 05612020 05612020 email
+1 61626364656667 61626364656667 one
+3 71727374757677 71727374757677 three
+2 696A6B696C6D6E 696A6B696C6D6E two
+drop table t1;
+drop table t2;
+commit;
+CREATE TABLE t1 (
+ind enum('0','1','2') NOT NULL default '0',
+string1 varchar(250) NOT NULL,
+PRIMARY KEY (ind)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+CREATE TABLE t2 (
+ind enum('0','1','2') NOT NULL default '0',
+string1 varchar(250) NOT NULL,
+PRIMARY KEY (ind)
+) ENGINE=MyISAM DEFAULT CHARSET=ucs2;
+INSERT INTO t1 VALUES ('1', ''),('2', '');
+INSERT INTO t2 VALUES ('1', ''),('2', '');
+SELECT hex(ind),hex(string1) FROM t1 ORDER BY string1;
+hex(ind) hex(string1)
+31
+32
+SELECT hex(ind),hex(string1) FROM t2 ORDER BY string1;
+hex(ind) hex(string1)
+0031
+0032
+drop table t1,t2;
+CREATE TABLE t1 (
+ind set('0','1','2') NOT NULL default '0',
+string1 varchar(250) NOT NULL,
+PRIMARY KEY (ind)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+CREATE TABLE t2 (
+ind set('0','1','2') NOT NULL default '0',
+string1 varchar(250) NOT NULL,
+PRIMARY KEY (ind)
+) ENGINE=MyISAM DEFAULT CHARSET=ucs2;
+INSERT INTO t1 VALUES ('1', ''),('2', '');
+INSERT INTO t2 VALUES ('1', ''),('2', '');
+SELECT hex(ind),hex(string1) FROM t1 ORDER BY string1;
+hex(ind) hex(string1)
+31
+32
+SELECT hex(ind),hex(string1) FROM t2 ORDER BY string1;
+hex(ind) hex(string1)
+0031
+0032
+drop table t1,t2;
+CREATE TABLE t1 (
+ind bit not null,
+string1 varchar(250) NOT NULL,
+PRIMARY KEY (ind)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+CREATE TABLE t2 (
+ind bit not null,
+string1 varchar(250) NOT NULL,
+PRIMARY KEY (ind)
+) ENGINE=MyISAM DEFAULT CHARSET=ucs2;
+insert into t1 values(0,''),(1,'');
+insert into t2 values(0,''),(1,'');
+select hex(ind),hex(string1) from t1 order by string1;
+hex(ind) hex(string1)
+0
+1
+select hex(ind),hex(string1) from t2 order by string1;
+hex(ind) hex(string1)
+0
+1
+drop table t1,t2;
+create table t2 (
+a int, b char(10), filler char(10), primary key(a, b(2))
+) character set utf8 engine = MyISAM;
+insert into t2 values (1,'abcdefg','one');
+insert into t2 values (2,'ijkilmn','two');
+insert into t2 values (3, 'qrstuvw','three');
+update t2 set a=5, filler='booo' where a=1;
+drop table t2;
+create table t2 (
+a int, b char(10), filler char(10), primary key(a, b(2))
+) character set ucs2 engine = MyISAM;
+insert into t2 values (1,'abcdefg','one');
+insert into t2 values (2,'ijkilmn','two');
+insert into t2 values (3, 'qrstuvw','three');
+update t2 set a=5, filler='booo' where a=1;
+drop table t2;
+create table t1(a int not null, b char(110),primary key(a,b(100))) engine=MyISAM default charset=utf8;
+insert into t1 values(1,'abcdefg'),(2,'defghijk');
+insert into t1 values(6,_utf8 0xD0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1);
+insert into t1 values(7,_utf8 0xD0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B2);
+select a,hex(b) from t1 order by b;
+a hex(b)
+1 61626364656667
+2 6465666768696A6B
+6 D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1
+7 D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B2
+update t1 set b = 'three' where a = 6;
+drop table t1;
+create table t1(a int not null, b text(110),primary key(a,b(100))) engine=MyISAM default charset=utf8;
+insert into t1 values(1,'abcdefg'),(2,'defghijk');
+insert into t1 values(6,_utf8 0xD0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1);
+insert into t1 values(7,_utf8 0xD0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B2);
+select a,hex(b) from t1 order by b;
+a hex(b)
+1 61626364656667
+2 6465666768696A6B
+6 D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1
+7 D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B1D0B2
+update t1 set b = 'three' where a = 6;
+drop table t1;
diff --git a/mysql-test/r/mix_innodb_myisam_binlog.result b/mysql-test/r/mix_innodb_myisam_binlog.result
deleted file mode 100644
index 1f1d8795527..00000000000
--- a/mysql-test/r/mix_innodb_myisam_binlog.result
+++ /dev/null
@@ -1,517 +0,0 @@
-drop table if exists t1, t2;
-create table t1 (a int) engine=innodb;
-create table t2 (a int) engine=myisam;
-reset master;
-begin;
-insert into t1 values(1);
-insert into t2 select * from t1;
-commit;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(1)
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Xid # # COMMIT /* XID */
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(2);
-insert into t2 select * from t1;
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(2)
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Query # # ROLLBACK
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(3);
-savepoint my_savepoint;
-insert into t1 values(4);
-insert into t2 select * from t1;
-rollback to savepoint my_savepoint;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-commit;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(3)
-master-bin.000001 # Query # # use `test`; savepoint my_savepoint
-master-bin.000001 # Query # # use `test`; insert into t1 values(4)
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Query # # use `test`; rollback to savepoint my_savepoint
-master-bin.000001 # Xid # # COMMIT /* XID */
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(5);
-savepoint my_savepoint;
-insert into t1 values(6);
-insert into t2 select * from t1;
-rollback to savepoint my_savepoint;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-insert into t1 values(7);
-commit;
-select a from t1 order by a;
-a
-5
-7
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(5)
-master-bin.000001 # Query # # use `test`; savepoint my_savepoint
-master-bin.000001 # Query # # use `test`; insert into t1 values(6)
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Query # # use `test`; rollback to savepoint my_savepoint
-master-bin.000001 # Query # # use `test`; insert into t1 values(7)
-master-bin.000001 # Xid # # COMMIT /* XID */
-delete from t1;
-delete from t2;
-reset master;
-select get_lock("a",10);
-get_lock("a",10)
-1
-begin;
-insert into t1 values(8);
-insert into t2 select * from t1;
-select get_lock("a",10);
-get_lock("a",10)
-1
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(8)
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Query # # ROLLBACK
-delete from t1;
-delete from t2;
-reset master;
-insert into t1 values(9);
-insert into t2 select * from t1;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(9)
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-delete from t1;
-delete from t2;
-reset master;
-insert into t1 values(10);
-begin;
-insert into t2 select * from t1;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(10)
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-insert into t1 values(11);
-commit;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(10)
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(11)
-master-bin.000001 # Xid # # COMMIT /* XID */
-alter table t2 engine=INNODB;
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(12);
-insert into t2 select * from t1;
-commit;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(12)
-master-bin.000001 # Query # # use `test`; insert into t2 select * from t1
-master-bin.000001 # Xid # # COMMIT /* XID */
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(13);
-insert into t2 select * from t1;
-rollback;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(14);
-savepoint my_savepoint;
-insert into t1 values(15);
-insert into t2 select * from t1;
-rollback to savepoint my_savepoint;
-commit;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(14)
-master-bin.000001 # Xid # # COMMIT /* XID */
-delete from t1;
-delete from t2;
-reset master;
-begin;
-insert into t1 values(16);
-savepoint my_savepoint;
-insert into t1 values(17);
-insert into t2 select * from t1;
-rollback to savepoint my_savepoint;
-insert into t1 values(18);
-commit;
-select a from t1 order by a;
-a
-16
-18
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(16)
-master-bin.000001 # Query # # use `test`; insert into t1 values(18)
-master-bin.000001 # Xid # # COMMIT /* XID */
-delete from t1;
-delete from t2;
-alter table t2 type=MyISAM;
-insert into t1 values (1);
-begin;
-select * from t1 for update;
-a
-1
-select (@before:=unix_timestamp())*0;
-(@before:=unix_timestamp())*0
-0
-begin;
-select * from t1 for update;
-insert into t2 values (20);
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-select (@after:=unix_timestamp())*0;
-(@after:=unix_timestamp())*0
-0
-select (@after-@before) >= 2;
-(@after-@before) >= 2
-1
-drop table t1,t2;
-commit;
-begin;
-create temporary table ti (a int) engine=innodb;
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-insert into ti values(1);
-set autocommit=0;
-create temporary table t1 (a int) engine=myisam;
-commit;
-insert t1 values (1);
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-create table t0 (n int);
-insert t0 select * from t1;
-set autocommit=1;
-insert into t0 select GET_LOCK("lock1",null);
-set autocommit=0;
-create table t2 (n int) engine=innodb;
-insert into t2 values (3);
-select get_lock("lock1",60);
-get_lock("lock1",60)
-1
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values(16)
-master-bin.000001 # Query # # use `test`; insert into t1 values(18)
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; delete from t1
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; delete from t2
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; alter table t2 type=MyISAM
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into t1 values (1)
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; insert into t2 values (20)
-master-bin.000001 # Query # # use `test`; drop table t1,t2
-master-bin.000001 # Query # # use `test`; create temporary table ti (a int) engine=innodb
-master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Query # # use `test`; insert into ti values(1)
-master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; create temporary table t1 (a int) engine=myisam
-master-bin.000001 # Query # # use `test`; insert t1 values (1)
-master-bin.000001 # Query # # use `test`; create table t0 (n int)
-master-bin.000001 # Query # # use `test`; insert t0 select * from t1
-master-bin.000001 # Query # # use `test`; insert into t0 select GET_LOCK("lock1",null)
-master-bin.000001 # Query # # use `test`; create table t2 (n int) engine=innodb
-master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t1`,`ti`
-do release_lock("lock1");
-drop table t0,t2;
-reset master;
-create table t1 (a int) engine=innodb;
-create table t2 (a int) engine=myisam;
-select get_lock("a",10);
-get_lock("a",10)
-1
-begin;
-insert into t1 values(8);
-insert into t2 select * from t1;
-select get_lock("a",10);
-get_lock("a",10)
-1
-select
-(@a:=load_file("MYSQLTEST_VARDIR/tmp/mix_innodb_myisam_binlog.output"))
-is not null;
-(@a:=load_file("MYSQLTEST_VARDIR/tmp/mix_innodb_myisam_binlog.output"))
-is not null
-1
-select
-@a like "%#%error_code=0%ROLLBACK\n/*!*/;%ROLLBACK /* added by mysqlbinlog */;%" OR
-@a like "%#%error_code=0%ROLLBACK\r\n/*!*/;%ROLLBACK /* added by mysqlbinlog */;%",
-@a not like "%#%error_code=%error_code=%";
-@a like "%#%error_code=0%ROLLBACK\n/*!*/;%ROLLBACK /* added by mysqlbinlog */;%" OR
-@a like "%#%error_code=0%ROLLBACK\r\n/*!*/;%ROLLBACK /* added by mysqlbinlog */;%" @a not like "%#%error_code=%error_code=%"
-1 1
-drop table t1, t2;
-create temporary table tt (a int unique);
-create table ti (a int) engine=innodb;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
-begin;
-insert into ti values (1);
-insert into ti values (2) ;
-insert into tt select * from ti;
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-select count(*) from tt /* 2 */;
-count(*)
-2
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 507
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # BEGIN
-master-bin.000001 # Query 1 # use `test`; insert into ti values (1)
-master-bin.000001 # Query 1 # use `test`; insert into ti values (2)
-master-bin.000001 # Query 1 # use `test`; insert into tt select * from ti
-master-bin.000001 # Query 1 # ROLLBACK
-select count(*) from ti /* zero */;
-count(*)
-0
-insert into ti select * from tt;
-select * from ti /* that is what slave would miss - a bug */;
-a
-1
-2
-delete from ti;
-delete from tt where a=1;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
-begin;
-insert into ti values (1);
-insert into ti values (2) /* to make the dup error in the following */;
-insert into tt select * from ti /* one affected and error */;
-ERROR 23000: Duplicate entry '2' for key 1
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 581
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # BEGIN
-master-bin.000001 # Query 1 # use `test`; insert into ti values (1)
-master-bin.000001 # Query 1 # use `test`; insert into ti values (2) /* to make the dup error in the following */
-master-bin.000001 # Query 1 # use `test`; insert into tt select * from ti /* one affected and error */
-master-bin.000001 # Query 1 # ROLLBACK
-select count(*) from ti /* zero */;
-count(*)
-0
-insert into ti select * from tt;
-select * from tt /* that is what otherwise slave missed - the bug */;
-a
-1
-2
-drop table ti;
-drop function if exists bug27417;
-drop table if exists t1,t2;
-CREATE TABLE t1 (a int NOT NULL auto_increment primary key) ENGINE=MyISAM;
-CREATE TABLE t2 (a int NOT NULL auto_increment, PRIMARY KEY (a));
-create function bug27417(n int)
-RETURNS int(11)
-begin
-insert into t1 values (null);
-return n;
-end|
-reset master;
-insert into t2 values (bug27417(1));
-insert into t2 select bug27417(2);
-reset master;
-insert into t2 values (bug27417(2));
-ERROR 23000: Duplicate entry '2' for key 1
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 196
-/* only (!) with fixes for #23333 will show there is the query */;
-select count(*) from t1 /* must be 3 */;
-count(*)
-3
-reset master;
-select count(*) from t2;
-count(*)
-2
-delete from t2 where a=bug27417(3);
-select count(*) from t2 /* nothing got deleted */;
-count(*)
-2
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 195
-/* the query must be in regardless of #23333 */;
-select count(*) from t1 /* must be 5 */;
-count(*)
-5
-delete t2 from t2 where t2.a=bug27417(100) /* must not affect t2 */;
-affected rows: 0
-select count(*) from t1 /* must be 7 */;
-count(*)
-7
-drop table t1,t2;
-CREATE TABLE t1 (a int NOT NULL auto_increment primary key) ENGINE=MyISAM;
-CREATE TABLE t2 (a int, PRIMARY KEY (a)) ENGINE=InnoDB;
-CREATE TABLE t3 (a int, PRIMARY KEY (a), b int unique) ENGINE=MyISAM;
-CREATE TABLE t4 (a int, PRIMARY KEY (a), b int unique) ENGINE=Innodb;
-CREATE TABLE t5 (a int, PRIMARY KEY (a)) ENGINE=InnoDB;
-insert into t2 values (1);
-reset master;
-insert into t2 values (bug27417(1));
-ERROR 23000: Duplicate entry '1' for key 1
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 335
-select count(*) from t1 /* must be 1 */;
-count(*)
-1
-delete from t1;
-delete from t2;
-insert into t2 values (2);
-reset master;
-insert into t2 select bug27417(1) union select bug27417(2);
-ERROR 23000: Duplicate entry '2' for key 1
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 358
-select count(*) from t1 /* must be 2 */;
-count(*)
-2
-delete from t1;
-insert into t3 values (1,1),(2,3),(3,4);
-reset master;
-update t3 set b=b+bug27417(1);
-ERROR 23000: Duplicate entry '4' for key 2
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 190
-select count(*) from t1 /* must be 2 */;
-count(*)
-2
-delete from t3;
-delete from t4;
-insert into t3 values (1,1);
-insert into t4 values (1,1),(2,2);
-reset master;
-UPDATE t4,t3 SET t4.a=t3.a + bug27417(1) /* top level non-ta table */;
-ERROR 23000: Duplicate entry '2' for key 1
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 230
-select count(*) from t1 /* must be 4 */;
-count(*)
-4
-delete from t1;
-delete from t3;
-delete from t4;
-insert into t3 values (1,1),(2,2);
-insert into t4 values (1,1),(2,2);
-reset master;
-UPDATE t3,t4 SET t3.a=t4.a + bug27417(1);
-ERROR 23000: Duplicate entry '2' for key 1
-select count(*) from t1 /* must be 1 */;
-count(*)
-1
-drop table t4;
-delete from t1;
-delete from t2;
-delete from t3;
-insert into t2 values (1);
-insert into t3 values (1,1);
-create trigger trg_del before delete on t2 for each row
-insert into t3 values (bug27417(1), 2);
-reset master;
-delete from t2;
-ERROR 23000: Duplicate entry '1' for key 1
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 314
-select count(*) from t1 /* must be 1 */;
-count(*)
-1
-drop trigger trg_del;
-delete from t1;
-delete from t2;
-delete from t5;
-create trigger trg_del_t2 after delete on t2 for each row
-insert into t1 values (1);
-insert into t2 values (2),(3);
-insert into t5 values (1),(2);
-reset master;
-delete t2.* from t2,t5 where t2.a=t5.a + 1;
-ERROR 23000: Duplicate entry '1' for key 1
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 342
-select count(*) from t1 /* must be 1 */;
-count(*)
-1
-delete from t1;
-create table t4 (a int default 0, b int primary key) engine=innodb;
-insert into t4 values (0, 17);
-reset master;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t4 (a, @b) set b= @b + bug27417(2);
-ERROR 23000: Duplicate entry '17' for key 1
-select * from t4;
-a b
-0 17
-select count(*) from t1 /* must be 2 */;
-count(*)
-2
-show master status /* the offset must denote there is the query */;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 444
-drop trigger trg_del_t2;
-drop table t1,t2,t3,t4,t5;
-drop function bug27417;
-end of tests
diff --git a/mysql-test/r/multi_update.result b/mysql-test/r/multi_update.result
index c04948c6fa7..449333a4ae6 100644
--- a/mysql-test/r/multi_update.result
+++ b/mysql-test/r/multi_update.result
@@ -469,7 +469,7 @@ create table t2 like t1;
insert into t2 select * from t1;
delete t1,t2 from t2,t1 where t1.a<'B' and t2.b=t1.b;
drop table t1,t2;
-create table t1 ( c char(8) not null ) engine=bdb;
+create table t1 ( c char(8) not null ) engine=innodb;
insert into t1 values ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9');
insert into t1 values ('A'),('B'),('C'),('D'),('E'),('F');
alter table t1 add b char(8) not null;
@@ -501,6 +501,86 @@ a
30
drop view v1;
drop table t1, t2;
+create table t1 (i1 int, i2 int, i3 int);
+create table t2 (id int, c1 varchar(20), c2 varchar(20));
+insert into t1 values (1,5,10),(3,7,12),(4,5,2),(9,10,15),(2,2,2);
+insert into t2 values (9,"abc","def"),(5,"opq","lmn"),(2,"test t","t test");
+select * from t1 order by i1;
+i1 i2 i3
+1 5 10
+2 2 2
+3 7 12
+4 5 2
+9 10 15
+select * from t2;
+id c1 c2
+9 abc def
+5 opq lmn
+2 test t t test
+update t1,t2 set t1.i2=15, t2.c2="ppc" where t1.i1=t2.id;
+select * from t1 order by i1;
+i1 i2 i3
+1 5 10
+2 15 2
+3 7 12
+4 5 2
+9 15 15
+select * from t2 order by id;
+id c1 c2
+2 test t ppc
+5 opq lmn
+9 abc ppc
+delete t1.*,t2.* from t1,t2 where t1.i2=t2.id;
+select * from t1 order by i1;
+i1 i2 i3
+2 15 2
+3 7 12
+9 15 15
+select * from t2 order by id;
+id c1 c2
+2 test t ppc
+9 abc ppc
+drop table t1, t2;
+create table t1 (i1 int auto_increment not null, i2 int, i3 int, primary key (i1));
+create table t2 (id int auto_increment not null, c1 varchar(20), c2 varchar(20), primary key(id));
+insert into t1 values (1,5,10),(3,7,12),(4,5,2),(9,10,15),(2,2,2);
+insert into t2 values (9,"abc","def"),(5,"opq","lmn"),(2,"test t","t test");
+select * from t1 order by i1;
+i1 i2 i3
+1 5 10
+2 2 2
+3 7 12
+4 5 2
+9 10 15
+select * from t2 order by id;
+id c1 c2
+2 test t t test
+5 opq lmn
+9 abc def
+update t1,t2 set t1.i2=15, t2.c2="ppc" where t1.i1=t2.id;
+select * from t1 order by i1;
+i1 i2 i3
+1 5 10
+2 15 2
+3 7 12
+4 5 2
+9 15 15
+select * from t2 order by id;
+id c1 c2
+2 test t ppc
+5 opq lmn
+9 abc ppc
+delete t1.*,t2.* from t1,t2 where t1.i2=t2.id;
+select * from t1 order by i1;
+i1 i2 i3
+2 15 2
+3 7 12
+9 15 15
+select * from t2 order by id;
+id c1 c2
+2 test t ppc
+9 abc ppc
+drop table t1, t2;
CREATE TABLE `t1` (
`a` int(11) NOT NULL auto_increment,
`b` int(11) default NULL,
@@ -511,29 +591,32 @@ CREATE TABLE `t2` (
`b` int(11) default NULL,
PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;
+set @sav_binlog_format= @@session.binlog_format;
+set @@session.binlog_format= mixed;
insert into t1 values (1,1),(2,2);
insert into t2 values (1,1),(4,4);
reset master;
UPDATE t2,t1 SET t2.a=t1.a+2;
-ERROR 23000: Duplicate entry '3' for key 1
+ERROR 23000: Duplicate entry '3' for key 'PRIMARY'
select * from t2 /* must be (3,1), (4,4) */;
a b
3 1
4 4
show master status /* there must be the UPDATE query event */;
File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 198
+master-bin.000001 206
delete from t1;
delete from t2;
insert into t1 values (1,2),(3,4),(4,4);
insert into t2 values (1,2),(3,4),(4,4);
reset master;
UPDATE t2,t1 SET t2.a=t2.b where t2.a=t1.a;
-ERROR 23000: Duplicate entry '4' for key 1
+ERROR 23000: Duplicate entry '4' for key 'PRIMARY'
show master status /* there must be the UPDATE query event */;
File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 213
+master-bin.000001 221
drop table t1, t2;
+set @@session.binlog_format= @sav_binlog_format;
drop table if exists t1, t2, t3;
CREATE TABLE t1 (a int, PRIMARY KEY (a));
CREATE TABLE t2 (a int, PRIMARY KEY (a));
@@ -543,15 +626,12 @@ insert into t2 values (1),(2);
insert into t3 values (1),(2);
reset master;
delete t3.* from t2,t3 where t2.a=t3.a;
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select count(*) from t1 /* must be 1 */;
count(*)
1
select count(*) from t3 /* must be 1 */;
count(*)
1
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # use `test`; delete t3.* from t2,t3 where t2.a=t3.a
drop table t1, t2, t3;
end of tests
diff --git a/mysql-test/r/myisam-system.result b/mysql-test/r/myisam-system.result
new file mode 100644
index 00000000000..e0629d955ae
--- /dev/null
+++ b/mysql-test/r/myisam-system.result
@@ -0,0 +1,13 @@
+drop table if exists t1,t2;
+create table t1 (a int) engine=myisam;
+drop table if exists t1;
+Warnings:
+Error 2 Can't find file: 't1' (errno: 2)
+create table t1 (a int) engine=myisam;
+drop table t1;
+Got one of the listed errors
+create table t1 (a int) engine=myisam;
+drop table t1;
+Got one of the listed errors
+drop table t1;
+ERROR 42S02: Unknown table 't1'
diff --git a/mysql-test/r/myisam.result b/mysql-test/r/myisam.result
index 53bb022147e..f5050ccf1c0 100644
--- a/mysql-test/r/myisam.result
+++ b/mysql-test/r/myisam.result
@@ -346,11 +346,11 @@ t1 1 c_2 2 a A 5 NULL NULL BTREE
explain select * from t1,t2 where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL a NULL NULL NULL 2
-1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where
+1 SIMPLE t1 ALL a NULL NULL NULL 5 Using where; Using join buffer
explain select * from t1,t2 force index(a) where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL a NULL NULL NULL 2
-1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where
+1 SIMPLE t1 ALL a NULL NULL NULL 5 Using where; Using join buffer
explain select * from t1 force index(a),t2 force index(a) where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL a NULL NULL NULL 2
@@ -362,7 +362,7 @@ id select_type table type possible_keys key key_len ref rows Extra
explain select * from t1,t2 force index(c) where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 2
-1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where
+1 SIMPLE t1 ALL a NULL NULL NULL 5 Using where; Using join buffer
explain select * from t1 where a=0 or a=2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a NULL NULL NULL 5 Using where
@@ -469,9 +469,9 @@ b.
c.
update t1 set b='b ' where a=2;
update t1 set b='b ' where a > 1;
-ERROR 23000: Duplicate entry 'b ' for key 2
+ERROR 23000: Duplicate entry 'b ' for key 'b'
insert into t1 (b) values ('b');
-ERROR 23000: Duplicate entry 'b' for key 2
+ERROR 23000: Duplicate entry 'b' for key 'b'
select * from t1;
a b
1 a
@@ -606,24 +606,6 @@ select count(*) from t1 where a is null;
count(*)
2
drop table t1;
-create table t1 (c1 int, index(c1));
-create table t2 (c1 int, index(c1)) engine=merge union=(t1);
-insert into t1 values (1);
-flush tables;
-select * from t2;
-c1
-1
-flush tables;
-truncate table t1;
-insert into t1 values (1);
-flush tables;
-select * from t2;
-c1
-1
-truncate table t1;
-ERROR HY000: MyISAM table 't1' is in use (most likely by a MERGE table). Try FLUSH TABLES.
-insert into t1 values (1);
-drop table t1,t2;
create table t1 (c1 int, c2 varchar(4) not null default '',
key(c2(3))) default charset=utf8;
insert into t1 values (1,'A'), (2, 'B'), (3, 'A');
@@ -1111,40 +1093,40 @@ concat('*',v,'*',c,'*',t,'*')
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t2 like t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
create table t3 select * from t1;
show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify c varchar(10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` varchar(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify v char(10);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify t varchar(10);
@@ -1153,9 +1135,9 @@ Note 1265 Data truncated for column 't' at row 2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) default NULL,
- `c` varchar(10) default NULL,
- `t` varchar(10) default NULL
+ `v` char(10) DEFAULT NULL,
+ `c` varchar(10) DEFAULT NULL,
+ `t` varchar(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select concat('*',v,'*',c,'*',t,'*') from t1;
concat('*',v,'*',c,'*',t,'*')
@@ -1166,8 +1148,8 @@ create table t1 (v varchar(10), c char(10), t text, key(v), key(c), key(t(10)));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `v` (`v`),
KEY `c` (`c`),
@@ -1232,7 +1214,7 @@ explain select count(*) from t1 where v between 'a' and 'a ' and v between 'a '
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref v v 13 const # Using where; Using index
alter table t1 add unique(v);
-ERROR 23000: Duplicate entry '{ ' for key 1
+ERROR 23000: Duplicate entry '{ ' for key 'v_2'
alter table t1 add key(v);
select concat('*',v,'*',c,'*',t,'*') as qq from t1 where v='a';
qq
@@ -1385,8 +1367,8 @@ alter table t1 modify v varchar(300), drop key v, drop key v_2, add key v (v);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(300) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(300) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `c` (`c`),
KEY `t` (`t`(10)),
@@ -1465,8 +1447,8 @@ alter table t1 drop key v, add key v (v(30));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(300) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(300) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `c` (`c`),
KEY `t` (`t`(10)),
@@ -1545,8 +1527,8 @@ alter table t1 modify v varchar(600), drop key v, add key v (v);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(600) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(600) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `c` (`c`),
KEY `t` (`t`(10)),
@@ -1592,16 +1574,16 @@ drop table t1;
create table t1 (a char(10), unique (a));
insert into t1 values ('a ');
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a' for key 1
+ERROR 23000: Duplicate entry 'a' for key 'a'
alter table t1 modify a varchar(10);
insert into t1 values ('a '),('a '),('a '),('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
insert into t1 values ('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
+ERROR 23000: Duplicate entry 'a ' for key 'a'
update t1 set a='a ' where a like 'a%';
select concat(a,'.') from t1;
concat(a,'.')
@@ -1623,8 +1605,8 @@ create table t1 (v varchar(10), c char(10), t text, key(v(5)), key(c(5)), key(t(
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL,
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL,
`t` text,
KEY `v` (`v`(5)),
KEY `c` (`c`(5)),
@@ -1635,15 +1617,15 @@ create table t1 (v char(10) character set utf8);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` char(10) character set utf8 default NULL
+ `v` char(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (v varchar(10), c char(10)) row_format=fixed;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(10) default NULL,
- `c` char(10) default NULL
+ `v` varchar(10) DEFAULT NULL,
+ `c` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
insert into t1 values('a','a'),('a ','a ');
select concat('*',v,'*',c,'*') from t1;
@@ -1685,24 +1667,12 @@ Note 1246 Converting column 'v' from VARCHAR to TEXT
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` mediumtext character set utf8
+ `v` mediumtext CHARACTER SET utf8
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (v varchar(65535));
ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
set storage_engine=MyISAM;
-create table t1 (a int) engine=myisam;
-drop table if exists t1;
-Warnings:
-Error 2 Can't find file: 't1' (errno: 2)
-create table t1 (a int) engine=myisam;
-drop table t1;
-Got one of the listed errors
-create table t1 (a int) engine=myisam;
-drop table t1;
-Got one of the listed errors
-drop table t1;
-ERROR 42S02: Unknown table 't1'
set @save_concurrent_insert=@@concurrent_insert;
set global concurrent_insert=1;
create table t1 (a int);
@@ -1884,3 +1854,442 @@ Table Op Msg_type Msg_text
test.t1 check status OK
DROP TABLE t1;
End of 5.0 tests
+create table t1 (a int not null, key `a` (a) key_block_size=1024);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a int not null, key `a` (a) key_block_size=2048);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=2048
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(2048), key `a` (a));
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`(1000))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(2048), key `a` (a) key_block_size=1024);
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`(1000)) KEY_BLOCK_SIZE=4096
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a int not null, b varchar(2048), key (a), key(b)) key_block_size=1024;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`),
+ KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=4096
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=1024
+alter table t1 key_block_size=2048;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024,
+ KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=4096
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=2048
+alter table t1 add c int, add key (c);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` varchar(2048) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024,
+ KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=4096,
+ KEY `c` (`c`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=2048
+alter table t1 key_block_size=0;
+alter table t1 add d int, add key (d);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` varchar(2048) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL,
+ `d` int(11) DEFAULT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024,
+ KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=4096,
+ KEY `c` (`c`) KEY_BLOCK_SIZE=2048,
+ KEY `d` (`d`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a int not null, b varchar(2048), key (a), key(b)) key_block_size=8192;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`),
+ KEY `b` (`b`(1000))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=8192
+drop table t1;
+create table t1 (a int not null, b varchar(2048), key (a) key_block_size=1024, key(b)) key_block_size=8192;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024,
+ KEY `b` (`b`(1000))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=8192
+drop table t1;
+create table t1 (a int not null, b int, key (a) key_block_size=1024, key(b) key_block_size=8192) key_block_size=16384;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` int(11) DEFAULT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024,
+ KEY `b` (`b`) KEY_BLOCK_SIZE=8192
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=16384
+drop table t1;
+create table t1 (a int not null, key `a` (a) key_block_size=512);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=1024
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(2048), key `a` (a) key_block_size=1000000000000000000);
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(2048) DEFAULT NULL,
+ KEY `a` (`a`(1000)) KEY_BLOCK_SIZE=4096
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a int not null, key `a` (a) key_block_size=1025);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ KEY `a` (`a`) KEY_BLOCK_SIZE=2048
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a int not null, key key_block_size=1024 (a));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=1024 (a))' at line 1
+create table t1 (a int not null, key `a` key_block_size=1024 (a));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_block_size=1024 (a))' at line 1
+CREATE TABLE t1 (
+c1 INT,
+c2 VARCHAR(300),
+KEY (c1) KEY_BLOCK_SIZE 1024,
+KEY (c2) KEY_BLOCK_SIZE 8192
+);
+INSERT INTO t1 VALUES (10, REPEAT('a', CEIL(RAND(10) * 300))),
+(11, REPEAT('b', CEIL(RAND() * 300))),
+(12, REPEAT('c', CEIL(RAND() * 300))),
+(13, REPEAT('d', CEIL(RAND() * 300))),
+(14, REPEAT('e', CEIL(RAND() * 300))),
+(15, REPEAT('f', CEIL(RAND() * 300))),
+(16, REPEAT('g', CEIL(RAND() * 300))),
+(17, REPEAT('h', CEIL(RAND() * 300))),
+(18, REPEAT('i', CEIL(RAND() * 300))),
+(19, REPEAT('j', CEIL(RAND() * 300))),
+(20, REPEAT('k', CEIL(RAND() * 300))),
+(21, REPEAT('l', CEIL(RAND() * 300))),
+(22, REPEAT('m', CEIL(RAND() * 300))),
+(23, REPEAT('n', CEIL(RAND() * 300))),
+(24, REPEAT('o', CEIL(RAND() * 300))),
+(25, REPEAT('p', CEIL(RAND() * 300))),
+(26, REPEAT('q', CEIL(RAND() * 300))),
+(27, REPEAT('r', CEIL(RAND() * 300))),
+(28, REPEAT('s', CEIL(RAND() * 300))),
+(29, REPEAT('t', CEIL(RAND() * 300))),
+(30, REPEAT('u', CEIL(RAND() * 300))),
+(31, REPEAT('v', CEIL(RAND() * 300))),
+(32, REPEAT('w', CEIL(RAND() * 300))),
+(33, REPEAT('x', CEIL(RAND() * 300))),
+(34, REPEAT('y', CEIL(RAND() * 300))),
+(35, REPEAT('z', CEIL(RAND() * 300)));
+INSERT INTO t1 SELECT * FROM t1;
+INSERT INTO t1 SELECT * FROM t1;
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+DELETE FROM t1 WHERE c1 >= 10;
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(130),
+c2 VARCHAR(1)
+) ENGINE=MyISAM;
+INSERT INTO t1 VALUES(REPEAT("a",128), 'b');
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(130),
+c2 VARCHAR(1)
+) ENGINE=MyISAM;
+INSERT INTO t1 VALUES(REPEAT("a",128), 'b');
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(130),
+c2 VARCHAR(1)
+) ENGINE=MyISAM;
+INSERT INTO t1 VALUES(REPEAT("a",128), 'b');
+INSERT INTO t1 VALUES('b', 'b');
+INSERT INTO t1 VALUES('c', 'b');
+DELETE FROM t1 WHERE c1='b';
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+2
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+2
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(130),
+c2 VARCHAR(1),
+KEY (c1)
+) ENGINE=MyISAM;
+# Insert 100 rows. Query log disabled.
+UPDATE t1 SET c1=REPEAT("a",128) LIMIT 90;
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+100
+ALTER TABLE t1 ENGINE=MyISAM;
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+100
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(50),
+c2 VARCHAR(1)
+) ENGINE=MyISAM DEFAULT CHARSET UTF8;
+INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b');
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(50),
+c2 VARCHAR(1)
+) ENGINE=MyISAM DEFAULT CHARSET UTF8;
+INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b');
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+REPAIR TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+1
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(50),
+c2 VARCHAR(1)
+) ENGINE=MyISAM DEFAULT CHARSET UTF8;
+INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b');
+INSERT INTO t1 VALUES('b', 'b');
+INSERT INTO t1 VALUES('c', 'b');
+DELETE FROM t1 WHERE c1='b';
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+2
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+2
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 CHAR(50),
+c2 VARCHAR(1),
+KEY (c1)
+) ENGINE=MyISAM DEFAULT CHARSET UTF8;
+# Insert 100 rows. Query log disabled.
+UPDATE t1 SET c1=REPEAT(_utf8 x'e0ae85',43) LIMIT 90;
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+100
+ALTER TABLE t1 ENGINE=MyISAM;
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+100
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+CHECK TABLE t1 EXTENDED;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 VARCHAR(10) NOT NULL,
+c2 CHAR(10) DEFAULT NULL,
+c3 VARCHAR(10) NOT NULL,
+KEY (c1),
+KEY (c2)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0;
+
+MyISAM file: MYSQLD_DATADIR/test/t1
+Record format: Packed
+Character set: utf8_general_ci (33)
+Data records: 0 Deleted blocks: 0
+Recordlength: 94
+
+table description:
+Key Start Len Index Type
+1 2 30 multip. varchar
+2 33 30 multip. char NULL
+DROP TABLE t1;
+CREATE TABLE t1 (
+c INT,
+d bit(1),
+e INT,
+f VARCHAR(1),
+g BIT(1),
+h BIT(1),
+KEY (h, d, e, g)
+);
+INSERT INTO t1 VALUES
+( 3, 1, 1, 'a', 0, 0 ),
+( 3, 1, 5, 'a', 0, 0 ),
+( 10, 1, 2, 'a', 0, 1 ),
+( 10, 1, 3, 'a', 0, 1 ),
+( 10, 1, 4, 'a', 0, 1 );
+SELECT f FROM t1 WHERE d = 1 AND e = 2 AND g = 0 AND h = 1;
+f
+a
+SELECT h+0, d + 0, e, g + 0 FROM t1;
+h+0 d + 0 e g + 0
+0 1 1 0
+0 1 5 0
+1 1 2 0
+1 1 3 0
+1 1 4 0
+DROP TABLE t1;
+#
+# Test of BUG#35570 CHECKSUM TABLE unreliable if LINESTRING field
+# (same content / differen checksum)
+#
+CREATE TABLE t1 (line LINESTRING NOT NULL) engine=myisam;
+INSERT INTO t1 VALUES (GeomFromText("POINT(0 0)"));
+checksum table t1;
+Table Checksum
+test.t1 326284887
+CREATE TABLE t2 (line LINESTRING NOT NULL) engine=myisam;
+INSERT INTO t2 VALUES (GeomFromText("POINT(0 0)"));
+checksum table t2;
+Table Checksum
+test.t2 326284887
+CREATE TABLE t3 select * from t1;
+checksum table t3;
+Table Checksum
+test.t3 326284887
+drop table t1,t2,t3;
+CREATE TABLE t1(a INT, b CHAR(10), KEY(a), KEY(b));
+INSERT INTO t1 VALUES(1,'0'),(2,'0'),(3,'0'),(4,'0'),(5,'0'),
+(6,'0'),(7,'0');
+INSERT INTO t1 SELECT a+10,b FROM t1;
+INSERT INTO t1 SELECT a+20,b FROM t1;
+INSERT INTO t1 SELECT a+40,b FROM t1;
+INSERT INTO t1 SELECT a+80,b FROM t1;
+INSERT INTO t1 SELECT a+160,b FROM t1;
+INSERT INTO t1 SELECT a+320,b FROM t1;
+INSERT INTO t1 SELECT a+640,b FROM t1;
+INSERT INTO t1 SELECT a+1280,b FROM t1;
+INSERT INTO t1 SELECT a+2560,b FROM t1;
+INSERT INTO t1 SELECT a+5120,b FROM t1;
+SET myisam_sort_buffer_size=4;
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair error myisam_sort_buffer_size is too small
+test.t1 repair warning Number of rows changed from 0 to 7168
+test.t1 repair status OK
+SET myisam_sort_buffer_size=@@global.myisam_sort_buffer_size;
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/myisam_crash_before_flush_keys.result b/mysql-test/r/myisam_crash_before_flush_keys.result
new file mode 100644
index 00000000000..d3545ea47d0
--- /dev/null
+++ b/mysql-test/r/myisam_crash_before_flush_keys.result
@@ -0,0 +1,27 @@
+#
+# BUG#41330 - Myisam table open count set to zero before index blocks are written.
+#
+# Don't test this under valgrind, memory leaks will occur
+# Binary must be compiled with debug for crash to occur
+SET GLOBAL delay_key_write=ALL;
+CREATE TABLE t1(a INT,
+b INT,
+PRIMARY KEY(a , b),
+KEY(b)) ENGINE=MyISAM DELAY_KEY_WRITE = 1;
+INSERT INTO t1 VALUES (1,2),(2,3),(3,4),(4,5),(5,6);
+# Setup the mysqld to crash at certain point
+SET SESSION debug="d,crash_before_flush_keys";
+# Write file to make mysql-test-run.pl expect crash
+# Run the crashing query
+FLUSH TABLE t1;
+ERROR HY000: Lost connection to MySQL server during query
+# Write file to make mysql-test-run.pl start the server
+# Turn on reconnect
+# Call script that will poll the server waiting for
+# it to be back online again
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check warning 1 client is using or hasn't closed the table properly
+test.t1 check error Size of indexfile is: 1024 Should be: 3072
+test.t1 check error Corrupt
+DROP TABLE t1;
diff --git a/mysql-test/r/myisam_debug.result b/mysql-test/r/myisam_debug.result
new file mode 100644
index 00000000000..c128bfffce9
--- /dev/null
+++ b/mysql-test/r/myisam_debug.result
@@ -0,0 +1,39 @@
+#
+# BUG#40827 - Killing insert-select to MyISAM can cause table corruption
+#
+CREATE TABLE `t1` (
+`id` BIGINT(20) ,
+`id1` BIGINT(20) AUTO_INCREMENT,
+KEY(id1), KEY(id)
+) ENGINE=MyISAM;
+CREATE TABLE `t2` (
+`id` BIGINT(20) ,
+`id1` BIGINT(20) AUTO_INCREMENT,
+KEY (id1), KEY(id)
+) ENGINE=MyISAM;
+INSERT INTO t2 (id) VALUES (123);
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+INSERT INTO t2 (id) SELECT id FROM t2;
+# Switch to insert Connection
+SET SESSION debug='+d,wait_in_enable_indexes';
+# Send insert data
+INSERT INTO t1(id) SELECT id FROM t2;
+# Switch to default Connection
+# Wait for insert data to reach the debug point
+SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE STATE = 'wait_in_enable_indexes' AND
+INFO = "INSERT INTO t1(id) SELECT id FROM t2"
+INTO @thread_id;
+KILL QUERY @thread_id;
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1,t2;
diff --git a/mysql-test/r/myisampack.result b/mysql-test/r/myisampack.result
index 736a550e32b..fbcd8aed17a 100644
--- a/mysql-test/r/myisampack.result
+++ b/mysql-test/r/myisampack.result
@@ -27,6 +27,33 @@ CHECK TABLE t1 EXTENDED;
Table Op Msg_type Msg_text
test.t1 check status OK
DROP TABLE t1;
+drop table if exists t1;
+create table t1(f1 int, f2 char(255));
+insert into t1 values(1, 'foo'), (2, 'bar');
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+insert into t1 select * from t1;
+flush tables;
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize error Table 'test.t1' is read only
+Warnings:
+Error 1036 Table 't1' is read only
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair error Table 'test.t1' is read only
+Warnings:
+Error 1036 Table 't1' is read only
+drop table t1;
#
# BUG#41541 - Valgrind warnings on packed MyISAM table
#
diff --git a/mysql-test/r/mysql-bug41486.result b/mysql-test/r/mysql-bug41486.result
index 454b5888b49..02777ab587f 100644
--- a/mysql-test/r/mysql-bug41486.result
+++ b/mysql-test/r/mysql-bug41486.result
@@ -3,6 +3,9 @@ SET @old_max_allowed_packet= @@global.max_allowed_packet;
SET @@global.max_allowed_packet = 2 * 1024 * 1024 + 1024;
CREATE TABLE t1(data LONGBLOB);
INSERT INTO t1 SELECT REPEAT('1', 2*1024*1024);
+SET @old_general_log = @@global.general_log;
+SET @@global.general_log = 0;
+SET @@global.general_log = @old_general_log;
SELECT LENGTH(data) FROM t1;
LENGTH(data)
2097152
diff --git a/mysql-test/r/mysql.result b/mysql-test/r/mysql.result
index 4affd884753..c02073df677 100644
--- a/mysql-test/r/mysql.result
+++ b/mysql-test/r/mysql.result
@@ -64,28 +64,28 @@ drop table t1;
+----------------------+------------+--------+
| concat('>',col1,'<') | col2 | col3 |
+----------------------+------------+--------+
-| >a < | b | 123421 |
-| >a < | 0123456789 | 4 |
-| >abcd< | | 4 |
+| >a < | b | 123421 |
+| >a < | 0123456789 | 4 |
+| >abcd< | | 4 |
+----------------------+------------+--------+
+-------------------+
| __tañgè Ñãmé |
+-------------------+
-| John Doe |
+| John Doe |
+-------------------+
+-------------------+
| John Doe |
+-------------------+
-| __tañgè Ñãmé |
+| __tañgè Ñãmé |
+-------------------+
+------+------+---------------------------+
| i | j | k |
+------+------+---------------------------+
-| 1 | NULL | NULL |
-| NULL | NULL | <-----------------------> |
-| NULL | NULL | <----- |
-| NULL | NULL | Τη γλώσσα |
-| NULL | NULL | ᛖᚴ ᚷᛖᛏ |
+| 1 | NULL | NULL |
+| NULL | NULL | <-----------------------> |
+| NULL | NULL | <----- |
+| NULL | NULL | Τη γλώσσα |
+| NULL | NULL | ᛖᚴ ᚷᛖᛏ |
+------+------+---------------------------+
i j k
NULL 1 NULL
@@ -96,14 +96,14 @@ k int(11) YES NULL
+------+---+------+
| i | j | k |
+------+---+------+
-| NULL | 1 | NULL |
+| NULL | 1 | NULL |
+------+---+------+
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
-| i | int(11) | YES | | NULL | |
-| j | int(11) | NO | | NULL | |
-| k | int(11) | YES | | NULL | |
+| i | int(11) | YES | | NULL | |
+| j | int(11) | NO | | NULL | |
+| k | int(11) | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
i s1
1 x
@@ -112,16 +112,16 @@ i s1
+------+------+
| i | s1 |
+------+------+
-| 1 | x |
-| 2 | NULL |
-| 3 | |
+| 1 | x |
+| 2 | NULL |
+| 3 | |
+------+------+
unhex('zz')
NULL
+-------------+
| unhex('zz') |
+-------------+
-| NULL |
+| NULL |
+-------------+
create table t1(a int, b varchar(255), c int);
Field Type Null Key Default Extra
@@ -167,7 +167,7 @@ ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errn
The commands reported in the bug report
ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'cyril has found a bug :)XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno)
Too long dbname
-ERROR 1049 (42000) at line 1: Unknown database 'test_really_long_dbnamexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
+ERROR 1102 (42000) at line 1: Incorrect database name 'test_really_long_dbnamexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
Too long hostname
ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'cyrils_superlonghostnameXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno)
1
@@ -200,3 +200,34 @@ COUNT (*)
1
ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errno)
End of 5.0 tests
+WARNING: --server-arg option not supported in this configuration.
+Warning (Code 1286): Unknown table engine 'nonexistent'
+Warning (Code 1266): Using storage engine MyISAM for table 't2'
+Warning (Code 1286): Unknown table engine 'nonexistent2'
+Warning (Code 1266): Using storage engine MyISAM for table 't2'
+Error (Code 1050): Table 't2' already exists
+drop tables t1, t2;
+<TABLE BORDER=1><TR><TH>&lt;</TH></TR><TR><TD>&lt; &amp; &gt;</TD></TR></TABLE>create table t1 (a char(5));
+insert into t1 values ('\0b\0');
+a
+\0b\0
+a
+\0b\0
++------+
+| a |
++------+
+| b |
++------+
+*************************** 1. row ***************************
+a: b
+<TABLE BORDER=1><TR><TH>a</TH></TR><TR><TD> b </TD></TR></TABLE><?xml version="1.0"?>
+
+<resultset statement="select a from t1
+" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <row>
+ <field name="a"> b </field>
+ </row>
+</resultset>
+drop table t1;
+
+End of tests
diff --git a/mysql-test/r/mysql_client_test.result b/mysql-test/r/mysql_client_test.result
index 9766475a418..08d982c85e3 100644
--- a/mysql-test/r/mysql_client_test.result
+++ b/mysql-test/r/mysql_client_test.result
@@ -1 +1,3 @@
+SET @old_general_log= @@global.general_log;
ok
+SET @@global.general_log= @old_general_log;
diff --git a/mysql-test/r/mysql_comments.result b/mysql-test/r/mysql_comments.result
index 366ceeb5bbf..7f1c0b50c5e 100644
--- a/mysql-test/r/mysql_comments.result
+++ b/mysql-test/r/mysql_comments.result
@@ -12,20 +12,26 @@ drop trigger if exists t1_bi;
2
foofct("call 1")
call 1
-Function sql_mode Create Function
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nreturn\n\n\n\nx
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nreturn\n\n\n\nx latin1 latin1_swedish_ci latin1_swedish_ci
foofct("call 2")
call 2
-Function sql_mode Create Function
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nbegin\n \n \n \n\n \n\n \n return x;\nend
-Procedure sql_mode Create Procedure
-empty CREATE DEFINER=`root`@`localhost` PROCEDURE `empty`()\nbegin\nend
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nbegin\n \n \n \n\n \n\n \n return x;\nend latin1 latin1_swedish_ci latin1_swedish_ci
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+empty CREATE DEFINER=`root`@`localhost` PROCEDURE `empty`()\nbegin\nend latin1 latin1_swedish_ci latin1_swedish_ci
id data
foo 42
-Procedure sql_mode Create Procedure
-foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert into test.t1\n\n\n\n\n \n\n \n values ("foo", 42)
-Procedure sql_mode Create Procedure
-nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a int)\nbegin\n \n declare b int;\n declare c float;\n\n \n \n\n \nend
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert into test.t1\n\n\n\n\n \n\n \n values ("foo", 42) latin1 latin1_swedish_ci latin1_swedish_ci
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a int)\nbegin\n \n declare b int;\n declare c float;\n\n \n \n\n \nend latin1 latin1_swedish_ci latin1_swedish_ci
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_empty CREATE DEFINER=`root`@`localhost` trigger t1_empty after delete on t1\nfor each row\nbegin\nend latin1 latin1_swedish_ci latin1_swedish_ci
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` trigger t1_bi before insert on t1\nfor each row\nbegin\n\n\n\n \n declare b int;\n declare c float;\n\n \n \n\n \n set NEW.data := 12;\nend latin1 latin1_swedish_ci latin1_swedish_ci
+id data
+trig 12
"Pass 2 : --enable-comments"
1
1
@@ -33,18 +39,24 @@ nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a int)\nbegin\n \n
2
foofct("call 1")
call 1
-Function sql_mode Create Function
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nreturn\n-- comment 1a\n# comment 1b\n/* comment 1c */\nx # after body, on same line
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nreturn\n-- comment 1a\n# comment 1b\n/* comment 1c */\nx # after body, on same line latin1 latin1_swedish_ci latin1_swedish_ci
foofct("call 2")
call 2
-Function sql_mode Create Function
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nbegin\n -- comment 1a\n # comment 1b\n /*\n comment 1c\n */\n\n -- empty line below\n\n -- empty line above\n return x;\nend
-Procedure sql_mode Create Procedure
-empty CREATE DEFINER=`root`@`localhost` PROCEDURE `empty`()\nbegin\nend
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20)) RETURNS char(20) CHARSET latin1\nbegin\n -- comment 1a\n # comment 1b\n /*\n comment 1c\n */\n\n -- empty line below\n\n -- empty line above\n return x;\nend latin1 latin1_swedish_ci latin1_swedish_ci
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+empty CREATE DEFINER=`root`@`localhost` PROCEDURE `empty`()\nbegin\nend latin1 latin1_swedish_ci latin1_swedish_ci
id data
foo 42
-Procedure sql_mode Create Procedure
-foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert into test.t1\n## These comments are part of the procedure body, and should be kept.\n# Comment 2a\n-- Comment 2b\n/* Comment 2c */\n -- empty line below\n\n -- empty line above\n values ("foo", 42) # comment 3, still part of the body
-Procedure sql_mode Create Procedure
-nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a int)\nbegin\n -- declare some variables here\n declare b int;\n declare c float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n -- famous last words ...\nend
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert into test.t1\n## These comments are part of the procedure body, and should be kept.\n# Comment 2a\n-- Comment 2b\n/* Comment 2c */\n -- empty line below\n\n -- empty line above\n values ("foo", 42) # comment 3, still part of the body latin1 latin1_swedish_ci latin1_swedish_ci
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a int)\nbegin\n -- declare some variables here\n declare b int;\n declare c float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n -- famous last words ...\nend latin1 latin1_swedish_ci latin1_swedish_ci
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_empty CREATE DEFINER=`root`@`localhost` trigger t1_empty after delete on t1\nfor each row\nbegin\nend latin1 latin1_swedish_ci latin1_swedish_ci
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` trigger t1_bi before insert on t1\nfor each row\nbegin\n# comment 1a\n-- comment 1b\n/*\n comment 1c\n*/\n -- declare some variables here\n declare b int;\n declare c float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n -- famous last words ...\n set NEW.data := 12;\nend latin1 latin1_swedish_ci latin1_swedish_ci
+id data
+trig 12
End of 5.0 tests
diff --git a/mysql-test/r/mysql_cp932.result b/mysql-test/r/mysql_cp932.result
new file mode 100644
index 00000000000..e15c97720cd
--- /dev/null
+++ b/mysql-test/r/mysql_cp932.result
@@ -0,0 +1,10 @@
+\
+\
+c_cp932
+\
+\
+\
+ソ
+ソ
+\
+\
diff --git a/mysql-test/r/mysql_protocols.result b/mysql-test/r/mysql_protocols.result
index cbead9254a2..c6207c4f4f5 100644
--- a/mysql-test/r/mysql_protocols.result
+++ b/mysql-test/r/mysql_protocols.result
@@ -7,3 +7,4 @@ SOCKET
ERROR 2047 (HY000): Wrong or unknown protocol
ERROR 2047 (HY000): Wrong or unknown protocol
Unknown option to protocol: NullS
+Alternatives are: 'TCP','SOCKET','PIPE','MEMORY'
diff --git a/mysql-test/r/mysql_upgrade.result b/mysql-test/r/mysql_upgrade.result
index b3b606bd1fc..384442f8c31 100644
--- a/mysql-test/r/mysql_upgrade.result
+++ b/mysql-test/r/mysql_upgrade.result
@@ -1,14 +1,26 @@
Run mysql_upgrade once
+mtr.global_suppressions OK
+mtr.test_suppressions OK
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log
+Error : You can't use locks with log tables.
+status : OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log
+Error : You can't use locks with log tables.
+status : OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -19,16 +31,28 @@ mysql.user OK
Run it again - should say already completed
This installation of MySQL is already upgraded to VERSION, use --force if you still need to run mysql_upgrade
Force should run it regardless of wether it's been run before
+mtr.global_suppressions OK
+mtr.test_suppressions OK
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log
+Error : You can't use locks with log tables.
+status : OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log
+Error : You can't use locks with log tables.
+status : OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -39,16 +63,28 @@ mysql.user OK
CREATE USER mysqltest1@'%' IDENTIFIED by 'sakila';
GRANT ALL ON *.* TO mysqltest1@'%';
Run mysql_upgrade with password protected account
+mtr.global_suppressions OK
+mtr.test_suppressions OK
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log
+Error : You can't use locks with log tables.
+status : OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log
+Error : You can't use locks with log tables.
+status : OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -61,16 +97,28 @@ Run mysql_upgrade with a non existing server socket
mysqlcheck: Got error: 2005: Unknown MySQL server host 'not_existing_host' (errno) when trying to connect
FATAL ERROR: Upgrade failed
set GLOBAL sql_mode='STRICT_ALL_TABLES,ANSI_QUOTES,NO_ZERO_DATE';
+mtr.global_suppressions OK
+mtr.test_suppressions OK
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log
+Error : You can't use locks with log tables.
+status : OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log
+Error : You can't use locks with log tables.
+status : OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
diff --git a/mysql-test/r/mysqlbinlog-cp932.result b/mysql-test/r/mysqlbinlog-cp932.result
index 1640a3b1642..cbf6159516a 100644
--- a/mysql-test/r/mysqlbinlog-cp932.result
+++ b/mysql-test/r/mysqlbinlog-cp932.result
@@ -1,4 +1,4 @@
-flush logs;
+RESET MASTER;
create table t3 (f text character set utf8);
create table t4 (f text character set cp932);
flush logs;
diff --git a/mysql-test/r/mysqlbinlog.result b/mysql-test/r/mysqlbinlog.result
index 75b4b41b342..5f32561798b 100644
--- a/mysql-test/r/mysqlbinlog.result
+++ b/mysql-test/r/mysqlbinlog.result
@@ -1,14 +1,15 @@
+reset master;
set timestamp=1000000000;
drop table if exists t1,t2,t3,t4,t5,t03,t04;
create table t1 (word varchar(20));
create table t2 (id int auto_increment not null primary key);
insert into t1 values ("abirvalg");
insert into t2 values ();
-load data infile '../std_data_ln/words.dat' into table t1;
-load data infile '../std_data_ln/words.dat' into table t1;
-load data infile '../std_data_ln/words.dat' into table t1;
-load data infile '../std_data_ln/words.dat' into table t1;
-load data infile '../std_data_ln/words.dat' into table t1;
+load data infile '../../std_data/words.dat' into table t1;
+load data infile '../../std_data/words.dat' into table t1;
+load data infile '../../std_data/words.dat' into table t1;
+load data infile '../../std_data/words.dat' into table t1;
+load data infile '../../std_data/words.dat' into table t1;
insert into t1 values ("Alas");
flush logs;
@@ -19,10 +20,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
drop table if exists t1,t2,t3,t4,t5,t03,t04
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
@@ -39,16 +44,16 @@ SET TIMESTAMP=1000000000/*!*/;
insert into t2 values ()
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
DELIMITER ;
# End of log file
@@ -61,10 +66,14 @@ ROLLBACK /* added by mysqlbinlog */;
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values ("Alas")
/*!*/;
DELIMITER ;
@@ -89,10 +98,14 @@ ROLLBACK /* added by mysqlbinlog */;
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values ("Alas")
/*!*/;
DELIMITER ;
@@ -107,10 +120,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
drop table if exists t1,t2,t3,t4,t5,t03,t04
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
@@ -127,16 +144,16 @@ SET TIMESTAMP=1000000000/*!*/;
insert into t2 values ()
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (word)
/*!*/;
DELIMITER ;
# End of log file
@@ -149,10 +166,14 @@ ROLLBACK /* added by mysqlbinlog */;
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values ("Alas")
/*!*/;
DELIMITER ;
@@ -177,10 +198,14 @@ ROLLBACK /* added by mysqlbinlog */;
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values ("Alas")
/*!*/;
DELIMITER ;
@@ -195,6 +220,10 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1108844556/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
BEGIN
/*!*/;
SET TIMESTAMP=1108844555/*!*/;
@@ -209,6 +238,10 @@ ROLLBACK /* added by mysqlbinlog */;
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1108844556/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
BEGIN
/*!*/;
SET TIMESTAMP=1108844555/*!*/;
@@ -220,6 +253,7 @@ ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
drop table t1,t2;
flush logs;
+flush logs;
select * from t5 /* must be (1),(1) */;
a
1
@@ -264,10 +298,14 @@ ERROR 42000: PROCEDURE test.p1 does not exist
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
begin
select 1;
@@ -283,17 +321,17 @@ call p1();
drop procedure p1;
flush logs;
create table t1 (a varchar(64) character set utf8);
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
+load data infile '../../std_data/loaddata6.dat' into table t1;
set character_set_database=koi8r;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
+load data infile '../../std_data/loaddata6.dat' into table t1;
set character_set_database=latin1;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
+load data infile '../../std_data/loaddata6.dat' into table t1;
+load data infile '../../std_data/loaddata6.dat' into table t1;
set character_set_database=koi8r;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
+load data infile '../../std_data/loaddata6.dat' into table t1;
set character_set_database=latin1;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-load data infile '../std_data_ln/loaddata6.dat' into table t1 character set koi8r;
+load data infile '../../std_data/loaddata6.dat' into table t1;
+load data infile '../../std_data/loaddata6.dat' into table t1 character set koi8r;
select hex(a) from t1;
hex(a)
C3BF
@@ -310,36 +348,40 @@ flush logs;
DELIMITER /*!*/;
use test/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a varchar(64) character set utf8)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
SET @@session.collation_database=7/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-#-#' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
SET @@session.collation_database=7/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-a-0' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-a-0' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-b-0' INTO table t1
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-b-0' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
-load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-c-0' INTO table t1 character set koi8r
+LOAD DATA LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-c-0' INTO TABLE `t1` CHARACTER SET koi8r FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' (a)
/*!*/;
SET TIMESTAMP=1000000000/*!*/;
drop table t1
@@ -369,6 +411,55 @@ DROP TABLE t1;
1
DROP TABLE t1;
shell> mysqlbinlog std_data/corrupt-relay-bin.000624 > var/tmp/bug31793.sql
+FLUSH LOGS;
+Bug#31611 Security risk with BINLOG statement
+SET BINLOG_FORMAT=ROW;
+CREATE DATABASE mysqltest1;
+CREATE USER untrusted@localhost;
+GRANT SELECT ON mysqltest1.* TO untrusted@localhost;
+SHOW GRANTS FOR untrusted@localhost;
+Grants for untrusted@localhost
+GRANT USAGE ON *.* TO 'untrusted'@'localhost'
+GRANT SELECT ON `mysqltest1`.* TO 'untrusted'@'localhost'
+USE mysqltest1;
+CREATE TABLE t1 (a INT, b CHAR(64));
+flush logs;
+INSERT INTO t1 VALUES (1,USER());
+flush logs;
+mysqlbinlog var/log/master-bin.000017 > var/tmp/bug31611.sql
+mysql mysqltest1 -uuntrusted < var/tmp/bug31611.sql
+INSERT INTO t1 VALUES (1,USER());
+ERROR 42000: INSERT command denied to user 'untrusted'@'localhost' for table 't1'
+SELECT * FROM t1;
+a b
+1 root@localhost
+DROP DATABASE mysqltest1;
+DROP USER untrusted@localhost;
+Bug#32580 mysqlbinlog cannot read binlog event with user variables
+USE test;
+SET BINLOG_FORMAT = STATEMENT;
+FLUSH LOGS;
+CREATE TABLE t1 (a_real FLOAT, an_int INT, a_decimal DECIMAL(5,2), a_string CHAR(32));
+SET @a_real = rand(20) * 1000;
+SET @an_int = 1000;
+SET @a_decimal = CAST(rand(19) * 999 AS DECIMAL(5,2));
+SET @a_string = 'Just a test';
+INSERT INTO t1 VALUES (@a_real, @an_int, @a_decimal, @a_string);
+FLUSH LOGS;
+SELECT * FROM t1;
+a_real 158.883
+an_int 1000
+a_decimal 907.79
+a_string Just a test
+DROP TABLE t1;
+>> mysqlbinlog var/log/master-bin.000019 > var/tmp/bug32580.sql
+>> mysql test < var/tmp/bug32580.sql
+SELECT * FROM t1;
+a_real 158.883
+an_int 1000
+a_decimal 907.79
+a_string Just a test
+DROP TABLE t1;
SET @@global.server_id= 4294967295;
RESET MASTER;
FLUSH LOGS;
@@ -392,10 +483,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1253783037/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1(a int) engine= innodb
/*!*/;
SET TIMESTAMP=1253783037/*!*/;
@@ -440,10 +535,14 @@ ROLLBACK /* added by mysqlbinlog */;
DELIMITER /*!*/;
ROLLBACK/*!*/;
SET TIMESTAMP=1253783037/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
BEGIN
/*!*/;
COMMIT/*!*/;
@@ -464,3 +563,4 @@ DELIMITER ;
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
End of 5.0 tests
+End of 5.1 tests
diff --git a/mysql-test/r/mysqlbinlog2.result b/mysql-test/r/mysqlbinlog2.result
index f4755338da3..dba9bdc9d70 100644
--- a/mysql-test/r/mysqlbinlog2.result
+++ b/mysql-test/r/mysqlbinlog2.result
@@ -21,10 +21,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -60,10 +64,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=1/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "a")
/*!*/;
SET INSERT_ID=2/*!*/;
@@ -91,13 +99,18 @@ ROLLBACK /* added by mysqlbinlog */;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
+ROLLBACK/*!*/;
SET INSERT_ID=4/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609946/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "d")
/*!*/;
SET INSERT_ID=5/*!*/;
@@ -116,10 +129,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -143,16 +160,20 @@ ROLLBACK /* added by mysqlbinlog */;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
+ROLLBACK/*!*/;
SET INSERT_ID=4/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609946/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "d")
/*!*/;
-SET INSERT_ID=5/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
@@ -166,10 +187,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=3/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609944/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "c")
/*!*/;
SET INSERT_ID=4/*!*/;
@@ -192,10 +217,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -212,16 +241,21 @@ ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
--- Local with 2 binlogs on command line --
+flush logs;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -249,10 +283,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -268,10 +306,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=1/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "a")
/*!*/;
SET INSERT_ID=2/*!*/;
@@ -295,10 +337,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -310,13 +356,18 @@ ROLLBACK /* added by mysqlbinlog */;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
+ROLLBACK/*!*/;
SET INSERT_ID=4/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609946/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "d")
/*!*/;
SET INSERT_ID=5/*!*/;
@@ -328,10 +379,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -346,10 +401,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -388,10 +447,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=3/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609944/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "c")
/*!*/;
SET INSERT_ID=4/*!*/;
@@ -407,10 +470,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -425,10 +492,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -451,10 +522,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -490,10 +565,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=1/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "a")
/*!*/;
SET INSERT_ID=2/*!*/;
@@ -524,10 +603,14 @@ DELIMITER /*!*/;
SET INSERT_ID=4/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609946/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "d")
/*!*/;
SET INSERT_ID=5/*!*/;
@@ -546,10 +629,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -576,13 +663,16 @@ DELIMITER /*!*/;
SET INSERT_ID=4/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609946/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "d")
/*!*/;
-SET INSERT_ID=5/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
@@ -596,10 +686,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=3/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609944/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "c")
/*!*/;
SET INSERT_ID=4/*!*/;
@@ -622,10 +716,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -648,10 +746,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -679,10 +781,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -698,10 +804,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=1/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "a")
/*!*/;
SET INSERT_ID=2/*!*/;
@@ -725,10 +835,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -743,10 +857,14 @@ DELIMITER /*!*/;
SET INSERT_ID=4/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609946/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "d")
/*!*/;
SET INSERT_ID=5/*!*/;
@@ -758,10 +876,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -776,10 +898,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -818,10 +944,14 @@ ROLLBACK/*!*/;
SET INSERT_ID=3/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609944/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "c")
/*!*/;
SET INSERT_ID=4/*!*/;
@@ -837,10 +967,14 @@ DELIMITER /*!*/;
SET INSERT_ID=6/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609943/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
insert into t1 values(null, "f")
/*!*/;
DELIMITER ;
@@ -855,10 +989,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
@@ -881,10 +1019,14 @@ DELIMITER /*!*/;
ROLLBACK/*!*/;
use test/*!*/;
SET TIMESTAMP=1579609942/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
create table t1 (a int auto_increment not null primary key, b char(3))
/*!*/;
SET INSERT_ID=1/*!*/;
diff --git a/mysql-test/r/mysqlbinlog_base64.result b/mysql-test/r/mysqlbinlog_base64.result
new file mode 100644
index 00000000000..c5e1e2f8ca1
--- /dev/null
+++ b/mysql-test/r/mysqlbinlog_base64.result
@@ -0,0 +1,111 @@
+reset master;
+create table t1 (a int);
+insert into t1 values (1);
+insert into t1 values (2);
+insert into t1 values (3);
+update t1 set a=a+2 where a=2;
+update t1 set a=a+2 where a=3;
+create table t2 (word varchar(20));
+load data infile '../../std_data/words.dat' into table t2;
+flush logs;
+drop table t1;
+drop table t2;
+select * from t1;
+a
+1
+4
+5
+select * from t2;
+word
+Aarhus
+Aaron
+Ababa
+aback
+abaft
+abandon
+abandoned
+abandoning
+abandonment
+abandons
+Aarhus
+Aaron
+Ababa
+aback
+abaft
+abandon
+abandoned
+abandoning
+abandonment
+abandons
+abase
+abased
+abasement
+abasements
+abases
+abash
+abashed
+abashes
+abashing
+abasing
+abate
+abated
+abatement
+abatements
+abater
+abates
+abating
+Abba
+abbe
+abbey
+abbeys
+abbot
+abbots
+Abbott
+abbreviate
+abbreviated
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+Abby
+abdomen
+abdomens
+abdominal
+abduct
+abducted
+abduction
+abductions
+abductor
+abductors
+abducts
+Abe
+abed
+Abel
+Abelian
+Abelson
+Aberdeen
+Abernathy
+aberrant
+aberration
+flush logs;
+drop table t2;
+create table t2 (word varchar(20));
+load data infile '../../std_data/words.dat' into table t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+insert into t2 select * from t2;
+select count(*) from t2;
+count(*)
+35840
+flush logs;
+select count(*) from t2;
+count(*)
+35840
+drop table t1;
+drop table t2;
diff --git a/mysql-test/r/mysqlbinlog_row.result b/mysql-test/r/mysqlbinlog_row.result
new file mode 100644
index 00000000000..9b562ac0fff
--- /dev/null
+++ b/mysql-test/r/mysqlbinlog_row.result
@@ -0,0 +1,4137 @@
+#
+# Preparatory cleanup.
+#
+DROP TABLE IF EXISTS t1;
+#
+# We need a fixed timestamp to avoid varying results.
+#
+SET timestamp=1000000000;
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+CREATE TABLE t1 (c01 BIT);
+INSERT INTO t1 VALUES (0);
+INSERT INTO t1 VALUES (1);
+DROP TABLE t1;
+CREATE TABLE t1 (c01 BIT(7));
+INSERT INTO t1 VALUES (1);
+INSERT INTO t1 VALUES (2);
+INSERT INTO t1 VALUES (4);
+INSERT INTO t1 VALUES (8);
+INSERT INTO t1 VALUES (16);
+INSERT INTO t1 VALUES (32);
+INSERT INTO t1 VALUES (64);
+INSERT INTO t1 VALUES (127);
+DELETE FROM t1 WHERE c01=127;
+UPDATE t1 SET c01=15 WHERE c01=16;
+DROP TABLE t1;
+CREATE TABLE t1 (a BIT(20), b CHAR(2));
+INSERT INTO t1 VALUES (b'00010010010010001001', 'ab');
+DROP TABLE t1;
+CREATE TABLE t1 (c02 BIT(64));
+INSERT INTO t1 VALUES (1);
+INSERT INTO t1 VALUES (2);
+INSERT INTO t1 VALUES (128);
+INSERT INTO t1 VALUES (b'1111111111111111111111111111111111111111111111111111111111111111');
+DROP TABLE t1;
+CREATE TABLE t1 (c03 TINYINT);
+INSERT INTO t1 VALUES (1),(2),(3);
+INSERT INTO t1 VALUES (-128);
+UPDATE t1 SET c03=2 WHERE c03=1;
+DELETE FROM t1 WHERE c03=-128;
+DROP TABLE t1;
+CREATE TABLE t1 (c04 TINYINT UNSIGNED);
+INSERT INTO t1 VALUES (128), (255);
+UPDATE t1 SET c04=2 WHERE c04=1;
+DELETE FROM t1 WHERE c04=255;
+DROP TABLE t1;
+CREATE TABLE t1 (c06 BOOL);
+INSERT INTO t1 VALUES (TRUE);
+DELETE FROM t1 WHERE c06=TRUE;
+DROP TABLE t1;
+CREATE TABLE t1 (c07 SMALLINT);
+INSERT INTO t1 VALUES (1234);
+DELETE FROM t1 WHERE c07=1234;
+DROP TABLE t1;
+CREATE TABLE t1 (c08 SMALLINT UNSIGNED);
+INSERT INTO t1 VALUES (32768), (65535);
+UPDATE t1 SET c08=2 WHERE c08=32768;
+DELETE FROM t1 WHERE c08=65535;
+DROP TABLE t1;
+CREATE TABLE t1 (c10 MEDIUMINT);
+INSERT INTO t1 VALUES (12345);
+DELETE FROM t1 WHERE c10=12345;
+DROP TABLE t1;
+CREATE TABLE t1 (c11 MEDIUMINT UNSIGNED);
+INSERT INTO t1 VALUES (8388608), (16777215);
+UPDATE t1 SET c11=2 WHERE c11=8388608;
+DELETE FROM t1 WHERE c11=16777215;
+DROP TABLE t1;
+CREATE TABLE t1 (c13 INT);
+INSERT INTO t1 VALUES (123456);
+DELETE FROM t1 WHERE c13=123456;
+DROP TABLE t1;
+CREATE TABLE t1 (c14 INT UNSIGNED);
+INSERT INTO t1 VALUES (2147483648), (4294967295);
+UPDATE t1 SET c14=2 WHERE c14=2147483648;
+DELETE FROM t1 WHERE c14=4294967295;
+DROP TABLE t1;
+CREATE TABLE t1 (c16 BIGINT);
+INSERT INTO t1 VALUES (1234567890);
+DELETE FROM t1 WHERE c16=1234567890;
+DROP TABLE t1;
+CREATE TABLE t1 (c17 BIGINT UNSIGNED);
+INSERT INTO t1 VALUES (9223372036854775808), (18446744073709551615);
+UPDATE t1 SET c17=2 WHERE c17=9223372036854775808;
+DELETE FROM t1 WHERE c17=18446744073709551615;
+DROP TABLE t1;
+CREATE TABLE t1 (c19 FLOAT);
+INSERT INTO t1 VALUES (123.2234);
+DELETE FROM t1 WHERE c19>123;
+DROP TABLE t1;
+CREATE TABLE t1 (c22 DOUBLE);
+INSERT INTO t1 VALUES (123434.22344545);
+DELETE FROM t1 WHERE c22>123434;
+DROP TABLE t1;
+CREATE TABLE t1 (c25 DECIMAL(10,5));
+INSERT INTO t1 VALUES (124.45);
+INSERT INTO t1 VALUES (-543.21);
+DELETE FROM t1 WHERE c25=124.45;
+DROP TABLE t1;
+CREATE TABLE t1 (c28 DATE);
+INSERT INTO t1 VALUES ('2001-02-03');
+DELETE FROM t1 WHERE c28='2001-02-03';
+DROP TABLE t1;
+CREATE TABLE t1 (c29 DATETIME);
+INSERT INTO t1 VALUES ('2001-02-03 10:20:30');
+DELETE FROM t1 WHERE c29='2001-02-03 10:20:30';
+DROP TABLE t1;
+CREATE TABLE t1 (c30 TIMESTAMP);
+INSERT INTO t1 VALUES ('2001-02-03 10:20:30');
+DELETE FROM t1 WHERE c30='2001-02-03 10:20:30';
+DROP TABLE t1;
+CREATE TABLE t1 (c31 TIME);
+INSERT INTO t1 VALUES ('11:22:33');
+DELETE FROM t1 WHERE c31='11:22:33';
+DROP TABLE t1;
+CREATE TABLE t1 (c32 YEAR);
+INSERT INTO t1 VALUES ('2001');
+DELETE FROM t1 WHERE c32=2001;
+DROP TABLE t1;
+CREATE TABLE t1 (c33 CHAR);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c33='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c34 CHAR(0));
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c34='';
+DROP TABLE t1;
+CREATE TABLE t1 (c35 CHAR(1));
+INSERT INTO t1 VALUES ('b');
+DELETE FROM t1 WHERE c35='b';
+DROP TABLE t1;
+CREATE TABLE t1 (c36 CHAR(255));
+INSERT INTO t1 VALUES (repeat('c',255));
+DELETE FROM t1 WHERE c36>'c';
+DROP TABLE t1;
+CREATE TABLE t1 (c37 NATIONAL CHAR);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c37='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c38 NATIONAL CHAR(0));
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c38='';
+DROP TABLE t1;
+CREATE TABLE t1 (c39 NATIONAL CHAR(1));
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c39='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c40 NATIONAL CHAR(255));
+INSERT INTO t1 VALUES (repeat('a', 255));
+INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 255));
+DELETE FROM t1 WHERE c40>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c41 CHAR CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c41='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c42 CHAR(0) CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c42='';
+DROP TABLE t1;
+CREATE TABLE t1 (c43 CHAR(1) CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c43='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c44 CHAR(255) CHARACTER SET UCS2);
+INSERT INTO t1 VALUES (repeat('a', 255));
+INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 255));
+DELETE FROM t1 WHERE c44>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c45 VARCHAR(0));
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c45='';
+DROP TABLE t1;
+CREATE TABLE t1 (c46 VARCHAR(1));
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c46='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c47 VARCHAR(255));
+INSERT INTO t1 VALUES (repeat('a',255));
+DELETE FROM t1 WHERE c47>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c48 VARCHAR(261));
+INSERT INTO t1 VALUES (repeat('a',261));
+DELETE FROM t1 WHERE c48>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c49 NATIONAL VARCHAR(0));
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c49='';
+DROP TABLE t1;
+CREATE TABLE t1 (c50 NATIONAL VARCHAR(1));
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c50='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c51 NATIONAL VARCHAR(255));
+INSERT INTO t1 VALUES (repeat('a',255));
+INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 255));
+DELETE FROM t1 WHERE c51>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c52 NATIONAL VARCHAR(261));
+INSERT INTO t1 VALUES (repeat('a',261));
+INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 261));
+DELETE FROM t1 WHERE c52>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c53 VARCHAR(0) CHARACTER SET ucs2);
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c53='';
+DROP TABLE t1;
+CREATE TABLE t1 (c54 VARCHAR(1) CHARACTER SET ucs2);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c54='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c55 VARCHAR(255) CHARACTER SET ucs2);
+INSERT INTO t1 VALUES (repeat('ab', 127));
+DELETE FROM t1 WHERE c55>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c56 VARCHAR(261) CHARACTER SET ucs2);
+INSERT INTO t1 VALUES (repeat('ab', 130));
+DELETE FROM t1 WHERE c56>'a';
+DROP TABLE t1;
+CREATE TABLE t1 (c57 BINARY);
+INSERT INTO t1 VALUES (0x00);
+INSERT INTO t1 VALUES (0x02);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c57='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c58 BINARY(0));
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c58='';
+DROP TABLE t1;
+CREATE TABLE t1 (c59 BINARY(1));
+INSERT INTO t1 VALUES (0x00);
+INSERT INTO t1 VALUES (0x02);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c59='a';
+DROP TABLE t1;
+CREATE TABLE t1 (c60 BINARY(255));
+INSERT INTO t1 VALUES (0x00);
+INSERT INTO t1 VALUES (0x02);
+INSERT INTO t1 VALUES (repeat('a\0',120));
+DELETE FROM t1 WHERE c60<0x02;
+DROP TABLE t1;
+CREATE TABLE t1 (c61 VARBINARY(0));
+INSERT INTO t1 VALUES ('');
+DELETE FROM t1 WHERE c61='';
+DROP TABLE t1;
+CREATE TABLE t1 (c62 VARBINARY(1));
+INSERT INTO t1 VALUES (0x00);
+INSERT INTO t1 VALUES (0x02);
+INSERT INTO t1 VALUES ('a');
+DELETE FROM t1 WHERE c62=0x02;
+DROP TABLE t1;
+CREATE TABLE t1 (c63 VARBINARY(255));
+INSERT INTO t1 VALUES (0x00);
+INSERT INTO t1 VALUES (0x02);
+INSERT INTO t1 VALUES (repeat('a\0',120));
+DELETE FROM t1 WHERE c63=0x02;
+DROP TABLE t1;
+CREATE TABLE t1 (c65 TINYBLOB);
+INSERT INTO t1 VALUES ('tinyblob1');
+DELETE FROM t1 WHERE c65='tinyblob1';
+DROP TABLE t1;
+CREATE TABLE t1 (c68 BLOB);
+INSERT INTO t1 VALUES ('blob1');
+DELETE FROM t1 WHERE c68='blob1';
+DROP TABLE t1;
+CREATE TABLE t1 (c71 MEDIUMBLOB);
+INSERT INTO t1 VALUES ('mediumblob1');
+DELETE FROM t1 WHERE c71='mediumblob1';
+DROP TABLE t1;
+CREATE TABLE t1 (c74 LONGBLOB);
+INSERT INTO t1 VALUES ('longblob1');
+DELETE FROM t1 WHERE c74='longblob1';
+DROP TABLE t1;
+CREATE TABLE t1 (c66 TINYTEXT);
+INSERT INTO t1 VALUES ('tinytext1');
+DELETE FROM t1 WHERE c66='tinytext1';
+DROP TABLE t1;
+CREATE TABLE t1 (c69 TEXT);
+INSERT INTO t1 VALUES ('text1');
+DELETE FROM t1 WHERE c69='text1';
+DROP TABLE t1;
+CREATE TABLE t1 (c72 MEDIUMTEXT);
+INSERT INTO t1 VALUES ('mediumtext1');
+DELETE FROM t1 WHERE c72='mediumtext1';
+DROP TABLE t1;
+CREATE TABLE t1 (c75 LONGTEXT);
+INSERT INTO t1 VALUES ('longtext1');
+DELETE FROM t1 WHERE c75='longtext1';
+DROP TABLE t1;
+CREATE TABLE t1 (c67 TINYTEXT CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('tinytext1');
+DELETE FROM t1 WHERE c67='tinytext1';
+DROP TABLE t1;
+CREATE TABLE t1 (c70 TEXT CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('text1');
+DELETE FROM t1 WHERE c70='text1';
+DROP TABLE t1;
+CREATE TABLE t1 (c73 MEDIUMTEXT CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('mediumtext1');
+DELETE FROM t1 WHERE c73='mediumtext1';
+DROP TABLE t1;
+CREATE TABLE t1 (c76 LONGTEXT CHARACTER SET UCS2);
+INSERT INTO t1 VALUES ('longtext1');
+DELETE FROM t1 WHERE c76='longtext1';
+DROP TABLE t1;
+CREATE TABLE t1 (c77 ENUM('a','b','c'));
+INSERT INTO t1 VALUES ('b');
+DELETE FROM t1 WHERE c77='b';
+DROP TABLE t1;
+CREATE TABLE t1 (c78 SET('a','b','c','d','e','f'));
+INSERT INTO t1 VALUES ('a,b');
+INSERT INTO t1 VALUES ('a,c');
+INSERT INTO t1 VALUES ('b,c');
+INSERT INTO t1 VALUES ('a,b,c');
+INSERT INTO t1 VALUES ('a,b,c,d');
+INSERT INTO t1 VALUES ('a,b,c,d,e');
+INSERT INTO t1 VALUES ('a,b,c,d,e,f');
+DELETE FROM t1 WHERE c78='a,b';
+DROP TABLE t1;
+CREATE TABLE t1 (a int NOT NULL DEFAULT 0, b int NOT NULL DEFAULT 0);
+CREATE TABLE t2 (a int NOT NULL DEFAULT 0, b int NOT NULL DEFAULT 0);
+INSERT INTO t1 SET a=1;
+INSERT INTO t1 SET b=1;
+INSERT INTO t2 SET a=1;
+INSERT INTO t2 SET b=1;
+UPDATE t1, t2 SET t1.a=10, t2.a=20;
+DROP TABLE t1,t2;
+flush logs;
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C latin1 *//*!*/;
+SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (c01 BIT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0' /* BIT(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c01 BIT(7))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0000001' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0000010' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0000100' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0001000' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0010000' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0100000' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'1000000' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'1111111' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'1111111' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'0010000' /* BIT(7) meta=7 nullable=1 is_null=0 */
+### SET
+### @1=b'0001111' /* BIT(7) meta=7 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (a BIT(20), b CHAR(2))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00010010010010001001' /* BIT(20) meta=516 nullable=1 is_null=0 */
+### @2='ab' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c02 BIT(64))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0000000000000000000000000000000000000000000000000000000000000001' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0000000000000000000000000000000000000000000000000000000000000010' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0000000000000000000000000000000000000000000000000000000010000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c03 TINYINT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=2 /* TINYINT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=3 /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=2 /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c04 TINYINT UNSIGNED)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c06 BOOL)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c07 SMALLINT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1234 /* SHORTINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=1234 /* SHORTINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c08 SMALLINT UNSIGNED)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=2 /* SHORTINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c10 MEDIUMINT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=12345 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=12345 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c11 MEDIUMINT UNSIGNED)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=2 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c13 INT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=123456 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=123456 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c14 INT UNSIGNED)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c16 BIGINT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1234567890 /* LONGINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=1234567890 /* LONGINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c17 BIGINT UNSIGNED)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=2 /* LONGINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c19 FLOAT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=123.223... /* FLOAT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=123.223... /* FLOAT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c22 DOUBLE)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=123434.223... /* DOUBLE meta=8 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=123434.223... /* DOUBLE meta=8 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c25 DECIMAL(10,5))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=000000124.450000000 /* DECIMAL(10,5) meta=2565 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=-000000543.210000000 /* DECIMAL(10,5) meta=2565 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=000000124.450000000 /* DECIMAL(10,5) meta=2565 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c28 DATE)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='2001:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='2001:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c29 DATETIME)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=2001-02-03 10:20:30 /* DATETIME meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=2001-02-03 10:20:30 /* DATETIME meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c30 TIMESTAMP)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.time_zone='SYSTEM'/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=981184830 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=981184830 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c31 TIME)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='11:22:33' /* TIME meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='11:22:33' /* TIME meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c32 YEAR)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=2001 /* YEAR meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=2001 /* YEAR meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c33 CHAR)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c34 CHAR(0))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c35 CHAR(1))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='b' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='b' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c36 CHAR(255))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c37 NATIONAL CHAR)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c38 NATIONAL CHAR(0))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c39 NATIONAL CHAR(1))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c40 NATIONAL CHAR(255))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c41 CHAR CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00a' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00a' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c42 CHAR(0) CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c43 CHAR(1) CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00a' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00a' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c44 CHAR(255) CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c45 VARCHAR(0))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c46 VARCHAR(1))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c47 VARCHAR(255))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c48 VARCHAR(261))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c49 NATIONAL VARCHAR(0))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c50 NATIONAL VARCHAR(1))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c51 NATIONAL VARCHAR(255))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c52 NATIONAL VARCHAR(261))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c53 VARCHAR(0) CHARACTER SET ucs2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c54 VARCHAR(1) CHARACTER SET ucs2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00a' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00a' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c55 VARCHAR(255) CHARACTER SET ucs2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c56 VARCHAR(261) CHARACTER SET ucs2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b\x00a\x00b' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c57 BINARY)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x02' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c58 BINARY(0))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c59 BINARY(1))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x02' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c60 BINARY(255))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x02' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c61 VARBINARY(0))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c62 VARBINARY(1))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x02' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x02' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c63 VARBINARY(255))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00a\x00' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c65 TINYBLOB)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='tinyblob1' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='tinyblob1' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c68 BLOB)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='blob1' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='blob1' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c71 MEDIUMBLOB)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='mediumblob1' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='mediumblob1' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c74 LONGBLOB)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='longblob1' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='longblob1' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c66 TINYTEXT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='tinytext1' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='tinytext1' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c69 TEXT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='text1' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='text1' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c72 MEDIUMTEXT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='mediumtext1' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='mediumtext1' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c75 LONGTEXT)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='longtext1' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='longtext1' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c67 TINYTEXT CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x001' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x001' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c70 TEXT CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00t\x00e\x00x\x00t\x001' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00t\x00e\x00x\x00t\x001' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c73 MEDIUMTEXT CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x001' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x001' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c76 LONGTEXT CHARACTER SET UCS2)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x001' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x001' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c77 ENUM('a','b','c'))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (c78 SET('a','b','c','d','e','f'))
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00000011' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00000101' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00001111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00011111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00111111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'00000011' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t1 (a int NOT NULL DEFAULT 0, b int NOT NULL DEFAULT 0)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t2 (a int NOT NULL DEFAULT 0, b int NOT NULL DEFAULT 0)
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* INT meta=0 nullable=0 is_null=0 */
+### @2=0 /* INT meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=0 /* INT meta=0 nullable=0 is_null=0 */
+### @2=1 /* INT meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t2
+### SET
+### @1=1 /* INT meta=0 nullable=0 is_null=0 */
+### @2=0 /* INT meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t2
+### SET
+### @1=0 /* INT meta=0 nullable=0 is_null=0 */
+### @2=1 /* INT meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=1 /* INT meta=0 nullable=0 is_null=0 */
+### @2=0 /* INT meta=0 nullable=0 is_null=0 */
+### SET
+### @1=10 /* INT meta=0 nullable=0 is_null=0 */
+### @2=0 /* INT meta=0 nullable=0 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=0 /* INT meta=0 nullable=0 is_null=0 */
+### @2=1 /* INT meta=0 nullable=0 is_null=0 */
+### SET
+### @1=10 /* INT meta=0 nullable=0 is_null=0 */
+### @2=1 /* INT meta=0 nullable=0 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1=1 /* INT meta=0 nullable=0 is_null=0 */
+### @2=0 /* INT meta=0 nullable=0 is_null=0 */
+### SET
+### @1=20 /* INT meta=0 nullable=0 is_null=0 */
+### @2=0 /* INT meta=0 nullable=0 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1=0 /* INT meta=0 nullable=0 is_null=0 */
+### @2=1 /* INT meta=0 nullable=0 is_null=0 */
+### SET
+### @1=20 /* INT meta=0 nullable=0 is_null=0 */
+### @2=1 /* INT meta=0 nullable=0 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+DROP TABLE t1,t2
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
diff --git a/mysql-test/r/mysqlbinlog_row_big.result b/mysql-test/r/mysqlbinlog_row_big.result
new file mode 100644
index 00000000000..46fa0dc79cd
--- /dev/null
+++ b/mysql-test/r/mysqlbinlog_row_big.result
@@ -0,0 +1,102 @@
+#
+# Preparatory cleanup.
+#
+DROP TABLE IF EXISTS t1;
+#
+# We need a fixed timestamp to avoid varying results.
+#
+SET timestamp=1000000000;
+#
+# We need big packets.
+#
+# Capture initial value to reset at the end of the test
+# Now adjust max_allowed_packet
+SET @@global.max_allowed_packet= 1024*1024*1024;
+max_allowed_packet is a global variable.
+In order for the preceding change in max_allowed_packets' value
+to be seen and used, we must start a new connection.
+The change does not take effect with the current one.
+For simplicity, we just disconnect / reconnect connection default here.
+Disconnecting default connection...
+Reconnecting default connection...
+default connection established, continuing with the test
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table.
+#
+CREATE TABLE t1 (
+c1 LONGTEXT
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+#
+# Show how many rows are affected by each statement.
+#
+#
+# Insert some big rows.
+#
+256MB
+INSERT INTO t1 VALUES (REPEAT('ManyMegaByteBlck', 16777216));
+affected rows: 1
+32MB
+INSERT INTO t1 VALUES (REPEAT('ManyMegaByteBlck', 2097152));
+affected rows: 1
+4MB
+INSERT INTO t1 VALUES (REPEAT('ManyMegaByteBlck', 262144));
+affected rows: 1
+512KB
+INSERT INTO t1 VALUES (REPEAT('ManyMegaByteBlck', 32768));
+affected rows: 1
+#
+# Show what we have in the table.
+# Do not display the column value itself, just its length.
+#
+SELECT LENGTH(c1) FROM t1;
+LENGTH(c1) 268435456
+LENGTH(c1) 33554432
+LENGTH(c1) 4194304
+LENGTH(c1) 524288
+affected rows: 4
+#
+# Grow the rows by updating.
+#
+UPDATE t1 SET c1 = CONCAT(c1, c1);
+affected rows: 4
+info: Rows matched: 4 Changed: 4 Warnings: 0
+#
+# Show what we have in the table.
+# Do not display the column value itself, just its length.
+#
+SELECT LENGTH(c1) FROM t1;
+LENGTH(c1) 536870912
+LENGTH(c1) 1048576
+LENGTH(c1) 67108864
+LENGTH(c1) 8388608
+affected rows: 4
+#
+# Delete the rows.
+#
+DELETE FROM t1 WHERE c1 >= 'ManyMegaByteBlck';
+affected rows: 4
+#
+# Hide how many rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+# NOTE: The output of mysqlbinlog is redirected to
+# $MYSQLTEST_VARDIR/tmp/mysqlbinlog_big_1.out
+# If you want to examine it, disable remove_file
+# at the bottom of the test script.
+#
+#
+# Cleanup.
+#
+# reset variable value to pass testcase checks
+SET @@global.max_allowed_packet = 1048576;
+DROP TABLE t1;
+remove_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog_big_1.out
diff --git a/mysql-test/r/mysqlbinlog_row_innodb.result b/mysql-test/r/mysqlbinlog_row_innodb.result
new file mode 100644
index 00000000000..86f0b67ebb3
--- /dev/null
+++ b/mysql-test/r/mysqlbinlog_row_innodb.result
@@ -0,0 +1,4859 @@
+SET NAMES 'utf8';
+#
+# Preparatory cleanup.
+#
+DROP TABLE IF EXISTS t1, t2, t3;
+#
+# We need a fixed timestamp to avoid varying results.
+#
+SET timestamp=1000000000;
+#
+# ===================================================
+# Test #1 - Insert/update/delete with all data types.
+# ===================================================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table with all data types.
+#
+CREATE TABLE t1 (
+c01 BIT,
+c02 BIT(64),
+c03 TINYINT,
+c04 TINYINT UNSIGNED,
+c05 TINYINT ZEROFILL,
+c06 BOOL,
+c07 SMALLINT,
+c08 SMALLINT UNSIGNED,
+c09 SMALLINT ZEROFILL,
+c10 MEDIUMINT,
+c11 MEDIUMINT UNSIGNED,
+c12 MEDIUMINT ZEROFILL,
+c13 INT,
+c14 INT UNSIGNED,
+c15 INT ZEROFILL,
+c16 BIGINT,
+c17 BIGINT UNSIGNED,
+c18 BIGINT ZEROFILL,
+c19 FLOAT,
+c20 FLOAT UNSIGNED,
+c21 FLOAT ZEROFILL,
+c22 DOUBLE,
+c23 DOUBLE UNSIGNED,
+c24 DOUBLE ZEROFILL,
+c25 DECIMAL,
+c26 DECIMAL UNSIGNED,
+c27 DECIMAL ZEROFILL,
+#
+c28 DATE,
+c29 DATETIME,
+c30 TIMESTAMP,
+c31 TIME,
+c32 YEAR,
+#
+c33 CHAR,
+c34 CHAR(0),
+c35 CHAR(1),
+c36 CHAR(255),
+c37 NATIONAL CHAR,
+c38 NATIONAL CHAR(0),
+c39 NATIONAL CHAR(1),
+c40 NATIONAL CHAR(255),
+c41 CHAR CHARACTER SET UCS2,
+c42 CHAR(0) CHARACTER SET UCS2,
+c43 CHAR(1) CHARACTER SET UCS2,
+c44 CHAR(255) CHARACTER SET UCS2,
+#
+c45 VARCHAR(0),
+c46 VARCHAR(1),
+c47 VARCHAR(255),
+c48 VARCHAR(261),
+c49 NATIONAL VARCHAR(0),
+c50 NATIONAL VARCHAR(1),
+c51 NATIONAL VARCHAR(255),
+c52 NATIONAL VARCHAR(261),
+c53 VARCHAR(0) CHARACTER SET UCS2,
+c54 VARCHAR(1) CHARACTER SET UCS2,
+c55 VARCHAR(255) CHARACTER SET UCS2,
+c56 VARCHAR(261) CHARACTER SET UCS2,
+#
+c57 BINARY,
+c58 BINARY(0),
+c59 BINARY(1),
+c60 BINARY(255),
+#
+c61 VARBINARY(0),
+c62 VARBINARY(1),
+c63 VARBINARY(255),
+c64 VARBINARY(261),
+#
+c65 TINYBLOB,
+c66 TINYTEXT,
+c67 TINYTEXT CHARACTER SET UCS2,
+c68 BLOB,
+c69 TEXT,
+c70 TEXT CHARACTER SET UCS2,
+c71 MEDIUMBLOB,
+c72 MEDIUMTEXT,
+c73 MEDIUMTEXT CHARACTER SET UCS2,
+c74 LONGBLOB,
+c75 LONGTEXT,
+c76 LONGTEXT CHARACTER SET UCS2,
+#
+c77 ENUM('a','b','c'),
+c78 SET('a','b','c'),
+#
+crn INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+#
+# Insert minimum values.
+#
+INSERT INTO t1 VALUES (
+b'0', -- c01
+b'0000000000000000000000000000000000000000000000000000000000000000', -- c02
+-128, -- c03
+0, -- c04
+000, -- c05
+false, -- c06
+-32768, -- c07
+0, -- c08
+00000, -- c09
+-8388608, -- c10
+0, -- c11
+00000000, -- c12
+-2147483648, -- c13
+0, -- c14
+0000000000, -- c15
+-9223372036854775808, -- c16
+0, -- c17
+00000000000000000000, -- c18
+-3.402823466E+38, -- c19
+1.175494351E-38, -- c20
+000000000000, -- c21
+-1.7976931348623E+308, -- c22 three digits cut for ps-protocol
+2.2250738585072E-308, -- c23 three digits cut for ps-protocol
+0000000000000000000000, -- c24
+-9999999999, -- c25
+0, -- c26
+0000000000, -- c27
+#
+'1000-01-01', -- c28
+'1000-01-01 00:00:00', -- c29
+'1970-01-02 00:00:01', -- c30 one day later due to timezone issues
+'-838:59:59', -- c31
+'1901', -- c32
+#
+'', -- c33
+'', -- c34
+'', -- c35
+'', -- c36
+'', -- c37
+'', -- c38
+'', -- c39
+'', -- c40
+'', -- c41
+'', -- c42
+'', -- c43
+'', -- c44
+#
+'', -- c45
+'', -- c46
+'', -- c47
+'', -- c48
+'', -- c49
+'', -- c50
+'', -- c51
+'', -- c52
+'', -- c53
+'', -- c54
+'', -- c55
+'', -- c56
+#
+'', -- c57
+'', -- c58
+'', -- c59
+'', -- c60
+#
+'', -- c61
+'', -- c62
+'', -- c63
+'', -- c64
+#
+'', -- c65
+'', -- c66
+'', -- c67
+'', -- c68
+'', -- c69
+'', -- c70
+'', -- c71
+'', -- c72
+'', -- c73
+'', -- c74
+'', -- c75
+'', -- c76
+#
+'a', -- c77
+'', -- c78
+#
+1 -- crn -- row number
+);
+#
+# Insert maximum values.
+#
+INSERT INTO t1 VALUES (
+b'1', -- c01
+b'1111111111111111111111111111111111111111111111111111111111111111', -- c02
+127, -- c03
+255, -- c04
+255, -- c05
+true, -- c06
+32767, -- c07
+65535, -- c08
+65535, -- c09
+8388607, -- c10
+16777215, -- c11
+16777215, -- c12
+2147483647, -- c13
+4294967295, -- c14
+4294967295, -- c15
+9223372036854775807, -- c16
+18446744073709551615, -- c17
+18446744073709551615, -- c18
+3.402823466E+38, -- c19
+3.402823466E+38, -- c20
+3.402823466E+38, -- c21
+1.7976931348623E+308, -- c22 three digits cut for ps-protocol
+1.7976931348623E+308, -- c23 three digits cut for ps-protocol
+1.7976931348623E+308, -- c24 three digits cut for ps-protocol
+9999999999, -- c25
+9999999999, -- c26
+9999999999, -- c27
+#
+'9999-12-31', -- c28
+'9999-12-31 23:59:59', -- c29
+'2038-01-08 03:14:07', -- c30 one day earlier due to timezone issues
+'838:59:59', -- c31
+'2155', -- c32
+#
+x'ff', -- c33
+'', -- c34
+x'ff', -- c35
+REPEAT(x'ff',255), -- c36
+_utf8 x'efbfbf', -- c37
+'', -- c38
+_utf8 x'efbfbf', -- c39
+REPEAT(_utf8 x'efbfbf',255), -- c40
+_ucs2 x'ffff', -- c41
+'', -- c42
+_ucs2 x'ffff', -- c43
+REPEAT(_ucs2 x'ffff',255), -- c44
+#
+'', -- c45
+x'ff', -- c46
+REPEAT(x'ff',255), -- c47
+REPEAT(x'ff',261), -- c48
+'', -- c49
+_utf8 x'efbfbf', -- c50
+REPEAT(_utf8 x'efbfbf',255), -- c51
+REPEAT(_utf8 x'efbfbf',261), -- c52
+'', -- c53
+_ucs2 x'ffff', -- c54
+REPEAT(_ucs2 x'ffff',255), -- c55
+REPEAT(_ucs2 x'ffff',261), -- c56
+#
+x'ff', -- c57
+'', -- c58
+x'ff', -- c59
+REPEAT(x'ff',255), -- c60
+#
+'', -- c61
+x'ff', -- c62
+REPEAT(x'ff',255), -- c63
+REPEAT(x'ff',261), -- c64
+#
+'tinyblob', -- c65 not using maximum value here
+'tinytext', -- c66 not using maximum value here
+'tinytext-ucs2', -- c67 not using maximum value here
+'blob', -- c68 not using maximum value here
+'text', -- c69 not using maximum value here
+'text-ucs2', -- c70 not using maximum value here
+'mediumblob', -- c71 not using maximum value here
+'mediumtext', -- c72 not using maximum value here
+'mediumtext-ucs2', -- c73 not using maximum value here
+'longblob', -- c74 not using maximum value here
+'longtext', -- c75 not using maximum value here
+'longtext-ucs2', -- c76 not using maximum value here
+#
+'c', -- c77
+'a,b,c', -- c78
+#
+2 -- crn -- row number
+);
+#
+# Insert a row with NULL values and one with arbitrary values.
+#
+INSERT INTO t1 VALUES (
+NULL, -- c01
+NULL, -- c02
+NULL, -- c03
+NULL, -- c04
+NULL, -- c05
+NULL, -- c06
+NULL, -- c07
+NULL, -- c08
+NULL, -- c09
+NULL, -- c10
+NULL, -- c11
+NULL, -- c12
+NULL, -- c13
+NULL, -- c14
+NULL, -- c15
+NULL, -- c16
+NULL, -- c17
+NULL, -- c18
+NULL, -- c19
+NULL, -- c20
+NULL, -- c21
+NULL, -- c22
+NULL, -- c23
+NULL, -- c24
+NULL, -- c25
+NULL, -- c26
+NULL, -- c27
+#
+NULL, -- c28
+NULL, -- c29
+NULL, -- c30
+NULL, -- c31
+NULL, -- c32
+#
+NULL, -- c33
+NULL, -- c34
+NULL, -- c35
+NULL, -- c36
+NULL, -- c37
+NULL, -- c38
+NULL, -- c39
+NULL, -- c40
+NULL, -- c41
+NULL, -- c42
+NULL, -- c43
+NULL, -- c44
+#
+NULL, -- c45
+NULL, -- c46
+NULL, -- c47
+NULL, -- c48
+NULL, -- c49
+NULL, -- c50
+NULL, -- c51
+NULL, -- c52
+NULL, -- c53
+NULL, -- c54
+NULL, -- c55
+NULL, -- c56
+#
+NULL, -- c57
+NULL, -- c58
+NULL, -- c59
+NULL, -- c60
+#
+NULL, -- c61
+NULL, -- c62
+NULL, -- c63
+NULL, -- c64
+#
+NULL, -- c65
+NULL, -- c66
+NULL, -- c67
+NULL, -- c68
+NULL, -- c69
+NULL, -- c70
+NULL, -- c71
+NULL, -- c72
+NULL, -- c73
+NULL, -- c74
+NULL, -- c75
+NULL, -- c76
+#
+NULL, -- c77
+NULL, -- c78
+#
+3 -- crn -- row number
+), (
+b'1', -- c01
+b'1111111111111111111111111111111111111111111111111111111111111111', -- c02
+127, -- c03
+0, -- c04
+001, -- c05
+true, -- c06
+32767, -- c07
+0, -- c08
+00001, -- c09
+8388607, -- c10
+0, -- c11
+00000001, -- c12
+2147483647, -- c13
+0, -- c14
+0000000001, -- c15
+9223372036854775807, -- c16
+0, -- c17
+00000000000000000001, -- c18
+-1.175494351E-38, -- c19
+1.175494351E-38, -- c20
+000000000000001, -- c21
+-2.2250738585072E-308, -- c22
+2.2250738585072E-308, -- c23
+00000000000000000000001, -- c24
+-9999999999, -- c25
+9999999999, -- c26
+0000000001, -- c27
+#
+'2008-08-04', -- c28
+'2008-08-04 16:18:06', -- c29
+'2008-08-04 16:18:24', -- c30
+'16:18:47', -- c31
+'2008', -- c32
+#
+'a', -- c33
+'', -- c34
+'e', -- c35
+REPEAT('i',255), -- c36
+_utf8 x'c3a4', -- c37
+'', -- c38
+_utf8 x'c3b6', -- c39
+REPEAT(_utf8 x'c3bc',255), -- c40
+_ucs2 x'00e4', -- c41
+'', -- c42
+_ucs2 x'00f6', -- c43
+REPEAT(_ucs2 x'00fc',255), -- c44
+#
+'', -- c45
+'a', -- c46
+REPEAT('e',255), -- c47
+REPEAT('i',261), -- c48
+'', -- c49
+_utf8 x'c3a4', -- c50
+REPEAT(_utf8 x'c3b6',255), -- c51
+REPEAT(_utf8 x'c3bc',261), -- c52
+'', -- c53
+_ucs2 x'00e4', -- c54
+REPEAT(_ucs2 x'00f6',255), -- c55
+REPEAT(_ucs2 x'00fc',261), -- c56
+#
+'0', -- c57
+'', -- c58
+'1', -- c59
+REPEAT('1',255), -- c60
+#
+'', -- c61
+'b', -- c62
+REPEAT('c',255), -- c63
+REPEAT('\'',261), -- c64
+ #
+ 'tinyblob', -- c65
+ 'tinytext', -- c66
+ 'tinytext-ucs2', -- c67
+ 'blob', -- c68
+ 'text', -- c69
+ 'text-ucs2', -- c70
+ 'mediumblob', -- c71
+ 'mediumtext', -- c72
+ 'mediumtext-ucs2', -- c73
+ 'longblob', -- c74
+ 'longtext', -- c75
+ 'longtext-ucs2', -- c76
+ #
+ 'b', -- c77
+ 'b,c', -- c78
+ #
+ 4 -- crn -- row number
+ );
+#
+# Show what we have in the table.
+# Do not display bit type output. It's binary and confuses diff.
+# Also BINARY with nul-bytes should be avoided.
+#
+SELECT * FROM t1;
+c01 #
+c02 #
+c03 -128
+c04 0
+c05 000
+c06 0
+c07 -32768
+c08 0
+c09 00000
+c10 -8388608
+c11 0
+c12 00000000
+c13 -2147483648
+c14 0
+c15 0000000000
+c16 -9223372036854775808
+c17 0
+c18 00000000000000000000
+c19 -3.40282e+38
+c20 1.17549e-38
+c21 000000000000
+c22 -1.7976931348623e+308
+c23 2.2250738585072e-308
+c24 0000000000000000000000
+c25 -9999999999
+c26 0
+c27 0000000000
+c28 1000-01-01
+c29 1000-01-01 00:00:00
+c30 1970-01-02 00:00:01
+c31 -838:59:59
+c32 1901
+c33
+c34
+c35
+c36
+c37
+c38
+c39
+c40
+c41
+c42
+c43
+c44
+c45
+c46
+c47
+c48
+c49
+c50
+c51
+c52
+c53
+c54
+c55
+c56
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65
+c66
+c67
+c68
+c69
+c70
+c71
+c72
+c73
+c74
+c75
+c76
+c77 a
+c78
+crn 1
+c01 #
+c02 #
+c03 127
+c04 255
+c05 255
+c06 1
+c07 32767
+c08 65535
+c09 65535
+c10 8388607
+c11 16777215
+c12 16777215
+c13 2147483647
+c14 4294967295
+c15 4294967295
+c16 9223372036854775807
+c17 18446744073709551615
+c18 18446744073709551615
+c19 3.40282e+38
+c20 3.40282e+38
+c21 03.40282e+38
+c22 1.7976931348623e+308
+c23 1.7976931348623e+308
+c24 001.7976931348623e+308
+c25 9999999999
+c26 9999999999
+c27 9999999999
+c28 9999-12-31
+c29 9999-12-31 23:59:59
+c30 2038-01-08 03:14:07
+c31 838:59:59
+c32 2155
+c33 ÿ
+c34
+c35 ÿ
+c36 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c37 ￿
+c38
+c39 ￿
+c40 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c41 ￿
+c42
+c43 ￿
+c44 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c45
+c46 ÿ
+c47 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c48 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c49
+c50 ￿
+c51 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c52 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c53
+c54 ￿
+c55 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c56 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 c
+c78 a,b,c
+crn 2
+c01 #
+c02 #
+c03 NULL
+c04 NULL
+c05 NULL
+c06 NULL
+c07 NULL
+c08 NULL
+c09 NULL
+c10 NULL
+c11 NULL
+c12 NULL
+c13 NULL
+c14 NULL
+c15 NULL
+c16 NULL
+c17 NULL
+c18 NULL
+c19 NULL
+c20 NULL
+c21 NULL
+c22 NULL
+c23 NULL
+c24 NULL
+c25 NULL
+c26 NULL
+c27 NULL
+c28 NULL
+c29 NULL
+c30 2001-09-09 04:46:40
+c31 NULL
+c32 NULL
+c33 NULL
+c34 NULL
+c35 NULL
+c36 NULL
+c37 NULL
+c38 NULL
+c39 NULL
+c40 NULL
+c41 NULL
+c42 NULL
+c43 NULL
+c44 NULL
+c45 NULL
+c46 NULL
+c47 NULL
+c48 NULL
+c49 NULL
+c50 NULL
+c51 NULL
+c52 NULL
+c53 NULL
+c54 NULL
+c55 NULL
+c56 NULL
+c57 #
+c58 #
+c59 #
+c60 #
+c61 NULL
+c62 NULL
+c63 NULL
+c64 NULL
+c65 NULL
+c66 NULL
+c67 NULL
+c68 NULL
+c69 NULL
+c70 NULL
+c71 NULL
+c72 NULL
+c73 NULL
+c74 NULL
+c75 NULL
+c76 NULL
+c77 NULL
+c78 NULL
+crn 3
+c01 #
+c02 #
+c03 127
+c04 0
+c05 001
+c06 1
+c07 32767
+c08 0
+c09 00001
+c10 8388607
+c11 0
+c12 00000001
+c13 2147483647
+c14 0
+c15 0000000001
+c16 9223372036854775807
+c17 0
+c18 00000000000000000001
+c19 -1.17549e-38
+c20 1.17549e-38
+c21 000000000001
+c22 -2.2250738585072e-308
+c23 2.2250738585072e-308
+c24 0000000000000000000001
+c25 -9999999999
+c26 9999999999
+c27 0000000001
+c28 2008-08-04
+c29 2008-08-04 16:18:06
+c30 2008-08-04 16:18:24
+c31 16:18:47
+c32 2008
+c33 a
+c34
+c35 e
+c36 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c37 ä
+c38
+c39 ö
+c40 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c41 ä
+c42
+c43 ö
+c44 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c45
+c46 a
+c47 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+c48 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c49
+c50 ä
+c51 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c52 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c53
+c54 ä
+c55 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c56 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62 b
+c63 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
+c64 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 b
+c78 b,c
+crn 4
+#
+# NOTE: For matching FLOAT and DOUBLE values in WHERE conditions,
+# don't use exact match, but < or > and tweak the numbers a bit.
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Update min values to max values.
+#
+UPDATE t1 SET
+c01 = b'1',
+c02 = b'1111111111111111111111111111111111111111111111111111111111111111',
+c03 = 127,
+c04 = 255,
+c05 = 255,
+c06 = true,
+c07 = 32767,
+c08 = 65535,
+c09 = 65535,
+c10 = 8388607,
+c11 = 16777215,
+c12 = 16777215,
+c13 = 2147483647,
+c14 = 4294967295,
+c15 = 4294967295,
+c16 = 9223372036854775807,
+c17 = 18446744073709551615,
+c18 = 18446744073709551615,
+c19 = 3.402823466E+38,
+c20 = 3.402823466E+38,
+c21 = 3.402823466E+38,
+c22 = 1.7976931348623E+308,
+c23 = 1.7976931348623E+308,
+c24 = 1.7976931348623E+308,
+c25 = 9999999999,
+c26 = 9999999999,
+c27 = 9999999999,
+#
+c28 = '9999-12-31',
+c29 = '9999-12-31 23:59:59',
+c30 = '2038-01-08 03:14:07',
+c31 = '838:59:59',
+c32 = '2155',
+#
+c33 = x'ff',
+c34 = '',
+c35 = x'ff',
+c36 = REPEAT(x'ff',255),
+c37 = _utf8 x'efbfbf',
+c38 = '',
+c39 = _utf8 x'efbfbf',
+c40 = REPEAT(_utf8 x'efbfbf',255),
+c41 = _ucs2 x'ffff',
+c42 = '',
+c43 = _ucs2 x'ffff',
+c44 = REPEAT(_ucs2 x'ffff',255),
+#
+c45 = '',
+c46 = x'ff',
+c47 = REPEAT(x'ff',255),
+c48 = REPEAT(x'ff',261),
+c49 = '',
+c50 = _utf8 x'efbfbf',
+c51 = REPEAT(_utf8 x'efbfbf',255),
+c52 = REPEAT(_utf8 x'efbfbf',261),
+c53 = '',
+c54 = _ucs2 x'ffff',
+c55 = REPEAT(_ucs2 x'ffff',255),
+c56 = REPEAT(_ucs2 x'ffff',261),
+#
+c57 = x'ff',
+c58 = '',
+c59 = x'ff',
+c60 = REPEAT(x'ff',255),
+#
+c61 = '',
+c62 = x'ff',
+c63 = REPEAT(x'ff',255),
+c64 = REPEAT(x'ff',261),
+#
+c65 = 'tinyblob',
+c66 = 'tinytext',
+c67 = 'tinytext-ucs2',
+c68 = 'blob',
+c69 = 'text',
+c70 = 'text-ucs2',
+c71 = 'mediumblob',
+c72 = 'mediumtext',
+c73 = 'mediumtext-ucs2',
+c74 = 'longblob',
+c75 = 'longtext',
+c76 = 'longtext-ucs2',
+#
+c77 = 'c',
+c78 = 'a,b,c',
+#
+crn = crn
+#
+WHERE
+#
+c01 = b'0' AND
+c02 = b'0000000000000000000000000000000000000000000000000000000000000000' AND
+c03 = -128 AND
+c04 = 0 AND
+c05 = 000 AND
+c06 = false AND
+c07 = -32768 AND
+c08 = 0 AND
+c09 = 00000 AND
+c10 = -8388608 AND
+c11 = 0 AND
+c12 = 00000000 AND
+c13 = -2147483648 AND
+c14 = 0 AND
+c15 = 0000000000 AND
+c16 = -9223372036854775808 AND
+c17 = 0 AND
+c18 = 00000000000000000000 AND
+c19 < -3.402823465E+38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000 AND
+c22 < -1.7976931348622E+308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 0000000000000000000000 AND
+c25 = -9999999999 AND
+c26 = 0 AND
+c27 = 0000000000 AND
+#
+c28 = '1000-01-01' AND
+c29 = '1000-01-01 00:00:00' AND
+c30 = '1970-01-02 00:00:01' AND
+c31 = '-838:59:59' AND
+c32 = '1901' AND
+#
+c33 = '' AND
+c34 = '' AND
+c35 = '' AND
+c36 = '' AND
+c37 = '' AND
+c38 = '' AND
+c39 = '' AND
+c40 = '' AND
+c41 = '' AND
+c42 = '' AND
+c43 = '' AND
+c44 = '' AND
+#
+c45 = '' AND
+c46 = '' AND
+c47 = '' AND
+c48 = '' AND
+c49 = '' AND
+c50 = '' AND
+c51 = '' AND
+c52 = '' AND
+c53 = '' AND
+c54 = '' AND
+c55 = '' AND
+c56 = '' AND
+#
+# this does not reproduce the inserted value: c57 = '' AND
+c58 = '' AND
+# this does not reproduce the inserted value: c59 = '' AND
+# this does not reproduce the inserted value: c60 = '' AND
+#
+c61 = '' AND
+c62 = '' AND
+c63 = '' AND
+c64 = '' AND
+#
+c65 = '' AND
+c66 = '' AND
+c67 = '' AND
+c68 = '' AND
+c69 = '' AND
+c70 = '' AND
+c71 = '' AND
+c72 = '' AND
+c73 = '' AND
+c74 = '' AND
+c75 = '' AND
+c76 = '' AND
+#
+c77 = 'a' AND
+c78 = '' AND
+#
+crn = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Update max values to min values.
+#
+UPDATE t1 SET
+c01 = b'0',
+c02 = b'0000000000000000000000000000000000000000000000000000000000000000',
+c03 = -128,
+c04 = 0,
+c05 = 000,
+c06 = false,
+c07 = -32768,
+c08 = 0,
+c09 = 00000,
+c10 = -8388608,
+c11 = 0,
+c12 = 00000000,
+c13 = -2147483648,
+c14 = 0,
+c15 = 0000000000,
+c16 = -9223372036854775808,
+c17 = 0,
+c18 = 00000000000000000000,
+c19 = -3.402823466E+38,
+c20 = 1.175494351E-38,
+c21 = 000000000000,
+c22 = -1.7976931348623E+308,
+c23 = 2.2250738585072E-308,
+c24 = 0000000000000000000000,
+c25 = -9999999999,
+c26 = 0,
+c27 = 0000000000,
+#
+c28 = '1000-01-01',
+c29 = '1000-01-01 00:00:00',
+c30 = '1970-01-02 00:00:01',
+c31 = '-838:59:59',
+c32 = '1901',
+#
+c33 = '',
+c34 = '',
+c35 = '',
+c36 = '',
+c37 = '',
+c38 = '',
+c39 = '',
+c40 = '',
+c41 = '',
+c42 = '',
+c43 = '',
+c44 = '',
+#
+c45 = '',
+c46 = '',
+c47 = '',
+c48 = '',
+c49 = '',
+c50 = '',
+c51 = '',
+c52 = '',
+c53 = '',
+c54 = '',
+c55 = '',
+c56 = '',
+#
+c57 = '',
+c58 = '',
+c59 = '',
+c60 = '',
+#
+c61 = '',
+c62 = '',
+c63 = '',
+c64 = '',
+#
+c65 = '',
+c66 = '',
+c67 = '',
+c68 = '',
+c69 = '',
+c70 = '',
+c71 = '',
+c72 = '',
+c73 = '',
+c74 = '',
+c75 = '',
+c76 = '',
+#
+c77 = 'a',
+c78 = '',
+#
+crn = crn
+#
+WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 255 AND
+c05 = 255 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 65535 AND
+c09 = 65535 AND
+c10 = 8388607 AND
+c11 = 16777215 AND
+c12 = 16777215 AND
+c13 = 2147483647 AND
+c14 = 4294967295 AND
+c15 = 4294967295 AND
+c16 = 9223372036854775807 AND
+c17 = 18446744073709551615 AND
+c18 = 18446744073709551615 AND
+c19 > 3.402823465E+38 AND
+c20 > 3.402823465E+38 AND
+c21 > 3.402823465E+38 AND
+c22 > 1.7976931348622E+308 AND
+c23 > 1.7976931348622E+308 AND
+c24 > 1.7976931348622E+308 AND
+c25 = 9999999999 AND
+c26 = 9999999999 AND
+c27 = 9999999999 AND
+#
+c28 = '9999-12-31' AND
+c29 = '9999-12-31 23:59:59' AND
+c30 = '2038-01-08 03:14:07' AND
+c31 = '838:59:59' AND
+c32 = '2155' AND
+#
+c33 = x'ff' AND
+c34 = '' AND
+c35 = x'ff' AND
+c36 = REPEAT(x'ff',255) AND
+c37 = _utf8 x'efbfbf' AND
+c38 = '' AND
+c39 = _utf8 x'efbfbf' AND
+c40 = REPEAT(_utf8 x'efbfbf',255) AND
+c41 = _ucs2 x'ffff' AND
+c42 = '' AND
+c43 = _ucs2 x'ffff' AND
+c44 = REPEAT(_ucs2 x'ffff',255) AND
+#
+c45 = '' AND
+c46 = x'ff' AND
+c47 = REPEAT(x'ff',255) AND
+c48 = REPEAT(x'ff',261) AND
+c49 = '' AND
+c50 = _utf8 x'efbfbf' AND
+c51 = REPEAT(_utf8 x'efbfbf',255) AND
+c52 = REPEAT(_utf8 x'efbfbf',261) AND
+c53 = '' AND
+c54 = _ucs2 x'ffff' AND
+c55 = REPEAT(_ucs2 x'ffff',255) AND
+c56 = REPEAT(_ucs2 x'ffff',261) AND
+#
+c57 = x'ff' AND
+c58 = '' AND
+c59 = x'ff' AND
+c60 = REPEAT(x'ff',255) AND
+#
+c61 = '' AND
+c62 = x'ff' AND
+c63 = REPEAT(x'ff',255) AND
+c64 = REPEAT(x'ff',261) AND
+#
+c65 = 'tinyblob' AND
+c66 = 'tinytext' AND
+c67 = 'tinytext-ucs2' AND
+c68 = 'blob' AND
+c69 = 'text' AND
+c70 = 'text-ucs2' AND
+c71 = 'mediumblob' AND
+c72 = 'mediumtext' AND
+c73 = 'mediumtext-ucs2' AND
+c74 = 'longblob' AND
+c75 = 'longtext' AND
+c76 = 'longtext-ucs2' AND
+#
+c77 = 'c' AND
+c78 = 'a,b,c' AND
+#
+crn = 2;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Update NULL values to arbitrary values.
+#
+UPDATE t1 SET
+c01 = b'1',
+c02 = b'1111111111111111111111111111111111111111111111111111111111111111',
+c03 = 127,
+c04 = 0,
+c05 = 001,
+c06 = true,
+c07 = 32767,
+c08 = 0,
+c09 = 00001,
+c10 = 8388607,
+c11 = 0,
+c12 = 00000001,
+c13 = 2147483647,
+c14 = 0,
+c15 = 0000000001,
+c16 = 9223372036854775807,
+c17 = 0,
+c18 = 00000000000000000001,
+c19 = -1.175494351E-38,
+c20 = 1.175494351E-38,
+c21 = 000000000000001,
+c22 = -2.2250738585072E-308,
+c23 = 2.2250738585072E-308,
+c24 = 00000000000000000000001,
+c25 = -9999999999,
+c26 = 9999999999,
+c27 = 0000000001,
+#
+c28 = '2008-08-04',
+c29 = '2008-08-04 16:18:06',
+c30 = '2008-08-04 16:18:24',
+c31 = '16:18:47',
+c32 = '2008',
+#
+c33 = 'a',
+c34 = '',
+c35 = 'e',
+c36 = REPEAT('i',255),
+c37 = _utf8 x'c3a4',
+c38 = '',
+c39 = _utf8 x'c3b6',
+c40 = REPEAT(_utf8 x'c3bc',255),
+c41 = _ucs2 x'00e4',
+c42 = '',
+c43 = _ucs2 x'00f6',
+c44 = REPEAT(_ucs2 x'00fc',255),
+#
+c45 = '',
+c46 = 'a',
+c47 = REPEAT('e',255),
+c48 = REPEAT('i',261),
+c49 = '',
+c50 = _utf8 x'c3a4',
+c51 = REPEAT(_utf8 x'c3b6',255),
+c52 = REPEAT(_utf8 x'c3bc',261),
+c53 = '',
+c54 = _ucs2 x'00e4',
+c55 = REPEAT(_ucs2 x'00f6',255),
+c56 = REPEAT(_ucs2 x'00fc',261),
+#
+c57 = '0',
+c58 = '',
+c59 = '1',
+c60 = REPEAT('1',255),
+#
+c61 = '',
+c62 = 'b',
+c63 = REPEAT('c',255),
+c64 = REPEAT('\'',261),
+ #
+ c65 = 'tinyblob',
+ c66 = 'tinytext',
+ c67 = 'tinytext-ucs2',
+ c68 = 'blob',
+ c69 = 'text',
+ c70 = 'text-ucs2',
+ c71 = 'mediumblob',
+ c72 = 'mediumtext',
+ c73 = 'mediumtext-ucs2',
+ c74 = 'longblob',
+ c75 = 'longtext',
+ c76 = 'longtext-ucs2',
+ #
+ c77 = 'b',
+ c78 = 'b,c',
+ #
+ crn = crn
+ #
+ WHERE
+ #
+ c01 IS NULL AND
+ c02 IS NULL AND
+ c03 IS NULL AND
+ c04 IS NULL AND
+ c05 IS NULL AND
+ c06 IS NULL AND
+ c07 IS NULL AND
+ c08 IS NULL AND
+ c09 IS NULL AND
+ c10 IS NULL AND
+ c11 IS NULL AND
+ c12 IS NULL AND
+ c13 IS NULL AND
+ c14 IS NULL AND
+ c15 IS NULL AND
+ c16 IS NULL AND
+ c17 IS NULL AND
+ c18 IS NULL AND
+ c19 IS NULL AND
+ c20 IS NULL AND
+ c21 IS NULL AND
+ c22 IS NULL AND
+ c23 IS NULL AND
+ c24 IS NULL AND
+ c25 IS NULL AND
+ c26 IS NULL AND
+ c27 IS NULL AND
+ #
+ c28 IS NULL AND
+ c29 IS NULL AND
+ # this got a timestamp instead of NULL: c30 IS NULL AND
+ c31 IS NULL AND
+ c32 IS NULL AND
+ #
+ c33 IS NULL AND
+ c34 IS NULL AND
+ c35 IS NULL AND
+ c36 IS NULL AND
+ c37 IS NULL AND
+ c38 IS NULL AND
+ c39 IS NULL AND
+ c40 IS NULL AND
+ c41 IS NULL AND
+ c42 IS NULL AND
+ c43 IS NULL AND
+ c44 IS NULL AND
+ #
+ c45 IS NULL AND
+ c46 IS NULL AND
+ c47 IS NULL AND
+ c48 IS NULL AND
+ c49 IS NULL AND
+ c50 IS NULL AND
+ c51 IS NULL AND
+ c52 IS NULL AND
+ c53 IS NULL AND
+ c54 IS NULL AND
+ c55 IS NULL AND
+ c56 IS NULL AND
+ #
+ c57 IS NULL AND
+ c58 IS NULL AND
+ c59 IS NULL AND
+ c60 IS NULL AND
+ #
+ c61 IS NULL AND
+ c62 IS NULL AND
+ c63 IS NULL AND
+ c64 IS NULL AND
+ #
+ c65 IS NULL AND
+ c66 IS NULL AND
+ c67 IS NULL AND
+ c68 IS NULL AND
+ c69 IS NULL AND
+ c70 IS NULL AND
+ c71 IS NULL AND
+ c72 IS NULL AND
+ c73 IS NULL AND
+ c74 IS NULL AND
+ c75 IS NULL AND
+ c76 IS NULL AND
+ #
+ c77 IS NULL AND
+ c78 IS NULL AND
+ #
+ crn = 3;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Update arbitrary values to NULL values.
+#
+UPDATE t1 SET
+c01 = NULL,
+c02 = NULL,
+c03 = NULL,
+c04 = NULL,
+c05 = NULL,
+c06 = NULL,
+c07 = NULL,
+c08 = NULL,
+c09 = NULL,
+c10 = NULL,
+c11 = NULL,
+c12 = NULL,
+c13 = NULL,
+c14 = NULL,
+c15 = NULL,
+c16 = NULL,
+c17 = NULL,
+c18 = NULL,
+c19 = NULL,
+c20 = NULL,
+c21 = NULL,
+c22 = NULL,
+c23 = NULL,
+c24 = NULL,
+c25 = NULL,
+c26 = NULL,
+c27 = NULL,
+#
+c28 = NULL,
+c29 = NULL,
+c30 = NULL,
+c31 = NULL,
+c32 = NULL,
+#
+c33 = NULL,
+c34 = NULL,
+c35 = NULL,
+c36 = NULL,
+c37 = NULL,
+c38 = NULL,
+c39 = NULL,
+c40 = NULL,
+c41 = NULL,
+c42 = NULL,
+c43 = NULL,
+c44 = NULL,
+#
+c45 = NULL,
+c46 = NULL,
+c47 = NULL,
+c48 = NULL,
+c49 = NULL,
+c50 = NULL,
+c51 = NULL,
+c52 = NULL,
+c53 = NULL,
+c54 = NULL,
+c55 = NULL,
+c56 = NULL,
+#
+c57 = NULL,
+c58 = NULL,
+c59 = NULL,
+c60 = NULL,
+#
+c61 = NULL,
+c62 = NULL,
+c63 = NULL,
+c64 = NULL,
+#
+c65 = NULL,
+c66 = NULL,
+c67 = NULL,
+c68 = NULL,
+c69 = NULL,
+c70 = NULL,
+c71 = NULL,
+c72 = NULL,
+c73 = NULL,
+c74 = NULL,
+c75 = NULL,
+c76 = NULL,
+#
+c77 = NULL,
+c78 = NULL,
+#
+crn = crn
+#
+WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 0 AND
+c05 = 001 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 0 AND
+c09 = 00001 AND
+c10 = 8388607 AND
+c11 = 0 AND
+c12 = 00000001 AND
+c13 = 2147483647 AND
+c14 = 0 AND
+c15 = 0000000001 AND
+c16 = 9223372036854775807 AND
+c17 = 0 AND
+c18 = 00000000000000000001 AND
+c19 > -1.175494352E-38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000001 AND
+c22 > -2.2250738585073E-308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 00000000000000000000001 AND
+c25 = -9999999999 AND
+c26 = 9999999999 AND
+c27 = 0000000001 AND
+#
+c28 = '2008-08-04' AND
+c29 = '2008-08-04 16:18:06' AND
+c30 = '2008-08-04 16:18:24' AND
+c31 = '16:18:47' AND
+c32 = '2008' AND
+#
+c33 = 'a' AND
+c34 = '' AND
+c35 = 'e' AND
+c36 = REPEAT('i',255) AND
+c37 = _utf8 x'c3a4' AND
+c38 = '' AND
+c39 = _utf8 x'c3b6' AND
+c40 = REPEAT(_utf8 x'c3bc',255) AND
+c41 = _ucs2 x'00e4' AND
+c42 = '' AND
+c43 = _ucs2 x'00f6' AND
+c44 = REPEAT(_ucs2 x'00fc',255) AND
+#
+c45 = '' AND
+c46 = 'a' AND
+c47 = REPEAT('e',255) AND
+c48 = REPEAT('i',261) AND
+c49 = '' AND
+c50 = _utf8 x'c3a4' AND
+c51 = REPEAT(_utf8 x'c3b6',255) AND
+c52 = REPEAT(_utf8 x'c3bc',261) AND
+c53 = '' AND
+c54 = _ucs2 x'00e4' AND
+c55 = REPEAT(_ucs2 x'00f6',255) AND
+c56 = REPEAT(_ucs2 x'00fc',261) AND
+#
+c57 = '0' AND
+c58 = '' AND
+c59 = '1' AND
+c60 = REPEAT('1',255) AND
+#
+c61 = '' AND
+c62 = 'b' AND
+c63 = REPEAT('c',255) AND
+c64 = REPEAT('\'',261) AND
+ #
+ c65 = 'tinyblob' AND
+ c66 = 'tinytext' AND
+ c67 = 'tinytext-ucs2' AND
+ c68 = 'blob' AND
+ c69 = 'text' AND
+ c70 = 'text-ucs2' AND
+ c71 = 'mediumblob' AND
+ c72 = 'mediumtext' AND
+ c73 = 'mediumtext-ucs2' AND
+ c74 = 'longblob' AND
+ c75 = 'longtext' AND
+ c76 = 'longtext-ucs2' AND
+ #
+ c77 = 'b' AND
+ c78 = 'b,c' AND
+ #
+ crn = 4;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Show what we have in the table.
+# Do not display bit type output. It's binary and confuses diff.
+# Also BINARY with nul-bytes should be avoided.
+#
+SELECT * FROM t1;
+c01 #
+c02 #
+c03 127
+c04 255
+c05 255
+c06 1
+c07 32767
+c08 65535
+c09 65535
+c10 8388607
+c11 16777215
+c12 16777215
+c13 2147483647
+c14 4294967295
+c15 4294967295
+c16 9223372036854775807
+c17 18446744073709551615
+c18 18446744073709551615
+c19 3.40282e+38
+c20 3.40282e+38
+c21 03.40282e+38
+c22 1.7976931348623e+308
+c23 1.7976931348623e+308
+c24 001.7976931348623e+308
+c25 9999999999
+c26 9999999999
+c27 9999999999
+c28 9999-12-31
+c29 9999-12-31 23:59:59
+c30 2038-01-08 03:14:07
+c31 838:59:59
+c32 2155
+c33 ÿ
+c34
+c35 ÿ
+c36 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c37 ￿
+c38
+c39 ￿
+c40 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c41 ￿
+c42
+c43 ￿
+c44 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c45
+c46 ÿ
+c47 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c48 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c49
+c50 ￿
+c51 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c52 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c53
+c54 ￿
+c55 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c56 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 c
+c78 a,b,c
+crn 1
+c01 #
+c02 #
+c03 -128
+c04 0
+c05 000
+c06 0
+c07 -32768
+c08 0
+c09 00000
+c10 -8388608
+c11 0
+c12 00000000
+c13 -2147483648
+c14 0
+c15 0000000000
+c16 -9223372036854775808
+c17 0
+c18 00000000000000000000
+c19 -3.40282e+38
+c20 1.17549e-38
+c21 000000000000
+c22 -1.7976931348623e+308
+c23 2.2250738585072e-308
+c24 0000000000000000000000
+c25 -9999999999
+c26 0
+c27 0000000000
+c28 1000-01-01
+c29 1000-01-01 00:00:00
+c30 1970-01-02 00:00:01
+c31 -838:59:59
+c32 1901
+c33
+c34
+c35
+c36
+c37
+c38
+c39
+c40
+c41
+c42
+c43
+c44
+c45
+c46
+c47
+c48
+c49
+c50
+c51
+c52
+c53
+c54
+c55
+c56
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65
+c66
+c67
+c68
+c69
+c70
+c71
+c72
+c73
+c74
+c75
+c76
+c77 a
+c78
+crn 2
+c01 #
+c02 #
+c03 127
+c04 0
+c05 001
+c06 1
+c07 32767
+c08 0
+c09 00001
+c10 8388607
+c11 0
+c12 00000001
+c13 2147483647
+c14 0
+c15 0000000001
+c16 9223372036854775807
+c17 0
+c18 00000000000000000001
+c19 -1.17549e-38
+c20 1.17549e-38
+c21 000000000001
+c22 -2.2250738585072e-308
+c23 2.2250738585072e-308
+c24 0000000000000000000001
+c25 -9999999999
+c26 9999999999
+c27 0000000001
+c28 2008-08-04
+c29 2008-08-04 16:18:06
+c30 2008-08-04 16:18:24
+c31 16:18:47
+c32 2008
+c33 a
+c34
+c35 e
+c36 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c37 ä
+c38
+c39 ö
+c40 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c41 ä
+c42
+c43 ö
+c44 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c45
+c46 a
+c47 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+c48 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c49
+c50 ä
+c51 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c52 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c53
+c54 ä
+c55 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c56 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62 b
+c63 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
+c64 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 b
+c78 b,c
+crn 3
+c01 #
+c02 #
+c03 NULL
+c04 NULL
+c05 NULL
+c06 NULL
+c07 NULL
+c08 NULL
+c09 NULL
+c10 NULL
+c11 NULL
+c12 NULL
+c13 NULL
+c14 NULL
+c15 NULL
+c16 NULL
+c17 NULL
+c18 NULL
+c19 NULL
+c20 NULL
+c21 NULL
+c22 NULL
+c23 NULL
+c24 NULL
+c25 NULL
+c26 NULL
+c27 NULL
+c28 NULL
+c29 NULL
+c30 2001-09-09 04:46:40
+c31 NULL
+c32 NULL
+c33 NULL
+c34 NULL
+c35 NULL
+c36 NULL
+c37 NULL
+c38 NULL
+c39 NULL
+c40 NULL
+c41 NULL
+c42 NULL
+c43 NULL
+c44 NULL
+c45 NULL
+c46 NULL
+c47 NULL
+c48 NULL
+c49 NULL
+c50 NULL
+c51 NULL
+c52 NULL
+c53 NULL
+c54 NULL
+c55 NULL
+c56 NULL
+c57 #
+c58 #
+c59 #
+c60 #
+c61 NULL
+c62 NULL
+c63 NULL
+c64 NULL
+c65 NULL
+c66 NULL
+c67 NULL
+c68 NULL
+c69 NULL
+c70 NULL
+c71 NULL
+c72 NULL
+c73 NULL
+c74 NULL
+c75 NULL
+c76 NULL
+c77 NULL
+c78 NULL
+crn 4
+affected rows: 4
+#
+# Delete the row that has max values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 255 AND
+c05 = 255 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 65535 AND
+c09 = 65535 AND
+c10 = 8388607 AND
+c11 = 16777215 AND
+c12 = 16777215 AND
+c13 = 2147483647 AND
+c14 = 4294967295 AND
+c15 = 4294967295 AND
+c16 = 9223372036854775807 AND
+c17 = 18446744073709551615 AND
+c18 = 18446744073709551615 AND
+c19 > 3.402823465E+38 AND
+c20 > 3.402823465E+38 AND
+c21 > 3.402823465E+38 AND
+c22 > 1.7976931348622E+308 AND
+c23 > 1.7976931348622E+308 AND
+c24 > 1.7976931348622E+308 AND
+c25 = 9999999999 AND
+c26 = 9999999999 AND
+c27 = 9999999999 AND
+#
+c28 = '9999-12-31' AND
+c29 = '9999-12-31 23:59:59' AND
+c30 = '2038-01-08 03:14:07' AND
+c31 = '838:59:59' AND
+c32 = '2155' AND
+#
+c33 = x'ff' AND
+c34 = '' AND
+c35 = x'ff' AND
+c36 = REPEAT(x'ff',255) AND
+c37 = _utf8 x'efbfbf' AND
+c38 = '' AND
+c39 = _utf8 x'efbfbf' AND
+c40 = REPEAT(_utf8 x'efbfbf',255) AND
+c41 = _ucs2 x'ffff' AND
+c42 = '' AND
+c43 = _ucs2 x'ffff' AND
+c44 = REPEAT(_ucs2 x'ffff',255) AND
+#
+c45 = '' AND
+c46 = x'ff' AND
+c47 = REPEAT(x'ff',255) AND
+c48 = REPEAT(x'ff',261) AND
+c49 = '' AND
+c50 = _utf8 x'efbfbf' AND
+c51 = REPEAT(_utf8 x'efbfbf',255) AND
+c52 = REPEAT(_utf8 x'efbfbf',261) AND
+c53 = '' AND
+c54 = _ucs2 x'ffff' AND
+c55 = REPEAT(_ucs2 x'ffff',255) AND
+c56 = REPEAT(_ucs2 x'ffff',261) AND
+#
+c57 = x'ff' AND
+c58 = '' AND
+c59 = x'ff' AND
+c60 = REPEAT(x'ff',255) AND
+#
+c61 = '' AND
+c62 = x'ff' AND
+c63 = REPEAT(x'ff',255) AND
+c64 = REPEAT(x'ff',261) AND
+#
+c65 = 'tinyblob' AND
+c66 = 'tinytext' AND
+c67 = 'tinytext-ucs2' AND
+c68 = 'blob' AND
+c69 = 'text' AND
+c70 = 'text-ucs2' AND
+c71 = 'mediumblob' AND
+c72 = 'mediumtext' AND
+c73 = 'mediumtext-ucs2' AND
+c74 = 'longblob' AND
+c75 = 'longtext' AND
+c76 = 'longtext-ucs2' AND
+#
+c77 = 'c' AND
+c78 = 'a,b,c' AND
+#
+crn = 1;
+affected rows: 1
+#
+# Delete the row that has min values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 = b'0' AND
+c02 = b'0000000000000000000000000000000000000000000000000000000000000000' AND
+c03 = -128 AND
+c04 = 0 AND
+c05 = 000 AND
+c06 = false AND
+c07 = -32768 AND
+c08 = 0 AND
+c09 = 00000 AND
+c10 = -8388608 AND
+c11 = 0 AND
+c12 = 00000000 AND
+c13 = -2147483648 AND
+c14 = 0 AND
+c15 = 0000000000 AND
+c16 = -9223372036854775808 AND
+c17 = 0 AND
+c18 = 00000000000000000000 AND
+c19 < -3.402823465E+38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000 AND
+c22 < -1.7976931348622E+308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 0000000000000000000000 AND
+c25 = -9999999999 AND
+c26 = 0 AND
+c27 = 0000000000 AND
+#
+c28 = '1000-01-01' AND
+c29 = '1000-01-01 00:00:00' AND
+c30 = '1970-01-02 00:00:01' AND
+c31 = '-838:59:59' AND
+c32 = '1901' AND
+#
+c33 = '' AND
+c34 = '' AND
+c35 = '' AND
+c36 = '' AND
+c37 = '' AND
+c38 = '' AND
+c39 = '' AND
+c40 = '' AND
+c41 = '' AND
+c42 = '' AND
+c43 = '' AND
+c44 = '' AND
+#
+c45 = '' AND
+c46 = '' AND
+c47 = '' AND
+c48 = '' AND
+c49 = '' AND
+c50 = '' AND
+c51 = '' AND
+c52 = '' AND
+c53 = '' AND
+c54 = '' AND
+c55 = '' AND
+c56 = '' AND
+#
+# this does not reproduce the inserted value: c57 = '' AND
+c58 = '' AND
+# this does not reproduce the inserted value: c59 = '' AND
+# this does not reproduce the inserted value: c60 = '' AND
+#
+c61 = '' AND
+c62 = '' AND
+c63 = '' AND
+c64 = '' AND
+#
+c65 = '' AND
+c66 = '' AND
+c67 = '' AND
+c68 = '' AND
+c69 = '' AND
+c70 = '' AND
+c71 = '' AND
+c72 = '' AND
+c73 = '' AND
+c74 = '' AND
+c75 = '' AND
+c76 = '' AND
+#
+c77 = 'a' AND
+c78 = '' AND
+#
+crn = 2;
+affected rows: 1
+#
+# Delete the row that has arbitrary values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 0 AND
+c05 = 001 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 0 AND
+c09 = 00001 AND
+c10 = 8388607 AND
+c11 = 0 AND
+c12 = 00000001 AND
+c13 = 2147483647 AND
+c14 = 0 AND
+c15 = 0000000001 AND
+c16 = 9223372036854775807 AND
+c17 = 0 AND
+c18 = 00000000000000000001 AND
+c19 > -1.175494352E-38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000001 AND
+c22 > -2.2250738585073E-308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 00000000000000000000001 AND
+c25 = -9999999999 AND
+c26 = 9999999999 AND
+c27 = 0000000001 AND
+#
+c28 = '2008-08-04' AND
+c29 = '2008-08-04 16:18:06' AND
+c30 = '2008-08-04 16:18:24' AND
+c31 = '16:18:47' AND
+c32 = '2008' AND
+#
+c33 = 'a' AND
+c34 = '' AND
+c35 = 'e' AND
+c36 = REPEAT('i',255) AND
+c37 = _utf8 x'c3a4' AND
+c38 = '' AND
+c39 = _utf8 x'c3b6' AND
+c40 = REPEAT(_utf8 x'c3bc',255) AND
+c41 = _ucs2 x'00e4' AND
+c42 = '' AND
+c43 = _ucs2 x'00f6' AND
+c44 = REPEAT(_ucs2 x'00fc',255) AND
+#
+c45 = '' AND
+c46 = 'a' AND
+c47 = REPEAT('e',255) AND
+c48 = REPEAT('i',261) AND
+c49 = '' AND
+c50 = _utf8 x'c3a4' AND
+c51 = REPEAT(_utf8 x'c3b6',255) AND
+c52 = REPEAT(_utf8 x'c3bc',261) AND
+c53 = '' AND
+c54 = _ucs2 x'00e4' AND
+c55 = REPEAT(_ucs2 x'00f6',255) AND
+c56 = REPEAT(_ucs2 x'00fc',261) AND
+#
+c57 = '0' AND
+c58 = '' AND
+c59 = '1' AND
+c60 = REPEAT('1',255) AND
+#
+c61 = '' AND
+c62 = 'b' AND
+c63 = REPEAT('c',255) AND
+c64 = REPEAT('\'',261) AND
+ #
+ c65 = 'tinyblob' AND
+ c66 = 'tinytext' AND
+ c67 = 'tinytext-ucs2' AND
+ c68 = 'blob' AND
+ c69 = 'text' AND
+ c70 = 'text-ucs2' AND
+ c71 = 'mediumblob' AND
+ c72 = 'mediumtext' AND
+ c73 = 'mediumtext-ucs2' AND
+ c74 = 'longblob' AND
+ c75 = 'longtext' AND
+ c76 = 'longtext-ucs2' AND
+ #
+ c77 = 'b' AND
+ c78 = 'b,c' AND
+ #
+ crn = 3;
+affected rows: 1
+#
+# Delete the row that has NULL values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 IS NULL AND
+c02 IS NULL AND
+c03 IS NULL AND
+c04 IS NULL AND
+c05 IS NULL AND
+c06 IS NULL AND
+c07 IS NULL AND
+c08 IS NULL AND
+c09 IS NULL AND
+c10 IS NULL AND
+c11 IS NULL AND
+c12 IS NULL AND
+c13 IS NULL AND
+c14 IS NULL AND
+c15 IS NULL AND
+c16 IS NULL AND
+c17 IS NULL AND
+c18 IS NULL AND
+c19 IS NULL AND
+c20 IS NULL AND
+c21 IS NULL AND
+c22 IS NULL AND
+c23 IS NULL AND
+c24 IS NULL AND
+c25 IS NULL AND
+c26 IS NULL AND
+c27 IS NULL AND
+#
+c28 IS NULL AND
+c29 IS NULL AND
+# this got a timestamp instead of NULL: c30 IS NULL AND
+c31 IS NULL AND
+c32 IS NULL AND
+#
+c33 IS NULL AND
+c34 IS NULL AND
+c35 IS NULL AND
+c36 IS NULL AND
+c37 IS NULL AND
+c38 IS NULL AND
+c39 IS NULL AND
+c40 IS NULL AND
+c41 IS NULL AND
+c42 IS NULL AND
+c43 IS NULL AND
+c44 IS NULL AND
+#
+c45 IS NULL AND
+c46 IS NULL AND
+c47 IS NULL AND
+c48 IS NULL AND
+c49 IS NULL AND
+c50 IS NULL AND
+c51 IS NULL AND
+c52 IS NULL AND
+c53 IS NULL AND
+c54 IS NULL AND
+c55 IS NULL AND
+c56 IS NULL AND
+#
+c57 IS NULL AND
+c58 IS NULL AND
+c59 IS NULL AND
+c60 IS NULL AND
+#
+c61 IS NULL AND
+c62 IS NULL AND
+c63 IS NULL AND
+c64 IS NULL AND
+#
+c65 IS NULL AND
+c66 IS NULL AND
+c67 IS NULL AND
+c68 IS NULL AND
+c69 IS NULL AND
+c70 IS NULL AND
+c71 IS NULL AND
+c72 IS NULL AND
+c73 IS NULL AND
+c74 IS NULL AND
+c75 IS NULL AND
+c76 IS NULL AND
+#
+c77 IS NULL AND
+c78 IS NULL AND
+#
+crn = 4;
+affected rows: 1
+#
+# Show what we have in the table. Should be empty now.
+#
+SELECT * FROM t1;
+affected rows: 0
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c01 BIT,
+c02 BIT(64),
+c03 TINYINT,
+c04 TINYINT UNSIGNED,
+c05 TINYINT ZEROFILL,
+c06 BOOL,
+c07 SMALLINT,
+c08 SMALLINT UNSIGNED,
+c09 SMALLINT ZEROFILL,
+c10 MEDIUMINT,
+c11 MEDIUMINT UNSIGNED,
+c12 MEDIUMINT ZEROFILL,
+c13 INT,
+c14 INT UNSIGNED,
+c15 INT ZEROFILL,
+c16 BIGINT,
+c17 BIGINT UNSIGNED,
+c18 BIGINT ZEROFILL,
+c19 FLOAT,
+c20 FLOAT UNSIGNED,
+c21 FLOAT ZEROFILL,
+c22 DOUBLE,
+c23 DOUBLE UNSIGNED,
+c24 DOUBLE ZEROFILL,
+c25 DECIMAL,
+c26 DECIMAL UNSIGNED,
+c27 DECIMAL ZEROFILL,
+#
+c28 DATE,
+c29 DATETIME,
+c30 TIMESTAMP,
+c31 TIME,
+c32 YEAR,
+#
+c33 CHAR,
+c34 CHAR(0),
+c35 CHAR(1),
+c36 CHAR(255),
+c37 NATIONAL CHAR,
+c38 NATIONAL CHAR(0),
+c39 NATIONAL CHAR(1),
+c40 NATIONAL CHAR(255),
+c41 CHAR CHARACTER SET UCS2,
+c42 CHAR(0) CHARACTER SET UCS2,
+c43 CHAR(1) CHARACTER SET UCS2,
+c44 CHAR(255) CHARACTER SET UCS2,
+#
+c45 VARCHAR(0),
+c46 VARCHAR(1),
+c47 VARCHAR(255),
+c48 VARCHAR(261),
+c49 NATIONAL VARCHAR(0),
+c50 NATIONAL VARCHAR(1),
+c51 NATIONAL VARCHAR(255),
+c52 NATIONAL VARCHAR(261),
+c53 VARCHAR(0) CHARACTER SET UCS2,
+c54 VARCHAR(1) CHARACTER SET UCS2,
+c55 VARCHAR(255) CHARACTER SET UCS2,
+c56 VARCHAR(261) CHARACTER SET UCS2,
+#
+c57 BINARY,
+c58 BINARY(0),
+c59 BINARY(1),
+c60 BINARY(255),
+#
+c61 VARBINARY(0),
+c62 VARBINARY(1),
+c63 VARBINARY(255),
+c64 VARBINARY(261),
+#
+c65 TINYBLOB,
+c66 TINYTEXT,
+c67 TINYTEXT CHARACTER SET UCS2,
+c68 BLOB,
+c69 TEXT,
+c70 TEXT CHARACTER SET UCS2,
+c71 MEDIUMBLOB,
+c72 MEDIUMTEXT,
+c73 MEDIUMTEXT CHARACTER SET UCS2,
+c74 LONGBLOB,
+c75 LONGTEXT,
+c76 LONGTEXT CHARACTER SET UCS2,
+#
+c77 ENUM('a','b','c'),
+c78 SET('a','b','c'),
+#
+crn INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.time_zone='SYSTEM'/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00000000' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=NULL /* type=16 meta=256 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'00000000' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=b'00000000' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=NULL /* type=16 meta=256 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=NULL /* type=16 meta=256 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'00000000' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'00000001' /* BIT(8) meta=256 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=NULL /* type=16 meta=256 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1;
+#
+# =========================================
+# Test #2 - Multi-row insert/update/delete.
+# =========================================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table with selected data types.
+#
+CREATE TABLE t1 (
+c28 DATE,
+c47 VARCHAR(24),
+crn INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Multi-row insert.
+#
+INSERT INTO t1 VALUES
+('2008-08-01','VARCHAR-01',1),
+('2008-08-02','VARCHAR-02',2),
+('2008-08-03','VARCHAR-03',3),
+('2008-08-04','VARCHAR-04',4),
+('2008-08-05','VARCHAR-05',5),
+('2008-08-06','VARCHAR-06',6),
+('2008-08-07','VARCHAR-07',7),
+('2008-08-08','VARCHAR-08',8),
+('2008-08-09','VARCHAR-09',9);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+#
+# Multi-row update.
+#
+UPDATE t1 SET c28 = ADDDATE(c28,10) WHERE crn < 8;
+affected rows: 7
+info: Rows matched: 7 Changed: 7 Warnings: 0
+#
+# Show what we have in the table.
+#
+SELECT * FROM t1;
+c28 c47 crn
+2008-08-11 VARCHAR-01 1
+2008-08-12 VARCHAR-02 2
+2008-08-13 VARCHAR-03 3
+2008-08-14 VARCHAR-04 4
+2008-08-15 VARCHAR-05 5
+2008-08-16 VARCHAR-06 6
+2008-08-17 VARCHAR-07 7
+2008-08-08 VARCHAR-08 8
+2008-08-09 VARCHAR-09 9
+affected rows: 9
+#
+# Multi-row delete.
+#
+DELETE FROM t1 WHERE crn < 8;
+affected rows: 7
+#
+# Show what we have in the table.
+#
+SELECT * FROM t1;
+c28 c47 crn
+2008-08-08 VARCHAR-08 8
+2008-08-09 VARCHAR-09 9
+affected rows: 2
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c28 DATE,
+c47 VARCHAR(24),
+crn INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-08' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=8 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-09' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=9 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:11' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:12' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:13' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:14' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:15' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:16' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:17' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:11' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:12' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:13' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:14' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:15' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:16' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:17' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1;
+#
+# ====================================
+# Test #3 - Multi-table update/delete.
+# ====================================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create test tables with selected data types.
+#
+CREATE TABLE t1 (
+c_1_1 DATE,
+c_1_2 VARCHAR(255),
+c_1_n INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+CREATE TABLE t2 (
+c_2_1 DATE,
+c_2_2 VARCHAR(255),
+c_2_n INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+CREATE TABLE t3 (
+c_3_1 DATE,
+c_3_2 VARCHAR(255),
+c_3_n INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Insert data.
+#
+INSERT INTO t1 VALUES
+('2008-01-01','VARCHAR-01-01',11),
+('2008-01-02','VARCHAR-01-02',2),
+('2008-01-03','VARCHAR-01-03',3),
+('2008-01-04','VARCHAR-01-04',4),
+('2008-01-05','VARCHAR-01-05',5),
+('2008-01-06','VARCHAR-01-06',6),
+('2008-01-07','VARCHAR-01-07',7),
+('2008-01-08','VARCHAR-01-08',18),
+('2008-01-09','VARCHAR-01-09',19);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+INSERT INTO t2 VALUES
+('2008-02-01','VARCHAR-02-01',21),
+('2008-02-02','VARCHAR-02-02',2),
+('2008-02-03','VARCHAR-02-03',3),
+('2008-02-04','VARCHAR-02-04',4),
+('2008-02-05','VARCHAR-02-05',5),
+('2008-02-06','VARCHAR-02-06',6),
+('2008-02-07','VARCHAR-02-07',7),
+('2008-02-08','VARCHAR-02-08',28),
+('2008-02-09','VARCHAR-02-09',29);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+INSERT INTO t3 VALUES
+('2008-03-01','VARCHAR-03-01',31),
+('2008-03-02','VARCHAR-03-02',2),
+('2008-03-03','VARCHAR-03-03',3),
+('2008-03-04','VARCHAR-03-04',4),
+('2008-03-05','VARCHAR-03-05',5),
+('2008-03-06','VARCHAR-03-06',6),
+('2008-03-07','VARCHAR-03-07',7),
+('2008-03-08','VARCHAR-03-08',38),
+('2008-03-09','VARCHAR-03-09',39);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+#
+# Multi-table update.
+#
+UPDATE t1,t2,t3 SET
+c_1_1 = ADDDATE(c_1_1,INTERVAL 10 YEAR),
+c_2_1 = ADDDATE(c_2_1,INTERVAL 20 YEAR),
+c_3_1 = ADDDATE(c_3_1,INTERVAL 30 YEAR)
+WHERE c_1_n = c_2_n AND c_2_n = c_3_n;
+affected rows: 18
+info: Rows matched: 18 Changed: 18 Warnings: 0
+#
+# Show what we have in the tables.
+#
+SELECT * FROM t1;
+c_1_1 c_1_2 c_1_n
+2008-01-01 VARCHAR-01-01 11
+2018-01-02 VARCHAR-01-02 2
+2018-01-03 VARCHAR-01-03 3
+2018-01-04 VARCHAR-01-04 4
+2018-01-05 VARCHAR-01-05 5
+2018-01-06 VARCHAR-01-06 6
+2018-01-07 VARCHAR-01-07 7
+2008-01-08 VARCHAR-01-08 18
+2008-01-09 VARCHAR-01-09 19
+affected rows: 9
+SELECT * FROM t2;
+c_2_1 c_2_2 c_2_n
+2008-02-01 VARCHAR-02-01 21
+2028-02-02 VARCHAR-02-02 2
+2028-02-03 VARCHAR-02-03 3
+2028-02-04 VARCHAR-02-04 4
+2028-02-05 VARCHAR-02-05 5
+2028-02-06 VARCHAR-02-06 6
+2028-02-07 VARCHAR-02-07 7
+2008-02-08 VARCHAR-02-08 28
+2008-02-09 VARCHAR-02-09 29
+affected rows: 9
+SELECT * FROM t3;
+c_3_1 c_3_2 c_3_n
+2008-03-01 VARCHAR-03-01 31
+2038-03-02 VARCHAR-03-02 2
+2038-03-03 VARCHAR-03-03 3
+2038-03-04 VARCHAR-03-04 4
+2038-03-05 VARCHAR-03-05 5
+2038-03-06 VARCHAR-03-06 6
+2038-03-07 VARCHAR-03-07 7
+2008-03-08 VARCHAR-03-08 38
+2008-03-09 VARCHAR-03-09 39
+affected rows: 9
+#
+# Multi-table delete.
+#
+DELETE FROM t1,t2,t3 USING t1 INNER JOIN t2 INNER JOIN t3
+WHERE c_1_n = c_2_n AND c_2_n = c_3_n;
+affected rows: 18
+#
+# Show what we have in the tables.
+#
+SELECT * FROM t1;
+c_1_1 c_1_2 c_1_n
+2008-01-01 VARCHAR-01-01 11
+2008-01-08 VARCHAR-01-08 18
+2008-01-09 VARCHAR-01-09 19
+affected rows: 3
+SELECT * FROM t2;
+c_2_1 c_2_2 c_2_n
+2008-02-01 VARCHAR-02-01 21
+2008-02-08 VARCHAR-02-08 28
+2008-02-09 VARCHAR-02-09 29
+affected rows: 3
+SELECT * FROM t3;
+c_3_1 c_3_2 c_3_n
+2008-03-01 VARCHAR-03-01 31
+2008-03-08 VARCHAR-03-08 38
+2008-03-09 VARCHAR-03-09 39
+affected rows: 3
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c_1_1 DATE,
+c_1_2 VARCHAR(255),
+c_1_n INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t2 (
+c_2_1 DATE,
+c_2_2 VARCHAR(255),
+c_2_n INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t3 (
+c_3_1 DATE,
+c_3_2 VARCHAR(255),
+c_3_n INT -- row number
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-01' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=11 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-08' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=18 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-09' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=19 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-01' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=21 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-08' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=28 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-09' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=29 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t3` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-01' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=31 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-08' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=38 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-09' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=39 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t3` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t3` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1, t2, t3;
+#
+# ===========================
+# Test #4 - LOAD DATA INFILE.
+# ===========================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table with selected data types.
+#
+CREATE TABLE t1 (
+c1 INT DEFAULT 100,
+c2 INT,
+c3 VARCHAR(60)
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Load data.
+#
+LOAD DATA INFILE '../../std_data/loaddata5.dat'
+ INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (c1,c2)
+SET c3 = 'Wow';
+affected rows: 3
+info: Records: 3 Deleted: 0 Skipped: 0 Warnings: 0
+#
+# Show what we have in the table.
+#
+SELECT * FROM t1;
+c1 c2 c3
+1 2 Wow
+3 4 Wow
+5 6 Wow
+affected rows: 3
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c1 INT DEFAULT 100,
+c2 INT,
+c3 VARCHAR(60)
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2=2 /* INT meta=0 nullable=1 is_null=0 */
+### @3='Wow' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2=4 /* INT meta=0 nullable=1 is_null=0 */
+### @3='Wow' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=5 /* INT meta=0 nullable=1 is_null=0 */
+### @2=6 /* INT meta=0 nullable=1 is_null=0 */
+### @3='Wow' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1;
diff --git a/mysql-test/r/mysqlbinlog_row_myisam.result b/mysql-test/r/mysqlbinlog_row_myisam.result
new file mode 100644
index 00000000000..b9366d941f8
--- /dev/null
+++ b/mysql-test/r/mysqlbinlog_row_myisam.result
@@ -0,0 +1,4899 @@
+SET NAMES 'utf8';
+#
+# Preparatory cleanup.
+#
+DROP TABLE IF EXISTS t1, t2, t3;
+#
+# We need a fixed timestamp to avoid varying results.
+#
+SET timestamp=1000000000;
+#
+# ===================================================
+# Test #1 - Insert/update/delete with all data types.
+# ===================================================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table with all data types.
+#
+CREATE TABLE t1 (
+c01 BIT,
+c02 BIT(64),
+c03 TINYINT,
+c04 TINYINT UNSIGNED,
+c05 TINYINT ZEROFILL,
+c06 BOOL,
+c07 SMALLINT,
+c08 SMALLINT UNSIGNED,
+c09 SMALLINT ZEROFILL,
+c10 MEDIUMINT,
+c11 MEDIUMINT UNSIGNED,
+c12 MEDIUMINT ZEROFILL,
+c13 INT,
+c14 INT UNSIGNED,
+c15 INT ZEROFILL,
+c16 BIGINT,
+c17 BIGINT UNSIGNED,
+c18 BIGINT ZEROFILL,
+c19 FLOAT,
+c20 FLOAT UNSIGNED,
+c21 FLOAT ZEROFILL,
+c22 DOUBLE,
+c23 DOUBLE UNSIGNED,
+c24 DOUBLE ZEROFILL,
+c25 DECIMAL,
+c26 DECIMAL UNSIGNED,
+c27 DECIMAL ZEROFILL,
+#
+c28 DATE,
+c29 DATETIME,
+c30 TIMESTAMP,
+c31 TIME,
+c32 YEAR,
+#
+c33 CHAR,
+c34 CHAR(0),
+c35 CHAR(1),
+c36 CHAR(255),
+c37 NATIONAL CHAR,
+c38 NATIONAL CHAR(0),
+c39 NATIONAL CHAR(1),
+c40 NATIONAL CHAR(255),
+c41 CHAR CHARACTER SET UCS2,
+c42 CHAR(0) CHARACTER SET UCS2,
+c43 CHAR(1) CHARACTER SET UCS2,
+c44 CHAR(255) CHARACTER SET UCS2,
+#
+c45 VARCHAR(0),
+c46 VARCHAR(1),
+c47 VARCHAR(255),
+c48 VARCHAR(261),
+c49 NATIONAL VARCHAR(0),
+c50 NATIONAL VARCHAR(1),
+c51 NATIONAL VARCHAR(255),
+c52 NATIONAL VARCHAR(261),
+c53 VARCHAR(0) CHARACTER SET UCS2,
+c54 VARCHAR(1) CHARACTER SET UCS2,
+c55 VARCHAR(255) CHARACTER SET UCS2,
+c56 VARCHAR(261) CHARACTER SET UCS2,
+#
+c57 BINARY,
+c58 BINARY(0),
+c59 BINARY(1),
+c60 BINARY(255),
+#
+c61 VARBINARY(0),
+c62 VARBINARY(1),
+c63 VARBINARY(255),
+c64 VARBINARY(261),
+#
+c65 TINYBLOB,
+c66 TINYTEXT,
+c67 TINYTEXT CHARACTER SET UCS2,
+c68 BLOB,
+c69 TEXT,
+c70 TEXT CHARACTER SET UCS2,
+c71 MEDIUMBLOB,
+c72 MEDIUMTEXT,
+c73 MEDIUMTEXT CHARACTER SET UCS2,
+c74 LONGBLOB,
+c75 LONGTEXT,
+c76 LONGTEXT CHARACTER SET UCS2,
+#
+c77 ENUM('a','b','c'),
+c78 SET('a','b','c'),
+#
+crn INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+#
+# Insert minimum values.
+#
+INSERT INTO t1 VALUES (
+b'0', -- c01
+b'0000000000000000000000000000000000000000000000000000000000000000', -- c02
+-128, -- c03
+0, -- c04
+000, -- c05
+false, -- c06
+-32768, -- c07
+0, -- c08
+00000, -- c09
+-8388608, -- c10
+0, -- c11
+00000000, -- c12
+-2147483648, -- c13
+0, -- c14
+0000000000, -- c15
+-9223372036854775808, -- c16
+0, -- c17
+00000000000000000000, -- c18
+-3.402823466E+38, -- c19
+1.175494351E-38, -- c20
+000000000000, -- c21
+-1.7976931348623E+308, -- c22 three digits cut for ps-protocol
+2.2250738585072E-308, -- c23 three digits cut for ps-protocol
+0000000000000000000000, -- c24
+-9999999999, -- c25
+0, -- c26
+0000000000, -- c27
+#
+'1000-01-01', -- c28
+'1000-01-01 00:00:00', -- c29
+'1970-01-02 00:00:01', -- c30 one day later due to timezone issues
+'-838:59:59', -- c31
+'1901', -- c32
+#
+'', -- c33
+'', -- c34
+'', -- c35
+'', -- c36
+'', -- c37
+'', -- c38
+'', -- c39
+'', -- c40
+'', -- c41
+'', -- c42
+'', -- c43
+'', -- c44
+#
+'', -- c45
+'', -- c46
+'', -- c47
+'', -- c48
+'', -- c49
+'', -- c50
+'', -- c51
+'', -- c52
+'', -- c53
+'', -- c54
+'', -- c55
+'', -- c56
+#
+'', -- c57
+'', -- c58
+'', -- c59
+'', -- c60
+#
+'', -- c61
+'', -- c62
+'', -- c63
+'', -- c64
+#
+'', -- c65
+'', -- c66
+'', -- c67
+'', -- c68
+'', -- c69
+'', -- c70
+'', -- c71
+'', -- c72
+'', -- c73
+'', -- c74
+'', -- c75
+'', -- c76
+#
+'a', -- c77
+'', -- c78
+#
+1 -- crn -- row number
+);
+#
+# Insert maximum values.
+#
+INSERT INTO t1 VALUES (
+b'1', -- c01
+b'1111111111111111111111111111111111111111111111111111111111111111', -- c02
+127, -- c03
+255, -- c04
+255, -- c05
+true, -- c06
+32767, -- c07
+65535, -- c08
+65535, -- c09
+8388607, -- c10
+16777215, -- c11
+16777215, -- c12
+2147483647, -- c13
+4294967295, -- c14
+4294967295, -- c15
+9223372036854775807, -- c16
+18446744073709551615, -- c17
+18446744073709551615, -- c18
+3.402823466E+38, -- c19
+3.402823466E+38, -- c20
+3.402823466E+38, -- c21
+1.7976931348623E+308, -- c22 three digits cut for ps-protocol
+1.7976931348623E+308, -- c23 three digits cut for ps-protocol
+1.7976931348623E+308, -- c24 three digits cut for ps-protocol
+9999999999, -- c25
+9999999999, -- c26
+9999999999, -- c27
+#
+'9999-12-31', -- c28
+'9999-12-31 23:59:59', -- c29
+'2038-01-08 03:14:07', -- c30 one day earlier due to timezone issues
+'838:59:59', -- c31
+'2155', -- c32
+#
+x'ff', -- c33
+'', -- c34
+x'ff', -- c35
+REPEAT(x'ff',255), -- c36
+_utf8 x'efbfbf', -- c37
+'', -- c38
+_utf8 x'efbfbf', -- c39
+REPEAT(_utf8 x'efbfbf',255), -- c40
+_ucs2 x'ffff', -- c41
+'', -- c42
+_ucs2 x'ffff', -- c43
+REPEAT(_ucs2 x'ffff',255), -- c44
+#
+'', -- c45
+x'ff', -- c46
+REPEAT(x'ff',255), -- c47
+REPEAT(x'ff',261), -- c48
+'', -- c49
+_utf8 x'efbfbf', -- c50
+REPEAT(_utf8 x'efbfbf',255), -- c51
+REPEAT(_utf8 x'efbfbf',261), -- c52
+'', -- c53
+_ucs2 x'ffff', -- c54
+REPEAT(_ucs2 x'ffff',255), -- c55
+REPEAT(_ucs2 x'ffff',261), -- c56
+#
+x'ff', -- c57
+'', -- c58
+x'ff', -- c59
+REPEAT(x'ff',255), -- c60
+#
+'', -- c61
+x'ff', -- c62
+REPEAT(x'ff',255), -- c63
+REPEAT(x'ff',261), -- c64
+#
+'tinyblob', -- c65 not using maximum value here
+'tinytext', -- c66 not using maximum value here
+'tinytext-ucs2', -- c67 not using maximum value here
+'blob', -- c68 not using maximum value here
+'text', -- c69 not using maximum value here
+'text-ucs2', -- c70 not using maximum value here
+'mediumblob', -- c71 not using maximum value here
+'mediumtext', -- c72 not using maximum value here
+'mediumtext-ucs2', -- c73 not using maximum value here
+'longblob', -- c74 not using maximum value here
+'longtext', -- c75 not using maximum value here
+'longtext-ucs2', -- c76 not using maximum value here
+#
+'c', -- c77
+'a,b,c', -- c78
+#
+2 -- crn -- row number
+);
+#
+# Insert a row with NULL values and one with arbitrary values.
+#
+INSERT INTO t1 VALUES (
+NULL, -- c01
+NULL, -- c02
+NULL, -- c03
+NULL, -- c04
+NULL, -- c05
+NULL, -- c06
+NULL, -- c07
+NULL, -- c08
+NULL, -- c09
+NULL, -- c10
+NULL, -- c11
+NULL, -- c12
+NULL, -- c13
+NULL, -- c14
+NULL, -- c15
+NULL, -- c16
+NULL, -- c17
+NULL, -- c18
+NULL, -- c19
+NULL, -- c20
+NULL, -- c21
+NULL, -- c22
+NULL, -- c23
+NULL, -- c24
+NULL, -- c25
+NULL, -- c26
+NULL, -- c27
+#
+NULL, -- c28
+NULL, -- c29
+NULL, -- c30
+NULL, -- c31
+NULL, -- c32
+#
+NULL, -- c33
+NULL, -- c34
+NULL, -- c35
+NULL, -- c36
+NULL, -- c37
+NULL, -- c38
+NULL, -- c39
+NULL, -- c40
+NULL, -- c41
+NULL, -- c42
+NULL, -- c43
+NULL, -- c44
+#
+NULL, -- c45
+NULL, -- c46
+NULL, -- c47
+NULL, -- c48
+NULL, -- c49
+NULL, -- c50
+NULL, -- c51
+NULL, -- c52
+NULL, -- c53
+NULL, -- c54
+NULL, -- c55
+NULL, -- c56
+#
+NULL, -- c57
+NULL, -- c58
+NULL, -- c59
+NULL, -- c60
+#
+NULL, -- c61
+NULL, -- c62
+NULL, -- c63
+NULL, -- c64
+#
+NULL, -- c65
+NULL, -- c66
+NULL, -- c67
+NULL, -- c68
+NULL, -- c69
+NULL, -- c70
+NULL, -- c71
+NULL, -- c72
+NULL, -- c73
+NULL, -- c74
+NULL, -- c75
+NULL, -- c76
+#
+NULL, -- c77
+NULL, -- c78
+#
+3 -- crn -- row number
+), (
+b'1', -- c01
+b'1111111111111111111111111111111111111111111111111111111111111111', -- c02
+127, -- c03
+0, -- c04
+001, -- c05
+true, -- c06
+32767, -- c07
+0, -- c08
+00001, -- c09
+8388607, -- c10
+0, -- c11
+00000001, -- c12
+2147483647, -- c13
+0, -- c14
+0000000001, -- c15
+9223372036854775807, -- c16
+0, -- c17
+00000000000000000001, -- c18
+-1.175494351E-38, -- c19
+1.175494351E-38, -- c20
+000000000000001, -- c21
+-2.2250738585072E-308, -- c22
+2.2250738585072E-308, -- c23
+00000000000000000000001, -- c24
+-9999999999, -- c25
+9999999999, -- c26
+0000000001, -- c27
+#
+'2008-08-04', -- c28
+'2008-08-04 16:18:06', -- c29
+'2008-08-04 16:18:24', -- c30
+'16:18:47', -- c31
+'2008', -- c32
+#
+'a', -- c33
+'', -- c34
+'e', -- c35
+REPEAT('i',255), -- c36
+_utf8 x'c3a4', -- c37
+'', -- c38
+_utf8 x'c3b6', -- c39
+REPEAT(_utf8 x'c3bc',255), -- c40
+_ucs2 x'00e4', -- c41
+'', -- c42
+_ucs2 x'00f6', -- c43
+REPEAT(_ucs2 x'00fc',255), -- c44
+#
+'', -- c45
+'a', -- c46
+REPEAT('e',255), -- c47
+REPEAT('i',261), -- c48
+'', -- c49
+_utf8 x'c3a4', -- c50
+REPEAT(_utf8 x'c3b6',255), -- c51
+REPEAT(_utf8 x'c3bc',261), -- c52
+'', -- c53
+_ucs2 x'00e4', -- c54
+REPEAT(_ucs2 x'00f6',255), -- c55
+REPEAT(_ucs2 x'00fc',261), -- c56
+#
+'0', -- c57
+'', -- c58
+'1', -- c59
+REPEAT('1',255), -- c60
+#
+'', -- c61
+'b', -- c62
+REPEAT('c',255), -- c63
+REPEAT('\'',261), -- c64
+ #
+ 'tinyblob', -- c65
+ 'tinytext', -- c66
+ 'tinytext-ucs2', -- c67
+ 'blob', -- c68
+ 'text', -- c69
+ 'text-ucs2', -- c70
+ 'mediumblob', -- c71
+ 'mediumtext', -- c72
+ 'mediumtext-ucs2', -- c73
+ 'longblob', -- c74
+ 'longtext', -- c75
+ 'longtext-ucs2', -- c76
+ #
+ 'b', -- c77
+ 'b,c', -- c78
+ #
+ 4 -- crn -- row number
+ );
+#
+# Show what we have in the table.
+# Do not display bit type output. It's binary and confuses diff.
+# Also BINARY with nul-bytes should be avoided.
+#
+SELECT * FROM t1;
+c01 #
+c02 #
+c03 -128
+c04 0
+c05 000
+c06 0
+c07 -32768
+c08 0
+c09 00000
+c10 -8388608
+c11 0
+c12 00000000
+c13 -2147483648
+c14 0
+c15 0000000000
+c16 -9223372036854775808
+c17 0
+c18 00000000000000000000
+c19 -3.40282e+38
+c20 1.17549e-38
+c21 000000000000
+c22 -1.7976931348623e+308
+c23 2.2250738585072e-308
+c24 0000000000000000000000
+c25 -9999999999
+c26 0
+c27 0000000000
+c28 1000-01-01
+c29 1000-01-01 00:00:00
+c30 1970-01-02 00:00:01
+c31 -838:59:59
+c32 1901
+c33
+c34
+c35
+c36
+c37
+c38
+c39
+c40
+c41
+c42
+c43
+c44
+c45
+c46
+c47
+c48
+c49
+c50
+c51
+c52
+c53
+c54
+c55
+c56
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65
+c66
+c67
+c68
+c69
+c70
+c71
+c72
+c73
+c74
+c75
+c76
+c77 a
+c78
+crn 1
+c01 #
+c02 #
+c03 127
+c04 255
+c05 255
+c06 1
+c07 32767
+c08 65535
+c09 65535
+c10 8388607
+c11 16777215
+c12 16777215
+c13 2147483647
+c14 4294967295
+c15 4294967295
+c16 9223372036854775807
+c17 18446744073709551615
+c18 18446744073709551615
+c19 3.40282e+38
+c20 3.40282e+38
+c21 03.40282e+38
+c22 1.7976931348623e+308
+c23 1.7976931348623e+308
+c24 001.7976931348623e+308
+c25 9999999999
+c26 9999999999
+c27 9999999999
+c28 9999-12-31
+c29 9999-12-31 23:59:59
+c30 2038-01-08 03:14:07
+c31 838:59:59
+c32 2155
+c33 ÿ
+c34
+c35 ÿ
+c36 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c37 ￿
+c38
+c39 ￿
+c40 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c41 ￿
+c42
+c43 ￿
+c44 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c45
+c46 ÿ
+c47 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c48 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c49
+c50 ￿
+c51 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c52 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c53
+c54 ￿
+c55 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c56 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 c
+c78 a,b,c
+crn 2
+c01 #
+c02 #
+c03 NULL
+c04 NULL
+c05 NULL
+c06 NULL
+c07 NULL
+c08 NULL
+c09 NULL
+c10 NULL
+c11 NULL
+c12 NULL
+c13 NULL
+c14 NULL
+c15 NULL
+c16 NULL
+c17 NULL
+c18 NULL
+c19 NULL
+c20 NULL
+c21 NULL
+c22 NULL
+c23 NULL
+c24 NULL
+c25 NULL
+c26 NULL
+c27 NULL
+c28 NULL
+c29 NULL
+c30 2001-09-09 04:46:40
+c31 NULL
+c32 NULL
+c33 NULL
+c34 NULL
+c35 NULL
+c36 NULL
+c37 NULL
+c38 NULL
+c39 NULL
+c40 NULL
+c41 NULL
+c42 NULL
+c43 NULL
+c44 NULL
+c45 NULL
+c46 NULL
+c47 NULL
+c48 NULL
+c49 NULL
+c50 NULL
+c51 NULL
+c52 NULL
+c53 NULL
+c54 NULL
+c55 NULL
+c56 NULL
+c57 #
+c58 #
+c59 #
+c60 #
+c61 NULL
+c62 NULL
+c63 NULL
+c64 NULL
+c65 NULL
+c66 NULL
+c67 NULL
+c68 NULL
+c69 NULL
+c70 NULL
+c71 NULL
+c72 NULL
+c73 NULL
+c74 NULL
+c75 NULL
+c76 NULL
+c77 NULL
+c78 NULL
+crn 3
+c01 #
+c02 #
+c03 127
+c04 0
+c05 001
+c06 1
+c07 32767
+c08 0
+c09 00001
+c10 8388607
+c11 0
+c12 00000001
+c13 2147483647
+c14 0
+c15 0000000001
+c16 9223372036854775807
+c17 0
+c18 00000000000000000001
+c19 -1.17549e-38
+c20 1.17549e-38
+c21 000000000001
+c22 -2.2250738585072e-308
+c23 2.2250738585072e-308
+c24 0000000000000000000001
+c25 -9999999999
+c26 9999999999
+c27 0000000001
+c28 2008-08-04
+c29 2008-08-04 16:18:06
+c30 2008-08-04 16:18:24
+c31 16:18:47
+c32 2008
+c33 a
+c34
+c35 e
+c36 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c37 ä
+c38
+c39 ö
+c40 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c41 ä
+c42
+c43 ö
+c44 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c45
+c46 a
+c47 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+c48 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c49
+c50 ä
+c51 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c52 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c53
+c54 ä
+c55 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c56 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62 b
+c63 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
+c64 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 b
+c78 b,c
+crn 4
+#
+# NOTE: For matching FLOAT and DOUBLE values in WHERE conditions,
+# don't use exact match, but < or > and tweak the numbers a bit.
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Update min values to max values.
+#
+UPDATE t1 SET
+c01 = b'1',
+c02 = b'1111111111111111111111111111111111111111111111111111111111111111',
+c03 = 127,
+c04 = 255,
+c05 = 255,
+c06 = true,
+c07 = 32767,
+c08 = 65535,
+c09 = 65535,
+c10 = 8388607,
+c11 = 16777215,
+c12 = 16777215,
+c13 = 2147483647,
+c14 = 4294967295,
+c15 = 4294967295,
+c16 = 9223372036854775807,
+c17 = 18446744073709551615,
+c18 = 18446744073709551615,
+c19 = 3.402823466E+38,
+c20 = 3.402823466E+38,
+c21 = 3.402823466E+38,
+c22 = 1.7976931348623E+308,
+c23 = 1.7976931348623E+308,
+c24 = 1.7976931348623E+308,
+c25 = 9999999999,
+c26 = 9999999999,
+c27 = 9999999999,
+#
+c28 = '9999-12-31',
+c29 = '9999-12-31 23:59:59',
+c30 = '2038-01-08 03:14:07',
+c31 = '838:59:59',
+c32 = '2155',
+#
+c33 = x'ff',
+c34 = '',
+c35 = x'ff',
+c36 = REPEAT(x'ff',255),
+c37 = _utf8 x'efbfbf',
+c38 = '',
+c39 = _utf8 x'efbfbf',
+c40 = REPEAT(_utf8 x'efbfbf',255),
+c41 = _ucs2 x'ffff',
+c42 = '',
+c43 = _ucs2 x'ffff',
+c44 = REPEAT(_ucs2 x'ffff',255),
+#
+c45 = '',
+c46 = x'ff',
+c47 = REPEAT(x'ff',255),
+c48 = REPEAT(x'ff',261),
+c49 = '',
+c50 = _utf8 x'efbfbf',
+c51 = REPEAT(_utf8 x'efbfbf',255),
+c52 = REPEAT(_utf8 x'efbfbf',261),
+c53 = '',
+c54 = _ucs2 x'ffff',
+c55 = REPEAT(_ucs2 x'ffff',255),
+c56 = REPEAT(_ucs2 x'ffff',261),
+#
+c57 = x'ff',
+c58 = '',
+c59 = x'ff',
+c60 = REPEAT(x'ff',255),
+#
+c61 = '',
+c62 = x'ff',
+c63 = REPEAT(x'ff',255),
+c64 = REPEAT(x'ff',261),
+#
+c65 = 'tinyblob',
+c66 = 'tinytext',
+c67 = 'tinytext-ucs2',
+c68 = 'blob',
+c69 = 'text',
+c70 = 'text-ucs2',
+c71 = 'mediumblob',
+c72 = 'mediumtext',
+c73 = 'mediumtext-ucs2',
+c74 = 'longblob',
+c75 = 'longtext',
+c76 = 'longtext-ucs2',
+#
+c77 = 'c',
+c78 = 'a,b,c',
+#
+crn = crn
+#
+WHERE
+#
+c01 = b'0' AND
+c02 = b'0000000000000000000000000000000000000000000000000000000000000000' AND
+c03 = -128 AND
+c04 = 0 AND
+c05 = 000 AND
+c06 = false AND
+c07 = -32768 AND
+c08 = 0 AND
+c09 = 00000 AND
+c10 = -8388608 AND
+c11 = 0 AND
+c12 = 00000000 AND
+c13 = -2147483648 AND
+c14 = 0 AND
+c15 = 0000000000 AND
+c16 = -9223372036854775808 AND
+c17 = 0 AND
+c18 = 00000000000000000000 AND
+c19 < -3.402823465E+38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000 AND
+c22 < -1.7976931348622E+308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 0000000000000000000000 AND
+c25 = -9999999999 AND
+c26 = 0 AND
+c27 = 0000000000 AND
+#
+c28 = '1000-01-01' AND
+c29 = '1000-01-01 00:00:00' AND
+c30 = '1970-01-02 00:00:01' AND
+c31 = '-838:59:59' AND
+c32 = '1901' AND
+#
+c33 = '' AND
+c34 = '' AND
+c35 = '' AND
+c36 = '' AND
+c37 = '' AND
+c38 = '' AND
+c39 = '' AND
+c40 = '' AND
+c41 = '' AND
+c42 = '' AND
+c43 = '' AND
+c44 = '' AND
+#
+c45 = '' AND
+c46 = '' AND
+c47 = '' AND
+c48 = '' AND
+c49 = '' AND
+c50 = '' AND
+c51 = '' AND
+c52 = '' AND
+c53 = '' AND
+c54 = '' AND
+c55 = '' AND
+c56 = '' AND
+#
+# this does not reproduce the inserted value: c57 = '' AND
+c58 = '' AND
+# this does not reproduce the inserted value: c59 = '' AND
+# this does not reproduce the inserted value: c60 = '' AND
+#
+c61 = '' AND
+c62 = '' AND
+c63 = '' AND
+c64 = '' AND
+#
+c65 = '' AND
+c66 = '' AND
+c67 = '' AND
+c68 = '' AND
+c69 = '' AND
+c70 = '' AND
+c71 = '' AND
+c72 = '' AND
+c73 = '' AND
+c74 = '' AND
+c75 = '' AND
+c76 = '' AND
+#
+c77 = 'a' AND
+c78 = '' AND
+#
+crn = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Update max values to min values.
+#
+UPDATE t1 SET
+c01 = b'0',
+c02 = b'0000000000000000000000000000000000000000000000000000000000000000',
+c03 = -128,
+c04 = 0,
+c05 = 000,
+c06 = false,
+c07 = -32768,
+c08 = 0,
+c09 = 00000,
+c10 = -8388608,
+c11 = 0,
+c12 = 00000000,
+c13 = -2147483648,
+c14 = 0,
+c15 = 0000000000,
+c16 = -9223372036854775808,
+c17 = 0,
+c18 = 00000000000000000000,
+c19 = -3.402823466E+38,
+c20 = 1.175494351E-38,
+c21 = 000000000000,
+c22 = -1.7976931348623E+308,
+c23 = 2.2250738585072E-308,
+c24 = 0000000000000000000000,
+c25 = -9999999999,
+c26 = 0,
+c27 = 0000000000,
+#
+c28 = '1000-01-01',
+c29 = '1000-01-01 00:00:00',
+c30 = '1970-01-02 00:00:01',
+c31 = '-838:59:59',
+c32 = '1901',
+#
+c33 = '',
+c34 = '',
+c35 = '',
+c36 = '',
+c37 = '',
+c38 = '',
+c39 = '',
+c40 = '',
+c41 = '',
+c42 = '',
+c43 = '',
+c44 = '',
+#
+c45 = '',
+c46 = '',
+c47 = '',
+c48 = '',
+c49 = '',
+c50 = '',
+c51 = '',
+c52 = '',
+c53 = '',
+c54 = '',
+c55 = '',
+c56 = '',
+#
+c57 = '',
+c58 = '',
+c59 = '',
+c60 = '',
+#
+c61 = '',
+c62 = '',
+c63 = '',
+c64 = '',
+#
+c65 = '',
+c66 = '',
+c67 = '',
+c68 = '',
+c69 = '',
+c70 = '',
+c71 = '',
+c72 = '',
+c73 = '',
+c74 = '',
+c75 = '',
+c76 = '',
+#
+c77 = 'a',
+c78 = '',
+#
+crn = crn
+#
+WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 255 AND
+c05 = 255 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 65535 AND
+c09 = 65535 AND
+c10 = 8388607 AND
+c11 = 16777215 AND
+c12 = 16777215 AND
+c13 = 2147483647 AND
+c14 = 4294967295 AND
+c15 = 4294967295 AND
+c16 = 9223372036854775807 AND
+c17 = 18446744073709551615 AND
+c18 = 18446744073709551615 AND
+c19 > 3.402823465E+38 AND
+c20 > 3.402823465E+38 AND
+c21 > 3.402823465E+38 AND
+c22 > 1.7976931348622E+308 AND
+c23 > 1.7976931348622E+308 AND
+c24 > 1.7976931348622E+308 AND
+c25 = 9999999999 AND
+c26 = 9999999999 AND
+c27 = 9999999999 AND
+#
+c28 = '9999-12-31' AND
+c29 = '9999-12-31 23:59:59' AND
+c30 = '2038-01-08 03:14:07' AND
+c31 = '838:59:59' AND
+c32 = '2155' AND
+#
+c33 = x'ff' AND
+c34 = '' AND
+c35 = x'ff' AND
+c36 = REPEAT(x'ff',255) AND
+c37 = _utf8 x'efbfbf' AND
+c38 = '' AND
+c39 = _utf8 x'efbfbf' AND
+c40 = REPEAT(_utf8 x'efbfbf',255) AND
+c41 = _ucs2 x'ffff' AND
+c42 = '' AND
+c43 = _ucs2 x'ffff' AND
+c44 = REPEAT(_ucs2 x'ffff',255) AND
+#
+c45 = '' AND
+c46 = x'ff' AND
+c47 = REPEAT(x'ff',255) AND
+c48 = REPEAT(x'ff',261) AND
+c49 = '' AND
+c50 = _utf8 x'efbfbf' AND
+c51 = REPEAT(_utf8 x'efbfbf',255) AND
+c52 = REPEAT(_utf8 x'efbfbf',261) AND
+c53 = '' AND
+c54 = _ucs2 x'ffff' AND
+c55 = REPEAT(_ucs2 x'ffff',255) AND
+c56 = REPEAT(_ucs2 x'ffff',261) AND
+#
+c57 = x'ff' AND
+c58 = '' AND
+c59 = x'ff' AND
+c60 = REPEAT(x'ff',255) AND
+#
+c61 = '' AND
+c62 = x'ff' AND
+c63 = REPEAT(x'ff',255) AND
+c64 = REPEAT(x'ff',261) AND
+#
+c65 = 'tinyblob' AND
+c66 = 'tinytext' AND
+c67 = 'tinytext-ucs2' AND
+c68 = 'blob' AND
+c69 = 'text' AND
+c70 = 'text-ucs2' AND
+c71 = 'mediumblob' AND
+c72 = 'mediumtext' AND
+c73 = 'mediumtext-ucs2' AND
+c74 = 'longblob' AND
+c75 = 'longtext' AND
+c76 = 'longtext-ucs2' AND
+#
+c77 = 'c' AND
+c78 = 'a,b,c' AND
+#
+crn = 2;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Update NULL values to arbitrary values.
+#
+UPDATE t1 SET
+c01 = b'1',
+c02 = b'1111111111111111111111111111111111111111111111111111111111111111',
+c03 = 127,
+c04 = 0,
+c05 = 001,
+c06 = true,
+c07 = 32767,
+c08 = 0,
+c09 = 00001,
+c10 = 8388607,
+c11 = 0,
+c12 = 00000001,
+c13 = 2147483647,
+c14 = 0,
+c15 = 0000000001,
+c16 = 9223372036854775807,
+c17 = 0,
+c18 = 00000000000000000001,
+c19 = -1.175494351E-38,
+c20 = 1.175494351E-38,
+c21 = 000000000000001,
+c22 = -2.2250738585072E-308,
+c23 = 2.2250738585072E-308,
+c24 = 00000000000000000000001,
+c25 = -9999999999,
+c26 = 9999999999,
+c27 = 0000000001,
+#
+c28 = '2008-08-04',
+c29 = '2008-08-04 16:18:06',
+c30 = '2008-08-04 16:18:24',
+c31 = '16:18:47',
+c32 = '2008',
+#
+c33 = 'a',
+c34 = '',
+c35 = 'e',
+c36 = REPEAT('i',255),
+c37 = _utf8 x'c3a4',
+c38 = '',
+c39 = _utf8 x'c3b6',
+c40 = REPEAT(_utf8 x'c3bc',255),
+c41 = _ucs2 x'00e4',
+c42 = '',
+c43 = _ucs2 x'00f6',
+c44 = REPEAT(_ucs2 x'00fc',255),
+#
+c45 = '',
+c46 = 'a',
+c47 = REPEAT('e',255),
+c48 = REPEAT('i',261),
+c49 = '',
+c50 = _utf8 x'c3a4',
+c51 = REPEAT(_utf8 x'c3b6',255),
+c52 = REPEAT(_utf8 x'c3bc',261),
+c53 = '',
+c54 = _ucs2 x'00e4',
+c55 = REPEAT(_ucs2 x'00f6',255),
+c56 = REPEAT(_ucs2 x'00fc',261),
+#
+c57 = '0',
+c58 = '',
+c59 = '1',
+c60 = REPEAT('1',255),
+#
+c61 = '',
+c62 = 'b',
+c63 = REPEAT('c',255),
+c64 = REPEAT('\'',261),
+ #
+ c65 = 'tinyblob',
+ c66 = 'tinytext',
+ c67 = 'tinytext-ucs2',
+ c68 = 'blob',
+ c69 = 'text',
+ c70 = 'text-ucs2',
+ c71 = 'mediumblob',
+ c72 = 'mediumtext',
+ c73 = 'mediumtext-ucs2',
+ c74 = 'longblob',
+ c75 = 'longtext',
+ c76 = 'longtext-ucs2',
+ #
+ c77 = 'b',
+ c78 = 'b,c',
+ #
+ crn = crn
+ #
+ WHERE
+ #
+ c01 IS NULL AND
+ c02 IS NULL AND
+ c03 IS NULL AND
+ c04 IS NULL AND
+ c05 IS NULL AND
+ c06 IS NULL AND
+ c07 IS NULL AND
+ c08 IS NULL AND
+ c09 IS NULL AND
+ c10 IS NULL AND
+ c11 IS NULL AND
+ c12 IS NULL AND
+ c13 IS NULL AND
+ c14 IS NULL AND
+ c15 IS NULL AND
+ c16 IS NULL AND
+ c17 IS NULL AND
+ c18 IS NULL AND
+ c19 IS NULL AND
+ c20 IS NULL AND
+ c21 IS NULL AND
+ c22 IS NULL AND
+ c23 IS NULL AND
+ c24 IS NULL AND
+ c25 IS NULL AND
+ c26 IS NULL AND
+ c27 IS NULL AND
+ #
+ c28 IS NULL AND
+ c29 IS NULL AND
+ # this got a timestamp instead of NULL: c30 IS NULL AND
+ c31 IS NULL AND
+ c32 IS NULL AND
+ #
+ c33 IS NULL AND
+ c34 IS NULL AND
+ c35 IS NULL AND
+ c36 IS NULL AND
+ c37 IS NULL AND
+ c38 IS NULL AND
+ c39 IS NULL AND
+ c40 IS NULL AND
+ c41 IS NULL AND
+ c42 IS NULL AND
+ c43 IS NULL AND
+ c44 IS NULL AND
+ #
+ c45 IS NULL AND
+ c46 IS NULL AND
+ c47 IS NULL AND
+ c48 IS NULL AND
+ c49 IS NULL AND
+ c50 IS NULL AND
+ c51 IS NULL AND
+ c52 IS NULL AND
+ c53 IS NULL AND
+ c54 IS NULL AND
+ c55 IS NULL AND
+ c56 IS NULL AND
+ #
+ c57 IS NULL AND
+ c58 IS NULL AND
+ c59 IS NULL AND
+ c60 IS NULL AND
+ #
+ c61 IS NULL AND
+ c62 IS NULL AND
+ c63 IS NULL AND
+ c64 IS NULL AND
+ #
+ c65 IS NULL AND
+ c66 IS NULL AND
+ c67 IS NULL AND
+ c68 IS NULL AND
+ c69 IS NULL AND
+ c70 IS NULL AND
+ c71 IS NULL AND
+ c72 IS NULL AND
+ c73 IS NULL AND
+ c74 IS NULL AND
+ c75 IS NULL AND
+ c76 IS NULL AND
+ #
+ c77 IS NULL AND
+ c78 IS NULL AND
+ #
+ crn = 3;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Update arbitrary values to NULL values.
+#
+UPDATE t1 SET
+c01 = NULL,
+c02 = NULL,
+c03 = NULL,
+c04 = NULL,
+c05 = NULL,
+c06 = NULL,
+c07 = NULL,
+c08 = NULL,
+c09 = NULL,
+c10 = NULL,
+c11 = NULL,
+c12 = NULL,
+c13 = NULL,
+c14 = NULL,
+c15 = NULL,
+c16 = NULL,
+c17 = NULL,
+c18 = NULL,
+c19 = NULL,
+c20 = NULL,
+c21 = NULL,
+c22 = NULL,
+c23 = NULL,
+c24 = NULL,
+c25 = NULL,
+c26 = NULL,
+c27 = NULL,
+#
+c28 = NULL,
+c29 = NULL,
+c30 = NULL,
+c31 = NULL,
+c32 = NULL,
+#
+c33 = NULL,
+c34 = NULL,
+c35 = NULL,
+c36 = NULL,
+c37 = NULL,
+c38 = NULL,
+c39 = NULL,
+c40 = NULL,
+c41 = NULL,
+c42 = NULL,
+c43 = NULL,
+c44 = NULL,
+#
+c45 = NULL,
+c46 = NULL,
+c47 = NULL,
+c48 = NULL,
+c49 = NULL,
+c50 = NULL,
+c51 = NULL,
+c52 = NULL,
+c53 = NULL,
+c54 = NULL,
+c55 = NULL,
+c56 = NULL,
+#
+c57 = NULL,
+c58 = NULL,
+c59 = NULL,
+c60 = NULL,
+#
+c61 = NULL,
+c62 = NULL,
+c63 = NULL,
+c64 = NULL,
+#
+c65 = NULL,
+c66 = NULL,
+c67 = NULL,
+c68 = NULL,
+c69 = NULL,
+c70 = NULL,
+c71 = NULL,
+c72 = NULL,
+c73 = NULL,
+c74 = NULL,
+c75 = NULL,
+c76 = NULL,
+#
+c77 = NULL,
+c78 = NULL,
+#
+crn = crn
+#
+WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 0 AND
+c05 = 001 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 0 AND
+c09 = 00001 AND
+c10 = 8388607 AND
+c11 = 0 AND
+c12 = 00000001 AND
+c13 = 2147483647 AND
+c14 = 0 AND
+c15 = 0000000001 AND
+c16 = 9223372036854775807 AND
+c17 = 0 AND
+c18 = 00000000000000000001 AND
+c19 > -1.175494352E-38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000001 AND
+c22 > -2.2250738585073E-308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 00000000000000000000001 AND
+c25 = -9999999999 AND
+c26 = 9999999999 AND
+c27 = 0000000001 AND
+#
+c28 = '2008-08-04' AND
+c29 = '2008-08-04 16:18:06' AND
+c30 = '2008-08-04 16:18:24' AND
+c31 = '16:18:47' AND
+c32 = '2008' AND
+#
+c33 = 'a' AND
+c34 = '' AND
+c35 = 'e' AND
+c36 = REPEAT('i',255) AND
+c37 = _utf8 x'c3a4' AND
+c38 = '' AND
+c39 = _utf8 x'c3b6' AND
+c40 = REPEAT(_utf8 x'c3bc',255) AND
+c41 = _ucs2 x'00e4' AND
+c42 = '' AND
+c43 = _ucs2 x'00f6' AND
+c44 = REPEAT(_ucs2 x'00fc',255) AND
+#
+c45 = '' AND
+c46 = 'a' AND
+c47 = REPEAT('e',255) AND
+c48 = REPEAT('i',261) AND
+c49 = '' AND
+c50 = _utf8 x'c3a4' AND
+c51 = REPEAT(_utf8 x'c3b6',255) AND
+c52 = REPEAT(_utf8 x'c3bc',261) AND
+c53 = '' AND
+c54 = _ucs2 x'00e4' AND
+c55 = REPEAT(_ucs2 x'00f6',255) AND
+c56 = REPEAT(_ucs2 x'00fc',261) AND
+#
+c57 = '0' AND
+c58 = '' AND
+c59 = '1' AND
+c60 = REPEAT('1',255) AND
+#
+c61 = '' AND
+c62 = 'b' AND
+c63 = REPEAT('c',255) AND
+c64 = REPEAT('\'',261) AND
+ #
+ c65 = 'tinyblob' AND
+ c66 = 'tinytext' AND
+ c67 = 'tinytext-ucs2' AND
+ c68 = 'blob' AND
+ c69 = 'text' AND
+ c70 = 'text-ucs2' AND
+ c71 = 'mediumblob' AND
+ c72 = 'mediumtext' AND
+ c73 = 'mediumtext-ucs2' AND
+ c74 = 'longblob' AND
+ c75 = 'longtext' AND
+ c76 = 'longtext-ucs2' AND
+ #
+ c77 = 'b' AND
+ c78 = 'b,c' AND
+ #
+ crn = 4;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+#
+# Show what we have in the table.
+# Do not display bit type output. It's binary and confuses diff.
+# Also BINARY with nul-bytes should be avoided.
+#
+SELECT * FROM t1;
+c01 #
+c02 #
+c03 127
+c04 255
+c05 255
+c06 1
+c07 32767
+c08 65535
+c09 65535
+c10 8388607
+c11 16777215
+c12 16777215
+c13 2147483647
+c14 4294967295
+c15 4294967295
+c16 9223372036854775807
+c17 18446744073709551615
+c18 18446744073709551615
+c19 3.40282e+38
+c20 3.40282e+38
+c21 03.40282e+38
+c22 1.7976931348623e+308
+c23 1.7976931348623e+308
+c24 001.7976931348623e+308
+c25 9999999999
+c26 9999999999
+c27 9999999999
+c28 9999-12-31
+c29 9999-12-31 23:59:59
+c30 2038-01-08 03:14:07
+c31 838:59:59
+c32 2155
+c33 ÿ
+c34
+c35 ÿ
+c36 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c37 ￿
+c38
+c39 ￿
+c40 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c41 ￿
+c42
+c43 ￿
+c44 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c45
+c46 ÿ
+c47 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c48 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+c49
+c50 ￿
+c51 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c52 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c53
+c54 ￿
+c55 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c56 ￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 c
+c78 a,b,c
+crn 1
+c01 #
+c02 #
+c03 -128
+c04 0
+c05 000
+c06 0
+c07 -32768
+c08 0
+c09 00000
+c10 -8388608
+c11 0
+c12 00000000
+c13 -2147483648
+c14 0
+c15 0000000000
+c16 -9223372036854775808
+c17 0
+c18 00000000000000000000
+c19 -3.40282e+38
+c20 1.17549e-38
+c21 000000000000
+c22 -1.7976931348623e+308
+c23 2.2250738585072e-308
+c24 0000000000000000000000
+c25 -9999999999
+c26 0
+c27 0000000000
+c28 1000-01-01
+c29 1000-01-01 00:00:00
+c30 1970-01-02 00:00:01
+c31 -838:59:59
+c32 1901
+c33
+c34
+c35
+c36
+c37
+c38
+c39
+c40
+c41
+c42
+c43
+c44
+c45
+c46
+c47
+c48
+c49
+c50
+c51
+c52
+c53
+c54
+c55
+c56
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62
+c63
+c64
+c65
+c66
+c67
+c68
+c69
+c70
+c71
+c72
+c73
+c74
+c75
+c76
+c77 a
+c78
+crn 2
+c01 #
+c02 #
+c03 127
+c04 0
+c05 001
+c06 1
+c07 32767
+c08 0
+c09 00001
+c10 8388607
+c11 0
+c12 00000001
+c13 2147483647
+c14 0
+c15 0000000001
+c16 9223372036854775807
+c17 0
+c18 00000000000000000001
+c19 -1.17549e-38
+c20 1.17549e-38
+c21 000000000001
+c22 -2.2250738585072e-308
+c23 2.2250738585072e-308
+c24 0000000000000000000001
+c25 -9999999999
+c26 9999999999
+c27 0000000001
+c28 2008-08-04
+c29 2008-08-04 16:18:06
+c30 2008-08-04 16:18:24
+c31 16:18:47
+c32 2008
+c33 a
+c34
+c35 e
+c36 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c37 ä
+c38
+c39 ö
+c40 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c41 ä
+c42
+c43 ö
+c44 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c45
+c46 a
+c47 eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+c48 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
+c49
+c50 ä
+c51 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c52 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c53
+c54 ä
+c55 ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö
+c56 üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü
+c57 #
+c58 #
+c59 #
+c60 #
+c61
+c62 b
+c63 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
+c64 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+c65 tinyblob
+c66 tinytext
+c67 tinytext-ucs2
+c68 blob
+c69 text
+c70 text-ucs2
+c71 mediumblob
+c72 mediumtext
+c73 mediumtext-ucs2
+c74 longblob
+c75 longtext
+c76 longtext-ucs2
+c77 b
+c78 b,c
+crn 3
+c01 #
+c02 #
+c03 NULL
+c04 NULL
+c05 NULL
+c06 NULL
+c07 NULL
+c08 NULL
+c09 NULL
+c10 NULL
+c11 NULL
+c12 NULL
+c13 NULL
+c14 NULL
+c15 NULL
+c16 NULL
+c17 NULL
+c18 NULL
+c19 NULL
+c20 NULL
+c21 NULL
+c22 NULL
+c23 NULL
+c24 NULL
+c25 NULL
+c26 NULL
+c27 NULL
+c28 NULL
+c29 NULL
+c30 2001-09-09 04:46:40
+c31 NULL
+c32 NULL
+c33 NULL
+c34 NULL
+c35 NULL
+c36 NULL
+c37 NULL
+c38 NULL
+c39 NULL
+c40 NULL
+c41 NULL
+c42 NULL
+c43 NULL
+c44 NULL
+c45 NULL
+c46 NULL
+c47 NULL
+c48 NULL
+c49 NULL
+c50 NULL
+c51 NULL
+c52 NULL
+c53 NULL
+c54 NULL
+c55 NULL
+c56 NULL
+c57 #
+c58 #
+c59 #
+c60 #
+c61 NULL
+c62 NULL
+c63 NULL
+c64 NULL
+c65 NULL
+c66 NULL
+c67 NULL
+c68 NULL
+c69 NULL
+c70 NULL
+c71 NULL
+c72 NULL
+c73 NULL
+c74 NULL
+c75 NULL
+c76 NULL
+c77 NULL
+c78 NULL
+crn 4
+affected rows: 4
+#
+# Delete the row that has max values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 255 AND
+c05 = 255 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 65535 AND
+c09 = 65535 AND
+c10 = 8388607 AND
+c11 = 16777215 AND
+c12 = 16777215 AND
+c13 = 2147483647 AND
+c14 = 4294967295 AND
+c15 = 4294967295 AND
+c16 = 9223372036854775807 AND
+c17 = 18446744073709551615 AND
+c18 = 18446744073709551615 AND
+c19 > 3.402823465E+38 AND
+c20 > 3.402823465E+38 AND
+c21 > 3.402823465E+38 AND
+c22 > 1.7976931348622E+308 AND
+c23 > 1.7976931348622E+308 AND
+c24 > 1.7976931348622E+308 AND
+c25 = 9999999999 AND
+c26 = 9999999999 AND
+c27 = 9999999999 AND
+#
+c28 = '9999-12-31' AND
+c29 = '9999-12-31 23:59:59' AND
+c30 = '2038-01-08 03:14:07' AND
+c31 = '838:59:59' AND
+c32 = '2155' AND
+#
+c33 = x'ff' AND
+c34 = '' AND
+c35 = x'ff' AND
+c36 = REPEAT(x'ff',255) AND
+c37 = _utf8 x'efbfbf' AND
+c38 = '' AND
+c39 = _utf8 x'efbfbf' AND
+c40 = REPEAT(_utf8 x'efbfbf',255) AND
+c41 = _ucs2 x'ffff' AND
+c42 = '' AND
+c43 = _ucs2 x'ffff' AND
+c44 = REPEAT(_ucs2 x'ffff',255) AND
+#
+c45 = '' AND
+c46 = x'ff' AND
+c47 = REPEAT(x'ff',255) AND
+c48 = REPEAT(x'ff',261) AND
+c49 = '' AND
+c50 = _utf8 x'efbfbf' AND
+c51 = REPEAT(_utf8 x'efbfbf',255) AND
+c52 = REPEAT(_utf8 x'efbfbf',261) AND
+c53 = '' AND
+c54 = _ucs2 x'ffff' AND
+c55 = REPEAT(_ucs2 x'ffff',255) AND
+c56 = REPEAT(_ucs2 x'ffff',261) AND
+#
+c57 = x'ff' AND
+c58 = '' AND
+c59 = x'ff' AND
+c60 = REPEAT(x'ff',255) AND
+#
+c61 = '' AND
+c62 = x'ff' AND
+c63 = REPEAT(x'ff',255) AND
+c64 = REPEAT(x'ff',261) AND
+#
+c65 = 'tinyblob' AND
+c66 = 'tinytext' AND
+c67 = 'tinytext-ucs2' AND
+c68 = 'blob' AND
+c69 = 'text' AND
+c70 = 'text-ucs2' AND
+c71 = 'mediumblob' AND
+c72 = 'mediumtext' AND
+c73 = 'mediumtext-ucs2' AND
+c74 = 'longblob' AND
+c75 = 'longtext' AND
+c76 = 'longtext-ucs2' AND
+#
+c77 = 'c' AND
+c78 = 'a,b,c' AND
+#
+crn = 1;
+affected rows: 1
+#
+# Delete the row that has min values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 = b'0' AND
+c02 = b'0000000000000000000000000000000000000000000000000000000000000000' AND
+c03 = -128 AND
+c04 = 0 AND
+c05 = 000 AND
+c06 = false AND
+c07 = -32768 AND
+c08 = 0 AND
+c09 = 00000 AND
+c10 = -8388608 AND
+c11 = 0 AND
+c12 = 00000000 AND
+c13 = -2147483648 AND
+c14 = 0 AND
+c15 = 0000000000 AND
+c16 = -9223372036854775808 AND
+c17 = 0 AND
+c18 = 00000000000000000000 AND
+c19 < -3.402823465E+38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000 AND
+c22 < -1.7976931348622E+308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 0000000000000000000000 AND
+c25 = -9999999999 AND
+c26 = 0 AND
+c27 = 0000000000 AND
+#
+c28 = '1000-01-01' AND
+c29 = '1000-01-01 00:00:00' AND
+c30 = '1970-01-02 00:00:01' AND
+c31 = '-838:59:59' AND
+c32 = '1901' AND
+#
+c33 = '' AND
+c34 = '' AND
+c35 = '' AND
+c36 = '' AND
+c37 = '' AND
+c38 = '' AND
+c39 = '' AND
+c40 = '' AND
+c41 = '' AND
+c42 = '' AND
+c43 = '' AND
+c44 = '' AND
+#
+c45 = '' AND
+c46 = '' AND
+c47 = '' AND
+c48 = '' AND
+c49 = '' AND
+c50 = '' AND
+c51 = '' AND
+c52 = '' AND
+c53 = '' AND
+c54 = '' AND
+c55 = '' AND
+c56 = '' AND
+#
+# this does not reproduce the inserted value: c57 = '' AND
+c58 = '' AND
+# this does not reproduce the inserted value: c59 = '' AND
+# this does not reproduce the inserted value: c60 = '' AND
+#
+c61 = '' AND
+c62 = '' AND
+c63 = '' AND
+c64 = '' AND
+#
+c65 = '' AND
+c66 = '' AND
+c67 = '' AND
+c68 = '' AND
+c69 = '' AND
+c70 = '' AND
+c71 = '' AND
+c72 = '' AND
+c73 = '' AND
+c74 = '' AND
+c75 = '' AND
+c76 = '' AND
+#
+c77 = 'a' AND
+c78 = '' AND
+#
+crn = 2;
+affected rows: 1
+#
+# Delete the row that has arbitrary values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 = b'1' AND
+# the below does not reproduce the inserted value:
+#c02 = b'1111111111111111111111111111111111111111111111111111111111111111' AND
+c03 = 127 AND
+c04 = 0 AND
+c05 = 001 AND
+c06 = true AND
+c07 = 32767 AND
+c08 = 0 AND
+c09 = 00001 AND
+c10 = 8388607 AND
+c11 = 0 AND
+c12 = 00000001 AND
+c13 = 2147483647 AND
+c14 = 0 AND
+c15 = 0000000001 AND
+c16 = 9223372036854775807 AND
+c17 = 0 AND
+c18 = 00000000000000000001 AND
+c19 > -1.175494352E-38 AND
+c20 < 1.175494352E-38 AND
+c21 = 000000000000001 AND
+c22 > -2.2250738585073E-308 AND
+c23 < 2.2250738585073E-308 AND
+c24 = 00000000000000000000001 AND
+c25 = -9999999999 AND
+c26 = 9999999999 AND
+c27 = 0000000001 AND
+#
+c28 = '2008-08-04' AND
+c29 = '2008-08-04 16:18:06' AND
+c30 = '2008-08-04 16:18:24' AND
+c31 = '16:18:47' AND
+c32 = '2008' AND
+#
+c33 = 'a' AND
+c34 = '' AND
+c35 = 'e' AND
+c36 = REPEAT('i',255) AND
+c37 = _utf8 x'c3a4' AND
+c38 = '' AND
+c39 = _utf8 x'c3b6' AND
+c40 = REPEAT(_utf8 x'c3bc',255) AND
+c41 = _ucs2 x'00e4' AND
+c42 = '' AND
+c43 = _ucs2 x'00f6' AND
+c44 = REPEAT(_ucs2 x'00fc',255) AND
+#
+c45 = '' AND
+c46 = 'a' AND
+c47 = REPEAT('e',255) AND
+c48 = REPEAT('i',261) AND
+c49 = '' AND
+c50 = _utf8 x'c3a4' AND
+c51 = REPEAT(_utf8 x'c3b6',255) AND
+c52 = REPEAT(_utf8 x'c3bc',261) AND
+c53 = '' AND
+c54 = _ucs2 x'00e4' AND
+c55 = REPEAT(_ucs2 x'00f6',255) AND
+c56 = REPEAT(_ucs2 x'00fc',261) AND
+#
+c57 = '0' AND
+c58 = '' AND
+c59 = '1' AND
+c60 = REPEAT('1',255) AND
+#
+c61 = '' AND
+c62 = 'b' AND
+c63 = REPEAT('c',255) AND
+c64 = REPEAT('\'',261) AND
+ #
+ c65 = 'tinyblob' AND
+ c66 = 'tinytext' AND
+ c67 = 'tinytext-ucs2' AND
+ c68 = 'blob' AND
+ c69 = 'text' AND
+ c70 = 'text-ucs2' AND
+ c71 = 'mediumblob' AND
+ c72 = 'mediumtext' AND
+ c73 = 'mediumtext-ucs2' AND
+ c74 = 'longblob' AND
+ c75 = 'longtext' AND
+ c76 = 'longtext-ucs2' AND
+ #
+ c77 = 'b' AND
+ c78 = 'b,c' AND
+ #
+ crn = 3;
+affected rows: 1
+#
+# Delete the row that has NULL values now.
+#
+DELETE FROM t1 WHERE
+#
+c01 IS NULL AND
+c02 IS NULL AND
+c03 IS NULL AND
+c04 IS NULL AND
+c05 IS NULL AND
+c06 IS NULL AND
+c07 IS NULL AND
+c08 IS NULL AND
+c09 IS NULL AND
+c10 IS NULL AND
+c11 IS NULL AND
+c12 IS NULL AND
+c13 IS NULL AND
+c14 IS NULL AND
+c15 IS NULL AND
+c16 IS NULL AND
+c17 IS NULL AND
+c18 IS NULL AND
+c19 IS NULL AND
+c20 IS NULL AND
+c21 IS NULL AND
+c22 IS NULL AND
+c23 IS NULL AND
+c24 IS NULL AND
+c25 IS NULL AND
+c26 IS NULL AND
+c27 IS NULL AND
+#
+c28 IS NULL AND
+c29 IS NULL AND
+# this got a timestamp instead of NULL: c30 IS NULL AND
+c31 IS NULL AND
+c32 IS NULL AND
+#
+c33 IS NULL AND
+c34 IS NULL AND
+c35 IS NULL AND
+c36 IS NULL AND
+c37 IS NULL AND
+c38 IS NULL AND
+c39 IS NULL AND
+c40 IS NULL AND
+c41 IS NULL AND
+c42 IS NULL AND
+c43 IS NULL AND
+c44 IS NULL AND
+#
+c45 IS NULL AND
+c46 IS NULL AND
+c47 IS NULL AND
+c48 IS NULL AND
+c49 IS NULL AND
+c50 IS NULL AND
+c51 IS NULL AND
+c52 IS NULL AND
+c53 IS NULL AND
+c54 IS NULL AND
+c55 IS NULL AND
+c56 IS NULL AND
+#
+c57 IS NULL AND
+c58 IS NULL AND
+c59 IS NULL AND
+c60 IS NULL AND
+#
+c61 IS NULL AND
+c62 IS NULL AND
+c63 IS NULL AND
+c64 IS NULL AND
+#
+c65 IS NULL AND
+c66 IS NULL AND
+c67 IS NULL AND
+c68 IS NULL AND
+c69 IS NULL AND
+c70 IS NULL AND
+c71 IS NULL AND
+c72 IS NULL AND
+c73 IS NULL AND
+c74 IS NULL AND
+c75 IS NULL AND
+c76 IS NULL AND
+#
+c77 IS NULL AND
+c78 IS NULL AND
+#
+crn = 4;
+affected rows: 1
+#
+# Show what we have in the table. Should be empty now.
+#
+SELECT * FROM t1;
+affected rows: 0
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c01 BIT,
+c02 BIT(64),
+c03 TINYINT,
+c04 TINYINT UNSIGNED,
+c05 TINYINT ZEROFILL,
+c06 BOOL,
+c07 SMALLINT,
+c08 SMALLINT UNSIGNED,
+c09 SMALLINT ZEROFILL,
+c10 MEDIUMINT,
+c11 MEDIUMINT UNSIGNED,
+c12 MEDIUMINT ZEROFILL,
+c13 INT,
+c14 INT UNSIGNED,
+c15 INT ZEROFILL,
+c16 BIGINT,
+c17 BIGINT UNSIGNED,
+c18 BIGINT ZEROFILL,
+c19 FLOAT,
+c20 FLOAT UNSIGNED,
+c21 FLOAT ZEROFILL,
+c22 DOUBLE,
+c23 DOUBLE UNSIGNED,
+c24 DOUBLE ZEROFILL,
+c25 DECIMAL,
+c26 DECIMAL UNSIGNED,
+c27 DECIMAL ZEROFILL,
+#
+c28 DATE,
+c29 DATETIME,
+c30 TIMESTAMP,
+c31 TIME,
+c32 YEAR,
+#
+c33 CHAR,
+c34 CHAR(0),
+c35 CHAR(1),
+c36 CHAR(255),
+c37 NATIONAL CHAR,
+c38 NATIONAL CHAR(0),
+c39 NATIONAL CHAR(1),
+c40 NATIONAL CHAR(255),
+c41 CHAR CHARACTER SET UCS2,
+c42 CHAR(0) CHARACTER SET UCS2,
+c43 CHAR(1) CHARACTER SET UCS2,
+c44 CHAR(255) CHARACTER SET UCS2,
+#
+c45 VARCHAR(0),
+c46 VARCHAR(1),
+c47 VARCHAR(255),
+c48 VARCHAR(261),
+c49 NATIONAL VARCHAR(0),
+c50 NATIONAL VARCHAR(1),
+c51 NATIONAL VARCHAR(255),
+c52 NATIONAL VARCHAR(261),
+c53 VARCHAR(0) CHARACTER SET UCS2,
+c54 VARCHAR(1) CHARACTER SET UCS2,
+c55 VARCHAR(255) CHARACTER SET UCS2,
+c56 VARCHAR(261) CHARACTER SET UCS2,
+#
+c57 BINARY,
+c58 BINARY(0),
+c59 BINARY(1),
+c60 BINARY(255),
+#
+c61 VARBINARY(0),
+c62 VARBINARY(1),
+c63 VARBINARY(255),
+c64 VARBINARY(261),
+#
+c65 TINYBLOB,
+c66 TINYTEXT,
+c67 TINYTEXT CHARACTER SET UCS2,
+c68 BLOB,
+c69 TEXT,
+c70 TEXT CHARACTER SET UCS2,
+c71 MEDIUMBLOB,
+c72 MEDIUMTEXT,
+c73 MEDIUMTEXT CHARACTER SET UCS2,
+c74 LONGBLOB,
+c75 LONGTEXT,
+c76 LONGTEXT CHARACTER SET UCS2,
+#
+c77 ENUM('a','b','c'),
+c78 SET('a','b','c'),
+#
+crn INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.time_zone='SYSTEM'/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'0' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=NULL /* type=16 meta=1 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'0' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=b'0' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=NULL /* type=16 meta=1 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1=NULL /* type=16 meta=1 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=-1 (255) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=-1 (65535) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=-1 (16777215) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @15=-1 (4294967295) /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=-1 (18446744073709551615) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='9999:12:31' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=9999-12-31 23:59:59 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=2146522447 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='838:59:59' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2155 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='￿' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='￿' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿￿' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=3 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000111' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=1 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'0' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'0000000000000000000000000000000000000000000000000000000000000000' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=-128 (128) /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=-32768 (32768) /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=-8388608 (8388608) /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=-2147483648 (2147483648) /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=0 /* INT meta=0 nullable=1 is_null=0 */
+### @16=-9223372036854775808 (9223372036854775808) /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-3.402... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=0 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-1.797... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=0 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000000 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='1000:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=1000-01-01 00:00:00 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=75601 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='839:12:57' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=1901 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64='' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=1 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000000' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=2 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=b'1' /* BIT(1) meta=1 nullable=1 is_null=0 */
+### @2=b'1111111111111111111111111111111111111111111111111111111111111111' /* BIT(64) meta=2048 nullable=1 is_null=0 */
+### @3=127 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @4=0 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @5=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @6=1 /* TINYINT meta=0 nullable=1 is_null=0 */
+### @7=32767 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @8=0 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @9=1 /* SHORTINT meta=0 nullable=1 is_null=0 */
+### @10=8388607 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @11=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @12=1 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
+### @13=2147483647 /* INT meta=0 nullable=1 is_null=0 */
+### @14=0 /* INT meta=0 nullable=1 is_null=0 */
+### @15=1 /* INT meta=0 nullable=1 is_null=0 */
+### @16=9223372036854775807 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @17=0 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @18=1 /* LONGINT meta=0 nullable=1 is_null=0 */
+### @19=-1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @20=1.175... /* FLOAT meta=4 nullable=1 is_null=0 */
+### @21=1 /* FLOAT meta=4 nullable=1 is_null=0 */
+### @22=-2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @23=2.225... /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @24=1 /* DOUBLE meta=8 nullable=1 is_null=0 */
+### @25=-000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @26=000000009.999999999 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @27=000000001 /* DECIMAL(10,0) meta=2560 nullable=1 is_null=0 */
+### @28='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @29=2008-08-04 16:18:06 /* DATETIME meta=0 nullable=1 is_null=0 */
+### @30=1217855904 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31='16:18:47' /* TIME meta=0 nullable=1 is_null=0 */
+### @32=2008 /* YEAR meta=0 nullable=1 is_null=0 */
+### @33='a' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @34='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @35='e' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @36='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @37='ä' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @39='ö' /* STRING(3) meta=65027 nullable=1 is_null=0 */
+### @40='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* STRING(765) meta=57085 nullable=1 is_null=0 */
+### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @46='a' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @47='eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @48='iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @49='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @50='ä' /* VARSTRING(3) meta=3 nullable=1 is_null=0 */
+### @51='ööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö' /* VARSTRING(765) meta=765 nullable=1 is_null=0 */
+### @52='üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü' /* VARSTRING(783) meta=783 nullable=1 is_null=0 */
+### @53='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @54='\x00' /* VARSTRING(2) meta=2 nullable=1 is_null=0 */
+### @55='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(510) meta=510 nullable=1 is_null=0 */
+### @56='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' /* VARSTRING(522) meta=522 nullable=1 is_null=0 */
+### @57='0' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @58='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
+### @59='1' /* STRING(1) meta=65025 nullable=1 is_null=0 */
+### @60='111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' /* STRING(255) meta=65279 nullable=1 is_null=0 */
+### @61='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
+### @62='b' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
+### @63='ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @64=''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /* VARSTRING(261) meta=261 nullable=1 is_null=0 */
+### @65='tinyblob' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @66='tinytext' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @67='\x00t\x00i\x00n\x00y\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* TINYBLOB/TINYTEXT meta=1 nullable=1 is_null=0 */
+### @68='blob' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @69='text' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @70='\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* BLOB/TEXT meta=2 nullable=1 is_null=0 */
+### @71='mediumblob' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @72='mediumtext' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @73='\x00m\x00e\x00d\x00i\x00u\x00m\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* MEDIUMBLOB/MEDIUMTEXT meta=3 nullable=1 is_null=0 */
+### @74='longblob' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @75='longtext' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @76='\x00l\x00o\x00n\x00g\x00t\x00e\x00x\x00t\x00-\x00u\x00c\x00s\x002' /* LONGBLOB/LONGTEXT meta=4 nullable=1 is_null=0 */
+### @77=2 /* ENUM(1 byte) meta=63233 nullable=1 is_null=0 */
+### @78=b'00000110' /* SET(1 bytes) meta=63489 nullable=1 is_null=0 */
+### @79=3 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=NULL /* type=16 meta=1 nullable=1 is_null=1 */
+### @2=NULL /* type=16 meta=2048 nullable=1 is_null=1 */
+### @3=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @4=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @5=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @6=NULL /* type=1 meta=0 nullable=1 is_null=1 */
+### @7=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @8=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @9=NULL /* type=2 meta=0 nullable=1 is_null=1 */
+### @10=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @11=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @12=NULL /* type=9 meta=0 nullable=1 is_null=1 */
+### @13=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @14=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @15=NULL /* type=3 meta=0 nullable=1 is_null=1 */
+### @16=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @17=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @18=NULL /* type=8 meta=0 nullable=1 is_null=1 */
+### @19=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @20=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @21=NULL /* type=4 meta=4 nullable=1 is_null=1 */
+### @22=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @23=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @24=NULL /* type=5 meta=8 nullable=1 is_null=1 */
+### @25=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @26=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @27=NULL /* type=246 meta=2560 nullable=1 is_null=1 */
+### @28=NULL /* type=10 meta=0 nullable=1 is_null=1 */
+### @29=NULL /* type=12 meta=0 nullable=1 is_null=1 */
+### @30=1000000000 /* TIMESTAMP meta=0 nullable=0 is_null=0 */
+### @31=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @32=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @33=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @34=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @35=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @36=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @37=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @38=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @39=NULL /* TIMESTAMP meta=65027 nullable=1 is_null=1 */
+### @40=NULL /* TIMESTAMP meta=57085 nullable=1 is_null=1 */
+### @41=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @42=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @43=NULL /* TIMESTAMP meta=65026 nullable=1 is_null=1 */
+### @44=NULL /* TIMESTAMP meta=61182 nullable=1 is_null=1 */
+### @45=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @46=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @47=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @48=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @49=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @50=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @51=NULL /* TIMESTAMP meta=765 nullable=1 is_null=1 */
+### @52=NULL /* TIMESTAMP meta=783 nullable=1 is_null=1 */
+### @53=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @54=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @55=NULL /* TIMESTAMP meta=510 nullable=1 is_null=1 */
+### @56=NULL /* TIMESTAMP meta=522 nullable=1 is_null=1 */
+### @57=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @58=NULL /* TIMESTAMP meta=65024 nullable=1 is_null=1 */
+### @59=NULL /* TIMESTAMP meta=65025 nullable=1 is_null=1 */
+### @60=NULL /* TIMESTAMP meta=65279 nullable=1 is_null=1 */
+### @61=NULL /* TIMESTAMP meta=0 nullable=1 is_null=1 */
+### @62=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @63=NULL /* TIMESTAMP meta=255 nullable=1 is_null=1 */
+### @64=NULL /* TIMESTAMP meta=261 nullable=1 is_null=1 */
+### @65=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @66=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @67=NULL /* TIMESTAMP meta=1 nullable=1 is_null=1 */
+### @68=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @69=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @70=NULL /* TIMESTAMP meta=2 nullable=1 is_null=1 */
+### @71=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @72=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @73=NULL /* TIMESTAMP meta=3 nullable=1 is_null=1 */
+### @74=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @75=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @76=NULL /* TIMESTAMP meta=4 nullable=1 is_null=1 */
+### @77=NULL /* TIMESTAMP meta=63233 nullable=1 is_null=1 */
+### @78=NULL /* TIMESTAMP meta=63489 nullable=1 is_null=1 */
+### @79=4 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1;
+#
+# =========================================
+# Test #2 - Multi-row insert/update/delete.
+# =========================================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table with selected data types.
+#
+CREATE TABLE t1 (
+c28 DATE,
+c47 VARCHAR(24),
+crn INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Multi-row insert.
+#
+INSERT INTO t1 VALUES
+('2008-08-01','VARCHAR-01',1),
+('2008-08-02','VARCHAR-02',2),
+('2008-08-03','VARCHAR-03',3),
+('2008-08-04','VARCHAR-04',4),
+('2008-08-05','VARCHAR-05',5),
+('2008-08-06','VARCHAR-06',6),
+('2008-08-07','VARCHAR-07',7),
+('2008-08-08','VARCHAR-08',8),
+('2008-08-09','VARCHAR-09',9);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+#
+# Multi-row update.
+#
+UPDATE t1 SET c28 = ADDDATE(c28,10) WHERE crn < 8;
+affected rows: 7
+info: Rows matched: 7 Changed: 7 Warnings: 0
+#
+# Show what we have in the table.
+#
+SELECT * FROM t1;
+c28 c47 crn
+2008-08-11 VARCHAR-01 1
+2008-08-12 VARCHAR-02 2
+2008-08-13 VARCHAR-03 3
+2008-08-14 VARCHAR-04 4
+2008-08-15 VARCHAR-05 5
+2008-08-16 VARCHAR-06 6
+2008-08-17 VARCHAR-07 7
+2008-08-08 VARCHAR-08 8
+2008-08-09 VARCHAR-09 9
+affected rows: 9
+#
+# Multi-row delete.
+#
+DELETE FROM t1 WHERE crn < 8;
+affected rows: 7
+#
+# Show what we have in the table.
+#
+SELECT * FROM t1;
+c28 c47 crn
+2008-08-08 VARCHAR-08 8
+2008-08-09 VARCHAR-09 9
+affected rows: 2
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c28 DATE,
+c47 VARCHAR(24),
+crn INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-08' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=8 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:08:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-09' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=9 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:11' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:12' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:13' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:14' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:15' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:16' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:08:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2008:08:17' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:11' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=1 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:12' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:13' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:14' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-04' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:15' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-05' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:16' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-06' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2008:08:17' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-07' /* VARSTRING(24) meta=24 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1;
+#
+# ====================================
+# Test #3 - Multi-table update/delete.
+# ====================================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create test tables with selected data types.
+#
+CREATE TABLE t1 (
+c_1_1 DATE,
+c_1_2 VARCHAR(255),
+c_1_n INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+CREATE TABLE t2 (
+c_2_1 DATE,
+c_2_2 VARCHAR(255),
+c_2_n INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+CREATE TABLE t3 (
+c_3_1 DATE,
+c_3_2 VARCHAR(255),
+c_3_n INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Insert data.
+#
+INSERT INTO t1 VALUES
+('2008-01-01','VARCHAR-01-01',11),
+('2008-01-02','VARCHAR-01-02',2),
+('2008-01-03','VARCHAR-01-03',3),
+('2008-01-04','VARCHAR-01-04',4),
+('2008-01-05','VARCHAR-01-05',5),
+('2008-01-06','VARCHAR-01-06',6),
+('2008-01-07','VARCHAR-01-07',7),
+('2008-01-08','VARCHAR-01-08',18),
+('2008-01-09','VARCHAR-01-09',19);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+INSERT INTO t2 VALUES
+('2008-02-01','VARCHAR-02-01',21),
+('2008-02-02','VARCHAR-02-02',2),
+('2008-02-03','VARCHAR-02-03',3),
+('2008-02-04','VARCHAR-02-04',4),
+('2008-02-05','VARCHAR-02-05',5),
+('2008-02-06','VARCHAR-02-06',6),
+('2008-02-07','VARCHAR-02-07',7),
+('2008-02-08','VARCHAR-02-08',28),
+('2008-02-09','VARCHAR-02-09',29);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+INSERT INTO t3 VALUES
+('2008-03-01','VARCHAR-03-01',31),
+('2008-03-02','VARCHAR-03-02',2),
+('2008-03-03','VARCHAR-03-03',3),
+('2008-03-04','VARCHAR-03-04',4),
+('2008-03-05','VARCHAR-03-05',5),
+('2008-03-06','VARCHAR-03-06',6),
+('2008-03-07','VARCHAR-03-07',7),
+('2008-03-08','VARCHAR-03-08',38),
+('2008-03-09','VARCHAR-03-09',39);
+affected rows: 9
+info: Records: 9 Duplicates: 0 Warnings: 0
+#
+# Multi-table update.
+#
+UPDATE t1,t2,t3 SET
+c_1_1 = ADDDATE(c_1_1,INTERVAL 10 YEAR),
+c_2_1 = ADDDATE(c_2_1,INTERVAL 20 YEAR),
+c_3_1 = ADDDATE(c_3_1,INTERVAL 30 YEAR)
+WHERE c_1_n = c_2_n AND c_2_n = c_3_n;
+affected rows: 18
+info: Rows matched: 18 Changed: 18 Warnings: 0
+#
+# Show what we have in the tables.
+#
+SELECT * FROM t1;
+c_1_1 c_1_2 c_1_n
+2008-01-01 VARCHAR-01-01 11
+2018-01-02 VARCHAR-01-02 2
+2018-01-03 VARCHAR-01-03 3
+2018-01-04 VARCHAR-01-04 4
+2018-01-05 VARCHAR-01-05 5
+2018-01-06 VARCHAR-01-06 6
+2018-01-07 VARCHAR-01-07 7
+2008-01-08 VARCHAR-01-08 18
+2008-01-09 VARCHAR-01-09 19
+affected rows: 9
+SELECT * FROM t2;
+c_2_1 c_2_2 c_2_n
+2008-02-01 VARCHAR-02-01 21
+2028-02-02 VARCHAR-02-02 2
+2028-02-03 VARCHAR-02-03 3
+2028-02-04 VARCHAR-02-04 4
+2028-02-05 VARCHAR-02-05 5
+2028-02-06 VARCHAR-02-06 6
+2028-02-07 VARCHAR-02-07 7
+2008-02-08 VARCHAR-02-08 28
+2008-02-09 VARCHAR-02-09 29
+affected rows: 9
+SELECT * FROM t3;
+c_3_1 c_3_2 c_3_n
+2008-03-01 VARCHAR-03-01 31
+2038-03-02 VARCHAR-03-02 2
+2038-03-03 VARCHAR-03-03 3
+2038-03-04 VARCHAR-03-04 4
+2038-03-05 VARCHAR-03-05 5
+2038-03-06 VARCHAR-03-06 6
+2038-03-07 VARCHAR-03-07 7
+2008-03-08 VARCHAR-03-08 38
+2008-03-09 VARCHAR-03-09 39
+affected rows: 9
+#
+# Multi-table delete.
+#
+DELETE FROM t1,t2,t3 USING t1 INNER JOIN t2 INNER JOIN t3
+WHERE c_1_n = c_2_n AND c_2_n = c_3_n;
+affected rows: 18
+#
+# Show what we have in the tables.
+#
+SELECT * FROM t1;
+c_1_1 c_1_2 c_1_n
+2008-01-01 VARCHAR-01-01 11
+2008-01-08 VARCHAR-01-08 18
+2008-01-09 VARCHAR-01-09 19
+affected rows: 3
+SELECT * FROM t2;
+c_2_1 c_2_2 c_2_n
+2008-02-01 VARCHAR-02-01 21
+2008-02-08 VARCHAR-02-08 28
+2008-02-09 VARCHAR-02-09 29
+affected rows: 3
+SELECT * FROM t3;
+c_3_1 c_3_2 c_3_n
+2008-03-01 VARCHAR-03-01 31
+2008-03-08 VARCHAR-03-08 38
+2008-03-09 VARCHAR-03-09 39
+affected rows: 3
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c_1_1 DATE,
+c_1_2 VARCHAR(255),
+c_1_n INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t2 (
+c_2_1 DATE,
+c_2_2 VARCHAR(255),
+c_2_n INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t3 (
+c_3_1 DATE,
+c_3_2 VARCHAR(255),
+c_3_n INT -- row number
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-01' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=11 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-08' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=18 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1='2008:01:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-09' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=19 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-01' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=21 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-08' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=28 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1='2008:02:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-09' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=29 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t3` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:01' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-01' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=31 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:08' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-08' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=38 /* INT meta=0 nullable=1 is_null=0 */
+### INSERT INTO test.t3
+### SET
+### @1='2008:03:09' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-09' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=39 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t3` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1='2008:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2018:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1='2008:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2028:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### UPDATE test.t3
+### WHERE
+### @1='2008:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### SET
+### @1='2038:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+# at #
+# at #
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t3` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t1
+### WHERE
+### @1='2018:01:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-01-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t2
+### WHERE
+### @1='2028:02:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-02-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:02' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-02' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=2 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:03' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-03' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=3 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:04' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-04' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=4 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:05' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-05' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=5 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:06' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-06' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=6 /* INT meta=0 nullable=1 is_null=0 */
+### DELETE FROM test.t3
+### WHERE
+### @1='2038:03:07' /* DATE meta=0 nullable=1 is_null=0 */
+### @2='VARCHAR-03-07' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
+### @3=7 /* INT meta=0 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1, t2, t3;
+#
+# ===========================
+# Test #4 - LOAD DATA INFILE.
+# ===========================
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create a test table with selected data types.
+#
+CREATE TABLE t1 (
+c1 INT DEFAULT 100,
+c2 INT,
+c3 VARCHAR(60)
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+#
+# Show how much rows are affected by each statement.
+#
+#
+# Load data.
+#
+LOAD DATA INFILE '../../std_data/loaddata5.dat'
+ INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (c1,c2)
+SET c3 = 'Wow';
+affected rows: 3
+info: Records: 3 Deleted: 0 Skipped: 0 Warnings: 0
+#
+# Show what we have in the table.
+#
+SELECT * FROM t1;
+c1 c2 c3
+1 2 Wow
+3 4 Wow
+5 6 Wow
+affected rows: 3
+#
+# Hide how much rows are affected by each statement.
+#
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C utf8 *//*!*/;
+SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c1 INT DEFAULT 100,
+c2 INT,
+c3 VARCHAR(60)
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2=2 /* INT meta=0 nullable=1 is_null=0 */
+### @3='Wow' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2=4 /* INT meta=0 nullable=1 is_null=0 */
+### @3='Wow' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=5 /* INT meta=0 nullable=1 is_null=0 */
+### @2=6 /* INT meta=0 nullable=1 is_null=0 */
+### @3='Wow' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+COMMIT
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1;
diff --git a/mysql-test/r/mysqlbinlog_row_trans.result b/mysql-test/r/mysqlbinlog_row_trans.result
new file mode 100644
index 00000000000..9c3348a9e76
--- /dev/null
+++ b/mysql-test/r/mysqlbinlog_row_trans.result
@@ -0,0 +1,500 @@
+#
+# Preparatory cleanup.
+#
+DROP TABLE IF EXISTS t1, t2;
+#
+# We need a fixed timestamp to avoid varying results.
+#
+SET timestamp=1000000000;
+#
+# Delete all existing binary logs.
+#
+RESET MASTER;
+#
+# Create test tables.
+#
+CREATE TABLE t1 (
+c1 INT,
+c2 VARCHAR(20)
+) ENGINE=InnoDB DEFAULT CHARSET latin1;
+CREATE TABLE t2 (
+c1 INT,
+c2 VARCHAR(20)
+) ENGINE=MyISAM DEFAULT CHARSET latin1;
+#
+# Start transaction #1, transactional table only, commit.
+#
+START TRANSACTION;
+#
+# Do some statements.
+#
+INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
+UPDATE t1 SET c1 = c1 + 10;
+DELETE FROM t1 WHERE c1 = 12;
+#
+# Commit transaction.
+#
+COMMIT;
+SELECT * FROM t1;
+c1 c2
+11 varchar-1
+13 varchar-3
+TRUNCATE TABLE t1;
+#
+# Start transaction #2, transactional table only, rollback.
+#
+START TRANSACTION;
+#
+# Do some statements.
+#
+INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
+UPDATE t1 SET c1 = c1 + 10;
+DELETE FROM t1 WHERE c1 = 12;
+#
+# Rollback transaction.
+#
+ROLLBACK;
+SELECT * FROM t1;
+c1 c2
+TRUNCATE TABLE t1;
+#
+# Start transaction #3, both tables, commit.
+#
+START TRANSACTION;
+#
+# Do some statements on the transactional table.
+#
+INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
+UPDATE t1 SET c1 = c1 + 10;
+DELETE FROM t1 WHERE c1 = 12;
+#
+# Do some statements on the non-transactional table.
+#
+INSERT INTO t2 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
+UPDATE t2 SET c1 = c1 + 10;
+DELETE FROM t2 WHERE c1 = 12;
+#
+# Commit transaction.
+#
+COMMIT;
+SELECT * FROM t1;
+c1 c2
+11 varchar-1
+13 varchar-3
+SELECT * FROM t2;
+c1 c2
+11 varchar-1
+13 varchar-3
+TRUNCATE TABLE t1;
+TRUNCATE TABLE t2;
+#
+# Start transaction #4, both tables, rollback.
+#
+START TRANSACTION;
+#
+# Do some statements on the transactional table.
+#
+INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
+UPDATE t1 SET c1 = c1 + 10;
+DELETE FROM t1 WHERE c1 = 12;
+#
+# Do some statements on the non-transactional table.
+#
+INSERT INTO t2 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
+UPDATE t2 SET c1 = c1 + 10;
+DELETE FROM t2 WHERE c1 = 12;
+#
+# Rollback transaction.
+#
+ROLLBACK;
+Warnings:
+Warning 1196 Some non-transactional changed tables couldn't be rolled back
+SELECT * FROM t1;
+c1 c2
+SELECT * FROM t2;
+c1 c2
+11 varchar-1
+13 varchar-3
+TRUNCATE TABLE t1;
+TRUNCATE TABLE t2;
+#
+# Flush all log buffers to the log file.
+#
+FLUSH LOGS;
+#
+# Call mysqlbinlog to display the log file contents.
+#
+/*!40019 SET @@session.max_insert_delayed_threads=0*/;
+/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
+DELIMITER /*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
+ROLLBACK/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+use test/*!*/;
+SET TIMESTAMP=1000000000/*!*/;
+SET @@session.pseudo_thread_id=#/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
+SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
+/*!\C latin1 *//*!*/;
+SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
+CREATE TABLE t1 (
+c1 INT,
+c2 VARCHAR(20)
+) ENGINE=InnoDB DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+CREATE TABLE t2 (
+c1 INT,
+c2 VARCHAR(20)
+) ENGINE=MyISAM DEFAULT CHARSET latin1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=11 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=13 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+TRUNCATE TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+TRUNCATE TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=11 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=13 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t2
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t2
+### WHERE
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=11 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=13 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t2
+### WHERE
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+TRUNCATE TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+TRUNCATE TABLE t2
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t1
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t1
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t1
+### WHERE
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=11 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t1
+### WHERE
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=13 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t1
+### WHERE
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
+### INSERT INTO test.t2
+### SET
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### INSERT INTO test.t2
+### SET
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Update_rows: table id # flags: STMT_END_F
+### UPDATE test.t2
+### WHERE
+### @1=1 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=11 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1=2 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### UPDATE test.t2
+### WHERE
+### @1=3 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+### SET
+### @1=13 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t2` mapped to number #
+#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F
+### DELETE FROM test.t2
+### WHERE
+### @1=12 /* INT meta=0 nullable=1 is_null=0 */
+### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+ROLLBACK
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+BEGIN
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+TRUNCATE TABLE t1
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Xid = #
+COMMIT/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
+SET TIMESTAMP=1000000000/*!*/;
+TRUNCATE TABLE t2
+/*!*/;
+# at #
+#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
+DELIMITER ;
+# End of log file
+ROLLBACK /* added by mysqlbinlog */;
+/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
+#
+# Cleanup.
+#
+DROP TABLE t1, t2;
diff --git a/mysql-test/r/mysqlcheck.result b/mysql-test/r/mysqlcheck.result
index f8dad6a7769..5f1a0565b10 100644
--- a/mysql-test/r/mysqlcheck.result
+++ b/mysql-test/r/mysqlcheck.result
@@ -1,16 +1,26 @@
DROP TABLE IF EXISTS t1, `t``1`, `t 1`;
drop view if exists v1;
drop database if exists client_test_db;
+mtr.global_suppressions OK
+mtr.test_suppressions OK
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log
+note : The storage engine for the table doesn't support optimize
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log
+note : The storage engine for the table doesn't support optimize
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -20,14 +30,22 @@ mysql.time_zone_transition_type OK
mysql.user OK
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log
+note : The storage engine for the table doesn't support optimize
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log
+note : The storage engine for the table doesn't support optimize
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -50,9 +68,34 @@ create database d_bug25347;
use d_bug25347;
create table t_bug25347 (a int);
create view v_bug25347 as select * from t_bug25347;
+insert into t_bug25347 values (1),(2),(3);
flush tables;
removing and creating
-d_bug25347.t_bug25347 OK
+d_bug25347.t_bug25347
+Error : Incorrect file format 't_bug25347'
+error : Corrupt
+insert into t_bug25347 values (4),(5),(6);
+ERROR HY000: Incorrect file format 't_bug25347'
+d_bug25347.t_bug25347
+warning : Number of rows changed from 0 to 3
+status : OK
+insert into t_bug25347 values (7),(8),(9);
+select * from t_bug25347;
+a
+1
+2
+3
+7
+8
+9
+select * from v_bug25347;
+a
+1
+2
+3
+7
+8
+9
drop view v_bug25347;
drop table t_bug25347;
drop database d_bug25347;
@@ -71,3 +114,90 @@ error : Corrupt
test.t2 OK
DROP TABLE t1, t2;
End of 5.0 tests
+create table t1(a int);
+create view v1 as select * from t1;
+show tables;
+Tables_in_test
+t1
+v1
+show tables;
+Tables_in_test
+t1
+#mysql50#v-1
+v1
+show tables;
+Tables_in_test
+t1
+v1
+v-1
+drop view v1, `v-1`;
+drop table t1;
+SET NAMES utf8;
+CREATE TABLE `#mysql50#@` (a INT);
+SHOW TABLES;
+Tables_in_test
+#mysql50#@
+SET NAMES DEFAULT;
+mysqlcheck --fix-table-names --databases test
+SET NAMES utf8;
+SHOW TABLES;
+Tables_in_test
+@
+DROP TABLE `@`;
+CREATE TABLE `я` (a INT);
+SET NAMES DEFAULT;
+mysqlcheck --default-character-set="latin1" --databases test
+test.?
+Error : Table doesn't exist
+status : Operation failed
+mysqlcheck --default-character-set="utf8" --databases test
+test.я OK
+SET NAMES utf8;
+DROP TABLE `я`;
+SET NAMES DEFAULT;
+CREATE DATABASE `#mysql50#a@b`;
+USE `#mysql50#a@b`;
+CREATE TABLE `#mysql50#c@d` (a INT);
+CREATE TABLE t1 (a INT);
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
+WHERE TRIGGER_SCHEMA="#mysql50#a@b" ORDER BY trigger_name;
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL #mysql50#a@b tr1 INSERT NULL #mysql50#a@b #mysql50#c@d 0 NULL SET NEW.a = 10 * NEW.a ROW BEFORE NULL NULL OLD NEW NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+NULL #mysql50#a@b tr2 INSERT NULL #mysql50#a@b t1 0 NULL SET NEW.a = 100 * NEW.a ROW BEFORE NULL NULL OLD NEW NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+Warnings:
+Warning 1603 Triggers for table `#mysql50#a@b`.`#mysql50#c@d` have no creation context
+Warning 1603 Triggers for table `#mysql50#a@b`.`t1` have no creation context
+mysqlcheck --fix-db-names --fix-table-names --all-databases
+USE `a@b`;
+SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
+WHERE TRIGGER_SCHEMA="a@b" ORDER BY trigger_name;
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL a@b tr1 INSERT NULL a@b c@d 0 NULL SET NEW.a = 10 * NEW.a ROW BEFORE NULL NULL OLD NEW NULL root@localhost utf8 utf8_general_ci latin1_swedish_ci
+NULL a@b tr2 INSERT NULL a@b t1 0 NULL SET NEW.a = 100 * NEW.a ROW BEFORE NULL NULL OLD NEW NULL root@localhost utf8 utf8_general_ci latin1_swedish_ci
+INSERT INTO `c@d` VALUES (2), (1);
+SELECT * FROM `c@d`;
+a
+20
+10
+INSERT INTO t1 VALUES (3), (5);
+SELECT * FROM t1;
+a
+300
+500
+DROP DATABASE `a@b`;
+USE test;
+#
+# Bug #31821: --all-in-1 and --fix-table-names don't work together
+#
+drop table if exists `#mysql50#t1-1`;
+create table `#mysql50#t1-1` (a int);
+show tables like 't1-1';
+Tables_in_test (t1-1)
+t1-1
+drop table `t1-1`;
+create table `#mysql50#t1-1` (a int);
+show tables like 't1-1';
+Tables_in_test (t1-1)
+t1-1
+drop table `t1-1`;
+End of 5.1 tests
diff --git a/mysql-test/r/mysqldump-max.result b/mysql-test/r/mysqldump-max.result
index b3a966b9b39..c300f3d7996 100644
--- a/mysql-test/r/mysqldump-max.result
+++ b/mysql-test/r/mysqldump-max.result
@@ -96,8 +96,8 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -108,8 +108,8 @@ DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -120,8 +120,8 @@ DROP TABLE IF EXISTS `t3`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t3` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -132,8 +132,8 @@ DROP TABLE IF EXISTS `t4`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t4` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -144,8 +144,8 @@ DROP TABLE IF EXISTS `t5`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t5` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -156,8 +156,8 @@ DROP TABLE IF EXISTS `t6`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t6` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -193,8 +193,8 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -205,8 +205,8 @@ DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -217,8 +217,8 @@ DROP TABLE IF EXISTS `t3`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t3` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -229,8 +229,8 @@ DROP TABLE IF EXISTS `t4`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t4` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -241,8 +241,8 @@ DROP TABLE IF EXISTS `t5`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t5` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -253,8 +253,8 @@ DROP TABLE IF EXISTS `t6`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t6` (
- `id` int(8) default NULL,
- `name` varchar(32) default NULL
+ `id` int(8) DEFAULT NULL,
+ `name` varchar(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -277,3 +277,16 @@ drop table t3;
drop table t4;
drop table t5;
drop table t6;
+SELECT @@global.storage_engine INTO @old_engine;
+SET GLOBAL storage_engine=InnoDB;
+CREATE VIEW v1 AS SELECT * FROM t1;
+INSERT INTO t1 VALUES();
+SELECT COUNT(*) FROM v1;
+COUNT(*)
+1
+SELECT COUNT(*) FROM v1;
+COUNT(*)
+1
+DROP VIEW v1;
+DROP TABLE t1;
+SET GLOBAL storage_engine=@old_engine;
diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result
index ce24922db28..8162e1aca05 100644
--- a/mysql-test/r/mysqldump.result
+++ b/mysql-test/r/mysqldump.result
@@ -8,13 +8,14 @@ drop database if exists mysqldump_test_db;
drop database if exists db1;
drop database if exists db2;
drop view if exists v1, v2, v3;
-CREATE TABLE t1(a INT);
+CREATE TABLE t1(a INT, KEY (a)) KEY_BLOCK_SIZE=1024;
INSERT INTO t1 VALUES (1), (2);
<?xml version="1.0"?>
<mysqldump xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<database name="test">
<table_structure name="t1">
- <field Field="a" Type="int(11)" Null="YES" Key="" Extra="" />
+ <field Field="a" Type="int(11)" Null="YES" Key="MUL" Extra="" />
+ <key Table="t1" Non_unique="1" Key_name="a" Seq_in_index="1" Column_name="a" Collation="A" Null="YES" Index_type="BTREE" Comment="" />
</table_structure>
<table_data name="t1">
<row>
@@ -36,7 +37,7 @@ INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` decimal(64,20) default NULL
+ `a` decimal(64,20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO `t1` VALUES ('1234567890123456789012345678901234567890.00000000000000000000'),('987654321098765432109876543210987654321.00000000000000000000');
@@ -47,11 +48,11 @@ DROP TABLE t1;
CREATE TABLE t1 (a double);
INSERT INTO t1 VALUES ('-9e999999');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` double default NULL
+ `a` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO `t1` VALUES (RES);
@@ -72,16 +73,16 @@ SET SQL_MODE=@OLD_SQL_MODE;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` decimal(10,5) default NULL,
- `b` float default NULL
+ `a` decimal(10,5) DEFAULT NULL,
+ `b` float DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO `t1` VALUES ('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456);
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` decimal(10,5) default NULL,
- `b` float default NULL
+ `a` decimal(10,5) DEFAULT NULL,
+ `b` float DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO `t1` VALUES ('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456);
@@ -100,8 +101,8 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` decimal(10,5) default NULL,
- `b` float default NULL
+ `a` decimal(10,5) DEFAULT NULL,
+ `b` float DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -129,8 +130,8 @@ UNLOCK TABLES;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` decimal(10,5) default NULL,
- `b` float default NULL
+ `a` decimal(10,5) DEFAULT NULL,
+ `b` float DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -211,7 +212,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` varchar(255) default NULL
+ `a` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=koi8r;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -245,7 +246,7 @@ INSERT INTO t1 VALUES (1), (2);
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `t1` WRITE;
@@ -268,7 +269,7 @@ UNLOCK TABLES;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `t1` WRITE;
@@ -291,7 +292,7 @@ create table ```a` (i int);
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE ```a` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
drop table ```a`;
@@ -314,7 +315,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -342,7 +343,7 @@ DROP TABLE IF EXISTS "t1";
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE "t1" (
- "a" int(11) default NULL
+ "a" int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -373,7 +374,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -401,7 +402,7 @@ DROP TABLE IF EXISTS "t1";
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE "t1" (
- "a" int(11) default NULL
+ "a" int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -436,7 +437,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -530,7 +531,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -564,7 +565,7 @@ UNLOCK TABLES;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `t1` WRITE;
@@ -587,7 +588,7 @@ UNLOCK TABLES;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `t1` WRITE;
@@ -610,7 +611,7 @@ UNLOCK TABLES;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `t1` WRITE;
@@ -648,7 +649,7 @@ DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -730,7 +731,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -764,7 +765,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1133,336 +1134,336 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `F_c4ca4238a0b923820dcc509a6f75849b` int(11) default NULL,
- `F_c81e728d9d4c2f636f067f89cc14862c` int(11) default NULL,
- `F_eccbc87e4b5ce2fe28308fd9f2a7baf3` int(11) default NULL,
- `F_a87ff679a2f3e71d9181a67b7542122c` int(11) default NULL,
- `F_e4da3b7fbbce2345d7772b0674a318d5` int(11) default NULL,
- `F_1679091c5a880faf6fb5e6087eb1b2dc` int(11) default NULL,
- `F_8f14e45fceea167a5a36dedd4bea2543` int(11) default NULL,
- `F_c9f0f895fb98ab9159f51fd0297e236d` int(11) default NULL,
- `F_45c48cce2e2d7fbdea1afc51c7c6ad26` int(11) default NULL,
- `F_d3d9446802a44259755d38e6d163e820` int(11) default NULL,
- `F_6512bd43d9caa6e02c990b0a82652dca` int(11) default NULL,
- `F_c20ad4d76fe97759aa27a0c99bff6710` int(11) default NULL,
- `F_c51ce410c124a10e0db5e4b97fc2af39` int(11) default NULL,
- `F_aab3238922bcc25a6f606eb525ffdc56` int(11) default NULL,
- `F_9bf31c7ff062936a96d3c8bd1f8f2ff3` int(11) default NULL,
- `F_c74d97b01eae257e44aa9d5bade97baf` int(11) default NULL,
- `F_70efdf2ec9b086079795c442636b55fb` int(11) default NULL,
- `F_6f4922f45568161a8cdf4ad2299f6d23` int(11) default NULL,
- `F_1f0e3dad99908345f7439f8ffabdffc4` int(11) default NULL,
- `F_98f13708210194c475687be6106a3b84` int(11) default NULL,
- `F_3c59dc048e8850243be8079a5c74d079` int(11) default NULL,
- `F_b6d767d2f8ed5d21a44b0e5886680cb9` int(11) default NULL,
- `F_37693cfc748049e45d87b8c7d8b9aacd` int(11) default NULL,
- `F_1ff1de774005f8da13f42943881c655f` int(11) default NULL,
- `F_8e296a067a37563370ded05f5a3bf3ec` int(11) default NULL,
- `F_4e732ced3463d06de0ca9a15b6153677` int(11) default NULL,
- `F_02e74f10e0327ad868d138f2b4fdd6f0` int(11) default NULL,
- `F_33e75ff09dd601bbe69f351039152189` int(11) default NULL,
- `F_6ea9ab1baa0efb9e19094440c317e21b` int(11) default NULL,
- `F_34173cb38f07f89ddbebc2ac9128303f` int(11) default NULL,
- `F_c16a5320fa475530d9583c34fd356ef5` int(11) default NULL,
- `F_6364d3f0f495b6ab9dcf8d3b5c6e0b01` int(11) default NULL,
- `F_182be0c5cdcd5072bb1864cdee4d3d6e` int(11) default NULL,
- `F_e369853df766fa44e1ed0ff613f563bd` int(11) default NULL,
- `F_1c383cd30b7c298ab50293adfecb7b18` int(11) default NULL,
- `F_19ca14e7ea6328a42e0eb13d585e4c22` int(11) default NULL,
- `F_a5bfc9e07964f8dddeb95fc584cd965d` int(11) default NULL,
- `F_a5771bce93e200c36f7cd9dfd0e5deaa` int(11) default NULL,
- `F_d67d8ab4f4c10bf22aa353e27879133c` int(11) default NULL,
- `F_d645920e395fedad7bbbed0eca3fe2e0` int(11) default NULL,
- `F_3416a75f4cea9109507cacd8e2f2aefc` int(11) default NULL,
- `F_a1d0c6e83f027327d8461063f4ac58a6` int(11) default NULL,
- `F_17e62166fc8586dfa4d1bc0e1742c08b` int(11) default NULL,
- `F_f7177163c833dff4b38fc8d2872f1ec6` int(11) default NULL,
- `F_6c8349cc7260ae62e3b1396831a8398f` int(11) default NULL,
- `F_d9d4f495e875a2e075a1a4a6e1b9770f` int(11) default NULL,
- `F_67c6a1e7ce56d3d6fa748ab6d9af3fd7` int(11) default NULL,
- `F_642e92efb79421734881b53e1e1b18b6` int(11) default NULL,
- `F_f457c545a9ded88f18ecee47145a72c0` int(11) default NULL,
- `F_c0c7c76d30bd3dcaefc96f40275bdc0a` int(11) default NULL,
- `F_2838023a778dfaecdc212708f721b788` int(11) default NULL,
- `F_9a1158154dfa42caddbd0694a4e9bdc8` int(11) default NULL,
- `F_d82c8d1619ad8176d665453cfb2e55f0` int(11) default NULL,
- `F_a684eceee76fc522773286a895bc8436` int(11) default NULL,
- `F_b53b3a3d6ab90ce0268229151c9bde11` int(11) default NULL,
- `F_9f61408e3afb633e50cdf1b20de6f466` int(11) default NULL,
- `F_72b32a1f754ba1c09b3695e0cb6cde7f` int(11) default NULL,
- `F_66f041e16a60928b05a7e228a89c3799` int(11) default NULL,
- `F_093f65e080a295f8076b1c5722a46aa2` int(11) default NULL,
- `F_072b030ba126b2f4b2374f342be9ed44` int(11) default NULL,
- `F_7f39f8317fbdb1988ef4c628eba02591` int(11) default NULL,
- `F_44f683a84163b3523afe57c2e008bc8c` int(11) default NULL,
- `F_03afdbd66e7929b125f8597834fa83a4` int(11) default NULL,
- `F_ea5d2f1c4608232e07d3aa3d998e5135` int(11) default NULL,
- `F_fc490ca45c00b1249bbe3554a4fdf6fb` int(11) default NULL,
- `F_3295c76acbf4caaed33c36b1b5fc2cb1` int(11) default NULL,
- `F_735b90b4568125ed6c3f678819b6e058` int(11) default NULL,
- `F_a3f390d88e4c41f2747bfa2f1b5f87db` int(11) default NULL,
- `F_14bfa6bb14875e45bba028a21ed38046` int(11) default NULL,
- `F_7cbbc409ec990f19c78c75bd1e06f215` int(11) default NULL,
- `F_e2c420d928d4bf8ce0ff2ec19b371514` int(11) default NULL,
- `F_32bb90e8976aab5298d5da10fe66f21d` int(11) default NULL,
- `F_d2ddea18f00665ce8623e36bd4e3c7c5` int(11) default NULL,
- `F_ad61ab143223efbc24c7d2583be69251` int(11) default NULL,
- `F_d09bf41544a3365a46c9077ebb5e35c3` int(11) default NULL,
- `F_fbd7939d674997cdb4692d34de8633c4` int(11) default NULL,
- `F_28dd2c7955ce926456240b2ff0100bde` int(11) default NULL,
- `F_35f4a8d465e6e1edc05f3d8ab658c551` int(11) default NULL,
- `F_d1fe173d08e959397adf34b1d77e88d7` int(11) default NULL,
- `F_f033ab37c30201f73f142449d037028d` int(11) default NULL,
- `F_43ec517d68b6edd3015b3edc9a11367b` int(11) default NULL,
- `F_9778d5d219c5080b9a6a17bef029331c` int(11) default NULL,
- `F_fe9fc289c3ff0af142b6d3bead98a923` int(11) default NULL,
- `F_68d30a9594728bc39aa24be94b319d21` int(11) default NULL,
- `F_3ef815416f775098fe977004015c6193` int(11) default NULL,
- `F_93db85ed909c13838ff95ccfa94cebd9` int(11) default NULL,
- `F_c7e1249ffc03eb9ded908c236bd1996d` int(11) default NULL,
- `F_2a38a4a9316c49e5a833517c45d31070` int(11) default NULL,
- `F_7647966b7343c29048673252e490f736` int(11) default NULL,
- `F_8613985ec49eb8f757ae6439e879bb2a` int(11) default NULL,
- `F_54229abfcfa5649e7003b83dd4755294` int(11) default NULL,
- `F_92cc227532d17e56e07902b254dfad10` int(11) default NULL,
- `F_98dce83da57b0395e163467c9dae521b` int(11) default NULL,
- `F_f4b9ec30ad9f68f89b29639786cb62ef` int(11) default NULL,
- `F_812b4ba287f5ee0bc9d43bbf5bbe87fb` int(11) default NULL,
- `F_26657d5ff9020d2abefe558796b99584` int(11) default NULL,
- `F_e2ef524fbf3d9fe611d5a8e90fefdc9c` int(11) default NULL,
- `F_ed3d2c21991e3bef5e069713af9fa6ca` int(11) default NULL,
- `F_ac627ab1ccbdb62ec96e702f07f6425b` int(11) default NULL,
- `F_f899139df5e1059396431415e770c6dd` int(11) default NULL,
- `F_38b3eff8baf56627478ec76a704e9b52` int(11) default NULL,
- `F_ec8956637a99787bd197eacd77acce5e` int(11) default NULL,
- `F_6974ce5ac660610b44d9b9fed0ff9548` int(11) default NULL,
- `F_c9e1074f5b3f9fc8ea15d152add07294` int(11) default NULL,
- `F_65b9eea6e1cc6bb9f0cd2a47751a186f` int(11) default NULL,
- `F_f0935e4cd5920aa6c7c996a5ee53a70f` int(11) default NULL,
- `F_a97da629b098b75c294dffdc3e463904` int(11) default NULL,
- `F_a3c65c2974270fd093ee8a9bf8ae7d0b` int(11) default NULL,
- `F_2723d092b63885e0d7c260cc007e8b9d` int(11) default NULL,
- `F_5f93f983524def3dca464469d2cf9f3e` int(11) default NULL,
- `F_698d51a19d8a121ce581499d7b701668` int(11) default NULL,
- `F_7f6ffaa6bb0b408017b62254211691b5` int(11) default NULL,
- `F_73278a4a86960eeb576a8fd4c9ec6997` int(11) default NULL,
- `F_5fd0b37cd7dbbb00f97ba6ce92bf5add` int(11) default NULL,
- `F_2b44928ae11fb9384c4cf38708677c48` int(11) default NULL,
- `F_c45147dee729311ef5b5c3003946c48f` int(11) default NULL,
- `F_eb160de1de89d9058fcb0b968dbbbd68` int(11) default NULL,
- `F_5ef059938ba799aaa845e1c2e8a762bd` int(11) default NULL,
- `F_07e1cd7dca89a1678042477183b7ac3f` int(11) default NULL,
- `F_da4fb5c6e93e74d3df8527599fa62642` int(11) default NULL,
- `F_4c56ff4ce4aaf9573aa5dff913df997a` int(11) default NULL,
- `F_a0a080f42e6f13b3a2df133f073095dd` int(11) default NULL,
- `F_202cb962ac59075b964b07152d234b70` int(11) default NULL,
- `F_c8ffe9a587b126f152ed3d89a146b445` int(11) default NULL,
- `F_3def184ad8f4755ff269862ea77393dd` int(11) default NULL,
- `F_069059b7ef840f0c74a814ec9237b6ec` int(11) default NULL,
- `F_ec5decca5ed3d6b8079e2e7e7bacc9f2` int(11) default NULL,
- `F_76dc611d6ebaafc66cc0879c71b5db5c` int(11) default NULL,
- `F_d1f491a404d6854880943e5c3cd9ca25` int(11) default NULL,
- `F_9b8619251a19057cff70779273e95aa6` int(11) default NULL,
- `F_1afa34a7f984eeabdbb0a7d494132ee5` int(11) default NULL,
- `F_65ded5353c5ee48d0b7d48c591b8f430` int(11) default NULL,
- `F_9fc3d7152ba9336a670e36d0ed79bc43` int(11) default NULL,
- `F_02522a2b2726fb0a03bb19f2d8d9524d` int(11) default NULL,
- `F_7f1de29e6da19d22b51c68001e7e0e54` int(11) default NULL,
- `F_42a0e188f5033bc65bf8d78622277c4e` int(11) default NULL,
- `F_3988c7f88ebcb58c6ce932b957b6f332` int(11) default NULL,
- `F_013d407166ec4fa56eb1e1f8cbe183b9` int(11) default NULL,
- `F_e00da03b685a0dd18fb6a08af0923de0` int(11) default NULL,
- `F_1385974ed5904a438616ff7bdb3f7439` int(11) default NULL,
- `F_0f28b5d49b3020afeecd95b4009adf4c` int(11) default NULL,
- `F_a8baa56554f96369ab93e4f3bb068c22` int(11) default NULL,
- `F_903ce9225fca3e988c2af215d4e544d3` int(11) default NULL,
- `F_0a09c8844ba8f0936c20bd791130d6b6` int(11) default NULL,
- `F_2b24d495052a8ce66358eb576b8912c8` int(11) default NULL,
- `F_a5e00132373a7031000fd987a3c9f87b` int(11) default NULL,
- `F_8d5e957f297893487bd98fa830fa6413` int(11) default NULL,
- `F_47d1e990583c9c67424d369f3414728e` int(11) default NULL,
- `F_f2217062e9a397a1dca429e7d70bc6ca` int(11) default NULL,
- `F_7ef605fc8dba5425d6965fbd4c8fbe1f` int(11) default NULL,
- `F_a8f15eda80c50adb0e71943adc8015cf` int(11) default NULL,
- `F_37a749d808e46495a8da1e5352d03cae` int(11) default NULL,
- `F_b3e3e393c77e35a4a3f3cbd1e429b5dc` int(11) default NULL,
- `F_1d7f7abc18fcb43975065399b0d1e48e` int(11) default NULL,
- `F_2a79ea27c279e471f4d180b08d62b00a` int(11) default NULL,
- `F_1c9ac0159c94d8d0cbedc973445af2da` int(11) default NULL,
- `F_6c4b761a28b734fe93831e3fb400ce87` int(11) default NULL,
- `F_06409663226af2f3114485aa4e0a23b4` int(11) default NULL,
- `F_140f6969d5213fd0ece03148e62e461e` int(11) default NULL,
- `F_b73ce398c39f506af761d2277d853a92` int(11) default NULL,
- `F_bd4c9ab730f5513206b999ec0d90d1fb` int(11) default NULL,
- `F_82aa4b0af34c2313a562076992e50aa3` int(11) default NULL,
- `F_0777d5c17d4066b82ab86dff8a46af6f` int(11) default NULL,
- `F_fa7cdfad1a5aaf8370ebeda47a1ff1c3` int(11) default NULL,
- `F_9766527f2b5d3e95d4a733fcfb77bd7e` int(11) default NULL,
- `F_7e7757b1e12abcb736ab9a754ffb617a` int(11) default NULL,
- `F_5878a7ab84fb43402106c575658472fa` int(11) default NULL,
- `F_006f52e9102a8d3be2fe5614f42ba989` int(11) default NULL,
- `F_3636638817772e42b59d74cff571fbb3` int(11) default NULL,
- `F_149e9677a5989fd342ae44213df68868` int(11) default NULL,
- `F_a4a042cf4fd6bfb47701cbc8a1653ada` int(11) default NULL,
- `F_1ff8a7b5dc7a7d1f0ed65aaa29c04b1e` int(11) default NULL,
- `F_f7e6c85504ce6e82442c770f7c8606f0` int(11) default NULL,
- `F_bf8229696f7a3bb4700cfddef19fa23f` int(11) default NULL,
- `F_82161242827b703e6acf9c726942a1e4` int(11) default NULL,
- `F_38af86134b65d0f10fe33d30dd76442e` int(11) default NULL,
- `F_96da2f590cd7246bbde0051047b0d6f7` int(11) default NULL,
- `F_8f85517967795eeef66c225f7883bdcb` int(11) default NULL,
- `F_8f53295a73878494e9bc8dd6c3c7104f` int(11) default NULL,
- `F_045117b0e0a11a242b9765e79cbf113f` int(11) default NULL,
- `F_fc221309746013ac554571fbd180e1c8` int(11) default NULL,
- `F_4c5bde74a8f110656874902f07378009` int(11) default NULL,
- `F_cedebb6e872f539bef8c3f919874e9d7` int(11) default NULL,
- `F_6cdd60ea0045eb7a6ec44c54d29ed402` int(11) default NULL,
- `F_eecca5b6365d9607ee5a9d336962c534` int(11) default NULL,
- `F_9872ed9fc22fc182d371c3e9ed316094` int(11) default NULL,
- `F_31fefc0e570cb3860f2a6d4b38c6490d` int(11) default NULL,
- `F_9dcb88e0137649590b755372b040afad` int(11) default NULL,
- `F_a2557a7b2e94197ff767970b67041697` int(11) default NULL,
- `F_cfecdb276f634854f3ef915e2e980c31` int(11) default NULL,
- `F_0aa1883c6411f7873cb83dacb17b0afc` int(11) default NULL,
- `F_58a2fc6ed39fd083f55d4182bf88826d` int(11) default NULL,
- `F_bd686fd640be98efaae0091fa301e613` int(11) default NULL,
- `F_a597e50502f5ff68e3e25b9114205d4a` int(11) default NULL,
- `F_0336dcbab05b9d5ad24f4333c7658a0e` int(11) default NULL,
- `F_084b6fbb10729ed4da8c3d3f5a3ae7c9` int(11) default NULL,
- `F_85d8ce590ad8981ca2c8286f79f59954` int(11) default NULL,
- `F_0e65972dce68dad4d52d063967f0a705` int(11) default NULL,
- `F_84d9ee44e457ddef7f2c4f25dc8fa865` int(11) default NULL,
- `F_3644a684f98ea8fe223c713b77189a77` int(11) default NULL,
- `F_757b505cfd34c64c85ca5b5690ee5293` int(11) default NULL,
- `F_854d6fae5ee42911677c739ee1734486` int(11) default NULL,
- `F_e2c0be24560d78c5e599c2a9c9d0bbd2` int(11) default NULL,
- `F_274ad4786c3abca69fa097b85867d9a4` int(11) default NULL,
- `F_eae27d77ca20db309e056e3d2dcd7d69` int(11) default NULL,
- `F_7eabe3a1649ffa2b3ff8c02ebfd5659f` int(11) default NULL,
- `F_69adc1e107f7f7d035d7baf04342e1ca` int(11) default NULL,
- `F_091d584fced301b442654dd8c23b3fc9` int(11) default NULL,
- `F_b1d10e7bafa4421218a51b1e1f1b0ba2` int(11) default NULL,
- `F_6f3ef77ac0e3619e98159e9b6febf557` int(11) default NULL,
- `F_eb163727917cbba1eea208541a643e74` int(11) default NULL,
- `F_1534b76d325a8f591b52d302e7181331` int(11) default NULL,
- `F_979d472a84804b9f647bc185a877a8b5` int(11) default NULL,
- `F_ca46c1b9512a7a8315fa3c5a946e8265` int(11) default NULL,
- `F_3b8a614226a953a8cd9526fca6fe9ba5` int(11) default NULL,
- `F_45fbc6d3e05ebd93369ce542e8f2322d` int(11) default NULL,
- `F_63dc7ed1010d3c3b8269faf0ba7491d4` int(11) default NULL,
- `F_e96ed478dab8595a7dbda4cbcbee168f` int(11) default NULL,
- `F_c0e190d8267e36708f955d7ab048990d` int(11) default NULL,
- `F_ec8ce6abb3e952a85b8551ba726a1227` int(11) default NULL,
- `F_060ad92489947d410d897474079c1477` int(11) default NULL,
- `F_bcbe3365e6ac95ea2c0343a2395834dd` int(11) default NULL,
- `F_115f89503138416a242f40fb7d7f338e` int(11) default NULL,
- `F_13fe9d84310e77f13a6d184dbf1232f3` int(11) default NULL,
- `F_d1c38a09acc34845c6be3a127a5aacaf` int(11) default NULL,
- `F_9cfdf10e8fc047a44b08ed031e1f0ed1` int(11) default NULL,
- `F_705f2172834666788607efbfca35afb3` int(11) default NULL,
- `F_74db120f0a8e5646ef5a30154e9f6deb` int(11) default NULL,
- `F_57aeee35c98205091e18d1140e9f38cf` int(11) default NULL,
- `F_6da9003b743b65f4c0ccd295cc484e57` int(11) default NULL,
- `F_9b04d152845ec0a378394003c96da594` int(11) default NULL,
- `F_be83ab3ecd0db773eb2dc1b0a17836a1` int(11) default NULL,
- `F_e165421110ba03099a1c0393373c5b43` int(11) default NULL,
- `F_289dff07669d7a23de0ef88d2f7129e7` int(11) default NULL,
- `F_577ef1154f3240ad5b9b413aa7346a1e` int(11) default NULL,
- `F_01161aaa0b6d1345dd8fe4e481144d84` int(11) default NULL,
- `F_539fd53b59e3bb12d203f45a912eeaf2` int(11) default NULL,
- `F_ac1dd209cbcc5e5d1c6e28598e8cbbe8` int(11) default NULL,
- `F_555d6702c950ecb729a966504af0a635` int(11) default NULL,
- `F_335f5352088d7d9bf74191e006d8e24c` int(11) default NULL,
- `F_f340f1b1f65b6df5b5e3f94d95b11daf` int(11) default NULL,
- `F_e4a6222cdb5b34375400904f03d8e6a5` int(11) default NULL,
- `F_cb70ab375662576bd1ac5aaf16b3fca4` int(11) default NULL,
- `F_9188905e74c28e489b44e954ec0b9bca` int(11) default NULL,
- `F_0266e33d3f546cb5436a10798e657d97` int(11) default NULL,
- `F_38db3aed920cf82ab059bfccbd02be6a` int(11) default NULL,
- `F_3cec07e9ba5f5bb252d13f5f431e4bbb` int(11) default NULL,
- `F_621bf66ddb7c962aa0d22ac97d69b793` int(11) default NULL,
- `F_077e29b11be80ab57e1a2ecabb7da330` int(11) default NULL,
- `F_6c9882bbac1c7093bd25041881277658` int(11) default NULL,
- `F_19f3cd308f1455b3fa09a282e0d496f4` int(11) default NULL,
- `F_03c6b06952c750899bb03d998e631860` int(11) default NULL,
- `F_c24cd76e1ce41366a4bbe8a49b02a028` int(11) default NULL,
- `F_c52f1bd66cc19d05628bd8bf27af3ad6` int(11) default NULL,
- `F_fe131d7f5a6b38b23cc967316c13dae2` int(11) default NULL,
- `F_f718499c1c8cef6730f9fd03c8125cab` int(11) default NULL,
- `F_d96409bf894217686ba124d7356686c9` int(11) default NULL,
- `F_502e4a16930e414107ee22b6198c578f` int(11) default NULL,
- `F_cfa0860e83a4c3a763a7e62d825349f7` int(11) default NULL,
- `F_a4f23670e1833f3fdb077ca70bbd5d66` int(11) default NULL,
- `F_b1a59b315fc9a3002ce38bbe070ec3f5` int(11) default NULL,
- `F_36660e59856b4de58a219bcf4e27eba3` int(11) default NULL,
- `F_8c19f571e251e61cb8dd3612f26d5ecf` int(11) default NULL,
- `F_d6baf65e0b240ce177cf70da146c8dc8` int(11) default NULL,
- `F_e56954b4f6347e897f954495eab16a88` int(11) default NULL,
- `F_f7664060cc52bc6f3d620bcedc94a4b6` int(11) default NULL,
- `F_eda80a3d5b344bc40f3bc04f65b7a357` int(11) default NULL,
- `F_8f121ce07d74717e0b1f21d122e04521` int(11) default NULL,
- `F_06138bc5af6023646ede0e1f7c1eac75` int(11) default NULL,
- `F_39059724f73a9969845dfe4146c5660e` int(11) default NULL,
- `F_7f100b7b36092fb9b06dfb4fac360931` int(11) default NULL,
- `F_7a614fd06c325499f1680b9896beedeb` int(11) default NULL,
- `F_4734ba6f3de83d861c3176a6273cac6d` int(11) default NULL,
- `F_d947bf06a885db0d477d707121934ff8` int(11) default NULL,
- `F_63923f49e5241343aa7acb6a06a751e7` int(11) default NULL,
- `F_db8e1af0cb3aca1ae2d0018624204529` int(11) default NULL,
- `F_20f07591c6fcb220ffe637cda29bb3f6` int(11) default NULL,
- `F_07cdfd23373b17c6b337251c22b7ea57` int(11) default NULL,
- `F_d395771085aab05244a4fb8fd91bf4ee` int(11) default NULL,
- `F_92c8c96e4c37100777c7190b76d28233` int(11) default NULL,
- `F_e3796ae838835da0b6f6ea37bcf8bcb7` int(11) default NULL,
- `F_6a9aeddfc689c1d0e3b9ccc3ab651bc5` int(11) default NULL,
- `F_0f49c89d1e7298bb9930789c8ed59d48` int(11) default NULL,
- `F_46ba9f2a6976570b0353203ec4474217` int(11) default NULL,
- `F_0e01938fc48a2cfb5f2217fbfb00722d` int(11) default NULL,
- `F_16a5cdae362b8d27a1d8f8c7b78b4330` int(11) default NULL,
- `F_918317b57931b6b7a7d29490fe5ec9f9` int(11) default NULL,
- `F_48aedb8880cab8c45637abc7493ecddd` int(11) default NULL,
- `F_839ab46820b524afda05122893c2fe8e` int(11) default NULL,
- `F_f90f2aca5c640289d0a29417bcb63a37` int(11) default NULL,
- `F_9c838d2e45b2ad1094d42f4ef36764f6` int(11) default NULL,
- `F_1700002963a49da13542e0726b7bb758` int(11) default NULL,
- `F_53c3bce66e43be4f209556518c2fcb54` int(11) default NULL,
- `F_6883966fd8f918a4aa29be29d2c386fb` int(11) default NULL,
- `F_49182f81e6a13cf5eaa496d51fea6406` int(11) default NULL,
- `F_d296c101daa88a51f6ca8cfc1ac79b50` int(11) default NULL,
- `F_9fd81843ad7f202f26c1a174c7357585` int(11) default NULL,
- `F_26e359e83860db1d11b6acca57d8ea88` int(11) default NULL,
- `F_ef0d3930a7b6c95bd2b32ed45989c61f` int(11) default NULL,
- `F_94f6d7e04a4d452035300f18b984988c` int(11) default NULL,
- `F_34ed066df378efacc9b924ec161e7639` int(11) default NULL,
- `F_577bcc914f9e55d5e4e4f82f9f00e7d4` int(11) default NULL,
- `F_11b9842e0a271ff252c1903e7132cd68` int(11) default NULL,
- `F_37bc2f75bf1bcfe8450a1a41c200364c` int(11) default NULL,
- `F_496e05e1aea0a9c4655800e8a7b9ea28` int(11) default NULL,
- `F_b2eb7349035754953b57a32e2841bda5` int(11) default NULL,
- `F_8e98d81f8217304975ccb23337bb5761` int(11) default NULL,
- `F_a8c88a0055f636e4a163a5e3d16adab7` int(11) default NULL,
- `F_eddea82ad2755b24c4e168c5fc2ebd40` int(11) default NULL,
- `F_06eb61b839a0cefee4967c67ccb099dc` int(11) default NULL,
- `F_9dfcd5e558dfa04aaf37f137a1d9d3e5` int(11) default NULL,
- `F_950a4152c2b4aa3ad78bdd6b366cc179` int(11) default NULL,
- `F_158f3069a435b314a80bdcb024f8e422` int(11) default NULL,
- `F_758874998f5bd0c393da094e1967a72b` int(11) default NULL,
- `F_ad13a2a07ca4b7642959dc0c4c740ab6` int(11) default NULL,
- `F_3fe94a002317b5f9259f82690aeea4cd` int(11) default NULL,
- `F_5b8add2a5d98b1a652ea7fd72d942dac` int(11) default NULL,
- `F_432aca3a1e345e339f35a30c8f65edce` int(11) default NULL,
- `F_8d3bba7425e7c98c50f52ca1b52d3735` int(11) default NULL,
- `F_320722549d1751cf3f247855f937b982` int(11) default NULL,
- `F_caf1a3dfb505ffed0d024130f58c5cfa` int(11) default NULL,
- `F_5737c6ec2e0716f3d8a7a5c4e0de0d9a` int(11) default NULL,
- `F_bc6dc48b743dc5d013b1abaebd2faed2` int(11) default NULL,
- `F_f2fc990265c712c49d51a18a32b39f0c` int(11) default NULL,
- `F_89f0fd5c927d466d6ec9a21b9ac34ffa` int(11) default NULL,
- `F_a666587afda6e89aec274a3657558a27` int(11) default NULL,
- `F_b83aac23b9528732c23cc7352950e880` int(11) default NULL,
- `F_cd00692c3bfe59267d5ecfac5310286c` int(11) default NULL,
- `F_6faa8040da20ef399b63a72d0e4ab575` int(11) default NULL,
- `F_fe73f687e5bc5280214e0486b273a5f9` int(11) default NULL
+ `F_c4ca4238a0b923820dcc509a6f75849b` int(11) DEFAULT NULL,
+ `F_c81e728d9d4c2f636f067f89cc14862c` int(11) DEFAULT NULL,
+ `F_eccbc87e4b5ce2fe28308fd9f2a7baf3` int(11) DEFAULT NULL,
+ `F_a87ff679a2f3e71d9181a67b7542122c` int(11) DEFAULT NULL,
+ `F_e4da3b7fbbce2345d7772b0674a318d5` int(11) DEFAULT NULL,
+ `F_1679091c5a880faf6fb5e6087eb1b2dc` int(11) DEFAULT NULL,
+ `F_8f14e45fceea167a5a36dedd4bea2543` int(11) DEFAULT NULL,
+ `F_c9f0f895fb98ab9159f51fd0297e236d` int(11) DEFAULT NULL,
+ `F_45c48cce2e2d7fbdea1afc51c7c6ad26` int(11) DEFAULT NULL,
+ `F_d3d9446802a44259755d38e6d163e820` int(11) DEFAULT NULL,
+ `F_6512bd43d9caa6e02c990b0a82652dca` int(11) DEFAULT NULL,
+ `F_c20ad4d76fe97759aa27a0c99bff6710` int(11) DEFAULT NULL,
+ `F_c51ce410c124a10e0db5e4b97fc2af39` int(11) DEFAULT NULL,
+ `F_aab3238922bcc25a6f606eb525ffdc56` int(11) DEFAULT NULL,
+ `F_9bf31c7ff062936a96d3c8bd1f8f2ff3` int(11) DEFAULT NULL,
+ `F_c74d97b01eae257e44aa9d5bade97baf` int(11) DEFAULT NULL,
+ `F_70efdf2ec9b086079795c442636b55fb` int(11) DEFAULT NULL,
+ `F_6f4922f45568161a8cdf4ad2299f6d23` int(11) DEFAULT NULL,
+ `F_1f0e3dad99908345f7439f8ffabdffc4` int(11) DEFAULT NULL,
+ `F_98f13708210194c475687be6106a3b84` int(11) DEFAULT NULL,
+ `F_3c59dc048e8850243be8079a5c74d079` int(11) DEFAULT NULL,
+ `F_b6d767d2f8ed5d21a44b0e5886680cb9` int(11) DEFAULT NULL,
+ `F_37693cfc748049e45d87b8c7d8b9aacd` int(11) DEFAULT NULL,
+ `F_1ff1de774005f8da13f42943881c655f` int(11) DEFAULT NULL,
+ `F_8e296a067a37563370ded05f5a3bf3ec` int(11) DEFAULT NULL,
+ `F_4e732ced3463d06de0ca9a15b6153677` int(11) DEFAULT NULL,
+ `F_02e74f10e0327ad868d138f2b4fdd6f0` int(11) DEFAULT NULL,
+ `F_33e75ff09dd601bbe69f351039152189` int(11) DEFAULT NULL,
+ `F_6ea9ab1baa0efb9e19094440c317e21b` int(11) DEFAULT NULL,
+ `F_34173cb38f07f89ddbebc2ac9128303f` int(11) DEFAULT NULL,
+ `F_c16a5320fa475530d9583c34fd356ef5` int(11) DEFAULT NULL,
+ `F_6364d3f0f495b6ab9dcf8d3b5c6e0b01` int(11) DEFAULT NULL,
+ `F_182be0c5cdcd5072bb1864cdee4d3d6e` int(11) DEFAULT NULL,
+ `F_e369853df766fa44e1ed0ff613f563bd` int(11) DEFAULT NULL,
+ `F_1c383cd30b7c298ab50293adfecb7b18` int(11) DEFAULT NULL,
+ `F_19ca14e7ea6328a42e0eb13d585e4c22` int(11) DEFAULT NULL,
+ `F_a5bfc9e07964f8dddeb95fc584cd965d` int(11) DEFAULT NULL,
+ `F_a5771bce93e200c36f7cd9dfd0e5deaa` int(11) DEFAULT NULL,
+ `F_d67d8ab4f4c10bf22aa353e27879133c` int(11) DEFAULT NULL,
+ `F_d645920e395fedad7bbbed0eca3fe2e0` int(11) DEFAULT NULL,
+ `F_3416a75f4cea9109507cacd8e2f2aefc` int(11) DEFAULT NULL,
+ `F_a1d0c6e83f027327d8461063f4ac58a6` int(11) DEFAULT NULL,
+ `F_17e62166fc8586dfa4d1bc0e1742c08b` int(11) DEFAULT NULL,
+ `F_f7177163c833dff4b38fc8d2872f1ec6` int(11) DEFAULT NULL,
+ `F_6c8349cc7260ae62e3b1396831a8398f` int(11) DEFAULT NULL,
+ `F_d9d4f495e875a2e075a1a4a6e1b9770f` int(11) DEFAULT NULL,
+ `F_67c6a1e7ce56d3d6fa748ab6d9af3fd7` int(11) DEFAULT NULL,
+ `F_642e92efb79421734881b53e1e1b18b6` int(11) DEFAULT NULL,
+ `F_f457c545a9ded88f18ecee47145a72c0` int(11) DEFAULT NULL,
+ `F_c0c7c76d30bd3dcaefc96f40275bdc0a` int(11) DEFAULT NULL,
+ `F_2838023a778dfaecdc212708f721b788` int(11) DEFAULT NULL,
+ `F_9a1158154dfa42caddbd0694a4e9bdc8` int(11) DEFAULT NULL,
+ `F_d82c8d1619ad8176d665453cfb2e55f0` int(11) DEFAULT NULL,
+ `F_a684eceee76fc522773286a895bc8436` int(11) DEFAULT NULL,
+ `F_b53b3a3d6ab90ce0268229151c9bde11` int(11) DEFAULT NULL,
+ `F_9f61408e3afb633e50cdf1b20de6f466` int(11) DEFAULT NULL,
+ `F_72b32a1f754ba1c09b3695e0cb6cde7f` int(11) DEFAULT NULL,
+ `F_66f041e16a60928b05a7e228a89c3799` int(11) DEFAULT NULL,
+ `F_093f65e080a295f8076b1c5722a46aa2` int(11) DEFAULT NULL,
+ `F_072b030ba126b2f4b2374f342be9ed44` int(11) DEFAULT NULL,
+ `F_7f39f8317fbdb1988ef4c628eba02591` int(11) DEFAULT NULL,
+ `F_44f683a84163b3523afe57c2e008bc8c` int(11) DEFAULT NULL,
+ `F_03afdbd66e7929b125f8597834fa83a4` int(11) DEFAULT NULL,
+ `F_ea5d2f1c4608232e07d3aa3d998e5135` int(11) DEFAULT NULL,
+ `F_fc490ca45c00b1249bbe3554a4fdf6fb` int(11) DEFAULT NULL,
+ `F_3295c76acbf4caaed33c36b1b5fc2cb1` int(11) DEFAULT NULL,
+ `F_735b90b4568125ed6c3f678819b6e058` int(11) DEFAULT NULL,
+ `F_a3f390d88e4c41f2747bfa2f1b5f87db` int(11) DEFAULT NULL,
+ `F_14bfa6bb14875e45bba028a21ed38046` int(11) DEFAULT NULL,
+ `F_7cbbc409ec990f19c78c75bd1e06f215` int(11) DEFAULT NULL,
+ `F_e2c420d928d4bf8ce0ff2ec19b371514` int(11) DEFAULT NULL,
+ `F_32bb90e8976aab5298d5da10fe66f21d` int(11) DEFAULT NULL,
+ `F_d2ddea18f00665ce8623e36bd4e3c7c5` int(11) DEFAULT NULL,
+ `F_ad61ab143223efbc24c7d2583be69251` int(11) DEFAULT NULL,
+ `F_d09bf41544a3365a46c9077ebb5e35c3` int(11) DEFAULT NULL,
+ `F_fbd7939d674997cdb4692d34de8633c4` int(11) DEFAULT NULL,
+ `F_28dd2c7955ce926456240b2ff0100bde` int(11) DEFAULT NULL,
+ `F_35f4a8d465e6e1edc05f3d8ab658c551` int(11) DEFAULT NULL,
+ `F_d1fe173d08e959397adf34b1d77e88d7` int(11) DEFAULT NULL,
+ `F_f033ab37c30201f73f142449d037028d` int(11) DEFAULT NULL,
+ `F_43ec517d68b6edd3015b3edc9a11367b` int(11) DEFAULT NULL,
+ `F_9778d5d219c5080b9a6a17bef029331c` int(11) DEFAULT NULL,
+ `F_fe9fc289c3ff0af142b6d3bead98a923` int(11) DEFAULT NULL,
+ `F_68d30a9594728bc39aa24be94b319d21` int(11) DEFAULT NULL,
+ `F_3ef815416f775098fe977004015c6193` int(11) DEFAULT NULL,
+ `F_93db85ed909c13838ff95ccfa94cebd9` int(11) DEFAULT NULL,
+ `F_c7e1249ffc03eb9ded908c236bd1996d` int(11) DEFAULT NULL,
+ `F_2a38a4a9316c49e5a833517c45d31070` int(11) DEFAULT NULL,
+ `F_7647966b7343c29048673252e490f736` int(11) DEFAULT NULL,
+ `F_8613985ec49eb8f757ae6439e879bb2a` int(11) DEFAULT NULL,
+ `F_54229abfcfa5649e7003b83dd4755294` int(11) DEFAULT NULL,
+ `F_92cc227532d17e56e07902b254dfad10` int(11) DEFAULT NULL,
+ `F_98dce83da57b0395e163467c9dae521b` int(11) DEFAULT NULL,
+ `F_f4b9ec30ad9f68f89b29639786cb62ef` int(11) DEFAULT NULL,
+ `F_812b4ba287f5ee0bc9d43bbf5bbe87fb` int(11) DEFAULT NULL,
+ `F_26657d5ff9020d2abefe558796b99584` int(11) DEFAULT NULL,
+ `F_e2ef524fbf3d9fe611d5a8e90fefdc9c` int(11) DEFAULT NULL,
+ `F_ed3d2c21991e3bef5e069713af9fa6ca` int(11) DEFAULT NULL,
+ `F_ac627ab1ccbdb62ec96e702f07f6425b` int(11) DEFAULT NULL,
+ `F_f899139df5e1059396431415e770c6dd` int(11) DEFAULT NULL,
+ `F_38b3eff8baf56627478ec76a704e9b52` int(11) DEFAULT NULL,
+ `F_ec8956637a99787bd197eacd77acce5e` int(11) DEFAULT NULL,
+ `F_6974ce5ac660610b44d9b9fed0ff9548` int(11) DEFAULT NULL,
+ `F_c9e1074f5b3f9fc8ea15d152add07294` int(11) DEFAULT NULL,
+ `F_65b9eea6e1cc6bb9f0cd2a47751a186f` int(11) DEFAULT NULL,
+ `F_f0935e4cd5920aa6c7c996a5ee53a70f` int(11) DEFAULT NULL,
+ `F_a97da629b098b75c294dffdc3e463904` int(11) DEFAULT NULL,
+ `F_a3c65c2974270fd093ee8a9bf8ae7d0b` int(11) DEFAULT NULL,
+ `F_2723d092b63885e0d7c260cc007e8b9d` int(11) DEFAULT NULL,
+ `F_5f93f983524def3dca464469d2cf9f3e` int(11) DEFAULT NULL,
+ `F_698d51a19d8a121ce581499d7b701668` int(11) DEFAULT NULL,
+ `F_7f6ffaa6bb0b408017b62254211691b5` int(11) DEFAULT NULL,
+ `F_73278a4a86960eeb576a8fd4c9ec6997` int(11) DEFAULT NULL,
+ `F_5fd0b37cd7dbbb00f97ba6ce92bf5add` int(11) DEFAULT NULL,
+ `F_2b44928ae11fb9384c4cf38708677c48` int(11) DEFAULT NULL,
+ `F_c45147dee729311ef5b5c3003946c48f` int(11) DEFAULT NULL,
+ `F_eb160de1de89d9058fcb0b968dbbbd68` int(11) DEFAULT NULL,
+ `F_5ef059938ba799aaa845e1c2e8a762bd` int(11) DEFAULT NULL,
+ `F_07e1cd7dca89a1678042477183b7ac3f` int(11) DEFAULT NULL,
+ `F_da4fb5c6e93e74d3df8527599fa62642` int(11) DEFAULT NULL,
+ `F_4c56ff4ce4aaf9573aa5dff913df997a` int(11) DEFAULT NULL,
+ `F_a0a080f42e6f13b3a2df133f073095dd` int(11) DEFAULT NULL,
+ `F_202cb962ac59075b964b07152d234b70` int(11) DEFAULT NULL,
+ `F_c8ffe9a587b126f152ed3d89a146b445` int(11) DEFAULT NULL,
+ `F_3def184ad8f4755ff269862ea77393dd` int(11) DEFAULT NULL,
+ `F_069059b7ef840f0c74a814ec9237b6ec` int(11) DEFAULT NULL,
+ `F_ec5decca5ed3d6b8079e2e7e7bacc9f2` int(11) DEFAULT NULL,
+ `F_76dc611d6ebaafc66cc0879c71b5db5c` int(11) DEFAULT NULL,
+ `F_d1f491a404d6854880943e5c3cd9ca25` int(11) DEFAULT NULL,
+ `F_9b8619251a19057cff70779273e95aa6` int(11) DEFAULT NULL,
+ `F_1afa34a7f984eeabdbb0a7d494132ee5` int(11) DEFAULT NULL,
+ `F_65ded5353c5ee48d0b7d48c591b8f430` int(11) DEFAULT NULL,
+ `F_9fc3d7152ba9336a670e36d0ed79bc43` int(11) DEFAULT NULL,
+ `F_02522a2b2726fb0a03bb19f2d8d9524d` int(11) DEFAULT NULL,
+ `F_7f1de29e6da19d22b51c68001e7e0e54` int(11) DEFAULT NULL,
+ `F_42a0e188f5033bc65bf8d78622277c4e` int(11) DEFAULT NULL,
+ `F_3988c7f88ebcb58c6ce932b957b6f332` int(11) DEFAULT NULL,
+ `F_013d407166ec4fa56eb1e1f8cbe183b9` int(11) DEFAULT NULL,
+ `F_e00da03b685a0dd18fb6a08af0923de0` int(11) DEFAULT NULL,
+ `F_1385974ed5904a438616ff7bdb3f7439` int(11) DEFAULT NULL,
+ `F_0f28b5d49b3020afeecd95b4009adf4c` int(11) DEFAULT NULL,
+ `F_a8baa56554f96369ab93e4f3bb068c22` int(11) DEFAULT NULL,
+ `F_903ce9225fca3e988c2af215d4e544d3` int(11) DEFAULT NULL,
+ `F_0a09c8844ba8f0936c20bd791130d6b6` int(11) DEFAULT NULL,
+ `F_2b24d495052a8ce66358eb576b8912c8` int(11) DEFAULT NULL,
+ `F_a5e00132373a7031000fd987a3c9f87b` int(11) DEFAULT NULL,
+ `F_8d5e957f297893487bd98fa830fa6413` int(11) DEFAULT NULL,
+ `F_47d1e990583c9c67424d369f3414728e` int(11) DEFAULT NULL,
+ `F_f2217062e9a397a1dca429e7d70bc6ca` int(11) DEFAULT NULL,
+ `F_7ef605fc8dba5425d6965fbd4c8fbe1f` int(11) DEFAULT NULL,
+ `F_a8f15eda80c50adb0e71943adc8015cf` int(11) DEFAULT NULL,
+ `F_37a749d808e46495a8da1e5352d03cae` int(11) DEFAULT NULL,
+ `F_b3e3e393c77e35a4a3f3cbd1e429b5dc` int(11) DEFAULT NULL,
+ `F_1d7f7abc18fcb43975065399b0d1e48e` int(11) DEFAULT NULL,
+ `F_2a79ea27c279e471f4d180b08d62b00a` int(11) DEFAULT NULL,
+ `F_1c9ac0159c94d8d0cbedc973445af2da` int(11) DEFAULT NULL,
+ `F_6c4b761a28b734fe93831e3fb400ce87` int(11) DEFAULT NULL,
+ `F_06409663226af2f3114485aa4e0a23b4` int(11) DEFAULT NULL,
+ `F_140f6969d5213fd0ece03148e62e461e` int(11) DEFAULT NULL,
+ `F_b73ce398c39f506af761d2277d853a92` int(11) DEFAULT NULL,
+ `F_bd4c9ab730f5513206b999ec0d90d1fb` int(11) DEFAULT NULL,
+ `F_82aa4b0af34c2313a562076992e50aa3` int(11) DEFAULT NULL,
+ `F_0777d5c17d4066b82ab86dff8a46af6f` int(11) DEFAULT NULL,
+ `F_fa7cdfad1a5aaf8370ebeda47a1ff1c3` int(11) DEFAULT NULL,
+ `F_9766527f2b5d3e95d4a733fcfb77bd7e` int(11) DEFAULT NULL,
+ `F_7e7757b1e12abcb736ab9a754ffb617a` int(11) DEFAULT NULL,
+ `F_5878a7ab84fb43402106c575658472fa` int(11) DEFAULT NULL,
+ `F_006f52e9102a8d3be2fe5614f42ba989` int(11) DEFAULT NULL,
+ `F_3636638817772e42b59d74cff571fbb3` int(11) DEFAULT NULL,
+ `F_149e9677a5989fd342ae44213df68868` int(11) DEFAULT NULL,
+ `F_a4a042cf4fd6bfb47701cbc8a1653ada` int(11) DEFAULT NULL,
+ `F_1ff8a7b5dc7a7d1f0ed65aaa29c04b1e` int(11) DEFAULT NULL,
+ `F_f7e6c85504ce6e82442c770f7c8606f0` int(11) DEFAULT NULL,
+ `F_bf8229696f7a3bb4700cfddef19fa23f` int(11) DEFAULT NULL,
+ `F_82161242827b703e6acf9c726942a1e4` int(11) DEFAULT NULL,
+ `F_38af86134b65d0f10fe33d30dd76442e` int(11) DEFAULT NULL,
+ `F_96da2f590cd7246bbde0051047b0d6f7` int(11) DEFAULT NULL,
+ `F_8f85517967795eeef66c225f7883bdcb` int(11) DEFAULT NULL,
+ `F_8f53295a73878494e9bc8dd6c3c7104f` int(11) DEFAULT NULL,
+ `F_045117b0e0a11a242b9765e79cbf113f` int(11) DEFAULT NULL,
+ `F_fc221309746013ac554571fbd180e1c8` int(11) DEFAULT NULL,
+ `F_4c5bde74a8f110656874902f07378009` int(11) DEFAULT NULL,
+ `F_cedebb6e872f539bef8c3f919874e9d7` int(11) DEFAULT NULL,
+ `F_6cdd60ea0045eb7a6ec44c54d29ed402` int(11) DEFAULT NULL,
+ `F_eecca5b6365d9607ee5a9d336962c534` int(11) DEFAULT NULL,
+ `F_9872ed9fc22fc182d371c3e9ed316094` int(11) DEFAULT NULL,
+ `F_31fefc0e570cb3860f2a6d4b38c6490d` int(11) DEFAULT NULL,
+ `F_9dcb88e0137649590b755372b040afad` int(11) DEFAULT NULL,
+ `F_a2557a7b2e94197ff767970b67041697` int(11) DEFAULT NULL,
+ `F_cfecdb276f634854f3ef915e2e980c31` int(11) DEFAULT NULL,
+ `F_0aa1883c6411f7873cb83dacb17b0afc` int(11) DEFAULT NULL,
+ `F_58a2fc6ed39fd083f55d4182bf88826d` int(11) DEFAULT NULL,
+ `F_bd686fd640be98efaae0091fa301e613` int(11) DEFAULT NULL,
+ `F_a597e50502f5ff68e3e25b9114205d4a` int(11) DEFAULT NULL,
+ `F_0336dcbab05b9d5ad24f4333c7658a0e` int(11) DEFAULT NULL,
+ `F_084b6fbb10729ed4da8c3d3f5a3ae7c9` int(11) DEFAULT NULL,
+ `F_85d8ce590ad8981ca2c8286f79f59954` int(11) DEFAULT NULL,
+ `F_0e65972dce68dad4d52d063967f0a705` int(11) DEFAULT NULL,
+ `F_84d9ee44e457ddef7f2c4f25dc8fa865` int(11) DEFAULT NULL,
+ `F_3644a684f98ea8fe223c713b77189a77` int(11) DEFAULT NULL,
+ `F_757b505cfd34c64c85ca5b5690ee5293` int(11) DEFAULT NULL,
+ `F_854d6fae5ee42911677c739ee1734486` int(11) DEFAULT NULL,
+ `F_e2c0be24560d78c5e599c2a9c9d0bbd2` int(11) DEFAULT NULL,
+ `F_274ad4786c3abca69fa097b85867d9a4` int(11) DEFAULT NULL,
+ `F_eae27d77ca20db309e056e3d2dcd7d69` int(11) DEFAULT NULL,
+ `F_7eabe3a1649ffa2b3ff8c02ebfd5659f` int(11) DEFAULT NULL,
+ `F_69adc1e107f7f7d035d7baf04342e1ca` int(11) DEFAULT NULL,
+ `F_091d584fced301b442654dd8c23b3fc9` int(11) DEFAULT NULL,
+ `F_b1d10e7bafa4421218a51b1e1f1b0ba2` int(11) DEFAULT NULL,
+ `F_6f3ef77ac0e3619e98159e9b6febf557` int(11) DEFAULT NULL,
+ `F_eb163727917cbba1eea208541a643e74` int(11) DEFAULT NULL,
+ `F_1534b76d325a8f591b52d302e7181331` int(11) DEFAULT NULL,
+ `F_979d472a84804b9f647bc185a877a8b5` int(11) DEFAULT NULL,
+ `F_ca46c1b9512a7a8315fa3c5a946e8265` int(11) DEFAULT NULL,
+ `F_3b8a614226a953a8cd9526fca6fe9ba5` int(11) DEFAULT NULL,
+ `F_45fbc6d3e05ebd93369ce542e8f2322d` int(11) DEFAULT NULL,
+ `F_63dc7ed1010d3c3b8269faf0ba7491d4` int(11) DEFAULT NULL,
+ `F_e96ed478dab8595a7dbda4cbcbee168f` int(11) DEFAULT NULL,
+ `F_c0e190d8267e36708f955d7ab048990d` int(11) DEFAULT NULL,
+ `F_ec8ce6abb3e952a85b8551ba726a1227` int(11) DEFAULT NULL,
+ `F_060ad92489947d410d897474079c1477` int(11) DEFAULT NULL,
+ `F_bcbe3365e6ac95ea2c0343a2395834dd` int(11) DEFAULT NULL,
+ `F_115f89503138416a242f40fb7d7f338e` int(11) DEFAULT NULL,
+ `F_13fe9d84310e77f13a6d184dbf1232f3` int(11) DEFAULT NULL,
+ `F_d1c38a09acc34845c6be3a127a5aacaf` int(11) DEFAULT NULL,
+ `F_9cfdf10e8fc047a44b08ed031e1f0ed1` int(11) DEFAULT NULL,
+ `F_705f2172834666788607efbfca35afb3` int(11) DEFAULT NULL,
+ `F_74db120f0a8e5646ef5a30154e9f6deb` int(11) DEFAULT NULL,
+ `F_57aeee35c98205091e18d1140e9f38cf` int(11) DEFAULT NULL,
+ `F_6da9003b743b65f4c0ccd295cc484e57` int(11) DEFAULT NULL,
+ `F_9b04d152845ec0a378394003c96da594` int(11) DEFAULT NULL,
+ `F_be83ab3ecd0db773eb2dc1b0a17836a1` int(11) DEFAULT NULL,
+ `F_e165421110ba03099a1c0393373c5b43` int(11) DEFAULT NULL,
+ `F_289dff07669d7a23de0ef88d2f7129e7` int(11) DEFAULT NULL,
+ `F_577ef1154f3240ad5b9b413aa7346a1e` int(11) DEFAULT NULL,
+ `F_01161aaa0b6d1345dd8fe4e481144d84` int(11) DEFAULT NULL,
+ `F_539fd53b59e3bb12d203f45a912eeaf2` int(11) DEFAULT NULL,
+ `F_ac1dd209cbcc5e5d1c6e28598e8cbbe8` int(11) DEFAULT NULL,
+ `F_555d6702c950ecb729a966504af0a635` int(11) DEFAULT NULL,
+ `F_335f5352088d7d9bf74191e006d8e24c` int(11) DEFAULT NULL,
+ `F_f340f1b1f65b6df5b5e3f94d95b11daf` int(11) DEFAULT NULL,
+ `F_e4a6222cdb5b34375400904f03d8e6a5` int(11) DEFAULT NULL,
+ `F_cb70ab375662576bd1ac5aaf16b3fca4` int(11) DEFAULT NULL,
+ `F_9188905e74c28e489b44e954ec0b9bca` int(11) DEFAULT NULL,
+ `F_0266e33d3f546cb5436a10798e657d97` int(11) DEFAULT NULL,
+ `F_38db3aed920cf82ab059bfccbd02be6a` int(11) DEFAULT NULL,
+ `F_3cec07e9ba5f5bb252d13f5f431e4bbb` int(11) DEFAULT NULL,
+ `F_621bf66ddb7c962aa0d22ac97d69b793` int(11) DEFAULT NULL,
+ `F_077e29b11be80ab57e1a2ecabb7da330` int(11) DEFAULT NULL,
+ `F_6c9882bbac1c7093bd25041881277658` int(11) DEFAULT NULL,
+ `F_19f3cd308f1455b3fa09a282e0d496f4` int(11) DEFAULT NULL,
+ `F_03c6b06952c750899bb03d998e631860` int(11) DEFAULT NULL,
+ `F_c24cd76e1ce41366a4bbe8a49b02a028` int(11) DEFAULT NULL,
+ `F_c52f1bd66cc19d05628bd8bf27af3ad6` int(11) DEFAULT NULL,
+ `F_fe131d7f5a6b38b23cc967316c13dae2` int(11) DEFAULT NULL,
+ `F_f718499c1c8cef6730f9fd03c8125cab` int(11) DEFAULT NULL,
+ `F_d96409bf894217686ba124d7356686c9` int(11) DEFAULT NULL,
+ `F_502e4a16930e414107ee22b6198c578f` int(11) DEFAULT NULL,
+ `F_cfa0860e83a4c3a763a7e62d825349f7` int(11) DEFAULT NULL,
+ `F_a4f23670e1833f3fdb077ca70bbd5d66` int(11) DEFAULT NULL,
+ `F_b1a59b315fc9a3002ce38bbe070ec3f5` int(11) DEFAULT NULL,
+ `F_36660e59856b4de58a219bcf4e27eba3` int(11) DEFAULT NULL,
+ `F_8c19f571e251e61cb8dd3612f26d5ecf` int(11) DEFAULT NULL,
+ `F_d6baf65e0b240ce177cf70da146c8dc8` int(11) DEFAULT NULL,
+ `F_e56954b4f6347e897f954495eab16a88` int(11) DEFAULT NULL,
+ `F_f7664060cc52bc6f3d620bcedc94a4b6` int(11) DEFAULT NULL,
+ `F_eda80a3d5b344bc40f3bc04f65b7a357` int(11) DEFAULT NULL,
+ `F_8f121ce07d74717e0b1f21d122e04521` int(11) DEFAULT NULL,
+ `F_06138bc5af6023646ede0e1f7c1eac75` int(11) DEFAULT NULL,
+ `F_39059724f73a9969845dfe4146c5660e` int(11) DEFAULT NULL,
+ `F_7f100b7b36092fb9b06dfb4fac360931` int(11) DEFAULT NULL,
+ `F_7a614fd06c325499f1680b9896beedeb` int(11) DEFAULT NULL,
+ `F_4734ba6f3de83d861c3176a6273cac6d` int(11) DEFAULT NULL,
+ `F_d947bf06a885db0d477d707121934ff8` int(11) DEFAULT NULL,
+ `F_63923f49e5241343aa7acb6a06a751e7` int(11) DEFAULT NULL,
+ `F_db8e1af0cb3aca1ae2d0018624204529` int(11) DEFAULT NULL,
+ `F_20f07591c6fcb220ffe637cda29bb3f6` int(11) DEFAULT NULL,
+ `F_07cdfd23373b17c6b337251c22b7ea57` int(11) DEFAULT NULL,
+ `F_d395771085aab05244a4fb8fd91bf4ee` int(11) DEFAULT NULL,
+ `F_92c8c96e4c37100777c7190b76d28233` int(11) DEFAULT NULL,
+ `F_e3796ae838835da0b6f6ea37bcf8bcb7` int(11) DEFAULT NULL,
+ `F_6a9aeddfc689c1d0e3b9ccc3ab651bc5` int(11) DEFAULT NULL,
+ `F_0f49c89d1e7298bb9930789c8ed59d48` int(11) DEFAULT NULL,
+ `F_46ba9f2a6976570b0353203ec4474217` int(11) DEFAULT NULL,
+ `F_0e01938fc48a2cfb5f2217fbfb00722d` int(11) DEFAULT NULL,
+ `F_16a5cdae362b8d27a1d8f8c7b78b4330` int(11) DEFAULT NULL,
+ `F_918317b57931b6b7a7d29490fe5ec9f9` int(11) DEFAULT NULL,
+ `F_48aedb8880cab8c45637abc7493ecddd` int(11) DEFAULT NULL,
+ `F_839ab46820b524afda05122893c2fe8e` int(11) DEFAULT NULL,
+ `F_f90f2aca5c640289d0a29417bcb63a37` int(11) DEFAULT NULL,
+ `F_9c838d2e45b2ad1094d42f4ef36764f6` int(11) DEFAULT NULL,
+ `F_1700002963a49da13542e0726b7bb758` int(11) DEFAULT NULL,
+ `F_53c3bce66e43be4f209556518c2fcb54` int(11) DEFAULT NULL,
+ `F_6883966fd8f918a4aa29be29d2c386fb` int(11) DEFAULT NULL,
+ `F_49182f81e6a13cf5eaa496d51fea6406` int(11) DEFAULT NULL,
+ `F_d296c101daa88a51f6ca8cfc1ac79b50` int(11) DEFAULT NULL,
+ `F_9fd81843ad7f202f26c1a174c7357585` int(11) DEFAULT NULL,
+ `F_26e359e83860db1d11b6acca57d8ea88` int(11) DEFAULT NULL,
+ `F_ef0d3930a7b6c95bd2b32ed45989c61f` int(11) DEFAULT NULL,
+ `F_94f6d7e04a4d452035300f18b984988c` int(11) DEFAULT NULL,
+ `F_34ed066df378efacc9b924ec161e7639` int(11) DEFAULT NULL,
+ `F_577bcc914f9e55d5e4e4f82f9f00e7d4` int(11) DEFAULT NULL,
+ `F_11b9842e0a271ff252c1903e7132cd68` int(11) DEFAULT NULL,
+ `F_37bc2f75bf1bcfe8450a1a41c200364c` int(11) DEFAULT NULL,
+ `F_496e05e1aea0a9c4655800e8a7b9ea28` int(11) DEFAULT NULL,
+ `F_b2eb7349035754953b57a32e2841bda5` int(11) DEFAULT NULL,
+ `F_8e98d81f8217304975ccb23337bb5761` int(11) DEFAULT NULL,
+ `F_a8c88a0055f636e4a163a5e3d16adab7` int(11) DEFAULT NULL,
+ `F_eddea82ad2755b24c4e168c5fc2ebd40` int(11) DEFAULT NULL,
+ `F_06eb61b839a0cefee4967c67ccb099dc` int(11) DEFAULT NULL,
+ `F_9dfcd5e558dfa04aaf37f137a1d9d3e5` int(11) DEFAULT NULL,
+ `F_950a4152c2b4aa3ad78bdd6b366cc179` int(11) DEFAULT NULL,
+ `F_158f3069a435b314a80bdcb024f8e422` int(11) DEFAULT NULL,
+ `F_758874998f5bd0c393da094e1967a72b` int(11) DEFAULT NULL,
+ `F_ad13a2a07ca4b7642959dc0c4c740ab6` int(11) DEFAULT NULL,
+ `F_3fe94a002317b5f9259f82690aeea4cd` int(11) DEFAULT NULL,
+ `F_5b8add2a5d98b1a652ea7fd72d942dac` int(11) DEFAULT NULL,
+ `F_432aca3a1e345e339f35a30c8f65edce` int(11) DEFAULT NULL,
+ `F_8d3bba7425e7c98c50f52ca1b52d3735` int(11) DEFAULT NULL,
+ `F_320722549d1751cf3f247855f937b982` int(11) DEFAULT NULL,
+ `F_caf1a3dfb505ffed0d024130f58c5cfa` int(11) DEFAULT NULL,
+ `F_5737c6ec2e0716f3d8a7a5c4e0de0d9a` int(11) DEFAULT NULL,
+ `F_bc6dc48b743dc5d013b1abaebd2faed2` int(11) DEFAULT NULL,
+ `F_f2fc990265c712c49d51a18a32b39f0c` int(11) DEFAULT NULL,
+ `F_89f0fd5c927d466d6ec9a21b9ac34ffa` int(11) DEFAULT NULL,
+ `F_a666587afda6e89aec274a3657558a27` int(11) DEFAULT NULL,
+ `F_b83aac23b9528732c23cc7352950e880` int(11) DEFAULT NULL,
+ `F_cd00692c3bfe59267d5ecfac5310286c` int(11) DEFAULT NULL,
+ `F_6faa8040da20ef399b63a72d0e4ab575` int(11) DEFAULT NULL,
+ `F_fe73f687e5bc5280214e0486b273a5f9` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1508,7 +1509,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1552,14 +1553,14 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
@@ -1587,14 +1588,14 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
@@ -1658,7 +1659,7 @@ mysqldump: Couldn't find table: "T_"
test_sequence
------ Testing with illegal database names ------
mysqldump: Got error: 1049: Unknown database 'mysqldump_test_d' when selecting the database
-mysqldump: Got error: 1102: Incorrect database name 'mysqld\ump_test_db' when selecting the database
+mysqldump: Got error: 1049: Unknown database 'mysqld\ump_test_db' when selecting the database
drop table t1, t2, t3;
drop database mysqldump_test_db;
use test;
@@ -1758,9 +1759,9 @@ bla 1002
show create table `t1`;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1_name` varchar(255) default NULL,
- `t1_id` int(10) unsigned NOT NULL auto_increment,
- PRIMARY KEY (`t1_id`),
+ `t1_name` varchar(255) DEFAULT NULL,
+ `t1_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`t1_id`),
KEY `t1_name` (`t1_name`)
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
DROP TABLE `t1`;
@@ -1772,9 +1773,9 @@ bla 1002
show create table `t1`;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1_name` varchar(255) default NULL,
- `t1_id` int(10) unsigned NOT NULL auto_increment,
- PRIMARY KEY (`t1_id`),
+ `t1_name` varchar(255) DEFAULT NULL,
+ `t1_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`t1_id`),
KEY `t1_name` (`t1_name`)
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
drop table `t1`;
@@ -1799,21 +1800,21 @@ DROP TABLE IF EXISTS `t3`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t3` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
@@ -1848,7 +1849,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1884,10 +1885,10 @@ DROP TABLE IF EXISTS "t1";
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE "t1" (
- "a b" int(11) NOT NULL default '0',
- "c""d" int(11) NOT NULL default '0',
- "e`f" int(11) NOT NULL default '0',
- PRIMARY KEY ("a b","c""d","e`f")
+ "a b" int(11) NOT NULL DEFAULT '0',
+ "c""d" int(11) NOT NULL DEFAULT '0',
+ "e`f" int(11) NOT NULL DEFAULT '0',
+ PRIMARY KEY ("a b","c""d","e`f")
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1918,10 +1919,10 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a b` int(11) NOT NULL default '0',
- `c"d` int(11) NOT NULL default '0',
- `e``f` int(11) NOT NULL default '0',
- PRIMARY KEY (`a b`,`c"d`,`e``f`)
+ `a b` int(11) NOT NULL DEFAULT '0',
+ `c"d` int(11) NOT NULL DEFAULT '0',
+ `e``f` int(11) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`a b`,`c"d`,`e``f`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1972,7 +1973,7 @@ DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` varchar(30) default NULL,
+ `a` varchar(30) DEFAULT NULL,
KEY `a` (`a`(5))
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1984,15 +1985,27 @@ INSERT INTO `t2` VALUES ('alfred'),('angie'),('bingo'),('waffle'),('lemon');
UNLOCK TABLES;
DROP TABLE IF EXISTS `v2`;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v2` (
`a` varchar(30)
) ENGINE=MyISAM */;
-/*!50001 DROP TABLE `v2`*/;
+SET character_set_client = @saved_cs_client;
+/*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
-/*!50001 VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where (`t2`.`a` like _latin1'a%') */
+/*!50001 VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where (`t2`.`a` like 'a%') */
/*!50002 WITH CASCADED CHECK OPTION */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2056,7 +2069,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2066,14 +2079,26 @@ LOCK TABLES `t1` WRITE;
UNLOCK TABLES;
DROP TABLE IF EXISTS `v1`;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v1` (
`a` int(11)
) ENGINE=MyISAM */;
-/*!50001 DROP TABLE `v1`*/;
+SET character_set_client = @saved_cs_client;
+/*!50001 DROP TABLE IF EXISTS `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v1` AS select `t1`.`a` AS `a` from `t1` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2116,7 +2141,7 @@ DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` varchar(30) default NULL,
+ `a` varchar(30) DEFAULT NULL,
KEY `a` (`a`(5))
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2128,15 +2153,27 @@ INSERT INTO `t2` VALUES ('alfred'),('angie'),('bingo'),('waffle'),('lemon');
UNLOCK TABLES;
DROP TABLE IF EXISTS `v2`;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v2` (
`a` varchar(30)
) ENGINE=MyISAM */;
-/*!50001 DROP TABLE `v2`*/;
+SET character_set_client = @saved_cs_client;
+/*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
-/*!50001 VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where (`t2`.`a` like _latin1'a%') */
+/*!50001 VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where (`t2`.`a` like 'a%') */
/*!50002 WITH CASCADED CHECK OPTION */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2171,7 +2208,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` char(10) default NULL
+ `a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2217,9 +2254,9 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL,
- `b` int(11) default NULL,
- `c` varchar(30) default NULL
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL,
+ `c` varchar(30) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2230,38 +2267,74 @@ INSERT INTO `t1` VALUES (1,2,'one'),(2,4,'two'),(3,6,'three');
UNLOCK TABLES;
DROP TABLE IF EXISTS `v1`;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v1` (
`a` int(11),
`b` int(11),
`c` varchar(30)
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `v2`;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v2` (
`a` int(11)
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `v3`;
/*!50001 DROP VIEW IF EXISTS `v3`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v3` (
`a` int(11),
`b` int(11),
`c` varchar(30)
) ENGINE=MyISAM */;
-/*!50001 DROP TABLE `v1`*/;
+SET character_set_client = @saved_cs_client;
+/*!50001 DROP TABLE IF EXISTS `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v1` AS select `v3`.`a` AS `a`,`v3`.`b` AS `b`,`v3`.`c` AS `c` from `v3` where (`v3`.`b` in (1,2,3,4,5,6,7)) */;
-/*!50001 DROP TABLE `v2`*/;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v2` AS select `v3`.`a` AS `a` from (`v3` join `v1`) where ((`v1`.`a` = `v3`.`a`) and (`v3`.`b` = 3)) limit 1 */;
-/*!50001 DROP TABLE `v3`*/;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP TABLE IF EXISTS `v3`*/;
/*!50001 DROP VIEW IF EXISTS `v3`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v3` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b`,`t1`.`c` AS `c` from `t1` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2304,21 +2377,21 @@ end if;
end|
set sql_mode=default|
show triggers like "t1";
-Trigger Event Table Statement Timing Created sql_mode Definer
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 begin
if new.a > 10 then
set new.a := 10;
set new.a := 11;
end if;
-end BEFORE 0000-00-00 00:00:00 root@localhost
+end BEFORE 0000-00-00 00:00:00 root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg2 UPDATE t1 begin
if old.a % 2 = 0 then set new.b := 12; end if;
-end BEFORE 0000-00-00 00:00:00 root@localhost
+end BEFORE 0000-00-00 00:00:00 root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg3 UPDATE t1 begin
if new.a = -1 then
set @fired:= "Yes";
end if;
-end AFTER 0000-00-00 00:00:00 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost
+end AFTER 0000-00-00 00:00:00 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
INSERT INTO t1 (a) VALUES (1),(2),(3),(22);
update t1 set a = 4 where a=3;
@@ -2340,8 +2413,8 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL,
- `b` bigint(20) default NULL
+ `a` int(11) DEFAULT NULL,
+ `b` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2350,37 +2423,69 @@ LOCK TABLES `t1` WRITE;
INSERT INTO `t1` VALUES (1,NULL),(2,NULL),(4,NULL),(11,NULL);
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
UNLOCK TABLES;
-
-/*!50003 SET @SAVE_SQL_MODE=@@SQL_MODE*/;
-
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
-/*!50003 SET SESSION SQL_MODE="" */;;
-/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `trg1` BEFORE INSERT ON `t1` FOR EACH ROW begin
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 trigger trg1 before insert on t1 for each row
+begin
if new.a > 10 then
set new.a := 10;
set new.a := 11;
end if;
end */;;
-
-/*!50003 SET SESSION SQL_MODE="" */;;
-/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `trg2` BEFORE UPDATE ON `t1` FOR EACH ROW begin
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 trigger trg2 before update on t1 for each row begin
if old.a % 2 = 0 then set new.b := 12; end if;
end */;;
-
-/*!50003 SET SESSION SQL_MODE="STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER" */;;
-/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `trg3` AFTER UPDATE ON `t1` FOR EACH ROW begin
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 trigger trg3 after update on t1 for each row
+begin
if new.a = -1 then
set @fired:= "Yes";
end if;
end */;;
-
DELIMITER ;
-/*!50003 SET SESSION SQL_MODE=@SAVE_SQL_MODE*/;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2388,19 +2493,26 @@ LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
UNLOCK TABLES;
-
-/*!50003 SET @SAVE_SQL_MODE=@@SQL_MODE*/;
-
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER' */ ;
DELIMITER ;;
-/*!50003 SET SESSION SQL_MODE="STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER" */;;
-/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `trg4` BEFORE INSERT ON `t2` FOR EACH ROW begin
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 trigger trg4 before insert on t2 for each row
+begin
if new.a > 10 then
set @fired:= "No";
end if;
end */;;
-
DELIMITER ;
-/*!50003 SET SESSION SQL_MODE=@SAVE_SQL_MODE*/;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2430,8 +2542,8 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL,
- `b` bigint(20) default NULL
+ `a` int(11) DEFAULT NULL,
+ `b` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2444,7 +2556,7 @@ DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2468,26 +2580,26 @@ Tables_in_test
t1
t2
show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 begin
if new.a > 10 then
set new.a := 10;
set new.a := 11;
end if;
-end BEFORE # root@localhost
+end BEFORE # root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg2 UPDATE t1 begin
if old.a % 2 = 0 then set new.b := 12; end if;
-end BEFORE # root@localhost
+end BEFORE # root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg3 UPDATE t1 begin
if new.a = -1 then
set @fired:= "Yes";
end if;
-end AFTER # STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost
+end AFTER # STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
trg4 INSERT t2 begin
if new.a > 10 then
set @fired:= "No";
end if;
-end BEFORE # STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost
+end BEFORE # STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
DROP TABLE t1, t2;
#
# Bug#9136 my_print_defaults changed behaviour between 4.1.7 and 4.1.10a
@@ -2518,9 +2630,9 @@ SELECT * FROM `test2`;
a2
1
SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
testref INSERT test1 BEGIN
-INSERT INTO test2 SET a2 = NEW.a1; END BEFORE NULL root@localhost
+INSERT INTO test2 SET a2 = NEW.a1; END BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
SELECT * FROM `test1`;
a1
1
@@ -2544,7 +2656,7 @@ INSERT INTO t1 VALUES(1), (2), (3), (4), (5);
CREATE FUNCTION `bug9056_func1`(a INT, b INT) RETURNS int(11) RETURN a+b //
CREATE PROCEDURE `bug9056_proc1`(IN a INT, IN b INT, OUT c INT)
BEGIN SELECT a+b INTO c; end //
-create function bug9056_func2(f1 char binary) returns char binary
+create function bug9056_func2(f1 char binary) returns char
begin
set f1= concat( 'hello', f1 );
return f1;
@@ -2575,7 +2687,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `id` int(11) default NULL
+ `id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2584,38 +2696,96 @@ LOCK TABLES `t1` WRITE;
INSERT INTO `t1` VALUES (1),(2),(3),(4),(5);
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
UNLOCK TABLES;
+/*!50003 DROP FUNCTION IF EXISTS `bug9056_func1` */;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
-/*!50003 DROP FUNCTION IF EXISTS `bug9056_func1` */;;
-/*!50003 SET SESSION SQL_MODE=""*/;;
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 FUNCTION `bug9056_func1`(a INT, b INT) RETURNS int(11)
RETURN a+b */;;
-/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
-/*!50003 DROP FUNCTION IF EXISTS `bug9056_func2` */;;
-/*!50003 SET SESSION SQL_MODE=""*/;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+/*!50003 DROP FUNCTION IF EXISTS `bug9056_func2` */;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 FUNCTION `bug9056_func2`(f1 char binary) RETURNS char(1) CHARSET latin1
begin
set f1= concat( 'hello', f1 );
return f1;
end */;;
-/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
-/*!50003 DROP PROCEDURE IF EXISTS `a'b` */;;
-/*!50003 SET SESSION SQL_MODE="REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI"*/;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+/*!50003 DROP PROCEDURE IF EXISTS `a'b` */;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = 'REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI' */ ;
+DELIMITER ;;
/*!50003 CREATE*/ /*!50020 DEFINER="root"@"localhost"*/ /*!50003 PROCEDURE "a'b"()
select 1 */;;
-/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
-/*!50003 DROP PROCEDURE IF EXISTS `bug9056_proc1` */;;
-/*!50003 SET SESSION SQL_MODE=""*/;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+/*!50003 DROP PROCEDURE IF EXISTS `bug9056_proc1` */;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `bug9056_proc1`(IN a INT, IN b INT, OUT c INT)
BEGIN SELECT a+b INTO c; end */;;
-/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
-/*!50003 DROP PROCEDURE IF EXISTS `bug9056_proc2` */;;
-/*!50003 SET SESSION SQL_MODE=""*/;;
+DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
+/*!50003 DROP PROCEDURE IF EXISTS `bug9056_proc2` */;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
+DELIMITER ;;
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `bug9056_proc2`(OUT a INT)
BEGIN
select sum(id) from t1 into a;
END */;;
-/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2668,7 +2838,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `d` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `d` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY `d` (`d`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2705,7 +2875,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `d` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `d` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY `d` (`d`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2758,7 +2928,7 @@ DROP TABLE IF EXISTS "t1 test";
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE "t1 test" (
- "a1" int(11) default NULL
+ "a1" int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2767,21 +2937,27 @@ LOCK TABLES "t1 test" WRITE;
INSERT INTO "t1 test" VALUES (1),(2),(3);
/*!40000 ALTER TABLE "t1 test" ENABLE KEYS */;
UNLOCK TABLES;
-
-/*!50003 SET @SAVE_SQL_MODE=@@SQL_MODE*/;
-
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
-/*!50003 SET SESSION SQL_MODE="" */;;
-/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `test trig` BEFORE INSERT ON `t1 test` FOR EACH ROW BEGIN
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `test trig` BEFORE INSERT ON `t1 test` FOR EACH ROW BEGIN
INSERT INTO `t2 test` SET a2 = NEW.a1; END */;;
-
DELIMITER ;
-/*!50003 SET SESSION SQL_MODE=@SAVE_SQL_MODE*/;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
DROP TABLE IF EXISTS "t2 test";
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE "t2 test" (
- "a2" int(11) default NULL
+ "a2" int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2835,9 +3011,9 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL,
- `b` varchar(32) default NULL,
- `c` varchar(32) default NULL
+ `a` int(11) DEFAULT NULL,
+ `b` varchar(32) DEFAULT NULL,
+ `c` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2848,42 +3024,78 @@ INSERT INTO `t1` VALUES (1,'first value','xxxx'),(2,'second value','tttt'),(3,'t
UNLOCK TABLES;
DROP TABLE IF EXISTS `v0`;
/*!50001 DROP VIEW IF EXISTS `v0`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v0` (
`a` int(11),
`b` varchar(32),
`c` varchar(32)
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `v1`;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v1` (
`a` int(11),
`b` varchar(32),
`c` varchar(32)
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `v2`;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v2` (
`a` int(11),
`b` varchar(32),
`c` varchar(32)
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
USE `test`;
-/*!50001 DROP TABLE `v0`*/;
+/*!50001 DROP TABLE IF EXISTS `v0`*/;
/*!50001 DROP VIEW IF EXISTS `v0`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v0` AS select `v1`.`a` AS `a`,`v1`.`b` AS `b`,`v1`.`c` AS `c` from `v1` */;
-/*!50001 DROP TABLE `v1`*/;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP TABLE IF EXISTS `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v1` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b`,`t1`.`c` AS `c` from `t1` */;
-/*!50001 DROP TABLE `v2`*/;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v2` AS select `v0`.`a` AS `a`,`v0`.`b` AS `b`,`v0`.`c` AS `c` from `v0` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2930,7 +3142,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -2938,17 +3150,25 @@ LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
UNLOCK TABLES;
-
-/*!50003 SET @SAVE_SQL_MODE=@@SQL_MODE*/;
-
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = 'IGNORE_SPACE' */ ;
DELIMITER ;;
-/*!50003 SET SESSION SQL_MODE="IGNORE_SPACE" */;;
-/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `tr1` BEFORE INSERT ON `t1` FOR EACH ROW BEGIN
+/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER tr1 BEFORE INSERT ON t1
+FOR EACH ROW
+BEGIN
SET new.a = 0;
END */;;
-
DELIMITER ;
-/*!50003 SET SESSION SQL_MODE=@SAVE_SQL_MODE*/;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -2981,7 +3201,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` binary(1) default NULL,
+ `a` binary(1) DEFAULT NULL,
`b` blob
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3016,7 +3236,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` binary(1) default NULL,
+ `a` binary(1) DEFAULT NULL,
`b` blob
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3082,12 +3302,12 @@ drop trigger tr1;
drop trigger tr2;
drop table t1, t2;
show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
tr1 INSERT t1 set
-new.created=now() BEFORE # root@localhost
+new.created=now() BEFORE # root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
tr2 INSERT t1 begin
insert into t2 set b=new.a and created=new.created;
-end AFTER # root@localhost
+end AFTER # root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
drop trigger tr1;
drop trigger tr2;
drop table t1, t2;
@@ -3100,16 +3320,34 @@ insert into t values(5, 51);
create view v1 as select qty, price, qty*price as value from t;
create view v2 as select qty from v1;
mysqldump {
-/*!50001 DROP TABLE `v1`*/;
+/*!50001 DROP TABLE IF EXISTS `v1`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v1` AS select `t`.`qty` AS `qty`,`t`.`price` AS `price`,(`t`.`qty` * `t`.`price`) AS `value` from `t` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
} mysqldump {
-/*!50001 DROP TABLE `v2`*/;
+/*!50001 DROP TABLE IF EXISTS `v2`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v2` AS select `v1`.`qty` AS `qty` from `v1` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
} mysqldump
drop view v1;
@@ -3124,13 +3362,13 @@ return 42 */|
/*!50003 CREATE PROCEDURE `p`()
select 42 */|
show create function f;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
f CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS bigint(20)
-return 42
+return 42 latin1 latin1_swedish_ci latin1_swedish_ci
show create procedure p;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
p CREATE DEFINER=`root`@`localhost` PROCEDURE `p`()
-select 42
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
drop function f;
drop procedure p;
#
@@ -3177,7 +3415,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `id` int(11) default NULL
+ `id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3188,16 +3426,28 @@ INSERT INTO `t1` VALUES (1232131),(4711),(3231),(815);
UNLOCK TABLES;
DROP TABLE IF EXISTS `v1`;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v1` (
`id` int(11)
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
USE `mysqldump_test_db`;
-/*!50001 DROP TABLE `v1`*/;
+/*!50001 DROP TABLE IF EXISTS `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v1` AS select `t1`.`id` AS `id` from `t1` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -3227,8 +3477,8 @@ USE `mysqldump_tables`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `basetable` (
- `id` bigint(20) unsigned NOT NULL auto_increment,
- `tag` varchar(64) default NULL,
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
+ `tag` varchar(64) DEFAULT NULL,
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3236,17 +3486,29 @@ CREATE TABLE `basetable` (
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqldump_views` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `mysqldump_views`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `nasishnasifu` (
`id` bigint(20) unsigned
) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
USE `mysqldump_tables`;
USE `mysqldump_views`;
-/*!50001 DROP TABLE `nasishnasifu`*/;
+/*!50001 DROP TABLE IF EXISTS `nasishnasifu`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `nasishnasifu` AS select `mysqldump_tables`.`basetable`.`id` AS `id` from `mysqldump_tables`.`basetable` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
drop view nasishnasifu;
drop database mysqldump_views;
drop table mysqldump_tables.basetable;
@@ -3292,26 +3554,15 @@ use test;
create user mysqltest_1@localhost;
create table t1(a int, b varchar(34));
reset master;
-mysqldump: Couldn't execute 'FLUSH TABLES': Access denied; you need the RELOAD privilege for this operation (1227)
-mysqldump: Couldn't execute 'FLUSH TABLES': Access denied; you need the RELOAD privilege for this operation (1227)
+mysqldump: Couldn't execute 'FLUSH /*!40101 LOCAL */ TABLES': Access denied; you need the RELOAD privilege for this operation (1227)
+mysqldump: Couldn't execute 'FLUSH /*!40101 LOCAL */ TABLES': Access denied; you need the RELOAD privilege for this operation (1227)
grant RELOAD on *.* to mysqltest_1@localhost;
mysqldump: Couldn't execute 'SHOW MASTER STATUS': Access denied; you need the SUPER,REPLICATION CLIENT privilege for this operation (1227)
mysqldump: Couldn't execute 'SHOW MASTER STATUS': Access denied; you need the SUPER,REPLICATION CLIENT privilege for this operation (1227)
grant REPLICATION CLIENT on *.* to mysqltest_1@localhost;
-CHANGE MASTER TO MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=#;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `t1` (
- `a` int(11) default NULL,
- `b` varchar(34) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
drop table t1;
drop user mysqltest_1@localhost;
#
-# Bug#21527 mysqldump incorrectly tries to LOCK TABLES on the
-# information_schema database.
-#
# Bug#21424 mysqldump failing to export/import views
#
create database mysqldump_myDB;
@@ -3351,6 +3602,39 @@ drop user myDB_User@localhost;
drop database mysqldump_myDB;
use test;
#
+# Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the
+# information_schema database.
+#
+# Bug #33762: mysqldump can not dump INFORMATION_SCHEMA
+#
+DROP TABLE IF EXISTS `TABLES`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TEMPORARY TABLE `TABLES` (
+ `TABLE_CATALOG` varchar(512) DEFAULT NULL,
+ `TABLE_SCHEMA` varchar(64) NOT NULL DEFAULT '',
+ `TABLE_NAME` varchar(64) NOT NULL DEFAULT '',
+ `TABLE_TYPE` varchar(64) NOT NULL DEFAULT '',
+ `ENGINE` varchar(64) DEFAULT NULL,
+ `VERSION` bigint(21) unsigned DEFAULT NULL,
+ `ROW_FORMAT` varchar(10) DEFAULT NULL,
+ `TABLE_ROWS` bigint(21) unsigned DEFAULT NULL,
+ `AVG_ROW_LENGTH` bigint(21) unsigned DEFAULT NULL,
+ `DATA_LENGTH` bigint(21) unsigned DEFAULT NULL,
+ `MAX_DATA_LENGTH` bigint(21) unsigned DEFAULT NULL,
+ `INDEX_LENGTH` bigint(21) unsigned DEFAULT NULL,
+ `DATA_FREE` bigint(21) unsigned DEFAULT NULL,
+ `AUTO_INCREMENT` bigint(21) unsigned DEFAULT NULL,
+ `CREATE_TIME` datetime DEFAULT NULL,
+ `UPDATE_TIME` datetime DEFAULT NULL,
+ `CHECK_TIME` datetime DEFAULT NULL,
+ `TABLE_COLLATION` varchar(32) DEFAULT NULL,
+ `CHECKSUM` bigint(21) unsigned DEFAULT NULL,
+ `CREATE_OPTIONS` varchar(255) DEFAULT NULL,
+ `TABLE_COMMENT` varchar(80) NOT NULL DEFAULT ''
+) ENGINE=MEMORY DEFAULT CHARSET=utf8;
+/*!40101 SET character_set_client = @saved_cs_client */;
+#
# Bug#19745 mysqldump --xml produces invalid xml
#
DROP TABLE IF EXISTS t1;
@@ -3397,14 +3681,14 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t2`,`t3`);
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `t2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t2` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3416,7 +3700,7 @@ DROP TABLE IF EXISTS `t3`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t3` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3450,11 +3734,11 @@ create function f2() returns int return f1();
create view v3 as select bug23491_original.f1();
use bug23491_restore;
show create view bug23491_restore.v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `f1`() AS `f1()`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `f1`() AS `f1()` latin1 latin1_swedish_ci
show create view bug23491_restore.v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `bug23491_original`.`f1`() AS `bug23491_original.f1()`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `bug23491_original`.`f1`() AS `bug23491_original.f1()` latin1 latin1_swedish_ci
drop database bug23491_original;
drop database bug23491_restore;
use test;
@@ -3470,21 +3754,25 @@ grant all privileges on mysqldump_test_db.* to user1;
grant all privileges on mysqldump_test_db.* to user2;
create procedure mysqldump_test_db.sp1() select 'hello';
-/*!50003 SET @OLD_SQL_MODE=@@SQL_MODE*/;
-DELIMITER ;;
-
-- insufficient privileges to SHOW CREATE PROCEDURE `sp1`
-- does user2 have permissions on mysql.proc?
-DELIMITER ;
-
-/*!50003 SET @OLD_SQL_MODE=@@SQL_MODE*/;
+/*!50003 SET @saved_cs_client = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client = latin1 */ ;
+/*!50003 SET character_set_results = latin1 */ ;
+/*!50003 SET collation_connection = latin1_swedish_ci */ ;
+/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
+/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
-/*!50003 SET SESSION SQL_MODE=""*/;;
/*!50003 CREATE*/ /*!50020 DEFINER=`user1`@`%`*/ /*!50003 PROCEDURE `sp1`()
select 'hello' */;;
-/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
DELIMITER ;
+/*!50003 SET sql_mode = @saved_sql_mode */ ;
+/*!50003 SET character_set_client = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection = @saved_col_connection */ ;
drop procedure sp1;
drop user user1;
drop user user2;
@@ -3497,7 +3785,7 @@ INSERT INTO t1 SET c1=11, c2=REPEAT('q',509);
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `c1` int(11) default NULL,
+ `c1` int(11) DEFAULT NULL,
`c2` longblob
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3581,7 +3869,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `id` int(11) default NULL
+ `id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -3591,14 +3879,26 @@ LOCK TABLES `t1` WRITE;
UNLOCK TABLES;
DROP TABLE IF EXISTS `v2`;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
/*!50001 CREATE TABLE `v2` (
`c` int(11)
) ENGINE=MyISAM */;
-/*!50001 DROP TABLE `v2`*/;
+SET character_set_client = @saved_cs_client;
+/*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
/*!50001 VIEW `v2` AS select `t1`.`id` AS `c` from `t1` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -3624,7 +3924,7 @@ CREATE TABLE `straße` ( f1 INT );
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `straße`;
CREATE TABLE `straße` (
- `f1` int(11) default NULL
+ `f1` int(11) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `straße` WRITE;
@@ -3646,7 +3946,7 @@ UNLOCK TABLES;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `strae`;
CREATE TABLE `strae` (
- `f1` int(11) default NULL
+ `f1` int(11) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `strae` WRITE;
@@ -3670,7 +3970,7 @@ CREATE TABLE `כדשגכחךלדגכחשךדגחכךלדגכ` ( f1 INT );
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `כדשגכחךלדגכחשךדגחכךלדגכ`;
CREATE TABLE `כדשגכחךלדגכחשךדגחכךלדגכ` (
- `f1` int(11) default NULL
+ `f1` int(11) DEFAULT NULL
) TYPE=MyISAM;
LOCK TABLES `כדשגכחךלדגכחשךדגחכךלדגכ` WRITE;
@@ -3692,7 +3992,574 @@ UNLOCK TABLES;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE `כדשגכחךלדגכחשךדגחכךלדגכ`;
SET NAMES latin1;
-SET @@GLOBAL.CONCURRENT_INSERT = @OLD_CONCURRENT_INSERT;
#
# End of 5.0 tests
#
+drop table if exists t1;
+CREATE TABLE t1(a int, b int);
+INSERT INTO t1 VALUES (1,1);
+INSERT INTO t1 VALUES (2,3);
+INSERT INTO t1 VALUES (3,4), (4,5);
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+DROP TABLE IF EXISTS `t1`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+LOCK TABLES `t1` WRITE;
+/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
+REPLACE INTO `t1` VALUES (1,1),(2,3),(3,4),(4,5);
+/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
+UNLOCK TABLES;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+DROP TABLE t1;
+create table t1 (a text , b text);
+create table t2 (a text , b text);
+insert t1 values ("Duck, Duck", "goose");
+insert t1 values ("Duck, Duck", "pidgeon");
+insert t2 values ("We the people", "in order to perform");
+insert t2 values ("a more perfect", "union");
+select * from t1;
+a b
+Duck, Duck goose
+Duck, Duck pidgeon
+select * from t2;
+a b
+We the people in order to perform
+a more perfect union
+test.t1: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
+test.t2: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
+select * from t1;
+a b
+Duck, Duck goose
+Duck, Duck pidgeon
+Duck, Duck goose
+Duck, Duck pidgeon
+select * from t2;
+a b
+We the people in order to perform
+a more perfect union
+We the people in order to perform
+a more perfect union
+create table words(a varchar(255));
+create table words2(b varchar(255));
+select * from t1;
+a b
+Duck, Duck goose
+Duck, Duck pidgeon
+Duck, Duck goose
+Duck, Duck pidgeon
+Duck, Duck goose
+Duck, Duck pidgeon
+select * from t2;
+a b
+We the people in order to perform
+a more perfect union
+We the people in order to perform
+a more perfect union
+We the people in order to perform
+a more perfect union
+select * from words;
+a
+Aarhus
+Aaron
+Ababa
+aback
+abaft
+abandon
+abandoned
+abandoning
+abandonment
+abandons
+Aarhus
+Aaron
+Ababa
+aback
+abaft
+abandon
+abandoned
+abandoning
+abandonment
+abandons
+abase
+abased
+abasement
+abasements
+abases
+abash
+abashed
+abashes
+abashing
+abasing
+abate
+abated
+abatement
+abatements
+abater
+abates
+abating
+Abba
+abbe
+abbey
+abbeys
+abbot
+abbots
+Abbott
+abbreviate
+abbreviated
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+Abby
+abdomen
+abdomens
+abdominal
+abduct
+abducted
+abduction
+abductions
+abductor
+abductors
+abducts
+Abe
+abed
+Abel
+Abelian
+Abelson
+Aberdeen
+Abernathy
+aberrant
+aberration
+select * from words2;
+b
+abase
+abased
+abasement
+abasements
+abases
+abash
+abashed
+abashes
+abashing
+abasing
+abate
+abated
+abatement
+abatements
+abater
+abates
+abating
+Abba
+abbe
+abbey
+abbeys
+abbot
+abbots
+Abbott
+abbreviate
+abbreviated
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+Abby
+abdomen
+abdomens
+abdominal
+abduct
+abducted
+abduction
+abductions
+abductor
+abductors
+abducts
+Abe
+abed
+Abel
+Abelian
+Abelson
+Aberdeen
+Abernathy
+aberrant
+aberration
+drop table words;
+mysql-import: Error: 1146, Table 'test.words' doesn't exist, when using table: words
+drop table t1;
+drop table t2;
+drop table words2;
+#
+# Bug#16853 mysqldump doesn't show events
+#
+create database first;
+use first;
+set time_zone = 'UTC';
+create event ee1 on schedule at '2035-12-31 20:01:23' do set @a=5;
+show events;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+first ee1 root@localhost UTC ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+show create event ee1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ee1 UTC CREATE EVENT `ee1` ON SCHEDULE AT '2035-12-31 20:01:23' ON COMPLETION NOT PRESERVE ENABLE DO set @a=5 latin1 latin1_swedish_ci latin1_swedish_ci
+drop database first;
+create database second;
+use second;
+show events;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+second ee1 root@localhost UTC ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+show create event ee1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ee1 UTC CREATE EVENT `ee1` ON SCHEDULE AT '2035-12-31 20:01:23' ON COMPLETION NOT PRESERVE ENABLE DO set @a=5 latin1 latin1_swedish_ci latin1_swedish_ci
+create event ee2 on schedule at '2018-12-31 21:01:23' do set @a=5;
+create event ee3 on schedule at '2030-12-31 22:01:23' do set @a=5;
+show events;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+second ee1 root@localhost UTC ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+second ee2 root@localhost UTC ONE TIME 2018-12-31 21:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+second ee3 root@localhost UTC ONE TIME 2030-12-31 22:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+drop database second;
+create database third;
+use third;
+show events;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+third ee1 root@localhost UTC ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+third ee2 root@localhost UTC ONE TIME 2018-12-31 21:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+third ee3 root@localhost UTC ONE TIME 2030-12-31 22:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+drop database third;
+set time_zone = 'SYSTEM';
+use test;
+#
+# Bug#17201 Spurious 'DROP DATABASE' in output,
+# also confusion between tables and views.
+# Example code from Markus Popp
+#
+create database mysqldump_test_db;
+use mysqldump_test_db;
+create table t1 (id int);
+create view v1 as select * from t1;
+insert into t1 values (1232131);
+insert into t1 values (4711);
+insert into t1 values (3231);
+insert into t1 values (0815);
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+/*!40000 DROP DATABASE IF EXISTS `mysqldump_test_db`*/;
+
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqldump_test_db` /*!40100 DEFAULT CHARACTER SET latin1 */;
+
+USE `mysqldump_test_db`;
+DROP TABLE IF EXISTS `t1`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `t1` (
+ `id` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+LOCK TABLES `t1` WRITE;
+/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
+INSERT INTO `t1` VALUES (1232131),(4711),(3231),(815);
+/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
+UNLOCK TABLES;
+DROP TABLE IF EXISTS `v1`;
+/*!50001 DROP VIEW IF EXISTS `v1`*/;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE TABLE `v1` (
+ `id` int(11)
+) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
+
+USE `mysqldump_test_db`;
+/*!50001 DROP TABLE IF EXISTS `v1`*/;
+/*!50001 DROP VIEW IF EXISTS `v1`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = latin1 */;
+/*!50001 SET character_set_results = latin1 */;
+/*!50001 SET collation_connection = latin1_swedish_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `v1` AS select `t1`.`id` AS `id` from `t1` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+drop view v1;
+drop table t1;
+drop database mysqldump_test_db;
+#
+# Bug#30027 mysqldump does not dump views properly.
+#
+
+# Cleanup.
+DROP DATABASE IF EXISTS mysqldump_test_db;
+
+# Create objects.
+CREATE DATABASE mysqldump_test_db;
+set names koi8r;
+CREATE VIEW mysqldump_test_db.v2 AS SELECT 1 AS 1;
+CREATE VIEW mysqldump_test_db.v1 AS SELECT 1 FROM mysqldump_test_db.v2;
+set names latin1;
+
+# Dump mysqldump_test_db to bug30027.sql.
+
+# Drop mysqldump_test_db.
+DROP DATABASE mysqldump_test_db;
+
+# Restore mysqldump_test_db from bug30027.sql.
+
+# Check the view.
+set names utf8;
+SHOW CREATE VIEW mysqldump_test_db.v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqldump_test_db`.`v1` AS select `v2`.`колонка1` AS `колонка1` from `mysqldump_test_db`.`v2` koi8r koi8r_general_ci
+SHOW CREATE VIEW mysqldump_test_db.v2;
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqldump_test_db`.`v2` AS select 1 AS `колонка1` koi8r koi8r_general_ci
+set names latin1;
+
+# Cleanup.
+DROP DATABASE mysqldump_test_db;
+#
+# Bug#29938 wrong behavior of mysqldump --skip-events
+# with --all-databases
+#
+TRUNCATE mysql.event;
+USE test;
+CREATE event e29938 ON SCHEDULE AT '2035-12-31 20:01:23' DO SET @bug29938=29938;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+test e29938 root@localhost SYSTEM ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+TRUNCATE mysql.event;
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+#
+# Bug#31113 mysqldump 5.1 can't handle a dash ("-") in database names
+#
+create database `test-database`;
+use `test-database`;
+create table test (a int);
+DROP TABLE IF EXISTS `test`;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `test` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+/*!40101 SET character_set_client = @saved_cs_client */;
+LOCK TABLES `test` WRITE;
+/*!40000 ALTER TABLE `test` DISABLE KEYS */;
+/*!40000 ALTER TABLE `test` ENABLE KEYS */;
+UNLOCK TABLES;
+drop database `test-database`;
+use test;
+
+# -----------------------------------------------------------------
+# -- Bug#30217 Views: changes in metadata behaviour between 5.0 and 5.1.
+# -----------------------------------------------------------------
+
+DROP DATABASE IF EXISTS mysqldump_test_db;
+CREATE DATABASE mysqldump_test_db;
+use mysqldump_test_db;
+
+CREATE VIEW v1(x, y) AS SELECT 'a', 'a';
+
+SELECT view_definition
+FROM INFORMATION_SCHEMA.VIEWS
+WHERE table_schema = 'mysqldump_test_db' AND table_name = 'v1';
+view_definition
+select 'a' AS `x`,'a' AS `y`
+
+---> Dumping mysqldump_test_db to bug30217.sql
+
+DROP DATABASE mysqldump_test_db;
+use test;
+
+---> Restoring mysqldump_test_db...
+
+SELECT view_definition
+FROM INFORMATION_SCHEMA.VIEWS
+WHERE table_schema = 'mysqldump_test_db' AND table_name = 'v1';
+view_definition
+select 'a' AS `x`,'a' AS `y`
+
+DROP DATABASE mysqldump_test_db;
+
+# -- End of test case for Bug#32538.
+
+#
+# Bug#37377 Incorrect DROP TABLE statement in dump of a VIEW using --tab
+#
+create table t1 (a int);
+create view v1 as select a from t1;
+drop view v1;
+drop table t1;
+drop view v1;
+drop table t1;
+#
+# Bug#28071 mysqlimport does not quote or escape table name
+#
+drop table if exists `load`;
+create table `load` (a varchar(255));
+test.load: Records: 70 Deleted: 0 Skipped: 0 Warnings: 0
+select count(*) from `load`;
+count(*)
+70
+drop table `load`;
+SET @@GLOBAL.CONCURRENT_INSERT = @OLD_CONCURRENT_INSERT;
+
+Bug #34861 - mysqldump with --tab gives weird output for triggers.
+
+CREATE TABLE t1 (f1 INT);
+CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW SET @f1 = 1;
+CREATE PROCEDURE pr1 () SELECT "Meow";
+CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO SELECT "Meow";
+
+SHOW TRIGGERS;
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+tr1 UPDATE t1 SET @f1 = 1 BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+test ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SELECT name,body FROM mysql.proc WHERE NAME = 'pr1';
+name body
+pr1 SELECT "Meow"
+
+dump table; if anything goes to stdout, it ends up here: ---------------
+
+drop everything
+DROP EVENT ev1;
+DROP TRIGGER tr1;
+DROP TABLE t1;
+DROP PROCEDURE pr1;
+
+reload table; this should restore table and trigger
+SHOW TRIGGERS;
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+tr1 UPDATE t1 SET @f1 = 1 BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+SELECT name,body FROM mysql.proc WHERE NAME = 'pr1';
+name body
+
+reload db; this should restore routines and events
+SHOW TRIGGERS;
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+tr1 UPDATE t1 SET @f1 = 1 BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+SHOW EVENTS;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+test ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
+SELECT name,body FROM mysql.proc WHERE NAME = 'pr1';
+name body
+pr1 SELECT "Meow"
+
+cleanup
+DROP EVENT IF EXISTS ev1;
+DROP PROCEDURE IF EXISTS pr1;
+DROP TRIGGER IF EXISTS tr1;
+DROP TABLE IF EXISTS t1;
+#
+# Bug #30946: mysqldump silently ignores --default-character-set
+# when used with --tab
+#
+# Also see outfile_loaddata.test
+#
+SET NAMES utf8;
+CREATE TABLE t1 (a INT, b CHAR(10) CHARSET koi8r, c CHAR(10) CHARSET latin1);
+CREATE TABLE t2 LIKE t1;
+INSERT INTO t1 VALUES (1, 'ABC-АБВ', 'DEF-ÂÃÄ'), (2, NULL, NULL);
+# error on multi-character ENCLOSED/ESCAPED BY
+# default '--default-charset' (binary):
+##################################################
+1 ABC- DEF-
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+# utf8:
+##################################################
+1 ABC-АБВ DEF-ÂÃÄ
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET utf8;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+# latin1 (data corruption is expected):
+##################################################
+1 ABC-??? DEF-
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET latin1 ;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-??? DEF-ÂÃÄ
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+# koi8r (data corruption is expected):
+##################################################
+1 ABC- DEF-???
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET koi8r;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-???
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+SET NAMES default;
+DROP TABLE t1, t2;
+#
+# End of 5.1 tests
+#
diff --git a/mysql-test/r/mysqlshow.result b/mysql-test/r/mysqlshow.result
index 31b4940ec53..42081c309d0 100644
--- a/mysql-test/r/mysqlshow.result
+++ b/mysql-test/r/mysqlshow.result
@@ -84,11 +84,22 @@ Database: information_schema
| COLLATION_CHARACTER_SET_APPLICABILITY |
| COLUMNS |
| COLUMN_PRIVILEGES |
+| ENGINES |
+| EVENTS |
+| FILES |
+| GLOBAL_STATUS |
+| GLOBAL_VARIABLES |
| KEY_COLUMN_USAGE |
+| PARTITIONS |
+| PLUGINS |
+| PROCESSLIST |
| PROFILING |
+| REFERENTIAL_CONSTRAINTS |
| ROUTINES |
| SCHEMATA |
| SCHEMA_PRIVILEGES |
+| SESSION_STATUS |
+| SESSION_VARIABLES |
| STATISTICS |
| TABLES |
| TABLE_CONSTRAINTS |
@@ -106,11 +117,22 @@ Database: INFORMATION_SCHEMA
| COLLATION_CHARACTER_SET_APPLICABILITY |
| COLUMNS |
| COLUMN_PRIVILEGES |
+| ENGINES |
+| EVENTS |
+| FILES |
+| GLOBAL_STATUS |
+| GLOBAL_VARIABLES |
| KEY_COLUMN_USAGE |
+| PARTITIONS |
+| PLUGINS |
+| PROCESSLIST |
| PROFILING |
+| REFERENTIAL_CONSTRAINTS |
| ROUTINES |
| SCHEMATA |
| SCHEMA_PRIVILEGES |
+| SESSION_STATUS |
+| SESSION_VARIABLES |
| STATISTICS |
| TABLES |
| TABLE_CONSTRAINTS |
diff --git a/mysql-test/r/mysqlslap.result b/mysql-test/r/mysqlslap.result
new file mode 100644
index 00000000000..4cb01490407
--- /dev/null
+++ b/mysql-test/r/mysqlslap.result
@@ -0,0 +1,227 @@
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+CREATE TABLE t1 (id int, name varchar(64));
+INSERT INTO t1 VALUES (1, 'This is a test');
+select * from t1;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+set storage_engine=`heap`;
+CREATE TABLE t1 (id int, name varchar(64));
+create table t2(foo1 varchar(32), foo2 varchar(32));
+INSERT INTO t1 VALUES (1, 'This is a test');
+insert into t2 values ('test', 'test2');
+select * from t1;
+select * from t2;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+set storage_engine=`myisam`;
+CREATE TABLE t1 (id int, name varchar(64));
+create table t2(foo1 varchar(32), foo2 varchar(32));
+INSERT INTO t1 VALUES (1, 'This is a test');
+insert into t2 values ('test', 'test2');
+select * from t1;
+select * from t2;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+set storage_engine=`heap`;
+CREATE TABLE t1 (id int, name varchar(64));
+create table t2(foo1 varchar(32), foo2 varchar(32));
+INSERT INTO t1 VALUES (1, 'This is a test');
+insert into t2 values ('test', 'test2');
+SHOW TABLES;
+select * from t1;
+select * from t2;
+SHOW TABLES;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+set storage_engine=`myisam`;
+CREATE TABLE t1 (id int, name varchar(64));
+create table t2(foo1 varchar(32), foo2 varchar(32));
+INSERT INTO t1 VALUES (1, 'This is a test');
+insert into t2 values ('test', 'test2');
+SHOW TABLES;
+select * from t1;
+select * from t2;
+SHOW TABLES;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+set storage_engine=`heap`;
+CREATE TABLE t1 (id int, name varchar(64));
+create table t2(foo1 varchar(32), foo2 varchar(32));
+INSERT INTO t1 VALUES (1, 'This is a test');
+insert into t2 values ('test', 'test2');
+SET AUTOCOMMIT=0;
+SHOW TABLES;
+SET AUTOCOMMIT=0;
+select * from t1;
+COMMIT;
+select * from t2;
+COMMIT;
+select * from t1;
+COMMIT;
+select * from t2;
+COMMIT;
+select * from t1;
+COMMIT;
+select * from t2;
+COMMIT;
+COMMIT;
+SHOW TABLES;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+CREATE SCHEMA `mysqlslap`;
+use mysqlslap;
+set storage_engine=`myisam`;
+CREATE TABLE t1 (id int, name varchar(64));
+create table t2(foo1 varchar(32), foo2 varchar(32));
+INSERT INTO t1 VALUES (1, 'This is a test');
+insert into t2 values ('test', 'test2');
+SET AUTOCOMMIT=0;
+SHOW TABLES;
+SET AUTOCOMMIT=0;
+select * from t1;
+COMMIT;
+select * from t2;
+COMMIT;
+select * from t1;
+COMMIT;
+select * from t2;
+COMMIT;
+select * from t1;
+COMMIT;
+select * from t2;
+COMMIT;
+COMMIT;
+SHOW TABLES;
+DROP SCHEMA IF EXISTS `mysqlslap`;
+#
+# Bug #29985: mysqlslap -- improper handling of resultsets in SPROCs
+#
+DROP PROCEDURE IF EXISTS p1;
+CREATE PROCEDURE p1() SELECT 1;
+DROP PROCEDURE p1;
diff --git a/mysql-test/r/mysqltest.result b/mysql-test/r/mysqltest.result
index e445bf3cc9b..2e3a9489593 100644
--- a/mysql-test/r/mysqltest.result
+++ b/mysql-test/r/mysqltest.result
@@ -14,6 +14,7 @@ select otto from (select 1 as otto) as t1;
otto
1
mysqltest: At line 1: query 'select otto from (select 1 as otto) as t1' succeeded - should have failed with sqlstate 42S22...
+mysqltest: At line 1: expecting a SQL-state (00000) from query 'remove_file MYSQLTEST_VARDIR/tmp/test_nonexistent.tmp' which cannot produce one...
select friedrich from (select 1 as otto) as t1;
ERROR 42S22: Unknown column 'friedrich' in 'field list'
mysqltest: At line 1: query 'select friedrich from (select 1 as otto) as t1' failed with wrong sqlstate 42S22: 'Unknown column 'friedrich' in 'field list'', instead of 00000...
@@ -152,8 +153,12 @@ mysqltest: At line 1: Missing delimiter
mysqltest: At line 1: End of line junk detected: "sleep 7
# Another comment
"
-mysqltest: At line 1: Missing delimiter
-mysqltest: At line 1: Missing delimiter
+mysqltest: At line 1: Extra argument 'comment
+# comment 3
+disable_query_log' passed to 'disconnect'
+mysqltest: At line 1: Extra argument 'comment
+# comment 3
+disable_query_log' passed to 'disconnect'
mysqltest: At line 1: End of line junk detected: "disconnect default
#
@@ -292,7 +297,7 @@ var5 from query that returns no row
failing query in let
mysqltest: At line 1: Error running query 'failing query': 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'failing query' at line 1
mysqltest: At line 1: Missing required argument 'filename' to command 'source'
-mysqltest: At line 1: Could not open file './non_existingFile'
+mysqltest: At line 1: Could not open './non_existingFile' for reading, errno: 2
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/recursive.sql": At line 1: Source directives are nesting too deep
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/error.sql": At line 1: query 'garbage ' failed: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'garbage' at line 1
@@ -309,20 +314,10 @@ here is the sourced script
1 = outer loop variable before dec
0 = outer loop variable after dec
-
-2 = outer loop variable after while
+outer=2 ifval=0
+outer=1 ifval=1
here is the sourced script
-
-2 = outer loop variable before dec
-
-1 = outer loop variable after dec
-
-1 = outer loop variable after while
-here is the sourced script
-
-1 = outer loop variable before dec
-
-0 = outer loop variable after dec
+ERROR 42S02: Table 'test.nowhere' doesn't exist
In loop
here is the sourced script
@@ -441,7 +436,7 @@ ERROR 3D000: No database selected
Output from mysqltest-x.inc
Output from mysqltest-x.inc
Output from mysqltest-x.inc
-mysqltest: Could not open ./non_existing_file.inc: errno = 2
+mysqltest: Could not open './non_existing_file.inc' for reading, errno: 2
failing_statement;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'failing_statement' at line 1
failing_statement;
@@ -484,8 +479,6 @@ mysqltest: At line 3: query 'create table t1 (a int primary key);
insert into t1 values (1);
select 'select-me';
insertz 'error query'' failed: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'insertz 'error query'' at line 1
-
-More results from queries before failure can be found in MYSQLTEST_VARDIR/log/bug11731.log
drop table t1;
Multi statement using expected error
create table t1 (a int primary key);
@@ -535,6 +528,10 @@ mysqltest: At line 1: Missing required argument 'filename' to command 'write_fil
mysqltest: At line 1: End of file encountered before 'EOF' delimiter was found
Content for test_file1
mysqltest: At line 1: File already exist: 'MYSQLTEST_VARDIR/tmp/test_file1.tmp'
+These lines should be repeated,
+if things work as expected
+These lines should be repeated,
+if things work as expected
Some data
for cat_file command
of mysqltest
@@ -542,6 +539,8 @@ mysqltest: At line 1: Failed to open file 'non_existing_file'
mysqltest: At line 1: Missing required argument 'filename' to command 'file_exists'
mysqltest: At line 1: Missing required argument 'from_file' to command 'copy_file'
mysqltest: At line 1: Missing required argument 'to_file' to command 'copy_file'
+mysqltest: At line 1: Missing required argument 'from_file' to command 'move_file'
+mysqltest: At line 1: Missing required argument 'to_file' to command 'move_file'
mysqltest: At line 1: Missing required argument 'mode' to command 'chmod'
mysqltest: At line 1: You must write a 4 digit octal number for mode
mysqltest: At line 1: You must write a 4 digit octal number for mode
@@ -694,6 +693,7 @@ statement="SHOW COLUMNS FROM t1" row_number=1, column_name="Type", Value=int(11)
statement=SHOW COLUMNS FROM t1 row_number=1, column_name=Default, Value=NULL
value= ->A B<-
value= 1
+value= 2
mysqltest: At line 1: query_get_value - argument list started with '(' must be ended with ')'
mysqltest: At line 1: Missing required argument 'query' to command 'query_get_value'
mysqltest: At line 1: Missing required argument 'column name' to command 'query_get_value'
@@ -723,4 +723,29 @@ drop table t1;
mysqltest: At line 1: change user failed: Unknown database 'inexistent'
mysqltest: At line 1: change user failed: Access denied for user 'inexistent'@'localhost' (using password: NO)
mysqltest: At line 1: change user failed: Access denied for user 'root'@'localhost' (using password: YES)
+file1.txt
+file1.txt
+file2.txt
+SELECT 'c:\\a.txt' AS col;
+col
+z
+hej
+mysqltest: At line 1: Found junk ' != 143' after $variable in expression
+select 1;
+1
+1
+select 1;
+1
+1
+-- a comment for the server;
+mysqltest: At line 1: Found line beginning with -- that didn't contain a valid mysqltest command, check your syntax or use # if you intended to write a comment
+con1
+con2
+default
+con1
+con2
+con1
+con2
+con2
+-closed_connection-
End of tests
diff --git a/mysql-test/r/named_pipe.result b/mysql-test/r/named_pipe.result
index 5d22fe4a69b..32e96fa27b7 100644
--- a/mysql-test/r/named_pipe.result
+++ b/mysql-test/r/named_pipe.result
@@ -142,9 +142,9 @@ explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
explain select fld3 from t2 use index (not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
@@ -605,11 +605,11 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index period period 4 NULL 41810
+1 SIMPLE t3 index period period 4 NULL 1
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index period period 4 NULL 41810
+1 SIMPLE t1 index period period 4 NULL 1
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
@@ -1429,7 +1429,7 @@ companynr companynr
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Using join buffer
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
@@ -1502,10 +1502,10 @@ select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1)
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 100.00 Using where
Warnings:
-Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
+Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> ''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
diff --git a/mysql-test/r/ndb_alter_table.result b/mysql-test/r/ndb_alter_table.result
deleted file mode 100644
index 89999eca051..00000000000
--- a/mysql-test/r/ndb_alter_table.result
+++ /dev/null
@@ -1,338 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-drop database if exists mysqltest;
-CREATE TABLE t1 (
-a INT NOT NULL,
-b INT NOT NULL
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (9410,9412);
-ALTER TABLE t1 ADD COLUMN c int not null;
-SELECT * FROM t1;
-a b c
-9410 9412 0
-DROP TABLE t1;
-CREATE DATABASE mysqltest;
-USE mysqltest;
-CREATE TABLE t1 (
-a INT NOT NULL,
-b INT NOT NULL
-) ENGINE=ndbcluster;
-RENAME TABLE t1 TO test.t1;
-SHOW TABLES;
-Tables_in_mysqltest
-DROP DATABASE mysqltest;
-USE test;
-SHOW TABLES;
-Tables_in_test
-t1
-DROP TABLE t1;
-create table t1 (
-col1 int not null auto_increment primary key,
-col2 varchar(30) not null,
-col3 varchar (20) not null,
-col4 varchar(4) not null,
-col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
-col6 int not null, to_be_deleted int) ENGINE=ndbcluster;
-show table status;
-Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
-t1 ndbcluster 10 Dynamic 0 0 # # 0 # 1 # # # latin1_swedish_ci NULL #
-SET SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
-insert into t1 values
-(0,4,3,5,"PENDING",1,7),(NULL,4,3,5,"PENDING",1,7),(31,4,3,5,"PENDING",1,7), (7,4,3,5,"PENDING",1,7), (NULL,4,3,5,"PENDING",1,7), (100,4,3,5,"PENDING",1,7), (99,4,3,5,"PENDING",1,7), (8,4,3,5,"PENDING",1,7), (NULL,4,3,5,"PENDING",1,7);
-show table status;
-Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
-t1 ndbcluster 10 Dynamic 9 96 # # 0 # 102 # # # latin1_swedish_ci NULL #
-select * from t1 order by col1;
-col1 col2 col3 col4 col5 col6 to_be_deleted
-0 4 3 5 PENDING 1 7
-1 4 3 5 PENDING 1 7
-7 4 3 5 PENDING 1 7
-8 4 3 5 PENDING 1 7
-31 4 3 5 PENDING 1 7
-32 4 3 5 PENDING 1 7
-99 4 3 5 PENDING 1 7
-100 4 3 5 PENDING 1 7
-101 4 3 5 PENDING 1 7
-alter table t1
-add column col4_5 varchar(20) not null after col4,
-add column col7 varchar(30) not null after col5,
-add column col8 datetime not null, drop column to_be_deleted,
-change column col2 fourth varchar(30) not null after col3,
-modify column col6 int not null first;
-show table status;
-Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
-t1 ndbcluster 10 Dynamic 9 152 # # 0 # 102 # # # latin1_swedish_ci NULL #
-select * from t1 order by col1;
-col6 col1 col3 fourth col4 col4_5 col5 col7 col8
-1 0 3 4 5 PENDING 0000-00-00 00:00:00
-1 1 3 4 5 PENDING 0000-00-00 00:00:00
-1 7 3 4 5 PENDING 0000-00-00 00:00:00
-1 8 3 4 5 PENDING 0000-00-00 00:00:00
-1 31 3 4 5 PENDING 0000-00-00 00:00:00
-1 32 3 4 5 PENDING 0000-00-00 00:00:00
-1 99 3 4 5 PENDING 0000-00-00 00:00:00
-1 100 3 4 5 PENDING 0000-00-00 00:00:00
-1 101 3 4 5 PENDING 0000-00-00 00:00:00
-insert into t1 values (2, NULL,4,3,5,99,"PENDING","EXTRA",'2004-01-01 00:00:00');
-show table status;
-Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
-t1 ndbcluster 10 Dynamic 10 152 # # 0 # 103 # # # latin1_swedish_ci NULL #
-select * from t1 order by col1;
-col6 col1 col3 fourth col4 col4_5 col5 col7 col8
-1 0 3 4 5 PENDING 0000-00-00 00:00:00
-1 1 3 4 5 PENDING 0000-00-00 00:00:00
-1 7 3 4 5 PENDING 0000-00-00 00:00:00
-1 8 3 4 5 PENDING 0000-00-00 00:00:00
-1 31 3 4 5 PENDING 0000-00-00 00:00:00
-1 32 3 4 5 PENDING 0000-00-00 00:00:00
-1 99 3 4 5 PENDING 0000-00-00 00:00:00
-1 100 3 4 5 PENDING 0000-00-00 00:00:00
-1 101 3 4 5 PENDING 0000-00-00 00:00:00
-2 102 4 3 5 99 PENDING EXTRA 2004-01-01 00:00:00
-delete from t1;
-insert into t1 values (0,0,4,3,5,99,"PENDING","EXTRA",'2004-01-01 00:00:00');
-SET SQL_MODE='';
-insert into t1 values (1,0,4,3,5,99,"PENDING","EXTRA",'2004-01-01 00:00:00');
-select * from t1 order by col1;
-col6 col1 col3 fourth col4 col4_5 col5 col7 col8
-0 0 4 3 5 99 PENDING EXTRA 2004-01-01 00:00:00
-1 103 4 3 5 99 PENDING EXTRA 2004-01-01 00:00:00
-alter table t1 drop column col4_5;
-insert into t1 values (2,0,4,3,5,"PENDING","EXTRA",'2004-01-01 00:00:00');
-select * from t1 order by col1;
-col6 col1 col3 fourth col4 col5 col7 col8
-0 0 4 3 5 PENDING EXTRA 2004-01-01 00:00:00
-1 103 4 3 5 PENDING EXTRA 2004-01-01 00:00:00
-2 104 4 3 5 PENDING EXTRA 2004-01-01 00:00:00
-drop table t1;
-CREATE TABLE t1 (
-a INT NOT NULL,
-b INT NOT NULL
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (9410,9412);
-ALTER TABLE t1 ADD COLUMN c int not null;
-select * from t1 order by a;
-a b c
-9410 9412 0
-select * from t1 order by a;
-a b c
-9410 9412 0
-alter table t1 drop c;
-select * from t1 order by a;
-a b
-9410 9412
-drop table t1;
-select * from t1 order by a;
-ERROR 42S02: Table 'test.t1' doesn't exist
-CREATE TABLE t1 (
-a INT NOT NULL PRIMARY KEY,
-b INT NOT NULL
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (0,1),(17,18);
-select * from t1 order by a;
-a b
-0 1
-17 18
-SET SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
-alter table t1 modify column a int not null auto_increment;
-SET SQL_MODE='';
-select * from t1 order by a;
-a b
-0 1
-17 18
-INSERT INTO t1 VALUES (0,19),(20,21);
-select * from t1 order by a;
-a b
-0 1
-17 18
-18 19
-20 21
-drop table t1;
-CREATE TABLE t1 (
-a INT NOT NULL PRIMARY KEY,
-b INT NOT NULL
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (0,1),(17,18);
-select * from t1 order by a;
-a b
-0 1
-17 18
-alter table t1 add c int not null unique auto_increment;
-select c from t1 order by c;
-c
-1
-2
-INSERT INTO t1 VALUES (1,2,0),(18,19,4),(20,21,0);
-select c from t1 order by c;
-c
-1
-2
-3
-4
-5
-drop table t1;
-create table t1 ( a int primary key, b varchar(10), c varchar(10), index (b) )
-engine=ndb;
-insert into t1 values (1,'one','one'), (2,'two','two'), (3,'three','three');
-create index c on t1(c);
-select * from t1 where b = 'two';
-a b c
-2 two two
-alter table t1 drop index c;
-select * from t1 where b = 'two';
-ERROR HY000: Can't lock file (errno: 241)
-select * from t1 where b = 'two';
-a b c
-2 two two
-drop table t1;
-create table t3 (a int primary key) engine=ndbcluster;
-begin;
-insert into t3 values (1);
-alter table t3 rename t4;
-delete from t3;
-insert into t3 values (1);
-commit;
-select * from t3;
-ERROR HY000: Can't lock file (errno: 155)
-select * from t4;
-a
-1
-drop table t4;
-show tables;
-Tables_in_test
-create table t1 (
-ai bigint auto_increment,
-c001 int(11) not null,
-c002 int(11) not null,
-c003 int(11) not null,
-c004 int(11) not null,
-c005 int(11) not null,
-c006 int(11) not null,
-c007 int(11) not null,
-c008 int(11) not null,
-c009 int(11) not null,
-c010 int(11) not null,
-c011 int(11) not null,
-c012 int(11) not null,
-c013 int(11) not null,
-c014 int(11) not null,
-c015 int(11) not null,
-c016 int(11) not null,
-c017 int(11) not null,
-c018 int(11) not null,
-c019 int(11) not null,
-c020 int(11) not null,
-c021 int(11) not null,
-c022 int(11) not null,
-c023 int(11) not null,
-c024 int(11) not null,
-c025 int(11) not null,
-c026 int(11) not null,
-c027 int(11) not null,
-c028 int(11) not null,
-c029 int(11) not null,
-c030 int(11) not null,
-c031 int(11) not null,
-c032 int(11) not null,
-c033 int(11) not null,
-c034 int(11) not null,
-c035 int(11) not null,
-c036 int(11) not null,
-c037 int(11) not null,
-c038 int(11) not null,
-c039 int(11) not null,
-c040 int(11) not null,
-c041 int(11) not null,
-c042 int(11) not null,
-c043 int(11) not null,
-c044 int(11) not null,
-c045 int(11) not null,
-c046 int(11) not null,
-c047 int(11) not null,
-c048 int(11) not null,
-c049 int(11) not null,
-c050 int(11) not null,
-c051 int(11) not null,
-c052 int(11) not null,
-c053 int(11) not null,
-c054 int(11) not null,
-c055 int(11) not null,
-c056 int(11) not null,
-c057 int(11) not null,
-c058 int(11) not null,
-c059 int(11) not null,
-c060 int(11) not null,
-c061 int(11) not null,
-c062 int(11) not null,
-c063 int(11) not null,
-c064 int(11) not null,
-c065 int(11) not null,
-c066 int(11) not null,
-c067 int(11) not null,
-c068 int(11) not null,
-c069 int(11) not null,
-c070 int(11) not null,
-c071 int(11) not null,
-c072 int(11) not null,
-c073 int(11) not null,
-c074 int(11) not null,
-c075 int(11) not null,
-c076 int(11) not null,
-c077 int(11) not null,
-c078 int(11) not null,
-c079 int(11) not null,
-c080 int(11) not null,
-c081 int(11) not null,
-c082 int(11) not null,
-c083 int(11) not null,
-c084 int(11) not null,
-c085 int(11) not null,
-c086 int(11) not null,
-c087 int(11) not null,
-c088 int(11) not null,
-c089 int(11) not null,
-c090 int(11) not null,
-c091 int(11) not null,
-c092 int(11) not null,
-c093 int(11) not null,
-c094 int(11) not null,
-c095 int(11) not null,
-c096 int(11) not null,
-c097 int(11) not null,
-c098 int(11) not null,
-c099 int(11) not null,
-c100 int(11) not null,
-c101 int(11) not null,
-c102 int(11) not null,
-c103 int(11) not null,
-c104 int(11) not null,
-c105 int(11) not null,
-c106 int(11) not null,
-c107 int(11) not null,
-c108 int(11) not null,
-c109 int(11) not null,
-primary key (ai),
-unique key tx1 (c002, c003, c004, c005)) engine=ndb;
-create index tx2
-on t1 (c010, c011, c012, c013);
-drop table t1;
-create table t1 (a int primary key auto_increment, b int) engine=ndb;
-insert into t1 (b) values (101),(102),(103);
-select * from t1 where a = 3;
-a b
-3 103
-alter table t1 rename t2;
-insert into t2 (b) values (201),(202),(203);
-select * from t2 where a = 6;
-a b
-6 203
-alter table t2 add c int;
-insert into t2 (b) values (301),(302),(303);
-select * from t2 where a = 9;
-a b c
-9 303 NULL
-alter table t2 rename t1;
-insert into t1 (b) values (401),(402),(403);
-select * from t1 where a = 12;
-a b c
-12 403 NULL
-drop table t1;
diff --git a/mysql-test/r/ndb_alter_table2.result b/mysql-test/r/ndb_alter_table2.result
deleted file mode 100644
index 886c300d53d..00000000000
--- a/mysql-test/r/ndb_alter_table2.result
+++ /dev/null
@@ -1,61 +0,0 @@
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (
-a INT NOT NULL PRIMARY KEY,
-b INT NOT NULL
-) ENGINE=ndbcluster;
-BEGIN;
-INSERT INTO t1 VALUES (9410,9412);
-BEGIN;
-INSERT INTO t1 VALUES (9411,9412);
-BEGIN;
-INSERT INTO t1 VALUES (9412,9412);
-BEGIN;
-INSERT INTO t1 VALUES (9413,9412);
-BEGIN;
-INSERT INTO t1 VALUES (9414,9412);
-BEGIN;
-INSERT INTO t1 VALUES (9415,9412);
-ROLLBACK;
-ROLLBACK;
-ROLLBACK;
-ROLLBACK;
-ROLLBACK;
-ROLLBACK;
-drop table t1;
-CREATE TABLE t1 (
-a INT NOT NULL PRIMARY KEY,
-b INT NOT NULL,
-c INT NOT NULL
-) ENGINE=ndbcluster;
-select * from t1;
-ERROR HY000: Got error 241 'Invalid schema object version' from ndbcluster
-select * from t1;
-a b c
-select * from t1;
-a b c
-select * from t1;
-a b c
-select * from t1;
-a b c
-select * from t1;
-a b c
-drop table t1;
-DROP TABLE IF EXISTS truncate_test;
-CREATE TABLE truncate_test (
-i INT PRIMARY KEY,
-a INT,
-b VARCHAR(11),
-UNIQUE KEY (a)
-) ENGINE = NDB;
-INSERT INTO truncate_test VALUES (1, 1, 'test') ON DUPLICATE KEY UPDATE b = 'new';
-INSERT INTO truncate_test VALUES (1, 1, 'test') ON DUPLICATE KEY UPDATE b = 'new';
-TRUNCATE truncate_test;
-INSERT INTO truncate_test VALUES (1, 1, 'test') ON DUPLICATE KEY UPDATE b = 'new';
-SELECT * FROM truncate_test;
-i a b
-1 1 test
-INSERT INTO truncate_test VALUES (1, 1, 'test') ON DUPLICATE KEY UPDATE b = 'new';
-SELECT * FROM truncate_test;
-i a b
-1 1 new
-DROP TABLE truncate_test;
diff --git a/mysql-test/r/ndb_auto_increment.result b/mysql-test/r/ndb_auto_increment.result
deleted file mode 100644
index f8ef5af2770..00000000000
--- a/mysql-test/r/ndb_auto_increment.result
+++ /dev/null
@@ -1,445 +0,0 @@
-DROP TABLE IF EXISTS t1,t2;
-DROP TABLE IF EXISTS t1;
-set @old_auto_increment_offset = @@session.auto_increment_offset;
-set @old_auto_increment_increment = @@session.auto_increment_increment;
-set @old_ndb_autoincrement_prefetch_sz = @@session.ndb_autoincrement_prefetch_sz;
-flush status;
-create table t1 (a int not null auto_increment primary key) engine ndb;
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-1
-update t1 set a = 5 where a = 1;
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-5
-6
-insert into t1 values (7);
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-5
-6
-7
-8
-insert into t1 values (2);
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-2
-5
-6
-7
-8
-9
-update t1 set a = 4 where a = 2;
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-10
-delete from t1 where a = 10;
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-replace t1 values (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-replace t1 values (15);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-15
-replace into t1 values (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-15
-16
-replace t1 values (15);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-15
-16
-insert ignore into t1 values (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-15
-16
-17
-insert ignore into t1 values (15), (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-15
-16
-17
-18
-insert into t1 values (15)
-on duplicate key update a = 20;
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-16
-17
-18
-20
-21
-insert into t1 values (NULL) on duplicate key update a = 30;
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-16
-17
-18
-20
-21
-22
-insert into t1 values (30) on duplicate key update a = 40;
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-16
-17
-18
-20
-21
-22
-30
-insert ignore into t1 values(600),(NULL),(NULL),(610),(NULL);
-select * from t1 order by a;
-a
-4
-5
-6
-7
-8
-9
-11
-12
-16
-17
-18
-20
-21
-22
-30
-600
-601
-602
-610
-611
-drop table t1;
-create table t1 (a int not null primary key,
-b int not null unique auto_increment) engine ndb;
-insert into t1 values (1, NULL);
-insert into t1 values (3, NULL);
-update t1 set b = 3 where a = 3;
-insert into t1 values (4, NULL);
-select * from t1 order by a;
-a b
-1 1
-3 3
-4 4
-drop table t1;
-CREATE TABLE t1 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=NDBCLUSTER;
-CREATE TABLE t2 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=MYISAM;
-SET @@session.auto_increment_increment=10;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-1 1 0
-11 2 1
-21 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-TRUNCATE t1;
-TRUNCATE t2;
-SET @@session.auto_increment_offset=5;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t1 (pk,b,c) VALUES (27,4,3),(NULL,5,4),(99,6,5),(NULL,7,6);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (pk,b,c) VALUES (27,4,3),(NULL,5,4),(99,6,5),(NULL,7,6);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-5 1 0
-15 2 1
-25 3 2
-27 4 3
-35 5 4
-99 6 5
-105 7 6
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-7
-TRUNCATE t1;
-TRUNCATE t2;
-SET @@session.auto_increment_increment=2;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-1 1 0
-3 2 1
-5 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-DROP TABLE t1, t2;
-CREATE TABLE t1 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=NDBCLUSTER AUTO_INCREMENT = 7;
-CREATE TABLE t2 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=MYISAM AUTO_INCREMENT = 7;
-SET @@session.auto_increment_offset=1;
-SET @@session.auto_increment_increment=1;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-7 1 0
-8 2 1
-9 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-DROP TABLE t1, t2;
-CREATE TABLE t1 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=NDBCLUSTER AUTO_INCREMENT = 3;
-CREATE TABLE t2 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=MYISAM AUTO_INCREMENT = 3;
-SET @@session.auto_increment_offset=5;
-SET @@session.auto_increment_increment=10;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-5 1 0
-15 2 1
-25 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-DROP TABLE t1, t2;
-CREATE TABLE t1 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=NDBCLUSTER AUTO_INCREMENT = 7;
-CREATE TABLE t2 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=MYISAM AUTO_INCREMENT = 7;
-SET @@session.auto_increment_offset=5;
-SET @@session.auto_increment_increment=10;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-15 1 0
-25 2 1
-35 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-DROP TABLE t1, t2;
-CREATE TABLE t1 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=NDBCLUSTER AUTO_INCREMENT = 5;
-CREATE TABLE t2 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=MYISAM AUTO_INCREMENT = 5;
-SET @@session.auto_increment_offset=5;
-SET @@session.auto_increment_increment=10;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-5 1 0
-15 2 1
-25 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-DROP TABLE t1, t2;
-CREATE TABLE t1 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=NDBCLUSTER AUTO_INCREMENT = 100;
-CREATE TABLE t2 (
-pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=MYISAM AUTO_INCREMENT = 100;
-SET @@session.auto_increment_offset=5;
-SET @@session.auto_increment_increment=10;
-INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2);
-INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2);
-SELECT * FROM t1 ORDER BY pk;
-pk b c
-105 1 0
-115 2 1
-125 3 2
-SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c;
-COUNT(t1.pk)
-3
-DROP TABLE t1, t2;
-SET @@session.auto_increment_offset=1;
-SET @@session.auto_increment_increment=1;
-set ndb_autoincrement_prefetch_sz = 32;
-drop table if exists t1;
-SET @@session.auto_increment_offset=1;
-SET @@session.auto_increment_increment=1;
-set ndb_autoincrement_prefetch_sz = 32;
-create table t1 (a int not null auto_increment primary key) engine ndb;
-insert into t1 values (NULL);
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-1
-33
-insert into t1 values (20);
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-1
-20
-33
-34
-insert into t1 values (35);
-insert into t1 values (NULL);
-insert into t1 values (NULL);
-ERROR 23000: Duplicate entry '35' for key 1
-select * from t1 order by a;
-a
-1
-20
-33
-34
-35
-65
-insert into t1 values (100);
-insert into t1 values (NULL);
-insert into t1 values (NULL);
-select * from t1 order by a;
-a
-1
-20
-33
-34
-35
-65
-66
-100
-101
-set auto_increment_offset = @old_auto_increment_offset;
-set auto_increment_increment = @old_auto_increment_increment;
-set ndb_autoincrement_prefetch_sz = @old_ndb_autoincrement_prefetch_sz;
-drop table t1;
diff --git a/mysql-test/r/ndb_autodiscover.result b/mysql-test/r/ndb_autodiscover.result
deleted file mode 100644
index 01ea884a8ba..00000000000
--- a/mysql-test/r/ndb_autodiscover.result
+++ /dev/null
@@ -1,397 +0,0 @@
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
-flush status;
-create table t1(
-id int not null primary key,
-name char(20)
-) engine=ndb;
-insert into t1 values(1, "Autodiscover");
-flush tables;
-select * from t1;
-id name
-1 Autodiscover
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 1
-flush tables;
-insert into t1 values (2, "Auto 2");
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 2
-insert into t1 values (3, "Discover 3");
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 2
-flush tables;
-select * from t1 order by id;
-id name
-1 Autodiscover
-2 Auto 2
-3 Discover 3
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 3
-flush tables;
-update t1 set name="Autodiscover" where id = 2;
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 4
-select * from t1 order by id;
-id name
-1 Autodiscover
-2 Autodiscover
-3 Discover 3
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 4
-flush tables;
-delete from t1 where id = 3;
-select * from t1 order by id;
-id name
-1 Autodiscover
-2 Autodiscover
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 5
-drop table t1;
-flush status;
-create table t2(
-id int not null primary key,
-name char(22)
-) engine=ndb;
-insert into t2 values (1, "Discoverer");
-select * from t2;
-id name
-1 Discoverer
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-flush tables;
-select * from t2;
-id name
-1 Discoverer
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 1
-drop table t2;
-flush status;
-create table t3(
-id int not null primary key,
-name char(255)
-) engine=ndb;
-insert into t3 values (1, "Explorer");
-select * from t3;
-id name
-1 Explorer
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-flush tables;
-create table t3(
-id int not null primary key,
-name char(20), a int, b float, c char(24)
-) engine=ndb;
-ERROR 42S01: Table 't3' already exists
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-create table IF NOT EXISTS t3(
-id int not null primary key,
-id2 int not null,
-name char(20)
-) engine=ndb;
-Warnings:
-Note 1050 Table 't3' already exists
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-SHOW CREATE TABLE t3;
-Table Create Table
-t3 CREATE TABLE `t3` (
- `id` int(11) NOT NULL,
- `name` char(255) default NULL,
- PRIMARY KEY (`id`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-select * from t3;
-id name
-1 Explorer
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 1
-drop table t3;
-flush status;
-create table t7(
-id int not null primary key,
-name char(255)
-) engine=ndb;
-create table t6(
-id int not null primary key,
-name char(255)
-) engine=MyISAM;
-insert into t7 values (1, "Explorer");
-insert into t6 values (2, "MyISAM table");
-select * from t7;
-id name
-1 Explorer
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-flush tables;
-show tables from test;
-Tables_in_test
-t6
-t7
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 1
-flush tables;
-show table status;
-Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
-t6 MyISAM 10 Fixed 1 260 # # # 0 NULL # # NULL # NULL #
-t7 ndbcluster 10 Fixed 1 276 # # # 0 NULL # # NULL # NULL #
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 2
-drop table t6, t7;
-flush status;
-create table t4(
-id int not null primary key,
-name char(27)
-) engine=ndb;
-insert into t4 values (1, "Automatic");
-select * from t4;
-id name
-1 Automatic
-select * from t4;
-ERROR 42S02: Table 'test.t4' doesn't exist
-select * from t4;
-ERROR 42S02: Table 'test.t4' doesn't exist
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-drop table t4;
-ERROR 42S02: Unknown table 't4'
-create table t4(
-id int not null primary key,
-name char(27)
-) engine=ndb;
-insert into t4 values (1, "Automatic");
-select * from t4;
-id name
-1 Automatic
-select * from t4;
-ERROR 42S02: Table 'test.t4' doesn't exist
-drop table if exists t4;
-Warnings:
-Error 155 Table 'test.t4' doesn't exist
-drop table t5;
-ERROR 42S02: Unknown table 't5'
-drop table if exists t5;
-Warnings:
-Note 1051 Unknown table 't5'
-flush status;
-create table t4(
-id int not null primary key,
-id2 int,
-name char(27)
-) engine=ndb;
-insert into t4 values (1, 76, "Automatic2");
-select * from t4;
-id id2 name
-1 76 Automatic2
-flush tables;
-SHOW TABLES;
-Tables_in_test
-select * from t4;
-ERROR 42S02: Table 'test.t4' doesn't exist
-flush status;
-create table t1(id int) engine=ndbcluster;
-create table t2(id int, b char(255)) engine=myisam;
-create table t3(id int, c char(255)) engine=ndbcluster;
-create table t4(id int) engine=myisam;
-create table t5(id int, d char(56)) engine=ndbcluster;
-create table t6(id int) engine=ndbcluster;
-create table t7(id int) engine=ndbcluster;
-create table t8(id int, e char(34)) engine=myisam;
-create table t9(id int) engine=myisam;
-insert into t2 values (2, "myisam table 2");
-insert into t3 values (3, "ndb table 3");
-insert into t5 values (5, "ndb table 5");
-insert into t6 values (6);
-insert into t8 values (8, "myisam table 8");
-insert into t9 values (9);
-SHOW TABLES;
-Tables_in_test
-t1
-t2
-t4
-t8
-t9
-t7
-t6
-select * from t6;
-id
-6
-select * from t7;
-id
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 2
-drop table t1, t2, t4, t6, t7, t8, t9;
-flush status;
-create table t1(id int) engine=ndbcluster;
-create table t2(id int, b char(255)) engine=myisam;
-create table t3(id int, c char(255)) engine=ndbcluster;
-create table t4(id int) engine=myisam;
-create table t5(id int, d char(56)) engine=ndbcluster;
-create table t6(id int) engine=ndbcluster;
-create table t7(id int) engine=ndbcluster;
-create table t8(id int, e char(34)) engine=myisam;
-create table t9(id int) engine=myisam;
-insert into t2 values (2, "myisam table 2");
-insert into t3 values (3, "ndb table 3");
-insert into t5 values (5, "ndb table 5");
-insert into t6 values (6);
-insert into t8 values (8, "myisam table 8");
-insert into t9 values (9);
-SHOW TABLES LIKE 't6';
-Tables_in_test (t6)
-t6
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 1
-create table t3(a int);
-ERROR 42S01: Table 't3' already exists
-create table t5(a int);
-ERROR 42S01: Table 't5' already exists
-SHOW TABLES LIKE 't%';
-Tables_in_test (t%)
-t1
-t2
-t4
-t6
-t8
-t9
-t7
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 2
-drop table t1, t2, t4, t6, t7, t8, t9;
-flush status;
-create table t1(id int) engine=ndbcluster;
-create table t2(id int, b char(255)) engine=ndbcluster;
-create table t3(id int, c char(255)) engine=ndbcluster;
-create table t4(id int) engine=myisam;
-insert into t1 values (1);
-insert into t2 values (2, "table 2");
-insert into t3 values (3, "ndb table 3");
-insert into t4 values (4);
-flush tables;
-select * from t1, t2, t3, t4;
-id id b id c id
-1 2 table 2 3 ndb table 3 4
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 3
-drop table t1, t2, t3, t4;
-flush status;
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-create table t5(
-id int not null primary key,
-name char(200)
-) engine=ndb;
-insert into t5 values (1, "Magnus");
-select * from t5;
-id name
-1 Magnus
-ALTER TABLE t5 ADD COLUMN adress char(255) FIRST;
-select * from t5;
-adress id name
-NULL 1 Magnus
-insert into t5 values
-("Adress for record 2", 2, "Carl-Gustav"),
-("Adress for record 3", 3, "Karl-Emil");
-update t5 set name="Bertil" where id = 2;
-select * from t5 order by id;
-adress id name
-NULL 1 Magnus
-Adress for record 2 2 Bertil
-Adress for record 3 3 Karl-Emil
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-drop table t5;
-flush status;
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-create table t6(
-id int not null primary key,
-name char(20)
-) engine=ndb;
-insert into t6 values (1, "Magnus");
-select * from t6;
-id name
-1 Magnus
-ALTER TABLE t6 ADD COLUMN adress char(255) FIRST;
-select * from t6;
-adress id name
-NULL 1 Magnus
-insert into t6 values
-("Adress for record 2", 2, "Carl-Gustav"),
-("Adress for record 3", 3, "Karl-Emil");
-update t6 set name="Bertil" where id = 2;
-select * from t6 order by id;
-adress id name
-NULL 1 Magnus
-Adress for record 2 2 Bertil
-Adress for record 3 3 Karl-Emil
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-drop table t6;
-show tables;
-Tables_in_test
-create table t1 (a int,b longblob) engine=ndb;
-show tables;
-Tables_in_test
-t1
-create database test2;
-use test2;
-show tables;
-Tables_in_test2
-select * from t1;
-ERROR 42S02: Table 'test2.t1' doesn't exist
-create table t2 (b int,c longblob) engine=ndb;
-use test;
-select * from t1;
-a b
-show tables;
-Tables_in_test
-t1
-drop table t1;
-use test2;
-drop table t2;
-drop database test2;
-use test;
-drop database if exists test_only_ndb_tables;
-create database test_only_ndb_tables;
-use test_only_ndb_tables;
-create table t1 (a int primary key) engine=ndb;
-select * from t1;
-a
-select * from t1;
-ERROR HY000: Can't lock file (errno: 157)
-use test;
-drop database test_only_ndb_tables;
-CREATE TABLE t9 (
-a int NOT NULL PRIMARY KEY,
-b int
-) engine=ndb;
-insert t9 values(1, 2), (2,3), (3, 4), (4, 5);
-create table t10 (
-a int not null primary key,
-b blob
-) engine=ndb;
-insert into t10 values (1, 'kalle');
diff --git a/mysql-test/r/ndb_autodiscover2.result b/mysql-test/r/ndb_autodiscover2.result
deleted file mode 100644
index 91f018b5d02..00000000000
--- a/mysql-test/r/ndb_autodiscover2.result
+++ /dev/null
@@ -1,13 +0,0 @@
-select * from t9 order by a;
-a b
-1 2
-2 3
-3 4
-4 5
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 1
-drop table t9;
-select * from t10;
-ERROR HY000: Got error 4263 'Invalid blob attributes or invalid blob parts table' from ndbcluster
-drop table t10;
diff --git a/mysql-test/r/ndb_autodiscover3.result b/mysql-test/r/ndb_autodiscover3.result
deleted file mode 100644
index 8bc1b968436..00000000000
--- a/mysql-test/r/ndb_autodiscover3.result
+++ /dev/null
@@ -1,45 +0,0 @@
-drop table if exists t1, t2;
-create table t1 (a int key) engine=ndbcluster;
-begin;
-insert into t1 values (1);
-insert into t1 values (2);
-ERROR HY000: Got temporary error 4025 'Node failure caused abort of transaction' from ndbcluster
-commit;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-drop table t1;
-create table t2 (a int, b int, primary key(a,b)) engine=ndbcluster;
-insert into t2 values (1,1),(2,1),(3,1),(4,1),(5,1),(6,1),(7,1),(8,1),(9,1),(10,1);
-select * from t2 order by a limit 3;
-a b
-1 1
-2 1
-3 1
-create table t2 (a int key) engine=ndbcluster;
-insert into t2 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
-select * from t2 order by a limit 3;
-a
-1
-2
-3
-select * from t2 order by a limit 3;
-ERROR HY000: Can't lock file (errno: 241)
-select * from t2 order by a limit 3;
-a
-1
-2
-3
-show tables;
-Tables_in_test
-create table t2 (a int key) engine=ndbcluster;
-insert into t2 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
-select * from t2 order by a limit 3;
-a
-1
-2
-3
-select * from t2 order by a limit 3;
-a
-1
-2
-3
-drop table t2;
diff --git a/mysql-test/r/ndb_backup_print.result b/mysql-test/r/ndb_backup_print.result
deleted file mode 100644
index fdd929802b2..00000000000
--- a/mysql-test/r/ndb_backup_print.result
+++ /dev/null
@@ -1,64 +0,0 @@
-use test;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
-Connected to Management Server at: :
-Waiting for completed, this may take several minutes
-Node : Backup started from node
-Node : Backup started from node completed
- StartGCP: StopGCP:
- #Records: #LogRecords:
- Data: bytes Log: bytes
-create table t1
-(pk int key
-,a1 BIT(1), a2 BIT(5), a3 BIT(33), a4 BIT(63), a5 BIT(64)
-,b1 TINYINT, b2 TINYINT UNSIGNED
-,c1 SMALLINT, c2 SMALLINT UNSIGNED
-,d1 INT, d2 INT UNSIGNED
-,e1 BIGINT, e2 BIGINT UNSIGNED
-,f1 CHAR(1) BINARY, f2 CHAR(32) BINARY, f3 CHAR(255) BINARY
-,g1 VARCHAR(32) BINARY, g2 VARCHAR(255) BINARY, g3 VARCHAR(1000) BINARY
-,h1 BINARY(1), h2 BINARY(8), h3 BINARY(255)
-,i1 VARBINARY(32), i2 VARBINARY(255), i3 VARBINARY(1000)
-) engine ndb;
-insert into t1 values
-(1
-,0x1, 0x17, 0x789a, 0x789abcde, 0xfedc0001
-,127, 255
-,32767, 65535
-,2147483647, 4294967295
-,9223372036854775807, 18446744073709551615
-,'1','12345678901234567890123456789012','123456789'
- ,'1','12345678901234567890123456789012','123456789'
- ,0x12,0x123456789abcdef0, 0x012345
-,0x12,0x123456789abcdef0, 0x00123450
-);
-insert into t1 values
-(2
-,0, 0, 0, 0, 0
-,-128, 0
-,-32768, 0
-,-2147483648, 0
-,-9223372036854775808, 0
-,'','',''
- ,'','',''
- ,0x0,0x0,0x0
-,0x0,0x0,0x0
-);
-insert into t1 values
-(3
-,NULL,NULL,NULL,NULL,NULL
-,NULL,NULL
-,NULL,NULL
-,NULL,NULL
-,NULL,NULL
-,NULL,NULL,NULL
-,NULL,NULL,NULL
-,NULL,NULL,NULL
-,NULL,NULL,NULL
-);
-Connected to Management Server at: :
-Waiting for completed, this may take several minutes
-Node : Backup started from node
-Node : Backup started from node completed
- StartGCP: StopGCP:
- #Records: #LogRecords:
- Data: bytes Log: bytes
diff --git a/mysql-test/r/ndb_basic.result b/mysql-test/r/ndb_basic.result
deleted file mode 100644
index 08bc6c9a3aa..00000000000
--- a/mysql-test/r/ndb_basic.result
+++ /dev/null
@@ -1,868 +0,0 @@
-DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
-drop database if exists mysqltest;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL,
-attr2 INT,
-attr3 VARCHAR(10)
-) ENGINE=ndbcluster;
-SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 pk1 A 0 NULL NULL BTREE
-INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
-SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 pk1 A 2 NULL NULL BTREE
-SELECT pk1 FROM t1 ORDER BY pk1;
-pk1
-9410
-9411
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-9410 9412 NULL 9412
-9411 9413 17 9413
-SELECT t1.* FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-9410 9412 NULL 9412
-9411 9413 17 9413
-UPDATE t1 SET attr1=1 WHERE pk1=9410;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-9410 1 NULL 9412
-9411 9413 17 9413
-UPDATE t1 SET pk1=2 WHERE attr1=1;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-2 1 NULL 9412
-9411 9413 17 9413
-UPDATE t1 SET pk1=pk1 + 1;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-3 1 NULL 9412
-9412 9413 17 9413
-UPDATE t1 SET pk1=4 WHERE pk1 = 3;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-4 1 NULL 9412
-9412 9413 17 9413
-DELETE FROM t1;
-SELECT * FROM t1;
-pk1 attr1 attr2 attr3
-INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9408, 8765, NULL, '8765'),
-(7,8, NULL, NULL), (8,9, NULL, NULL), (9,10, NULL, NULL), (10,11, NULL, NULL), (11,12, NULL, NULL), (12,13, NULL, NULL), (13,14, NULL, NULL);
-UPDATE t1 SET attr1 = 9999;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-7 9999 NULL NULL
-8 9999 NULL NULL
-9 9999 NULL NULL
-10 9999 NULL NULL
-11 9999 NULL NULL
-12 9999 NULL NULL
-13 9999 NULL NULL
-9408 9999 NULL 8765
-9410 9999 NULL 9412
-UPDATE t1 SET attr1 = 9998 WHERE pk1 < 1000;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-7 9998 NULL NULL
-8 9998 NULL NULL
-9 9998 NULL NULL
-10 9998 NULL NULL
-11 9998 NULL NULL
-12 9998 NULL NULL
-13 9998 NULL NULL
-9408 9999 NULL 8765
-9410 9999 NULL 9412
-UPDATE t1 SET attr1 = 9997 WHERE attr1 = 9999;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-7 9998 NULL NULL
-8 9998 NULL NULL
-9 9998 NULL NULL
-10 9998 NULL NULL
-11 9998 NULL NULL
-12 9998 NULL NULL
-13 9998 NULL NULL
-9408 9997 NULL 8765
-9410 9997 NULL 9412
-DELETE FROM t1 WHERE pk1 = 9410;
-SELECT * FROM t1 ORDER BY pk1;
-pk1 attr1 attr2 attr3
-7 9998 NULL NULL
-8 9998 NULL NULL
-9 9998 NULL NULL
-10 9998 NULL NULL
-11 9998 NULL NULL
-12 9998 NULL NULL
-13 9998 NULL NULL
-9408 9997 NULL 8765
-DELETE FROM t1;
-SELECT * FROM t1;
-pk1 attr1 attr2 attr3
-INSERT INTO t1 values (1, 4, NULL, NULL), (2, 4, NULL, NULL), (3, 5, NULL, NULL), (4, 4, NULL, NULL), (5, 5, NULL, NULL);
-DELETE FROM t1 WHERE attr1=4;
-SELECT * FROM t1 order by pk1;
-pk1 attr1 attr2 attr3
-3 5 NULL NULL
-5 5 NULL NULL
-DELETE FROM t1;
-INSERT INTO t1 VALUES (9410,9412, NULL, NULL), (9411, 9413, NULL, NULL);
-DELETE FROM t1 WHERE pk1 = 9410;
-SELECT * FROM t1;
-pk1 attr1 attr2 attr3
-9411 9413 NULL NULL
-DROP TABLE t1;
-CREATE TABLE t1 (id INT, id2 int) engine=ndbcluster;
-INSERT INTO t1 values(3456, 7890);
-SELECT * FROM t1;
-id id2
-3456 7890
-UPDATE t1 SET id=2 WHERE id2=12;
-SELECT * FROM t1;
-id id2
-3456 7890
-UPDATE t1 SET id=1234 WHERE id2=7890;
-SELECT * FROM t1;
-id id2
-1234 7890
-DELETE FROM t1;
-INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890), (3454, 7890);
-SELECT * FROM t1 ORDER BY id;
-id id2
-3454 7890
-3456 7890
-3456 7890
-3456 7890
-DELETE FROM t1 WHERE id = 3456;
-SELECT * FROM t1 ORDER BY id;
-id id2
-3454 7890
-DROP TABLE t1;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL
-) ENGINE=NDBCLUSTER;
-INSERT INTO t1 values(1, 9999);
-DROP TABLE t1;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL
-) ENGINE=NDB;
-INSERT INTO t1 values(1, 9999);
-DROP TABLE t1;
-CREATE TABLE t2 (
-a bigint unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-CREATE TABLE t3 (
-a bigint unsigned NOT NULL,
-b bigint unsigned not null,
-c bigint unsigned,
-PRIMARY KEY(a)
-) engine=ndbcluster;
-CREATE TABLE t4 (
-a bigint unsigned NOT NULL,
-b bigint unsigned not null,
-c bigint unsigned NOT NULL,
-d int unsigned,
-PRIMARY KEY(a, b, c)
-) engine=ndbcluster;
-select * from t2 where a = 7 order by b;
-a b c
-7 16 5
-select * from t2 where a = 7 order by a;
-a b c
-7 16 5
-select * from t2 where a = 7 order by 2;
-a b c
-7 16 5
-select * from t2 where a = 7 order by c;
-a b c
-7 16 5
-select * from t2 where a = 7 and b = 16 order by b;
-a b c
-7 16 5
-select * from t2 where a = 7 and b = 16 order by a;
-a b c
-7 16 5
-select * from t2 where a = 7 and b = 17 order by a;
-a b c
-select * from t2 where a = 7 and b != 16 order by b;
-a b c
-select * from t2 where a = 7 and b = 16 and c = 5 order by b;
-a b c
-7 16 5
-select * from t2 where a = 7 and b = 16 and c = 5 order by a;
-a b c
-7 16 5
-select * from t2 where a = 7 and b = 16 and c = 6 order by a;
-a b c
-select * from t2 where a = 7 and b != 16 and c = 5 order by b;
-a b c
-select * from t3 where a = 7 order by b;
-a b c
-7 16 5
-select * from t3 where a = 7 order by a;
-a b c
-7 16 5
-select * from t3 where a = 7 order by 2;
-a b c
-7 16 5
-select * from t3 where a = 7 order by c;
-a b c
-7 16 5
-select * from t3 where a = 7 and b = 16 order by b;
-a b c
-7 16 5
-select * from t3 where a = 7 and b = 16 order by a;
-a b c
-7 16 5
-select * from t3 where a = 7 and b = 17 order by a;
-a b c
-select * from t3 where a = 7 and b != 16 order by b;
-a b c
-select * from t4 where a = 7 order by b;
-a b c d
-7 16 5 26007
-select * from t4 where a = 7 order by a;
-a b c d
-7 16 5 26007
-select * from t4 where a = 7 order by 2;
-a b c d
-7 16 5 26007
-select * from t4 where a = 7 order by c;
-a b c d
-7 16 5 26007
-select * from t4 where a = 7 and b = 16 order by b;
-a b c d
-7 16 5 26007
-select * from t4 where a = 7 and b = 16 order by a;
-a b c d
-7 16 5 26007
-select * from t4 where a = 7 and b = 17 order by a;
-a b c d
-select * from t4 where a = 7 and b != 16 order by b;
-a b c d
-delete from t2 where a > 5;
-select x1.a, x1.b from t2 x1, t2 x2 where x1.b = x2.b order by x1.a;
-a b
-1 10
-3 12
-5 14
-select a, b FROM t2 outer_table where
-a = (select a from t2 where b = outer_table.b ) order by a;
-a b
-1 10
-3 12
-5 14
-delete from t2;
-delete from t3;
-delete from t4;
-drop table t2;
-drop table t3;
-drop table t4;
-CREATE TABLE t5 (
-a bigint unsigned NOT NULL,
-b bigint unsigned not null,
-c bigint unsigned NOT NULL,
-d int unsigned,
-PRIMARY KEY(a, b, c)
-) engine=ndbcluster;
-insert into t5 values(10, 19, 5, 26010);
-delete from t5 where a=10 and b=19 and c=5;
-select * from t5;
-a b c d
-insert into t5 values(10, 19, 5, 26010);
-update t5 set d=21997 where a=10 and b=19 and c=5;
-select * from t5;
-a b c d
-10 19 5 21997
-delete from t5;
-drop table t5;
-CREATE TABLE t6 (
-adress char(255),
-a int NOT NULL PRIMARY KEY,
-b int
-) engine = NDB;
-insert into t6 values
-("Nice road 3456", 1, 23),
-("Street Road 78", 3, 92),
-("Road street 89C", 5, 71),
-(NULL, 7, NULL);
-select * from t6 order by a;
-adress a b
-Nice road 3456 1 23
-Street Road 78 3 92
-Road street 89C 5 71
-NULL 7 NULL
-select a, b from t6 order by a;
-a b
-1 23
-3 92
-5 71
-7 NULL
-update t6 set adress="End of road 09" where a=3;
-update t6 set b=181, adress="Street 76" where a=7;
-select * from t6 order by a;
-adress a b
-Nice road 3456 1 23
-End of road 09 3 92
-Road street 89C 5 71
-Street 76 7 181
-select * from t6 where a=1;
-adress a b
-Nice road 3456 1 23
-delete from t6 where a=1;
-select * from t6 order by a;
-adress a b
-End of road 09 3 92
-Road street 89C 5 71
-Street 76 7 181
-delete from t6 where b=71;
-select * from t6 order by a;
-adress a b
-End of road 09 3 92
-Street 76 7 181
-drop table t6;
-CREATE TABLE t7 (
-adress char(255),
-a int NOT NULL,
-b int,
-c int NOT NULL,
-PRIMARY KEY(a, c)
-) engine = NDB;
-insert into t7 values
-("Highway 3456", 1, 23, 2),
-("Street Road 78", 3, 92, 3),
-("Main street 89C", 5, 71, 4),
-(NULL, 8, NULL, 12);
-select * from t7 order by a;
-adress a b c
-Highway 3456 1 23 2
-Street Road 78 3 92 3
-Main street 89C 5 71 4
-NULL 8 NULL 12
-select a, b from t7 order by a;
-a b
-1 23
-3 92
-5 71
-8 NULL
-update t7 set adress="End of road 09" where a=3;
-update t7 set adress="Gatuvägen 90C" where a=5 and c=4;
-update t7 set adress="No adress" where adress is NULL;
-select * from t7 order by a;
-adress a b c
-Highway 3456 1 23 2
-End of road 09 3 92 3
-Gatuvägen 90C 5 71 4
-No adress 8 NULL 12
-select * from t7 where a=1 and c=2;
-adress a b c
-Highway 3456 1 23 2
-delete from t7 where a=1;
-delete from t7 where a=3 and c=3;
-delete from t7 where a=5 and c=4;
-select * from t7;
-adress a b c
-No adress 8 NULL 12
-delete from t7 where b=23;
-select * from t7;
-adress a b c
-No adress 8 NULL 12
-drop table t7;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL,
-attr2 INT,
-attr3 VARCHAR(10)
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
-create database mysqltest;
-use mysqltest;
-CREATE TABLE t2 (
-a bigint unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-insert into t2 select pk1,attr1,attr2 from test.t1;
-select * from t2 order by a;
-a b c
-9410 9412 NULL
-9411 9413 17
-select b from test.t1, t2 where c = test.t1.attr2;
-b
-9413
-select b,test.t1.attr1 from test.t1, t2 where test.t1.pk1 < a;
-b attr1
-9413 9412
-drop table test.t1, t2;
-drop database mysqltest;
-drop database if exists ndbtest1;
-create database ndbtest1;
-use ndbtest1;
-create table t1(id int) engine=ndbcluster;
-drop database ndbtest1;
-drop database ndbtest1;
-ERROR HY000: Can't drop database 'ndbtest1'; database doesn't exist
-use test;
-create table t1 (a int primary key, b char(0));
-insert into t1 values (1,"");
-insert into t1 values (2,NULL);
-select * from t1 order by a;
-a b
-1
-2 NULL
-select * from t1 order by b;
-a b
-2 NULL
-1
-select * from t1 where b IS NULL;
-a b
-2 NULL
-select * from t1 where b IS NOT NULL;
-a b
-1
-drop table t1;
-create table t1 (
-c1 int,
-c2 int,
-c3 int,
-c4 int,
-c5 int,
-c6 int,
-c7 int,
-c8 int,
-c9 int,
-c10 int,
-c11 int,
-c12 int,
-c13 int,
-c14 int,
-c15 int,
-c16 int,
-c17 int,
-c18 int,
-c19 int,
-c20 int,
-c21 int,
-c22 int,
-c23 int,
-c24 int,
-c25 int,
-c26 int,
-c27 int,
-c28 int,
-c29 int,
-c30 int,
-c31 int,
-c32 int,
-c33 int,
-c34 int,
-c35 int,
-c36 int,
-c37 int,
-c38 int,
-c39 int,
-c40 int,
-c41 int,
-c42 int,
-c43 int,
-c44 int,
-c45 int,
-c46 int,
-c47 int,
-c48 int,
-c49 int,
-c50 int,
-c51 int,
-c52 int,
-c53 int,
-c54 int,
-c55 int,
-c56 int,
-c57 int,
-c58 int,
-c59 int,
-c60 int,
-c61 int,
-c62 int,
-c63 int,
-c64 int,
-c65 int,
-c66 int,
-c67 int,
-c68 int,
-c69 int,
-c70 int,
-c71 int,
-c72 int,
-c73 int,
-c74 int,
-c75 int,
-c76 int,
-c77 int,
-c78 int,
-c79 int,
-c80 int,
-c81 int,
-c82 int,
-c83 int,
-c84 int,
-c85 int,
-c86 int,
-c87 int,
-c88 int,
-c89 int,
-c90 int,
-c91 int,
-c92 int,
-c93 int,
-c94 int,
-c95 int,
-c96 int,
-c97 int,
-c98 int,
-c99 int,
-c100 int,
-c101 int,
-c102 int,
-c103 int,
-c104 int,
-c105 int,
-c106 int,
-c107 int,
-c108 int,
-c109 int,
-c110 int,
-c111 int,
-c112 int,
-c113 int,
-c114 int,
-c115 int,
-c116 int,
-c117 int,
-c118 int,
-c119 int,
-c120 int,
-c121 int,
-c122 int,
-c123 int,
-c124 int,
-c125 int,
-c126 int,
-c127 int,
-c128 int,
-primary key(c1)) engine=ndb;
-drop table t1;
-create table t1 (
-a1234567890123456789012345678901234567890 int primary key,
-a12345678901234567890123456789a1234567890 int,
-index(a12345678901234567890123456789a1234567890)
-) engine=ndb;
-show tables;
-Tables_in_test
-t1
-insert into t1 values (1,1),(2,1),(3,1),(4,1),(5,2),(6,1),(7,1);
-explain select * from t1 where a12345678901234567890123456789a1234567890=2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a12345678901234567890123456789a1234567890 a12345678901234567890123456789a1234567890 5 const 10 Using where
-select * from t1 where a12345678901234567890123456789a1234567890=2;
-a1234567890123456789012345678901234567890 a12345678901234567890123456789a1234567890
-5 2
-drop table t1;
-create table t1
-(a bigint, b bigint, c bigint, d bigint,
-primary key (a,b,c,d))
-engine=ndb
-max_rows=800000000;
-Warnings:
-Warning 1105 Ndb might have problems storing the max amount of rows specified
-insert into t1 values
-(1,2,3,4),(2,3,4,5),(3,4,5,6),
-(3,2,3,4),(1,3,4,5),(2,4,5,6),
-(1,2,3,5),(2,3,4,8),(3,4,5,9),
-(3,2,3,5),(1,3,4,8),(2,4,5,9),
-(1,2,3,6),(2,3,4,6),(3,4,5,7),
-(3,2,3,6),(1,3,4,6),(2,4,5,7),
-(1,2,3,7),(2,3,4,7),(3,4,5,8),
-(3,2,3,7),(1,3,4,7),(2,4,5,8),
-(1,3,3,4),(2,4,4,5),(3,5,5,6),
-(3,3,3,4),(1,4,4,5),(2,5,5,6),
-(1,3,3,5),(2,4,4,8),(3,5,5,9),
-(3,3,3,5),(1,4,4,8),(2,5,5,9),
-(1,3,3,6),(2,4,4,6),(3,5,5,7),
-(3,3,3,6),(1,4,4,6),(2,5,5,7),
-(1,3,3,7),(2,4,4,7),(3,5,5,8),
-(3,3,3,7),(1,4,4,7),(2,5,5,8);
-select count(*) from t1;
-count(*)
-48
-drop table t1;
-create table t1
-(a bigint, b bigint, c bigint, d bigint,
-primary key (a))
-engine=ndb
-max_rows=1;
-drop table t1;
-create table t1
-(counter int(64) NOT NULL auto_increment,
-datavalue char(40) default 'XXXX',
-primary key (counter)
-) ENGINE=ndbcluster;
-insert into t1 (datavalue) values ('newval');
-insert into t1 (datavalue) values ('newval');
-select * from t1 order by counter;
-counter datavalue
-1 newval
-2 newval
-insert into t1 (datavalue) select datavalue from t1 where counter < 100;
-insert into t1 (datavalue) select datavalue from t1 where counter < 100;
-select * from t1 order by counter;
-counter datavalue
-1 newval
-2 newval
-3 newval
-4 newval
-5 newval
-6 newval
-7 newval
-8 newval
-insert into t1 (datavalue) select datavalue from t1 where counter < 100;
-insert into t1 (datavalue) select datavalue from t1 where counter < 100;
-select * from t1 order by counter;
-counter datavalue
-1 newval
-2 newval
-3 newval
-4 newval
-5 newval
-6 newval
-7 newval
-8 newval
-35 newval
-36 newval
-37 newval
-38 newval
-39 newval
-40 newval
-41 newval
-42 newval
-43 newval
-44 newval
-45 newval
-46 newval
-47 newval
-48 newval
-49 newval
-50 newval
-51 newval
-52 newval
-53 newval
-54 newval
-55 newval
-56 newval
-57 newval
-58 newval
-drop table t1;
-create table t1 (a int primary key auto_increment) engine = ndb;
-insert into t1() values (),(),(),(),(),(),(),(),(),(),(),();
-insert into t1(a) values (20),(28);
-insert into t1() values (),(),(),(),(),(),(),(),(),(),(),();
-insert into t1() values (21), (22);
-drop table t1;
-CREATE TABLE t1 ( b INT ) PACK_KEYS = 0 ENGINE = ndb;
-select * from t1;
-b
-drop table t1;
-create table t1 (a int) engine=ndb;
-create table t2 (a int) engine=ndb;
-insert into t1 values (1);
-insert into t2 values (1);
-delete t1.* from t1, t2 where t1.a = t2.a;
-select * from t1;
-a
-select * from t2;
-a
-1
-drop table t1;
-drop table t2;
-CREATE TABLE t1 (
-i INT,
-j INT,
-x INT,
-y INT,
-z INT
-) engine=ndb;
-CREATE TABLE t2 (
-i INT,
-k INT,
-x INT,
-y INT,
-z INT
-) engine=ndb;
-CREATE TABLE t3 (
-j INT,
-k INT,
-x INT,
-y INT,
-z INT
-) engine=ndb;
-INSERT INTO t1 VALUES ( 1, 2,13,14,15);
-INSERT INTO t2 VALUES ( 1, 3,23,24,25);
-INSERT INTO t3 VALUES ( 2, 3, 1,34,35), ( 2, 3, 1,34,36);
-UPDATE t1 AS a
-INNER JOIN t2 AS b
-ON a.i = b.i
-INNER JOIN t3 AS c
-ON a.j = c.j AND b.k = c.k
-SET a.x = b.x,
-a.y = b.y,
-a.z = (
-SELECT sum(z)
-FROM t3
-WHERE y = 34
-)
-WHERE b.x = 23;
-select * from t1;
-i j x y z
-1 2 23 24 71
-drop table t1;
-drop table t2;
-drop table t3;
-create table atablewithareallylongandirritatingname (a int);
-insert into atablewithareallylongandirritatingname values (2);
-select * from atablewithareallylongandirritatingname;
-a
-2
-drop table atablewithareallylongandirritatingname;
-create table t1 (f1 varchar(50), f2 text,f3 int, primary key(f1)) engine=NDB;
-insert into t1 (f1,f2,f3)VALUES("111111","aaaaaa",1);
-insert into t1 (f1,f2,f3)VALUES("222222","bbbbbb",2);
-select * from t1 order by f1;
-f1 f2 f3
-111111 aaaaaa 1
-222222 bbbbbb 2
-select * from t1 order by f2;
-f1 f2 f3
-111111 aaaaaa 1
-222222 bbbbbb 2
-select * from t1 order by f3;
-f1 f2 f3
-111111 aaaaaa 1
-222222 bbbbbb 2
-drop table t1;
-Illegal ndb error code: 1186
-CREATE TABLE t1 (
-a VARBINARY(40) NOT NULL,
-b VARCHAR (256) CHARACTER SET UTF8 NOT NULL,
-c VARCHAR(256) CHARACTER SET UTF8 NOT NULL,
-PRIMARY KEY (b,c)) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES
-("a","ab","abc"),("b","abc","abcd"),("c","abc","ab"),("d","ab","ab"),("e","abc","abc");
-SELECT * FROM t1 ORDER BY a;
-a b c
-a ab abc
-b abc abcd
-c abc ab
-d ab ab
-e abc abc
-DROP TABLE t1;
-create table t1 (a int not null primary key, b int not null) engine=ndb;
-create table t2 (a int not null primary key, b int not null) engine=ndb;
-insert into t1 values (1,10), (2,20), (3,30);
-insert into t2 values (1,10), (2,20), (3,30);
-select * from t1 order by a;
-a b
-1 10
-2 20
-3 30
-delete from t1 where a > 0 order by a desc limit 1;
-select * from t1 order by a;
-a b
-1 10
-2 20
-delete from t1,t2 using t1,t2 where t1.a = t2.a;
-select * from t2 order by a;
-a b
-3 30
-drop table t1,t2;
-create table t1 (a int not null primary key, b int not null) engine=ndb;
-insert into t1 values (1,10), (2,20), (3,30);
-insert into t1 set a=1, b=100;
-ERROR 23000: Duplicate entry '1' for key 1
-insert ignore into t1 set a=1, b=100;
-select * from t1 order by a;
-a b
-1 10
-2 20
-3 30
-insert into t1 set a=1, b=1000 on duplicate key update b=b+1;
-select * from t1 order by a;
-a b
-1 11
-2 20
-3 30
-drop table t1;
-create table t1 (a int not null primary key, b int not null) engine=ndb;
-create table t2 (c int not null primary key, d int not null) engine=ndb;
-insert into t1 values (1,10), (2,10), (3,30), (4, 30);
-insert into t2 values (1,10), (2,10), (3,30), (4, 30);
-update t1 set a = 1 where a = 3;
-ERROR 23000: Duplicate entry '1' for key 1
-select * from t1 order by a;
-a b
-1 10
-2 10
-3 30
-4 30
-update t1 set b = 1 where a > 1 order by a desc limit 1;
-select * from t1 order by a;
-a b
-1 10
-2 10
-3 30
-4 1
-update t1,t2 set a = 1, c = 1 where a = 3 and c = 3;
-ERROR 23000: Duplicate entry '1' for key 1
-select * from t1 order by a;
-a b
-1 10
-2 10
-3 30
-4 1
-update ignore t1,t2 set a = 1, c = 1 where a = 3 and c = 3;
-select * from t1 order by a;
-a b
-1 10
-2 10
-3 30
-4 1
-drop table t1,t2;
-create table t1 (a varchar(100) primary key, b varchar(100)) engine = NDB;
-insert into t1 values
-('a', 'a'),('b','b'),('c', 'c'),('aa', 'aa'),('bb', 'bb'),('cc', 'cc');
-replace into t1 values ('a', '-a');
-replace into t1 values ('b', '-b');
-replace into t1 values ('c', '-c');
-replace into t1 values ('aa', '-aa');
-replace into t1 values ('bb', '-bb');
-replace into t1 values ('cc', '-cc');
-replace into t1 values ('aaa', '-aaa');
-replace into t1 values ('bbb', '-bbb');
-replace into t1 values ('ccc', '-ccc');
-select * from t1 order by 1,2;
-a b
-a -a
-aa -aa
-aaa -aaa
-b -b
-bb -bb
-bbb -bbb
-c -c
-cc -cc
-ccc -ccc
-drop table t1;
-End of 5.0 tests
diff --git a/mysql-test/r/ndb_blob.result b/mysql-test/r/ndb_blob.result
deleted file mode 100644
index 2864b1dc7c9..00000000000
--- a/mysql-test/r/ndb_blob.result
+++ /dev/null
@@ -1,570 +0,0 @@
-drop table if exists t1;
-drop database if exists test2;
-set autocommit=0;
-create table t1 (
-a int not null primary key,
-b text not null,
-c int not null,
-d longblob,
-key (c)
-) engine=ndbcluster;
-set @x0 = '01234567012345670123456701234567';
-set @x0 = concat(@x0,@x0,@x0,@x0,@x0,@x0,@x0,@x0);
-set @b1 = 'b1';
-set @b1 = concat(@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1);
-set @b1 = concat(@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1);
-set @b1 = concat(@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1);
-set @b1 = concat(@b1,@x0);
-set @d1 = 'dd1';
-set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
-set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
-set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
-set @b2 = 'b2';
-set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
-set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
-set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
-set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
-set @d2 = 'dd2';
-set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
-set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
-set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
-set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
-select length(@x0),length(@b1),length(@d1) from dual;
-length(@x0) length(@b1) length(@d1)
-256 2256 3000
-select length(@x0),length(@b2),length(@d2) from dual;
-length(@x0) length(@b2) length(@d2)
-256 20000 30000
-insert into t1 values(1,@b1,111,@d1);
-insert into t1 values(2,@b2,222,@d2);
-commit;
-explain select * from t1 where a = 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a=1;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
-from t1 where a=2;
-a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
-2 20000 b2 30000 dd2
-update t1 set b=@b2,d=@d2 where a=1;
-update t1 set b=@b1,d=@d1 where a=2;
-commit;
-select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
-from t1 where a=1;
-a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
-1 20000 b2 30000 dd2
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a=2;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-2 2256 b1 3000 dd1
-update t1 set b=concat(b,b),d=concat(d,d) where a=1;
-update t1 set b=concat(b,b),d=concat(d,d) where a=2;
-commit;
-select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
-from t1 where a=1;
-a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
-1 40000 b2 60000 dd2
-select a,length(b),substr(b,1+4*900,2),length(d),substr(d,1+6*900,3)
-from t1 where a=2;
-a length(b) substr(b,1+4*900,2) length(d) substr(d,1+6*900,3)
-2 4512 b1 6000 dd1
-update t1 set d=null where a=1;
-commit;
-select a from t1 where d is null;
-a
-1
-delete from t1 where a=45567;
-commit;
-delete from t1 where a=1;
-delete from t1 where a=2;
-commit;
-select count(*) from t1;
-count(*)
-0
-replace t1 set a=1,b=@b1,c=111,d=@d1;
-replace t1 set a=2,b=@b2,c=222,d=@d2;
-commit;
-explain select * from t1 where a = 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a=1;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
-from t1 where a=2;
-a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
-2 20000 b2 30000 dd2
-replace t1 set a=1,b=@b2,c=111,d=@d2;
-replace t1 set a=2,b=@b1,c=222,d=@d1;
-commit;
-select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
-from t1 where a=1;
-a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
-1 20000 b2 30000 dd2
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a=2;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-2 2256 b1 3000 dd1
-replace t1 set a=1,b=concat(@b2,@b2),c=111,d=concat(@d2,@d2);
-replace t1 set a=2,b=concat(@b1,@b1),c=222,d=concat(@d1,@d1);
-commit;
-select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
-from t1 where a=1;
-a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
-1 40000 b2 60000 dd2
-select a,length(b),substr(b,1+4*900,2),length(d),substr(d,1+6*900,3)
-from t1 where a=2;
-a length(b) substr(b,1+4*900,2) length(d) substr(d,1+6*900,3)
-2 4512 b1 6000 dd1
-replace t1 set a=1,b='xyz',c=111,d=null;
-commit;
-select a,b from t1 where d is null;
-a b
-1 xyz
-delete from t1 where a=1;
-delete from t1 where a=2;
-commit;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,@b1,111,@d1);
-insert into t1 values(2,@b2,222,@d2);
-commit;
-explain select * from t1 where c = 111;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref c c 4 const 10
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where c=111;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
-from t1 where c=222;
-a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
-2 20000 b2 30000 dd2
-update t1 set b=@b2,d=@d2 where c=111;
-update t1 set b=@b1,d=@d1 where c=222;
-commit;
-select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
-from t1 where c=111;
-a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
-1 20000 b2 30000 dd2
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where c=222;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-2 2256 b1 3000 dd1
-update t1 set d=null where c=111;
-commit;
-select a from t1 where d is null;
-a
-1
-delete from t1 where c=111;
-delete from t1 where c=222;
-commit;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,'b1',111,'dd1');
-insert into t1 values(2,'b2',222,'dd2');
-insert into t1 values(3,'b3',333,'dd3');
-insert into t1 values(4,'b4',444,'dd4');
-insert into t1 values(5,'b5',555,'dd5');
-insert into t1 values(6,'b6',666,'dd6');
-insert into t1 values(7,'b7',777,'dd7');
-insert into t1 values(8,'b8',888,'dd8');
-insert into t1 values(9,'b9',999,'dd9');
-commit;
-explain select * from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 9
-select * from t1 order by a;
-a b c d
-1 b1 111 dd1
-2 b2 222 dd2
-3 b3 333 dd3
-4 b4 444 dd4
-5 b5 555 dd5
-6 b6 666 dd6
-7 b7 777 dd7
-8 b8 888 dd8
-9 b9 999 dd9
-update t1 set b=concat(a,'x',b),d=concat(a,'x',d);
-commit;
-select * from t1 order by a;
-a b c d
-1 1xb1 111 1xdd1
-2 2xb2 222 2xdd2
-3 3xb3 333 3xdd3
-4 4xb4 444 4xdd4
-5 5xb5 555 5xdd5
-6 6xb6 666 6xdd6
-7 7xb7 777 7xdd7
-8 8xb8 888 8xdd8
-9 9xb9 999 9xdd9
-delete from t1;
-commit;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,@b1,111,@d1);
-insert into t1 values(2,@b2,222,@d2);
-commit;
-explain select * from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 order by a;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-2 20000 b2 30000 dd2
-update t1 set b=concat(b,b),d=concat(d,d);
-commit;
-select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
-from t1 order by a;
-a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
-1 4512 6000
-2 40000 b2 60000 dd2
-delete from t1;
-commit;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,'b1',111,'dd1');
-insert into t1 values(2,'b2',222,'dd2');
-insert into t1 values(3,'b3',333,'dd3');
-insert into t1 values(4,'b4',444,'dd4');
-insert into t1 values(5,'b5',555,'dd5');
-insert into t1 values(6,'b6',666,'dd6');
-insert into t1 values(7,'b7',777,'dd7');
-insert into t1 values(8,'b8',888,'dd8');
-insert into t1 values(9,'b9',999,'dd9');
-commit;
-explain select * from t1 where c >= 100 order by a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range c c 4 NULL 10 Using where; Using filesort
-select * from t1 where c >= 100 order by a;
-a b c d
-1 b1 111 dd1
-2 b2 222 dd2
-3 b3 333 dd3
-4 b4 444 dd4
-5 b5 555 dd5
-6 b6 666 dd6
-7 b7 777 dd7
-8 b8 888 dd8
-9 b9 999 dd9
-update t1 set b=concat(a,'x',b),d=concat(a,'x',d)
-where c >= 100;
-commit;
-select * from t1 where c >= 100 order by a;
-a b c d
-1 1xb1 111 1xdd1
-2 2xb2 222 2xdd2
-3 3xb3 333 3xdd3
-4 4xb4 444 4xdd4
-5 5xb5 555 5xdd5
-6 6xb6 666 6xdd6
-7 7xb7 777 7xdd7
-8 8xb8 888 8xdd8
-9 9xb9 999 9xdd9
-delete from t1 where c >= 100;
-commit;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,@b1,111,@d1);
-insert into t1 values(2,@b2,222,@d2);
-commit;
-explain select * from t1 where c >= 100 order by a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range c c 4 NULL 10 Using where; Using filesort
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where c >= 100 order by a;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-2 20000 b2 30000 dd2
-update t1 set b=concat(b,b),d=concat(d,d);
-commit;
-select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
-from t1 where c >= 100 order by a;
-a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
-1 4512 6000
-2 40000 b2 60000 dd2
-delete from t1 where c >= 100;
-commit;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,@b1,111,@d1);
-insert into t1 values(2,@b2,222,@d2);
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a = 0;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a = 1;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 where a = 2;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-2 20000 b2 30000 dd2
-select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
-from t1 order by a;
-a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
-1 2256 b1 3000 dd1
-2 20000 b2 30000 dd2
-rollback;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(1,'b1',111,'dd1');
-insert into t1 values(2,'b2',222,'dd2');
-insert into t1 values(3,'b3',333,'dd3');
-insert into t1 values(4,'b4',444,'dd4');
-insert into t1 values(5,'b5',555,'dd5');
-insert into t1 values(6,'b6',666,'dd6');
-insert into t1 values(7,'b7',777,'dd7');
-insert into t1 values(8,'b8',888,'dd8');
-insert into t1 values(9,'b9',999,'dd9');
-commit;
-select * from t1 order by a;
-a b c d
-1 b1 111 dd1
-2 b2 222 dd2
-3 b3 333 dd3
-4 b4 444 dd4
-5 b5 555 dd5
-6 b6 666 dd6
-7 b7 777 dd7
-8 b8 888 dd8
-9 b9 999 dd9
-alter table t1 add x int;
-select * from t1 order by a;
-a b c d x
-1 b1 111 dd1 NULL
-2 b2 222 dd2 NULL
-3 b3 333 dd3 NULL
-4 b4 444 dd4 NULL
-5 b5 555 dd5 NULL
-6 b6 666 dd6 NULL
-7 b7 777 dd7 NULL
-8 b8 888 dd8 NULL
-9 b9 999 dd9 NULL
-alter table t1 drop x;
-select * from t1 order by a;
-a b c d
-1 b1 111 dd1
-2 b2 222 dd2
-3 b3 333 dd3
-4 b4 444 dd4
-5 b5 555 dd5
-6 b6 666 dd6
-7 b7 777 dd7
-8 b8 888 dd8
-9 b9 999 dd9
-create database test2;
-use test2;
-CREATE TABLE t2 (
-a bigint unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-insert into t2 values (1,1,1),(2,2,2);
-select * from test.t1,t2 where test.t1.a = t2.a order by test.t1.a;
-a b c d a b c
-1 b1 111 dd1 1 1 1
-2 b2 222 dd2 2 2 2
-drop table t2;
-use test;
-select * from t1 order by a;
-a b c d
-1 b1 111 dd1
-2 b2 222 dd2
-3 b3 333 dd3
-4 b4 444 dd4
-5 b5 555 dd5
-6 b6 666 dd6
-7 b7 777 dd7
-8 b8 888 dd8
-9 b9 999 dd9
-alter table t1 add x int;
-select * from t1 order by a;
-a b c d x
-1 b1 111 dd1 NULL
-2 b2 222 dd2 NULL
-3 b3 333 dd3 NULL
-4 b4 444 dd4 NULL
-5 b5 555 dd5 NULL
-6 b6 666 dd6 NULL
-7 b7 777 dd7 NULL
-8 b8 888 dd8 NULL
-9 b9 999 dd9 NULL
-alter table t1 drop x;
-select * from t1 order by a;
-a b c d
-1 b1 111 dd1
-2 b2 222 dd2
-3 b3 333 dd3
-4 b4 444 dd4
-5 b5 555 dd5
-6 b6 666 dd6
-7 b7 777 dd7
-8 b8 888 dd8
-9 b9 999 dd9
-drop table t1;
-drop database test2;
-set autocommit=0;
-create table t1 (
-a int not null primary key,
-b tinytext
-) engine=ndbcluster;
-insert into t1 values(1, 'x');
-update t1 set b = 'y';
-select * from t1;
-a b
-1 y
-delete from t1;
-select * from t1;
-a b
-commit;
-replace t1 set a=2, b='y';
-select * from t1;
-a b
-2 y
-delete from t1;
-select * from t1;
-a b
-drop table t1;
-set autocommit=0;
-create table t1 (
-a int not null primary key,
-b text not null
-) engine=ndbcluster;
-insert into t1 values(1, '');
-select * from t1;
-a b
-1
-commit;
-drop table t1;
-set autocommit=1;
-use test;
-CREATE TABLE t1 (
-a int,
-b text,
-PRIMARY KEY (a)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-INSERT INTO t1 VALUES
-(1,'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA');
-INSERT INTO t1 VALUES
-(2,'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB');
-select * from t1 order by a;
-a b
-1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-2 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
-alter table t1 engine=ndb;
-select * from t1 order by a;
-a b
-1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-2 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
-set autocommit=1;
-alter table t1 engine=myisam;
-select * from t1 order by a;
-a b
-1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-2 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
-drop table t1;
-create table t1 (
-id int(11) unsigned primary key NOT NULL auto_increment,
-msg text NOT NULL
-) engine=ndbcluster default charset=utf8;
-insert into t1 (msg) values(
-'Tries to validate (8 byte length + inline bytes) as UTF8 :(
-Fast fix: removed validation for Text. It is not yet indexable
-so bad data will not crash kernel.');
-select * from t1;
-id msg
-1 Tries to validate (8 byte length + inline bytes) as UTF8 :(
-Fast fix: removed validation for Text. It is not yet indexable
-so bad data will not crash kernel.
-drop table t1;
-create table t1 (
-a int primary key not null auto_increment,
-b text
-) engine=ndbcluster;
-select count(*) from t1;
-count(*)
-500
-truncate t1;
-select count(*) from t1;
-count(*)
-0
-drop table t1;
-create table t1 (
-a varchar(40) not null,
-b mediumint not null,
-t text,
-c varchar(2) not null,
-d bigint not null,
-primary key (a,b,c),
-key (c,a),
-unique key (d)
-) engine=ndb;
-insert into t1 (a,b,c,d,t) values ('a',1110,'a',1,@v1);
-insert into t1 (a,b,c,d,t) values ('b',1110,'a',2,@v2);
-insert into t1 (a,b,c,d,t) values ('a',1110,'b',3,@v3);
-insert into t1 (a,b,c,d,t) values ('b',1110,'b',4,@v4);
-select a,b,c,d,sha1(t) from t1 order by c,a;
-a b c d sha1(t)
-a 1110 a 1 558a30713786aa72f66abc1e6a521d55aacdeeb5
-b 1110 a 2 b238654911689bfb626a3ef9dba4a1ca074e6a5e
-a 1110 b 3 2b6515f29c20b8e9e17cc597527e516c0de8d612
-b 1110 b 4 NULL
-select a,b,c,d,sha1(t) from t1 where a='a' and b=1110 and c='a';
-a b c d sha1(t)
-a 1110 a 1 558a30713786aa72f66abc1e6a521d55aacdeeb5
-select a,b,c,d,sha1(t) from t1 where a='a' and b=1110 and c='b';
-a b c d sha1(t)
-a 1110 b 3 2b6515f29c20b8e9e17cc597527e516c0de8d612
-update t1 set t=@v4 where a='b' and b=1110 and c='a';
-update t1 set t=@v2 where a='b' and b=1110 and c='b';
-select a,b,c,d,sha1(t) from t1 order by c,a;
-a b c d sha1(t)
-a 1110 a 1 558a30713786aa72f66abc1e6a521d55aacdeeb5
-b 1110 a 2 NULL
-a 1110 b 3 2b6515f29c20b8e9e17cc597527e516c0de8d612
-b 1110 b 4 b238654911689bfb626a3ef9dba4a1ca074e6a5e
-update t1 set t=@v2 where d=2;
-update t1 set t=@v4 where d=4;
-select a,b,c,d,sha1(t) from t1 order by c,a;
-a b c d sha1(t)
-a 1110 a 1 558a30713786aa72f66abc1e6a521d55aacdeeb5
-b 1110 a 2 b238654911689bfb626a3ef9dba4a1ca074e6a5e
-a 1110 b 3 2b6515f29c20b8e9e17cc597527e516c0de8d612
-b 1110 b 4 NULL
-update t1 set t=@v4 where a='b' and c='a';
-update t1 set t=@v2 where a='b' and c='b';
-select a,b,c,d,sha1(t) from t1 order by c,a;
-a b c d sha1(t)
-a 1110 a 1 558a30713786aa72f66abc1e6a521d55aacdeeb5
-b 1110 a 2 NULL
-a 1110 b 3 2b6515f29c20b8e9e17cc597527e516c0de8d612
-b 1110 b 4 b238654911689bfb626a3ef9dba4a1ca074e6a5e
-update t1 set t=@v2 where b+d=1112;
-update t1 set t=@v4 where b+d=1114;
-select a,b,c,d,sha1(t) from t1 order by c,a;
-a b c d sha1(t)
-a 1110 a 1 558a30713786aa72f66abc1e6a521d55aacdeeb5
-b 1110 a 2 b238654911689bfb626a3ef9dba4a1ca074e6a5e
-a 1110 b 3 2b6515f29c20b8e9e17cc597527e516c0de8d612
-b 1110 b 4 NULL
-delete from t1 where a='a' and b=1110 and c='a';
-delete from t1 where a='b' and c='a';
-delete from t1 where d=3;
-delete from t1 where b+d=1114;
-select count(*) from t1;
-count(*)
-0
-drop table t1;
diff --git a/mysql-test/r/ndb_bug26793.result b/mysql-test/r/ndb_bug26793.result
deleted file mode 100644
index a9a8a798546..00000000000
--- a/mysql-test/r/ndb_bug26793.result
+++ /dev/null
@@ -1,8 +0,0 @@
-DROP TABLE IF EXISTS t1;
-CREATE TABLE `test` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`t` VARCHAR( 10 ) NOT NULL
-) ENGINE = ndbcluster;
-GRANT USAGE ON *.* TO user1@localhost IDENTIFIED BY 'pass';
-DROP TABLE `test`.`test`;
-drop user user1@localhost;
diff --git a/mysql-test/r/ndb_bug31477.result b/mysql-test/r/ndb_bug31477.result
deleted file mode 100644
index 002a928b485..00000000000
--- a/mysql-test/r/ndb_bug31477.result
+++ /dev/null
@@ -1,98 +0,0 @@
-drop table if exists t1;
-create table t1(a int primary key, b int, c int, unique(b)) engine = ndb;
-insert into t1 values (2,2,2);
-insert into t1 values (3,3,3);
-insert into t1 values (4,4,4);
-begin;
-insert into t1 values (1,1,1);
-begin;
-update t1 set c = 2 where b = 1;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-rollback;
-drop table t1;
-create table t1(a int primary key, b int, c int, key(b)) engine = ndb;
-insert into t1 values (2,2,2);
-insert into t1 values (3,3,3);
-insert into t1 values (4,4,4);
-begin;
-insert into t1 values (1,1,1);
-begin;
-update t1 set c = 2 where b = 1;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-rollback;
-drop table t1;
---con1
-create table t1(a int primary key, b int, c int, key(b)) engine = ndb;
-insert into t1 values (1,1,1);
-insert into t1 values (2,2,2);
-insert into t1 values (3,3,3);
-insert into t1 values (4,4,4);
-begin;
-update t1 set c = 10 where a = 1;
-update t1 set c = 20 where a = 1;
-update t1 set c = 30 where a = 1;
---con1 c=30
-select * from t1 where b >= 1 order by b;
-a b c
-1 1 30
-2 2 2
-3 3 3
-4 4 4
---con2 c=1
-select * from t1 where b >= 1 order by b;
-a b c
-1 1 1
-2 2 2
-3 3 3
-4 4 4
---con1
-delete from t1 where a = 1;
---con1 c=none
-select * from t1 where b >= 1 order by b;
-a b c
-2 2 2
-3 3 3
-4 4 4
---con2 c=1
-select * from t1 where b >= 1 order by b;
-a b c
-1 1 1
-2 2 2
-3 3 3
-4 4 4
---con1
-commit;
---con1 c=none
-select * from t1 where b >= 1 order by b;
-a b c
-2 2 2
-3 3 3
-4 4 4
---con2 c=none
-select * from t1 where b >= 1 order by b;
-a b c
-2 2 2
-3 3 3
-4 4 4
---con1
-begin;
-insert into t1 values (1,1,1);
-update t1 set c = 10 where a = 1;
-update t1 set c = 20 where a = 1;
-update t1 set c = 30 where a = 1;
---con1 c=30
-select * from t1 where b >= 1 order by b;
-a b c
-1 1 30
-2 2 2
-3 3 3
-4 4 4
---con2 c=none
-select * from t1 where b >= 1 order by b;
-a b c
-2 2 2
-3 3 3
-4 4 4
-drop table t1;
diff --git a/mysql-test/r/ndb_cache.result b/mysql-test/r/ndb_cache.result
deleted file mode 100644
index 478663b1aa1..00000000000
--- a/mysql-test/r/ndb_cache.result
+++ /dev/null
@@ -1,191 +0,0 @@
-drop table if exists t1;
-set GLOBAL query_cache_type=on;
-set GLOBAL query_cache_size=1355776;
-reset query cache;
-flush status;
-CREATE TABLE t1 ( pk int not null primary key,
-a int, b int not null, c varchar(20)) ENGINE=ndbcluster;
-insert into t1 value (1, 2, 3, 'First row');
-select * from t1;
-pk a b c
-1 2 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1;
-pk a b c
-1 2 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-update t1 set a=3 where pk=1;
-select * from t1;
-pk a b c
-1 3 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-insert into t1 value (2, 7, 8, 'Second row');
-insert into t1 value (4, 5, 6, 'Fourth row');
-select * from t1 order by pk;
-pk a b c
-1 3 3 First row
-2 7 8 Second row
-4 5 6 Fourth row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-select * from t1 order by pk;
-pk a b c
-1 3 3 First row
-2 7 8 Second row
-4 5 6 Fourth row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 2
-select * from t1 where b=3;
-pk a b c
-1 3 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 2
-select * from t1 where b=3;
-pk a b c
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 3
-delete from t1 where c='Fourth row';
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-select * from t1 where b=3;
-pk a b c
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 3
-use test;
-select * from t1 order by pk;
-pk a b c
-1 3 3 First row
-2 7 8 Second row
-select * from t1 where b=3;
-pk a b c
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 4
-update t1 set a=4 where b=3;
-use test;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 4 3 First row
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 4 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 7
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 5
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 4 3 First row
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 4 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 7
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 7
-begin;
-update t1 set a=5 where pk=1;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 7
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 7
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 4 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 8
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 7
-commit;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 8
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 7
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 5 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 9
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 7
-select * from t1 order by pk desc;
-pk a b c
-2 7 8 Second row
-1 5 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 9
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 8
-drop table t1;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-SET GLOBAL query_cache_size=0;
diff --git a/mysql-test/r/ndb_cache2.result b/mysql-test/r/ndb_cache2.result
deleted file mode 100644
index 2876002f864..00000000000
--- a/mysql-test/r/ndb_cache2.result
+++ /dev/null
@@ -1,623 +0,0 @@
-drop table if exists t1, t2, t3, t4, t5;
-set GLOBAL query_cache_type=on;
-set GLOBAL query_cache_size=1355776;
-set GLOBAL ndb_cache_check_time=100;
-reset query cache;
-flush status;
-CREATE TABLE t1 (
-pk int not null primary key,
-a1 int,
-b1 int not null,
-c1 varchar(20)
-) ENGINE=ndb;
-CREATE TABLE t2 (
-pk int not null primary key,
-a2 int,
-b2 int not null
-) ENGINE=ndb;
-CREATE TABLE t3 (
-pk int not null primary key,
-a3 int,
-b3 int not null,
-c3 int not null,
-d3 varchar(20)
-) ENGINE=ndb;
-CREATE TABLE t4 (
-a4 int,
-b4 int not null,
-c4 char(20)
-) ENGINE=ndbcluster;
-CREATE TABLE t5 (
-pk int not null primary key,
-a5 int,
-b5 int not null,
-c5 varchar(255)
-) ENGINE=ndbcluster;
-insert into t1 value (1, 2, 3, 'First row');
-insert into t2 value (1, 2, 3);
-insert into t3 value (1, 2, 3, 4, '3 - First row');
-insert into t4 value (2, 3, '4 - First row');
-insert into t5 value (1, 2, 3, '5 - First row');
-select * from t1;
-pk a1 b1 c1
-1 2 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1;
-pk a1 b1 c1
-1 2 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-update t1 set a1=3 where pk=1;
-select * from t1;
-pk a1 b1 c1
-1 3 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-insert into t1 value (2, 7, 8, 'Second row');
-insert into t1 value (4, 5, 6, 'Fourth row');
-select * from t1 order by pk desc;
-pk a1 b1 c1
-4 5 6 Fourth row
-2 7 8 Second row
-1 3 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-select * from t1 order by pk desc;
-pk a1 b1 c1
-4 5 6 Fourth row
-2 7 8 Second row
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 2
-select * from t1 where b1=3;
-pk a1 b1 c1
-1 3 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 2
-select * from t1 where b1=3;
-pk a1 b1 c1
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 3
-delete from t1 where c1='Fourth row';
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-select * from t1 where b1=3;
-pk a1 b1 c1
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 3
-use test;
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 3 3 First row
-select * from t1 where b1=3;
-pk a1 b1 c1
-1 3 3 First row
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 4
-update t1 set a1=4 where b1=3;
-use test;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 4 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 4 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 7
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 5
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 4 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 4 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 7
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 7
-select * from t2;
-pk a2 b2
-1 2 3
-select * from t3;
-pk a3 b3 c3 d3
-1 2 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-2 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 2 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-flush status;
-begin;
-update t1 set a1=5 where pk=1;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 4
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 4 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-commit;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 5 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 5 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-flush status;
-begin;
-update t1 set a1=6 where pk=1;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 4
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 5 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 5 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 6 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-commit;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 1
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 2
-flush status;
-begin;
-insert into t1 set pk=5, a1=6, b1=3, c1="New row";
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 4
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 where pk=5;
-pk a1 b1 c1
-select * from t1 order by pk desc;
-pk a1 b1 c1
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 6
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 where pk=5;
-pk a1 b1 c1
-5 6 3 New row
-select * from t1 where pk=5;
-pk a1 b1 c1
-5 6 3 New row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-2 7 8 Second row
-1 6 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 6
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-commit;
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-flush status;
-begin;
-delete from t1 where pk=2;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 4
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 where pk=2;
-pk a1 b1 c1
-2 7 8 Second row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-2 7 8 Second row
-1 6 3 First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 6
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 where pk=2;
-pk a1 b1 c1
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 6 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 6 3 First row
-select * from t1 where pk=2;
-pk a1 b1 c1
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 6
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-commit;
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 6 3 First row
-select * from t1 where pk=2;
-pk a1 b1 c1
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 6
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 4
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-flush status;
-begin;
-update t1 set a1=9 where pk=1;
-update t2 set a2=9 where pk=1;
-update t3 set a3=9 where pk=1;
-update t4 set a4=9 where a4=2;
-update t5 set a5=9 where pk=1;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 6 3 First row
-select * from t2;
-pk a2 b2
-1 2 3
-select * from t3;
-pk a3 b3 c3 d3
-1 2 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-2 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 2 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 5
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 9 3 First row
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 9 3 First row
-select * from t2;
-pk a2 b2
-1 9 3
-select * from t3;
-pk a3 b3 c3 d3
-1 9 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-9 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 9 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 5
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-commit;
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 9 3 First row
-select * from t2;
-pk a2 b2
-1 9 3
-select * from t3;
-pk a3 b3 c3 d3
-1 9 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-9 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 9 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 10
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 9 3 First row
-select * from t2;
-pk a2 b2
-1 9 3
-select * from t3;
-pk a3 b3 c3 d3
-1 9 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-9 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 9 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 10
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 5
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 9 3 First row
-select * from t2;
-pk a2 b2
-1 9 3
-select * from t3;
-pk a3 b3 c3 d3
-1 9 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-9 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 9 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 10
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 10
-select * from t1 order by pk desc;
-pk a1 b1 c1
-5 6 3 New row
-1 9 3 First row
-select * from t2;
-pk a2 b2
-1 9 3
-select * from t3;
-pk a3 b3 c3 d3
-1 9 3 4 3 - First row
-select * from t4;
-a4 b4 c4
-9 3 4 - First row
-select * from t5;
-pk a5 b5 c5
-1 9 3 5 - First row
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 5
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 10
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 15
-drop table t1, t2, t3, t4, t5;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-SET GLOBAL query_cache_size=0;
-SET GLOBAL ndb_cache_check_time=0;
diff --git a/mysql-test/r/ndb_cache_multi.result b/mysql-test/r/ndb_cache_multi.result
deleted file mode 100644
index c7135ed9e8a..00000000000
--- a/mysql-test/r/ndb_cache_multi.result
+++ /dev/null
@@ -1,72 +0,0 @@
-drop table if exists t1, t2;
-set GLOBAL query_cache_type=on;
-set GLOBAL query_cache_size=1355776;
-reset query cache;
-flush status;
-set GLOBAL query_cache_type=on;
-set GLOBAL query_cache_size=1355776;
-reset query cache;
-flush status;
-create table t1 (a int) engine=ndbcluster;
-create table t2 (a int) engine=ndbcluster;
-insert into t1 value (2);
-insert into t2 value (3);
-select * from t1;
-a
-2
-select * from t2;
-a
-3
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 2
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1;
-a
-2
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-update t1 set a=3 where a=2;
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 2
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 2
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1;
-a
-3
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 2
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-drop table t1, t2;
diff --git a/mysql-test/r/ndb_cache_multi2.result b/mysql-test/r/ndb_cache_multi2.result
deleted file mode 100644
index 53767bb6d3c..00000000000
--- a/mysql-test/r/ndb_cache_multi2.result
+++ /dev/null
@@ -1,75 +0,0 @@
-drop table if exists t1, t2;
-== Connected to server1 ==
-set GLOBAL query_cache_type=on;
-set GLOBAL query_cache_size=1355776;
-set GLOBAL ndb_cache_check_time=1;
-reset query cache;
-flush status;
-== Connected to server2 ==
-set GLOBAL query_cache_type=on;
-set GLOBAL query_cache_size=1355776;
-set GLOBAL ndb_cache_check_time=1;
-reset query cache;
-flush status;
-== Connected to server1 ==
-create table t1 (a int) engine=ndbcluster;
-create table t2 (a int) engine=ndbcluster;
-insert into t1 value (2);
-insert into t2 value (3);
-select * from t1;
-a
-2
-select a != 3 from t1;
-a != 3
-1
-select * from t2;
-a
-3
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 3
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 3
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-== Connected to server2 ==
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 0
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 0
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-select * from t1;
-a
-2
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 1
-show status like "Qcache_inserts";
-Variable_name Value
-Qcache_inserts 1
-show status like "Qcache_hits";
-Variable_name Value
-Qcache_hits 0
-update t1 set a=3 where a=2;
-== Connected to server1 ==
-select * from t1;
-a
-3
-show status like "Qcache_queries_in_cache";
-Variable_name Value
-Qcache_queries_in_cache 3
-drop table t1, t2;
-set GLOBAL query_cache_size=0;
-set GLOBAL ndb_cache_check_time=0;
-reset query cache;
-flush status;
-set GLOBAL query_cache_size=0;
-set GLOBAL ndb_cache_check_time=0;
-reset query cache;
-flush status;
diff --git a/mysql-test/r/ndb_charset.result b/mysql-test/r/ndb_charset.result
deleted file mode 100644
index ed2b144cac9..00000000000
--- a/mysql-test/r/ndb_charset.result
+++ /dev/null
@@ -1,326 +0,0 @@
-drop table if exists t1;
-create table t1 (
-a char(3) character set latin1 collate latin1_bin primary key
-) engine=ndb;
-insert into t1 values('aAa');
-insert into t1 values('aaa');
-insert into t1 values('AAA');
-select * from t1 order by a;
-a
-AAA
-aAa
-aaa
-select * from t1 where a = 'aAa';
-a
-aAa
-select * from t1 where a = 'aaa';
-a
-aaa
-select * from t1 where a = 'AaA';
-a
-select * from t1 where a = 'AAA';
-a
-AAA
-drop table t1;
-create table t1 (
-a char(3) character set latin1 collate latin1_swedish_ci primary key
-) engine=ndb;
-insert into t1 values('aAa');
-insert into t1 values('aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 1
-insert into t1 values('AAA');
-ERROR 23000: Duplicate entry 'AAA' for key 1
-select * from t1 order by a;
-a
-aAa
-select * from t1 where a = 'aAa';
-a
-aAa
-select * from t1 where a = 'aaa';
-a
-aAa
-select * from t1 where a = 'AaA';
-a
-aAa
-select * from t1 where a = 'AAA';
-a
-aAa
-drop table t1;
-create table t1 (
-a varchar(20) character set latin1 collate latin1_swedish_ci primary key
-) engine=ndb;
-insert into t1 values ('A'),('b '),('C '),('d '),('E'),('f');
-insert into t1 values('b');
-ERROR 23000: Duplicate entry 'b' for key 1
-insert into t1 values('a ');
-ERROR 23000: Duplicate entry 'a ' for key 1
-select a,length(a) from t1 order by a;
-a length(a)
-A 1
-b 2
-C 3
-d 7
-E 1
-f 1
-select a,length(a) from t1 order by a desc;
-a length(a)
-f 1
-E 1
-d 7
-C 3
-b 2
-A 1
-select * from t1 where a = 'a';
-a
-A
-select * from t1 where a = 'a ';
-a
-A
-select * from t1 where a = 'd';
-a
-d
-drop table t1;
-create table t1 (
-p int primary key,
-a char(3) character set latin1 collate latin1_bin not null,
-unique key(a)
-) engine=ndb;
-insert into t1 values(1, 'aAa');
-insert into t1 values(2, 'aaa');
-insert into t1 values(3, 'AAA');
-select * from t1 order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-select * from t1 where a = 'aAa';
-p a
-1 aAa
-select * from t1 where a = 'aaa';
-p a
-2 aaa
-select * from t1 where a = 'AaA';
-p a
-select * from t1 where a = 'AAA';
-p a
-3 AAA
-drop table t1;
-create table t1 (
-p int primary key,
-a char(3) character set latin1 collate latin1_swedish_ci not null,
-unique key(a)
-) engine=ndb;
-insert into t1 values(1, 'aAa');
-insert into t1 values(2, 'aaa');
-ERROR 23000: Duplicate entry 'aaa' for key 2
-insert into t1 values(3, 'AAA');
-ERROR 23000: Duplicate entry 'AAA' for key 2
-select * from t1 order by p;
-p a
-1 aAa
-select * from t1 where a = 'aAa';
-p a
-1 aAa
-select * from t1 where a = 'aaa';
-p a
-1 aAa
-select * from t1 where a = 'AaA';
-p a
-1 aAa
-select * from t1 where a = 'AAA';
-p a
-1 aAa
-drop table t1;
-create table t1 (
-p int primary key,
-a varchar(20) character set latin1 collate latin1_swedish_ci not null,
-unique key(a)
-) engine=ndb;
-insert into t1 values (1,'A'),(2,'b '),(3,'C '),(4,'d '),(5,'E'),(6,'f');
-insert into t1 values(99,'b');
-ERROR 23000: Duplicate entry 'b' for key 2
-insert into t1 values(99,'a ');
-ERROR 23000: Duplicate entry 'a ' for key 2
-select a,length(a) from t1 order by a;
-a length(a)
-A 1
-b 2
-C 3
-d 7
-E 1
-f 1
-select a,length(a) from t1 order by a desc;
-a length(a)
-f 1
-E 1
-d 7
-C 3
-b 2
-A 1
-select * from t1 where a = 'a';
-p a
-1 A
-select * from t1 where a = 'a ';
-p a
-1 A
-select * from t1 where a = 'd';
-p a
-4 d
-drop table t1;
-create table t1 (
-p int primary key,
-a char(3) character set latin1 collate latin1_bin not null,
-index(a)
-) engine=ndb;
-insert into t1 values(1, 'aAa');
-insert into t1 values(2, 'aaa');
-insert into t1 values(3, 'AAA');
-insert into t1 values(4, 'aAa');
-insert into t1 values(5, 'aaa');
-insert into t1 values(6, 'AAA');
-select * from t1 order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-4 aAa
-5 aaa
-6 AAA
-explain select * from t1 where a = 'zZz' order by p;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a a 3 const 10 Using where; Using filesort
-select * from t1 where a = 'aAa' order by p;
-p a
-1 aAa
-4 aAa
-select * from t1 where a = 'aaa' order by p;
-p a
-2 aaa
-5 aaa
-select * from t1 where a = 'AaA' order by p;
-p a
-select * from t1 where a = 'AAA' order by p;
-p a
-3 AAA
-6 AAA
-drop table t1;
-create table t1 (
-p int primary key,
-a char(3) character set latin1 collate latin1_swedish_ci not null,
-index(a)
-) engine=ndb;
-insert into t1 values(1, 'aAa');
-insert into t1 values(2, 'aaa');
-insert into t1 values(3, 'AAA');
-insert into t1 values(4, 'aAa');
-insert into t1 values(5, 'aaa');
-insert into t1 values(6, 'AAA');
-select * from t1 order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-4 aAa
-5 aaa
-6 AAA
-explain select * from t1 where a = 'zZz' order by p;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a a 3 const 10 Using where; Using filesort
-select * from t1 where a = 'aAa' order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-4 aAa
-5 aaa
-6 AAA
-select * from t1 where a = 'aaa' order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-4 aAa
-5 aaa
-6 AAA
-select * from t1 where a = 'AaA' order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-4 aAa
-5 aaa
-6 AAA
-select * from t1 where a = 'AAA' order by p;
-p a
-1 aAa
-2 aaa
-3 AAA
-4 aAa
-5 aaa
-6 AAA
-drop table t1;
-create table t1 (
-p int primary key,
-a varchar(20) character set latin1 collate latin1_swedish_ci not null,
-index(a, p)
-) engine=ndb;
-insert into t1 values (1,'A'),(2,'b '),(3,'C '),(4,'d '),(5,'E'),(6,'f');
-insert into t1 values (7,'a'),(8,'B '),(9,'c '),(10,'D'),(11,'e'),(12,'F ');
-select p,a,length(a) from t1 order by a, p;
-p a length(a)
-1 A 1
-7 a 1
-2 b 2
-8 B 2
-3 C 3
-9 c 3
-4 d 7
-10 D 1
-5 E 1
-11 e 1
-6 f 1
-12 F 3
-select * from t1 where a = 'a ' order by a desc, p desc;
-p a
-7 a
-1 A
-select * from t1 where a >= 'D' order by a, p;
-p a
-4 d
-10 D
-5 E
-11 e
-6 f
-12 F
-select * from t1 where a < 'D' order by a, p;
-p a
-1 A
-7 a
-2 b
-8 B
-3 C
-9 c
-select count(*) from t1 x, t1 y, t1 z where x.a = y.a and y.a = z.a;
-count(*)
-48
-drop table t1;
-create table t1 (
-a char(10) primary key
-) engine=ndbcluster default charset=latin1;
-insert into t1 values ('aaabb');
-select * from t1;
-a
-aaabb
-replace into t1 set a = 'AAABB';
-select * from t1;
-a
-AAABB
-replace into t1 set a = 'aAaBb';
-select * from t1;
-a
-aAaBb
-replace into t1 set a = 'aaabb';
-select * from t1;
-a
-aaabb
-drop table t1;
diff --git a/mysql-test/r/ndb_condition_pushdown.result b/mysql-test/r/ndb_condition_pushdown.result
deleted file mode 100644
index b211b9079d0..00000000000
--- a/mysql-test/r/ndb_condition_pushdown.result
+++ /dev/null
@@ -1,1920 +0,0 @@
-DROP TABLE IF EXISTS t1,t2;
-CREATE TABLE t1 (
-auto int(5) unsigned NOT NULL auto_increment,
-string char(10),
-vstring varchar(10),
-bin binary(2),
-vbin varbinary(7),
-tiny tinyint(4) DEFAULT '0' NOT NULL ,
-short smallint(6) DEFAULT '1' NOT NULL ,
-medium mediumint(8) DEFAULT '0' NOT NULL,
-long_int int(11) DEFAULT '0' NOT NULL,
-longlong bigint(13) DEFAULT '0' NOT NULL,
-real_float float(13,1) DEFAULT 0.0 NOT NULL,
-real_double double(16,4),
-real_decimal decimal(16,4),
-utiny tinyint(3) unsigned DEFAULT '0' NOT NULL,
-ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL,
-umedium mediumint(8) unsigned DEFAULT '0' NOT NULL,
-ulong int(11) unsigned DEFAULT '0' NOT NULL,
-ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL,
-bits bit(3),
-options enum('zero','one','two','three','four') not null,
-flags set('zero','one','two','three','four') not null,
-date_field date,
-year_field year,
-time_field time,
-date_time datetime,
-time_stamp timestamp,
-PRIMARY KEY (auto)
-) engine=ndb;
-insert into t1 values
-(NULL,"aaaa","aaaa",0xAAAA,0xAAAA,-1,-1,-1,-1,-1,1.1,1.1,1.1,1,1,1,1,1,
-b'001','one','one',
-'1901-01-01','1901',
-'01:01:01','1901-01-01 01:01:01',NULL),
-(NULL,"bbbb","bbbb",0xBBBB,0xBBBB,-2,-2,-2,-2,-2,2.2,2.2,2.2,2,2,2,2,2,
-b'010','two','one,two',
-'1902-02-02','1902',
-'02:02:02','1902-02-02 02:02:02',NULL),
-(NULL,"cccc","cccc",0xCCCC,0xCCCC,-3,-3,-3,-3,-3,3.3,3.3,3.3,3,3,3,3,3,
-b'011','three','one,two,three',
-'1903-03-03','1903',
-'03:03:03','1903-03-03 03:03:03',NULL),
-(NULL,"dddd","dddd",0xDDDD,0xDDDD,-4,-4,-4,-4,-4,4.4,4.4,4.4,4,4,4,4,4,
-b'100','four','one,two,three,four',
-'1904-04-04','1904',
-'04:04:04','1904-04-04 04:04:04',NULL);
-CREATE TABLE t2 (pk1 int unsigned NOT NULL PRIMARY KEY, attr1 int unsigned NOT NULL, attr2 int unsigned, attr3 VARCHAR(10) ) ENGINE=ndbcluster;
-insert into t2 values (0,0,0, "a"),(1,1,1,"b"),(2,2,NULL,NULL),(3,3,3,"d"),(4,4,4,"e"),(5,5,5,"f");
-CREATE TABLE t3 (pk1 int unsigned NOT NULL PRIMARY KEY, attr1 int unsigned NOT NULL, attr2 bigint unsigned, attr3 tinyint unsigned, attr4 VARCHAR(10) ) ENGINE=ndbcluster;
-insert into t3 values (0,0,0,0,"a"),(1,1,9223372036854775803,1,"b"),(2,2,9223372036854775804,2,"c"),(3,3,9223372036854775805,3,"d"),(4,4,9223372036854775806,4,"e"),(5,5,9223372036854775807,5,"f");
-CREATE TABLE t4 (pk1 int unsigned NOT NULL PRIMARY KEY, attr1 int unsigned NOT NULL, attr2 bigint unsigned, attr3 tinyint unsigned, attr4 VARCHAR(10) , KEY (attr1)) ENGINE=ndbcluster;
-insert into t4 values (0,0,0,0,"a"),(1,1,9223372036854775803,1,"b"),(2,2,9223372036854775804,2,"c"),(3,3,9223372036854775805,3,"d"),(4,4,9223372036854775806,4,"e"),(5,5,9223372036854775807,5,"f");
-set @old_ecpd = @@session.engine_condition_pushdown;
-set engine_condition_pushdown = off;
-select auto from t1 where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = -1 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-bits = b'001' and
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01'
-order by auto;
-auto
-1
-select auto from t1 where
-string != "aaaa" and
-vstring != "aaaa" and
-bin != 0xAAAA and
-vbin != 0xAAAA and
-tiny != -1 and
-short != -1 and
-medium != -1 and
-long_int != -1 and
-longlong != -1 and
-(real_float < 1.0 or real_float > 2.0) and
-(real_double < 1.0 or real_double > 2.0) and
-(real_decimal < 1.0 or real_decimal > 2.0) and
-utiny != 1 and
-ushort != 1 and
-umedium != 1 and
-ulong != 1 and
-ulonglong != 1 and
-bits != b'001' and
-options != 'one' and
-flags != 'one' and
-date_field != '1901-01-01' and
-year_field != '1901' and
-time_field != '01:01:01' and
-date_time != '1901-01-01 01:01:01'
-order by auto;
-auto
-2
-3
-4
-select auto from t1 where
-string > "aaaa" and
-vstring > "aaaa" and
-bin > 0xAAAA and
-vbin > 0xAAAA and
-tiny < -1 and
-short < -1 and
-medium < -1 and
-long_int < -1 and
-longlong < -1 and
-real_float > 1.1 and
-real_double > 1.1 and
-real_decimal > 1.1 and
-utiny > 1 and
-ushort > 1 and
-umedium > 1 and
-ulong > 1 and
-ulonglong > 1 and
-bits > b'001' and
-(options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field > '1901-01-01' and
-year_field > '1901' and
-time_field > '01:01:01' and
-date_time > '1901-01-01 01:01:01'
-order by auto;
-auto
-2
-3
-4
-select auto from t1 where
-string >= "aaaa" and
-vstring >= "aaaa" and
-bin >= 0xAAAA and
-vbin >= 0xAAAA and
-tiny <= -1 and
-short <= -1 and
-medium <= -1 and
-long_int <= -1 and
-longlong <= -1 and
-real_float >= 1.0 and
-real_double >= 1.0 and
-real_decimal >= 1.0 and
-utiny >= 1 and
-ushort >= 1 and
-umedium >= 1 and
-ulong >= 1 and
-ulonglong >= 1 and
-bits >= b'001' and
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field >= '1901-01-01' and
-year_field >= '1901' and
-time_field >= '01:01:01' and
-date_time >= '1901-01-01 01:01:01'
-order by auto;
-auto
-1
-2
-3
-4
-select auto from t1 where
-string < "dddd" and
-vstring < "dddd" and
-bin < 0xDDDD and
-vbin < 0xDDDD and
-tiny > -4 and
-short > -4 and
-medium > -4 and
-long_int > -4 and
-longlong > -4 and
-real_float < 4.4 and
-real_double < 4.4 and
-real_decimal < 4.4 and
-utiny < 4 and
-ushort < 4 and
-umedium < 4 and
-ulong < 4 and
-ulonglong < 4 and
-bits < b'100' and
-(options = 'one' or options = 'two' or options = 'three') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
-date_field < '1904-01-01' and
-year_field < '1904' and
-time_field < '04:04:04' and
-date_time < '1904-04-04 04:04:04'
-order by auto;
-auto
-1
-2
-3
-select auto from t1 where
-string <= "dddd" and
-vstring <= "dddd" and
-bin <= 0xDDDD and
-vbin <= 0xDDDD and
-tiny >= -4 and
-short >= -4 and
-medium >= -4 and
-long_int >= -4 and
-longlong >= -4 and
-real_float <= 4.5 and
-real_double <= 4.5 and
-real_decimal <= 4.5 and
-utiny <= 4 and
-ushort <= 4 and
-umedium <= 4 and
-ulong <= 4 and
-ulonglong <= 4 and
-bits <= b'100' and
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field <= '1904-04-04' and
-year_field <= '1904' and
-time_field <= '04:04:04' and
-date_time <= '1904-04-04 04:04:04'
-order by auto;
-auto
-1
-2
-3
-4
-select auto from t1 where
-string like "b%" and
-vstring like "b%" and
-bin like concat(0xBB, '%') and
-vbin like concat(0xBB, '%')
-order by auto;
-auto
-2
-select auto from t1 where
-string not like "b%" and
-vstring not like "b%" and
-bin not like concat(0xBB, '%') and
-vbin not like concat(0xBB, '%')
-order by auto;
-auto
-1
-3
-4
-select auto from t1 where
-(string between "aaaa" and "cccc") and
-(vstring between "aaaa" and "cccc") and
-(bin between 0xAAAA and 0xCCCC) and
-(vbin between 0xAAAA and 0xCCCC) and
-(tiny between -3 and -1) and
-(short between -3 and -1) and
-(medium between -3 and -1) and
-(long_int between -3 and -1) and
-(longlong between -3 and -1) and
-(utiny between 1 and 3) and
-(ushort between 1 and 3) and
-(umedium between 1 and 3) and
-(ulong between 1 and 3) and
-(ulonglong between 1 and 3) and
-(bits between b'001' and b'011') and
-(options between 'one' and 'three') and
-(flags between 'one' and 'one,two,three') and
-(date_field between '1901-01-01' and '1903-03-03') and
-(year_field between '1901' and '1903') and
-(time_field between '01:01:01' and '03:03:03') and
-(date_time between '1901-01-01 01:01:01' and '1903-03-03 03:03:03')
-order by auto;
-auto
-1
-3
-select auto from t1 where
-("aaaa" between string and string) and
-("aaaa" between vstring and vstring) and
-(0xAAAA between bin and bin) and
-(0xAAAA between vbin and vbin) and
-(-1 between tiny and tiny) and
-(-1 between short and short) and
-(-1 between medium and medium) and
-(-1 between long_int and long_int) and
-(-1 between longlong and longlong) and
-(1 between utiny and utiny) and
-(1 between ushort and ushort) and
-(1 between umedium and umedium) and
-(1 between ulong and ulong) and
-(1 between ulonglong and ulonglong) and
-(b'001' between bits and bits) and
-('one' between options and options) and
-('one' between flags and flags) and
-('1901-01-01' between date_field and date_field) and
-('1901' between year_field and year_field) and
-('01:01:01' between time_field and time_field) and
-('1901-01-01 01:01:01' between date_time and date_time)
-order by auto;
-auto
-1
-select auto from t1 where
-(string not between "aaaa" and "cccc") and
-(vstring not between "aaaa" and "cccc") and
-(bin not between 0xAAAA and 0xCCCC) and
-(vbin not between 0xAAAA and 0xCCCC) and
-(tiny not between -3 and -1) and
-(short not between -3 and -1) and
-(medium not between -3 and -1) and
-(long_int not between -3 and -1) and
-(longlong not between -3 and -1) and
-(utiny not between 1 and 3) and
-(ushort not between 1 and 3) and
-(umedium not between 1 and 3) and
-(ulong not between 1 and 3) and
-(ulonglong not between 1 and 3) and
-(bits not between b'001' and b'011') and
-(options not between 'one' and 'three') and
-(flags not between 'one' and 'one,two,three') and
-(date_field not between '1901-01-01' and '1903-03-03') and
-(year_field not between '1901' and '1903') and
-(time_field not between '01:01:01' and '03:03:03') and
-(date_time not between '1901-01-01 01:01:01' and '1903-03-03 03:03:03')
-order by auto;
-auto
-4
-select auto from t1 where
-("aaaa" not between string and string) and
-("aaaa" not between vstring and vstring) and
-(0xAAAA not between bin and bin) and
-(0xAAAA not between vbin and vbin) and
-(-1 not between tiny and tiny) and
-(-1 not between short and short) and
-(-1 not between medium and medium) and
-(-1 not between long_int and long_int) and
-(-1 not between longlong and longlong) and
-(1 not between utiny and utiny) and
-(1 not between ushort and ushort) and
-(1 not between umedium and umedium) and
-(1 not between ulong and ulong) and
-(1 not between ulonglong and ulonglong) and
-(b'001' not between bits and bits) and
-('one' not between options and options) and
-('one' not between flags and flags) and
-('1901-01-01' not between date_field and date_field) and
-('1901' not between year_field and year_field) and
-('01:01:01' not between time_field and time_field) and
-('1901-01-01 01:01:01' not between date_time and date_time)
-order by auto;
-auto
-2
-3
-4
-select auto from t1 where
-string in("aaaa","cccc") and
-vstring in("aaaa","cccc") and
-bin in(0xAAAA,0xCCCC) and
-vbin in(0xAAAA,0xCCCC) and
-tiny in(-1,-3) and
-short in(-1,-3) and
-medium in(-1,-3) and
-long_int in(-1,-3) and
-longlong in(-1,-3) and
-utiny in(1,3) and
-ushort in(1,3) and
-umedium in(1,3) and
-ulong in(1,3) and
-ulonglong in(1,3) and
-bits in(b'001',b'011') and
-options in('one','three') and
-flags in('one','one,two,three') and
-date_field in('1901-01-01','1903-03-03') and
-year_field in('1901','1903') and
-time_field in('01:01:01','03:03:03') and
-date_time in('1901-01-01 01:01:01','1903-03-03 03:03:03')
-order by auto;
-auto
-1
-3
-select auto from t1 where
-"aaaa" in(string) and
-"aaaa" in(vstring) and
-0xAAAA in(bin) and
-0xAAAA in(vbin) and
-(-1 in(tiny)) and
-(-1 in(short)) and
-(-1 in(medium)) and
-(-1 in(long_int)) and
-(-1 in(longlong)) and
-1 in(utiny) and
-1 in(ushort) and
-1 in(umedium) and
-1 in(ulong) and
-1 in(ulonglong) and
-b'001' in(bits) and
-'one' in(options) and
-'one' in(flags) and
-'1901-01-01' in(date_field) and
-'1901' in(year_field) and
-'01:01:01' in(time_field) and
-'1901-01-01 01:01:01' in(date_time)
-order by auto;
-auto
-1
-select auto from t1 where
-string not in("aaaa","cccc") and
-vstring not in("aaaa","cccc") and
-bin not in(0xAAAA,0xCCCC) and
-vbin not in(0xAAAA,0xCCCC) and
-tiny not in(-1,-3) and
-short not in(-1,-3) and
-medium not in(-1,-3) and
-long_int not in(-1,-3) and
-longlong not in(-1,-3) and
-utiny not in(1,3) and
-ushort not in(1,3) and
-umedium not in(1,3) and
-ulong not in(1,3) and
-ulonglong not in(1,3) and
-bits not in(b'001',b'011') and
-options not in('one','three') and
-flags not in('one','one,two,three') and
-date_field not in('1901-01-01','1903-03-03') and
-year_field not in('1901','1903') and
-time_field not in('01:01:01','03:03:03') and
-date_time not in('1901-01-01 01:01:01','1903-03-03 03:03:03')
-order by auto;
-auto
-2
-4
-select auto from t1 where
-"aaaa" not in(string) and
-"aaaa" not in(vstring) and
-0xAAAA not in(bin) and
-0xAAAA not in(vbin) and
-(-1 not in(tiny)) and
-(-1 not in(short)) and
-(-1 not in(medium)) and
-(-1 not in(long_int)) and
-(-1 not in(longlong)) and
-1 not in(utiny) and
-1 not in(ushort) and
-1 not in(umedium) and
-1 not in(ulong) and
-1 not in(ulonglong) and
-b'001' not in(bits) and
-'one' not in(options) and
-'one' not in(flags) and
-'1901-01-01' not in(date_field) and
-'1901' not in(year_field) and
-'01:01:01' not in(time_field) and
-'1901-01-01 01:01:01' not in(date_time)
-order by auto;
-auto
-2
-3
-4
-select * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;
-pk1 attr1 attr2 attr3
-2 2 NULL NULL
-3 3 3 d
-select * from t2 where attr3 is not null and attr1 > 2 order by pk1;
-pk1 attr1 attr2 attr3
-3 3 3 d
-4 4 4 e
-5 5 5 f
-select * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;
-pk1 attr1 attr2 attr3 attr4
-2 2 9223372036854775804 2 c
-4 4 9223372036854775806 4 e
-5 5 9223372036854775807 5 f
-select * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;
-pk1 attr1 attr2 attr3 pk1 attr1 attr2 attr3 attr4
-0 0 0 a 0 0 0 0 a
-select * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;
-pk1 attr1 attr2 attr3 attr4
-2 2 9223372036854775804 2 c
-4 4 9223372036854775806 4 e
-select * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;
-pk1 attr1 attr2 attr3 attr4 pk1 attr1 attr2 attr3 attr4
-2 2 9223372036854775804 2 c 2 2 9223372036854775804 2 c
-3 3 9223372036854775805 3 d 3 3 9223372036854775805 3 d
-4 4 9223372036854775806 4 e 4 4 9223372036854775806 4 e
-set engine_condition_pushdown = on;
-explain
-select auto from t1 where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = -1 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-/* bits = b'001' and */
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = -1 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-/* bits = b'001' and */
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01'
-order by auto;
-auto
-1
-explain
-select auto from t1 where
-string != "aaaa" and
-vstring != "aaaa" and
-bin != 0xAAAA and
-vbin != 0xAAAA and
-tiny != -1 and
-short != -1 and
-medium != -1 and
-long_int != -1 and
-longlong != -1 and
-(real_float < 1.0 or real_float > 2.0) and
-(real_double < 1.0 or real_double > 2.0) and
-(real_decimal < 1.0 or real_decimal > 2.0) and
-utiny != 1 and
-ushort != 1 and
-umedium != 1 and
-ulong != 1 and
-ulonglong != 1 and
-/* bits != b'001' and */
-options != 'one' and
-flags != 'one' and
-date_field != '1901-01-01' and
-year_field != '1901' and
-time_field != '01:01:01' and
-date_time != '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string != "aaaa" and
-vstring != "aaaa" and
-bin != 0xAAAA and
-vbin != 0xAAAA and
-tiny != -1 and
-short != -1 and
-medium != -1 and
-long_int != -1 and
-longlong != -1 and
-(real_float < 1.0 or real_float > 2.0) and
-(real_double < 1.0 or real_double > 2.0) and
-(real_decimal < 1.0 or real_decimal > 2.0) and
-utiny != 1 and
-ushort != 1 and
-umedium != 1 and
-ulong != 1 and
-ulonglong != 1 and
-/* bits != b'001' and */
-options != 'one' and
-flags != 'one' and
-date_field != '1901-01-01' and
-year_field != '1901' and
-time_field != '01:01:01' and
-date_time != '1901-01-01 01:01:01'
-order by auto;
-auto
-2
-3
-4
-explain
-select auto from t1 where
-string > "aaaa" and
-vstring > "aaaa" and
-bin > 0xAAAA and
-vbin > 0xAAAA and
-tiny < -1 and
-short < -1 and
-medium < -1 and
-long_int < -1 and
-longlong < -1 and
-real_float > 1.1 and
-real_double > 1.1 and
-real_decimal > 1.1 and
-utiny > 1 and
-ushort > 1 and
-umedium > 1 and
-ulong > 1 and
-ulonglong > 1 and
-/* bits > b'001' and */
-(options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field > '1901-01-01' and
-year_field > '1901' and
-time_field > '01:01:01' and
-date_time > '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string > "aaaa" and
-vstring > "aaaa" and
-bin > 0xAAAA and
-vbin > 0xAAAA and
-tiny < -1 and
-short < -1 and
-medium < -1 and
-long_int < -1 and
-longlong < -1 and
-real_float > 1.1 and
-real_double > 1.1 and
-real_decimal > 1.1 and
-utiny > 1 and
-ushort > 1 and
-umedium > 1 and
-ulong > 1 and
-ulonglong > 1 and
-/* bits > b'001' and */
-(options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field > '1901-01-01' and
-year_field > '1901' and
-time_field > '01:01:01' and
-date_time > '1901-01-01 01:01:01'
-order by auto;
-auto
-2
-3
-4
-explain
-select auto from t1 where
-string >= "aaaa" and
-vstring >= "aaaa" and
-bin >= 0xAAAA and
-vbin >= 0xAAAA and
-tiny <= -1 and
-short <= -1 and
-medium <= -1 and
-long_int <= -1 and
-longlong <= -1 and
-real_float >= 1.0 and
-real_double >= 1.0 and
-real_decimal >= 1.0 and
-utiny >= 1 and
-ushort >= 1 and
-umedium >= 1 and
-ulong >= 1 and
-ulonglong >= 1 and
-/* bits >= b'001' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field >= '1901-01-01' and
-year_field >= '1901' and
-time_field >= '01:01:01' and
-date_time >= '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string >= "aaaa" and
-vstring >= "aaaa" and
-bin >= 0xAAAA and
-vbin >= 0xAAAA and
-tiny <= -1 and
-short <= -1 and
-medium <= -1 and
-long_int <= -1 and
-longlong <= -1 and
-real_float >= 1.0 and
-real_double >= 1.0 and
-real_decimal >= 1.0 and
-utiny >= 1 and
-ushort >= 1 and
-umedium >= 1 and
-ulong >= 1 and
-ulonglong >= 1 and
-/* bits >= b'001' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field >= '1901-01-01' and
-year_field >= '1901' and
-time_field >= '01:01:01' and
-date_time >= '1901-01-01 01:01:01'
-order by auto;
-auto
-1
-2
-3
-4
-explain
-select auto from t1 where
-string < "dddd" and
-vstring < "dddd" and
-bin < 0xDDDD and
-vbin < 0xDDDD and
-tiny > -4 and
-short > -4 and
-medium > -4 and
-long_int > -4 and
-longlong > -4 and
-real_float < 4.4 and
-real_double < 4.4 and
-real_decimal < 4.4 and
-utiny < 4 and
-ushort < 4 and
-umedium < 4 and
-ulong < 4 and
-ulonglong < 4 and
-/* bits < b'100' and */
-(options = 'one' or options = 'two' or options = 'three') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
-date_field < '1904-01-01' and
-year_field < '1904' and
-time_field < '04:04:04' and
-date_time < '1904-04-04 04:04:04'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string < "dddd" and
-vstring < "dddd" and
-bin < 0xDDDD and
-vbin < 0xDDDD and
-tiny > -4 and
-short > -4 and
-medium > -4 and
-long_int > -4 and
-longlong > -4 and
-real_float < 4.4 and
-real_double < 4.4 and
-real_decimal < 4.4 and
-utiny < 4 and
-ushort < 4 and
-umedium < 4 and
-ulong < 4 and
-ulonglong < 4 and
-/* bits < b'100' and */
-(options = 'one' or options = 'two' or options = 'three') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
-date_field < '1904-01-01' and
-year_field < '1904' and
-time_field < '04:04:04' and
-date_time < '1904-04-04 04:04:04'
-order by auto;
-auto
-1
-2
-3
-explain
-select auto from t1 where
-string <= "dddd" and
-vstring <= "dddd" and
-bin <= 0xDDDD and
-vbin <= 0xDDDD and
-tiny >= -4 and
-short >= -4 and
-medium >= -4 and
-long_int >= -4 and
-longlong >= -4 and
-real_float <= 4.5 and
-real_double <= 4.5 and
-real_decimal <= 4.5 and
-utiny <= 4 - 1 + 1 and /* Checking function composition */
-ushort <= 4 and
-umedium <= 4 and
-ulong <= 4 and
-ulonglong <= 4 and
-/* bits <= b'100' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field <= '1904-04-04' and
-year_field <= '1904' and
-time_field <= '04:04:04' and
-date_time <= '1904-04-04 04:04:04'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string <= "dddd" and
-vstring <= "dddd" and
-bin <= 0xDDDD and
-vbin <= 0xDDDD and
-tiny >= -4 and
-short >= -4 and
-medium >= -4 and
-long_int >= -4 and
-longlong >= -4 and
-real_float <= 4.5 and
-real_double <= 4.5 and
-real_decimal <= 4.5 and
-utiny <= 4 - 1 + 1 and /* Checking function composition */
-ushort <= 4 and
-umedium <= 4 and
-ulong <= 4 and
-ulonglong <= 4 and
-/* bits <= b'100' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field <= '1904-04-04' and
-year_field <= '1904' and
-time_field <= '04:04:04' and
-date_time <= '1904-04-04 04:04:04'
-order by auto;
-auto
-1
-2
-3
-4
-create index medium_index on t1(medium);
-explain
-select auto from t1 where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = -1 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-/* bits = b'001' and */
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref medium_index medium_index 3 const 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = -1 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-/* bits = b'001' and */
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01'
-order by auto;
-auto
-1
-explain
-select auto from t1 where
-string != "aaaa" and
-vstring != "aaaa" and
-bin != 0xAAAA and
-vbin != 0xAAAA and
-tiny != -1 and
-short != -1 and
-medium != -1 and
-long_int != -1 and
-longlong != -1 and
-(real_float < 1.0 or real_float > 2.0) and
-(real_double < 1.0 or real_double > 2.0) and
-(real_decimal < 1.0 or real_decimal > 2.0) and
-utiny != 1 and
-ushort != 1 and
-umedium != 1 and
-ulong != 1 and
-ulonglong != 1 and
-/* bits != b'001' and */
-options != 'one' and
-flags != 'one' and
-date_field != '1901-01-01' and
-year_field != '1901' and
-time_field != '01:01:01' and
-date_time != '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 20 Using where with pushed condition; Using filesort
-select auto from t1 where
-string != "aaaa" and
-vstring != "aaaa" and
-bin != 0xAAAA and
-vbin != 0xAAAA and
-tiny != -1 and
-short != -1 and
-medium != -1 and
-long_int != -1 and
-longlong != -1 and
-(real_float < 1.0 or real_float > 2.0) and
-(real_double < 1.0 or real_double > 2.0) and
-(real_decimal < 1.0 or real_decimal > 2.0) and
-utiny != 1 and
-ushort != 1 and
-umedium != 1 and
-ulong != 1 and
-ulonglong != 1 and
-/* bits != b'001' and */
-options != 'one' and
-flags != 'one' and
-date_field != '1901-01-01' and
-year_field != '1901' and
-time_field != '01:01:01' and
-date_time != '1901-01-01 01:01:01'
-order by auto;
-auto
-2
-3
-4
-explain
-select auto from t1 where
-string > "aaaa" and
-vstring > "aaaa" and
-bin > 0xAAAA and
-vbin > 0xAAAA and
-tiny < -1 and
-short < -1 and
-medium < -1 and
-long_int < -1 and
-longlong < -1 and
-real_float > 1.1 and
-real_double > 1.1 and
-real_decimal > 1.1 and
-utiny > 1 and
-ushort > 1 and
-umedium > 1 and
-ulong > 1 and
-ulonglong > 1 and
-/* bits > b'001' and */
-(options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field > '1901-01-01' and
-year_field > '1901' and
-time_field > '01:01:01' and
-date_time > '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-string > "aaaa" and
-vstring > "aaaa" and
-bin > 0xAAAA and
-vbin > 0xAAAA and
-tiny < -1 and
-short < -1 and
-medium < -1 and
-long_int < -1 and
-longlong < -1 and
-real_float > 1.1 and
-real_double > 1.1 and
-real_decimal > 1.1 and
-utiny > 1 and
-ushort > 1 and
-umedium > 1 and
-ulong > 1 and
-ulonglong > 1 and
-/* bits > b'001' and */
-(options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field > '1901-01-01' and
-year_field > '1901' and
-time_field > '01:01:01' and
-date_time > '1901-01-01 01:01:01'
-order by auto;
-auto
-2
-3
-4
-explain
-select auto from t1 where
-string >= "aaaa" and
-vstring >= "aaaa" and
-bin >= 0xAAAA and
-vbin >= 0xAAAA and
-tiny <= -1 and
-short <= -1 and
-medium <= -1 and
-long_int <= -1 and
-longlong <= -1 and
-real_float >= 1.0 and
-real_double >= 1.0 and
-real_decimal >= 1.0 and
-utiny >= 1 and
-ushort >= 1 and
-umedium >= 1 and
-ulong >= 1 and
-ulonglong >= 1 and
-/* bits >= b'001' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field >= '1901-01-01' and
-year_field >= '1901' and
-time_field >= '01:01:01' and
-date_time >= '1901-01-01 01:01:01'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-string >= "aaaa" and
-vstring >= "aaaa" and
-bin >= 0xAAAA and
-vbin >= 0xAAAA and
-tiny <= -1 and
-short <= -1 and
-medium <= -1 and
-long_int <= -1 and
-longlong <= -1 and
-real_float >= 1.0 and
-real_double >= 1.0 and
-real_decimal >= 1.0 and
-utiny >= 1 and
-ushort >= 1 and
-umedium >= 1 and
-ulong >= 1 and
-ulonglong >= 1 and
-/* bits >= b'001' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field >= '1901-01-01' and
-year_field >= '1901' and
-time_field >= '01:01:01' and
-date_time >= '1901-01-01 01:01:01'
-order by auto;
-auto
-1
-2
-3
-4
-explain
-select auto from t1 where
-string < "dddd" and
-vstring < "dddd" and
-bin < 0xDDDD and
-vbin < 0xDDDD and
-tiny > -4 and
-short > -4 and
-medium > -4 and
-long_int > -4 and
-longlong > -4 and
-real_float < 4.4 and
-real_double < 4.4 and
-real_decimal < 4.4 and
-utiny < 4 and
-ushort < 4 and
-umedium < 4 and
-ulong < 4 and
-ulonglong < 4 and
-/* bits < b'100' and */
-(options = 'one' or options = 'two' or options = 'three') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
-date_field < '1904-01-01' and
-year_field < '1904' and
-time_field < '04:04:04' and
-date_time < '1904-04-04 04:04:04'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-string < "dddd" and
-vstring < "dddd" and
-bin < 0xDDDD and
-vbin < 0xDDDD and
-tiny > -4 and
-short > -4 and
-medium > -4 and
-long_int > -4 and
-longlong > -4 and
-real_float < 4.4 and
-real_double < 4.4 and
-real_decimal < 4.4 and
-utiny < 4 and
-ushort < 4 and
-umedium < 4 and
-ulong < 4 and
-ulonglong < 4 and
-/* bits < b'100' and */
-(options = 'one' or options = 'two' or options = 'three') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three') and
-date_field < '1904-01-01' and
-year_field < '1904' and
-time_field < '04:04:04' and
-date_time < '1904-04-04 04:04:04'
-order by auto;
-auto
-1
-2
-3
-explain
-select auto from t1 where
-string <= "dddd" and
-vstring <= "dddd" and
-bin <= 0xDDDD and
-vbin <= 0xDDDD and
-tiny >= -4 and
-short >= -4 and
-medium >= -4 and
-long_int >= -4 and
-longlong >= -4 and
-real_float <= 4.5 and
-real_double <= 4.5 and
-real_decimal <= 4.5 and
-utiny <= 4 - 1 + 1 and /* Checking function composition */
-ushort <= 4 and
-umedium <= 4 and
-ulong <= 4 and
-ulonglong <= 4 and
-/* bits <= b'100' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field <= '1904-04-04' and
-year_field <= '1904' and
-time_field <= '04:04:04' and
-date_time <= '1904-04-04 04:04:04'
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-string <= "dddd" and
-vstring <= "dddd" and
-bin <= 0xDDDD and
-vbin <= 0xDDDD and
-tiny >= -4 and
-short >= -4 and
-medium >= -4 and
-long_int >= -4 and
-longlong >= -4 and
-real_float <= 4.5 and
-real_double <= 4.5 and
-real_decimal <= 4.5 and
-utiny <= 4 - 1 + 1 and /* Checking function composition */
-ushort <= 4 and
-umedium <= 4 and
-ulong <= 4 and
-ulonglong <= 4 and
-/* bits <= b'100' and */
-(options = 'one' or options = 'two' or options = 'three' or options = 'four') and
-(flags = 'one' or flags = 'one,two' or flags = 'one,two,three' or flags = 'one,two,three,four') and
-date_field <= '1904-04-04' and
-year_field <= '1904' and
-time_field <= '04:04:04' and
-date_time <= '1904-04-04 04:04:04'
-order by auto;
-auto
-1
-2
-3
-4
-explain
-select auto from t1 where
-string like "b%" and
-vstring like "b%" and
-bin like concat(0xBB, '%') and
-vbin like concat(0xBB, '%')
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string like "b%" and
-vstring like "b%" and
-bin like concat(0xBB, '%') and
-vbin like concat(0xBB, '%')
-order by auto;
-auto
-2
-explain
-select auto from t1 where
-string not like "b%" and
-vstring not like "b%" and
-bin not like concat(0xBB, '%') and
-vbin not like concat(0xBB, '%')
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-string not like "b%" and
-vstring not like "b%" and
-bin not like concat(0xBB, '%') and
-vbin not like concat(0xBB, '%')
-order by auto;
-auto
-1
-3
-4
-explain
-select auto from t1 where
-(string between "aaaa" and "cccc") and
-(vstring between "aaaa" and "cccc") and
-(bin between 0xAAAA and 0xCCCC) and
-(vbin between 0xAAAA and 0xCCCC) and
-(tiny between -3 and -1) and
-(short between -3 and -1) and
-(medium between -3 and -1) and
-(long_int between -3 and -1) and
-(longlong between -3 and -1) and
-(utiny between 1 and 3) and
-(ushort between 1 and 3) and
-(umedium between 1 and 3) and
-(ulong between 1 and 3) and
-(ulonglong between 1 and 3) and
-/* (bits between b'001' and b'011') and */
-(options between 'one' and 'three') and
-(flags between 'one' and 'one,two,three') and
-(date_field between '1901-01-01' and '1903-03-03') and
-(year_field between '1901' and '1903') and
-(time_field between '01:01:01' and '03:03:03') and
-(date_time between '1901-01-01 01:01:01' and '1903-03-03 03:03:03')
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-(string between "aaaa" and "cccc") and
-(vstring between "aaaa" and "cccc") and
-(bin between 0xAAAA and 0xCCCC) and
-(vbin between 0xAAAA and 0xCCCC) and
-(tiny between -3 and -1) and
-(short between -3 and -1) and
-(medium between -3 and -1) and
-(long_int between -3 and -1) and
-(longlong between -3 and -1) and
-(utiny between 1 and 3) and
-(ushort between 1 and 3) and
-(umedium between 1 and 3) and
-(ulong between 1 and 3) and
-(ulonglong between 1 and 3) and
-/* (bits between b'001' and b'011') and */
-(options between 'one' and 'three') and
-(flags between 'one' and 'one,two,three') and
-(date_field between '1901-01-01' and '1903-03-03') and
-(year_field between '1901' and '1903') and
-(time_field between '01:01:01' and '03:03:03') and
-(date_time between '1901-01-01 01:01:01' and '1903-03-03 03:03:03')
-order by auto;
-auto
-1
-3
-explain
-select auto from t1 where
-("aaaa" between string and string) and
-("aaaa" between vstring and vstring) and
-(0xAAAA between bin and bin) and
-(0xAAAA between vbin and vbin) and
-(-1 between tiny and tiny) and
-(-1 between short and short) and
-(-1 between medium and medium) and
-(-1 between long_int and long_int) and
-(-1 between longlong and longlong) and
-(1 between utiny and utiny) and
-(1 between ushort and ushort) and
-(1 between umedium and umedium) and
-(1 between ulong and ulong) and
-(1 between ulonglong and ulonglong) and
-/* (b'001' between bits and bits) and */
-('one' between options and options) and
-('one' between flags and flags) and
-('1901-01-01' between date_field and date_field) and
-('1901' between year_field and year_field) and
-('01:01:01' between time_field and time_field) and
-('1901-01-01 01:01:01' between date_time and date_time)
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-("aaaa" between string and string) and
-("aaaa" between vstring and vstring) and
-(0xAAAA between bin and bin) and
-(0xAAAA between vbin and vbin) and
-(-1 between tiny and tiny) and
-(-1 between short and short) and
-(-1 between medium and medium) and
-(-1 between long_int and long_int) and
-(-1 between longlong and longlong) and
-(1 between utiny and utiny) and
-(1 between ushort and ushort) and
-(1 between umedium and umedium) and
-(1 between ulong and ulong) and
-(1 between ulonglong and ulonglong) and
-/* (b'001' between bits and bits) and */
-('one' between options and options) and
-('one' between flags and flags) and
-('1901-01-01' between date_field and date_field) and
-('1901' between year_field and year_field) and
-('01:01:01' between time_field and time_field) and
-('1901-01-01 01:01:01' between date_time and date_time)
-order by auto;
-auto
-1
-explain
-select auto from t1 where
-(string not between "aaaa" and "cccc") and
-(vstring not between "aaaa" and "cccc") and
-(bin not between 0xAAAA and 0xCCCC) and
-(vbin not between 0xAAAA and 0xCCCC) and
-(tiny not between -3 and -1) and
-(short not between -3 and -1) and
-(medium not between -3 and -1) and
-(long_int not between -3 and -1) and
-(longlong not between -3 and -1) and
-(utiny not between 1 and 3) and
-(ushort not between 1 and 3) and
-(umedium not between 1 and 3) and
-(ulong not between 1 and 3) and
-(ulonglong not between 1 and 3) and
-/* (bits not between b'001' and b'011') and */
-(options not between 'one' and 'three') and
-(flags not between 'one' and 'one,two,three') and
-(date_field not between '1901-01-01' and '1903-03-03') and
-(year_field not between '1901' and '1903') and
-(time_field not between '01:01:01' and '03:03:03') and
-(date_time not between '1901-01-01 01:01:01' and '1903-03-03 03:03:03')
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 20 Using where with pushed condition; Using filesort
-select auto from t1 where
-(string not between "aaaa" and "cccc") and
-(vstring not between "aaaa" and "cccc") and
-(bin not between 0xAAAA and 0xCCCC) and
-(vbin not between 0xAAAA and 0xCCCC) and
-(tiny not between -3 and -1) and
-(short not between -3 and -1) and
-(medium not between -3 and -1) and
-(long_int not between -3 and -1) and
-(longlong not between -3 and -1) and
-(utiny not between 1 and 3) and
-(ushort not between 1 and 3) and
-(umedium not between 1 and 3) and
-(ulong not between 1 and 3) and
-(ulonglong not between 1 and 3) and
-/* (bits not between b'001' and b'011') and */
-(options not between 'one' and 'three') and
-(flags not between 'one' and 'one,two,three') and
-(date_field not between '1901-01-01' and '1903-03-03') and
-(year_field not between '1901' and '1903') and
-(time_field not between '01:01:01' and '03:03:03') and
-(date_time not between '1901-01-01 01:01:01' and '1903-03-03 03:03:03')
-order by auto;
-auto
-4
-explain
-select auto from t1 where
-("aaaa" not between string and string) and
-("aaaa" not between vstring and vstring) and
-(0xAAAA not between bin and bin) and
-(0xAAAA not between vbin and vbin) and
-(-1 not between tiny and tiny) and
-(-1 not between short and short) and
-(-1 not between medium and medium) and
-(-1 not between long_int and long_int) and
-(-1 not between longlong and longlong) and
-(1 not between utiny and utiny) and
-(1 not between ushort and ushort) and
-(1 not between umedium and umedium) and
-(1 not between ulong and ulong) and
-(1 not between ulonglong and ulonglong) and
-/* (b'001' not between bits and bits) and */
-('one' not between options and options) and
-('one' not between flags and flags) and
-('1901-01-01' not between date_field and date_field) and
-('1901' not between year_field and year_field) and
-('01:01:01' not between time_field and time_field) and
-('1901-01-01 01:01:01' not between date_time and date_time)
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 20 Using where with pushed condition; Using filesort
-select auto from t1 where
-("aaaa" not between string and string) and
-("aaaa" not between vstring and vstring) and
-(0xAAAA not between bin and bin) and
-(0xAAAA not between vbin and vbin) and
-(-1 not between tiny and tiny) and
-(-1 not between short and short) and
-(-1 not between medium and medium) and
-(-1 not between long_int and long_int) and
-(-1 not between longlong and longlong) and
-(1 not between utiny and utiny) and
-(1 not between ushort and ushort) and
-(1 not between umedium and umedium) and
-(1 not between ulong and ulong) and
-(1 not between ulonglong and ulonglong) and
-/* (b'001' not between bits and bits) and */
-('one' not between options and options) and
-('one' not between flags and flags) and
-('1901-01-01' not between date_field and date_field) and
-('1901' not between year_field and year_field) and
-('01:01:01' not between time_field and time_field) and
-('1901-01-01 01:01:01' not between date_time and date_time)
-order by auto;
-auto
-2
-3
-4
-explain
-select auto from t1 where
-string in("aaaa","cccc") and
-vstring in("aaaa","cccc") and
-bin in(0xAAAA,0xCCCC) and
-vbin in(0xAAAA,0xCCCC) and
-tiny in(-1,-3) and
-short in(-1,-3) and
-medium in(-1,-3) and
-long_int in(-1,-3) and
-longlong in(-1,-3) and
-utiny in(1,3) and
-ushort in(1,3) and
-umedium in(1,3) and
-ulong in(1,3) and
-ulonglong in(1,3) and
-/* bits in(b'001',b'011') and */
-options in('one','three') and
-flags in('one','one,two,three') and
-date_field in('1901-01-01','1903-03-03') and
-year_field in('1901','1903') and
-time_field in('01:01:01','03:03:03') and
-date_time in('1901-01-01 01:01:01','1903-03-03 03:03:03')
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 20 Using where with pushed condition; Using filesort
-select auto from t1 where
-string in("aaaa","cccc") and
-vstring in("aaaa","cccc") and
-bin in(0xAAAA,0xCCCC) and
-vbin in(0xAAAA,0xCCCC) and
-tiny in(-1,-3) and
-short in(-1,-3) and
-medium in(-1,-3) and
-long_int in(-1,-3) and
-longlong in(-1,-3) and
-utiny in(1,3) and
-ushort in(1,3) and
-umedium in(1,3) and
-ulong in(1,3) and
-ulonglong in(1,3) and
-/* bits in(b'001',b'011') and */
-options in('one','three') and
-flags in('one','one,two,three') and
-date_field in('1901-01-01','1903-03-03') and
-year_field in('1901','1903') and
-time_field in('01:01:01','03:03:03') and
-date_time in('1901-01-01 01:01:01','1903-03-03 03:03:03')
-order by auto;
-auto
-1
-3
-explain
-select auto from t1 where
-"aaaa" in(string) and
-"aaaa" in(vstring) and
-0xAAAA in(bin) and
-0xAAAA in(vbin) and
-(-1 in(tiny)) and
-(-1 in (short)) and
-(-1 in(medium)) and
-(-1 in(long_int)) and
-(-1 in(longlong)) and
-1 in(utiny) and
-1 in(ushort) and
-1 in(umedium) and
-1 in(ulong) and
-1 in(ulonglong) and
-/* b'001' in(bits) and */
-'one' in(options) and
-'one' in(flags) and
-'1901-01-01' in(date_field) and
-'1901' in(year_field) and
-'01:01:01' in(time_field) and
-'1901-01-01 01:01:01' in(date_time)
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref medium_index medium_index 3 const 10 Using where with pushed condition; Using filesort
-select auto from t1 where
-"aaaa" in(string) and
-"aaaa" in(vstring) and
-0xAAAA in(bin) and
-0xAAAA in(vbin) and
-(-1 in(tiny)) and
-(-1 in (short)) and
-(-1 in(medium)) and
-(-1 in(long_int)) and
-(-1 in(longlong)) and
-1 in(utiny) and
-1 in(ushort) and
-1 in(umedium) and
-1 in(ulong) and
-1 in(ulonglong) and
-/* b'001' in(bits) and */
-'one' in(options) and
-'one' in(flags) and
-'1901-01-01' in(date_field) and
-'1901' in(year_field) and
-'01:01:01' in(time_field) and
-'1901-01-01 01:01:01' in(date_time)
-order by auto;
-auto
-1
-explain
-select auto from t1 where
-string not in("aaaa","cccc") and
-vstring not in("aaaa","cccc") and
-bin not in(0xAAAA,0xCCCC) and
-vbin not in(0xAAAA,0xCCCC) and
-tiny not in(-1,-3) and
-short not in(-1,-3) and
-medium not in(-1,-3) and
-long_int not in(-1,-3) and
-longlong not in(-1,-3) and
-utiny not in(1,3) and
-ushort not in(1,3) and
-umedium not in(1,3) and
-ulong not in(1,3) and
-ulonglong not in(1,3) and
-/* bits not in(b'001',b'011') and */
-options not in('one','three') and
-flags not in('one','one,two,three') and
-date_field not in('1901-01-01','1903-03-03') and
-year_field not in('1901','1903') and
-time_field not in('01:01:01','03:03:03') and
-date_time not in('1901-01-01 01:01:01','1903-03-03 03:03:03')
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range medium_index medium_index 3 NULL 30 Using where with pushed condition; Using filesort
-select auto from t1 where
-string not in("aaaa","cccc") and
-vstring not in("aaaa","cccc") and
-bin not in(0xAAAA,0xCCCC) and
-vbin not in(0xAAAA,0xCCCC) and
-tiny not in(-1,-3) and
-short not in(-1,-3) and
-medium not in(-1,-3) and
-long_int not in(-1,-3) and
-longlong not in(-1,-3) and
-utiny not in(1,3) and
-ushort not in(1,3) and
-umedium not in(1,3) and
-ulong not in(1,3) and
-ulonglong not in(1,3) and
-/* bits not in(b'001',b'011') and */
-options not in('one','three') and
-flags not in('one','one,two,three') and
-date_field not in('1901-01-01','1903-03-03') and
-year_field not in('1901','1903') and
-time_field not in('01:01:01','03:03:03') and
-date_time not in('1901-01-01 01:01:01','1903-03-03 03:03:03')
-order by auto;
-auto
-2
-4
-explain
-select auto from t1 where
-"aaaa" not in(string) and
-"aaaa" not in(vstring) and
-0xAAAA not in(bin) and
-0xAAAA not in(vbin) and
-(-1 not in(tiny)) and
-(-1 not in(short)) and
-(-1 not in(medium)) and
-(-1 not in(long_int)) and
-(-1 not in(longlong)) and
-1 not in(utiny) and
-1 not in(ushort) and
-1 not in(umedium) and
-1 not in(ulong) and
-1 not in(ulonglong) and
-/* b'001' not in(bits) and */
-'one' not in(options) and
-'one' not in(flags) and
-'1901-01-01' not in(date_field) and
-'1901' not in(year_field) and
-'01:01:01' not in(time_field) and
-'1901-01-01 01:01:01' not in(date_time)
-order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesort
-select auto from t1 where
-"aaaa" not in(string) and
-"aaaa" not in(vstring) and
-0xAAAA not in(bin) and
-0xAAAA not in(vbin) and
-(-1 not in(tiny)) and
-(-1 not in(short)) and
-(-1 not in(medium)) and
-(-1 not in(long_int)) and
-(-1 not in(longlong)) and
-1 not in(utiny) and
-1 not in(ushort) and
-1 not in(umedium) and
-1 not in(ulong) and
-1 not in(ulonglong) and
-/* b'001' not in(bits) and */
-'one' not in(options) and
-'one' not in(flags) and
-'1901-01-01' not in(date_field) and
-'1901' not in(year_field) and
-'01:01:01' not in(time_field) and
-'1901-01-01 01:01:01' not in(date_time)
-order by auto;
-auto
-2
-3
-4
-update t1
-set medium = 17
-where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = -1 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-/* bits = b'001' and */
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01';
-delete from t1
-where
-string = "aaaa" and
-vstring = "aaaa" and
-bin = 0xAAAA and
-vbin = 0xAAAA and
-tiny = -1 and
-short = -1 and
-medium = 17 and
-long_int = -1 and
-longlong = -1 and
-real_float > 1.0 and real_float < 2.0 and
-real_double > 1.0 and real_double < 2.0 and
-real_decimal > 1.0 and real_decimal < 2.0 and
-utiny = 1 and
-ushort = 1 and
-umedium = 1 and
-ulong = 1 and
-ulonglong = 1 and
-/* bits = b'001' and */
-options = 'one' and
-flags = 'one' and
-date_field = '1901-01-01' and
-year_field = '1901' and
-time_field = '01:01:01' and
-date_time = '1901-01-01 01:01:01';
-select count(*) from t1;
-count(*)
-3
-explain
-select * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL PRIMARY NULL NULL NULL 6 Using where with pushed condition; Using filesort
-select * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;
-pk1 attr1 attr2 attr3
-2 2 NULL NULL
-3 3 3 d
-explain
-select * from t2 where attr3 is not null and attr1 > 2 order by pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where with pushed condition; Using filesort
-select * from t2 where attr3 is not null and attr1 > 2 order by pk1;
-pk1 attr1 attr2 attr3
-3 3 3 d
-4 4 4 e
-5 5 5 f
-explain
-select * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using where with pushed condition; Using filesort
-select * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;
-pk1 attr1 attr2 attr3 attr4
-2 2 9223372036854775804 2 c
-4 4 9223372036854775806 4 e
-5 5 9223372036854775807 5 f
-explain
-select * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where with pushed condition; Using temporary; Using filesort
-1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using where with pushed condition
-select * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;
-pk1 attr1 attr2 attr3 pk1 attr1 attr2 attr3 attr4
-0 0 0 a 0 0 0 0 a
-explain
-select * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t4 range attr1 attr1 4 NULL 10 Using where with pushed condition; Using filesort
-select * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;
-pk1 attr1 attr2 attr3 attr4
-2 2 9223372036854775804 2 c
-4 4 9223372036854775806 4 e
-explain
-select * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t4 range attr1 attr1 4 NULL 10 Using where with pushed condition; Using temporary; Using filesort
-1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using where
-select * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;
-pk1 attr1 attr2 attr3 attr4 pk1 attr1 attr2 attr3 attr4
-2 2 9223372036854775804 2 c 2 2 9223372036854775804 2 c
-3 3 9223372036854775805 3 d 3 3 9223372036854775805 3 d
-4 4 9223372036854775806 4 e 4 4 9223372036854775806 4 e
-explain
-select auto from t1 where string = "aaaa" collate latin1_general_ci order by auto;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where; Using filesort
-explain
-select * from t2 where (attr1 < 2) = (attr2 < 2) order by pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using filesort
-explain
-select * from t3 left join t4 on t4.attr2 = t3.attr2 where t4.attr1 > 1 and t4.attr3 < 5 or t4.attr1 is null order by t4.pk1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using temporary; Using filesort
-1 SIMPLE t4 ALL NULL NULL NULL NULL 6 Using where
-create table t5 (a int primary key auto_increment, b tinytext not null)
-engine = ndb;
-insert into t5 (b) values ('jonas'), ('jensing'), ('johan');
-set engine_condition_pushdown = off;
-select * from t5 where b like '%jo%' order by a;
-a b
-1 jonas
-3 johan
-set engine_condition_pushdown = on;
-explain select * from t5 where b like '%jo%';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using where
-select * from t5 where b like '%jo%' order by a;
-a b
-1 jonas
-3 johan
-set engine_condition_pushdown = off;
-select auto from t1 where date_time like '1902-02-02 %' order by auto;
-auto
-2
-select auto from t1 where date_time not like '1902-02-02 %' order by auto;
-auto
-3
-4
-set engine_condition_pushdown = on;
-explain select auto from t1 where date_time like '1902-02-02 %';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-select auto from t1 where date_time like '1902-02-02 %' order by auto;
-auto
-2
-explain select auto from t1 where date_time not like '1902-02-02 %';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
-select auto from t1 where date_time not like '1902-02-02 %' order by auto;
-auto
-3
-4
-drop table t1;
-create table t1 (a int, b varchar(3), primary key using hash(a))
-engine=ndb;
-insert into t1 values (1,'a'), (2,'ab'), (3,'abc');
-set engine_condition_pushdown = off;
-select * from t1 where b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'ab' or b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'abc';
-a b
-3 abc
-select * from t1 where b like 'abc' or b like 'abc';
-a b
-3 abc
-set engine_condition_pushdown = on;
-select * from t1 where b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'ab' or b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'abc';
-a b
-3 abc
-select * from t1 where b like 'abc' or b like 'abc';
-a b
-3 abc
-drop table t1;
-create table t1 (a int, b char(3), primary key using hash(a))
-engine=ndb;
-insert into t1 values (1,'a'), (2,'ab'), (3,'abc');
-set engine_condition_pushdown = off;
-select * from t1 where b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'ab' or b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'abc';
-a b
-3 abc
-select * from t1 where b like 'abc' or b like 'abc';
-a b
-3 abc
-set engine_condition_pushdown = on;
-select * from t1 where b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'ab' or b like 'ab';
-a b
-2 ab
-select * from t1 where b like 'abc';
-a b
-3 abc
-select * from t1 where b like 'abc' or b like 'abc';
-a b
-3 abc
-drop table t1;
-create table t1 ( fname varchar(255), lname varchar(255) )
-engine=ndbcluster;
-insert into t1 values ("Young","Foo");
-set engine_condition_pushdown = 0;
-SELECT fname, lname FROM t1 WHERE (fname like 'Y%') or (lname like 'F%');
-fname lname
-Young Foo
-set engine_condition_pushdown = 1;
-SELECT fname, lname FROM t1 WHERE (fname like 'Y%') or (lname like 'F%');
-fname lname
-Young Foo
-insert into t1 values ("aaa", "aaa");
-insert into t1 values ("bbb", "bbb");
-insert into t1 values ("ccc", "ccc");
-insert into t1 values ("ddd", "ddd");
-set engine_condition_pushdown = 0;
-SELECT fname, lname FROM t1 WHERE (fname like 'Y%') or (lname like 'F%');
-fname lname
-Young Foo
-set engine_condition_pushdown = 1;
-SELECT fname, lname FROM t1 WHERE (fname like 'Y%') or (lname like 'F%');
-fname lname
-Young Foo
-drop table t1;
-create table t1 (a int, b int, c int, d int, primary key using hash(a))
-engine=ndbcluster;
-insert into t1 values (10,1,100,0+0x1111);
-insert into t1 values (20,2,200,0+0x2222);
-insert into t1 values (30,3,300,0+0x3333);
-insert into t1 values (40,4,400,0+0x4444);
-insert into t1 values (50,5,500,0+0x5555);
-set engine_condition_pushdown = on;
-select a,b,d from t1
-where b in (0,1,2,5)
-order by b;
-a b d
-10 1 4369
-20 2 8738
-50 5 21845
--- big filter just below limit
-a b d
-10 1 4369
-20 2 8738
-50 5 21845
--- big filter just above limit
-a b d
-10 1 4369
-20 2 8738
-50 5 21845
-Warnings:
-Warning 4294 Scan filter is too large, discarded
-set engine_condition_pushdown = @old_ecpd;
-DROP TABLE t1,t2,t3,t4,t5;
diff --git a/mysql-test/r/ndb_config.result b/mysql-test/r/ndb_config.result
deleted file mode 100644
index 9470cd7256c..00000000000
--- a/mysql-test/r/ndb_config.result
+++ /dev/null
@@ -1,14 +0,0 @@
-ndbd,1,localhost ndbd,2,localhost ndb_mgmd,3,localhost mysqld,4, mysqld,5, mysqld,6, mysqld,7,
-1,localhost,41943040,12582912 2,localhost,41943040,12582912
-1 localhost 41943040 12582912
-2 localhost 41943040 12582912
-1 2
-ndbd,1,localhost ndbd,2,localhost ndb_mgmd,3,localhost mysqld,4, mysqld,5, mysqld,6, mysqld,7,
-ndbd,1,localhost,52428800,26214400 ndbd,2,localhost,52428800,36700160 ndbd,3,localhost,52428800,52428800 ndbd,4,localhost,52428800,52428800 ndb_mgmd,5,localhost,, mysqld,6,localhost,,
-ndbd,1,localhost ndbd,2,localhost ndbd,3,localhost ndbd,4,localhost ndb_mgmd,5,localhost mysqld,6, mysqld,7, mysqld,8, mysqld,9, mysqld,10,
-ndbd,2,localhost ndbd,3,localhost ndbd,4,localhost ndbd,5,localhost ndb_mgmd,6,localhost mysqld,1, mysqld,7, mysqld,8, mysqld,9, mysqld,10,
-ndbd,3,localhost ndbd,4,localhost ndbd,5,localhost ndbd,6,localhost ndb_mgmd,1,localhost ndb_mgmd,2,localhost mysqld,11, mysqld,12, mysqld,13, mysqld,14, mysqld,15,
-shm,3,4,35,3 shm,3,5,35,3 shm,3,6,35,3 shm,4,5,35,4 shm,4,6,35,4 shm,5,6,35,5 tcp,11,3,55,3 tcp,11,4,55,4 tcp,11,5,55,5 tcp,11,6,55,6 tcp,12,3,55,3 tcp,12,4,55,4 tcp,12,5,55,5 tcp,12,6,55,6 tcp,13,3,55,3 tcp,13,4,55,4 tcp,13,5,55,5 tcp,13,6,55,6 tcp,14,3,55,3 tcp,14,4,55,4 tcp,14,5,55,5 tcp,14,6,55,6 tcp,15,3,55,3 tcp,15,4,55,4 tcp,15,5,55,5 tcp,15,6,55,6 tcp,1,3,55,1 tcp,1,4,55,1 tcp,1,5,55,1 tcp,1,6,55,1 tcp,2,3,55,2 tcp,2,4,55,2 tcp,2,5,55,2 tcp,2,6,55,2
-1 2 3
-
-1 2 3
diff --git a/mysql-test/r/ndb_database.result b/mysql-test/r/ndb_database.result
deleted file mode 100644
index 566a3eaf3dd..00000000000
--- a/mysql-test/r/ndb_database.result
+++ /dev/null
@@ -1,27 +0,0 @@
-drop table if exists t1;
-drop database if exists mysqltest;
-drop table if exists t1;
-drop database if exists mysqltest;
-create database mysqltest;
-create database mysqltest;
-create table mysqltest.t1 (a int primary key, b int) engine=ndb;
-use mysqltest;
-show tables;
-Tables_in_mysqltest
-t1
-drop database mysqltest;
-use mysqltest;
-show tables;
-Tables_in_mysqltest
-create database mysqltest;
-create table mysqltest.t1 (c int, d int primary key) engine=ndb;
-use mysqltest;
-show tables;
-Tables_in_mysqltest
-t1
-drop database mysqltest;
-use mysqltest;
-show tables;
-Tables_in_mysqltest
-drop table if exists t1;
-drop database if exists mysqltest;
diff --git a/mysql-test/r/ndb_gis.result b/mysql-test/r/ndb_gis.result
deleted file mode 100644
index 0625128195b..00000000000
--- a/mysql-test/r/ndb_gis.result
+++ /dev/null
@@ -1,1088 +0,0 @@
-SET storage_engine=ndbcluster;
-DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE gis_point (fid INTEGER, g POINT);
-CREATE TABLE gis_line (fid INTEGER, g LINESTRING);
-CREATE TABLE gis_polygon (fid INTEGER, g POLYGON);
-CREATE TABLE gis_multi_point (fid INTEGER, g MULTIPOINT);
-CREATE TABLE gis_multi_line (fid INTEGER, g MULTILINESTRING);
-CREATE TABLE gis_multi_polygon (fid INTEGER, g MULTIPOLYGON);
-CREATE TABLE gis_geometrycollection (fid INTEGER, g GEOMETRYCOLLECTION);
-CREATE TABLE gis_geometry (fid INTEGER, g GEOMETRY);
-SHOW CREATE TABLE gis_point;
-Table Create Table
-gis_point CREATE TABLE `gis_point` (
- `fid` int(11) default NULL,
- `g` point default NULL
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW FIELDS FROM gis_point;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g point YES NULL
-SHOW FIELDS FROM gis_line;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g linestring YES NULL
-SHOW FIELDS FROM gis_polygon;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g polygon YES NULL
-SHOW FIELDS FROM gis_multi_point;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multipoint YES NULL
-SHOW FIELDS FROM gis_multi_line;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multilinestring YES NULL
-SHOW FIELDS FROM gis_multi_polygon;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multipolygon YES NULL
-SHOW FIELDS FROM gis_geometrycollection;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g geometrycollection YES NULL
-SHOW FIELDS FROM gis_geometry;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g geometry YES NULL
-INSERT INTO gis_point VALUES
-(101, PointFromText('POINT(10 10)')),
-(102, PointFromText('POINT(20 10)')),
-(103, PointFromText('POINT(20 20)')),
-(104, PointFromWKB(AsWKB(PointFromText('POINT(10 20)'))));
-INSERT INTO gis_line VALUES
-(105, LineFromText('LINESTRING(0 0,0 10,10 0)')),
-(106, LineStringFromText('LINESTRING(10 10,20 10,20 20,10 20,10 10)')),
-(107, LineStringFromWKB(LineString(Point(10, 10), Point(40, 10))));
-INSERT INTO gis_polygon VALUES
-(108, PolygonFromText('POLYGON((10 10,20 10,20 20,10 20,10 10))')),
-(109, PolyFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))')),
-(110, PolyFromWKB(Polygon(LineString(Point(0, 0), Point(30, 0), Point(30, 30), Point(0, 0)))));
-INSERT INTO gis_multi_point VALUES
-(111, MultiPointFromText('MULTIPOINT(0 0,10 10,10 20,20 20)')),
-(112, MPointFromText('MULTIPOINT(1 1,11 11,11 21,21 21)')),
-(113, MPointFromWKB(MultiPoint(Point(3, 6), Point(4, 10))));
-INSERT INTO gis_multi_line VALUES
-(114, MultiLineStringFromText('MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))')),
-(115, MLineFromText('MULTILINESTRING((10 48,10 21,10 0))')),
-(116, MLineFromWKB(MultiLineString(LineString(Point(1, 2), Point(3, 5)), LineString(Point(2, 5), Point(5, 8), Point(21, 7)))));
-INSERT INTO gis_multi_polygon VALUES
-(117, MultiPolygonFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
-(118, MPolyFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
-(119, MPolyFromWKB(MultiPolygon(Polygon(LineString(Point(0, 3), Point(3, 3), Point(3, 0), Point(0, 3))))));
-INSERT INTO gis_geometrycollection VALUES
-(120, GeomCollFromText('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
-(121, GeometryFromWKB(GeometryCollection(Point(44, 6), LineString(Point(3, 6), Point(7, 9)))));
-INSERT into gis_geometry SELECT * FROM gis_point;
-INSERT into gis_geometry SELECT * FROM gis_line;
-INSERT into gis_geometry SELECT * FROM gis_polygon;
-INSERT into gis_geometry SELECT * FROM gis_multi_point;
-INSERT into gis_geometry SELECT * FROM gis_multi_line;
-INSERT into gis_geometry SELECT * FROM gis_multi_polygon;
-INSERT into gis_geometry SELECT * FROM gis_geometrycollection;
-SELECT fid, AsText(g) FROM gis_point ORDER by fid;
-fid AsText(g)
-101 POINT(10 10)
-102 POINT(20 10)
-103 POINT(20 20)
-104 POINT(10 20)
-SELECT fid, AsText(g) FROM gis_line ORDER by fid;
-fid AsText(g)
-105 LINESTRING(0 0,0 10,10 0)
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-107 LINESTRING(10 10,40 10)
-SELECT fid, AsText(g) FROM gis_polygon ORDER by fid;
-fid AsText(g)
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-110 POLYGON((0 0,30 0,30 30,0 0))
-SELECT fid, AsText(g) FROM gis_multi_point ORDER by fid;
-fid AsText(g)
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
-113 MULTIPOINT(3 6,4 10)
-SELECT fid, AsText(g) FROM gis_multi_line ORDER by fid;
-fid AsText(g)
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
-115 MULTILINESTRING((10 48,10 21,10 0))
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
-SELECT fid, AsText(g) FROM gis_multi_polygon ORDER by fid;
-fid AsText(g)
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-SELECT fid, AsText(g) FROM gis_geometrycollection ORDER by fid;
-fid AsText(g)
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-SELECT fid, AsText(g) FROM gis_geometry ORDER by fid;
-fid AsText(g)
-101 POINT(10 10)
-102 POINT(20 10)
-103 POINT(20 20)
-104 POINT(10 20)
-105 LINESTRING(0 0,0 10,10 0)
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-107 LINESTRING(10 10,40 10)
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-110 POLYGON((0 0,30 0,30 30,0 0))
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
-113 MULTIPOINT(3 6,4 10)
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
-115 MULTILINESTRING((10 48,10 21,10 0))
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-SELECT fid, Dimension(g) FROM gis_geometry ORDER by fid;
-fid Dimension(g)
-101 0
-102 0
-103 0
-104 0
-105 1
-106 1
-107 1
-108 2
-109 2
-110 2
-111 0
-112 0
-113 0
-114 1
-115 1
-116 1
-117 2
-118 2
-119 2
-120 1
-121 1
-SELECT fid, GeometryType(g) FROM gis_geometry ORDER by fid;
-fid GeometryType(g)
-101 POINT
-102 POINT
-103 POINT
-104 POINT
-105 LINESTRING
-106 LINESTRING
-107 LINESTRING
-108 POLYGON
-109 POLYGON
-110 POLYGON
-111 MULTIPOINT
-112 MULTIPOINT
-113 MULTIPOINT
-114 MULTILINESTRING
-115 MULTILINESTRING
-116 MULTILINESTRING
-117 MULTIPOLYGON
-118 MULTIPOLYGON
-119 MULTIPOLYGON
-120 GEOMETRYCOLLECTION
-121 GEOMETRYCOLLECTION
-SELECT fid, IsEmpty(g) FROM gis_geometry ORDER by fid;
-fid IsEmpty(g)
-101 0
-102 0
-103 0
-104 0
-105 0
-106 0
-107 0
-108 0
-109 0
-110 0
-111 0
-112 0
-113 0
-114 0
-115 0
-116 0
-117 0
-118 0
-119 0
-120 0
-121 0
-SELECT fid, AsText(Envelope(g)) FROM gis_geometry ORDER by fid;
-fid AsText(Envelope(g))
-101 POLYGON((10 10,10 10,10 10,10 10,10 10))
-102 POLYGON((20 10,20 10,20 10,20 10,20 10))
-103 POLYGON((20 20,20 20,20 20,20 20,20 20))
-104 POLYGON((10 20,10 20,10 20,10 20,10 20))
-105 POLYGON((0 0,10 0,10 10,0 10,0 0))
-106 POLYGON((10 10,20 10,20 20,10 20,10 10))
-107 POLYGON((10 10,40 10,40 10,10 10,10 10))
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0))
-110 POLYGON((0 0,30 0,30 30,0 30,0 0))
-111 POLYGON((0 0,20 0,20 20,0 20,0 0))
-112 POLYGON((1 1,21 1,21 21,1 21,1 1))
-113 POLYGON((3 6,4 6,4 10,3 10,3 6))
-114 POLYGON((10 0,16 0,16 48,10 48,10 0))
-115 POLYGON((10 0,10 0,10 48,10 48,10 0))
-116 POLYGON((1 2,21 2,21 8,1 8,1 2))
-117 POLYGON((28 0,84 0,84 42,28 42,28 0))
-118 POLYGON((28 0,84 0,84 42,28 42,28 0))
-119 POLYGON((0 0,3 0,3 3,0 3,0 0))
-120 POLYGON((0 0,10 0,10 10,0 10,0 0))
-121 POLYGON((3 6,44 6,44 9,3 9,3 6))
-explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelope(g)) from gis_geometry;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
-Warnings:
-Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
-SELECT fid, X(g) FROM gis_point ORDER by fid;
-fid X(g)
-101 10
-102 20
-103 20
-104 10
-SELECT fid, Y(g) FROM gis_point ORDER by fid;
-fid Y(g)
-101 10
-102 10
-103 20
-104 20
-explain extended select X(g),Y(g) FROM gis_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
-Warnings:
-Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
-SELECT fid, AsText(StartPoint(g)) FROM gis_line ORDER by fid;
-fid AsText(StartPoint(g))
-105 POINT(0 0)
-106 POINT(10 10)
-107 POINT(10 10)
-SELECT fid, AsText(EndPoint(g)) FROM gis_line ORDER by fid;
-fid AsText(EndPoint(g))
-105 POINT(10 0)
-106 POINT(10 10)
-107 POINT(40 10)
-SELECT fid, GLength(g) FROM gis_line ORDER by fid;
-fid GLength(g)
-105 24.142135623731
-106 40
-107 30
-SELECT fid, NumPoints(g) FROM gis_line ORDER by fid;
-fid NumPoints(g)
-105 3
-106 5
-107 2
-SELECT fid, AsText(PointN(g, 2)) FROM gis_line ORDER by fid;
-fid AsText(PointN(g, 2))
-105 POINT(0 10)
-106 POINT(20 10)
-107 POINT(40 10)
-SELECT fid, IsClosed(g) FROM gis_line ORDER by fid;
-fid IsClosed(g)
-105 0
-106 1
-107 0
-explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),NumPoints(g),AsText(PointN(g, 2)),IsClosed(g) FROM gis_line;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
-SELECT fid, AsText(Centroid(g)) FROM gis_polygon ORDER by fid;
-fid AsText(Centroid(g))
-108 POINT(15 15)
-109 POINT(25.4166666666667 25.4166666666667)
-110 POINT(20 10)
-SELECT fid, Area(g) FROM gis_polygon ORDER by fid;
-fid Area(g)
-108 100
-109 2400
-110 450
-SELECT fid, AsText(ExteriorRing(g)) FROM gis_polygon ORDER by fid;
-fid AsText(ExteriorRing(g))
-108 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-109 LINESTRING(0 0,50 0,50 50,0 50,0 0)
-110 LINESTRING(0 0,30 0,30 30,0 0)
-SELECT fid, NumInteriorRings(g) FROM gis_polygon ORDER by fid;
-fid NumInteriorRings(g)
-108 0
-109 1
-110 0
-SELECT fid, AsText(InteriorRingN(g, 1)) FROM gis_polygon ORDER by fid;
-fid AsText(InteriorRingN(g, 1))
-108 NULL
-109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-110 NULL
-explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumInteriorRings(g),AsText(InteriorRingN(g, 1)) FROM gis_polygon;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
-SELECT fid, IsClosed(g) FROM gis_multi_line ORDER by fid;
-fid IsClosed(g)
-114 0
-115 0
-116 0
-SELECT fid, AsText(Centroid(g)) FROM gis_multi_polygon ORDER by fid;
-fid AsText(Centroid(g))
-117 POINT(55.5885277530424 17.426536064114)
-118 POINT(55.5885277530424 17.426536064114)
-119 POINT(2 2)
-SELECT fid, Area(g) FROM gis_multi_polygon ORDER by fid;
-fid Area(g)
-117 1684.5
-118 1684.5
-119 4.5
-SELECT fid, NumGeometries(g) from gis_multi_point ORDER by fid;
-fid NumGeometries(g)
-111 4
-112 4
-113 2
-SELECT fid, NumGeometries(g) from gis_multi_line ORDER by fid;
-fid NumGeometries(g)
-114 2
-115 1
-116 2
-SELECT fid, NumGeometries(g) from gis_multi_polygon ORDER by fid;
-fid NumGeometries(g)
-117 2
-118 2
-119 1
-SELECT fid, NumGeometries(g) from gis_geometrycollection ORDER by fid;
-fid NumGeometries(g)
-120 2
-121 2
-explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point ORDER by fid;
-fid AsText(GeometryN(g, 2))
-111 POINT(10 10)
-112 POINT(11 11)
-113 POINT(4 10)
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_line ORDER by fid;
-fid AsText(GeometryN(g, 2))
-114 LINESTRING(16 0,16 23,16 48)
-115 NULL
-116 LINESTRING(2 5,5 8,21 7)
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_polygon ORDER by fid;
-fid AsText(GeometryN(g, 2))
-117 POLYGON((59 18,67 18,67 13,59 13,59 18))
-118 POLYGON((59 18,67 18,67 13,59 13,59 18))
-119 NULL
-SELECT fid, AsText(GeometryN(g, 2)) from gis_geometrycollection ORDER by fid;
-fid AsText(GeometryN(g, 2))
-120 LINESTRING(0 0,10 10)
-121 LINESTRING(3 6,7 9)
-SELECT fid, AsText(GeometryN(g, 1)) from gis_geometrycollection ORDER by fid;
-fid AsText(GeometryN(g, 1))
-120 POINT(0 0)
-121 POINT(44 6)
-explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
-SELECT g1.fid as first, g2.fid as second,
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-first second w c o e d t i r
-120 120 1 1 0 1 0 0 1 0
-120 121 0 0 1 0 0 0 1 0
-121 120 0 0 1 0 0 0 1 0
-121 121 1 1 0 1 0 0 1 0
-explain extended SELECT g1.fid as first, g2.fid as second,
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE g2 ALL NULL NULL NULL NULL 2
-Warnings:
-Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
-DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE t1 (
-gp point,
-ln linestring,
-pg polygon,
-mp multipoint,
-mln multilinestring,
-mpg multipolygon,
-gc geometrycollection,
-gm geometry
-);
-SHOW FIELDS FROM t1;
-Field Type Null Key Default Extra
-gp point YES NULL
-ln linestring YES NULL
-pg polygon YES NULL
-mp multipoint YES NULL
-mln multilinestring YES NULL
-mpg multipolygon YES NULL
-gc geometrycollection YES NULL
-gm geometry YES NULL
-ALTER TABLE t1 ADD fid INT;
-SHOW FIELDS FROM t1;
-Field Type Null Key Default Extra
-gp point YES NULL
-ln linestring YES NULL
-pg polygon YES NULL
-mp multipoint YES NULL
-mln multilinestring YES NULL
-mpg multipolygon YES NULL
-gc geometrycollection YES NULL
-gm geometry YES NULL
-fid int(11) YES NULL
-DROP TABLE t1;
-create table t1 (a geometry not null);
-insert into t1 values (GeomFromText('Point(1 2)'));
-insert into t1 values ('Garbage');
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert IGNORE into t1 values ('Garbage');
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-drop table t1;
-create table t1 (fl geometry not null);
-insert into t1 values (1);
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (1.11);
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values ("qwerty");
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (pointfromtext('point(1,1)'));
-ERROR 23000: Column 'fl' cannot be null
-drop table t1;
-End of 4.1 tests
-CREATE TABLE t1 (name VARCHAR(100), square GEOMETRY);
-INSERT INTO t1 VALUES("center", GeomFromText('POLYGON (( 0 0, 0 2, 2 2, 2 0, 0 0))'));
-INSERT INTO t1 VALUES("small", GeomFromText('POLYGON (( 0 0, 0 1, 1 1, 1 0, 0 0))'));
-INSERT INTO t1 VALUES("big", GeomFromText('POLYGON (( 0 0, 0 3, 3 3, 3 0, 0 0))'));
-INSERT INTO t1 VALUES("up", GeomFromText('POLYGON (( 0 1, 0 3, 2 3, 2 1, 0 1))'));
-INSERT INTO t1 VALUES("up2", GeomFromText('POLYGON (( 0 2, 0 4, 2 4, 2 2, 0 2))'));
-INSERT INTO t1 VALUES("up3", GeomFromText('POLYGON (( 0 3, 0 5, 2 5, 2 3, 0 3))'));
-INSERT INTO t1 VALUES("down", GeomFromText('POLYGON (( 0 -1, 0 1, 2 1, 2 -1, 0 -1))'));
-INSERT INTO t1 VALUES("down2", GeomFromText('POLYGON (( 0 -2, 0 0, 2 0, 2 -2, 0 -2))'));
-INSERT INTO t1 VALUES("down3", GeomFromText('POLYGON (( 0 -3, 0 -1, 2 -1, 2 -3, 0 -3))'));
-INSERT INTO t1 VALUES("right", GeomFromText('POLYGON (( 1 0, 1 2, 3 2, 3 0, 1 0))'));
-INSERT INTO t1 VALUES("right2", GeomFromText('POLYGON (( 2 0, 2 2, 4 2, 4 0, 2 0))'));
-INSERT INTO t1 VALUES("right3", GeomFromText('POLYGON (( 3 0, 3 2, 5 2, 5 0, 3 0))'));
-INSERT INTO t1 VALUES("left", GeomFromText('POLYGON (( -1 0, -1 2, 1 2, 1 0, -1 0))'));
-INSERT INTO t1 VALUES("left2", GeomFromText('POLYGON (( -2 0, -2 2, 0 2, 0 0, -2 0))'));
-INSERT INTO t1 VALUES("left3", GeomFromText('POLYGON (( -3 0, -3 2, -1 2, -1 0, -3 0))'));
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrcontains FROM t1 a1 JOIN t1 a2 ON MBRContains( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrcontains
-center,small
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrdisjoint FROM t1 a1 JOIN t1 a2 ON MBRDisjoint( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrdisjoint
-down3,left3,right3,up3
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrequal FROM t1 a1 JOIN t1 a2 ON MBREqual( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrequal
-center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrintersect FROM t1 a1 JOIN t1 a2 ON MBRIntersects( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrintersect
-big,center,down,down2,left,left2,right,right2,small,up,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbroverlaps FROM t1 a1 JOIN t1 a2 ON MBROverlaps( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbroverlaps
-down,left,right,up
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrtouches FROM t1 a1 JOIN t1 a2 ON MBRTouches( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrtouches
-down2,left2,right2,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrwithin FROM t1 a1 JOIN t1 a2 ON MBRWithin( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrwithin
-big,center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS contains FROM t1 a1 JOIN t1 a2 ON Contains( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-contains
-center,small
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS disjoint FROM t1 a1 JOIN t1 a2 ON Disjoint( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-disjoint
-down3,left3,right3,up3
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS equals FROM t1 a1 JOIN t1 a2 ON Equals( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-equals
-center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS intersect FROM t1 a1 JOIN t1 a2 ON Intersects( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-intersect
-big,center,down,down2,left,left2,right,right2,small,up,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS overlaps FROM t1 a1 JOIN t1 a2 ON Overlaps( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-overlaps
-down,left,right,up
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS touches FROM t1 a1 JOIN t1 a2 ON Touches( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-touches
-down2,left2,right2,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS within FROM t1 a1 JOIN t1 a2 ON Within( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-within
-big,center
-SET @vert1 = GeomFromText('POLYGON ((0 -2, 0 2, 0 -2))');
-SET @horiz1 = GeomFromText('POLYGON ((-2 0, 2 0, -2 0))');
-SET @horiz2 = GeomFromText('POLYGON ((-1 0, 3 0, -1 0))');
-SET @horiz3 = GeomFromText('POLYGON ((2 0, 3 0, 2 0))');
-SET @point1 = GeomFromText('POLYGON ((0 0))');
-SET @point2 = GeomFromText('POLYGON ((-2 0))');
-SELECT GROUP_CONCAT(a1.name ORDER BY a1.name) AS overlaps FROM t1 a1 WHERE Overlaps(a1.square, @vert1) GROUP BY a1.name;
-overlaps
-SELECT GROUP_CONCAT(a1.name ORDER BY a1.name) AS overlaps FROM t1 a1 WHERE Overlaps(a1.square, @horiz1) GROUP BY a1.name;
-overlaps
-SELECT Overlaps(@horiz1, @vert1) FROM DUAL;
-Overlaps(@horiz1, @vert1)
-0
-SELECT Overlaps(@horiz1, @horiz2) FROM DUAL;
-Overlaps(@horiz1, @horiz2)
-1
-SELECT Overlaps(@horiz1, @horiz3) FROM DUAL;
-Overlaps(@horiz1, @horiz3)
-0
-SELECT Overlaps(@horiz1, @point1) FROM DUAL;
-Overlaps(@horiz1, @point1)
-0
-SELECT Overlaps(@horiz1, @point2) FROM DUAL;
-Overlaps(@horiz1, @point2)
-0
-DROP TABLE t1;
-End of 5.0 tests
-set engine_condition_pushdown = on;
-DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE gis_point (fid INTEGER, g POINT);
-CREATE TABLE gis_line (fid INTEGER, g LINESTRING);
-CREATE TABLE gis_polygon (fid INTEGER, g POLYGON);
-CREATE TABLE gis_multi_point (fid INTEGER, g MULTIPOINT);
-CREATE TABLE gis_multi_line (fid INTEGER, g MULTILINESTRING);
-CREATE TABLE gis_multi_polygon (fid INTEGER, g MULTIPOLYGON);
-CREATE TABLE gis_geometrycollection (fid INTEGER, g GEOMETRYCOLLECTION);
-CREATE TABLE gis_geometry (fid INTEGER, g GEOMETRY);
-SHOW CREATE TABLE gis_point;
-Table Create Table
-gis_point CREATE TABLE `gis_point` (
- `fid` int(11) default NULL,
- `g` point default NULL
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW FIELDS FROM gis_point;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g point YES NULL
-SHOW FIELDS FROM gis_line;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g linestring YES NULL
-SHOW FIELDS FROM gis_polygon;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g polygon YES NULL
-SHOW FIELDS FROM gis_multi_point;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multipoint YES NULL
-SHOW FIELDS FROM gis_multi_line;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multilinestring YES NULL
-SHOW FIELDS FROM gis_multi_polygon;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g multipolygon YES NULL
-SHOW FIELDS FROM gis_geometrycollection;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g geometrycollection YES NULL
-SHOW FIELDS FROM gis_geometry;
-Field Type Null Key Default Extra
-fid int(11) YES NULL
-g geometry YES NULL
-INSERT INTO gis_point VALUES
-(101, PointFromText('POINT(10 10)')),
-(102, PointFromText('POINT(20 10)')),
-(103, PointFromText('POINT(20 20)')),
-(104, PointFromWKB(AsWKB(PointFromText('POINT(10 20)'))));
-INSERT INTO gis_line VALUES
-(105, LineFromText('LINESTRING(0 0,0 10,10 0)')),
-(106, LineStringFromText('LINESTRING(10 10,20 10,20 20,10 20,10 10)')),
-(107, LineStringFromWKB(LineString(Point(10, 10), Point(40, 10))));
-INSERT INTO gis_polygon VALUES
-(108, PolygonFromText('POLYGON((10 10,20 10,20 20,10 20,10 10))')),
-(109, PolyFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))')),
-(110, PolyFromWKB(Polygon(LineString(Point(0, 0), Point(30, 0), Point(30, 30), Point(0, 0)))));
-INSERT INTO gis_multi_point VALUES
-(111, MultiPointFromText('MULTIPOINT(0 0,10 10,10 20,20 20)')),
-(112, MPointFromText('MULTIPOINT(1 1,11 11,11 21,21 21)')),
-(113, MPointFromWKB(MultiPoint(Point(3, 6), Point(4, 10))));
-INSERT INTO gis_multi_line VALUES
-(114, MultiLineStringFromText('MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))')),
-(115, MLineFromText('MULTILINESTRING((10 48,10 21,10 0))')),
-(116, MLineFromWKB(MultiLineString(LineString(Point(1, 2), Point(3, 5)), LineString(Point(2, 5), Point(5, 8), Point(21, 7)))));
-INSERT INTO gis_multi_polygon VALUES
-(117, MultiPolygonFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
-(118, MPolyFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
-(119, MPolyFromWKB(MultiPolygon(Polygon(LineString(Point(0, 3), Point(3, 3), Point(3, 0), Point(0, 3))))));
-INSERT INTO gis_geometrycollection VALUES
-(120, GeomCollFromText('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
-(121, GeometryFromWKB(GeometryCollection(Point(44, 6), LineString(Point(3, 6), Point(7, 9)))));
-INSERT into gis_geometry SELECT * FROM gis_point;
-INSERT into gis_geometry SELECT * FROM gis_line;
-INSERT into gis_geometry SELECT * FROM gis_polygon;
-INSERT into gis_geometry SELECT * FROM gis_multi_point;
-INSERT into gis_geometry SELECT * FROM gis_multi_line;
-INSERT into gis_geometry SELECT * FROM gis_multi_polygon;
-INSERT into gis_geometry SELECT * FROM gis_geometrycollection;
-SELECT fid, AsText(g) FROM gis_point ORDER by fid;
-fid AsText(g)
-101 POINT(10 10)
-102 POINT(20 10)
-103 POINT(20 20)
-104 POINT(10 20)
-SELECT fid, AsText(g) FROM gis_line ORDER by fid;
-fid AsText(g)
-105 LINESTRING(0 0,0 10,10 0)
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-107 LINESTRING(10 10,40 10)
-SELECT fid, AsText(g) FROM gis_polygon ORDER by fid;
-fid AsText(g)
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-110 POLYGON((0 0,30 0,30 30,0 0))
-SELECT fid, AsText(g) FROM gis_multi_point ORDER by fid;
-fid AsText(g)
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
-113 MULTIPOINT(3 6,4 10)
-SELECT fid, AsText(g) FROM gis_multi_line ORDER by fid;
-fid AsText(g)
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
-115 MULTILINESTRING((10 48,10 21,10 0))
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
-SELECT fid, AsText(g) FROM gis_multi_polygon ORDER by fid;
-fid AsText(g)
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-SELECT fid, AsText(g) FROM gis_geometrycollection ORDER by fid;
-fid AsText(g)
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-SELECT fid, AsText(g) FROM gis_geometry ORDER by fid;
-fid AsText(g)
-101 POINT(10 10)
-102 POINT(20 10)
-103 POINT(20 20)
-104 POINT(10 20)
-105 LINESTRING(0 0,0 10,10 0)
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-107 LINESTRING(10 10,40 10)
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-110 POLYGON((0 0,30 0,30 30,0 0))
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
-113 MULTIPOINT(3 6,4 10)
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
-115 MULTILINESTRING((10 48,10 21,10 0))
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-SELECT fid, Dimension(g) FROM gis_geometry ORDER by fid;
-fid Dimension(g)
-101 0
-102 0
-103 0
-104 0
-105 1
-106 1
-107 1
-108 2
-109 2
-110 2
-111 0
-112 0
-113 0
-114 1
-115 1
-116 1
-117 2
-118 2
-119 2
-120 1
-121 1
-SELECT fid, GeometryType(g) FROM gis_geometry ORDER by fid;
-fid GeometryType(g)
-101 POINT
-102 POINT
-103 POINT
-104 POINT
-105 LINESTRING
-106 LINESTRING
-107 LINESTRING
-108 POLYGON
-109 POLYGON
-110 POLYGON
-111 MULTIPOINT
-112 MULTIPOINT
-113 MULTIPOINT
-114 MULTILINESTRING
-115 MULTILINESTRING
-116 MULTILINESTRING
-117 MULTIPOLYGON
-118 MULTIPOLYGON
-119 MULTIPOLYGON
-120 GEOMETRYCOLLECTION
-121 GEOMETRYCOLLECTION
-SELECT fid, IsEmpty(g) FROM gis_geometry ORDER by fid;
-fid IsEmpty(g)
-101 0
-102 0
-103 0
-104 0
-105 0
-106 0
-107 0
-108 0
-109 0
-110 0
-111 0
-112 0
-113 0
-114 0
-115 0
-116 0
-117 0
-118 0
-119 0
-120 0
-121 0
-SELECT fid, AsText(Envelope(g)) FROM gis_geometry ORDER by fid;
-fid AsText(Envelope(g))
-101 POLYGON((10 10,10 10,10 10,10 10,10 10))
-102 POLYGON((20 10,20 10,20 10,20 10,20 10))
-103 POLYGON((20 20,20 20,20 20,20 20,20 20))
-104 POLYGON((10 20,10 20,10 20,10 20,10 20))
-105 POLYGON((0 0,10 0,10 10,0 10,0 0))
-106 POLYGON((10 10,20 10,20 20,10 20,10 10))
-107 POLYGON((10 10,40 10,40 10,10 10,10 10))
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
-109 POLYGON((0 0,50 0,50 50,0 50,0 0))
-110 POLYGON((0 0,30 0,30 30,0 30,0 0))
-111 POLYGON((0 0,20 0,20 20,0 20,0 0))
-112 POLYGON((1 1,21 1,21 21,1 21,1 1))
-113 POLYGON((3 6,4 6,4 10,3 10,3 6))
-114 POLYGON((10 0,16 0,16 48,10 48,10 0))
-115 POLYGON((10 0,10 0,10 48,10 48,10 0))
-116 POLYGON((1 2,21 2,21 8,1 8,1 2))
-117 POLYGON((28 0,84 0,84 42,28 42,28 0))
-118 POLYGON((28 0,84 0,84 42,28 42,28 0))
-119 POLYGON((0 0,3 0,3 3,0 3,0 0))
-120 POLYGON((0 0,10 0,10 10,0 10,0 0))
-121 POLYGON((3 6,44 6,44 9,3 9,3 6))
-explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelope(g)) from gis_geometry;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
-Warnings:
-Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
-SELECT fid, X(g) FROM gis_point ORDER by fid;
-fid X(g)
-101 10
-102 20
-103 20
-104 10
-SELECT fid, Y(g) FROM gis_point ORDER by fid;
-fid Y(g)
-101 10
-102 10
-103 20
-104 20
-explain extended select X(g),Y(g) FROM gis_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
-Warnings:
-Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
-SELECT fid, AsText(StartPoint(g)) FROM gis_line ORDER by fid;
-fid AsText(StartPoint(g))
-105 POINT(0 0)
-106 POINT(10 10)
-107 POINT(10 10)
-SELECT fid, AsText(EndPoint(g)) FROM gis_line ORDER by fid;
-fid AsText(EndPoint(g))
-105 POINT(10 0)
-106 POINT(10 10)
-107 POINT(40 10)
-SELECT fid, GLength(g) FROM gis_line ORDER by fid;
-fid GLength(g)
-105 24.142135623731
-106 40
-107 30
-SELECT fid, NumPoints(g) FROM gis_line ORDER by fid;
-fid NumPoints(g)
-105 3
-106 5
-107 2
-SELECT fid, AsText(PointN(g, 2)) FROM gis_line ORDER by fid;
-fid AsText(PointN(g, 2))
-105 POINT(0 10)
-106 POINT(20 10)
-107 POINT(40 10)
-SELECT fid, IsClosed(g) FROM gis_line ORDER by fid;
-fid IsClosed(g)
-105 0
-106 1
-107 0
-explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),NumPoints(g),AsText(PointN(g, 2)),IsClosed(g) FROM gis_line;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
-SELECT fid, AsText(Centroid(g)) FROM gis_polygon ORDER by fid;
-fid AsText(Centroid(g))
-108 POINT(15 15)
-109 POINT(25.4166666666667 25.4166666666667)
-110 POINT(20 10)
-SELECT fid, Area(g) FROM gis_polygon ORDER by fid;
-fid Area(g)
-108 100
-109 2400
-110 450
-SELECT fid, AsText(ExteriorRing(g)) FROM gis_polygon ORDER by fid;
-fid AsText(ExteriorRing(g))
-108 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-109 LINESTRING(0 0,50 0,50 50,0 50,0 0)
-110 LINESTRING(0 0,30 0,30 30,0 0)
-SELECT fid, NumInteriorRings(g) FROM gis_polygon ORDER by fid;
-fid NumInteriorRings(g)
-108 0
-109 1
-110 0
-SELECT fid, AsText(InteriorRingN(g, 1)) FROM gis_polygon ORDER by fid;
-fid AsText(InteriorRingN(g, 1))
-108 NULL
-109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
-110 NULL
-explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumInteriorRings(g),AsText(InteriorRingN(g, 1)) FROM gis_polygon;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
-SELECT fid, IsClosed(g) FROM gis_multi_line ORDER by fid;
-fid IsClosed(g)
-114 0
-115 0
-116 0
-SELECT fid, AsText(Centroid(g)) FROM gis_multi_polygon ORDER by fid;
-fid AsText(Centroid(g))
-117 POINT(55.5885277530424 17.426536064114)
-118 POINT(55.5885277530424 17.426536064114)
-119 POINT(2 2)
-SELECT fid, Area(g) FROM gis_multi_polygon ORDER by fid;
-fid Area(g)
-117 1684.5
-118 1684.5
-119 4.5
-SELECT fid, NumGeometries(g) from gis_multi_point ORDER by fid;
-fid NumGeometries(g)
-111 4
-112 4
-113 2
-SELECT fid, NumGeometries(g) from gis_multi_line ORDER by fid;
-fid NumGeometries(g)
-114 2
-115 1
-116 2
-SELECT fid, NumGeometries(g) from gis_multi_polygon ORDER by fid;
-fid NumGeometries(g)
-117 2
-118 2
-119 1
-SELECT fid, NumGeometries(g) from gis_geometrycollection ORDER by fid;
-fid NumGeometries(g)
-120 2
-121 2
-explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point ORDER by fid;
-fid AsText(GeometryN(g, 2))
-111 POINT(10 10)
-112 POINT(11 11)
-113 POINT(4 10)
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_line ORDER by fid;
-fid AsText(GeometryN(g, 2))
-114 LINESTRING(16 0,16 23,16 48)
-115 NULL
-116 LINESTRING(2 5,5 8,21 7)
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_polygon ORDER by fid;
-fid AsText(GeometryN(g, 2))
-117 POLYGON((59 18,67 18,67 13,59 13,59 18))
-118 POLYGON((59 18,67 18,67 13,59 13,59 18))
-119 NULL
-SELECT fid, AsText(GeometryN(g, 2)) from gis_geometrycollection ORDER by fid;
-fid AsText(GeometryN(g, 2))
-120 LINESTRING(0 0,10 10)
-121 LINESTRING(3 6,7 9)
-SELECT fid, AsText(GeometryN(g, 1)) from gis_geometrycollection ORDER by fid;
-fid AsText(GeometryN(g, 1))
-120 POINT(0 0)
-121 POINT(44 6)
-explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
-Warnings:
-Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
-SELECT g1.fid as first, g2.fid as second,
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-first second w c o e d t i r
-120 120 1 1 0 1 0 0 1 0
-120 121 0 0 1 0 0 0 1 0
-121 120 0 0 1 0 0 0 1 0
-121 121 1 1 0 1 0 0 1 0
-explain extended SELECT g1.fid as first, g2.fid as second,
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
-1 SIMPLE g2 ALL NULL NULL NULL NULL 2
-Warnings:
-Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
-DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
-CREATE TABLE t1 (
-gp point,
-ln linestring,
-pg polygon,
-mp multipoint,
-mln multilinestring,
-mpg multipolygon,
-gc geometrycollection,
-gm geometry
-);
-SHOW FIELDS FROM t1;
-Field Type Null Key Default Extra
-gp point YES NULL
-ln linestring YES NULL
-pg polygon YES NULL
-mp multipoint YES NULL
-mln multilinestring YES NULL
-mpg multipolygon YES NULL
-gc geometrycollection YES NULL
-gm geometry YES NULL
-ALTER TABLE t1 ADD fid INT;
-SHOW FIELDS FROM t1;
-Field Type Null Key Default Extra
-gp point YES NULL
-ln linestring YES NULL
-pg polygon YES NULL
-mp multipoint YES NULL
-mln multilinestring YES NULL
-mpg multipolygon YES NULL
-gc geometrycollection YES NULL
-gm geometry YES NULL
-fid int(11) YES NULL
-DROP TABLE t1;
-create table t1 (a geometry not null);
-insert into t1 values (GeomFromText('Point(1 2)'));
-insert into t1 values ('Garbage');
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert IGNORE into t1 values ('Garbage');
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-drop table t1;
-create table t1 (fl geometry not null);
-insert into t1 values (1);
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (1.11);
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values ("qwerty");
-ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
-insert into t1 values (pointfromtext('point(1,1)'));
-ERROR 23000: Column 'fl' cannot be null
-drop table t1;
-End of 4.1 tests
-CREATE TABLE t1 (name VARCHAR(100), square GEOMETRY);
-INSERT INTO t1 VALUES("center", GeomFromText('POLYGON (( 0 0, 0 2, 2 2, 2 0, 0 0))'));
-INSERT INTO t1 VALUES("small", GeomFromText('POLYGON (( 0 0, 0 1, 1 1, 1 0, 0 0))'));
-INSERT INTO t1 VALUES("big", GeomFromText('POLYGON (( 0 0, 0 3, 3 3, 3 0, 0 0))'));
-INSERT INTO t1 VALUES("up", GeomFromText('POLYGON (( 0 1, 0 3, 2 3, 2 1, 0 1))'));
-INSERT INTO t1 VALUES("up2", GeomFromText('POLYGON (( 0 2, 0 4, 2 4, 2 2, 0 2))'));
-INSERT INTO t1 VALUES("up3", GeomFromText('POLYGON (( 0 3, 0 5, 2 5, 2 3, 0 3))'));
-INSERT INTO t1 VALUES("down", GeomFromText('POLYGON (( 0 -1, 0 1, 2 1, 2 -1, 0 -1))'));
-INSERT INTO t1 VALUES("down2", GeomFromText('POLYGON (( 0 -2, 0 0, 2 0, 2 -2, 0 -2))'));
-INSERT INTO t1 VALUES("down3", GeomFromText('POLYGON (( 0 -3, 0 -1, 2 -1, 2 -3, 0 -3))'));
-INSERT INTO t1 VALUES("right", GeomFromText('POLYGON (( 1 0, 1 2, 3 2, 3 0, 1 0))'));
-INSERT INTO t1 VALUES("right2", GeomFromText('POLYGON (( 2 0, 2 2, 4 2, 4 0, 2 0))'));
-INSERT INTO t1 VALUES("right3", GeomFromText('POLYGON (( 3 0, 3 2, 5 2, 5 0, 3 0))'));
-INSERT INTO t1 VALUES("left", GeomFromText('POLYGON (( -1 0, -1 2, 1 2, 1 0, -1 0))'));
-INSERT INTO t1 VALUES("left2", GeomFromText('POLYGON (( -2 0, -2 2, 0 2, 0 0, -2 0))'));
-INSERT INTO t1 VALUES("left3", GeomFromText('POLYGON (( -3 0, -3 2, -1 2, -1 0, -3 0))'));
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrcontains FROM t1 a1 JOIN t1 a2 ON MBRContains( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrcontains
-center,small
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrdisjoint FROM t1 a1 JOIN t1 a2 ON MBRDisjoint( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrdisjoint
-down3,left3,right3,up3
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrequal FROM t1 a1 JOIN t1 a2 ON MBREqual( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrequal
-center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrintersect FROM t1 a1 JOIN t1 a2 ON MBRIntersects( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrintersect
-big,center,down,down2,left,left2,right,right2,small,up,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbroverlaps FROM t1 a1 JOIN t1 a2 ON MBROverlaps( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbroverlaps
-down,left,right,up
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrtouches FROM t1 a1 JOIN t1 a2 ON MBRTouches( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrtouches
-down2,left2,right2,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS mbrwithin FROM t1 a1 JOIN t1 a2 ON MBRWithin( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-mbrwithin
-big,center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS contains FROM t1 a1 JOIN t1 a2 ON Contains( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-contains
-center,small
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS disjoint FROM t1 a1 JOIN t1 a2 ON Disjoint( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-disjoint
-down3,left3,right3,up3
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS equals FROM t1 a1 JOIN t1 a2 ON Equals( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-equals
-center
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS intersect FROM t1 a1 JOIN t1 a2 ON Intersects( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-intersect
-big,center,down,down2,left,left2,right,right2,small,up,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS overlaps FROM t1 a1 JOIN t1 a2 ON Overlaps( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-overlaps
-down,left,right,up
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS touches FROM t1 a1 JOIN t1 a2 ON Touches( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-touches
-down2,left2,right2,up2
-SELECT GROUP_CONCAT(a2.name ORDER BY a2.name) AS within FROM t1 a1 JOIN t1 a2 ON Within( a1.square, a2.square) WHERE a1.name = "center" GROUP BY a1.name;
-within
-big,center
-SET @vert1 = GeomFromText('POLYGON ((0 -2, 0 2, 0 -2))');
-SET @horiz1 = GeomFromText('POLYGON ((-2 0, 2 0, -2 0))');
-SET @horiz2 = GeomFromText('POLYGON ((-1 0, 3 0, -1 0))');
-SET @horiz3 = GeomFromText('POLYGON ((2 0, 3 0, 2 0))');
-SET @point1 = GeomFromText('POLYGON ((0 0))');
-SET @point2 = GeomFromText('POLYGON ((-2 0))');
-SELECT GROUP_CONCAT(a1.name ORDER BY a1.name) AS overlaps FROM t1 a1 WHERE Overlaps(a1.square, @vert1) GROUP BY a1.name;
-overlaps
-SELECT GROUP_CONCAT(a1.name ORDER BY a1.name) AS overlaps FROM t1 a1 WHERE Overlaps(a1.square, @horiz1) GROUP BY a1.name;
-overlaps
-SELECT Overlaps(@horiz1, @vert1) FROM DUAL;
-Overlaps(@horiz1, @vert1)
-0
-SELECT Overlaps(@horiz1, @horiz2) FROM DUAL;
-Overlaps(@horiz1, @horiz2)
-1
-SELECT Overlaps(@horiz1, @horiz3) FROM DUAL;
-Overlaps(@horiz1, @horiz3)
-0
-SELECT Overlaps(@horiz1, @point1) FROM DUAL;
-Overlaps(@horiz1, @point1)
-0
-SELECT Overlaps(@horiz1, @point2) FROM DUAL;
-Overlaps(@horiz1, @point2)
-0
-DROP TABLE t1;
-End of 5.0 tests
diff --git a/mysql-test/r/ndb_grant.result b/mysql-test/r/ndb_grant.result
deleted file mode 100644
index 6192a7cace5..00000000000
--- a/mysql-test/r/ndb_grant.result
+++ /dev/null
@@ -1,444 +0,0 @@
-drop table if exists t1;
-SET NAMES binary;
-use mysql;
-alter table columns_priv engine=ndb;
-alter table db engine=ndb;
-alter table func engine=ndb;
-alter table help_category engine=ndb;
-alter table help_keyword engine=ndb;
-alter table help_relation engine=ndb;
-alter table help_topic engine=ndb;
-alter table host engine=ndb;
-alter table tables_priv engine=ndb;
-alter table time_zone engine=ndb;
-alter table time_zone_leap_second engine=ndb;
-alter table time_zone_name engine=ndb;
-alter table time_zone_transition engine=ndb;
-alter table time_zone_transition_type engine=ndb;
-alter table user engine=ndb;
-use test;
-delete from mysql.user where user='mysqltest_1';
-delete from mysql.db where user='mysqltest_1';
-flush privileges;
-begin;
-grant select on mysqltest.* to mysqltest_1@localhost require cipher "EDH-RSA-DES-CBC3-SHA";
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
-GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-grant delete on mysqltest.* to mysqltest_1@localhost;
-commit;
-select * from mysql.user where user="mysqltest_1";
-Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections
-localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N 0 0 0
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
-GRANT SELECT, DELETE ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-revoke delete on mysqltest.* from mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
-GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-grant select on mysqltest.* to mysqltest_1@localhost require NONE;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-grant USAGE on mysqltest.* to mysqltest_1@localhost require cipher "EDH-RSA-DES-CBC3-SHA" AND SUBJECT "testsubject" ISSUER "MySQL AB";
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE ISSUER 'MySQL AB' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA'
-GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-revoke all privileges on mysqltest.* from mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE ISSUER 'MySQL AB' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA'
-delete from mysql.user where user='mysqltest_1';
-flush privileges;
-begin;
-grant CREATE TEMPORARY TABLES, LOCK TABLES on mysqltest.* to mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-flush privileges;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-revoke CREATE TEMPORARY TABLES on mysqltest.* from mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
-begin;
-grant ALL PRIVILEGES on mysqltest.* to mysqltest_1@localhost with GRANT OPTION;
-commit;
-flush privileges;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
-begin;
-revoke LOCK TABLES, ALTER on mysqltest.* from mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, CREATE VIEW, SHOW VIEW ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
-begin;
-revoke all privileges on mysqltest.* from mysqltest_1@localhost;
-commit;
-delete from mysql.user where user='mysqltest_1';
-flush privileges;
-begin;
-grant usage on test.* to mysqltest_1@localhost with grant option;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT USAGE ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
-GRANT USAGE ON `test`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
-delete from mysql.user where user='mysqltest_1';
-delete from mysql.db where user='mysqltest_1';
-delete from mysql.tables_priv where user='mysqltest_1';
-delete from mysql.columns_priv where user='mysqltest_1';
-flush privileges;
-show grants for mysqltest_1@localhost;
-ERROR 42000: There is no such grant defined for user 'mysqltest_1' on host 'localhost'
-create table t1 (a int);
-begin;
-GRANT select,update,insert on t1 to mysqltest_1@localhost;
-GRANT select (a), update (a),insert(a), references(a) on t1 to mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT SELECT, SELECT (a), INSERT, INSERT (a), UPDATE, UPDATE (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
-select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1";
-table_priv column_priv
-Select,Insert,Update Select,Insert,Update,References
-begin;
-REVOKE select (a), update on t1 from mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT SELECT, INSERT, INSERT (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
-begin;
-REVOKE select,update,insert,insert (a) on t1 from mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
-GRANT REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
-begin;
-GRANT select,references on t1 to mysqltest_1@localhost;
-commit;
-select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1";
-table_priv column_priv
-Select,References References
-begin;
-grant all on test.* to mysqltest_3@localhost with grant option;
-revoke all on test.* from mysqltest_3@localhost;
-commit;
-show grants for mysqltest_3@localhost;
-Grants for mysqltest_3@localhost
-GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost'
-GRANT USAGE ON `test`.* TO 'mysqltest_3'@'localhost' WITH GRANT OPTION
-begin;
-revoke grant option on test.* from mysqltest_3@localhost;
-commit;
-show grants for mysqltest_3@localhost;
-Grants for mysqltest_3@localhost
-GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost'
-begin;
-grant all on test.t1 to mysqltest_2@localhost with grant option;
-revoke all on test.t1 from mysqltest_2@localhost;
-commit;
-show grants for mysqltest_2@localhost;
-Grants for mysqltest_2@localhost
-GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
-GRANT USAGE ON `test`.`t1` TO 'mysqltest_2'@'localhost' WITH GRANT OPTION
-begin;
-revoke grant option on test.t1 from mysqltest_2@localhost;
-commit;
-show grants for mysqltest_2@localhost;
-Grants for mysqltest_2@localhost
-GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
-delete from mysql.user where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
-delete from mysql.db where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
-delete from mysql.tables_priv where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
-delete from mysql.columns_priv where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
-flush privileges;
-drop table t1;
-begin;
-GRANT FILE on mysqltest.* to mysqltest_1@localhost;
-ERROR HY000: Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
-commit;
-select 1;
-1
-1
-create database mysqltest1;
-begin;
-grant usage on mysqltest1.* to test6123 identified by 'magic123';
-commit;
-select host,db,user,select_priv,insert_priv from mysql.db where db="mysqltest1";
-host db user select_priv insert_priv
-delete from mysql.user where user='test6123';
-drop database mysqltest1;
-create table t1 (a int);
-begin;
-grant ALL PRIVILEGES on *.* to drop_user2@localhost with GRANT OPTION;
-commit;
-show grants for drop_user2@localhost;
-Grants for drop_user2@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user2'@'localhost' WITH GRANT OPTION
-begin;
-revoke all privileges, grant option from drop_user2@localhost;
-commit;
-drop user drop_user2@localhost;
-begin;
-grant ALL PRIVILEGES on *.* to drop_user@localhost with GRANT OPTION;
-grant ALL PRIVILEGES on test.* to drop_user@localhost with GRANT OPTION;
-grant select(a) on test.t1 to drop_user@localhost;
-commit;
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT ALL PRIVILEGES ON `test`.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT SELECT (a) ON `test`.`t1` TO 'drop_user'@'localhost'
-set sql_mode=ansi_quotes;
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT ALL PRIVILEGES ON "test".* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT SELECT (a) ON "test"."t1" TO 'drop_user'@'localhost'
-set sql_mode=default;
-set sql_quote_show_create=0;
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT ALL PRIVILEGES ON test.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT SELECT (a) ON test.t1 TO 'drop_user'@'localhost'
-set sql_mode="ansi_quotes";
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT ALL PRIVILEGES ON test.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT SELECT (a) ON test.t1 TO 'drop_user'@'localhost'
-set sql_quote_show_create=1;
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT ALL PRIVILEGES ON "test".* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT SELECT (a) ON "test"."t1" TO 'drop_user'@'localhost'
-set sql_mode="";
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT ALL PRIVILEGES ON `test`.* TO 'drop_user'@'localhost' WITH GRANT OPTION
-GRANT SELECT (a) ON `test`.`t1` TO 'drop_user'@'localhost'
-revoke all privileges, grant option from drop_user@localhost;
-show grants for drop_user@localhost;
-Grants for drop_user@localhost
-GRANT USAGE ON *.* TO 'drop_user'@'localhost'
-drop user drop_user@localhost;
-begin;
-revoke all privileges, grant option from drop_user@localhost;
-ERROR HY000: Can't revoke all privileges, grant for one or more of the requested users
-commit;
-begin;
-grant select(a) on test.t1 to drop_user1@localhost;
-commit;
-flush privileges;
-begin;
-grant select on test.t1 to drop_user2@localhost;
-grant select on test.* to drop_user3@localhost;
-grant select on *.* to drop_user4@localhost;
-commit;
-flush privileges;
-drop user drop_user1@localhost, drop_user2@localhost, drop_user3@localhost,
-drop_user4@localhost;
-begin;
-revoke all privileges, grant option from drop_user1@localhost, drop_user2@localhost,
-drop_user3@localhost, drop_user4@localhost;
-ERROR HY000: Can't revoke all privileges, grant for one or more of the requested users
-commit;
-flush privileges;
-drop user drop_user1@localhost, drop_user2@localhost, drop_user3@localhost,
-drop_user4@localhost;
-drop table t1;
-begin;
-grant usage on *.* to mysqltest_1@localhost identified by "password";
-grant select, update, insert on test.* to mysqltest_1@localhost;
-commit;
-show grants for mysqltest_1@localhost;
-Grants for mysqltest_1@localhost
-GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19'
-GRANT SELECT, INSERT, UPDATE ON `test`.* TO 'mysqltest_1'@'localhost'
-drop user mysqltest_1@localhost;
-SET NAMES koi8r;
-CREATE DATABASE ;
-USE ;
-CREATE TABLE ( int);
-begin;
-GRANT SELECT ON .* TO @localhost;
-commit;
-SHOW GRANTS FOR @localhost;
-Grants for @localhost
-GRANT USAGE ON *.* TO ''@'localhost'
-GRANT SELECT ON ``.* TO ''@'localhost'
-begin;
-REVOKE SELECT ON .* FROM @localhost;
-commit;
-begin;
-GRANT SELECT ON . TO @localhost;
-commit;
-SHOW GRANTS FOR @localhost;
-Grants for @localhost
-GRANT USAGE ON *.* TO ''@'localhost'
-GRANT SELECT ON ``.`` TO ''@'localhost'
-begin;
-REVOKE SELECT ON . FROM @localhost;
-commit;
-begin;
-GRANT SELECT () ON . TO @localhost;
-commit;
-SHOW GRANTS FOR @localhost;
-Grants for @localhost
-GRANT USAGE ON *.* TO ''@'localhost'
-GRANT SELECT () ON ``.`` TO ''@'localhost'
-begin;
-REVOKE SELECT () ON . FROM @localhost;
-commit;
-DROP DATABASE ;
-SET NAMES latin1;
-USE test;
-CREATE TABLE t1 (a int );
-CREATE TABLE t2 LIKE t1;
-CREATE TABLE t3 LIKE t1;
-CREATE TABLE t4 LIKE t1;
-CREATE TABLE t5 LIKE t1;
-CREATE TABLE t6 LIKE t1;
-CREATE TABLE t7 LIKE t1;
-CREATE TABLE t8 LIKE t1;
-CREATE TABLE t9 LIKE t1;
-CREATE TABLE t10 LIKE t1;
-CREATE DATABASE testdb1;
-CREATE DATABASE testdb2;
-CREATE DATABASE testdb3;
-CREATE DATABASE testdb4;
-CREATE DATABASE testdb5;
-CREATE DATABASE testdb6;
-CREATE DATABASE testdb7;
-CREATE DATABASE testdb8;
-CREATE DATABASE testdb9;
-CREATE DATABASE testdb10;
-begin;
-GRANT ALL ON testdb1.* TO testuser@localhost;
-GRANT ALL ON testdb2.* TO testuser@localhost;
-GRANT ALL ON testdb3.* TO testuser@localhost;
-GRANT ALL ON testdb4.* TO testuser@localhost;
-GRANT ALL ON testdb5.* TO testuser@localhost;
-GRANT ALL ON testdb6.* TO testuser@localhost;
-GRANT ALL ON testdb7.* TO testuser@localhost;
-GRANT ALL ON testdb8.* TO testuser@localhost;
-GRANT ALL ON testdb9.* TO testuser@localhost;
-GRANT ALL ON testdb10.* TO testuser@localhost;
-GRANT SELECT ON test.t1 TO testuser@localhost;
-GRANT SELECT ON test.t2 TO testuser@localhost;
-GRANT SELECT ON test.t3 TO testuser@localhost;
-GRANT SELECT ON test.t4 TO testuser@localhost;
-GRANT SELECT ON test.t5 TO testuser@localhost;
-GRANT SELECT ON test.t6 TO testuser@localhost;
-GRANT SELECT ON test.t7 TO testuser@localhost;
-GRANT SELECT ON test.t8 TO testuser@localhost;
-GRANT SELECT ON test.t9 TO testuser@localhost;
-GRANT SELECT ON test.t10 TO testuser@localhost;
-GRANT SELECT (a) ON test.t1 TO testuser@localhost;
-GRANT SELECT (a) ON test.t2 TO testuser@localhost;
-GRANT SELECT (a) ON test.t3 TO testuser@localhost;
-GRANT SELECT (a) ON test.t4 TO testuser@localhost;
-GRANT SELECT (a) ON test.t5 TO testuser@localhost;
-GRANT SELECT (a) ON test.t6 TO testuser@localhost;
-GRANT SELECT (a) ON test.t7 TO testuser@localhost;
-GRANT SELECT (a) ON test.t8 TO testuser@localhost;
-GRANT SELECT (a) ON test.t9 TO testuser@localhost;
-GRANT SELECT (a) ON test.t10 TO testuser@localhost;
-commit;
-begin;
-REVOKE ALL PRIVILEGES, GRANT OPTION FROM testuser@localhost;
-commit;
-SHOW GRANTS FOR testuser@localhost;
-Grants for testuser@localhost
-GRANT USAGE ON *.* TO 'testuser'@'localhost'
-DROP USER testuser@localhost;
-DROP TABLE t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
-DROP DATABASE testdb1;
-DROP DATABASE testdb2;
-DROP DATABASE testdb3;
-DROP DATABASE testdb4;
-DROP DATABASE testdb5;
-DROP DATABASE testdb6;
-DROP DATABASE testdb7;
-DROP DATABASE testdb8;
-DROP DATABASE testdb9;
-DROP DATABASE testdb10;
-SHOW PRIVILEGES;
-Privilege Context Comment
-Alter Tables To alter the table
-Create Databases,Tables,Indexes To create new databases and tables
-Create temporary tables Databases To use CREATE TEMPORARY TABLE
-Create view Tables To create new views
-Delete Tables To delete existing rows
-Drop Databases,Tables To drop databases, tables, and views
-File File access on server To read and write files on the server
-Grant option Databases,Tables To give to other users those privileges you possess
-Index Tables To create or drop indexes
-Insert Tables To insert data into tables
-Lock tables Databases To use LOCK TABLES (together with SELECT privilege)
-Process Server Admin To view the plain text of currently executing queries
-References Databases,Tables To have references on tables
-Reload Server Admin To reload or refresh tables, logs and privileges
-Replication client Server Admin To ask where the slave or master servers are
-Replication slave Server Admin To read binary log events from the master
-Select Tables To retrieve rows from table
-Show databases Server Admin To see all databases with SHOW DATABASES
-Show view Tables To see views with SHOW CREATE VIEW
-Shutdown Server Admin To shut down the server
-Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
-Update Tables To update existing rows
-Usage Server Admin No privileges - allow connect only
-use mysql;
-alter table columns_priv engine=myisam;
-alter table db engine=myisam;
-alter table func engine=myisam;
-alter table help_category engine=myisam;
-alter table help_keyword engine=myisam;
-alter table help_relation engine=myisam;
-alter table help_topic engine=myisam;
-alter table host engine=myisam;
-alter table tables_priv engine=myisam;
-alter table time_zone engine=myisam;
-alter table time_zone_leap_second engine=myisam;
-alter table time_zone_name engine=myisam;
-alter table time_zone_transition engine=myisam;
-alter table time_zone_transition_type engine=myisam;
-alter table user engine=myisam;
-use test;
-flush privileges;
diff --git a/mysql-test/r/ndb_index.result b/mysql-test/r/ndb_index.result
deleted file mode 100644
index 5702552b0b5..00000000000
--- a/mysql-test/r/ndb_index.result
+++ /dev/null
@@ -1,154 +0,0 @@
-drop table if exists t1;
-CREATE TABLE t1 (
-PORT varchar(16) NOT NULL,
-ACCESSNODE varchar(16) NOT NULL,
-POP varchar(48) NOT NULL,
-ACCESSTYPE int unsigned NOT NULL,
-CUSTOMER_ID varchar(20) collate latin1_bin NOT NULL,
-PROVIDER varchar(16),
-TEXPIRE int unsigned,
-NUM_IP int unsigned,
-LEASED_NUM_IP int unsigned,
-LOCKED_IP int unsigned,
-STATIC_DNS int unsigned,
-SUSPENDED_SERVICE int unsigned,
-SUSPENDED_REASON int unsigned,
-BGP_COMMUNITY int unsigned,
-INDEX CUSTOMER_ID_INDEX(CUSTOMER_ID),
-INDEX FQPN_INDEX(POP,ACCESSNODE,PORT),
-PRIMARY KEY(POP,ACCESSNODE,PORT,ACCESSTYPE)
-) engine=ndbcluster;
-INSERT INTO t1 VALUES ('port67', 'node78', 'pop98', 1, 'kllopmn', 'pr_43', 121212, 1, 2, 3, 8, NULL, NULL, NULL);
-INSERT INTO t1 VALUES ('port67', 'node78', 'pop99', 2, 'klkighh', 'pr_44', 121213, 3, 3, 6, 7, NULL, NULL, NULL);
-INSERT INTO t1 VALUES ('port79', 'node79', 'pop79', 2, 'kpongfaa', 'pr_44', 981213, 2, 4, 10, 11, 2, 99, 1278);
-select port, accessnode, pop, accesstype from t1 where port='port67' order by accesstype;
-port accessnode pop accesstype
-port67 node78 pop98 1
-port67 node78 pop99 2
-select port, accessnode, pop, accesstype from t1 where port='foo';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where accessnode='node78' order by accesstype;
-port accessnode pop accesstype
-port67 node78 pop98 1
-port67 node78 pop99 2
-select port, accessnode, pop, accesstype from t1 where accessnode='foo';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where pop='pop98';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='pop98';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='pop98';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='pop98' order by accesstype;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='foo';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where accesstype=1;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where accesstype=2 order by port;
-port accessnode pop accesstype
-port67 node78 pop99 2
-port79 node79 pop79 2
-select port, accessnode, pop, accesstype from t1 where accesstype=98 order by port;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where customer_id='KLLOPMN';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where customer_id='kLLoPMn';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where customer_id='foo';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where provider='pr_43';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where provider='foo';
-port accessnode pop accesstype
-select port, accessnode from t1 where texpire=121212;
-port accessnode
-port67 node78
-select port, accessnode from t1 where texpire=2323;
-port accessnode
-select port, accessnode, pop, accesstype from t1 where num_ip=1;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where num_ip=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where leased_num_ip=2;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where leased_num_ip=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where locked_ip=3;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where locked_ip=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where static_dns=8;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where static_dns=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where suspended_service=8;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where suspended_service=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where suspended_reason=NULL;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where suspended_reason=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where suspended_reason=0;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where bgp_community=NULL;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where bgp_community=89;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where bgp_community=0;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where port='port67' and accessnode='node78' and pop='pop98' and accesstype=1;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where port='port67' and accesstype=1 and accessnode='node78' and pop='pop98';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='pop98' and port='port67' and accesstype=1 and accessnode='node78';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode from t1 where port='foo' and accessnode='foo' and pop='foo' and accesstype=99;
-port accessnode
-select port, accessnode, pop, accesstype from t1 where port='port67' and pop='pop98' and accesstype=1;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where accesstype=1 and accessnode='node78' and pop='pop98';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where port='port67' and accesstype=1 and accessnode='node78';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode from t1 where port='foo' and accessnode='foo' and pop='foo';
-port accessnode
-select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn' and accesstype=1;
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn' and accesstype=2;
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where accesstype=2 and customer_id='kllopmn';
-port accessnode pop accesstype
-select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67' and customer_id='kllopmn';
-port accessnode pop accesstype
-port67 node78 pop98 1
-select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67' and customer_id='foo';
-port accessnode pop accesstype
-drop table t1;
diff --git a/mysql-test/r/ndb_index_ordered.result b/mysql-test/r/ndb_index_ordered.result
deleted file mode 100644
index b3e55a23073..00000000000
--- a/mysql-test/r/ndb_index_ordered.result
+++ /dev/null
@@ -1,668 +0,0 @@
-drop table if exists t1, test1, test2;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned,
-KEY(b)
-) engine=ndbcluster;
-insert t1 values(1, 2, 3), (2,3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
-select * from t1 order by b;
-a b c
-1 2 3
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-select * from t1 where b >= 4 order by b;
-a b c
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-select * from t1 where b = 4 order by b;
-a b c
-3 4 6
-select * from t1 where b > 4 order by b;
-a b c
-4 5 8
-5 6 2
-6 7 2
-select * from t1 where b < 4 order by b;
-a b c
-1 2 3
-2 3 5
-select * from t1 where b <= 4 order by b;
-a b c
-1 2 3
-2 3 5
-3 4 6
-select tt1.* from t1 as tt1, t1 as tt2 use index(b) where tt1.b = tt2.b order by tt1.b;
-a b c
-1 2 3
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-select a, b, c from t1 where a!=2 and c=6;
-a b c
-3 4 6
-select a, b, c from t1 where a!=2 order by a;
-a b c
-1 2 3
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-update t1 set c = 3 where b = 3;
-select * from t1 order by a;
-a b c
-1 2 3
-2 3 3
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-update t1 set c = 10 where b >= 6;
-select * from t1 order by a;
-a b c
-1 2 3
-2 3 3
-3 4 6
-4 5 8
-5 6 10
-6 7 10
-update t1 set c = 11 where b < 5;
-select * from t1 order by a;
-a b c
-1 2 11
-2 3 11
-3 4 11
-4 5 8
-5 6 10
-6 7 10
-update t1 set c = 12 where b > 0;
-select * from t1 order by a;
-a b c
-1 2 12
-2 3 12
-3 4 12
-4 5 12
-5 6 12
-6 7 12
-update t1 set c = 13 where b <= 3;
-select * from t1 order by a;
-a b c
-1 2 13
-2 3 13
-3 4 12
-4 5 12
-5 6 12
-6 7 12
-update t1 set b = b + 1 where b > 4 and b < 7;
-select * from t1 order by a;
-a b c
-1 2 13
-2 3 13
-3 4 12
-4 6 12
-5 7 12
-6 7 12
-update t1 set a = a + 10 where b > 1 and b < 7;
-select * from t1 order by a;
-a b c
-5 7 12
-6 7 12
-11 2 13
-12 3 13
-13 4 12
-14 6 12
-drop table t1;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned,
-KEY(b)
-) engine=ndbcluster;
-insert t1 values(1, 2, 13), (2,3, 13), (3, 4, 12), (4, 5, 12), (5,6, 12), (6,7, 12);
-delete from t1 where b = 3;
-select * from t1 order by a;
-a b c
-1 2 13
-3 4 12
-4 5 12
-5 6 12
-6 7 12
-delete from t1 where b >= 6;
-select * from t1 order by a;
-a b c
-1 2 13
-3 4 12
-4 5 12
-delete from t1 where b < 4;
-select * from t1 order by a;
-a b c
-3 4 12
-4 5 12
-delete from t1 where b > 5;
-select * from t1 order by a;
-a b c
-3 4 12
-4 5 12
-delete from t1 where b <= 4;
-select * from t1 order by a;
-a b c
-4 5 12
-drop table t1;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned not null
-) engine = ndb;
-create index a1 on t1 (b, c);
-insert into t1 values (1, 2, 13);
-insert into t1 values (2,3, 13);
-insert into t1 values (3, 4, 12);
-insert into t1 values (4, 5, 12);
-insert into t1 values (5,6, 12);
-insert into t1 values (6,7, 12);
-insert into t1 values (7, 2, 1);
-insert into t1 values (8,3, 6);
-insert into t1 values (9, 4, 12);
-insert into t1 values (14, 5, 4);
-insert into t1 values (15,5,5);
-insert into t1 values (16,5, 6);
-insert into t1 values (17,4,4);
-insert into t1 values (18,1, 7);
-select * from t1 order by a;
-a b c
-1 2 13
-2 3 13
-3 4 12
-4 5 12
-5 6 12
-6 7 12
-7 2 1
-8 3 6
-9 4 12
-14 5 4
-15 5 5
-16 5 6
-17 4 4
-18 1 7
-select * from t1 where b<=5 order by a;
-a b c
-1 2 13
-2 3 13
-3 4 12
-4 5 12
-7 2 1
-8 3 6
-9 4 12
-14 5 4
-15 5 5
-16 5 6
-17 4 4
-18 1 7
-select * from t1 where b<=5 and c=0;
-a b c
-insert into t1 values (19,4, 0);
-select * from t1 where b<=5 and c=0;
-a b c
-19 4 0
-select * from t1 where b=4 and c<=5 order by a;
-a b c
-17 4 4
-19 4 0
-select * from t1 where b<=4 and c<=5 order by a;
-a b c
-7 2 1
-17 4 4
-19 4 0
-select * from t1 where b<=5 and c=0 or b<=5 and c=2;
-a b c
-19 4 0
-select count(*) from t1 where b = 0;
-count(*)
-0
-select count(*) from t1 where b = 1;
-count(*)
-1
-drop table t1;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned,
-c int unsigned,
-KEY bc(b,c)
-) engine = ndb;
-insert into t1 values(1,1,1),(2,NULL,2),(3,NULL,NULL),(4,4,NULL);
-select * from t1 use index (bc) where b IS NULL order by a;
-a b c
-2 NULL 2
-3 NULL NULL
-select * from t1 use index (bc)order by a;
-a b c
-1 1 1
-2 NULL 2
-3 NULL NULL
-4 4 NULL
-select * from t1 use index (bc) order by a;
-a b c
-1 1 1
-2 NULL 2
-3 NULL NULL
-4 4 NULL
-select * from t1 use index (PRIMARY) where b IS NULL order by a;
-a b c
-2 NULL 2
-3 NULL NULL
-select * from t1 use index (bc) where b IS NULL order by a;
-a b c
-2 NULL 2
-3 NULL NULL
-select * from t1 use index (bc) where b IS NULL and c IS NULL order by a;
-a b c
-3 NULL NULL
-select * from t1 use index (bc) where b IS NULL and c = 2 order by a;
-a b c
-2 NULL 2
-select * from t1 use index (bc) where b < 4 order by a;
-a b c
-1 1 1
-select * from t1 use index (bc) where b IS NOT NULL order by a;
-a b c
-1 1 1
-4 4 NULL
-drop table t1;
-create table t1 (
-a int unsigned primary key,
-b int unsigned,
-c char(10),
-key bc (b, c)
-) engine=ndb;
-insert into t1 values(1,1,'a'),(2,2,'b'),(3,3,'c'),(4,4,'d'),(5,5,'e');
-insert into t1 select a*7,10*b,'f' from t1;
-insert into t1 select a*13,10*b,'g' from t1;
-insert into t1 select a*17,10*b,'h' from t1;
-insert into t1 select a*19,10*b,'i' from t1;
-insert into t1 select a*23,10*b,'j' from t1;
-insert into t1 select a*29,10*b,'k' from t1;
-select b, c from t1 where b <= 10 and c <'f' order by b, c;
-b c
-1 a
-2 b
-3 c
-4 d
-5 e
-select b, c from t1 where b <= 10 and c <'f' order by b desc, c desc;
-b c
-5 e
-4 d
-3 c
-2 b
-1 a
-select b, c from t1 where b=4000 and c<'k' order by b, c;
-b c
-4000 h
-4000 i
-4000 i
-4000 i
-4000 j
-4000 j
-4000 j
-4000 j
-4000 j
-4000 j
-select b, c from t1 where b=4000 and c<'k' order by b desc, c desc;
-b c
-4000 j
-4000 j
-4000 j
-4000 j
-4000 j
-4000 j
-4000 i
-4000 i
-4000 i
-4000 h
-select b, c from t1 where 1000<=b and b<=100000 and c<'j' order by b, c;
-b c
-1000 h
-1000 i
-1000 i
-1000 i
-2000 h
-2000 i
-2000 i
-2000 i
-3000 h
-3000 i
-3000 i
-3000 i
-4000 h
-4000 i
-4000 i
-4000 i
-5000 h
-5000 i
-5000 i
-5000 i
-10000 i
-20000 i
-30000 i
-40000 i
-50000 i
-select b, c from t1 where 1000<=b and b<=100000 and c<'j' order by b desc, c desc;
-b c
-50000 i
-40000 i
-30000 i
-20000 i
-10000 i
-5000 i
-5000 i
-5000 i
-5000 h
-4000 i
-4000 i
-4000 i
-4000 h
-3000 i
-3000 i
-3000 i
-3000 h
-2000 i
-2000 i
-2000 i
-2000 h
-1000 i
-1000 i
-1000 i
-1000 h
-select min(b), max(b) from t1;
-min(b) max(b)
-1 5000000
-drop table t1;
-CREATE TABLE test1 (
-SubscrID int(11) NOT NULL auto_increment,
-UsrID int(11) NOT NULL default '0',
-PRIMARY KEY (SubscrID),
-KEY idx_usrid (UsrID)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO test1 VALUES (2,224),(3,224),(1,224);
-CREATE TABLE test2 (
-SbclID int(11) NOT NULL auto_increment,
-SbcrID int(11) NOT NULL default '0',
-PRIMARY KEY (SbclID),
-KEY idx_sbcrid (SbcrID)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO test2 VALUES (3,2),(1,1),(2,1),(4,2);
-select * from test1 order by 1;
-SubscrID UsrID
-1 224
-2 224
-3 224
-select * from test2 order by 1;
-SbclID SbcrID
-1 1
-2 1
-3 2
-4 2
-SELECT s.SubscrID,l.SbclID FROM test1 s left JOIN test2 l ON
-l.SbcrID=s.SubscrID WHERE s.UsrID=224 order by 1, 2;
-SubscrID SbclID
-1 1
-1 2
-2 3
-2 4
-3 NULL
-drop table test1;
-drop table test2;
-create table t1 (
-pk int primary key,
-dt datetime not null,
-da date not null,
-ye year not null,
-ti time not null,
-ts timestamp not null,
-index(dt),
-index(da),
-index(ye),
-index(ti),
-index(ts)
-) engine=ndb;
-insert into t1 (pk,dt,da,ye,ti,ts) values
-(1, '1901-05-05 23:00:59', '1901-05-05', '1901', '23:00:59', '2001-01-01 23:00:59'),
-(2, '1912-09-05 13:00:59', '1912-09-05', '1912', '13:00:59', '2001-01-01 13:00:59'),
-(3, '1945-12-31 00:00:00', '1945-12-31', '1945', '00:00:00', '2001-01-01 00:00:00'),
-(4, '1955-12-31 00:00:00', '1955-12-31', '1955', '00:00:00', '2001-01-01 00:00:00'),
-(5, '1963-06-06 06:06:06', '1963-06-06', '1963', '06:06:06', '2001-01-01 06:06:06'),
-(6, '1993-06-06 06:06:06', '1993-06-06', '1993', '06:06:06', '2001-01-01 06:06:06'),
-(7, '2001-01-01 10:11:10', '2001-01-01', '2001', '10:11:10', '2001-01-01 10:11:10'),
-(8, '2001-01-01 10:11:11', '2001-01-01', '2001', '10:11:11', '2001-01-01 10:11:11'),
-(9, '2005-01-31 23:59:59', '2005-01-31', '2005', '23:59:59', '2001-01-01 23:59:59');
-select count(*)-9 from t1 use index (dt) where dt > '1900-01-01 00:00:00';
-count(*)-9
-0
-select count(*)-6 from t1 use index (dt) where dt >= '1955-12-31 00:00:00';
-count(*)-6
-0
-select count(*)-5 from t1 use index (dt) where dt > '1955-12-31 00:00:00';
-count(*)-5
-0
-select count(*)-5 from t1 use index (dt) where dt < '1970-03-03 22:22:22';
-count(*)-5
-0
-select count(*)-7 from t1 use index (dt) where dt < '2001-01-01 10:11:11';
-count(*)-7
-0
-select count(*)-8 from t1 use index (dt) where dt <= '2001-01-01 10:11:11';
-count(*)-8
-0
-select count(*)-9 from t1 use index (dt) where dt <= '2055-01-01 00:00:00';
-count(*)-9
-0
-select count(*)-9 from t1 use index (da) where da > '1900-01-01';
-count(*)-9
-0
-select count(*)-6 from t1 use index (da) where da >= '1955-12-31';
-count(*)-6
-0
-select count(*)-5 from t1 use index (da) where da > '1955-12-31';
-count(*)-5
-0
-select count(*)-5 from t1 use index (da) where da < '1970-03-03';
-count(*)-5
-0
-select count(*)-6 from t1 use index (da) where da < '2001-01-01';
-count(*)-6
-0
-select count(*)-8 from t1 use index (da) where da <= '2001-01-02';
-count(*)-8
-0
-select count(*)-9 from t1 use index (da) where da <= '2055-01-01';
-count(*)-9
-0
-select count(*)-9 from t1 use index (ye) where ye > '1900';
-count(*)-9
-0
-select count(*)-6 from t1 use index (ye) where ye >= '1955';
-count(*)-6
-0
-select count(*)-5 from t1 use index (ye) where ye > '1955';
-count(*)-5
-0
-select count(*)-5 from t1 use index (ye) where ye < '1970';
-count(*)-5
-0
-select count(*)-6 from t1 use index (ye) where ye < '2001';
-count(*)-6
-0
-select count(*)-8 from t1 use index (ye) where ye <= '2001';
-count(*)-8
-0
-select count(*)-9 from t1 use index (ye) where ye <= '2055';
-count(*)-9
-0
-select count(*)-9 from t1 use index (ti) where ti >= '00:00:00';
-count(*)-9
-0
-select count(*)-7 from t1 use index (ti) where ti > '00:00:00';
-count(*)-7
-0
-select count(*)-7 from t1 use index (ti) where ti > '05:05:05';
-count(*)-7
-0
-select count(*)-5 from t1 use index (ti) where ti > '06:06:06';
-count(*)-5
-0
-select count(*)-5 from t1 use index (ti) where ti < '10:11:11';
-count(*)-5
-0
-select count(*)-6 from t1 use index (ti) where ti <= '10:11:11';
-count(*)-6
-0
-select count(*)-8 from t1 use index (ti) where ti < '23:59:59';
-count(*)-8
-0
-select count(*)-9 from t1 use index (ti) where ti <= '23:59:59';
-count(*)-9
-0
-select count(*)-9 from t1 use index (ts) where ts >= '2001-01-01 00:00:00';
-count(*)-9
-0
-select count(*)-7 from t1 use index (ts) where ts > '2001-01-01 00:00:00';
-count(*)-7
-0
-select count(*)-7 from t1 use index (ts) where ts > '2001-01-01 05:05:05';
-count(*)-7
-0
-select count(*)-5 from t1 use index (ts) where ts > '2001-01-01 06:06:06';
-count(*)-5
-0
-select count(*)-5 from t1 use index (ts) where ts < '2001-01-01 10:11:11';
-count(*)-5
-0
-select count(*)-6 from t1 use index (ts) where ts <= '2001-01-01 10:11:11';
-count(*)-6
-0
-select count(*)-8 from t1 use index (ts) where ts < '2001-01-01 23:59:59';
-count(*)-8
-0
-select count(*)-9 from t1 use index (ts) where ts <= '2001-01-01 23:59:59';
-count(*)-9
-0
-drop table t1;
-create table t1 (
-a int primary key,
-s decimal(12),
-t decimal(12, 5),
-u decimal(12) unsigned,
-v decimal(12, 5) unsigned,
-key (s),
-key (t),
-key (u),
-key (v)
-) engine=ndb;
-insert into t1 values
-( 0, -000000000007, -0000061.00003, 000000000061, 0000965.00042),
-( 1, -000000000007, -0000061.00042, 000000000061, 0000965.00003),
-( 2, -071006035767, 4210253.00024, 000000000001, 0000001.84488),
-( 3, 000000007115, 0000000.77607, 000077350625, 0000018.00013),
-( 4, -000000068391, -0346486.00000, 000000005071, 0005334.00002),
-( 5, -521579890459, -1936874.00001, 000000000154, 0000003.00018),
-( 6, -521579890459, -1936874.00018, 000000000154, 0000003.00001),
-( 7, 000000000333, 0000051.39140, 000000907958, 0788643.08374),
-( 8, 000042731229, 0000009.00000, 000000000009, 6428667.00000),
-( 9, -000008159769, 0000918.00004, 000096951421, 7607730.00008);
-select count(*)- 5 from t1 use index (s) where s < -000000000007;
-count(*)- 5
-0
-select count(*)- 7 from t1 use index (s) where s <= -000000000007;
-count(*)- 7
-0
-select count(*)- 2 from t1 use index (s) where s = -000000000007;
-count(*)- 2
-0
-select count(*)- 5 from t1 use index (s) where s >= -000000000007;
-count(*)- 5
-0
-select count(*)- 3 from t1 use index (s) where s > -000000000007;
-count(*)- 3
-0
-select count(*)- 4 from t1 use index (t) where t < -0000061.00003;
-count(*)- 4
-0
-select count(*)- 5 from t1 use index (t) where t <= -0000061.00003;
-count(*)- 5
-0
-select count(*)- 1 from t1 use index (t) where t = -0000061.00003;
-count(*)- 1
-0
-select count(*)- 6 from t1 use index (t) where t >= -0000061.00003;
-count(*)- 6
-0
-select count(*)- 5 from t1 use index (t) where t > -0000061.00003;
-count(*)- 5
-0
-select count(*)- 2 from t1 use index (u) where u < 000000000061;
-count(*)- 2
-0
-select count(*)- 4 from t1 use index (u) where u <= 000000000061;
-count(*)- 4
-0
-select count(*)- 2 from t1 use index (u) where u = 000000000061;
-count(*)- 2
-0
-select count(*)- 8 from t1 use index (u) where u >= 000000000061;
-count(*)- 8
-0
-select count(*)- 6 from t1 use index (u) where u > 000000000061;
-count(*)- 6
-0
-select count(*)- 5 from t1 use index (v) where v < 0000965.00042;
-count(*)- 5
-0
-select count(*)- 6 from t1 use index (v) where v <= 0000965.00042;
-count(*)- 6
-0
-select count(*)- 1 from t1 use index (v) where v = 0000965.00042;
-count(*)- 1
-0
-select count(*)- 5 from t1 use index (v) where v >= 0000965.00042;
-count(*)- 5
-0
-select count(*)- 4 from t1 use index (v) where v > 0000965.00042;
-count(*)- 4
-0
-drop table t1;
-create table t1(a int primary key, b int not null, index(b));
-insert into t1 values (1,1), (2,2);
-set autocommit=0;
-begin;
-select count(*) from t1;
-count(*)
-2
-ALTER TABLE t1 ADD COLUMN c int;
-select a from t1 where b = 2;
-a
-2
-show tables;
-Tables_in_test
-t1
-drop table t1;
-create table t1 (a int, c varchar(10),
-primary key using hash (a), index(c)) engine=ndb;
-insert into t1 (a, c) values (1,'aaa'),(3,'bbb');
-select count(*) from t1 where c<'bbb';
-count(*)
-1
-create table nationaldish (DishID int(10) unsigned NOT NULL AUTO_INCREMENT,
-CountryCode char(3) NOT NULL,
-DishTitle varchar(64) NOT NULL,
-calories smallint(5) unsigned DEFAULT NULL,
-PRIMARY KEY (DishID),
-INDEX i USING HASH (countrycode,calories)
-) ENGINE=ndbcluster;
-ERROR HY000: Can't create table './test/nationaldish.frm' (errno: 138)
diff --git a/mysql-test/r/ndb_index_unique.result b/mysql-test/r/ndb_index_unique.result
deleted file mode 100644
index b3607fbe072..00000000000
--- a/mysql-test/r/ndb_index_unique.result
+++ /dev/null
@@ -1,685 +0,0 @@
-drop table if exists t1, t2, t3, t4, t5, t6, t7, t8;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned,
-UNIQUE(b)
-) engine=ndbcluster;
-insert t1 values(1, 2, 3), (2, 3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
-select * from t1 order by b;
-a b c
-1 2 3
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-select * from t1 where b = 4 order by b;
-a b c
-3 4 6
-insert into t1 values(7,8,3);
-select * from t1 where b = 4 order by a;
-a b c
-3 4 6
-insert into t1 values(8, 2, 3);
-ERROR 23000: Duplicate entry '2' for key 2
-select * from t1 order by a;
-a b c
-1 2 3
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-7 8 3
-delete from t1 where a = 1;
-insert into t1 values(8, 2, 3);
-select * from t1 order by a;
-a b c
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-7 8 3
-8 2 3
-drop table t1;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned,
-c int unsigned,
-UNIQUE bc(b,c)
-) engine = ndb;
-insert into t1 values(1,1,1),(2,NULL,2),(3,NULL,NULL),(4,4,NULL);
-select * from t1 use index (bc) where b IS NULL order by a;
-a b c
-2 NULL 2
-3 NULL NULL
-select * from t1 use index (bc)order by a;
-a b c
-1 1 1
-2 NULL 2
-3 NULL NULL
-4 4 NULL
-select * from t1 use index (bc) order by a;
-a b c
-1 1 1
-2 NULL 2
-3 NULL NULL
-4 4 NULL
-select * from t1 use index (PRIMARY) where b IS NULL order by a;
-a b c
-2 NULL 2
-3 NULL NULL
-select * from t1 use index (bc) where b IS NULL order by a;
-a b c
-2 NULL 2
-3 NULL NULL
-select * from t1 use index (bc) where b IS NULL and c IS NULL order by a;
-a b c
-3 NULL NULL
-select * from t1 use index (bc) where b IS NULL and c = 2 order by a;
-a b c
-2 NULL 2
-select * from t1 use index (bc) where b < 4 order by a;
-a b c
-1 1 1
-select * from t1 use index (bc) where b IS NOT NULL order by a;
-a b c
-1 1 1
-4 4 NULL
-insert into t1 values(5,1,1);
-ERROR 23000: Duplicate entry '1-1' for key 2
-drop table t1;
-CREATE TABLE t2 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned not null,
-UNIQUE USING HASH (b, c)
-) engine=ndbcluster;
-insert t2 values(1, 2, 3), (2, 3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
-select * from t2 where a = 3;
-a b c
-3 4 6
-select * from t2 where b = 4;
-a b c
-3 4 6
-select * from t2 where c = 6;
-a b c
-3 4 6
-insert into t2 values(7,8,3);
-select * from t2 where b = 4 order by a;
-a b c
-3 4 6
-insert into t2 values(8, 2, 3);
-ERROR 23000: Duplicate entry '2-3' for key 2
-select * from t2 order by a;
-a b c
-1 2 3
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-7 8 3
-delete from t2 where a = 1;
-insert into t2 values(8, 2, 3);
-select * from t2 order by a;
-a b c
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-7 8 3
-8 2 3
-create unique index bi using hash on t2(b);
-insert into t2 values(9, 3, 1);
-ERROR 23000: Duplicate entry '3' for key 3
-alter table t2 drop index bi;
-insert into t2 values(9, 3, 1);
-select * from t2 order by a;
-a b c
-2 3 5
-3 4 6
-4 5 8
-5 6 2
-6 7 2
-7 8 3
-8 2 3
-9 3 1
-drop table t2;
-CREATE TABLE t2 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned,
-UNIQUE USING HASH (b, c)
-) engine=ndbcluster;
-Warnings:
-Warning 1121 Ndb does not support unique index on NULL valued attributes, index access with NULL value will become full table scan
-insert t2 values(1,1,NULL),(2,2,2),(3,3,NULL),(4,4,4),(5,5,NULL),(6,6,6),(7,7,NULL),(8,3,NULL),(9,3,NULL);
-select * from t2 where c IS NULL order by a;
-a b c
-1 1 NULL
-3 3 NULL
-5 5 NULL
-7 7 NULL
-8 3 NULL
-9 3 NULL
-select * from t2 where b = 3 AND c IS NULL order by a;
-a b c
-3 3 NULL
-8 3 NULL
-9 3 NULL
-select * from t2 where (b = 3 OR b = 5) AND c IS NULL order by a;
-a b c
-3 3 NULL
-5 5 NULL
-8 3 NULL
-9 3 NULL
-set @old_ecpd = @@session.engine_condition_pushdown;
-set engine_condition_pushdown = true;
-explain select * from t2 where (b = 3 OR b = 5) AND c IS NULL AND a < 9 order by a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 range PRIMARY,b PRIMARY 4 NULL 1 Using where with pushed condition
-select * from t2 where (b = 3 OR b = 5) AND c IS NULL AND a < 9 order by a;
-a b c
-3 3 NULL
-5 5 NULL
-8 3 NULL
-set engine_condition_pushdown = @old_ecpd;
-drop table t2;
-CREATE TABLE t3 (
-a int unsigned NOT NULL,
-b int unsigned not null,
-c int unsigned,
-PRIMARY KEY USING HASH (a, b)
-) engine=ndbcluster;
-insert t3 values(1, 2, 3), (2, 3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
-select * from t3 where a = 3;
-a b c
-3 4 6
-select * from t3 where b = 4;
-a b c
-3 4 6
-select * from t3 where c = 6;
-a b c
-3 4 6
-insert into t3 values(7,8,3);
-select * from t3 where b = 4 order by a;
-a b c
-3 4 6
-drop table t3;
-CREATE TABLE t1 (
-pk int NOT NULL PRIMARY KEY,
-a int unsigned,
-UNIQUE KEY (a)
-) engine=ndbcluster;
-insert into t1 values (-1,NULL), (0,0), (1,NULL),(2,2),(3,NULL),(4,4);
-select * from t1 order by pk;
-pk a
--1 NULL
-0 0
-1 NULL
-2 2
-3 NULL
-4 4
-insert into t1 values (5,0);
-ERROR 23000: Duplicate entry '0' for key 2
-select * from t1 order by pk;
-pk a
--1 NULL
-0 0
-1 NULL
-2 2
-3 NULL
-4 4
-delete from t1 where a = 0;
-insert into t1 values (5,0);
-select * from t1 order by pk;
-pk a
--1 NULL
-1 NULL
-2 2
-3 NULL
-4 4
-5 0
-CREATE TABLE t2 (
-pk int NOT NULL PRIMARY KEY,
-a int unsigned,
-b tinyint NOT NULL,
-c VARCHAR(10),
-UNIQUE KEY si(a, c)
-) engine=ndbcluster;
-insert into t2 values (-1,1,17,NULL),(0,NULL,18,NULL),(1,3,19,'abc');
-select * from t2 order by pk;
-pk a b c
--1 1 17 NULL
-0 NULL 18 NULL
-1 3 19 abc
-insert into t2 values(2,3,19,'abc');
-ERROR 23000: Duplicate entry '3-abc' for key 2
-select * from t2 order by pk;
-pk a b c
--1 1 17 NULL
-0 NULL 18 NULL
-1 3 19 abc
-delete from t2 where c IS NOT NULL;
-insert into t2 values(2,3,19,'abc');
-select * from t2 order by pk;
-pk a b c
--1 1 17 NULL
-0 NULL 18 NULL
-2 3 19 abc
-drop table t1, t2;
-CREATE TABLE t1 (
-cid smallint(5) unsigned NOT NULL default '0',
-cv varchar(250) NOT NULL default '',
-PRIMARY KEY (cid),
-UNIQUE KEY cv (cv)
-) engine=ndbcluster;
-INSERT INTO t1 VALUES (8,'dummy');
-CREATE TABLE t2 (
-cid bigint(20) unsigned NOT NULL auto_increment,
-cap varchar(255) NOT NULL default '',
-PRIMARY KEY (cid),
-UNIQUE KEY (cid, cap)
-) engine=ndbcluster;
-INSERT INTO t2 VALUES (NULL,'another dummy');
-CREATE TABLE t3 (
-gid bigint(20) unsigned NOT NULL auto_increment,
-gn varchar(255) NOT NULL default '',
-must tinyint(4) default NULL,
-PRIMARY KEY (gid)
-) engine=ndbcluster;
-INSERT INTO t3 VALUES (1,'V1',NULL);
-CREATE TABLE t4 (
-uid bigint(20) unsigned NOT NULL default '0',
-gid bigint(20) unsigned NOT NULL,
-rid bigint(20) unsigned NOT NULL,
-cid bigint(20) unsigned NOT NULL,
-UNIQUE KEY m (uid,gid,rid,cid)
-) engine=ndbcluster;
-INSERT INTO t4 VALUES (1,1,2,4);
-INSERT INTO t4 VALUES (1,1,2,3);
-INSERT INTO t4 VALUES (1,1,5,7);
-INSERT INTO t4 VALUES (1,1,10,8);
-CREATE TABLE t5 (
-rid bigint(20) unsigned NOT NULL auto_increment,
-rl varchar(255) NOT NULL default '',
-PRIMARY KEY (rid)
-) engine=ndbcluster;
-CREATE TABLE t6 (
-uid bigint(20) unsigned NOT NULL auto_increment,
-un varchar(250) NOT NULL default '',
-uc smallint(5) unsigned NOT NULL default '0',
-PRIMARY KEY (uid),
-UNIQUE KEY nc (un,uc)
-) engine=ndbcluster;
-INSERT INTO t6 VALUES (1,'test',8);
-INSERT INTO t6 VALUES (2,'test2',9);
-INSERT INTO t6 VALUES (3,'tre',3);
-CREATE TABLE t7 (
-mid bigint(20) unsigned NOT NULL PRIMARY KEY,
-uid bigint(20) unsigned NOT NULL default '0',
-gid bigint(20) unsigned NOT NULL,
-rid bigint(20) unsigned NOT NULL,
-cid bigint(20) unsigned NOT NULL,
-UNIQUE KEY m (uid,gid,rid,cid)
-) engine=ndbcluster;
-INSERT INTO t7 VALUES(1, 1, 1, 1, 1);
-INSERT INTO t7 VALUES(2, 2, 1, 1, 1);
-INSERT INTO t7 VALUES(3, 3, 1, 1, 1);
-INSERT INTO t7 VALUES(4, 4, 1, 1, 1);
-INSERT INTO t7 VALUES(5, 5, 1, 1, 1);
-INSERT INTO t7 VALUES(6, 1, 1, 1, 6);
-INSERT INTO t7 VALUES(7, 2, 1, 1, 7);
-INSERT INTO t7 VALUES(8, 3, 1, 1, 8);
-INSERT INTO t7 VALUES(9, 4, 1, 1, 9);
-INSERT INTO t7 VALUES(10, 5, 1, 1, 10);
-select * from t1 where cv = 'dummy';
-cid cv
-8 dummy
-select * from t1 where cv = 'test';
-cid cv
-select * from t2 where cap = 'another dummy';
-cid cap
-1 another dummy
-select * from t4 where uid = 1 and gid=1 and rid=2 and cid=4;
-uid gid rid cid
-1 1 2 4
-select * from t4 where uid = 1 and gid=1 and rid=1 and cid=4;
-uid gid rid cid
-select * from t4 where uid = 1 order by cid;
-uid gid rid cid
-1 1 2 3
-1 1 2 4
-1 1 5 7
-1 1 10 8
-select * from t4 where rid = 2 order by cid;
-uid gid rid cid
-1 1 2 3
-1 1 2 4
-select * from t6 where un='test' and uc=8;
-uid un uc
-1 test 8
-select * from t6 where un='test' and uc=7;
-uid un uc
-select * from t6 where un='test';
-uid un uc
-1 test 8
-select * from t7 where mid = 8;
-mid uid gid rid cid
-8 3 1 1 8
-select * from t7 where uid = 8;
-mid uid gid rid cid
-select * from t7 where uid = 1 order by mid;
-mid uid gid rid cid
-1 1 1 1 1
-6 1 1 1 6
-select * from t7 where uid = 4 order by mid;
-mid uid gid rid cid
-4 4 1 1 1
-9 4 1 1 9
-select * from t7 where gid = 4;
-mid uid gid rid cid
-select * from t7 where gid = 1 order by mid;
-mid uid gid rid cid
-1 1 1 1 1
-2 2 1 1 1
-3 3 1 1 1
-4 4 1 1 1
-5 5 1 1 1
-6 1 1 1 6
-7 2 1 1 7
-8 3 1 1 8
-9 4 1 1 9
-10 5 1 1 10
-select * from t7 where cid = 4;
-mid uid gid rid cid
-select * from t7 where cid = 8;
-mid uid gid rid cid
-8 3 1 1 8
-select * from t4 where uid = 1 and gid=1 and rid=2 and cid=4;
-uid gid rid cid
-1 1 2 4
-select * from t4 where uid = 1 and gid=1 and rid=1 and cid=4;
-uid gid rid cid
-select * from t4 where uid = 1 order by gid,cid;
-uid gid rid cid
-1 1 2 3
-1 1 2 4
-1 1 5 7
-1 1 10 8
-1 1 5 12
-1 2 5 12
-1 3 9 11
-1 3 5 12
-1 4 5 12
-1 5 5 12
-1 6 5 12
-1 7 5 12
-1 8 5 12
-1 9 5 12
-1 10 5 12
-1 11 5 12
-1 12 5 12
-1 13 5 12
-1 14 5 12
-1 15 5 12
-1 16 5 12
-1 17 5 12
-1 18 5 12
-1 19 5 12
-1 20 5 12
-1 21 5 12
-1 22 5 12
-1 23 5 12
-1 24 5 12
-1 25 5 12
-1 26 5 12
-1 27 5 12
-1 28 5 12
-1 29 5 12
-1 30 5 12
-1 31 5 12
-1 32 5 12
-1 33 5 12
-1 34 5 12
-1 35 5 12
-1 36 5 12
-1 37 5 12
-1 38 5 12
-1 39 5 12
-1 40 5 12
-1 41 5 12
-1 42 5 12
-1 43 5 12
-1 44 5 12
-1 45 5 12
-1 46 5 12
-1 47 5 12
-1 48 5 12
-1 49 5 12
-1 50 5 12
-1 51 5 12
-1 52 5 12
-1 53 5 12
-1 54 5 12
-1 55 5 12
-1 56 5 12
-1 57 5 12
-1 58 5 12
-1 59 5 12
-1 60 5 12
-1 61 5 12
-1 62 5 12
-1 63 5 12
-1 64 5 12
-1 65 5 12
-1 66 5 12
-1 67 5 12
-1 68 5 12
-1 69 5 12
-1 70 5 12
-1 71 5 12
-1 72 5 12
-1 73 5 12
-1 74 5 12
-1 75 5 12
-1 76 5 12
-1 77 5 12
-1 78 5 12
-1 79 5 12
-1 80 5 12
-1 81 5 12
-1 82 5 12
-1 83 5 12
-1 84 5 12
-1 85 5 12
-1 86 5 12
-1 87 5 12
-1 88 5 12
-1 89 5 12
-1 90 5 12
-1 91 5 12
-1 92 5 12
-1 93 5 12
-1 94 5 12
-1 95 5 12
-1 96 5 12
-1 97 5 12
-1 98 5 12
-1 99 5 12
-1 100 5 12
-select * from t4 where uid = 1 order by gid,cid;
-uid gid rid cid
-1 1 2 3
-1 1 2 4
-1 1 5 7
-1 1 10 8
-1 1 5 12
-1 2 5 12
-1 3 9 11
-1 3 5 12
-1 4 5 12
-1 5 5 12
-1 6 5 12
-1 7 5 12
-1 8 5 12
-1 9 5 12
-1 10 5 12
-1 11 5 12
-1 12 5 12
-1 13 5 12
-1 14 5 12
-1 15 5 12
-1 16 5 12
-1 17 5 12
-1 18 5 12
-1 19 5 12
-1 20 5 12
-1 21 5 12
-1 22 5 12
-1 23 5 12
-1 24 5 12
-1 25 5 12
-1 26 5 12
-1 27 5 12
-1 28 5 12
-1 29 5 12
-1 30 5 12
-1 31 5 12
-1 32 5 12
-1 33 5 12
-1 34 5 12
-1 35 5 12
-1 36 5 12
-1 37 5 12
-1 38 5 12
-1 39 5 12
-1 40 5 12
-1 41 5 12
-1 42 5 12
-1 43 5 12
-1 44 5 12
-1 45 5 12
-1 46 5 12
-1 47 5 12
-1 48 5 12
-1 49 5 12
-1 50 5 12
-1 51 5 12
-1 52 5 12
-1 53 5 12
-1 54 5 12
-1 55 5 12
-1 56 5 12
-1 57 5 12
-1 58 5 12
-1 59 5 12
-1 60 5 12
-1 61 5 12
-1 62 5 12
-1 63 5 12
-1 64 5 12
-1 65 5 12
-1 66 5 12
-1 67 5 12
-1 68 5 12
-1 69 5 12
-1 70 5 12
-1 71 5 12
-1 72 5 12
-1 73 5 12
-1 74 5 12
-1 75 5 12
-1 76 5 12
-1 77 5 12
-1 78 5 12
-1 79 5 12
-1 80 5 12
-1 81 5 12
-1 82 5 12
-1 83 5 12
-1 84 5 12
-1 85 5 12
-1 86 5 12
-1 87 5 12
-1 88 5 12
-1 89 5 12
-1 90 5 12
-1 91 5 12
-1 92 5 12
-1 93 5 12
-1 94 5 12
-1 95 5 12
-1 96 5 12
-1 97 5 12
-1 98 5 12
-1 99 5 12
-1 100 5 12
-select * from t4 where rid = 2 order by cid;
-uid gid rid cid
-1 1 2 3
-1 1 2 4
-drop table t1,t2,t3,t4,t5,t6,t7;
-CREATE TABLE t1 (
-a int unsigned NOT NULL PRIMARY KEY,
-b int unsigned,
-c int unsigned,
-UNIQUE bc(b,c) ) engine = ndb;
-insert into t1 values(1,1,1),(2,NULL,2),(3,NULL,NULL),(4,4,NULL);
-select * from t1 where b=1 and c=1;
-a b c
-1 1 1
-select * from t1 where b is null and c is null;
-a b c
-3 NULL NULL
-select * from t1 where b is null and c = 2;
-a b c
-2 NULL 2
-select * from t1 where b = 4 and c is null;
-a b c
-4 4 NULL
-create table t8 as
-select * from t1 where (b = 1 and c = 1)
-or (b is null and c is null)
-or (b is null and c = 2)
-or (b = 4 and c is null);
-select * from t8 order by a;
-a b c
-1 1 1
-2 NULL 2
-3 NULL NULL
-4 4 NULL
-select * from t1 order by a;
-a b c
-1 1 1
-2 NULL 2
-3 NULL NULL
-4 4 NULL
-drop table t1, t8;
-create table t1(
-id integer not null auto_increment,
-month integer not null,
-year integer not null,
-code varchar( 2) not null,
-primary key ( id),
-unique idx_t1( month, code, year)
-) engine=ndb;
-INSERT INTO t1 (month, year, code) VALUES (4,2004,'12');
-INSERT INTO t1 (month, year, code) VALUES (5,2004,'12');
-select * from t1 where code = '12' and month = 4 and year = 2004 ;
-id month year code
-1 4 2004 12
-drop table t1;
-create table t1 (a int primary key, b varchar(1000) not null, unique key (b))
-engine=ndb charset=utf8;
-insert into t1 values (1, repeat(_utf8 0xe288ab6474, 200));
-insert into t1 values (2, repeat(_utf8 0xe288ab6474, 200));
-ERROR 23000: Duplicate entry '∫dt∫dt∫dt∫dt∫dt∫dt∫dt∫dt∫dt∫dt∫dt∫dt∫d' for key 2
-select a, sha1(b) from t1;
-a sha1(b)
-1 08f5d02c8b8bc244f275bdfc22c42c5cab0d9d7d
-drop table t1;
diff --git a/mysql-test/r/ndb_insert.result b/mysql-test/r/ndb_insert.result
deleted file mode 100644
index e7275bde2b8..00000000000
--- a/mysql-test/r/ndb_insert.result
+++ /dev/null
@@ -1,659 +0,0 @@
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-b INT NOT NULL,
-c INT NOT NULL
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (0, 0, 0);
-SELECT * FROM t1;
-pk1 b c
-0 0 0
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10),
-(11,11,11),(12,12,12),(13,13,13),(14,14,14),(15,15,15),
-(16,16,16),(17,17,17),(18,18,18),(19,19,19),(20,20,20),
-(21,21,21),(22,22,22),(23,23,23),(24,24,24),(25,25,25),
-(26,26,26),(27,27,27),(28,28,28),(29,29,29),(30,30,30),
-(31,31,31),(32,32,32),(33,33,33),(34,34,34),(35,35,35),
-(36,36,36),(37,37,37),(38,38,38),(39,39,39),(40,40,40),
-(41,41,41),(42,42,42),(43,43,43),(44,44,44),(45,45,45),
-(46,46,46),(47,47,47),(48,48,48),(49,49,49),(50,50,50),
-(51,51,51),(52,52,52),(53,53,53),(54,54,54),(55,55,55),
-(56,56,56),(57,57,57),(58,58,58),(59,59,59),(60,60,60),
-(61,61,61),(62,62,62),(63,63,63),(64,64,64),(65,65,65),
-(66,66,66),(67,67,67),(68,68,68),(69,69,69),(70,70,70),
-(71,71,71),(72,72,72),(73,73,73),(74,74,74),(75,75,75),
-(76,76,76),(77,77,77),(78,78,78),(79,79,79),(80,80,80),
-(81,81,81),(82,82,82),(83,83,83),(84,84,84),(85,85,85),
-(86,86,86),(87,87,87),(88,88,88),(89,89,89),(90,90,90),
-(91,91,91),(92,92,92),(93,93,93),(94,94,94),(95,95,95),
-(96,96,96),(97,97,97),(98,98,98),(99,99,99),(100,100,100),
-(101,101,101),(102,102,102),(103,103,103),(104,104,104),(105,105,105),
-(106,106,106),(107,107,107),(108,108,108),(109,109,109),(110,110,110),
-(111,111,111),(112,112,112),(113,113,113),(114,114,114),(115,115,115),
-(116,116,116),(117,117,117),(118,118,118),(119,119,119),(120,120,120),
-(121,121,121),(122,122,122),(123,123,123),(124,124,124),(125,125,125),
-(126,126,126),(127,127,127),(128,128,128),(129,129,129),(130,130,130),
-(131,131,131),(132,132,132),(133,133,133),(134,134,134),(135,135,135),
-(136,136,136),(137,137,137),(138,138,138),(139,139,139),(140,140,140),
-(141,141,141),(142,142,142),(143,143,143),(144,144,144),(145,145,145),
-(146,146,146),(147,147,147),(148,148,148),(149,149,149),(150,150,150),
-(151,151,151),(152,152,152),(153,153,153),(154,154,154),(155,155,155),
-(156,156,156),(157,157,157),(158,158,158),(159,159,159),(160,160,160),
-(161,161,161),(162,162,162),(163,163,163),(164,164,164),(165,165,165),
-(166,166,166),(167,167,167),(168,168,168),(169,169,169),(170,170,170),
-(171,171,171),(172,172,172),(173,173,173),(174,174,174),(175,175,175),
-(176,176,176),(177,177,177),(178,178,178),(179,179,179),(180,180,180),
-(181,181,181),(182,182,182),(183,183,183),(184,184,184),(185,185,185),
-(186,186,186),(187,187,187),(188,188,188),(189,189,189),(190,190,190),
-(191,191,191),(192,192,192),(193,193,193),(194,194,194),(195,195,195),
-(196,196,196),(197,197,197),(198,198,198),(199,199,199),(200,200,200),
-(201,201,201),(202,202,202),(203,203,203),(204,204,204),(205,205,205),
-(206,206,206),(207,207,207),(208,208,208),(209,209,209),(210,210,210),
-(211,211,211),(212,212,212),(213,213,213),(214,214,214),(215,215,215),
-(216,216,216),(217,217,217),(218,218,218),(219,219,219),(220,220,220),
-(221,221,221),(222,222,222),(223,223,223),(224,224,224),(225,225,225),
-(226,226,226),(227,227,227),(228,228,228),(229,229,229),(230,230,230),
-(231,231,231),(232,232,232),(233,233,233),(234,234,234),(235,235,235),
-(236,236,236),(237,237,237),(238,238,238),(239,239,239),(240,240,240),
-(241,241,241),(242,242,242),(243,243,243),(244,244,244),(245,245,245),
-(246,246,246),(247,247,247),(248,248,248),(249,249,249),(250,250,250),
-(251,251,251),(252,252,252),(253,253,253),(254,254,254),(255,255,255),
-(256,256,256),(257,257,257),(258,258,258),(259,259,259),(260,260,260),
-(261,261,261),(262,262,262),(263,263,263),(264,264,264),(265,265,265),
-(266,266,266),(267,267,267),(268,268,268),(269,269,269),(270,270,270),
-(271,271,271),(272,272,272),(273,273,273),(274,274,274),(275,275,275),
-(276,276,276),(277,277,277),(278,278,278),(279,279,279),(280,280,280),
-(281,281,281),(282,282,282),(283,283,283),(284,284,284),(285,285,285),
-(286,286,286),(287,287,287),(288,288,288),(289,289,289),(290,290,290),
-(291,291,291),(292,292,292),(293,293,293),(294,294,294),(295,295,295),
-(296,296,296),(297,297,297),(298,298,298),(299,299,299),(300,300,300),
-(301,301,301),(302,302,302),(303,303,303),(304,304,304),(305,305,305),
-(306,306,306),(307,307,307),(308,308,308),(309,309,309),(310,310,310),
-(311,311,311),(312,312,312),(313,313,313),(314,314,314),(315,315,315),
-(316,316,316),(317,317,317),(318,318,318),(319,319,319),(320,320,320),
-(321,321,321),(322,322,322),(323,323,323),(324,324,324),(325,325,325),
-(326,326,326),(327,327,327),(328,328,328),(329,329,329),(330,330,330),
-(331,331,331),(332,332,332),(333,333,333),(334,334,334),(335,335,335),
-(336,336,336),(337,337,337),(338,338,338),(339,339,339),(340,340,340),
-(341,341,341),(342,342,342),(343,343,343),(344,344,344),(345,345,345),
-(346,346,346),(347,347,347),(348,348,348),(349,349,349),(350,350,350),
-(351,351,351),(352,352,352),(353,353,353),(354,354,354),(355,355,355),
-(356,356,356),(357,357,357),(358,358,358),(359,359,359),(360,360,360),
-(361,361,361),(362,362,362),(363,363,363),(364,364,364),(365,365,365),
-(366,366,366),(367,367,367),(368,368,368),(369,369,369),(370,370,370),
-(371,371,371),(372,372,372),(373,373,373),(374,374,374),(375,375,375),
-(376,376,376),(377,377,377),(378,378,378),(379,379,379),(380,380,380),
-(381,381,381),(382,382,382),(383,383,383),(384,384,384),(385,385,385),
-(386,386,386),(387,387,387),(388,388,388),(389,389,389),(390,390,390),
-(391,391,391),(392,392,392),(393,393,393),(394,394,394),(395,395,395),
-(396,396,396),(397,397,397),(398,398,398),(399,399,399),(400,400,400),
-(401,401,401),(402,402,402),(403,403,403),(404,404,404),(405,405,405),
-(406,406,406),(407,407,407),(408,408,408),(409,409,409),(410,410,410),
-(411,411,411),(412,412,412),(413,413,413),(414,414,414),(415,415,415),
-(416,416,416),(417,417,417),(418,418,418),(419,419,419),(420,420,420),
-(421,421,421),(422,422,422),(423,423,423),(424,424,424),(425,425,425),
-(426,426,426),(427,427,427),(428,428,428),(429,429,429),(430,430,430),
-(431,431,431),(432,432,432),(433,433,433),(434,434,434),(435,435,435),
-(436,436,436),(437,437,437),(438,438,438),(439,439,439),(440,440,440),
-(441,441,441),(442,442,442),(443,443,443),(444,444,444),(445,445,445),
-(446,446,446),(447,447,447),(448,448,448),(449,449,449),(450,450,450),
-(451,451,451),(452,452,452),(453,453,453),(454,454,454),(455,455,455),
-(456,456,456),(457,457,457),(458,458,458),(459,459,459),(460,460,460),
-(461,461,461),(462,462,462),(463,463,463),(464,464,464),(465,465,465),
-(466,466,466),(467,467,467),(468,468,468),(469,469,469),(470,470,470),
-(471,471,471),(472,472,472),(473,473,473),(474,474,474),(475,475,475),
-(476,476,476),(477,477,477),(478,478,478),(479,479,479),(480,480,480),
-(481,481,481),(482,482,482),(483,483,483),(484,484,484),(485,485,485),
-(486,486,486),(487,487,487),(488,488,488),(489,489,489),(490,490,490),
-(491,491,491),(492,492,492),(493,493,493),(494,494,494),(495,495,495),
-(496,496,496),(497,497,497),(498,498,498),(499,499,499),(500, 500, 500);
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-501
-INSERT INTO t1 VALUES
-(501,501,501),(502,502,502),(503,503,503),(504,504,504),(505,505,505),
-(506,506,506),(507,507,507),(508,508,508),(509,509,509),(510,510,510),
-(511,511,511),(512,512,512),(513,513,513),(514,514,514),(515,515,515),
-(516,516,516),(517,517,517),(518,518,518),(519,519,519),(520,520,520),
-(521,521,521),(522,522,522),(523,523,523),(524,524,524),(525,525,525),
-(526,526,526),(527,527,527),(528,528,528),(529,529,529),(530,530,530),
-(531,531,531),(532,532,532),(533,533,533),(534,534,534),(535,535,535),
-(536,536,536),(537,537,537),(538,538,538),(539,539,539),(540,540,540),
-(541,541,541),(542,542,542),(543,543,543),(544,544,544),(545,545,545),
-(546,546,546),(547,547,547),(548,548,548),(549,549,549),(550,550,550),
-(551,551,551),(552,552,552),(553,553,553),(554,554,554),(555,555,555),
-(556,556,556),(557,557,557),(558,558,558),(559,559,559),(560,560,560),
-(561,561,561),(562,562,562),(563,563,563),(564,564,564),(565,565,565),
-(566,566,566),(567,567,567),(568,568,568),(569,569,569),(570,570,570),
-(571,571,571),(572,572,572),(573,573,573),(574,574,574),(575,575,575),
-(576,576,576),(577,577,577),(578,578,578),(579,579,579),(580,580,580),
-(581,581,581),(582,582,582),(583,583,583),(584,584,584),(585,585,585),
-(586,586,586),(587,587,587),(588,588,588),(589,589,589),(590,590,590),
-(591,591,591),(592,592,592),(593,593,593),(594,594,594),(595,595,595),
-(596,596,596),(597,597,597),(598,598,598),(599,599,599),(600,600,600),
-(601,601,601),(602,602,602),(603,603,603),(604,604,604),(605,605,605),
-(606,606,606),(607,607,607),(608,608,608),(609,609,609),(610,610,610),
-(611,611,611),(612,612,612),(613,613,613),(614,614,614),(615,615,615),
-(616,616,616),(617,617,617),(618,618,618),(619,619,619),(620,620,620),
-(621,621,621),(622,622,622),(623,623,623),(624,624,624),(625,625,625),
-(626,626,626),(627,627,627),(628,628,628),(629,629,629),(630,630,630),
-(631,631,631),(632,632,632),(633,633,633),(634,634,634),(635,635,635),
-(636,636,636),(637,637,637),(638,638,638),(639,639,639),(640,640,640),
-(641,641,641),(642,642,642),(643,643,643),(644,644,644),(645,645,645),
-(646,646,646),(647,647,647),(648,648,648),(649,649,649),(650,650,650),
-(651,651,651),(652,652,652),(653,653,653),(654,654,654),(655,655,655),
-(656,656,656),(657,657,657),(658,658,658),(659,659,659),(660,660,660),
-(661,661,661),(662,662,662),(663,663,663),(664,664,664),(665,665,665),
-(666,666,666),(667,667,667),(668,668,668),(669,669,669),(670,670,670),
-(671,671,671),(672,672,672),(673,673,673),(674,674,674),(675,675,675),
-(676,676,676),(677,677,677),(678,678,678),(679,679,679),(680,680,680),
-(681,681,681),(682,682,682),(683,683,683),(684,684,684),(685,685,685),
-(686,686,686),(687,687,687),(688,688,688),(689,689,689),(690,690,690),
-(691,691,691),(692,692,692),(693,693,693),(694,694,694),(695,695,695),
-(696,696,696),(697,697,697),(698,698,698),(699,699,699),(700,700,700),
-(701,701,701),(702,702,702),(703,703,703),(704,704,704),(705,705,705),
-(706,706,706),(707,707,707),(708,708,708),(709,709,709),(710,710,710),
-(711,711,711),(712,712,712),(713,713,713),(714,714,714),(715,715,715),
-(716,716,716),(717,717,717),(718,718,718),(719,719,719),(720,720,720),
-(721,721,721),(722,722,722),(723,723,723),(724,724,724),(725,725,725),
-(726,726,726),(727,727,727),(728,728,728),(729,729,729),(730,730,730),
-(731,731,731),(732,732,732),(733,733,733),(734,734,734),(735,735,735),
-(736,736,736),(737,737,737),(738,738,738),(739,739,739),(740,740,740),
-(741,741,741),(742,742,742),(743,743,743),(744,744,744),(745,745,745),
-(746,746,746),(747,747,747),(748,748,748),(749,749,749),(750,750,750),
-(751,751,751),(752,752,752),(753,753,753),(754,754,754),(755,755,755),
-(756,756,756),(757,757,757),(758,758,758),(759,759,759),(760,760,760),
-(761,761,761),(762,762,762),(763,763,763),(764,764,764),(765,765,765),
-(766,766,766),(767,767,767),(768,768,768),(769,769,769),(770,770,770),
-(771,771,771),(772,772,772),(773,773,773),(774,774,774),(775,775,775),
-(776,776,776),(777,777,777),(778,778,778),(779,779,779),(780,780,780),
-(781,781,781),(782,782,782),(783,783,783),(784,784,784),(785,785,785),
-(786,786,786),(787,787,787),(788,788,788),(789,789,789),(790,790,790),
-(791,791,791),(792,792,792),(793,793,793),(794,794,794),(795,795,795),
-(796,796,796),(797,797,797),(798,798,798),(799,799,799),(800,800,800),
-(801,801,801),(802,802,802),(803,803,803),(804,804,804),(805,805,805),
-(806,806,806),(807,807,807),(808,808,808),(809,809,809),(810,810,810),
-(811,811,811),(812,812,812),(813,813,813),(814,814,814),(815,815,815),
-(816,816,816),(817,817,817),(818,818,818),(819,819,819),(820,820,820),
-(821,821,821),(822,822,822),(823,823,823),(824,824,824),(825,825,825),
-(826,826,826),(827,827,827),(828,828,828),(829,829,829),(830,830,830),
-(831,831,831),(832,832,832),(833,833,833),(834,834,834),(835,835,835),
-(836,836,836),(837,837,837),(838,838,838),(839,839,839),(840,840,840),
-(841,841,841),(842,842,842),(843,843,843),(844,844,844),(845,845,845),
-(846,846,846),(847,847,847),(848,848,848),(849,849,849),(850,850,850),
-(851,851,851),(852,852,852),(853,853,853),(854,854,854),(855,855,855),
-(856,856,856),(857,857,857),(858,858,858),(859,859,859),(860,860,860),
-(861,861,861),(862,862,862),(863,863,863),(864,864,864),(865,865,865),
-(866,866,866),(867,867,867),(868,868,868),(869,869,869),(870,870,870),
-(871,871,871),(872,872,872),(873,873,873),(874,874,874),(875,875,875),
-(876,876,876),(877,877,877),(878,878,878),(879,879,879),(880,880,880),
-(881,881,881),(882,882,882),(883,883,883),(884,884,884),(885,885,885),
-(886,886,886),(887,887,887),(888,888,888),(889,889,889),(890,890,890),
-(891,891,891),(892,892,892),(893,893,893),(894,894,894),(895,895,895),
-(896,896,896),(897,897,897),(898,898,898),(899,899,899),(900,900,900),
-(901,901,901),(902,902,902),(903,903,903),(904,904,904),(905,905,905),
-(906,906,906),(907,907,907),(908,908,908),(909,909,909),(910,910,910),
-(911,911,911),(912,912,912),(913,913,913),(914,914,914),(915,915,915),
-(916,916,916),(917,917,917),(918,918,918),(919,919,919),(920,920,920),
-(921,921,921),(922,922,922),(923,923,923),(924,924,924),(925,925,925),
-(926,926,926),(927,927,927),(928,928,928),(929,929,929),(930,930,930),
-(931,931,931),(932,932,932),(933,933,933),(934,934,934),(935,935,935),
-(936,936,936),(937,937,937),(938,938,938),(939,939,939),(940,940,940),
-(941,941,941),(942,942,942),(943,943,943),(944,944,944),(945,945,945),
-(946,946,946),(947,947,947),(948,948,948),(949,949,949),(950,950,950),
-(951,951,951),(952,952,952),(953,953,953),(954,954,954),(955,955,955),
-(956,956,956),(957,957,957),(958,958,958),(959,959,959),(960,960,960),
-(961,961,961),(962,962,962),(963,963,963),(964,964,964),(965,965,965),
-(966,966,966),(967,967,967),(968,968,968),(969,969,969),(970,970,970),
-(971,971,971),(972,972,972),(973,973,973),(974,974,974),(975,975,975),
-(976,976,976),(977,977,977),(978,978,978),(979,979,979),(980,980,980),
-(981,981,981),(982,982,982),(983,983,983),(984,984,984),(985,985,985),
-(986,986,986),(987,987,987),(988,988,988),(989,989,989),(990,990,990),
-(991,991,991),(992,992,992),(993,993,993),(994,994,994),(995,995,995),
-(996,996,996),(997,997,997),(998,998,998),(999,999,999),(1000,1000,1000),
-(1001,1001,1001),(1002,1002,1002),(1003,1003,1003),(1004,1004,1004),(1005,1005,1005),
-(1006,1006,1006),(1007,1007,1007),(1008,1008,1008),(1009,1009,1009),(1010,1010,1010),
-(1011,1011,1011),(1012,1012,1012),(1013,1013,1013),(1014,1014,1014),(1015,1015,1015),
-(1016,1016,1016),(1017,1017,1017),(1018,1018,1018),(1019,1019,1019),(1020,1020,1020),
-(1021,1021,1021),(1022,1022,1022),(1023,1023,1023),(1024,1024,1024),(1025,1025,1025),
-(1026,1026,1026),(1027,1027,1027),(1028,1028,1028),(1029,1029,1029),(1030,1030,1030),
-(1031,1031,1031),(1032,1032,1032),(1033,1033,1033),(1034,1034,1034),(1035,1035,1035),
-(1036,1036,1036),(1037,1037,1037),(1038,1038,1038),(1039,1039,1039),(1040,1040,1040),
-(1041,1041,1041),(1042,1042,1042),(1043,1043,1043),(1044,1044,1044),(1045,1045,1045),
-(1046,1046,1046),(1047,1047,1047),(1048,1048,1048),(1049,1049,1049),(1050,1050,1050),
-(1051,1051,1051),(1052,1052,1052),(1053,1053,1053),(1054,1054,1054),(1055,1055,1055),
-(1056,1056,1056),(1057,1057,1057),(1058,1058,1058),(1059,1059,1059),(1060,1060,1060),
-(1061,1061,1061),(1062,1062,1062),(1063,1063,1063),(1064,1064,1064),(1065,1065,1065),
-(1066,1066,1066),(1067,1067,1067),(1068,1068,1068),(1069,1069,1069),(1070,1070,1070),
-(1071,1071,1071),(1072,1072,1072),(1073,1073,1073),(1074,1074,1074),(1075,1075,1075),
-(1076,1076,1076),(1077,1077,1077),(1078,1078,1078),(1079,1079,1079),(1080,1080,1080),
-(1081,1081,1081),(1082,1082,1082),(1083,1083,1083),(1084,1084,1084),(1085,1085,1085),
-(1086,1086,1086),(1087,1087,1087),(1088,1088,1088),(1089,1089,1089),(1090,1090,1090),
-(1091,1091,1091),(1092,1092,1092),(1093,1093,1093),(1094,1094,1094),(1095,1095,1095),
-(1096,1096,1096),(1097,1097,1097),(1098,1098,1098),(1099,1099,1099),(1100,1100,1100),
-(1101,1101,1101),(1102,1102,1102),(1103,1103,1103),(1104,1104,1104),(1105,1105,1105),
-(1106,1106,1106),(1107,1107,1107),(1108,1108,1108),(1109,1109,1109),(1110,1110,1110),
-(1111,1111,1111),(1112,1112,1112),(1113,1113,1113),(1114,1114,1114),(1115,1115,1115),
-(1116,1116,1116),(1117,1117,1117),(1118,1118,1118),(1119,1119,1119),(1120,1120,1120),
-(1121,1121,1121),(1122,1122,1122),(1123,1123,1123),(1124,1124,1124),(1125,1125,1125),
-(1126,1126,1126),(1127,1127,1127),(1128,1128,1128),(1129,1129,1129),(1130,1130,1130),
-(1131,1131,1131),(1132,1132,1132),(1133,1133,1133),(1134,1134,1134),(1135,1135,1135),
-(1136,1136,1136),(1137,1137,1137),(1138,1138,1138),(1139,1139,1139),(1140,1140,1140),
-(1141,1141,1141),(1142,1142,1142),(1143,1143,1143),(1144,1144,1144),(1145,1145,1145),
-(1146,1146,1146),(1147,1147,1147),(1148,1148,1148),(1149,1149,1149),(1150,1150,1150),
-(1151,1151,1151),(1152,1152,1152),(1153,1153,1153),(1154,1154,1154),(1155,1155,1155),
-(1156,1156,1156),(1157,1157,1157),(1158,1158,1158),(1159,1159,1159),(1160,1160,1160),
-(1161,1161,1161),(1162,1162,1162),(1163,1163,1163),(1164,1164,1164),(1165,1165,1165),
-(1166,1166,1166),(1167,1167,1167),(1168,1168,1168),(1169,1169,1169),(1170,1170,1170),
-(1171,1171,1171),(1172,1172,1172),(1173,1173,1173),(1174,1174,1174),(1175,1175,1175),
-(1176,1176,1176),(1177,1177,1177),(1178,1178,1178),(1179,1179,1179),(1180,1180,1180),
-(1181,1181,1181),(1182,1182,1182),(1183,1183,1183),(1184,1184,1184),(1185,1185,1185),
-(1186,1186,1186),(1187,1187,1187),(1188,1188,1188),(1189,1189,1189),(1190,1190,1190),
-(1191,1191,1191),(1192,1192,1192),(1193,1193,1193),(1194,1194,1194),(1195,1195,1195),
-(1196,1196,1196),(1197,1197,1197),(1198,1198,1198),(1199,1199,1199),(1200,1200,1200),
-(1201,1201,1201),(1202,1202,1202),(1203,1203,1203),(1204,1204,1204),(1205,1205,1205),
-(1206,1206,1206),(1207,1207,1207),(1208,1208,1208),(1209,1209,1209),(1210,1210,1210),
-(1211,1211,1211),(1212,1212,1212),(1213,1213,1213),(1214,1214,1214),(1215,1215,1215),
-(1216,1216,1216),(1217,1217,1217),(1218,1218,1218),(1219,1219,1219),(1220,1220,1220),
-(1221,1221,1221),(1222,1222,1222),(1223,1223,1223),(1224,1224,1224),(1225,1225,1225),
-(1226,1226,1226),(1227,1227,1227),(1228,1228,1228),(1229,1229,1229),(1230,1230,1230),
-(1231,1231,1231),(1232,1232,1232),(1233,1233,1233),(1234,1234,1234),(1235,1235,1235),
-(1236,1236,1236),(1237,1237,1237),(1238,1238,1238),(1239,1239,1239),(1240,1240,1240),
-(1241,1241,1241),(1242,1242,1242),(1243,1243,1243),(1244,1244,1244),(1245,1245,1245),
-(1246,1246,1246),(1247,1247,1247),(1248,1248,1248),(1249,1249,1249),(1250,1250,1250),
-(1251,1251,1251),(1252,1252,1252),(1253,1253,1253),(1254,1254,1254),(1255,1255,1255),
-(1256,1256,1256),(1257,1257,1257),(1258,1258,1258),(1259,1259,1259),(1260,1260,1260),
-(1261,1261,1261),(1262,1262,1262),(1263,1263,1263),(1264,1264,1264),(1265,1265,1265),
-(1266,1266,1266),(1267,1267,1267),(1268,1268,1268),(1269,1269,1269),(1270,1270,1270),
-(1271,1271,1271),(1272,1272,1272),(1273,1273,1273),(1274,1274,1274),(1275,1275,1275),
-(1276,1276,1276),(1277,1277,1277),(1278,1278,1278),(1279,1279,1279),(1280,1280,1280),
-(1281,1281,1281),(1282,1282,1282),(1283,1283,1283),(1284,1284,1284),(1285,1285,1285),
-(1286,1286,1286),(1287,1287,1287),(1288,1288,1288),(1289,1289,1289),(1290,1290,1290),
-(1291,1291,1291),(1292,1292,1292),(1293,1293,1293),(1294,1294,1294),(1295,1295,1295),
-(1296,1296,1296),(1297,1297,1297),(1298,1298,1298),(1299,1299,1299),(1300,1300,1300),
-(1301,1301,1301),(1302,1302,1302),(1303,1303,1303),(1304,1304,1304),(1305,1305,1305),
-(1306,1306,1306),(1307,1307,1307),(1308,1308,1308),(1309,1309,1309),(1310,1310,1310),
-(1311,1311,1311),(1312,1312,1312),(1313,1313,1313),(1314,1314,1314),(1315,1315,1315),
-(1316,1316,1316),(1317,1317,1317),(1318,1318,1318),(1319,1319,1319),(1320,1320,1320),
-(1321,1321,1321),(1322,1322,1322),(1323,1323,1323),(1324,1324,1324),(1325,1325,1325),
-(1326,1326,1326),(1327,1327,1327),(1328,1328,1328),(1329,1329,1329),(1330,1330,1330),
-(1331,1331,1331),(1332,1332,1332),(1333,1333,1333),(1334,1334,1334),(1335,1335,1335),
-(1336,1336,1336),(1337,1337,1337),(1338,1338,1338),(1339,1339,1339),(1340,1340,1340),
-(1341,1341,1341),(1342,1342,1342),(1343,1343,1343),(1344,1344,1344),(1345,1345,1345),
-(1346,1346,1346),(1347,1347,1347),(1348,1348,1348),(1349,1349,1349),(1350,1350,1350),
-(1351,1351,1351),(1352,1352,1352),(1353,1353,1353),(1354,1354,1354),(1355,1355,1355),
-(1356,1356,1356),(1357,1357,1357),(1358,1358,1358),(1359,1359,1359),(1360,1360,1360),
-(1361,1361,1361),(1362,1362,1362),(1363,1363,1363),(1364,1364,1364),(1365,1365,1365),
-(1366,1366,1366),(1367,1367,1367),(1368,1368,1368),(1369,1369,1369),(1370,1370,1370),
-(1371,1371,1371),(1372,1372,1372),(1373,1373,1373),(1374,1374,1374),(1375,1375,1375),
-(1376,1376,1376),(1377,1377,1377),(1378,1378,1378),(1379,1379,1379),(1380,1380,1380),
-(1381,1381,1381),(1382,1382,1382),(1383,1383,1383),(1384,1384,1384),(1385,1385,1385),
-(1386,1386,1386),(1387,1387,1387),(1388,1388,1388),(1389,1389,1389),(1390,1390,1390),
-(1391,1391,1391),(1392,1392,1392),(1393,1393,1393),(1394,1394,1394),(1395,1395,1395),
-(1396,1396,1396),(1397,1397,1397),(1398,1398,1398),(1399,1399,1399),(1400,1400,1400),
-(1401,1401,1401),(1402,1402,1402),(1403,1403,1403),(1404,1404,1404),(1405,1405,1405),
-(1406,1406,1406),(1407,1407,1407),(1408,1408,1408),(1409,1409,1409),(1410,1410,1410),
-(1411,1411,1411),(1412,1412,1412),(1413,1413,1413),(1414,1414,1414),(1415,1415,1415),
-(1416,1416,1416),(1417,1417,1417),(1418,1418,1418),(1419,1419,1419),(1420,1420,1420),
-(1421,1421,1421),(1422,1422,1422),(1423,1423,1423),(1424,1424,1424),(1425,1425,1425),
-(1426,1426,1426),(1427,1427,1427),(1428,1428,1428),(1429,1429,1429),(1430,1430,1430),
-(1431,1431,1431),(1432,1432,1432),(1433,1433,1433),(1434,1434,1434),(1435,1435,1435),
-(1436,1436,1436),(1437,1437,1437),(1438,1438,1438),(1439,1439,1439),(1440,1440,1440),
-(1441,1441,1441),(1442,1442,1442),(1443,1443,1443),(1444,1444,1444),(1445,1445,1445),
-(1446,1446,1446),(1447,1447,1447),(1448,1448,1448),(1449,1449,1449),(1450,1450,1450),
-(1451,1451,1451),(1452,1452,1452),(1453,1453,1453),(1454,1454,1454),(1455,1455,1455),
-(1456,1456,1456),(1457,1457,1457),(1458,1458,1458),(1459,1459,1459),(1460,1460,1460),
-(1461,1461,1461),(1462,1462,1462),(1463,1463,1463),(1464,1464,1464),(1465,1465,1465),
-(1466,1466,1466),(1467,1467,1467),(1468,1468,1468),(1469,1469,1469),(1470,1470,1470),
-(1471,1471,1471),(1472,1472,1472),(1473,1473,1473),(1474,1474,1474),(1475,1475,1475),
-(1476,1476,1476),(1477,1477,1477),(1478,1478,1478),(1479,1479,1479),(1480,1480,1480),
-(1481,1481,1481),(1482,1482,1482),(1483,1483,1483),(1484,1484,1484),(1485,1485,1485),
-(1486,1486,1486),(1487,1487,1487),(1488,1488,1488),(1489,1489,1489),(1490,1490,1490),
-(1491,1491,1491),(1492,1492,1492),(1493,1493,1493),(1494,1494,1494),(1495,1495,1495),
-(1496,1496,1496),(1497,1497,1497),(1498,1498,1498),(1499,1499,1499),(1500,1500,1500),
-(1501,1501,1501),(1502,1502,1502),(1503,1503,1503),(1504,1504,1504),(1505,1505,1505),
-(1506,1506,1506),(1507,1507,1507),(1508,1508,1508),(1509,1509,1509),(1510,1510,1510),
-(1511,1511,1511),(1512,1512,1512),(1513,1513,1513),(1514,1514,1514),(1515,1515,1515),
-(1516,1516,1516),(1517,1517,1517),(1518,1518,1518),(1519,1519,1519),(1520,1520,1520),
-(1521,1521,1521),(1522,1522,1522),(1523,1523,1523),(1524,1524,1524),(1525,1525,1525),
-(1526,1526,1526),(1527,1527,1527),(1528,1528,1528),(1529,1529,1529),(1530,1530,1530),
-(1531,1531,1531),(1532,1532,1532),(1533,1533,1533),(1534,1534,1534),(1535,1535,1535),
-(1536,1536,1536),(1537,1537,1537),(1538,1538,1538),(1539,1539,1539),(1540,1540,1540),
-(1541,1541,1541),(1542,1542,1542),(1543,1543,1543),(1544,1544,1544),(1545,1545,1545),
-(1546,1546,1546),(1547,1547,1547),(1548,1548,1548),(1549,1549,1549),(1550,1550,1550),
-(1551,1551,1551),(1552,1552,1552),(1553,1553,1553),(1554,1554,1554),(1555,1555,1555),
-(1556,1556,1556),(1557,1557,1557),(1558,1558,1558),(1559,1559,1559),(1560,1560,1560),
-(1561,1561,1561),(1562,1562,1562),(1563,1563,1563),(1564,1564,1564),(1565,1565,1565),
-(1566,1566,1566),(1567,1567,1567),(1568,1568,1568),(1569,1569,1569),(1570,1570,1570),
-(1571,1571,1571),(1572,1572,1572),(1573,1573,1573),(1574,1574,1574),(1575,1575,1575),
-(1576,1576,1576),(1577,1577,1577),(1578,1578,1578),(1579,1579,1579),(1580,1580,1580),
-(1581,1581,1581),(1582,1582,1582),(1583,1583,1583),(1584,1584,1584),(1585,1585,1585),
-(1586,1586,1586),(1587,1587,1587),(1588,1588,1588),(1589,1589,1589),(1590,1590,1590),
-(1591,1591,1591),(1592,1592,1592),(1593,1593,1593),(1594,1594,1594),(1595,1595,1595),
-(1596,1596,1596),(1597,1597,1597),(1598,1598,1598),(1599,1599,1599),(1600,1600,1600),
-(1601,1601,1601),(1602,1602,1602),(1603,1603,1603),(1604,1604,1604),(1605,1605,1605),
-(1606,1606,1606),(1607,1607,1607),(1608,1608,1608),(1609,1609,1609),(1610,1610,1610),
-(1611,1611,1611),(1612,1612,1612),(1613,1613,1613),(1614,1614,1614),(1615,1615,1615),
-(1616,1616,1616),(1617,1617,1617),(1618,1618,1618),(1619,1619,1619),(1620,1620,1620),
-(1621,1621,1621),(1622,1622,1622),(1623,1623,1623),(1624,1624,1624),(1625,1625,1625),
-(1626,1626,1626),(1627,1627,1627),(1628,1628,1628),(1629,1629,1629),(1630,1630,1630),
-(1631,1631,1631),(1632,1632,1632),(1633,1633,1633),(1634,1634,1634),(1635,1635,1635),
-(1636,1636,1636),(1637,1637,1637),(1638,1638,1638),(1639,1639,1639),(1640,1640,1640),
-(1641,1641,1641),(1642,1642,1642),(1643,1643,1643),(1644,1644,1644),(1645,1645,1645),
-(1646,1646,1646),(1647,1647,1647),(1648,1648,1648),(1649,1649,1649),(1650,1650,1650),
-(1651,1651,1651),(1652,1652,1652),(1653,1653,1653),(1654,1654,1654),(1655,1655,1655),
-(1656,1656,1656),(1657,1657,1657),(1658,1658,1658),(1659,1659,1659),(1660,1660,1660),
-(1661,1661,1661),(1662,1662,1662),(1663,1663,1663),(1664,1664,1664),(1665,1665,1665),
-(1666,1666,1666),(1667,1667,1667),(1668,1668,1668),(1669,1669,1669),(1670,1670,1670),
-(1671,1671,1671),(1672,1672,1672),(1673,1673,1673),(1674,1674,1674),(1675,1675,1675),
-(1676,1676,1676),(1677,1677,1677),(1678,1678,1678),(1679,1679,1679),(1680,1680,1680),
-(1681,1681,1681),(1682,1682,1682),(1683,1683,1683),(1684,1684,1684),(1685,1685,1685),
-(1686,1686,1686),(1687,1687,1687),(1688,1688,1688),(1689,1689,1689),(1690,1690,1690),
-(1691,1691,1691),(1692,1692,1692),(1693,1693,1693),(1694,1694,1694),(1695,1695,1695),
-(1696,1696,1696),(1697,1697,1697),(1698,1698,1698),(1699,1699,1699),(1700,1700,1700),
-(1701,1701,1701),(1702,1702,1702),(1703,1703,1703),(1704,1704,1704),(1705,1705,1705),
-(1706,1706,1706),(1707,1707,1707),(1708,1708,1708),(1709,1709,1709),(1710,1710,1710),
-(1711,1711,1711),(1712,1712,1712),(1713,1713,1713),(1714,1714,1714),(1715,1715,1715),
-(1716,1716,1716),(1717,1717,1717),(1718,1718,1718),(1719,1719,1719),(1720,1720,1720),
-(1721,1721,1721),(1722,1722,1722),(1723,1723,1723),(1724,1724,1724),(1725,1725,1725),
-(1726,1726,1726),(1727,1727,1727),(1728,1728,1728),(1729,1729,1729),(1730,1730,1730),
-(1731,1731,1731),(1732,1732,1732),(1733,1733,1733),(1734,1734,1734),(1735,1735,1735),
-(1736,1736,1736),(1737,1737,1737),(1738,1738,1738),(1739,1739,1739),(1740,1740,1740),
-(1741,1741,1741),(1742,1742,1742),(1743,1743,1743),(1744,1744,1744),(1745,1745,1745),
-(1746,1746,1746),(1747,1747,1747),(1748,1748,1748),(1749,1749,1749),(1750,1750,1750),
-(1751,1751,1751),(1752,1752,1752),(1753,1753,1753),(1754,1754,1754),(1755,1755,1755),
-(1756,1756,1756),(1757,1757,1757),(1758,1758,1758),(1759,1759,1759),(1760,1760,1760),
-(1761,1761,1761),(1762,1762,1762),(1763,1763,1763),(1764,1764,1764),(1765,1765,1765),
-(1766,1766,1766),(1767,1767,1767),(1768,1768,1768),(1769,1769,1769),(1770,1770,1770),
-(1771,1771,1771),(1772,1772,1772),(1773,1773,1773),(1774,1774,1774),(1775,1775,1775),
-(1776,1776,1776),(1777,1777,1777),(1778,1778,1778),(1779,1779,1779),(1780,1780,1780),
-(1781,1781,1781),(1782,1782,1782),(1783,1783,1783),(1784,1784,1784),(1785,1785,1785),
-(1786,1786,1786),(1787,1787,1787),(1788,1788,1788),(1789,1789,1789),(1790,1790,1790),
-(1791,1791,1791),(1792,1792,1792),(1793,1793,1793),(1794,1794,1794),(1795,1795,1795),
-(1796,1796,1796),(1797,1797,1797),(1798,1798,1798),(1799,1799,1799),(1800,1800,1800),
-(1801,1801,1801),(1802,1802,1802),(1803,1803,1803),(1804,1804,1804),(1805,1805,1805),
-(1806,1806,1806),(1807,1807,1807),(1808,1808,1808),(1809,1809,1809),(1810,1810,1810),
-(1811,1811,1811),(1812,1812,1812),(1813,1813,1813),(1814,1814,1814),(1815,1815,1815),
-(1816,1816,1816),(1817,1817,1817),(1818,1818,1818),(1819,1819,1819),(1820,1820,1820),
-(1821,1821,1821),(1822,1822,1822),(1823,1823,1823),(1824,1824,1824),(1825,1825,1825),
-(1826,1826,1826),(1827,1827,1827),(1828,1828,1828),(1829,1829,1829),(1830,1830,1830),
-(1831,1831,1831),(1832,1832,1832),(1833,1833,1833),(1834,1834,1834),(1835,1835,1835),
-(1836,1836,1836),(1837,1837,1837),(1838,1838,1838),(1839,1839,1839),(1840,1840,1840),
-(1841,1841,1841),(1842,1842,1842),(1843,1843,1843),(1844,1844,1844),(1845,1845,1845),
-(1846,1846,1846),(1847,1847,1847),(1848,1848,1848),(1849,1849,1849),(1850,1850,1850),
-(1851,1851,1851),(1852,1852,1852),(1853,1853,1853),(1854,1854,1854),(1855,1855,1855),
-(1856,1856,1856),(1857,1857,1857),(1858,1858,1858),(1859,1859,1859),(1860,1860,1860),
-(1861,1861,1861),(1862,1862,1862),(1863,1863,1863),(1864,1864,1864),(1865,1865,1865),
-(1866,1866,1866),(1867,1867,1867),(1868,1868,1868),(1869,1869,1869),(1870,1870,1870),
-(1871,1871,1871),(1872,1872,1872),(1873,1873,1873),(1874,1874,1874),(1875,1875,1875),
-(1876,1876,1876),(1877,1877,1877),(1878,1878,1878),(1879,1879,1879),(1880,1880,1880),
-(1881,1881,1881),(1882,1882,1882),(1883,1883,1883),(1884,1884,1884),(1885,1885,1885),
-(1886,1886,1886),(1887,1887,1887),(1888,1888,1888),(1889,1889,1889),(1890,1890,1890),
-(1891,1891,1891),(1892,1892,1892),(1893,1893,1893),(1894,1894,1894),(1895,1895,1895),
-(1896,1896,1896),(1897,1897,1897),(1898,1898,1898),(1899,1899,1899),(1900,1900,1900),
-(1901,1901,1901),(1902,1902,1902),(1903,1903,1903),(1904,1904,1904),(1905,1905,1905),
-(1906,1906,1906),(1907,1907,1907),(1908,1908,1908),(1909,1909,1909),(1910,1910,1910),
-(1911,1911,1911),(1912,1912,1912),(1913,1913,1913),(1914,1914,1914),(1915,1915,1915),
-(1916,1916,1916),(1917,1917,1917),(1918,1918,1918),(1919,1919,1919),(1920,1920,1920),
-(1921,1921,1921),(1922,1922,1922),(1923,1923,1923),(1924,1924,1924),(1925,1925,1925),
-(1926,1926,1926),(1927,1927,1927),(1928,1928,1928),(1929,1929,1929),(1930,1930,1930),
-(1931,1931,1931),(1932,1932,1932),(1933,1933,1933),(1934,1934,1934),(1935,1935,1935),
-(1936,1936,1936),(1937,1937,1937),(1938,1938,1938),(1939,1939,1939),(1940,1940,1940),
-(1941,1941,1941),(1942,1942,1942),(1943,1943,1943),(1944,1944,1944),(1945,1945,1945),
-(1946,1946,1946),(1947,1947,1947),(1948,1948,1948),(1949,1949,1949),(1950,1950,1950),
-(1951,1951,1951),(1952,1952,1952),(1953,1953,1953),(1954,1954,1954),(1955,1955,1955),
-(1956,1956,1956),(1957,1957,1957),(1958,1958,1958),(1959,1959,1959),(1960,1960,1960),
-(1961,1961,1961),(1962,1962,1962),(1963,1963,1963),(1964,1964,1964),(1965,1965,1965),
-(1966,1966,1966),(1967,1967,1967),(1968,1968,1968),(1969,1969,1969),(1970,1970,1970),
-(1971,1971,1971),(1972,1972,1972),(1973,1973,1973),(1974,1974,1974),(1975,1975,1975),
-(1976,1976,1976),(1977,1977,1977),(1978,1978,1978),(1979,1979,1979),(1980,1980,1980),
-(1981,1981,1981),(1982,1982,1982),(1983,1983,1983),(1984,1984,1984),(1985,1985,1985),
-(1986,1986,1986),(1987,1987,1987),(1988,1988,1988),(1989,1989,1989),(1990,1990,1990),
-(1991,1991,1991),(1992,1992,1992),(1993,1993,1993),(1994,1994,1994),(1995,1995,1995),
-(1996,1996,1996),(1997,1997,1997),(1998,1998,1998),(1999,1999,1999);
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-2000
-INSERT INTO t1 VALUES (1,1,1);
-ERROR 23000: Duplicate entry '1' for key 1
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-ERROR 23000: Can't write; duplicate key in table 't1'
-select count(*) from t1;
-count(*)
-2000
-begin;
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-2000
-INSERT INTO t1 VALUES
-(2001,2001,2001),(2002,2002,2002),(2003,2003,2003),(2004,2004,2004),(2005,2005,2005);
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-2005
-rollback;
-begin;
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-ERROR 23000: Can't write; duplicate key in table 't1'
-commit;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-select * from t1 where pk1=1;
-pk1 b c
-1 1 1
-select * from t1 where pk1=10;
-pk1 b c
-10 10 10
-select count(*) from t1 where pk1 <= 10 order by pk1;
-count(*)
-11
-select count(*) from t1;
-count(*)
-2000
-begin;
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-ERROR 23000: Can't write; duplicate key in table 't1'
-rollback;
-select * from t1 where pk1=1;
-pk1 b c
-1 1 1
-select * from t1 where pk1=10;
-pk1 b c
-10 10 10
-select count(*) from t1 where pk1 <= 10 order by pk1;
-count(*)
-11
-select count(*) from t1;
-count(*)
-2000
-begin;
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-ERROR 23000: Can't write; duplicate key in table 't1'
-SELECT * FROM t1 WHERE pk1=10;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-rollback;
-select * from t1 where pk1=1;
-pk1 b c
-1 1 1
-select * from t1 where pk1=10;
-pk1 b c
-10 10 10
-select count(*) from t1 where pk1 <= 10 order by pk1;
-count(*)
-11
-select count(*) from t1;
-count(*)
-2000
-begin;
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-ERROR 23000: Can't write; duplicate key in table 't1'
-SELECT * FROM t1 WHERE pk1=10;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-SELECT * FROM t1 WHERE pk1=10;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-commit;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-select * from t1 where pk1=1;
-pk1 b c
-1 1 1
-select * from t1 where pk1=10;
-pk1 b c
-10 10 10
-select count(*) from t1 where pk1 <= 10 order by pk1;
-count(*)
-11
-select count(*) from t1;
-count(*)
-2000
-begin;
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-ERROR 23000: Can't write; duplicate key in table 't1'
-INSERT INTO t1 values (4000, 40, 44);
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-rollback;
-select * from t1 where pk1=1;
-pk1 b c
-1 1 1
-select * from t1 where pk1=10;
-pk1 b c
-10 10 10
-select count(*) from t1 where pk1 <= 10 order by pk1;
-count(*)
-11
-select count(*) from t1;
-count(*)
-2000
-insert into t1 select * from t1 where b < 10 order by pk1;
-ERROR 23000: Can't write; duplicate key in table 't1'
-DELETE FROM t1 WHERE pk1=2;
-begin;
-INSERT IGNORE INTO t1 VALUES(1,2,3),(2,3,4);
-select * from t1 where pk1 < 3 order by pk1;
-pk1 b c
-0 0 0
-1 1 1
-2 3 4
-rollback;
-INSERT IGNORE INTO t1 VALUES(1,2,3),(2,3,4);
-select * from t1 where pk1 < 3 order by pk1;
-pk1 b c
-0 0 0
-1 1 1
-2 3 4
-REPLACE INTO t1 values(1, 78, 3);
-select * from t1 where pk1=1;
-pk1 b c
-1 78 3
-INSERT INTO t1 VALUES(1,1,1),(3,4,5) ON DUPLICATE KEY UPDATE b=79;
-select * from t1 where pk1 < 4 order by pk1;
-pk1 b c
-0 0 0
-1 79 3
-2 3 4
-3 79 3
-INSERT INTO t1 VALUES(1,1,1),(3,4,5) ON DUPLICATE KEY UPDATE b=pk1+c;
-select * from t1 where pk1 < 4 order by pk1;
-pk1 b c
-0 0 0
-1 4 3
-2 3 4
-3 6 3
-DELETE FROM t1 WHERE pk1 = 2 OR pk1 = 4 OR pk1 = 6;
-INSERT INTO t1 VALUES(1,1,1),(2,2,17),(3,4,5) ON DUPLICATE KEY UPDATE pk1=b;
-select * from t1 where pk1 = b and b != c order by pk1;
-pk1 b c
-2 2 17
-4 4 3
-6 6 3
-DELETE FROM t1;
-CREATE UNIQUE INDEX bi ON t1(b);
-INSERT INTO t1 VALUES
-(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
-(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
-INSERT INTO t1 VALUES(0,1,0),(21,21,21) ON DUPLICATE KEY UPDATE pk1=b+10,b=b+10;
-select * from t1 order by pk1;
-pk1 b c
-2 2 2
-3 3 3
-4 4 4
-5 5 5
-6 6 6
-7 7 7
-8 8 8
-9 9 9
-10 10 10
-11 11 1
-21 21 21
-DROP TABLE t1;
-CREATE TABLE t1(a INT) ENGINE=ndb;
-INSERT IGNORE INTO t1 VALUES (1);
-INSERT IGNORE INTO t1 VALUES (1);
-INSERT IGNORE INTO t1 SELECT a FROM t1;
-INSERT IGNORE INTO t1 SELECT a FROM t1;
-INSERT IGNORE INTO t1 SELECT a FROM t1;
-INSERT IGNORE INTO t1 VALUES (1);
-INSERT IGNORE INTO t1 VALUES (1);
-SELECT * FROM t1 ORDER BY a;
-a
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-DELETE FROM t1;
-CREATE UNIQUE INDEX ai ON t1(a);
-INSERT IGNORE INTO t1 VALUES (1);
-INSERT IGNORE INTO t1 VALUES (1);
-INSERT IGNORE INTO t1 VALUES (NULL),(2);
-SELECT * FROM t1 ORDER BY a;
-a
-NULL
-1
-2
-DROP TABLE t1;
-CREATE TABLE t1(pk INT NOT NULL PRIMARY KEY, a INT, UNIQUE (a)) ENGINE=ndb;
-INSERT IGNORE INTO t1 VALUES (1,1),(2,2),(3,3);
-INSERT IGNORE INTO t1 VALUES (4,NULL),(5,NULL),(6,NULL),(7,4);
-SELECT * FROM t1 ORDER BY pk;
-pk a
-1 1
-2 2
-3 3
-4 NULL
-5 NULL
-6 NULL
-7 4
-DROP TABLE t1;
-create table t1(a int primary key, b int, unique key(b)) engine=ndb;
-insert ignore into t1 values (1,0), (2,0), (2,null), (3,null);
-select * from t1 order by a;
-a b
-1 0
-2 NULL
-3 NULL
-drop table t1;
diff --git a/mysql-test/r/ndb_limit.result b/mysql-test/r/ndb_limit.result
deleted file mode 100644
index da1ec3b61c3..00000000000
--- a/mysql-test/r/ndb_limit.result
+++ /dev/null
@@ -1,72 +0,0 @@
-DROP TABLE IF EXISTS t2;
-CREATE TABLE t2 (
-a bigint unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-select count(*) from t2;
-count(*)
-10000
-delete from t2 limit 1;
-select count(*) from t2;
-count(*)
-9999
-delete from t2 limit 100;
-select count(*) from t2;
-count(*)
-9899
-delete from t2 limit 1000;
-select count(*) from t2;
-count(*)
-8899
-update t2 set c=12345678 limit 100;
-select count(*) from t2 where c=12345678;
-count(*)
-100
-select count(*) from t2 where c=12345678 limit 1000;
-count(*)
-100
-select * from t2 limit 0;
-a b c
-drop table t2;
-CREATE TABLE `t2` (
-`views` int(11) NOT NULL default '0',
-`clicks` int(11) NOT NULL default '0',
-`day` date NOT NULL default '0000-00-00',
-`hour` tinyint(4) NOT NULL default '0',
-`bannerid` smallint(6) NOT NULL default '0',
-`zoneid` smallint(6) NOT NULL default '0',
-`source` varchar(50) NOT NULL default '',
-PRIMARY KEY (`day`,`hour`,`bannerid`,`zoneid`,`source`),
-KEY `bannerid_day` (`bannerid`,`day`),
-KEY `zoneid` (`zoneid`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t2` VALUES
-( 1,0,'2004-09-17', 5,100,100,''),
-( 1,0,'2004-09-18', 7,100,100,''),
-( 17,0,'2004-09-27',20,132,100,''),
-( 4,0,'2004-09-16',23,132,100,''),
-( 86,0,'2004-09-18', 7,196,196,''),
-( 11,0,'2004-09-16',16,132,100,''),
-(140,0,'2004-09-18', 0,100,164,''),
-( 2,0,'2004-09-17', 7,132,100,''),
-(846,0,'2004-09-27',11,132,164,''),
-( 1,0,'2004-09-18', 8,132,100,''),
-( 22,0,'2004-09-27', 9,164,132,''),
-(711,0,'2004-09-27', 9,100,164,''),
-( 11,0,'2004-09-18', 0,196,132,''),
-( 41,0,'2004-09-27',15,196,132,''),
-( 57,0,'2004-09-18', 2,164,196,'');
-SELECT DATE_FORMAT(day, '%Y%m%d') as date, DATE_FORMAT(day, '%d-%m-%Y')
-as date_formatted FROM t2 GROUP BY day ORDER BY day DESC;
-date date_formatted
-20040927 27-09-2004
-20040918 18-09-2004
-20040917 17-09-2004
-20040916 16-09-2004
-SELECT DATE_FORMAT(day, '%Y%m%d') as date, DATE_FORMAT(day, '%d-%m-%Y')
-as date_formatted FROM t2 GROUP BY day ORDER BY day DESC LIMIT 2;
-date date_formatted
-20040927 27-09-2004
-20040918 18-09-2004
-drop table t2;
diff --git a/mysql-test/r/ndb_load.result b/mysql-test/r/ndb_load.result
deleted file mode 100644
index 416a350066b..00000000000
--- a/mysql-test/r/ndb_load.result
+++ /dev/null
@@ -1,80 +0,0 @@
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (word CHAR(20) NOT NULL PRIMARY KEY) ENGINE=NDB;
-LOAD DATA INFILE '../std_data_ln/words.dat' INTO TABLE t1 ;
-ERROR 23000: Can't write; duplicate key in table 't1'
-DROP TABLE t1;
-CREATE TABLE t1 (word CHAR(20) NOT NULL) ENGINE=NDB;
-LOAD DATA INFILE '../std_data_ln/words.dat' INTO TABLE t1 ;
-SELECT * FROM t1 ORDER BY word;
-word
-Aarhus
-Aarhus
-Aaron
-Aaron
-Ababa
-Ababa
-aback
-aback
-abaft
-abaft
-abandon
-abandon
-abandoned
-abandoned
-abandoning
-abandoning
-abandonment
-abandonment
-abandons
-abandons
-abase
-abased
-abasement
-abasements
-abases
-abash
-abashed
-abashes
-abashing
-abasing
-abate
-abated
-abatement
-abatements
-abater
-abates
-abating
-Abba
-abbe
-abbey
-abbeys
-abbot
-abbots
-Abbott
-abbreviate
-abbreviated
-abbreviates
-abbreviating
-abbreviation
-abbreviations
-Abby
-abdomen
-abdomens
-abdominal
-abduct
-abducted
-abduction
-abductions
-abductor
-abductors
-abducts
-Abe
-abed
-Abel
-Abelian
-Abelson
-Aberdeen
-Abernathy
-aberrant
-aberration
-DROP TABLE t1;
diff --git a/mysql-test/r/ndb_loaddatalocal.result b/mysql-test/r/ndb_loaddatalocal.result
deleted file mode 100644
index 1d15c608f03..00000000000
--- a/mysql-test/r/ndb_loaddatalocal.result
+++ /dev/null
@@ -1,46 +0,0 @@
-DROP TABLE IF EXISTS t1;
-create table t1(a int) engine=myisam;
-select * into outfile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' from t1;
-drop table t1;
-create table t1(a int) engine=ndb;
-load data local infile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' into table t1;
-select count(*) from t1;
-count(*)
-10000
-drop table t1;
-create table t1(a int) engine=myisam;
-insert into t1 values (1), (2), (2), (3);
-select * into outfile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' from t1;
-drop table t1;
-create table t1(a int primary key) engine=ndb;
-load data local infile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' into table t1;
-select * from t1 order by a;
-a
-1
-2
-3
-drop table t1;
-create table t1(a int) engine=myisam;
-insert into t1 values (1), (1), (2), (3);
-select * into outfile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' from t1;
-drop table t1;
-create table t1(a int primary key) engine=ndb;
-load data local infile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' into table t1;
-select * from t1 order by a;
-a
-1
-2
-3
-drop table t1;
-create table t1(a int) engine=myisam;
-insert into t1 values (1), (2), (3), (3);
-select * into outfile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' from t1;
-drop table t1;
-create table t1(a int primary key) engine=ndb;
-load data local infile 'MYSQLTEST_VARDIR/master-data/ndb_loaddatalocal.select_outfile' into table t1;
-select * from t1 order by a;
-a
-1
-2
-3
-drop table t1;
diff --git a/mysql-test/r/ndb_lock.result b/mysql-test/r/ndb_lock.result
deleted file mode 100644
index 9a2cea0f512..00000000000
--- a/mysql-test/r/ndb_lock.result
+++ /dev/null
@@ -1,189 +0,0 @@
-DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
-create table t1 (x integer not null primary key, y varchar(32)) engine = ndb;
-insert into t1 values (1,'one'), (2,'two');
-select * from t1 order by x;
-x y
-1 one
-2 two
-select * from t1 order by x;
-x y
-1 one
-2 two
-start transaction;
-insert into t1 values (3,'three');
-select * from t1 order by x;
-x y
-1 one
-2 two
-3 three
-start transaction;
-select * from t1 order by x;
-x y
-1 one
-2 two
-commit;
-select * from t1 order by x;
-x y
-1 one
-2 two
-3 three
-commit;
-drop table t1;
-create table t1 (pk integer not null primary key, u int not null, o int not null,
-unique(u), key(o)) engine = ndb;
-insert into t1 values (1,1,1), (2,2,2), (3,3,3), (4,4,4), (5,5,5);
-lock tables t1 write;
-delete from t1 where pk = 1;
-unlock tables;
-select * from t1 order by pk;
-pk u o
-2 2 2
-3 3 3
-4 4 4
-5 5 5
-insert into t1 values (1,1,1);
-lock tables t1 write;
-delete from t1 where u = 1;
-unlock tables;
-select * from t1 order by pk;
-pk u o
-2 2 2
-3 3 3
-4 4 4
-5 5 5
-insert into t1 values (1,1,1);
-lock tables t1 write;
-delete from t1 where o = 1;
-unlock tables;
-select * from t1 order by pk;
-pk u o
-2 2 2
-3 3 3
-4 4 4
-5 5 5
-insert into t1 values (1,1,1);
-drop table t1;
-create table t1 (x integer not null primary key, y varchar(32), z integer, key(z)) engine = ndb;
-insert into t1 values (1,'one',1);
-begin;
-select * from t1 where x = 1 for update;
-x y z
-1 one 1
-begin;
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-rollback;
-insert into t1 values (2,'two',2),(3,"three",3);
-begin;
-select * from t1 where x = 1 for update;
-x y z
-1 one 1
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-select * from t1 where x = 2 for update;
-x y z
-2 two 2
-rollback;
-commit;
-begin;
-select * from t1 where y = 'one' or y = 'three' for update;
-x y z
-# # #
-# # #
-begin;
-select * from t1 where x = 2 for update;
-x y z
-2 two 2
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-commit;
-begin;
-select * from t1 where y = 'one' or y = 'three' order by x for update;
-x y z
-1 one 1
-3 three 3
-begin;
-select * from t1 where x = 2 for update;
-x y z
-2 two 2
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-commit;
-begin;
-select * from t1 where z > 1 and z < 3 for update;
-x y z
-2 two 2
-begin;
-select * from t1 where x = 1 for update;
-x y z
-1 one 1
-select * from t1 where x = 2 for update;
-Got one of the listed errors
-rollback;
-commit;
-begin;
-select * from t1 where x = 1 lock in share mode;
-x y z
-1 one 1
-begin;
-select * from t1 where x = 1 lock in share mode;
-x y z
-1 one 1
-select * from t1 where x = 2 for update;
-x y z
-2 two 2
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-commit;
-begin;
-select * from t1 where y = 'one' or y = 'three' lock in share mode;
-x y z
-# # #
-# # #
-begin;
-select * from t1 where y = 'one' lock in share mode;
-x y z
-1 one 1
-select * from t1 where x = 2 for update;
-x y z
-2 two 2
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-commit;
-begin;
-select * from t1 where y = 'one' or y = 'three' order by x lock in share mode;
-x y z
-1 one 1
-3 three 3
-begin;
-select * from t1 where y = 'one' lock in share mode;
-x y z
-1 one 1
-select * from t1 where x = 2 for update;
-x y z
-2 two 2
-select * from t1 where x = 1 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-commit;
-begin;
-select * from t1 where z > 1 and z < 3 lock in share mode;
-x y z
-2 two 2
-begin;
-select * from t1 where z = 1 lock in share mode;
-x y z
-1 one 1
-select * from t1 where x = 1 for update;
-x y z
-1 one 1
-select * from t1 where x = 2 for update;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-rollback;
-commit;
-drop table t1;
diff --git a/mysql-test/r/ndb_minmax.result b/mysql-test/r/ndb_minmax.result
deleted file mode 100644
index cc0c238ac6e..00000000000
--- a/mysql-test/r/ndb_minmax.result
+++ /dev/null
@@ -1,120 +0,0 @@
-drop table if exists t1, t2;
-CREATE TABLE t1 (
-a int PRIMARY KEY
-) engine = ndb;
-INSERT INTO t1 VALUES (1);
-INSERT INTO t1 VALUES (2);
-INSERT INTO t1 VALUES (3);
-INSERT INTO t1 VALUES (4);
-INSERT INTO t1 VALUES (5);
-INSERT INTO t1 VALUES (6);
-select MAX(a) from t1;
-MAX(a)
-6
-select MAX(a) from t1;
-MAX(a)
-6
-select MAX(a) from t1;
-MAX(a)
-6
-select MAX(a) from t1;
-MAX(a)
-6
-select MIN(a) from t1;
-MIN(a)
-1
-select MIN(a) from t1;
-MIN(a)
-1
-select MIN(a) from t1;
-MIN(a)
-1
-select * from t1 order by a;
-a
-1
-2
-3
-4
-5
-6
-select MIN(a) from t1;
-MIN(a)
-1
-select MAX(a) from t1;
-MAX(a)
-6
-select MAX(a) from t1;
-MAX(a)
-6
-select * from t1 order by a;
-a
-1
-2
-3
-4
-5
-6
-drop table t1;
-CREATE TABLE t2 (
-a int PRIMARY KEY,
-b int not null,
-c int not null,
-KEY(b),
-UNIQUE(c)
-) engine = ndb;
-INSERT INTO t2 VALUES (1, 5, 1);
-INSERT INTO t2 VALUES (2, 2, 7);
-INSERT INTO t2 VALUES (3, 3, 3);
-INSERT INTO t2 VALUES (4, 4, 4);
-INSERT INTO t2 VALUES (5, 5, 5);
-INSERT INTO t2 VALUES (6, 6, 6);
-INSERT INTO t2 VALUES (7, 2, 10);
-INSERT INTO t2 VALUES (8, 10, 2);
-select MAX(a) from t2;
-MAX(a)
-8
-select MAX(b) from t2;
-MAX(b)
-10
-select MAX(c) from t2;
-MAX(c)
-10
-select MIN(a) from t2;
-MIN(a)
-1
-select MIN(b) from t2;
-MIN(b)
-2
-select MIN(c) from t2;
-MIN(c)
-1
-select * from t2 order by a;
-a b c
-1 5 1
-2 2 7
-3 3 3
-4 4 4
-5 5 5
-6 6 6
-7 2 10
-8 10 2
-select MIN(b) from t2;
-MIN(b)
-2
-select MAX(a) from t2;
-MAX(a)
-8
-select MAX(c) from t2;
-MAX(c)
-10
-select * from t2 order by a;
-a b c
-1 5 1
-2 2 7
-3 3 3
-4 4 4
-5 5 5
-6 6 6
-7 2 10
-8 10 2
-drop table t2;
diff --git a/mysql-test/r/ndb_multi.result b/mysql-test/r/ndb_multi.result
deleted file mode 100644
index 5d75722982f..00000000000
--- a/mysql-test/r/ndb_multi.result
+++ /dev/null
@@ -1,101 +0,0 @@
-drop table if exists t1, t2, t3, t4;
-flush status;
-create table t1 (a int) engine=ndbcluster;
-create table t2 (a int) engine=ndbcluster;
-insert into t1 value (2);
-insert into t2 value (3);
-select * from t1;
-a
-2
-select * from t2;
-a
-3
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-select * from t1;
-a
-2
-drop table t1;
-create table t1 (a int) engine=ndbcluster;
-insert into t1 value (2);
-select * from t1;
-a
-2
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-drop table t1;
-create table t1 (a int) engine=ndbcluster;
-insert into t1 value (2);
-flush table t1;
-select * from t1;
-a
-2
-flush status;
-select * from t1;
-a
-2
-update t1 set a=3 where a=2;
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 0
-create table t3 (a int not null primary key, b varchar(22),
-c int, last_col text) engine=ndb;
-insert into t3 values(1, 'Hi!', 89, 'Longtext column');
-create table t4 (pk int primary key, b int) engine=ndb;
-select * from t1;
-a
-3
-select * from t3;
-a b c last_col
-1 Hi! 89 Longtext column
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 2
-show tables like 't4';
-Tables_in_test (t4)
-t4
-show status like 'handler_discover%';
-Variable_name Value
-Handler_discover 3
-show tables;
-Tables_in_test
-t1
-t2
-t3
-t4
-drop table t1, t2, t3, t4;
-drop table t1, t3, t4;
-create table t1(c1 int key)ENGINE=MyISAM;
-insert into t1 values(1),(3),(5);
-select * from t1 order by c1;
-c1
-1
-3
-5
-create table t1(c1 int key)ENGINE=MyISAM;
-insert into t1 values(100),(344),(533);
-select * from t1 order by c1;
-c1
-100
-344
-533
-alter table t1 engine=ndb;
-show tables;
-Tables_in_test
-t1
-Warnings:
-Warning 1050 Local table test.t1 shadows ndb table
-select * from t1 order by c1;
-c1
-100
-344
-533
-drop table t1;
-select * from t1 order by c1;
-c1
-1
-3
-5
-drop table t1;
diff --git a/mysql-test/r/ndb_read_multi_range.result b/mysql-test/r/ndb_read_multi_range.result
deleted file mode 100644
index d18f4c1e65a..00000000000
--- a/mysql-test/r/ndb_read_multi_range.result
+++ /dev/null
@@ -1,426 +0,0 @@
-DROP TABLE IF EXISTS t1, t2, r1;
-create table t1 (
-a int primary key,
-b int not null,
-c int not null,
-index(b), unique index using hash(c)
-) engine = ndb;
-insert into t1 values
-(1,2,1),(2,3,2),(3,4,3),(4,5,4),
-(5,2,12),(6,3,11),(7,4,10),(8,5,9),
-(9,2,8),(10,3,7),(11,4,6),(12,5,5);
-create table r1 as select * from t1 where a in (2,8,12);
-select * from r1 order by a;
-a b c
-2 3 2
-8 5 9
-12 5 5
-drop table r1;
-create table r1 as select * from t1 where b in (1,2,5);
-select * from r1 order by a;
-a b c
-1 2 1
-4 5 4
-5 2 12
-8 5 9
-9 2 8
-12 5 5
-drop table r1;
-create table r1 as select * from t1 where c in (2,8,12);
-select * from r1 order by a;
-a b c
-2 3 2
-5 2 12
-9 2 8
-drop table r1;
-create table r1 as select * from t1 where a in (2,8) or (a > 11) or (a <= 1);
-select * from r1 order by a;
-a b c
-1 2 1
-2 3 2
-8 5 9
-12 5 5
-drop table r1;
-create table r1 as select * from t1 where a in (33,8,12);
-select * from r1 order by a;
-a b c
-8 5 9
-12 5 5
-drop table r1;
-create table r1 as select * from t1 where a in (2,33,8,12,34);
-select * from r1 order by a;
-a b c
-2 3 2
-8 5 9
-12 5 5
-drop table r1;
-create table r1 as select * from t1 where b in (1,33,5);
-select * from r1 order by a;
-a b c
-4 5 4
-8 5 9
-12 5 5
-drop table r1;
-select * from t1 where b in (1,33,5) order by a;
-a b c
-4 5 4
-8 5 9
-12 5 5
-create table r1 as select * from t1 where b in (45,1,33,5,44);
-select * from r1 order by a;
-a b c
-4 5 4
-8 5 9
-12 5 5
-drop table r1;
-select * from t1 where b in (45,22) order by a;
-a b c
-create table r1 as select * from t1 where c in (2,8,33);
-select * from r1 order by a;
-a b c
-2 3 2
-9 2 8
-drop table r1;
-create table r1 as select * from t1 where c in (13,2,8,33,12);
-select * from r1 order by a;
-a b c
-2 3 2
-5 2 12
-9 2 8
-drop table r1;
-select * from t1 where a in (33,8,12) order by a;
-a b c
-8 5 9
-12 5 5
-select * from t1 where a in (33,34,35) order by a;
-a b c
-select * from t1 where a in (2,8) or (a > 11) or (a <= 1) order by a;
-a b c
-1 2 1
-2 3 2
-8 5 9
-12 5 5
-select * from t1 where b in (6,7) or (b <= 5) or (b >= 10) order by b,a;
-a b c
-1 2 1
-5 2 12
-9 2 8
-2 3 2
-6 3 11
-10 3 7
-3 4 3
-7 4 10
-11 4 6
-4 5 4
-8 5 9
-12 5 5
-select * from t1 where c in (13,2,8,33,12) order by c,a;
-a b c
-2 3 2
-9 2 8
-5 2 12
-drop table t1;
-create table t1 (
-a int not null,
-b int not null,
-c int not null,
-d int not null,
-e int not null,
-primary key (a,b,c,d), index (d)
-) engine = ndb;
-insert into t1 values
-(1,2,1,1,1),(2,3,2,3,1),(3,4,3,1,1),(4,5,4,7,1),
-(5,2,12,12,1),(6,3,11,1,1),(7,4,10,3,1),(8,5,9,5,1),
-(9,2,8,6,1),(10,3,7,5,1),(11,4,6,3,1),(12,5,5,2,1),
-(1,2,1,2,1),
-(1,2,1,3,1),
-(1,2,1,4,1),
-(1,2,1,5,1);
-create table r1 as select * from t1
-where a=1 and b=2 and c=1 and d in (1,4,3,2);
-select * from r1 order by a,b,c,d;
-a b c d e
-1 2 1 1 1
-1 2 1 2 1
-1 2 1 3 1
-1 2 1 4 1
-drop table r1;
-update t1 set e = 100
-where d in (12,6,7);
-select * from t1 where d in (12,6,7) order by a,b,c,d;
-a b c d e
-4 5 4 7 100
-5 2 12 12 100
-9 2 8 6 100
-select * from t1 where d not in (12,6,7) and e = 100;
-a b c d e
-update t1
-set e = 101
-where a=1 and
-b=2 and
-c=1 and
-d in (1,4,3,2);
-select *
-from t1
-where a=1 and b=2 and c=1 and d in (1,4,3,2)
-order by a,b,c,d;
-a b c d e
-1 2 1 1 101
-1 2 1 2 101
-1 2 1 3 101
-1 2 1 4 101
-select *
-from t1
-where not (a=1 and b=2 and c=1 and d in (1,4,3,2))
-and e=101;
-a b c d e
-update t1
-set e =
-(case d
-when 12 then 112
-when 6 then 106
-when 7 then 107
-end)
-where d in (12,6,7);
-select * from t1 where d in (12,6,7) order by a,b,c,d;
-a b c d e
-4 5 4 7 107
-5 2 12 12 112
-9 2 8 6 106
-update t1
-set e =
-(case d
-when 1 then 111
-when 4 then 444
-when 3 then 333
-when 2 then 222
-end)
-where a=1 and
-b=2 and
-c=1 and
-d in (1,4,3,2);
-select *
-from t1
-where a=1 and b=2 and c=1 and d in (1,4,3,2)
-order by a,b,c,d;
-a b c d e
-1 2 1 1 111
-1 2 1 2 222
-1 2 1 3 333
-1 2 1 4 444
-delete from t1 where d in (12,6,7);
-select * from t1 where d in (12,6,7);
-a b c d e
-drop table t1;
-create table t1 (
-a int not null primary key,
-b int,
-c int,
-d int,
-unique index (b),
-index(c)
-) engine = ndb;
-insert into t1 values
-(1,null,1,1),
-(2,2,2,2),
-(3,null,null,3),
-(4,4,null,4),
-(5,null,5,null),
-(6,6,6,null),
-(7,null,null,null),
-(8,8,null,null),
-(9,null,9,9),
-(10,10,10,10),
-(11,null,null,11),
-(12,12,null,12),
-(13,null,13,null),
-(14,14,14,null),
-(15,null,null,null),
-(16,16,null,null);
-create table t2 as select * from t1 where a in (5,6,7,8,9,10);
-select * from t2 order by a;
-a b c d
-5 NULL 5 NULL
-6 6 6 NULL
-7 NULL NULL NULL
-8 8 NULL NULL
-9 NULL 9 9
-10 10 10 10
-drop table t2;
-create table t2 as select * from t1 where b in (5,6,7,8,9,10);
-select * from t2 order by a;
-a b c d
-6 6 6 NULL
-8 8 NULL NULL
-10 10 10 10
-drop table t2;
-create table t2 as select * from t1 where c in (5,6,7,8,9,10);
-select * from t2 order by a;
-a b c d
-5 NULL 5 NULL
-6 6 6 NULL
-9 NULL 9 9
-10 10 10 10
-drop table t2;
-drop table t1;
-CREATE TABLE t1 (
-a int(11) NOT NULL,
-b int(11) NOT NULL,
-c datetime default NULL,
-PRIMARY KEY (a),
-KEY idx_bc (b,c)
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES
-(406989,67,'2006-02-23 17:08:46'), (150078,67,'2005-10-26 11:17:45'),
-(406993,67,'2006-02-27 11:20:57'), (245655,67,'2005-12-08 15:59:08'),
-(406994,67,'2006-02-27 11:26:46'), (256,67,NULL),
-(398341,67,'2006-02-20 04:48:44'), (254,67,NULL),(1120,67,NULL),
-(406988,67,'2006-02-23 17:07:22'), (255,67,NULL),
-(398340,67,'2006-02-20 04:38:53'),(406631,67,'2006-02-23 10:49:42'),
-(245653,67,'2005-12-08 15:59:07'),(406992,67,'2006-02-24 16:47:18'),
-(245654,67,'2005-12-08 15:59:08'),(406995,67,'2006-02-28 11:55:00'),
-(127261,67,'2005-10-13 12:17:58'),(406991,67,'2006-02-24 16:42:32'),
-(245652,67,'2005-12-08 15:58:27'),(398545,67,'2006-02-20 04:53:13'),
-(154504,67,'2005-10-28 11:53:01'),(9199,67,NULL),(1,67,'2006-02-23 15:01:35'),
-(223456,67,NULL),(4101,67,NULL),(1133,67,NULL),
-(406990,67,'2006-02-23 18:01:45'),(148815,67,'2005-10-25 15:34:17'),
-(148812,67,'2005-10-25 15:30:01'),(245651,67,'2005-12-08 15:58:27'),
-(154503,67,'2005-10-28 11:52:38');
-create table t11 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 asc;
-create table t12 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 desc;
-create table t21 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 asc;
-create table t22 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 desc;
-select * from t11 order by 1,2,3;
-a b c
-254 67 NULL
-255 67 NULL
-256 67 NULL
-1120 67 NULL
-1133 67 NULL
-4101 67 NULL
-9199 67 NULL
-223456 67 NULL
-select * from t12 order by 1,2,3;
-a b c
-254 67 NULL
-255 67 NULL
-256 67 NULL
-1120 67 NULL
-1133 67 NULL
-4101 67 NULL
-9199 67 NULL
-223456 67 NULL
-select * from t21 order by 1,2,3;
-a b c
-1 67 2006-02-23 15:01:35
-254 67 NULL
-255 67 NULL
-256 67 NULL
-1120 67 NULL
-1133 67 NULL
-4101 67 NULL
-9199 67 NULL
-223456 67 NULL
-245651 67 2005-12-08 15:58:27
-245652 67 2005-12-08 15:58:27
-245653 67 2005-12-08 15:59:07
-245654 67 2005-12-08 15:59:08
-245655 67 2005-12-08 15:59:08
-398340 67 2006-02-20 04:38:53
-398341 67 2006-02-20 04:48:44
-398545 67 2006-02-20 04:53:13
-406631 67 2006-02-23 10:49:42
-406988 67 2006-02-23 17:07:22
-406989 67 2006-02-23 17:08:46
-406990 67 2006-02-23 18:01:45
-406991 67 2006-02-24 16:42:32
-406992 67 2006-02-24 16:47:18
-406993 67 2006-02-27 11:20:57
-406994 67 2006-02-27 11:26:46
-406995 67 2006-02-28 11:55:00
-select * from t22 order by 1,2,3;
-a b c
-1 67 2006-02-23 15:01:35
-254 67 NULL
-255 67 NULL
-256 67 NULL
-1120 67 NULL
-1133 67 NULL
-4101 67 NULL
-9199 67 NULL
-223456 67 NULL
-245651 67 2005-12-08 15:58:27
-245652 67 2005-12-08 15:58:27
-245653 67 2005-12-08 15:59:07
-245654 67 2005-12-08 15:59:08
-245655 67 2005-12-08 15:59:08
-398340 67 2006-02-20 04:38:53
-398341 67 2006-02-20 04:48:44
-398545 67 2006-02-20 04:53:13
-406631 67 2006-02-23 10:49:42
-406988 67 2006-02-23 17:07:22
-406989 67 2006-02-23 17:08:46
-406990 67 2006-02-23 18:01:45
-406991 67 2006-02-24 16:42:32
-406992 67 2006-02-24 16:47:18
-406993 67 2006-02-27 11:20:57
-406994 67 2006-02-27 11:26:46
-406995 67 2006-02-28 11:55:00
-DROP TABLE t1, t11, t12, t21, t22;
-CREATE TABLE t1 (id varchar(255) NOT NULL,
-tag int(11) NOT NULL,
-doc text NOT NULL,
-type varchar(150) NOT NULL,
-modified timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
-PRIMARY KEY (id)
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES ('sakila',1,'Some text goes here','text',CURRENT_TIMESTAMP);
-SELECT id, tag, doc, type FROM t1 WHERE id IN ('flipper','orka');
-id tag doc type
-SELECT id, tag, doc, type FROM t1 WHERE id IN ('flipper','sakila');
-id tag doc type
-sakila 1 Some text goes here text
-DROP TABLE t1;
-CREATE TABLE t1 (
-var1 int(2) NOT NULL,
-var2 int(2) NOT NULL,
-PRIMARY KEY (var1)
-) ENGINE=ndbcluster DEFAULT CHARSET=ascii CHECKSUM=1;
-CREATE TABLE t2 (
-var1 int(2) NOT NULL,
-var2 int(2) NOT NULL,
-PRIMARY KEY (var1)
-) ENGINE=MyISAM DEFAULT CHARSET=ascii CHECKSUM=1;
-CREATE TRIGGER testtrigger
-AFTER UPDATE ON t1 FOR EACH ROW BEGIN
-REPLACE INTO t2 SELECT * FROM t1 WHERE t1.var1 = NEW.var1;END|
-INSERT INTO t1 VALUES (1,1),(2,2),(3,3);
-UPDATE t1 SET var2 = 9 WHERE var1 IN(1,2,3);
-DROP TRIGGER testtrigger;
-DROP TABLE t1, t2;
-create table t2 (a int, b int, primary key (a), key ab (a,b)) engine=ndbcluster;
-insert into t2 values (1,1), (10,10);
-select * from t2 use index (ab) where a in(1,10) order by a;
-a b
-1 1
-10 10
-drop table t2;
-create table t1 (id int primary key) engine ndb;
-insert into t1 values (1), (2), (3);
-create table t2 (id int primary key) engine ndb;
-insert into t2 select id from t1;
-create trigger kaboom after delete on t1
-for each row begin
-delete from t2 where id=old.id;
-end|
-select * from t1 order by id;
-id
-1
-2
-3
-delete from t1 where id in (1,2);
-select * from t2 order by id;
-id
-3
-drop trigger kaboom;
-drop table t1;
diff --git a/mysql-test/r/ndb_rename.result b/mysql-test/r/ndb_rename.result
deleted file mode 100644
index cacef136311..00000000000
--- a/mysql-test/r/ndb_rename.result
+++ /dev/null
@@ -1,14 +0,0 @@
-DROP TABLE IF EXISTS t1,t2;
-drop database if exists mysqltest;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL,
-attr2 INT,
-attr3 VARCHAR(10),
-INDEX i1(attr1)
-) ENGINE=ndbcluster;
-alter table t1 rename t2;
-create database ndbtest;
-alter table t2 rename ndbtest.t2;
-drop table ndbtest.t2;
-drop database ndbtest;
diff --git a/mysql-test/r/ndb_replace.result b/mysql-test/r/ndb_replace.result
deleted file mode 100644
index 4d63c397d60..00000000000
--- a/mysql-test/r/ndb_replace.result
+++ /dev/null
@@ -1,99 +0,0 @@
-drop table if exists t1,t2;
-CREATE TABLE t1 (
-gesuchnr int(11) DEFAULT '0' NOT NULL,
-benutzer_id int(11) DEFAULT '0' NOT NULL,
-PRIMARY KEY (gesuchnr,benutzer_id)
-) engine=ndbcluster;
-replace into t1 (gesuchnr,benutzer_id) values (2,1);
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-insert into t1 (gesuchnr, benutzer_id) value (3,2);
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-insert into t1 (gesuchnr,benutzer_id) values (1,1);
-ERROR 23000: Duplicate entry '1-1' for key 1
-replace into t1 (gesuchnr,benutzer_id) values (1,1);
-select * from t1 order by gesuchnr;
-gesuchnr benutzer_id
-1 1
-2 1
-3 2
-drop table t1;
-CREATE TABLE t1(i INT PRIMARY KEY AUTO_INCREMENT,
-j INT,
-k INT,
-UNIQUE INDEX(j)
-) ENGINE = ndb;
-INSERT INTO t1 VALUES (1,1,23),(2,2,24);
-REPLACE INTO t1 (j,k) VALUES (1,42);
-REPLACE INTO t1 (i,j) VALUES (17,2);
-SELECT * from t1 ORDER BY i;
-i j k
-3 1 42
-17 2 NULL
-DROP TABLE t1;
-CREATE TABLE t2 (a INT(11) NOT NULL,
-b INT(11) NOT NULL,
-c INT(11) NOT NULL,
-x TEXT,
-y TEXT,
-z TEXT,
-id INT(10) unsigned NOT NULL AUTO_INCREMENT,
-i INT(11) DEFAULT NULL,
-PRIMARY KEY (id),
-UNIQUE KEY a (a,b,c)
-) ENGINE=ndbcluster;
-REPLACE INTO t2 (a,b,c,x,y,z,i) VALUES (1,1,1,'a','a','a',1),(1,1,1,'b','b','b',2), (1,1,1,'c','c','c',3);
-SELECT * FROM t2 ORDER BY id;
-a b c x y z id i
-1 1 1 c c c 3 3
-REPLACE INTO t2(a,b,c,x,y,z,i) values (1,1,1,'a','a','a',1);
-REPLACE INTO t2(a,b,c,x,y,z,i) values (1,1,1,'b','b','b',2);
-SELECT * FROM t2 ORDER BY id;
-a b c x y z id i
-1 1 1 b b b 5 2
-DROP TABLE t2;
-drop table if exists t1;
-create table t1 (pk int primary key, apk int unique, data int) engine=ndbcluster;
-insert into t1 values (1, 1, 1), (2, 2, 2), (3, 3, 3);
-replace into t1 (pk, apk) values (4, 1), (5, 2);
-select * from t1 order by pk;
-pk apk data
-3 3 3
-4 1 NULL
-5 2 NULL
-delete from t1;
-insert into t1 values (1, 1, 1), (2, 2, 2), (3, 3, 3);
-replace into t1 (pk, apk) values (1, 4), (2, 5);
-select * from t1 order by pk;
-pk apk data
-1 4 NULL
-2 5 NULL
-3 3 3
-delete from t1;
-insert into t1 values (1, 1, 1), (4, 4, 4), (6, 6, 6);
-load data infile '../std_data_ln/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (pk, apk);
-select * from t1 order by pk;
-pk apk data
-1 1 1
-3 4 NULL
-5 6 NULL
-delete from t1;
-insert into t1 values (1, 1, 1), (3, 3, 3), (5, 5, 5);
-load data infile '../std_data_ln/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (pk, apk);
-select * from t1 order by pk;
-pk apk data
-1 1 1
-3 4 NULL
-5 6 NULL
-delete from t1;
-insert into t1 values (1, 1, 1), (2, 2, 2), (3, 3, 3);
-replace into t1 (pk, apk) select 4, 1;
-replace into t1 (pk, apk) select 2, 4;
-select * from t1 order by pk;
-pk apk data
-2 4 NULL
-3 3 3
-4 1 NULL
-drop table t1;
-End of 5.0 tests.
diff --git a/mysql-test/r/ndb_restore.result b/mysql-test/r/ndb_restore.result
deleted file mode 100644
index 05a94b143f3..00000000000
--- a/mysql-test/r/ndb_restore.result
+++ /dev/null
@@ -1,308 +0,0 @@
-use test;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
-drop table if exists t1_c,t2_c,t3_c,t4_c,t5_c,t6_c,t7_c,t8_c,t9_c,t10_c;
-CREATE TABLE `t1_c` (
-`capgoaledatta` mediumint(5) unsigned NOT NULL auto_increment,
-`goaledatta` char(2) NOT NULL default '',
-`maturegarbagefa` varchar(32) NOT NULL default '',
-PRIMARY KEY (`capgoaledatta`,`goaledatta`,`maturegarbagefa`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t1_c` VALUES (2,'3','q3plus.qt'),(400,'4','q3plus.qt'),(1,'3','q3.net'),(3,'4','q3.net'),(3000,'20','threetrees.qt');
-CREATE TABLE `t2_c` (
-`capgotod` smallint(5) unsigned NOT NULL auto_increment,
-`gotod` smallint(5) unsigned NOT NULL default '0',
-`goaledatta` char(2) default NULL,
-`maturegarbagefa` varchar(32) default NULL,
-`descrpooppo` varchar(64) default NULL,
-`svcutonsa` varchar(64) NOT NULL default '',
-PRIMARY KEY (`capgotod`),
-KEY `i quadaddsvr` (`gotod`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t2_c` VALUES (500,4,'','q3.net','addavp:MK_CASELECTOR=1','postorod rattoaa'),(2,1,'4','','addavp:MK_BRANDTAD=345','REDS Brandtad'),(3,2,'4','q3.net','execorder','fixedRatediPO REDS'),(1,1,'3','','addavp:MK_BRANDTAD=123','TEST Brandtad'),(6,5,'','told.q3.net','addavp:MK_BRANDTAD=123','Brandtad Toldzone'),(4,3,'3','q3.net','addavp:MK_POOLHINT=2','ratedi PO TEST');
-CREATE TABLE `t3_c` (
-`CapGoaledatta` smallint(5) unsigned NOT NULL default '0',
-`capgotod` smallint(5) unsigned NOT NULL default '0',
-PRIMARY KEY (`capgotod`,`CapGoaledatta`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t3_c` VALUES (5,3),(2,4),(5,4),(1,3);
-CREATE TABLE `t4_c` (
-`capfa` bigint(20) unsigned NOT NULL auto_increment,
-`realm` varchar(32) NOT NULL default '',
-`authpwchap` varchar(32) default NULL,
-`fa` varchar(32) NOT NULL default '',
-`payyingatta` tinyint(4) NOT NULL default '0',
-`status` char(1) default NULL,
-PRIMARY KEY (`fa`,`realm`),
-KEY `capfa` (`capfa`),
-KEY `i_quadentity` (`fa`,`realm`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t4_c` VALUES (18,'john.smith','q3.net','dessjohn.smith',0,NULL),(21,'quad_katt_with_brandtad','q3.net','acne',0,NULL),(2200,'quad_katt_carattoaa','q3.net','acne',0,NULL),(26,'436462612809','sqasdt.q3.net','N/A',0,'6'),(19,'john','smith.qt','dessjohn',0,NULL),(33,'436643196120','sqasdt.q3.net','N/A',1,'6'),(28,'436642900019','sqasdt.q3.net','N/A',0,'6'),(30,'436462900209','sqasdt.q3.net','N/A',0,'6'),(16,'436640006666','sqasdt.q3.net','',0,NULL),(19,'dette','el-redun.com','dessdette',0,NULL),(12,'quad_kattPP','q3.net','acne',2,NULL),(14,'436640008888','sqasdt.q3.net','',0,NULL),(29,'463624900028','sqasdt.q3.net','N/A',0,'6'),(15,'436640099099','sqasdt.q3.net','',0,NULL),(13,'pap','q3plus.qt','acne',1,NULL),(19,'436642612091','sqasdt.q3.net','N/A',0,'6'),(12,'quad_katt','q3.net','acne',0,NULL),(11,'quad_kattVK','q3.net','acne',1,NULL),(32000,'463641969502','sqasdt.q3.net','N/A',1,'6'),(20,'joe','q3.net','joedesswd',0,NULL),(290000000,'436642900034','sqasdt.q3.net','N/A',0,'6'),(25,'contind','armerde.qt','acne',1,NULL);
-CREATE TABLE `t5_c` (
-`capfa` bigint(20) unsigned NOT NULL default '0',
-`gotod` smallint(5) unsigned NOT NULL default '0',
-`orderutonsa` varchar(64) NOT NULL default '',
-PRIMARY KEY (`capfa`,`gotod`,`orderutonsa`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t5_c` VALUES (21,2,''),(21,1,''),(22,4,'');
-CREATE TABLE `t6_c` (
-`capfa_parent` bigint(20) unsigned NOT NULL default '0',
-`capfa_child` bigint(20) unsigned NOT NULL default '0',
-`relatta` smallint(5) unsigned NOT NULL default '0',
-PRIMARY KEY (`capfa_child`,`capfa_parent`,`relatta`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t6_c` VALUES (15,16,0),(19,20,0),(18326932092909551615,30,0),(26,29,0),(18326932092909551615,29,0),(19,18,0),(26,28,0),(12,14,0);
-CREATE TABLE `t7_c` (
-`dardpo` char(15) NOT NULL default '',
-`dardtestard` tinyint(3) unsigned NOT NULL auto_increment,
-`FastFA` char(5) NOT NULL default '',
-`FastCode` char(6) NOT NULL default '',
-`Fastca` char(1) NOT NULL default '',
-`Fastmag` char(1) NOT NULL default '',
-`Beareratta` char(2) NOT NULL default '',
-PRIMARY KEY (`dardpo`,`dardtestard`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t7_c` VALUES ('2.6.2.4',24,'CECHP','54545','0','0','5'),('2.2.5.4',26,'CANFA','33223','1','1','4'),('4.3.2.4',28,'ITALD','54222','1','0','5'),('129..0.0.eins',28,'G','99999','1','1','5'),('1.1.1.1',24,'AUTPT','32323','0','1','3');
-CREATE TABLE `t8_c` (
-`kattjame` varchar(32) NOT NULL default '',
-`realm` varchar(32) NOT NULL default '',
-`realm_entered` varchar(32) NOT NULL default '',
-`maturegarbagefa` varchar(32) NOT NULL default '',
-`hunderaaarbagefa_parent` varchar(32) NOT NULL default '',
-`kattjame_entered` varchar(32) NOT NULL default '',
-`hunderaaarbagefa` varchar(32) NOT NULL default '',
-`gest` varchar(16) default NULL,
-`hassetino` varchar(16) NOT NULL default '',
-`aaaproxysessfa` varchar(255) default NULL,
-`autologonallowed` char(1) default NULL,
-`squardporoot` varchar(15) NOT NULL default '',
-`naspo` varchar(15) default NULL,
-`beareratta` char(2) default NULL,
-`fastCode` varchar(6) default NULL,
-`fastFA` varchar(5) default NULL,
-`fastca` char(1) default NULL,
-`fastmag` char(1) default NULL,
-`lastupdate` datetime default NULL,
-`hassetistart` datetime NOT NULL default '0000-00-00 00:00:00',
-`accthassetitime` int(10) unsigned default NULL,
-`acctoutputoctets` bigint(20) unsigned default NULL,
-`acctinputoctets` bigint(20) unsigned default NULL,
-PRIMARY KEY (`kattjame`,`hunderaaarbagefa`,`hassetistart`,`hassetino`),
-KEY `squardporoot` (`squardporoot`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t8_c` VALUES ('4tt45345235','pap','q3plus.qt','q3plus.qt','q3.net','436643196120','436643196929','8956234534568968','5524595699','uxasmt21.net.acne.qt/481889229462692422','','1.1.1.1','2.2.4.6','4','86989','34','x','x','2012-03-12 12:55:34','2012-12-05 11:20:04',3223433,3369,9565),('4545435545','john','q3.net','q3.net','acne.li','436643196120','436643196929','45345234568968','995696699','uxasmt21.net.acne.qt/481889229462692423','','1.1.1.1','2.2.9.8','2','86989','34','x','x','2012-03-12 11:35:03','2012-12-05 08:50:04',8821923,169,3565),('versteckter_q3net_katt','joe','q3.net','elredun.com','q3.net','436643196120','436643196939','91341234568968','695595699','uxasmt21.net.acne.qt/481889229462692421','','1.1.1.1','2.5.2.5','3','86989','34','x','x','2012-03-12 18:35:04','2012-12-05 12:35:04',1923123,9569,6565);
-CREATE TABLE `t9_c` (
-`kattjame` varchar(32) NOT NULL default '',
-`kattjame_entered` varchar(32) NOT NULL default '',
-`realm` varchar(32) NOT NULL default '',
-`realm_entered` varchar(32) NOT NULL default '',
-`maturegarbagefa` varchar(32) NOT NULL default '',
-`hunderaaarbagefa` varchar(32) NOT NULL default '',
-`hunderaaarbagefa_parent` varchar(32) NOT NULL default '',
-`gest` varchar(16) default NULL,
-`hassetino` varchar(16) NOT NULL default '',
-`squardporoot` varchar(15) NOT NULL default '',
-`naspo` varchar(15) default NULL,
-`beareratta` char(2) default NULL,
-`fastCode` varchar(6) default NULL,
-`fastFA` varchar(5) default NULL,
-`fastca` char(1) default NULL,
-`fastmag` char(1) default NULL,
-`lastupdate` datetime default NULL,
-`hassetistart` datetime NOT NULL default '0000-00-00 00:00:00',
-`accthassetitime` int(10) unsigned default NULL,
-`actcoutpuocttets` bigint(20) unsigned default NULL,
-`actinputocctets` bigint(20) unsigned default NULL,
-`terminateraste` tinyint(3) unsigned default NULL,
-PRIMARY KEY (`kattjame`,`hunderaaarbagefa`,`hassetistart`,`hassetino`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1;
-INSERT INTO `t9_c` VALUES ('3g4jh8gar2t','joe','q3.net','elredun.com','q3.net','436643316120','436643316939','91341234568968','695595699','1.1.1.1','2.2.6.2','3','86989','34','x','x','2012-03-12 18:35:04','2012-12-05 12:35:04',3123123,9569,6565,1),('4tt45345235','pap','q3plus.qt','q3plus.qt','q3.net','436643316120','436643316939','8956234534568968','5254595969','1.1.1.1','8.6.2.2','4','86989','34','x','x','2012-03-12 12:55:34','2012-12-05 11:20:04',3223433,3369,9565,2),('4545435545','john','q3.net','q3.net','acne.li','436643316120','436643316939','45345234568968','995696699','1.1.1.1','2.9.9.2','2','86998','34','x','x','2012-03-12 11:35:03','2012-12-05 08:50:04',8823123,169,3565,3);
-create table t10_c (a int auto_increment key) ENGINE=ndbcluster;
-insert into t10_c values (1),(2),(3);
-insert into t10_c values (10000),(2000),(3000);
-create table t1 engine=myisam as select * from t1_c;
-create table t2 engine=myisam as select * from t2_c;
-create table t3 engine=myisam as select * from t3_c;
-create table t4 engine=myisam as select * from t4_c;
-create table t5 engine=myisam as select * from t5_c;
-create table t6 engine=myisam as select * from t6_c;
-create table t7 engine=myisam as select * from t7_c;
-create table t8 engine=myisam as select * from t8_c;
-create table t9 engine=myisam as select * from t9_c;
-create table t10 engine=myisam as select * from t10_c;
-CREATE TEMPORARY TABLE IF NOT EXISTS test.backup_info
-(id INT, backup_id INT) ENGINE = MEMORY;
-DELETE FROM test.backup_info;
-LOAD DATA INFILE '<MYSQLTEST_VARDIR>/tmp.dat'
-INTO TABLE test.backup_info FIELDS TERMINATED BY ',';
-SELECT @the_backup_id:=backup_id FROM test.backup_info;
-@the_backup_id:=backup_id
-<the_backup_id>
-DROP TABLE test.backup_info;
-drop table t1_c,t2_c,t3_c,t4_c,t5_c,t6_c,t7_c,t8_c,t9_c, t10_c;
-show tables;
-Tables_in_test
-t1
-t10
-t2
-t3
-t4
-t5
-t6
-t7
-t8
-t9
-t3_c
-t9_c
-t1_c
-t8_c
-t7_c
-t6_c
-t5_c
-t4_c
-t10_c
-t2_c
-select count(*) from t1;
-count(*)
-5
-select count(*) from t1_c;
-count(*)
-5
-select count(*)
-from (select * from t1 union
-select * from t1_c) a;
-count(*)
-5
-select count(*) from t2;
-count(*)
-6
-select count(*) from t2_c;
-count(*)
-6
-select count(*)
-from (select * from t2 union
-select * from t2_c) a;
-count(*)
-6
-select count(*) from t3;
-count(*)
-4
-select count(*) from t3_c;
-count(*)
-4
-select count(*)
-from (select * from t3 union
-select * from t3_c) a;
-count(*)
-4
-select count(*) from t4;
-count(*)
-22
-select count(*) from t4_c;
-count(*)
-22
-select count(*)
-from (select * from t4 union
-select * from t4_c) a;
-count(*)
-22
-select count(*) from t5;
-count(*)
-3
-select count(*) from t5_c;
-count(*)
-3
-select count(*)
-from (select * from t5 union
-select * from t5_c) a;
-count(*)
-3
-select count(*) from t6;
-count(*)
-8
-select count(*) from t6_c;
-count(*)
-8
-select count(*)
-from (select * from t6 union
-select * from t6_c) a;
-count(*)
-8
-select count(*) from t7;
-count(*)
-5
-select count(*) from t7_c;
-count(*)
-5
-select count(*)
-from (select * from t7 union
-select * from t7_c) a;
-count(*)
-5
-select count(*) from t8;
-count(*)
-3
-select count(*) from t8_c;
-count(*)
-3
-select count(*)
-from (select * from t8 union
-select * from t8_c) a;
-count(*)
-3
-select count(*) from t9;
-count(*)
-3
-select count(*) from t9_c;
-count(*)
-3
-select count(*)
-from (select * from t9 union
-select * from t9_c) a;
-count(*)
-3
-select * from t10_c order by a;
-a
-1
-2
-3
-2000
-3000
-10000
-select max(capgoaledatta) from t1_c;
-max(capgoaledatta)
-3000
-select auto_increment from information_schema.tables
-where table_name = 't1_c';
-auto_increment
-3001
-select max(capgotod) from t2_c;
-max(capgotod)
-500
-select auto_increment from information_schema.tables
-where table_name = 't2_c';
-auto_increment
-501
-select max(capfa) from t4_c;
-max(capfa)
-290000000
-select auto_increment from information_schema.tables
-where table_name = 't4_c';
-auto_increment
-290000001
-select max(dardtestard) from t7_c;
-max(dardtestard)
-28
-select auto_increment from information_schema.tables
-where table_name = 't7_c';
-auto_increment
-29
-select max(a) from t10_c;
-max(a)
-10000
-select auto_increment from information_schema.tables
-where table_name = 't10_c';
-auto_increment
-10001
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9, t10;
-drop table if exists t1_c,t2_c,t3_c,t4_c,t5_c,t6_c,t7_c,t8_c,t9_c, t10_c;
-520093696,<the_backup_id>
diff --git a/mysql-test/r/ndb_restore_different_endian_data.result b/mysql-test/r/ndb_restore_different_endian_data.result
deleted file mode 100644
index e1efefb751a..00000000000
--- a/mysql-test/r/ndb_restore_different_endian_data.result
+++ /dev/null
@@ -1,200 +0,0 @@
-USE test;
-DROP TABLE IF EXISTS t_num,t_datetime,t_string_1,t_string_2,t_gis;
-SHOW TABLES;
-Tables_in_test
-t_gis
-t_string_1
-t_num
-t_string_2
-t_datetime
-SHOW CREATE TABLE t_num;
-Table Create Table
-t_num CREATE TABLE `t_num` (
- `t_pk` int(11) NOT NULL,
- `t_bit` bit(64) default NULL,
- `t_tinyint` tinyint(4) default NULL,
- `t_bool` tinyint(1) default NULL,
- `t_smallint` smallint(6) default NULL,
- `t_mediumint` mediumint(9) default NULL,
- `t_int` int(11) default NULL,
- `t_bigint` bigint(20) default NULL,
- `t_float` float default NULL,
- `t_double` double default NULL,
- `t_decimal` decimal(37,16) default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_datetime;
-Table Create Table
-t_datetime CREATE TABLE `t_datetime` (
- `t_pk` int(11) NOT NULL,
- `t_date` date default NULL,
- `t_datetime` datetime default NULL,
- `t_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `t_time` time default NULL,
- `t_year` year(4) default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_string_1;
-Table Create Table
-t_string_1 CREATE TABLE `t_string_1` (
- `t_pk` int(11) NOT NULL,
- `t_char` char(255) default NULL,
- `t_varchar` varchar(655) default NULL,
- `t_binary` binary(255) default NULL,
- `t_varbinary` varbinary(6553) default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_string_2;
-Table Create Table
-t_string_2 CREATE TABLE `t_string_2` (
- `t_pk` int(11) NOT NULL,
- `t_tinyblob` tinyblob,
- `t_tinytext` tinytext,
- `t_blob` blob,
- `t_text` text,
- `t_mediumblob` mediumblob,
- `t_mediumtext` mediumtext,
- `t_longblob` longblob,
- `t_longtext` longtext,
- `t_enum` enum('001001','001004','001010','001018','001019','001020','001021','001027','001028','001029','001030','001031','001100','002003','002004','002005','002007') NOT NULL default '001001',
- `t_set` set('a','B') default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_gis;
-Table Create Table
-t_gis CREATE TABLE `t_gis` (
- `t_pk` int(11) NOT NULL,
- `t_point` point default NULL,
- `t_linestring` linestring default NULL,
- `t_polygon` polygon default NULL,
- `t_multipoint` multipoint default NULL,
- `t_multilinestring` multilinestring default NULL,
- `t_multipolygon` multipolygon default NULL,
- `t_geometrycollection` geometrycollection default NULL,
- `t_geometry` geometry default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SELECT * FROM t_datetime;
-t_pk t_date t_datetime t_timestamp t_time t_year
-1 1998-01-01 2006-08-10 10:11:12 2002-10-29 16:51:06 19:38:34 2155
-SELECT t_pk,hex(t_bit),t_tinyint,t_bool,t_smallint,t_mediumint,t_int,t_bigint,t_float,t_double,t_decimal FROM t_num;
-t_pk hex(t_bit) t_tinyint t_bool t_smallint t_mediumint t_int t_bigint t_float t_double t_decimal
-1 AAAAAAAAAAAAAAAA 125 1 32765 8388606 2147483647 9223372036854775807 1e+20 1e+150 331.0000000000000000
-SELECT t_pk,t_char,t_varchar,hex(t_binary),hex(t_varbinary) FROM t_string_1;
-t_pk t_char t_varchar hex(t_binary) hex(t_varbinary)
-1 abcdefghijklmn abcdefghijklmnabcdefghijklmnabcdefghijklmnabcdefghijklmn 612020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 4100
-SELECT * FROM t_string_2;
-t_pk t_tinyblob t_tinytext t_blob t_text t_mediumblob t_mediumtext t_longblob t_longtext t_enum t_set
-1 abcdefghijklmnabcdefghijklmn abcdefghijklmnabcdefghijklmn a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 001001 a
-SELECT AsText(t_point), AsText(t_linestring),AsText(t_polygon) FROM t_gis ORDER by t_pk;
-AsText(t_point) AsText(t_linestring) AsText(t_polygon)
-POINT(10 10) LINESTRING(10 10,20 10,20 20,10 20,10 10) POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-POINT(10 20) LINESTRING(10 10,40 10) POLYGON((0 0,30 0,30 30,0 0))
-SELECT AsText(t_multipoint), AsText(t_multilinestring),AsText(t_multipolygon) FROM t_gis ORDER by t_pk;
-AsText(t_multipoint) AsText(t_multilinestring) AsText(t_multipolygon)
-MULTIPOINT(1 1,11 11,11 21,21 21) MULTILINESTRING((10 48,10 21,10 0)) MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-MULTIPOINT(3 6,4 10) MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7)) MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-SELECT AsText(t_geometrycollection), AsText(t_geometry) FROM t_gis ORDER by t_pk;
-AsText(t_geometrycollection) AsText(t_geometry)
-GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10)) MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9)) GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-DROP TABLE t_num,t_datetime,t_string_1,t_string_2,t_gis;
-SHOW TABLES;
-Tables_in_test
-t_gis
-t_string_1
-t_num
-t_string_2
-t_datetime
-SHOW CREATE TABLE t_num;
-Table Create Table
-t_num CREATE TABLE `t_num` (
- `t_pk` int(11) NOT NULL,
- `t_bit` bit(64) default NULL,
- `t_tinyint` tinyint(4) default NULL,
- `t_bool` tinyint(1) default NULL,
- `t_smallint` smallint(6) default NULL,
- `t_mediumint` mediumint(9) default NULL,
- `t_int` int(11) default NULL,
- `t_bigint` bigint(20) default NULL,
- `t_float` float default NULL,
- `t_double` double default NULL,
- `t_decimal` decimal(37,16) default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_datetime;
-Table Create Table
-t_datetime CREATE TABLE `t_datetime` (
- `t_pk` int(11) NOT NULL,
- `t_date` date default NULL,
- `t_datetime` datetime default NULL,
- `t_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `t_time` time default NULL,
- `t_year` year(4) default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_string_1;
-Table Create Table
-t_string_1 CREATE TABLE `t_string_1` (
- `t_pk` int(11) NOT NULL,
- `t_char` char(255) default NULL,
- `t_varchar` varchar(655) default NULL,
- `t_binary` binary(255) default NULL,
- `t_varbinary` varbinary(6553) default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_string_2;
-Table Create Table
-t_string_2 CREATE TABLE `t_string_2` (
- `t_pk` int(11) NOT NULL,
- `t_tinyblob` tinyblob,
- `t_tinytext` tinytext,
- `t_blob` blob,
- `t_text` text,
- `t_mediumblob` mediumblob,
- `t_mediumtext` mediumtext,
- `t_longblob` longblob,
- `t_longtext` longtext,
- `t_enum` enum('001001','001004','001010','001018','001019','001020','001021','001027','001028','001029','001030','001031','001100','002003','002004','002005','002007') NOT NULL default '001001',
- `t_set` set('a','B') default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SHOW CREATE TABLE t_gis;
-Table Create Table
-t_gis CREATE TABLE `t_gis` (
- `t_pk` int(11) NOT NULL,
- `t_point` point default NULL,
- `t_linestring` linestring default NULL,
- `t_polygon` polygon default NULL,
- `t_multipoint` multipoint default NULL,
- `t_multilinestring` multilinestring default NULL,
- `t_multipolygon` multipolygon default NULL,
- `t_geometrycollection` geometrycollection default NULL,
- `t_geometry` geometry default NULL,
- PRIMARY KEY (`t_pk`)
-) ENGINE=ndbcluster DEFAULT CHARSET=latin1
-SELECT * FROM t_datetime;
-t_pk t_date t_datetime t_timestamp t_time t_year
-1 1998-01-01 2006-08-10 10:11:12 2002-10-29 16:51:06 19:38:34 2155
-SELECT t_pk,hex(t_bit),t_tinyint,t_bool,t_smallint,t_mediumint,t_int,t_bigint,t_float,t_double,t_decimal FROM t_num;
-t_pk hex(t_bit) t_tinyint t_bool t_smallint t_mediumint t_int t_bigint t_float t_double t_decimal
-1 AAAAAAAAAAAAAAAA 125 1 32765 8388606 2147483647 9223372036854775807 1e+20 1e+150 331.0000000000000000
-SELECT t_pk,t_char,t_varchar,hex(t_binary),hex(t_varbinary) FROM t_string_1;
-t_pk t_char t_varchar hex(t_binary) hex(t_varbinary)
-1 abcdefghijklmn abcdefghijklmnabcdefghijklmnabcdefghijklmnabcdefghijklmn 612020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 4100
-SELECT * FROM t_string_2;
-t_pk t_tinyblob t_tinytext t_blob t_text t_mediumblob t_mediumtext t_longblob t_longtext t_enum t_set
-1 abcdefghijklmnabcdefghijklmn abcdefghijklmnabcdefghijklmn a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 a123456789b123456789c123456789d123456789e123456789f123456789g123456789 001001 a
-SELECT AsText(t_point), AsText(t_linestring),AsText(t_polygon) FROM t_gis ORDER by t_pk;
-AsText(t_point) AsText(t_linestring) AsText(t_polygon)
-POINT(10 10) LINESTRING(10 10,20 10,20 20,10 20,10 10) POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
-POINT(10 20) LINESTRING(10 10,40 10) POLYGON((0 0,30 0,30 30,0 0))
-SELECT AsText(t_multipoint), AsText(t_multilinestring),AsText(t_multipolygon) FROM t_gis ORDER by t_pk;
-AsText(t_multipoint) AsText(t_multilinestring) AsText(t_multipolygon)
-MULTIPOINT(1 1,11 11,11 21,21 21) MULTILINESTRING((10 48,10 21,10 0)) MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-MULTIPOINT(3 6,4 10) MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7)) MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
-SELECT AsText(t_geometrycollection), AsText(t_geometry) FROM t_gis ORDER by t_pk;
-AsText(t_geometrycollection) AsText(t_geometry)
-GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10)) MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
-GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9)) GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
-DROP TABLE t_num,t_datetime,t_string_1,t_string_2,t_gis;
diff --git a/mysql-test/r/ndb_restore_print.result b/mysql-test/r/ndb_restore_print.result
deleted file mode 100644
index 8b50303c2dc..00000000000
--- a/mysql-test/r/ndb_restore_print.result
+++ /dev/null
@@ -1,327 +0,0 @@
-use test;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
-create table t1
-(pk int key
-,a1 BIT(1), a2 BIT(5), a3 BIT(33), a4 BIT(63), a5 BIT(64)
-,b1 TINYINT, b2 TINYINT UNSIGNED
-,c1 SMALLINT, c2 SMALLINT UNSIGNED
-,d1 INT, d2 INT UNSIGNED
-,e1 BIGINT, e2 BIGINT UNSIGNED
-,f1 CHAR(1) BINARY, f2 CHAR(32) BINARY, f3 CHAR(255) BINARY
-,g1 VARCHAR(32) BINARY, g2 VARCHAR(255) BINARY, g3 VARCHAR(1000) BINARY
-,h1 BINARY(1), h2 BINARY(8), h3 BINARY(255)
-,i1 VARBINARY(32), i2 VARBINARY(255), i3 VARBINARY(1000)
-) engine myisam;
-insert into t1 values
-(1
-,0x1, 0x17, 0x789a, 0x789abcde, 0xfedc0001
-,127, 255
-,32767, 65535
-,2147483647, 4294967295
-,9223372036854775807, 18446744073709551615
-,'1','12345678901234567890123456789012','123456789'
- ,'1','12345678901234567890123456789012','123456789'
- ,0x12,0x123456789abcdef0, 0x012345
-,0x12,0x123456789abcdef0, 0x00123450
-);
-insert into t1 values
-(2
-,0, 0, 0, 0, 0
-,-128, 0
-,-32768, 0
-,-2147483648, 0
-,-9223372036854775808, 0
-,'','',''
- ,'','',''
- ,0x0,0x0,0x0
-,0x0,0x0,0x0
-);
-insert into t1 values
-(3
-,NULL,NULL,NULL,NULL,NULL
-,NULL,NULL
-,NULL,NULL
-,NULL,NULL
-,NULL,NULL
-,NULL,NULL,NULL
-,NULL,NULL,NULL
-,NULL,NULL,NULL
-,NULL,NULL,NULL
-);
-select pk
-,hex(a1), hex(a2), hex(a3), hex(a4), hex(a5)
-,b1, b2
-,c1 , c2
-,d1 , d2
-,e1 , e2
-,f1 , f2, f3
-,g1 , g2, g3
-,hex(h1), hex(h2), hex(h3)
-,hex(i1), hex(i2), hex(i3)
-from t1 order by pk;
-pk 1
-hex(a1) 1
-hex(a2) 17
-hex(a3) 789A
-hex(a4) 789ABCDE
-hex(a5) FEDC0001
-b1 127
-b2 255
-c1 32767
-c2 65535
-d1 2147483647
-d2 4294967295
-e1 9223372036854775807
-e2 18446744073709551615
-f1 1
-f2 12345678901234567890123456789012
-f3 123456789
-g1 1
-g2 12345678901234567890123456789012
-g3 123456789
-hex(h1) 12
-hex(h2) 123456789ABCDEF0
-hex(h3) 012345000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
-hex(i1) 12
-hex(i2) 123456789ABCDEF0
-hex(i3) 00123450
-pk 2
-hex(a1) 0
-hex(a2) 0
-hex(a3) 0
-hex(a4) 0
-hex(a5) 0
-b1 -128
-b2 0
-c1 -32768
-c2 0
-d1 -2147483648
-d2 0
-e1 -9223372036854775808
-e2 0
-f1
-f2
-f3
-g1
-g2
-g3
-hex(h1) 00
-hex(h2) 0000000000000000
-hex(h3) 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
-hex(i1) 00
-hex(i2) 00
-hex(i3) 00
-pk 3
-hex(a1) NULL
-hex(a2) NULL
-hex(a3) NULL
-hex(a4) NULL
-hex(a5) NULL
-b1 NULL
-b2 NULL
-c1 NULL
-c2 NULL
-d1 NULL
-d2 NULL
-e1 NULL
-e2 NULL
-f1 NULL
-f2 NULL
-f3 NULL
-g1 NULL
-g2 NULL
-g3 NULL
-hex(h1) NULL
-hex(h2) NULL
-hex(h3) NULL
-hex(i1) NULL
-hex(i2) NULL
-hex(i3) NULL
-alter table t1 engine ndb;
-select pk
-,hex(a1), hex(a2), hex(a3), hex(a4), hex(a5)
-,b1, b2
-,c1 , c2
-,d1 , d2
-,e1 , e2
-,f1 , f2, f3
-,g1 , g2, g3
-,hex(h1), hex(h2), hex(h3)
-,hex(i1), hex(i2), hex(i3)
-from t1 order by pk;
-pk 1
-hex(a1) 1
-hex(a2) 17
-hex(a3) 789A
-hex(a4) 789ABCDE
-hex(a5) FEDC0001
-b1 127
-b2 255
-c1 32767
-c2 65535
-d1 2147483647
-d2 4294967295
-e1 9223372036854775807
-e2 18446744073709551615
-f1 1
-f2 12345678901234567890123456789012
-f3 123456789
-g1 1
-g2 12345678901234567890123456789012
-g3 123456789
-hex(h1) 12
-hex(h2) 123456789ABCDEF0
-hex(h3) 012345000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
-hex(i1) 12
-hex(i2) 123456789ABCDEF0
-hex(i3) 00123450
-pk 2
-hex(a1) 0
-hex(a2) 0
-hex(a3) 0
-hex(a4) 0
-hex(a5) 0
-b1 -128
-b2 0
-c1 -32768
-c2 0
-d1 -2147483648
-d2 0
-e1 -9223372036854775808
-e2 0
-f1
-f2
-f3
-g1
-g2
-g3
-hex(h1) 00
-hex(h2) 0000000000000000
-hex(h3) 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
-hex(i1) 00
-hex(i2) 00
-hex(i3) 00
-pk 3
-hex(a1) NULL
-hex(a2) NULL
-hex(a3) NULL
-hex(a4) NULL
-hex(a5) NULL
-b1 NULL
-b2 NULL
-c1 NULL
-c2 NULL
-d1 NULL
-d2 NULL
-e1 NULL
-e2 NULL
-f1 NULL
-f2 NULL
-f3 NULL
-g1 NULL
-g2 NULL
-g3 NULL
-hex(h1) NULL
-hex(h2) NULL
-hex(h3) NULL
-hex(i1) NULL
-hex(i2) NULL
-hex(i3) NULL
-CREATE TEMPORARY TABLE IF NOT EXISTS test.backup_info
-(id INT, backup_id INT) ENGINE = MEMORY;
-DELETE FROM test.backup_info;
-LOAD DATA INFILE '<MYSQLTEST_VARDIR>/tmp.dat'
-INTO TABLE test.backup_info FIELDS TERMINATED BY ',';
-SELECT @the_backup_id:=backup_id FROM test.backup_info;
-@the_backup_id:=backup_id
-<the_backup_id>
-DROP TABLE test.backup_info;
-1;0x1;0x17;0x789A;0x789ABCDE;0xFEDC0001;127;255;32767;65535;2147483647;4294967295;9223372036854775807;18446744073709551615;1;12345678901234567890123456789012;123456789;1;12345678901234567890123456789012;123456789;0x12;0x123456789ABCDEF0;0x012345;0x12;0x123456789ABCDEF0;0x00123450
-2;0x0;0x0;0x0;0x0;0x0;-128;0;-32768;0;-2147483648;0;-9223372036854775808;0;;;;;;;0x0;0x0;0x0;0x0;0x0;0x0
-3;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N;\N
-1,0x1,0x17,0x789A,0x789ABCDE,0xFEDC0001,127,255,32767,65535,2147483647,4294967295,9223372036854775807,18446744073709551615,'1','12345678901234567890123456789012','123456789','1','12345678901234567890123456789012','123456789',0x12,0x123456789ABCDEF0,0x012345,0x12,0x123456789ABCDEF0,0x00123450
-2,0x0,0x0,0x0,0x0,0x0,-128,0,-32768,0,-2147483648,0,-9223372036854775808,0,'','','','','','',0x0,0x0,0x0,0x0,0x0,0x0
-3,,,,,,,,,,,,,,,,,,,,,,,,,
-drop table t1;
-create table t1
-(pk int key
-,f1 CHAR(1) BINARY, f2 CHAR(32) BINARY, f3 CHAR(255) BINARY
-,g1 VARCHAR(32) BINARY, g2 VARCHAR(255) BINARY, g3 VARCHAR(1000) BINARY
-,h1 BINARY(1), h2 BINARY(9), h3 BINARY(255)
-,i1 VARBINARY(32), i2 VARBINARY(255), i3 VARBINARY(1000)
-) engine ndb;
-insert into t1 values
-(1
-,'1','12345678901234567890123456789012','123456789 '
- ,'1 ','12345678901234567890123456789012 ','123456789 '
- ,0x20,0x123456789abcdef020, 0x012345000020
-,0x1200000020,0x123456789abcdef000000020, 0x00123450000020
-);
-create table t2 (pk int key, a int) engine ndb;
-create table t3 (pk int key, a int) engine ndb;
-create table t4 (pk int key, a int) engine ndb;
-insert into t2 values (1,11),(2,12),(3,13),(4,14),(5,15);
-insert into t3 values (1,21),(2,22),(3,23),(4,24),(5,25);
-insert into t4 values (1,31),(2,32),(3,33),(4,34),(5,35);
-CREATE TEMPORARY TABLE IF NOT EXISTS test.backup_info
-(id INT, backup_id INT) ENGINE = MEMORY;
-DELETE FROM test.backup_info;
-LOAD DATA INFILE '<MYSQLTEST_VARDIR>/tmp.dat'
-INTO TABLE test.backup_info FIELDS TERMINATED BY ',';
-SELECT @the_backup_id:=backup_id FROM test.backup_info;
-@the_backup_id:=backup_id
-<the_backup_id>
-DROP TABLE test.backup_info;
-'1' '1' '12345678901234567890123456789012' '123456789' '1' '12345678901234567890123456789012' '123456789' '0x20' '0x123456789ABCDEF020' '0x012345000020' '0x1200000020' '0x123456789ABCDEF000000020' '0x00123450000020'
-
-t1
---
-1 1 12345678901234567890123456789012 123456789 1 12345678901234567890123456789012 123456789 0x20 0x123456789ABCDEF020 0x012345000020 0x1200000020 0x123456789ABCDEF000000020 0x00123450000020
-
-t2
---
-1 11
-2 12
-3 13
-4 14
-5 15
-
-t3
---
-1 21
-2 22
-3 23
-4 24
-5 25
-
-t4
---
-1 31
-2 32
-3 33
-4 34
-5 35
-drop table t1;
-create table t1
-(pk int key
-,a1 MEDIUMINT, a2 MEDIUMINT UNSIGNED
-) engine ndb;
-insert into t1 values(1, 8388607, 16777215);
-insert into t1 values(2, -8388608, 0);
-insert into t1 values(3, -1, 1);
-CREATE TEMPORARY TABLE IF NOT EXISTS test.backup_info
-(id INT, backup_id INT) ENGINE = MEMORY;
-DELETE FROM test.backup_info;
-LOAD DATA INFILE '<MYSQLTEST_VARDIR>/tmp.dat'
-INTO TABLE test.backup_info FIELDS TERMINATED BY ',';
-SELECT @the_backup_id:=backup_id FROM test.backup_info;
-@the_backup_id:=backup_id
-<the_backup_id>
-DROP TABLE test.backup_info;
-1;8388607;16777215
-2;-8388608;0
-3;-1;1
-drop table t1;
-drop table t2;
-drop table t3;
-drop table t4;
diff --git a/mysql-test/r/ndb_single_user.result b/mysql-test/r/ndb_single_user.result
deleted file mode 100644
index 4606a47dde2..00000000000
--- a/mysql-test/r/ndb_single_user.result
+++ /dev/null
@@ -1,60 +0,0 @@
-use test;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
-create table t1 (a int key, b int unique, c int) engine ndb;
-ERROR HY000: Can't create table './test/t1.frm' (errno: 299)
-create table t1 (a int key, b int unique, c int) engine ndb;
-insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0),(6,6,0),(7,7,0),(8,8,0),(9,9,0),(10,10,0);
-create table t2 as select * from t1;
-select * from t1 where a = 1;
-a b c
-1 1 0
-select * from t1 where b = 4;
-a b c
-4 4 0
-select * from t1 where a > 4 order by a;
-a b c
-5 5 0
-6 6 0
-7 7 0
-8 8 0
-9 9 0
-10 10 0
-update t1 set b=102 where a = 2;
-update t1 set b=103 where b = 3;
-update t1 set b=b+100;
-update t1 set b=b+100 where a > 7;
-delete from t1;
-insert into t1 select * from t2;
-create unique index new_index on t1 (b,c);
-drop table t1;
-ERROR 42S02: Unknown table 't1'
-create index new_index_fail on t1 (c);
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-insert into t1 values (21,21,0),(22,22,0),(23,23,0),(24,24,0),(25,25,0),(26,26,0),(27,27,0),(28,28,0),(29,29,0),(210,210,0);
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-select * from t1 where a = 1;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-select * from t1 where b = 4;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-update t1 set b=102 where a = 2;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-update t1 set b=103 where b = 3;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-update t1 set b=b+100;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-update t1 set b=b+100 where a > 7;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-BEGIN;
-update t1 set b=b+100 where a=1;
-BEGIN;
-update t1 set b=b+100 where a=2;
-update t1 set b=b+100 where a=3;
-COMMIT;
-update t1 set b=b+100 where a=4;
-ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
-COMMIT;
-ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
-create table t2 (a int) engine myisam;
-alter table t2 add column (b int);
-drop table t2;
-drop table t1;
diff --git a/mysql-test/r/ndb_subquery.result b/mysql-test/r/ndb_subquery.result
deleted file mode 100644
index a67efb144b2..00000000000
--- a/mysql-test/r/ndb_subquery.result
+++ /dev/null
@@ -1,61 +0,0 @@
-drop table if exists t1;
-drop table if exists t2;
-create table t1 (p int not null primary key, u int not null, o int not null,
-unique (u), key(o)) engine=ndb;
-create table t2 (p int not null primary key, u int not null, o int not null,
-unique (u), key(o)) engine=ndb;
-insert into t1 values (1,1,1),(2,2,2),(3,3,3);
-insert into t2 values (1,1,1),(2,2,2),(3,3,3), (4,4,4), (5,5,5);
-explain select * from t2 where p NOT IN (select p from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 5 Using where
-2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1
-select * from t2 where p NOT IN (select p from t1) order by p;
-p u o
-4 4 4
-5 5 5
-explain select * from t2 where p NOT IN (select u from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 5 Using where
-2 DEPENDENT SUBQUERY t1 unique_subquery u u 4 func 1
-select * from t2 where p NOT IN (select u from t1) order by p;
-p u o
-4 4 4
-5 5 5
-explain select * from t2 where p NOT IN (select o from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 5 Using where
-2 DEPENDENT SUBQUERY t1 index_subquery o o 4 func 1
-select * from t2 where p NOT IN (select o from t1) order by p;
-p u o
-4 4 4
-5 5 5
-explain select * from t2 where p NOT IN (select p+0 from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 5 Using where
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 3 Using where
-select * from t2 where p NOT IN (select p+0 from t1) order by p;
-p u o
-4 4 4
-5 5 5
-drop table t1;
-drop table t2;
-create table t1 (p int not null primary key, u int not null) engine=ndb;
-insert into t1 values (1,1),(2,2),(3,3);
-create table t2 as
-select t1.*
-from t1 as t1, t1 as t2, t1 as t3, t1 as t4, t1 as t5, t1 as t6, t1 as t7, t1 as t8
-where t1.u = t2.u
-and t2.u = t3.u
-and t3.u = t4.u
-and t4.u = t5.u
-and t5.u = t6.u
-and t6.u = t7.u
-and t7.u = t8.u;
-select * from t2 order by 1;
-p u
-1 1
-2 2
-3 3
-drop table t1;
-drop table t2;
diff --git a/mysql-test/r/ndb_transaction.result b/mysql-test/r/ndb_transaction.result
deleted file mode 100644
index 691b91b1d36..00000000000
--- a/mysql-test/r/ndb_transaction.result
+++ /dev/null
@@ -1,257 +0,0 @@
-DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
-drop database if exists mysqltest;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL
-) ENGINE=ndbcluster;
-begin;
-insert into t1 values(1,1);
-insert into t1 values(2,2);
-select count(*) from t1;
-count(*)
-2
-select * from t1 where pk1 = 1;
-pk1 attr1
-1 1
-select t1.attr1 from t1, t1 as t1x where t1.pk1 = t1x.pk1 + 1;
-attr1
-2
-rollback;
-select count(*) from t1;
-count(*)
-0
-select * from t1 where pk1 = 1;
-pk1 attr1
-select t1.attr1 from t1, t1 as t1x where t1.pk1 = t1x.pk1 + 1;
-attr1
-begin;
-insert into t1 values(1,1);
-insert into t1 values(2,2);
-commit;
-select count(*) from t1;
-count(*)
-2
-select * from t1 where pk1 = 1;
-pk1 attr1
-1 1
-select t1.attr1 from t1, t1 as t1x where t1.pk1 = t1x.pk1 + 1;
-attr1
-2
-begin;
-update t1 set attr1 = attr1 * 2;
-select count(*) from t1;
-count(*)
-2
-select * from t1 where pk1 = 1;
-pk1 attr1
-1 2
-select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
-pk1 attr1 pk1 attr1
-2 4 1 2
-rollback;
-select count(*) from t1;
-count(*)
-2
-select * from t1 where pk1 = 1;
-pk1 attr1
-1 1
-select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
-pk1 attr1 pk1 attr1
-begin;
-update t1 set attr1 = attr1 * 2;
-commit;
-select count(*) from t1;
-count(*)
-2
-select * from t1 where pk1 = 1;
-pk1 attr1
-1 2
-select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
-pk1 attr1 pk1 attr1
-2 4 1 2
-begin;
-delete from t1 where attr1 = 2;
-select count(*) from t1;
-count(*)
-1
-select * from t1 where pk1 = 1;
-pk1 attr1
-select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
-pk1 attr1 pk1 attr1
-rollback;
-select count(*) from t1;
-count(*)
-2
-select * from t1 where pk1 = 1;
-pk1 attr1
-1 2
-select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
-pk1 attr1 pk1 attr1
-2 4 1 2
-begin;
-delete from t1 where attr1 = 2;
-commit;
-select count(*) from t1;
-count(*)
-1
-select * from t1 where pk1 = 1;
-pk1 attr1
-select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
-pk1 attr1 pk1 attr1
-DROP TABLE t1;
-CREATE TABLE t1 (id INT, id2 int) engine=ndbcluster;
-begin;
-insert into t1 values(1,1);
-insert into t1 values(2,2);
-select sum(id) from t1;
-sum(id)
-3
-select * from t1 where id = 1;
-id id2
-1 1
-select t1.id from t1, t1 as t1x where t1.id2 = t1x.id2 + 1;
-id
-2
-rollback;
-select sum(id) from t1;
-sum(id)
-NULL
-select * from t1 where id = 1;
-id id2
-select t1.id from t1, t1 as t1x where t1.id2 = t1x.id2 + 1;
-id
-begin;
-insert into t1 values(1,1);
-insert into t1 values(2,2);
-commit;
-select sum(id) from t1;
-sum(id)
-3
-select * from t1 where id = 1;
-id id2
-1 1
-select t1.id from t1, t1 as t1x where t1.id2 = t1x.id2 + 1;
-id
-2
-begin;
-update t1 set id = id * 2;
-select sum(id) from t1;
-sum(id)
-6
-select * from t1 where id = 2;
-id id2
-2 1
-select * from t1, t1 as t1x where t1x.id = t1.id - 2;
-id id2 id id2
-4 2 2 1
-rollback;
-select sum(id) from t1;
-sum(id)
-3
-select * from t1 where id = 2;
-id id2
-2 2
-select * from t1, t1 as t1x where t1x.id = t1.id - 2;
-id id2 id id2
-begin;
-update t1 set id = id * 2;
-commit;
-select sum(id) from t1;
-sum(id)
-6
-select * from t1 where id = 2;
-id id2
-2 1
-select * from t1, t1 as t1x where t1x.id = t1.id - 2;
-id id2 id id2
-4 2 2 1
-DROP TABLE t1;
-CREATE TABLE t2 (
-a bigint unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-CREATE TABLE t3 (
-a bigint unsigned NOT NULL,
-b bigint unsigned not null,
-c bigint unsigned,
-PRIMARY KEY(a)
-) engine=ndbcluster;
-CREATE TABLE t4 (
-a bigint unsigned NOT NULL,
-b bigint unsigned not null,
-c bigint unsigned NOT NULL,
-d int unsigned,
-PRIMARY KEY(a, b, c)
-) engine=ndbcluster;
-select count(*) from t2;
-count(*)
-0
-select count(*) from t3;
-count(*)
-0
-select count(*) from t4;
-count(*)
-0
-select count(*) from t2;
-count(*)
-100
-select count(*) from t3;
-count(*)
-100
-select count(*) from t4;
-count(*)
-100
-begin;
-begin;
-drop table t2;
-drop table t3;
-drop table t4;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-attr1 INT NOT NULL
-) ENGINE=ndbcluster;
-create database mysqltest;
-use mysqltest;
-CREATE TABLE t2 (
-a bigint unsigned NOT NULL PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-begin;
-insert into test.t1 values(1,1);
-insert into t2 values(1,1,1);
-insert into test.t1 values(2,2);
-insert into t2 values(2,2,2);
-select count(*) from test.t1;
-count(*)
-2
-select count(*) from t2;
-count(*)
-2
-select * from test.t1 where pk1 = 1;
-pk1 attr1
-1 1
-select * from t2 where a = 1;
-a b c
-1 1 1
-select test.t1.attr1
-from test.t1, test.t1 as t1x where test.t1.pk1 = t1x.pk1 + 1;
-attr1
-2
-select t2.a
-from t2, t2 as t2x where t2.a = t2x.a + 1;
-a
-2
-select test.t1.pk1, a from test.t1,t2 where b > test.t1.attr1;
-pk1 a
-1 2
-rollback;
-select count(*) from test.t1;
-count(*)
-0
-select count(*) from t2;
-count(*)
-0
-drop table test.t1, t2;
-drop database mysqltest;
diff --git a/mysql-test/r/ndb_trigger.result b/mysql-test/r/ndb_trigger.result
deleted file mode 100644
index 562c5120715..00000000000
--- a/mysql-test/r/ndb_trigger.result
+++ /dev/null
@@ -1,290 +0,0 @@
-drop table if exists t1, t2, t3;
-create table t1 (id int primary key, a int not null, b decimal (63,30) default 0) engine=ndb;
-create table t2 (op char(1), a int not null, b decimal (63,30));
-create table t3 select 1 as i;
-create trigger t1_bu before update on t1 for each row
-begin
-insert into t2 values ("u", old.a, old.b);
-set new.b = old.b + 10;
-end;//
-create trigger t1_bd before delete on t1 for each row
-begin
-insert into t2 values ("d", old.a, old.b);
-end;//
-insert into t1 values (1, 1, 1.05), (2, 2, 2.05), (3, 3, 3.05), (4, 4, 4.05);
-update t1 set a=5 where a != 3;
-select * from t1 order by id;
-id a b
-1 5 11.050000000000000000000000000000
-2 5 12.050000000000000000000000000000
-3 3 3.050000000000000000000000000000
-4 5 14.050000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-u 1 1.050000000000000000000000000000
-u 2 2.050000000000000000000000000000
-u 4 4.050000000000000000000000000000
-delete from t2;
-update t1, t3 set a=6 where a = 5;
-select * from t1 order by id;
-id a b
-1 6 21.050000000000000000000000000000
-2 6 22.050000000000000000000000000000
-3 3 3.050000000000000000000000000000
-4 6 24.050000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-u 5 11.050000000000000000000000000000
-u 5 12.050000000000000000000000000000
-u 5 14.050000000000000000000000000000
-delete from t2;
-delete from t1 where a != 3;
-select * from t1 order by id;
-id a b
-3 3 3.050000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-d 6 21.050000000000000000000000000000
-d 6 22.050000000000000000000000000000
-d 6 24.050000000000000000000000000000
-delete from t2;
-insert into t1 values (1, 1, 1.05), (2, 2, 2.05), (4, 4, 4.05);
-delete t1 from t1, t3 where a != 3;
-select * from t1 order by id;
-id a b
-3 3 3.050000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-d 1 1.050000000000000000000000000000
-d 2 2.050000000000000000000000000000
-d 4 4.050000000000000000000000000000
-delete from t2;
-insert into t1 values (4, 4, 4.05);
-insert into t1 (id, a) values (4, 1), (3, 1) on duplicate key update a= a + 1;
-select * from t1 order by id;
-id a b
-3 4 13.050000000000000000000000000000
-4 5 14.050000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-u 3 3.050000000000000000000000000000
-u 4 4.050000000000000000000000000000
-delete from t2;
-delete from t3;
-insert into t3 values (4), (3);
-insert into t1 (id, a) (select i, 1 from t3) on duplicate key update a= a + 1;
-select * from t1 order by id;
-id a b
-3 5 23.050000000000000000000000000000
-4 6 24.050000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-u 4 13.050000000000000000000000000000
-u 5 14.050000000000000000000000000000
-delete from t2;
-replace into t1 (id, a) values (4, 1), (3, 1);
-select * from t1 order by id;
-id a b
-3 1 0.000000000000000000000000000000
-4 1 0.000000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-d 5 23.050000000000000000000000000000
-d 6 24.050000000000000000000000000000
-delete from t1;
-delete from t2;
-insert into t1 values (3, 1, 1.05), (4, 1, 2.05);
-replace into t1 (id, a) (select i, 2 from t3);
-select * from t1 order by id;
-id a b
-3 2 0.000000000000000000000000000000
-4 2 0.000000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-d 1 1.050000000000000000000000000000
-d 1 2.050000000000000000000000000000
-delete from t1;
-delete from t2;
-insert into t1 values (3, 1, 1.05), (5, 2, 2.05);
-load data infile '../std_data_ln/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (id, a);
-select * from t1 order by id;
-id a b
-3 4 0.000000000000000000000000000000
-5 6 0.000000000000000000000000000000
-select * from t2 order by op, a, b;
-op a b
-d 1 1.050000000000000000000000000000
-d 2 2.050000000000000000000000000000
-drop tables t1, t2, t3;
-CREATE TABLE t1 (
-id INT NOT NULL PRIMARY KEY,
-xy INT
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (1, 0);
-CREATE TRIGGER t1_update AFTER UPDATE ON t1 FOR EACH ROW BEGIN REPLACE INTO t2 SELECT * FROM t1 WHERE t1.id = NEW.id; END //
-CREATE TABLE t2 (
-id INT NOT NULL PRIMARY KEY,
-xy INT
-) ENGINE=ndbcluster;
-INSERT INTO t2 VALUES (2, 0);
-CREATE TABLE t3 (id INT NOT NULL PRIMARY KEY) ENGINE=ndbcluster;
-INSERT INTO t3 VALUES (1);
-CREATE TABLE t4 LIKE t1;
-CREATE TRIGGER t4_update AFTER UPDATE ON t4 FOR EACH ROW BEGIN REPLACE INTO t5 SELECT * FROM t4 WHERE t4.id = NEW.id; END //
-CREATE TABLE t5 LIKE t2;
-UPDATE t1 SET xy = 3 WHERE id = 1;
-SELECT xy FROM t1 where id = 1;
-xy
-3
-SELECT xy FROM t2 where id = 1;
-xy
-3
-UPDATE t1 SET xy = 4 WHERE id IN (SELECT id FROM t3 WHERE id = 1);
-SELECT xy FROM t1 where id = 1;
-xy
-4
-SELECT xy FROM t2 where id = 1;
-xy
-4
-INSERT INTO t4 SELECT * FROM t1;
-INSERT INTO t5 SELECT * FROM t2;
-UPDATE t1,t4 SET t1.xy = 3, t4.xy = 3 WHERE t1.id = 1 AND t4.id = 1;
-SELECT xy FROM t1 where id = 1;
-xy
-3
-SELECT xy FROM t2 where id = 1;
-xy
-3
-SELECT xy FROM t4 where id = 1;
-xy
-3
-SELECT xy FROM t5 where id = 1;
-xy
-3
-UPDATE t1,t4 SET t1.xy = 4, t4.xy = 4 WHERE t1.id IN (SELECT id FROM t3 WHERE id = 1) AND t4.id IN (SELECT id FROM t3 WHERE id = 1);
-SELECT xy FROM t1 where id = 1;
-xy
-4
-SELECT xy FROM t2 where id = 1;
-xy
-4
-SELECT xy FROM t4 where id = 1;
-xy
-4
-SELECT xy FROM t5 where id = 1;
-xy
-4
-INSERT INTO t1 VALUES (1,0) ON DUPLICATE KEY UPDATE xy = 5;
-SELECT xy FROM t1 where id = 1;
-xy
-5
-SELECT xy FROM t2 where id = 1;
-xy
-5
-DROP TRIGGER t1_update;
-DROP TRIGGER t4_update;
-CREATE TRIGGER t1_delete AFTER DELETE ON t1 FOR EACH ROW BEGIN REPLACE INTO t2 SELECT * FROM t1 WHERE t1.id > 4; END //
-CREATE TRIGGER t4_delete AFTER DELETE ON t4 FOR EACH ROW BEGIN REPLACE INTO t5 SELECT * FROM t4 WHERE t4.id > 4; END //
-INSERT INTO t1 VALUES (5, 0),(6,0);
-INSERT INTO t2 VALUES (5, 1),(6,1);
-INSERT INTO t3 VALUES (5);
-SELECT * FROM t1 order by id;
-id xy
-1 5
-5 0
-6 0
-SELECT * FROM t2 order by id;
-id xy
-1 5
-2 0
-5 1
-6 1
-DELETE FROM t1 WHERE id IN (SELECT id FROM t3 WHERE id = 5);
-SELECT * FROM t1 order by id;
-id xy
-1 5
-6 0
-SELECT * FROM t2 order by id;
-id xy
-1 5
-2 0
-5 1
-6 0
-INSERT INTO t1 VALUES (5,0);
-UPDATE t2 SET xy = 1 WHERE id = 6;
-TRUNCATE t4;
-INSERT INTO t4 SELECT * FROM t1;
-TRUNCATE t5;
-INSERT INTO t5 SELECT * FROM t2;
-SELECT * FROM t1 order by id;
-id xy
-1 5
-5 0
-6 0
-SELECT * FROM t2 order by id;
-id xy
-1 5
-2 0
-5 1
-6 1
-SELECT * FROM t4 order by id;
-id xy
-1 5
-5 0
-6 0
-SELECT * FROM t5 order by id;
-id xy
-1 5
-2 0
-5 1
-6 1
-DELETE FROM t1,t4 USING t1,t3,t4 WHERE t1.id IN (SELECT id FROM t3 WHERE id = 5) AND t4.id IN (SELECT id FROM t3 WHERE id = 5);
-SELECT * FROM t1 order by id;
-id xy
-1 5
-6 0
-SELECT * FROM t2 order by id;
-id xy
-1 5
-2 0
-5 1
-6 0
-SELECT * FROM t4 order by id;
-id xy
-1 5
-6 0
-SELECT * FROM t5 order by id;
-id xy
-1 5
-2 0
-5 1
-6 0
-INSERT INTO t1 VALUES (5, 0);
-REPLACE INTO t2 VALUES (6,1);
-SELECT * FROM t1 order by id;
-id xy
-1 5
-5 0
-6 0
-SELECT * FROM t2 order by id;
-id xy
-1 5
-2 0
-5 1
-6 1
-REPLACE INTO t1 VALUES (5, 1);
-SELECT * FROM t1 order by id;
-id xy
-1 5
-5 1
-6 0
-SELECT * FROM t2 order by id;
-id xy
-1 5
-2 0
-5 1
-6 0
-DROP TRIGGER t1_delete;
-DROP TRIGGER t4_delete;
-DROP TABLE t1, t2, t3, t4, t5;
-End of 5.0 tests
diff --git a/mysql-test/r/ndb_truncate.result b/mysql-test/r/ndb_truncate.result
deleted file mode 100644
index 811e5e3afeb..00000000000
--- a/mysql-test/r/ndb_truncate.result
+++ /dev/null
@@ -1,23 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-CREATE TABLE t1 (
-a bigint unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
-b int unsigned not null,
-c int unsigned
-) engine=ndbcluster;
-select count(*) from t1;
-count(*)
-5000
-select * from t1 order by a limit 2;
-a b c
-1 509 2500
-2 510 7
-truncate table t1;
-select count(*) from t1;
-count(*)
-0
-insert into t1 values(NULL,1,1),(NULL,2,2);
-select * from t1 order by a;
-a b c
-1 1 1
-2 2 2
-drop table t1;
diff --git a/mysql-test/r/ndb_types.result b/mysql-test/r/ndb_types.result
deleted file mode 100644
index ec2858d818a..00000000000
--- a/mysql-test/r/ndb_types.result
+++ /dev/null
@@ -1,76 +0,0 @@
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (
-auto int(5) unsigned NOT NULL auto_increment,
-string char(10) default "hello",
-vstring varchar(10) default "hello",
-bin binary(2),
-vbin varbinary(7),
-tiny tinyint(4) DEFAULT '0' NOT NULL ,
-short smallint(6) DEFAULT '1' NOT NULL ,
-medium mediumint(8) DEFAULT '0' NOT NULL,
-long_int int(11) DEFAULT '0' NOT NULL,
-longlong bigint(13) DEFAULT '0' NOT NULL,
-real_float float(13,1) DEFAULT 0.0 NOT NULL,
-real_double double(16,4),
-real_decimal decimal(16,4),
-utiny tinyint(3) unsigned DEFAULT '0' NOT NULL,
-ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL,
-umedium mediumint(8) unsigned DEFAULT '0' NOT NULL,
-ulong int(11) unsigned DEFAULT '0' NOT NULL,
-ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL,
-bits bit(3),
-options enum('one','two','tree') not null,
-flags set('one','two','tree') not null,
-date_field date,
-year_field year,
-time_field time,
-date_time datetime,
-time_stamp timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-PRIMARY KEY (auto),
-KEY (utiny),
-KEY (tiny),
-KEY (short),
-KEY any_name (medium),
-KEY (longlong),
-KEY (real_float),
-KEY (ushort),
-KEY (umedium),
-KEY (ulong),
-KEY (ulonglong,ulong),
-KEY (options,flags)
-);
-set @now = now();
-insert into t1
-(string,vstring,bin,vbin,tiny,short,medium,long_int,longlong,
-real_float,real_double, real_decimal,utiny, ushort, umedium,ulong,ulonglong,
-bits,options,flags,date_field,year_field,time_field,date_time)
-values
-("aaaa","aaaa",0xAAAA,0xAAAA,-1,-1,-1,-1,-1,1.1,1.1,1.1,1,1,1,1,1,
-b'001','one','one', '1901-01-01','1901','01:01:01','1901-01-01 01:01:01');
-select auto,string,vstring,bin,vbin,tiny,short,medium,long_int,longlong,
-real_float,real_double,real_decimal,utiny,ushort,umedium,ulong,ulonglong,
-bits,options,flags,date_field,year_field,time_field,date_time
-from t1;
-auto string vstring bin vbin tiny short medium long_int longlong real_float real_double real_decimal utiny ushort umedium ulong ulonglong bits options flags date_field year_field time_field date_time
-1 aaaa aaaa -1 -1 -1 -1 -1 1.1 1.1000 1.1000 1 00001 1 1 1  one one 1901-01-01 1901 01:01:01 1901-01-01 01:01:01
-select time_stamp>@now from t1;
-time_stamp>@now
-1
-set @now = now();
-update t1 set string="bbbb",vstring="bbbb",bin=0xBBBB,vbin=0xBBBB,
-tiny=-2,short=-2,medium=-2,long_int=-2,longlong=-2,real_float=2.2,
-real_double=2.2,real_decimal=2.2,utiny=2,ushort=2,umedium=2,ulong=2,
-ulonglong=2, bits=b'010',
-options='one',flags='one', date_field='1902-02-02',year_field='1902',
-time_field='02:02:02',date_time='1902-02-02 02:02:02' where auto=1;
-select auto,string,vstring,bin,vbin,tiny,short,medium,long_int,longlong,
-real_float,real_double,real_decimal,utiny,ushort,umedium,ulong,ulonglong,
-bits,options,flags,date_field,year_field,time_field,date_time
-from t1;
-auto string vstring bin vbin tiny short medium long_int longlong real_float real_double real_decimal utiny ushort umedium ulong ulonglong bits options flags date_field year_field time_field date_time
-1 bbbb bbbb -2 -2 -2 -2 -2 2.2 2.2000 2.2000 2 00002 2 2 2  one one 1902-02-02 1902 02:02:02 1902-02-02 02:02:02
-select time_stamp>@now from t1;
-time_stamp>@now
-1
-drop table t1;
-End of 4.1 tests
diff --git a/mysql-test/r/ndb_update.result b/mysql-test/r/ndb_update.result
deleted file mode 100644
index 6bbf3e6a4e1..00000000000
--- a/mysql-test/r/ndb_update.result
+++ /dev/null
@@ -1,50 +0,0 @@
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (
-pk1 INT NOT NULL PRIMARY KEY,
-b INT NOT NULL,
-c INT NOT NULL UNIQUE
-) ENGINE=ndbcluster;
-INSERT INTO t1 VALUES (0, 1, 0),(1,2,1),(2,3,2);
-UPDATE t1 set b = c;
-select * from t1 order by pk1;
-pk1 b c
-0 0 0
-1 1 1
-2 2 2
-UPDATE t1 set pk1 = 4 where pk1 = 1;
-select * from t1 order by pk1;
-pk1 b c
-0 0 0
-2 2 2
-4 1 1
-UPDATE t1 set pk1 = 4 where pk1 = 2;
-ERROR 23000: Duplicate entry '4' for key 1
-UPDATE IGNORE t1 set pk1 = 4 where pk1 = 2;
-select * from t1 order by pk1;
-pk1 b c
-0 0 0
-2 2 2
-4 1 1
-UPDATE t1 set pk1 = 1, c = 2 where pk1 = 4;
-ERROR 23000: Duplicate entry '2' for key 2
-UPDATE IGNORE t1 set pk1 = 1, c = 2 where pk1 = 4;
-select * from t1 order by pk1;
-pk1 b c
-0 0 0
-2 2 2
-4 1 1
-UPDATE t1 set pk1 = pk1 + 10;
-select * from t1 order by pk1;
-pk1 b c
-10 0 0
-12 2 2
-14 1 1
-create unique index ib on t1(b);
-update t1 set c = 4 where pk1 = 12;
-update ignore t1 set b = 55 where pk1 = 14;
-select * from t1 order by pk1;
-pk1 b c
-10 0 0
-12 2 4
-14 55 1
-DROP TABLE IF EXISTS t1;
diff --git a/mysql-test/r/negation_elimination.result b/mysql-test/r/negation_elimination.result
index a7dbe0d9052..91a4c273832 100644
--- a/mysql-test/r/negation_elimination.result
+++ b/mysql-test/r/negation_elimination.result
@@ -384,8 +384,8 @@ NULL NULL
2 1
3 1
explain extended select a, not(not(a)), not(a <= 2 and not(a)), not(a not like "1"), not (a not in (1,2)), not(a != 2) from t1 where not(not(a)) having not(not(a));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL a 5 NULL 5 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index NULL a 5 NULL 5 100.00 Using where; Using index
Warnings:
-Note 1003 select `test`.`t1`.`a` AS `a`,(`test`.`t1`.`a` <> 0) AS `not(not(a))`,((`test`.`t1`.`a` > 2) or `test`.`t1`.`a`) AS `not(a <= 2 and not(a))`,(`test`.`t1`.`a` like _latin1'1') AS `not(a not like "1")`,(`test`.`t1`.`a` in (1,2)) AS `not (a not in (1,2))`,(`test`.`t1`.`a` = 2) AS `not(a != 2)` from `test`.`t1` where `test`.`t1`.`a` having `test`.`t1`.`a`
+Note 1003 select `test`.`t1`.`a` AS `a`,(`test`.`t1`.`a` <> 0) AS `not(not(a))`,((`test`.`t1`.`a` > 2) or `test`.`t1`.`a`) AS `not(a <= 2 and not(a))`,(`test`.`t1`.`a` like '1') AS `not(a not like "1")`,(`test`.`t1`.`a` in (1,2)) AS `not (a not in (1,2))`,(`test`.`t1`.`a` = 2) AS `not(a != 2)` from `test`.`t1` where `test`.`t1`.`a` having `test`.`t1`.`a`
drop table t1;
diff --git a/mysql-test/r/no-threads.result b/mysql-test/r/no-threads.result
new file mode 100644
index 00000000000..9bc2dad6e2a
--- /dev/null
+++ b/mysql-test/r/no-threads.result
@@ -0,0 +1,13 @@
+select 1+1;
+1+1
+2
+select 1+2;
+1+2
+3
+SHOW GLOBAL VARIABLES LIKE 'thread_handling';
+Variable_name Value
+thread_handling no-threads
+select @@session.thread_handling;
+ERROR HY000: Variable 'thread_handling' is a GLOBAL variable
+set GLOBAL thread_handling='one-thread';
+ERROR HY000: Variable 'thread_handling' is a read only variable
diff --git a/mysql-test/r/not_as_root.require b/mysql-test/r/not_as_root.require
deleted file mode 100644
index d9ea5244efc..00000000000
--- a/mysql-test/r/not_as_root.require
+++ /dev/null
@@ -1,2 +0,0 @@
-running_as_root
-NO
diff --git a/mysql-test/r/not_embedded_server.result b/mysql-test/r/not_embedded_server.result
index 69175ca446f..60c92bd0196 100644
--- a/mysql-test/r/not_embedded_server.result
+++ b/mysql-test/r/not_embedded_server.result
@@ -1,7 +1,6 @@
-prepare stmt1 from ' show full processlist ';
-execute stmt1;
-Id User Host db Command Time State Info
-number root localhost test Query time NULL show full processlist
-deallocate prepare stmt1;
-FLUSH STATUS;
-Value of com_select did not change
+select 1;
+1
+1
+SHOW VARIABLES like 'slave_skip_errors';
+Variable_name Value
+slave_skip_errors OFF
diff --git a/mysql-test/r/have_bdb.require b/mysql-test/r/not_ndb.require
index 969cd6863db..36fcf7958d4 100644
--- a/mysql-test/r/have_bdb.require
+++ b/mysql-test/r/not_ndb.require
@@ -1,2 +1,2 @@
Variable_name Value
-have_bdb YES
+have_ndbcluster NO
diff --git a/mysql-test/r/not_ndb_default.require b/mysql-test/r/not_ndb_default.require
new file mode 100644
index 00000000000..09aae1ed1d0
--- /dev/null
+++ b/mysql-test/r/not_ndb_default.require
@@ -0,0 +1,2 @@
+TRUE
+1
diff --git a/mysql-test/r/not_partition.require b/mysql-test/r/not_partition.require
new file mode 100644
index 00000000000..808242277cb
--- /dev/null
+++ b/mysql-test/r/not_partition.require
@@ -0,0 +1,2 @@
+Variable_name Value
+have_partitioning NO
diff --git a/mysql-test/r/not_partition.result b/mysql-test/r/not_partition.result
new file mode 100644
index 00000000000..f516f8634ce
--- /dev/null
+++ b/mysql-test/r/not_partition.result
@@ -0,0 +1,93 @@
+DROP TABLE IF EXISTS t1;
+FLUSH TABLES;
+SELECT * FROM t1;
+ERROR 42000: Unknown table engine 'partition'
+TRUNCATE TABLE t1;
+ERROR 42000: Unknown table engine 'partition'
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze Error Unknown table engine 'partition'
+test.t1 analyze error Corrupt
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check Error Unknown table engine 'partition'
+test.t1 check error Corrupt
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize Error Unknown table engine 'partition'
+test.t1 optimize error Corrupt
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair Error Unknown table engine 'partition'
+test.t1 repair error Corrupt
+ALTER TABLE t1 REPAIR PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 repair Error Unknown table engine 'partition'
+test.t1 repair error Corrupt
+ALTER TABLE t1 CHECK PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 check Error Unknown table engine 'partition'
+test.t1 check error Corrupt
+ALTER TABLE t1 OPTIMIZE PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 optimize Error Unknown table engine 'partition'
+test.t1 optimize error Corrupt
+ALTER TABLE t1 ANALYZE PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 analyze Error Unknown table engine 'partition'
+test.t1 analyze error Corrupt
+ALTER TABLE t1 REBUILD PARTITION ALL;
+ERROR 42000: Unknown table engine 'partition'
+ALTER TABLE t1 ENGINE Memory;
+ERROR 42000: Unknown table engine 'partition'
+ALTER TABLE t1 ADD (new INT);
+ERROR 42000: Unknown table engine 'partition'
+DROP TABLE t1;
+CREATE TABLE t1 (
+firstname VARCHAR(25) NOT NULL,
+lastname VARCHAR(25) NOT NULL,
+username VARCHAR(16) NOT NULL,
+email VARCHAR(35),
+joined DATE NOT NULL
+)
+PARTITION BY KEY(joined)
+PARTITIONS 6;
+ERROR HY000: The 'partitioning' feature is disabled; you need MySQL built with '--with-partition' to have it working
+ALTER TABLE t1 PARTITION BY KEY(joined) PARTITIONS 2;
+ERROR HY000: The 'partitioning' feature is disabled; you need MySQL built with '--with-partition' to have it working
+drop table t1;
+ERROR 42S02: Unknown table 't1'
+CREATE TABLE t1 (
+firstname VARCHAR(25) NOT NULL,
+lastname VARCHAR(25) NOT NULL,
+username VARCHAR(16) NOT NULL,
+email VARCHAR(35),
+joined DATE NOT NULL
+)
+PARTITION BY RANGE( YEAR(joined) ) (
+PARTITION p0 VALUES LESS THAN (1960),
+PARTITION p1 VALUES LESS THAN (1970),
+PARTITION p2 VALUES LESS THAN (1980),
+PARTITION p3 VALUES LESS THAN (1990),
+PARTITION p4 VALUES LESS THAN MAXVALUE
+);
+ERROR HY000: The 'partitioning' feature is disabled; you need MySQL built with '--with-partition' to have it working
+drop table t1;
+ERROR 42S02: Unknown table 't1'
+CREATE TABLE t1 (id INT, purchased DATE)
+PARTITION BY RANGE( YEAR(purchased) )
+SUBPARTITION BY HASH( TO_DAYS(purchased) )
+SUBPARTITIONS 2 (
+PARTITION p0 VALUES LESS THAN (1990),
+PARTITION p1 VALUES LESS THAN (2000),
+PARTITION p2 VALUES LESS THAN MAXVALUE
+);
+ERROR HY000: The 'partitioning' feature is disabled; you need MySQL built with '--with-partition' to have it working
+drop table t1;
+ERROR 42S02: Unknown table 't1'
+create table t1 (a varchar(10) charset latin1 collate latin1_bin);
+insert into t1 values (''),(' '),('a'),('a '),('a ');
+explain partitions select * from t1 where a='a ' OR a='a';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 NULL ALL NULL NULL NULL NULL 5 Using where
+drop table t1;
diff --git a/mysql-test/r/not_true.require b/mysql-test/r/not_true.require
new file mode 100644
index 00000000000..0032832f3d1
--- /dev/null
+++ b/mysql-test/r/not_true.require
@@ -0,0 +1,2 @@
+TRUE
+NULL
diff --git a/mysql-test/r/not_valgrind.require b/mysql-test/r/not_valgrind.require
new file mode 100644
index 00000000000..5d779c6bfcb
--- /dev/null
+++ b/mysql-test/r/not_valgrind.require
@@ -0,0 +1,2 @@
+using_valgrind
+0
diff --git a/mysql-test/r/not_windows.require b/mysql-test/r/not_windows.require
new file mode 100644
index 00000000000..09aae1ed1d0
--- /dev/null
+++ b/mysql-test/r/not_windows.require
@@ -0,0 +1,2 @@
+TRUE
+1
diff --git a/mysql-test/r/null.result b/mysql-test/r/null.result
index 090f41baec3..1cdc48e6552 100644
--- a/mysql-test/r/null.result
+++ b/mysql-test/r/null.result
@@ -3,10 +3,10 @@ select null,\N,isnull(null),isnull(1/0),isnull(1/0 = null),ifnull(null,1),ifnull
NULL NULL isnull(null) isnull(1/0) isnull(1/0 = null) ifnull(null,1) ifnull(null,"TRUE") ifnull("TRUE","ERROR") 1/0 is null 1 is not null
NULL NULL 1 1 1 1 TRUE TRUE 1 1
explain extended select null,\N,isnull(null),isnull(1/0),isnull(1/0 = null),ifnull(null,1),ifnull(null,"TRUE"),ifnull("TRUE","ERROR"),1/0 is null,1 is not null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select NULL AS `NULL`,NULL AS `NULL`,isnull(NULL) AS `isnull(null)`,isnull((1 / 0)) AS `isnull(1/0)`,isnull(((1 / 0) = NULL)) AS `isnull(1/0 = null)`,ifnull(NULL,1) AS `ifnull(null,1)`,ifnull(NULL,_latin1'TRUE') AS `ifnull(null,"TRUE")`,ifnull(_latin1'TRUE',_latin1'ERROR') AS `ifnull("TRUE","ERROR")`,isnull((1 / 0)) AS `1/0 is null`,(1 is not null) AS `1 is not null`
+Note 1003 select NULL AS `NULL`,NULL AS `NULL`,isnull(NULL) AS `isnull(null)`,isnull((1 / 0)) AS `isnull(1/0)`,isnull(((1 / 0) = NULL)) AS `isnull(1/0 = null)`,ifnull(NULL,1) AS `ifnull(null,1)`,ifnull(NULL,'TRUE') AS `ifnull(null,"TRUE")`,ifnull('TRUE','ERROR') AS `ifnull("TRUE","ERROR")`,isnull((1 / 0)) AS `1/0 is null`,(1 is not null) AS `1 is not null`
select 1 | NULL,1 & NULL,1+NULL,1-NULL;
1 | NULL 1 & NULL 1+NULL 1-NULL
NULL NULL NULL NULL
@@ -29,8 +29,8 @@ select 2 between null and 1,2 between 3 AND NULL,NULL between 1 and 2,2 between
2 between null and 1 2 between 3 AND NULL NULL between 1 and 2 2 between NULL and 3 2 between 1 AND null
0 0 NULL NULL NULL
explain extended select 2 between null and 1,2 between 3 AND NULL,NULL between 1 and 2,2 between NULL and 3, 2 between 1 AND null;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (2 between NULL and 1) AS `2 between null and 1`,(2 between 3 and NULL) AS `2 between 3 AND NULL`,(NULL between 1 and 2) AS `NULL between 1 and 2`,(2 between NULL and 3) AS `2 between NULL and 3`,(2 between 1 and NULL) AS `2 between 1 AND null`
SELECT NULL AND NULL, 1 AND NULL, NULL AND 1, NULL OR NULL, 0 OR NULL, NULL OR 0;
@@ -46,10 +46,10 @@ select inet_ntoa(null),inet_aton(null),inet_aton("122.256"),inet_aton("122.226."
inet_ntoa(null) inet_aton(null) inet_aton("122.256") inet_aton("122.226.") inet_aton("")
NULL NULL NULL NULL NULL
explain extended select inet_ntoa(null),inet_aton(null),inet_aton("122.256"),inet_aton("122.226."),inet_aton("");
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select inet_ntoa(NULL) AS `inet_ntoa(null)`,inet_aton(NULL) AS `inet_aton(null)`,inet_aton(_latin1'122.256') AS `inet_aton("122.256")`,inet_aton(_latin1'122.226.') AS `inet_aton("122.226.")`,inet_aton(_latin1'') AS `inet_aton("")`
+Note 1003 select inet_ntoa(NULL) AS `inet_ntoa(null)`,inet_aton(NULL) AS `inet_aton(null)`,inet_aton('122.256') AS `inet_aton("122.256")`,inet_aton('122.226.') AS `inet_aton("122.226.")`,inet_aton('') AS `inet_aton("")`
create table t1 (x int);
insert into t1 values (null);
select * from t1 where x != 0;
@@ -227,44 +227,44 @@ rpad(null, 10, 'str') as c38;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c00` binary(0) default NULL,
- `c01` varchar(6) character set latin2 default NULL,
- `c02` varchar(6) character set latin2 default NULL,
- `c03` varchar(6) character set latin2 NOT NULL default '',
- `c04` varchar(6) character set latin2 default NULL,
- `c05` varchar(6) character set latin2 default NULL,
- `c06` varchar(6) character set latin2 default NULL,
- `c07` varchar(6) character set latin2 default NULL,
- `c08` varchar(6) character set latin2 default NULL,
- `c09` varchar(6) character set latin2 default NULL,
- `c10` varchar(6) character set latin2 default NULL,
- `c11` varchar(6) character set latin2 default NULL,
- `c12` varchar(6) character set latin2 default NULL,
- `c13` varchar(6) character set latin2 default NULL,
- `c14` char(0) character set latin2 default NULL,
- `c15` char(0) character set latin2 default NULL,
- `c16` varchar(6) character set latin2 default NULL,
- `c17` varchar(6) character set latin2 default NULL,
- `c18` char(0) character set latin2 default NULL,
- `c19` varchar(6) character set latin2 default NULL,
- `c20` varchar(6) character set latin2 default NULL,
- `c21` varchar(6) character set latin2 default NULL,
- `c22` varchar(6) character set latin2 default NULL,
- `c23` varchar(9) character set latin2 default NULL,
- `c24` varchar(9) character set latin2 default NULL,
- `c25` varchar(12) character set latin2 default NULL,
- `c26` varchar(7) character set latin2 default NULL,
- `c27` varchar(7) character set latin2 default NULL,
- `c29` varchar(381) character set latin2 default NULL,
- `c30` varchar(317) character set latin2 default NULL,
- `c31` varchar(192) character set latin2 default NULL,
- `c32` char(0) character set latin2 default NULL,
- `c33` varchar(3) character set latin2 default NULL,
- `c34` varchar(3) character set latin2 default NULL,
- `c35` varchar(3) character set latin2 default NULL,
- `c36` varchar(3) character set latin2 default NULL,
- `c37` varchar(10) character set latin2 default NULL,
- `c38` varchar(10) character set latin2 default NULL
+ `c00` binary(0) DEFAULT NULL,
+ `c01` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c02` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c03` varchar(6) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `c04` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c05` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c06` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c07` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c08` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c09` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c10` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c11` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c12` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c13` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c14` char(0) CHARACTER SET latin2 DEFAULT NULL,
+ `c15` char(0) CHARACTER SET latin2 DEFAULT NULL,
+ `c16` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c17` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c18` char(0) CHARACTER SET latin2 DEFAULT NULL,
+ `c19` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c20` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c21` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c22` varchar(6) CHARACTER SET latin2 DEFAULT NULL,
+ `c23` varchar(9) CHARACTER SET latin2 DEFAULT NULL,
+ `c24` varchar(9) CHARACTER SET latin2 DEFAULT NULL,
+ `c25` varchar(12) CHARACTER SET latin2 DEFAULT NULL,
+ `c26` varchar(7) CHARACTER SET latin2 DEFAULT NULL,
+ `c27` varchar(7) CHARACTER SET latin2 DEFAULT NULL,
+ `c29` varchar(381) CHARACTER SET latin2 DEFAULT NULL,
+ `c30` varchar(317) CHARACTER SET latin2 DEFAULT NULL,
+ `c31` varchar(192) CHARACTER SET latin2 DEFAULT NULL,
+ `c32` char(0) CHARACTER SET latin2 DEFAULT NULL,
+ `c33` varchar(3) CHARACTER SET latin2 DEFAULT NULL,
+ `c34` varchar(3) CHARACTER SET latin2 DEFAULT NULL,
+ `c35` varchar(3) CHARACTER SET latin2 DEFAULT NULL,
+ `c36` varchar(3) CHARACTER SET latin2 DEFAULT NULL,
+ `c37` varchar(10) CHARACTER SET latin2 DEFAULT NULL,
+ `c38` varchar(10) CHARACTER SET latin2 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select
@@ -299,23 +299,23 @@ alter table bug19145c add column (i int);
show create table bug19145a;
Table Create Table
bug19145a CREATE TABLE `bug19145a` (
- `e` enum('a','b','c') default NULL,
- `s` set('x','y','z') default NULL,
- `i` int(11) default NULL
+ `e` enum('a','b','c') DEFAULT NULL,
+ `s` set('x','y','z') DEFAULT NULL,
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show create table bug19145b;
Table Create Table
bug19145b CREATE TABLE `bug19145b` (
- `e` enum('a','b','c') default NULL,
- `s` set('x','y','z') default NULL,
- `i` int(11) default NULL
+ `e` enum('a','b','c') DEFAULT NULL,
+ `s` set('x','y','z') DEFAULT NULL,
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show create table bug19145c;
Table Create Table
bug19145c CREATE TABLE `bug19145c` (
- `e` enum('a','b','c') NOT NULL default 'b',
- `s` set('x','y','z') NOT NULL default 'y',
- `i` int(11) default NULL
+ `e` enum('a','b','c') NOT NULL DEFAULT 'b',
+ `s` set('x','y','z') NOT NULL DEFAULT 'y',
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table bug19145a;
drop table bug19145b;
diff --git a/mysql-test/r/olap.result b/mysql-test/r/olap.result
index ad04e7304c9..4540c9d5218 100644
--- a/mysql-test/r/olap.result
+++ b/mysql-test/r/olap.result
@@ -87,8 +87,8 @@ TV 2 NULL 200
TV NULL NULL 600
NULL NULL NULL 7785
explain extended select product, country_id , year, sum(profit) from t1 group by product, country_id, year with rollup;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 15 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 15 100.00 Using filesort
Warnings:
Note 1003 select `test`.`t1`.`product` AS `product`,`test`.`t1`.`country_id` AS `country_id`,`test`.`t1`.`year` AS `year`,sum(`test`.`t1`.`profit`) AS `sum(profit)` from `test`.`t1` group by `test`.`t1`.`product`,`test`.`t1`.`country_id`,`test`.`t1`.`year` with rollup
select product, country_id , sum(profit) from t1 group by product desc, country_id with rollup;
diff --git a/mysql-test/r/one_thread_per_connection.require b/mysql-test/r/one_thread_per_connection.require
new file mode 100644
index 00000000000..b2efbca6441
--- /dev/null
+++ b/mysql-test/r/one_thread_per_connection.require
@@ -0,0 +1,2 @@
+@@thread_handling
+one-thread-per-connection
diff --git a/mysql-test/r/openssl_1.result b/mysql-test/r/openssl_1.result
index 697fa33e7c7..b0dd3acd662 100644
--- a/mysql-test/r/openssl_1.result
+++ b/mysql-test/r/openssl_1.result
@@ -56,6 +56,27 @@ Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
+End of 5.0 tests
+DROP TABLE IF EXISTS thread_status;
+DROP EVENT IF EXISTS event_status;
+SET GLOBAL event_scheduler=1;
+CREATE EVENT event_status
+ON SCHEDULE AT NOW()
+ON COMPLETION NOT PRESERVE
+DO
+BEGIN
+CREATE TABLE thread_status
+SELECT variable_name, variable_value
+FROM information_schema.session_status
+WHERE variable_name LIKE 'SSL_ACCEPTS' OR
+variable_name LIKE 'SSL_CALLBACK_CACHE_HITS';
+END$$
+SELECT variable_name, variable_value FROM thread_status;
+variable_name variable_value
+SSL_ACCEPTS #
+SSL_CALLBACK_CACHE_HITS #
+DROP TABLE thread_status;
+SET GLOBAL event_scheduler=0;
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher AES128-SHA
@@ -80,7 +101,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -114,7 +135,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -148,7 +169,7 @@ DROP TABLE IF EXISTS `t1`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -170,3 +191,21 @@ UNLOCK TABLES;
SSL error: Unable to get private key from 'MYSQL_TEST_DIR/std_data/client-cert.pem'
mysqldump: Got error: 2026: SSL connection error when trying to connect
DROP TABLE t1;
+Variable_name Value
+Ssl_cipher DHE-RSA-AES256-SHA
+Variable_name Value
+Ssl_cipher EDH-RSA-DES-CBC3-SHA
+Variable_name Value
+Ssl_cipher EDH-RSA-DES-CBC-SHA
+Variable_name Value
+Ssl_cipher RC4-SHA
+select 'is still running; no cipher request crashed the server' as result from dual;
+result
+is still running; no cipher request crashed the server
+GRANT SELECT ON test.* TO bug42158@localhost REQUIRE X509;
+FLUSH PRIVILEGES;
+SHOW STATUS LIKE 'Ssl_cipher';
+Variable_name Value
+Ssl_cipher DHE-RSA-AES256-SHA
+DROP USER bug42158@localhost;
+End of 5.1 tests
diff --git a/mysql-test/r/openssl_2.result b/mysql-test/r/openssl_2.result
deleted file mode 100644
index 879c623dd40..00000000000
--- a/mysql-test/r/openssl_2.result
+++ /dev/null
@@ -1,25 +0,0 @@
-SHOW STATUS LIKE 'Ssl%';
-Variable_name Value
-Ssl_accepts 1
-Ssl_finished_accepts 1
-Ssl_finished_connects 0
-Ssl_accept_renegotiates 0
-Ssl_connect_renegotiates 0
-Ssl_callback_cache_hits 0
-Ssl_session_cache_hits 0
-Ssl_session_cache_misses 0
-Ssl_session_cache_timeouts 0
-Ssl_used_session_cache_entries 1
-Ssl_client_connects 0
-Ssl_session_cache_overflows 0
-Ssl_session_cache_size 128
-Ssl_session_cache_mode SERVER
-Ssl_sessions_reused 0
-Ssl_ctx_verify_mode 7
-Ssl_ctx_verify_depth 4294967295
-Ssl_verify_mode 7
-Ssl_verify_depth 4294967295
-Ssl_version TLSv1
-Ssl_cipher EDH-RSA-DES-CBC3-SHA
-Ssl_cipher_list
-Ssl_default_timeout 7200
diff --git a/mysql-test/r/order_by.result b/mysql-test/r/order_by.result
index f64bbc79cbd..0c72f816c21 100644
--- a/mysql-test/r/order_by.result
+++ b/mysql-test/r/order_by.result
@@ -495,17 +495,17 @@ gid sid uid
103853 5 250
EXPLAIN select t1.gid, t2.sid, t3.uid from t3, t2, t1 where t2.gid = t1.gid and t2.uid = t3.uid order by t1.gid, t3.uid;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 4 NULL 6 Using index
-1 SIMPLE t2 eq_ref PRIMARY,uid PRIMARY 4 test.t1.gid 1
+1 SIMPLE t2 ALL PRIMARY,uid NULL NULL NULL 6 Using temporary; Using filesort
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 2 test.t2.uid 1 Using where; Using index
+1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.gid 1 Using index
EXPLAIN SELECT t1.gid, t3.uid from t1, t3 where t1.gid = t3.uid order by t1.gid,t3.skr;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ALL PRIMARY NULL NULL NULL 6 Using temporary; Using filesort
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t3.uid 1 Using where; Using index
EXPLAIN SELECT t1.gid, t2.sid, t3.uid from t2, t1, t3 where t2.gid = t1.gid and t2.uid = t3.uid order by t3.uid, t1.gid;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 4 NULL 6 Using index; Using temporary; Using filesort
-1 SIMPLE t2 eq_ref PRIMARY,uid PRIMARY 4 test.t1.gid 1
+1 SIMPLE t2 ALL PRIMARY,uid NULL NULL NULL 6 Using temporary; Using filesort
+1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.gid 1 Using index
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 2 test.t2.uid 1 Using where; Using index
EXPLAIN SELECT t1.gid, t3.uid from t1, t3 where t1.gid = t3.uid order by t3.skr,t1.gid;
id select_type table type possible_keys key key_len ref rows Extra
@@ -1064,6 +1064,358 @@ a b
10 00:00:10
0 00:00:00
DROP TABLE t1;
+CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a), UNIQUE KEY b (b));
+INSERT INTO t1 VALUES (1,1),(2,2);
+CREATE TABLE t2 (a INT, b INT, KEY a (a,b));
+INSERT INTO t2 VALUES (1,1),(1,2),(2,1),(2,2);
+EXPLAIN SELECT 1 FROM t1,t2 WHERE t1.b=2 AND t1.a=t2.a ORDER BY t2.b;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 const PRIMARY,b b 5 const 1
+1 SIMPLE t2 ref a a 5 const 2 Using where; Using index
+DROP TABLE t1,t2;
+CREATE TABLE t1(
+id int auto_increment PRIMARY KEY, c2 int, c3 int, INDEX k2(c2), INDEX k3(c3));
+INSERT INTO t1 (c2,c3) VALUES
+(31,34),(35,38),(34,31),(32,35),(31,39),
+(11,14),(15,18),(14,11),(12,15),(11,19);
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
+UPDATE t1 SET c2=20 WHERE id%100 = 0;
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+40960
+CREATE TABLE t2 LIKE t1;
+INSERT INTO t2 SELECT * FROM t1 ORDER BY id;
+EXPLAIN SELECT id,c3 FROM t2 WHERE c2=11 ORDER BY c3 LIMIT 20;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index k2 k3 5 NULL 111 Using where
+EXPLAIN SELECT id,c3 FROM t2 WHERE c2=11 ORDER BY c3 LIMIT 4000;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref k2 k2 5 const 7341 Using where; Using filesort
+EXPLAIN SELECT id,c3 FROM t2 WHERE c2 BETWEEN 10 AND 12 ORDER BY c3 LIMIT 20;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 index k2 k3 5 NULL 73 Using where
+EXPLAIN SELECT id,c3 FROM t2 WHERE c2 BETWEEN 20 AND 30 ORDER BY c3 LIMIT 4000;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range k2 k2 5 NULL 386 Using where; Using filesort
+SELECT id,c3 FROM t2 WHERE c2=11 ORDER BY c3 LIMIT 20;
+id c3
+6 14
+16 14
+26 14
+36 14
+46 14
+56 14
+66 14
+76 14
+86 14
+96 14
+106 14
+116 14
+126 14
+136 14
+146 14
+156 14
+166 14
+176 14
+186 14
+196 14
+DROP TABLE t1,t2;
+CREATE TABLE t1 (
+a INT,
+b INT,
+PRIMARY KEY (a),
+KEY ab(a, b)
+);
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4);
+INSERT INTO t1 SELECT a + 4, b + 4 FROM t1;
+INSERT INTO t1 SELECT a + 8, b + 8 FROM t1;
+INSERT INTO t1 SELECT a +16, b +16 FROM t1;
+INSERT INTO t1 SELECT a +32, b +32 FROM t1;
+INSERT INTO t1 SELECT a +64, b +64 FROM t1;
+EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR GROUP BY (a, ab) GROUP BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range NULL ab 4 NULL 10 Using index for group-by
+SELECT a FROM t1 IGNORE INDEX FOR GROUP BY (a, ab) GROUP BY a;
+a
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+SELECT @tmp_tables_after = @tmp_tables_before ;
+@tmp_tables_after = @tmp_tables_before
+1
+EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR ORDER BY (a, ab) ORDER BY a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 128 Using index
+SELECT a FROM t1 IGNORE INDEX FOR ORDER BY (a, ab) ORDER BY a;
+a
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+SELECT @tmp_tables_after = @tmp_tables_before;
+@tmp_tables_after = @tmp_tables_before
+1
+DROP TABLE t1;
#
# Bug#31590: Wrong error message on sort buffer being too small.
#
@@ -1092,3 +1444,147 @@ FROM t3;
2
NULL
DROP TABLE t1, t2, t3;
+CREATE TABLE t2 (a varchar(32), b int(11), c float, d double,
+UNIQUE KEY a (a,b,c), KEY b (b), KEY c (c));
+CREATE TABLE t1 (a varchar(32), b char(3), UNIQUE KEY a (a,b), KEY b (b));
+CREATE TABLE t3 (a varchar(32), b char(3), UNIQUE KEY a (a,b));
+INSERT INTO t3 SELECT * FROM t1;
+EXPLAIN
+SELECT d FROM t1, t2
+WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
+ORDER BY t2.c LIMIT 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a,b b 4 const 4 Using where; Using temporary; Using filesort
+1 SIMPLE t2 ref a,b,c a 40 test.t1.a,const 11 Using where
+SELECT d FROM t1, t2
+WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
+ORDER BY t2.c LIMIT 1;
+d
+52.5
+EXPLAIN
+SELECT d FROM t3 AS t1, t2 AS t2
+WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
+ORDER BY t2.c LIMIT 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a,b,c c 5 NULL 420 Using where
+1 SIMPLE t1 ref a a 39 test.t2.a,const 10 Using where; Using index
+SELECT d FROM t3 AS t1, t2 AS t2
+WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
+ORDER BY t2.c LIMIT 1;
+d
+52.5
+DROP TABLE t1,t2,t3;
+CREATE TABLE t1 (
+id1 INT NULL,
+id2 INT NOT NULL,
+junk INT NOT NULL,
+PRIMARY KEY (id1, id2, junk),
+INDEX id2_j_id1 (id2, junk, id1)
+);
+INSERT INTO t1 VALUES (1, 1, 1), (2, 1, 2), (3, 1, 3), (4, 1, 4);
+INSERT INTO t1 VALUES (5, 2, 1), (6, 2, 2), (7, 2, 3), (8, 2, 4);
+INSERT INTO t1 VALUES (9, 3, 1), (10, 3, 2), (11, 3, 3), (12, 3, 4);
+INSERT INTO t1 VALUES (13, 4, 1), (14, 4, 2), (15, 4, 3), (16, 4, 4);
+INSERT INTO t1 VALUES (17, 5, 1), (18, 5, 2), (19, 5, 3), (20, 5, 4);
+INSERT INTO t1 VALUES (21, 6, 1), (22, 6, 2), (23, 6, 3), (24, 6, 4);
+INSERT INTO t1 VALUES (25, 7, 1), (26, 7, 2), (27, 7, 3), (28, 7, 4);
+INSERT INTO t1 VALUES (29, 8, 1), (30, 8, 2), (31, 8, 3), (32, 8, 4);
+INSERT INTO t1 VALUES (33, 9, 1), (34, 9, 2), (35, 9, 3), (36, 9, 4);
+EXPLAIN SELECT id1 FROM t1 WHERE id2 = 4 ORDER BY id1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref id2_j_id1 id2_j_id1 4 const 4 Using where; Using index; Using filesort
+SELECT id1 FROM t1 WHERE id2 = 4 ORDER BY id1;
+id1
+13
+14
+15
+16
+DROP TABLE t1;
+CREATE TABLE t1 (
+a INT,
+b INT NOT NULL,
+c char(100),
+KEY (b, c),
+KEY (b, a, c)
+)
+DEFAULT CHARSET = utf8;
+INSERT INTO t1 VALUES
+(1, 1, 1),
+(2, 2, 2),
+(3, 3, 3),
+(4, 4, 4),
+(5, 5, 5),
+(6, 6, 6),
+(7, 7, 7),
+(8, 8, 8),
+(9, 9, 9);
+INSERT INTO t1 SELECT a + 10, b, c FROM t1;
+INSERT INTO t1 SELECT a + 20, b, c FROM t1;
+INSERT INTO t1 SELECT a + 40, b, c FROM t1;
+INSERT INTO t1 SELECT a + 80, b, c FROM t1;
+INSERT INTO t1 SELECT a + 160, b, c FROM t1;
+INSERT INTO t1 SELECT a + 320, b, c FROM t1;
+INSERT INTO t1 SELECT a + 640, b, c FROM t1;
+INSERT INTO t1 SELECT a + 1280, b, c FROM t1 LIMIT 80;
+EXPLAIN
+SELECT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 9;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range b,b_2 b 4 NULL 226 Using where
+SELECT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 9;
+a
+2071
+2061
+2051
+2041
+2031
+2021
+2011
+2001
+1991
+EXPLAIN
+SELECT DISTINCT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 0, 9;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range b,b_2 b 4 NULL 226 Using where; Using temporary
+SELECT DISTINCT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 0, 9;
+a
+2071
+2061
+2051
+2041
+2031
+2021
+2011
+2001
+1991
+DROP TABLE t1;
+#
+# Bug #43029: FORCE INDEX FOR ORDER BY is ignored when join buffering
+# is used
+#
+CREATE TABLE t1 (a INT, b INT, KEY (a));
+INSERT INTO t1 VALUES (0, NULL), (1, NULL), (2, NULL), (3, NULL);
+INSERT INTO t1 SELECT a+4, b FROM t1;
+INSERT INTO t1 SELECT a+8, b FROM t1;
+CREATE TABLE t2 (a INT, b INT);
+INSERT INTO t2 VALUES (0,NULL), (1,NULL), (2,NULL), (3,NULL), (4,NULL);
+INSERT INTO t2 SELECT a+4, b FROM t2;
+# shouldn't have "using filesort"
+EXPLAIN
+SELECT * FROM t1 FORCE INDEX FOR ORDER BY (a), t2 WHERE t1.a < 2 ORDER BY t1.a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 2 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 10
+# should have "using filesort"
+EXPLAIN
+SELECT * FROM t1 USE INDEX FOR ORDER BY (a), t2 WHERE t1.a < 2 ORDER BY t1.a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 2 Using where; Using temporary; Using filesort
+1 SIMPLE t2 ALL NULL NULL NULL NULL 10 Using join buffer
+# should have "using filesort"
+EXPLAIN
+SELECT * FROM t1 FORCE INDEX FOR JOIN (a), t2 WHERE t1.a < 2 ORDER BY t1.a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 2 Using where; Using temporary; Using filesort
+1 SIMPLE t2 ALL NULL NULL NULL NULL 10 Using join buffer
+DROP TABLE t1, t2;
+End of 5.1 tests
diff --git a/mysql-test/r/outfile.result b/mysql-test/r/outfile.result
index e8c62098f95..e5f5a53c1f3 100644
--- a/mysql-test/r/outfile.result
+++ b/mysql-test/r/outfile.result
Binary files differ
diff --git a/mysql-test/r/outfile_loaddata.result b/mysql-test/r/outfile_loaddata.result
index 4a9bdcf412d..453e3adb54c 100644
--- a/mysql-test/r/outfile_loaddata.result
+++ b/mysql-test/r/outfile_loaddata.result
@@ -91,13 +91,152 @@ SELECT HEX(c1) FROM t1;
HEX(c1)
C3
SELECT * INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/bug32533.txt' FIELDS ENCLOSED BY 0xC3 FROM t1;
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
TRUNCATE t1;
SELECT HEX(LOAD_FILE('MYSQLTEST_VARDIR/tmp/bug32533.txt'));
HEX(LOAD_FILE('MYSQLTEST_VARDIR/tmp/bug32533.txt'))
C35CC3C30A
LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/bug32533.txt' INTO TABLE t1 FIELDS ENCLOSED BY 0xC3;
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
SELECT HEX(c1) FROM t1;
HEX(c1)
C3
DROP TABLE t1;
# End of 5.0 tests.
+#
+# Bug #30946: mysqldump silently ignores --default-character-set
+# when used with --tab
+#
+# Also see mysqldump.test
+#
+SET NAMES utf8;
+CREATE TABLE t1 (a INT, b CHAR(10) CHARSET koi8r, c CHAR(10) CHARSET latin1);
+CREATE TABLE t2 LIKE t1;
+INSERT INTO t1 VALUES (1, 'ABC-АБВ', 'DEF-ÂÃÄ'), (2, NULL, NULL);
+# Error on multi-character ENCLOSED/ESCAPED BY
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' FIELDS ENCLOSED BY '12345';
+ERROR 42000: Field separator argument is not what is expected; check the manual
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' FIELDS ESCAPED BY '12345';
+ERROR 42000: Field separator argument is not what is expected; check the manual
+# "Not implemented" warning on multibyte ENCLOSED/ESCAPED BY character,
+# LOAD DATA rises error or has unpredictable result -- to be fixed later
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' FIELDS ENCLOSED BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary FIELDS ENCLOSED BY 'ъ';
+ERROR 42000: Field separator argument is not what is expected; check the manual
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' FIELDS ESCAPED BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary FIELDS ESCAPED BY 'ъ';
+ERROR 42000: Field separator argument is not what is expected; check the manual
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' FIELDS TERMINATED BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+##################################################
+1ъABC-ъDEF-
+2ъ\Nъ\N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary FIELDS TERMINATED BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+Warning 1265 Data truncated for column 'a' at row 1
+Warning 1261 Row 1 doesn't contain data for all columns
+Warning 1261 Row 1 doesn't contain data for all columns
+Warning 1265 Data truncated for column 'a' at row 2
+Warning 1261 Row 2 doesn't contain data for all columns
+Warning 1261 Row 2 doesn't contain data for all columns
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 NULL NULL
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' LINES STARTING BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+##################################################
+ъ1 ABC- DEF-
+ъ2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary LINES STARTING BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+SELECT * FROM t1 INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' LINES TERMINATED BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+##################################################
+1 ABC- DEF-ъ2 \N \Nъ##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary LINES TERMINATED BY 'ъ';
+Warnings:
+Warning 1638 Non-ASCII separator arguments are not fully supported
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-ÂÃÄ
+1 ABC-АБВ DEF-ÂÃÄÑŠ2
+2 NULL NULL
+# Default (binary) charset:
+SELECT * INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' FROM t1;
+##################################################
+1 ABC- DEF-
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET binary;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+# latin1 charset (INTO OUTFILE warning is expected):
+SELECT * INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' CHARACTER SET latin1 FROM t1;
+Warnings:
+Warning 1366 Incorrect string value: '\xE1\xE2\xF7' for column 'b' at row 1
+##################################################
+1 ABC-??? DEF-
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET latin1 ;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-??? DEF-ÂÃÄ
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+# KOI8-R charset (INTO OUTFILE warning is expected):
+SELECT * INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' CHARACTER SET koi8r FROM t1;
+Warnings:
+Warning 1366 Incorrect string value: '\xC2\xC3\xC4' for column 'c' at row 1
+##################################################
+1 ABC- DEF-???
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET koi8r;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-???
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+# UTF-8 charset:
+SELECT * INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' CHARACTER SET utf8 FROM t1;
+##################################################
+1 ABC-АБВ DEF-ÂÃÄ
+2 \N \N
+##################################################
+TRUNCATE t2;
+LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/t1.txt' INTO TABLE t2 CHARACTER SET utf8;
+SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
+a b c
+1 ABC-АБВ DEF-ÂÃÄ
+2 NULL NULL
+SET NAMES default;
+DROP TABLE t1, t2;
+# End of 5.1 tests.
diff --git a/mysql-test/r/parser.result b/mysql-test/r/parser.result
index 18391bd2a45..7e703de0876 100644
--- a/mysql-test/r/parser.result
+++ b/mysql-test/r/parser.result
@@ -1,3 +1,289 @@
+SET @save_sql_mode=@@sql_mode;
+set SQL_MODE='';
+create table ADDDATE(a int);
+drop table ADDDATE;
+create table ADDDATE (a int);
+drop table ADDDATE;
+create table BIT_AND(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_AND(a int)' at line 1
+create table BIT_AND (a int);
+drop table BIT_AND;
+create table BIT_OR(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_OR(a int)' at line 1
+create table BIT_OR (a int);
+drop table BIT_OR;
+create table BIT_XOR(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_XOR(a int)' at line 1
+create table BIT_XOR (a int);
+drop table BIT_XOR;
+create table CAST(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CAST(a int)' at line 1
+create table CAST (a int);
+drop table CAST;
+create table COUNT(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COUNT(a int)' at line 1
+create table COUNT (a int);
+drop table COUNT;
+create table CURDATE(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURDATE(a int)' at line 1
+create table CURDATE (a int);
+drop table CURDATE;
+create table CURTIME(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURTIME(a int)' at line 1
+create table CURTIME (a int);
+drop table CURTIME;
+create table DATE_ADD(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATE_ADD(a int)' at line 1
+create table DATE_ADD (a int);
+drop table DATE_ADD;
+create table DATE_SUB(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATE_SUB(a int)' at line 1
+create table DATE_SUB (a int);
+drop table DATE_SUB;
+create table EXTRACT(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXTRACT(a int)' at line 1
+create table EXTRACT (a int);
+drop table EXTRACT;
+create table GROUP_CONCAT(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP_CONCAT(a int)' at line 1
+create table GROUP_CONCAT (a int);
+drop table GROUP_CONCAT;
+create table GROUP_UNIQUE_USERS(a int);
+drop table GROUP_UNIQUE_USERS;
+create table GROUP_UNIQUE_USERS (a int);
+drop table GROUP_UNIQUE_USERS;
+create table MAX(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MAX(a int)' at line 1
+create table MAX (a int);
+drop table MAX;
+create table MID(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MID(a int)' at line 1
+create table MID (a int);
+drop table MID;
+create table MIN(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MIN(a int)' at line 1
+create table MIN (a int);
+drop table MIN;
+create table NOW(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOW(a int)' at line 1
+create table NOW (a int);
+drop table NOW;
+create table POSITION(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'POSITION(a int)' at line 1
+create table POSITION (a int);
+drop table POSITION;
+create table SESSION_USER(a int);
+drop table SESSION_USER;
+create table SESSION_USER (a int);
+drop table SESSION_USER;
+create table STD(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STD(a int)' at line 1
+create table STD (a int);
+drop table STD;
+create table STDDEV(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV(a int)' at line 1
+create table STDDEV (a int);
+drop table STDDEV;
+create table STDDEV_POP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV_POP(a int)' at line 1
+create table STDDEV_POP (a int);
+drop table STDDEV_POP;
+create table STDDEV_SAMP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV_SAMP(a int)' at line 1
+create table STDDEV_SAMP (a int);
+drop table STDDEV_SAMP;
+create table SUBDATE(a int);
+drop table SUBDATE;
+create table SUBDATE (a int);
+drop table SUBDATE;
+create table SUBSTR(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUBSTR(a int)' at line 1
+create table SUBSTR (a int);
+drop table SUBSTR;
+create table SUBSTRING(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUBSTRING(a int)' at line 1
+create table SUBSTRING (a int);
+drop table SUBSTRING;
+create table SUM(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUM(a int)' at line 1
+create table SUM (a int);
+drop table SUM;
+create table SYSDATE(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SYSDATE(a int)' at line 1
+create table SYSDATE (a int);
+drop table SYSDATE;
+create table SYSTEM_USER(a int);
+drop table SYSTEM_USER;
+create table SYSTEM_USER (a int);
+drop table SYSTEM_USER;
+create table TRIM(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TRIM(a int)' at line 1
+create table TRIM (a int);
+drop table TRIM;
+create table UNIQUE_USERS(a int);
+drop table UNIQUE_USERS;
+create table UNIQUE_USERS (a int);
+drop table UNIQUE_USERS;
+create table VARIANCE(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VARIANCE(a int)' at line 1
+create table VARIANCE (a int);
+drop table VARIANCE;
+create table VAR_POP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAR_POP(a int)' at line 1
+create table VAR_POP (a int);
+drop table VAR_POP;
+create table VAR_SAMP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAR_SAMP(a int)' at line 1
+create table VAR_SAMP (a int);
+drop table VAR_SAMP;
+set SQL_MODE='IGNORE_SPACE';
+create table ADDDATE(a int);
+drop table ADDDATE;
+create table ADDDATE (a int);
+drop table ADDDATE;
+create table BIT_AND(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_AND(a int)' at line 1
+create table BIT_AND (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_AND (a int)' at line 1
+create table BIT_OR(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_OR(a int)' at line 1
+create table BIT_OR (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_OR (a int)' at line 1
+create table BIT_XOR(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_XOR(a int)' at line 1
+create table BIT_XOR (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT_XOR (a int)' at line 1
+create table CAST(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CAST(a int)' at line 1
+create table CAST (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CAST (a int)' at line 1
+create table COUNT(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COUNT(a int)' at line 1
+create table COUNT (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COUNT (a int)' at line 1
+create table CURDATE(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURDATE(a int)' at line 1
+create table CURDATE (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURDATE (a int)' at line 1
+create table CURTIME(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURTIME(a int)' at line 1
+create table CURTIME (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURTIME (a int)' at line 1
+create table DATE_ADD(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATE_ADD(a int)' at line 1
+create table DATE_ADD (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATE_ADD (a int)' at line 1
+create table DATE_SUB(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATE_SUB(a int)' at line 1
+create table DATE_SUB (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATE_SUB (a int)' at line 1
+create table EXTRACT(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXTRACT(a int)' at line 1
+create table EXTRACT (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXTRACT (a int)' at line 1
+create table GROUP_CONCAT(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP_CONCAT(a int)' at line 1
+create table GROUP_CONCAT (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP_CONCAT (a int)' at line 1
+create table GROUP_UNIQUE_USERS(a int);
+drop table GROUP_UNIQUE_USERS;
+create table GROUP_UNIQUE_USERS (a int);
+drop table GROUP_UNIQUE_USERS;
+create table MAX(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MAX(a int)' at line 1
+create table MAX (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MAX (a int)' at line 1
+create table MID(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MID(a int)' at line 1
+create table MID (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MID (a int)' at line 1
+create table MIN(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MIN(a int)' at line 1
+create table MIN (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MIN (a int)' at line 1
+create table NOW(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOW(a int)' at line 1
+create table NOW (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOW (a int)' at line 1
+create table POSITION(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'POSITION(a int)' at line 1
+create table POSITION (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'POSITION (a int)' at line 1
+create table SESSION_USER(a int);
+drop table SESSION_USER;
+create table SESSION_USER (a int);
+drop table SESSION_USER;
+create table STD(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STD(a int)' at line 1
+create table STD (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STD (a int)' at line 1
+create table STDDEV(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV(a int)' at line 1
+create table STDDEV (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV (a int)' at line 1
+create table STDDEV_POP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV_POP(a int)' at line 1
+create table STDDEV_POP (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV_POP (a int)' at line 1
+create table STDDEV_SAMP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV_SAMP(a int)' at line 1
+create table STDDEV_SAMP (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STDDEV_SAMP (a int)' at line 1
+create table SUBDATE(a int);
+drop table SUBDATE;
+create table SUBDATE (a int);
+drop table SUBDATE;
+create table SUBSTR(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUBSTR(a int)' at line 1
+create table SUBSTR (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUBSTR (a int)' at line 1
+create table SUBSTRING(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUBSTRING(a int)' at line 1
+create table SUBSTRING (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUBSTRING (a int)' at line 1
+create table SUM(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUM(a int)' at line 1
+create table SUM (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUM (a int)' at line 1
+create table SYSDATE(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SYSDATE(a int)' at line 1
+create table SYSDATE (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SYSDATE (a int)' at line 1
+create table SYSTEM_USER(a int);
+drop table SYSTEM_USER;
+create table SYSTEM_USER (a int);
+drop table SYSTEM_USER;
+create table TRIM(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TRIM(a int)' at line 1
+create table TRIM (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TRIM (a int)' at line 1
+create table UNIQUE_USERS(a int);
+drop table UNIQUE_USERS;
+create table UNIQUE_USERS (a int);
+drop table UNIQUE_USERS;
+create table VARIANCE(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VARIANCE(a int)' at line 1
+create table VARIANCE (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VARIANCE (a int)' at line 1
+create table VAR_POP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAR_POP(a int)' at line 1
+create table VAR_POP (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAR_POP (a int)' at line 1
+create table VAR_SAMP(a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAR_SAMP(a int)' at line 1
+create table VAR_SAMP (a int);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAR_SAMP (a int)' at line 1
+DROP TABLE IF EXISTS table_25930_a;
+DROP TABLE IF EXISTS table_25930_b;
+SET SQL_MODE = 'ANSI_QUOTES';
+CREATE TABLE table_25930_a ( "blah" INT );
+CREATE TABLE table_25930_b SELECT "blah" - 1 FROM table_25930_a;
+desc table_25930_b;
+Field Type Null Key Default Extra
+"blah" - 1 bigint(12) YES NULL
+DROP TABLE table_25930_a;
+DROP TABLE table_25930_b;
+SET @@sql_mode=@save_sql_mode;
DROP PROCEDURE IF EXISTS p26030;
select "non terminated"$$
non terminated
@@ -66,3 +352,269 @@ $$
1
1
DROP PROCEDURE p26030;
+select pi(3.14);
+ERROR 42000: Incorrect parameter count in the call to native function 'pi'
+select tan();
+ERROR 42000: Incorrect parameter count in the call to native function 'tan'
+select tan(1, 2);
+ERROR 42000: Incorrect parameter count in the call to native function 'tan'
+select makedate(1);
+ERROR 42000: Incorrect parameter count in the call to native function 'makedate'
+select makedate(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'makedate'
+select maketime();
+ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
+select maketime(1);
+ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
+select maketime(1, 2);
+ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
+select maketime(1, 2, 3, 4);
+ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
+select atan();
+ERROR 42000: Incorrect parameter count in the call to native function 'atan'
+select atan2(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'atan2'
+select concat();
+ERROR 42000: Incorrect parameter count in the call to native function 'concat'
+select concat("foo");
+concat("foo")
+foo
+select concat_ws();
+ERROR 42000: Incorrect parameter count in the call to native function 'concat_ws'
+select concat_ws("foo");
+ERROR 42000: Incorrect parameter count in the call to native function 'concat_ws'
+select encrypt();
+ERROR 42000: Incorrect parameter count in the call to native function 'encrypt'
+select encrypt(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'encrypt'
+select des_encrypt("p1", "p2", "not expected");
+ERROR 42000: Incorrect parameter count in the call to native function 'des_encrypt'
+select des_decrypt("p1", "p2", "not expected");
+ERROR 42000: Incorrect parameter count in the call to native function 'des_decrypt'
+select elt();
+ERROR 42000: Incorrect parameter count in the call to native function 'elt'
+select elt(1);
+ERROR 42000: Incorrect parameter count in the call to native function 'elt'
+select export_set();
+ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
+select export_set("p1");
+ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
+select export_set("p1", "p2");
+ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
+select export_set("p1", "p2", "p3", "p4", "p5", "p6");
+ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
+select field();
+ERROR 42000: Incorrect parameter count in the call to native function 'field'
+select field("p1");
+ERROR 42000: Incorrect parameter count in the call to native function 'field'
+select from_unixtime();
+ERROR 42000: Incorrect parameter count in the call to native function 'from_unixtime'
+select from_unixtime(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'from_unixtime'
+select unix_timestamp(1, 2);
+ERROR 42000: Incorrect parameter count in the call to native function 'unix_timestamp'
+select greatest();
+ERROR 42000: Incorrect parameter count in the call to native function 'greatest'
+select greatest(12);
+ERROR 42000: Incorrect parameter count in the call to native function 'greatest'
+select last_insert_id(1, 2);
+ERROR 42000: Incorrect parameter count in the call to native function 'last_insert_id'
+select least();
+ERROR 42000: Incorrect parameter count in the call to native function 'least'
+select least(12);
+ERROR 42000: Incorrect parameter count in the call to native function 'least'
+select locate();
+ERROR 42000: Incorrect parameter count in the call to native function 'locate'
+select locate(1);
+ERROR 42000: Incorrect parameter count in the call to native function 'locate'
+select locate(1, 2, 3, 4);
+ERROR 42000: Incorrect parameter count in the call to native function 'locate'
+select log();
+ERROR 42000: Incorrect parameter count in the call to native function 'log'
+select log(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'log'
+select make_set();
+ERROR 42000: Incorrect parameter count in the call to native function 'make_set'
+select make_set(1);
+ERROR 42000: Incorrect parameter count in the call to native function 'make_set'
+select master_pos_wait();
+ERROR 42000: Incorrect parameter count in the call to native function 'master_pos_wait'
+select master_pos_wait(1);
+ERROR 42000: Incorrect parameter count in the call to native function 'master_pos_wait'
+select master_pos_wait(1, 2, 3, 4);
+ERROR 42000: Incorrect parameter count in the call to native function 'master_pos_wait'
+select rand(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'rand'
+select round(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'round'
+select yearweek();
+ERROR 42000: Incorrect parameter count in the call to native function 'yearweek'
+select yearweek(1, 2, 3);
+ERROR 42000: Incorrect parameter count in the call to native function 'yearweek'
+select abs(3);
+abs(3)
+3
+select abs(3 AS three);
+ERROR 42000: Incorrect parameters in the call to native function 'abs'
+select abs(3 three);
+ERROR 42000: Incorrect parameters in the call to native function 'abs'
+select abs(3 AS "three");
+ERROR 42000: Incorrect parameters in the call to native function 'abs'
+select abs(3 "three");
+ERROR 42000: Incorrect parameters in the call to native function 'abs'
+set @bar="bar";
+set @foobar="foobar";
+select instr("foobar", "bar");
+instr("foobar", "bar")
+4
+select instr("foobar" AS p1, "bar");
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar" p1, "bar");
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar" AS "p1", "bar");
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar" "p1", "bar");
+instr("foobar" "p1", "bar")
+4
+select instr(@foobar "p1", "bar");
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar", "bar" AS p2);
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar", "bar" p2);
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar", "bar" AS "p2");
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar", "bar" "p2");
+instr("foobar", "bar" "p2")
+0
+select instr("foobar", @bar "p2");
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select instr("foobar" AS p1, "bar" AS p2);
+ERROR 42000: Incorrect parameters in the call to native function 'instr'
+select conv(255, 10, 16);
+conv(255, 10, 16)
+FF
+select conv(255 AS p1, 10, 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255 p1, 10, 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255 AS "p1", 10, 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255 "p1", 10, 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10 AS p2, 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10 p2, 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10 AS "p2", 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10 "p2", 16);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10, 16 AS p3);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10, 16 p3);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10, 16 AS "p3");
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255, 10, 16 "p3");
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select conv(255 AS p1, 10 AS p2, 16 AS p3);
+ERROR 42000: Incorrect parameters in the call to native function 'conv'
+select atan(10);
+atan(10)
+1.47112767430373
+select atan(10 AS p1);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 p1);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 AS "p1");
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 "p1");
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10, 20);
+atan(10, 20)
+0.463647609000806
+select atan(10 AS p1, 20);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 p1, 20);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 AS "p1", 20);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 "p1", 20);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10, 20 AS p2);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10, 20 p2);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10, 20 AS "p2");
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10, 20 "p2");
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+select atan(10 AS p1, 20 AS p2);
+ERROR 42000: Incorrect parameters in the call to native function 'atan'
+DROP TABLE IF EXISTS t1;
+SELECT STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL 10 MINUTE;
+STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL 10 MINUTE
+NULL
+SELECT STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL (INTERVAL(1,2,3) + 1) MINUTE;
+STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL (INTERVAL(1,2,3) + 1) MINUTE
+NULL
+SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND;
+"1997-12-31 23:59:59" + INTERVAL 1 SECOND
+1998-01-01 00:00:00
+SELECT 1 + INTERVAL(1,0,1,2) + 1;
+1 + INTERVAL(1,0,1,2) + 1
+4
+SELECT INTERVAL(1^1,0,1,2) + 1;
+INTERVAL(1^1,0,1,2) + 1
+2
+SELECT INTERVAL(1,0+1,2,3) * 5.5;
+INTERVAL(1,0+1,2,3) * 5.5
+5.5
+SELECT INTERVAL(3,3,1+3,4+4) / 0.5;
+INTERVAL(3,3,1+3,4+4) / 0.5
+2.0000
+SELECT (INTERVAL(1,0,1,2) + 5) * 7 + INTERVAL(1,0,1,2) / 2;
+(INTERVAL(1,0,1,2) + 5) * 7 + INTERVAL(1,0,1,2) / 2
+50.0000
+SELECT INTERVAL(1,0,1,2) + 1, 5 * INTERVAL(1,0,1,2);
+INTERVAL(1,0,1,2) + 1 5 * INTERVAL(1,0,1,2)
+3 10
+SELECT INTERVAL(0,(1*5)/2) + INTERVAL(5,4,3);
+INTERVAL(0,(1*5)/2) + INTERVAL(5,4,3)
+2
+SELECT 1^1 + INTERVAL 1+1 SECOND & 1 + INTERVAL 1+1 SECOND;
+1^1 + INTERVAL 1+1 SECOND & 1 + INTERVAL 1+1 SECOND
+NULL
+SELECT 1%2 - INTERVAL 1^1 SECOND | 1%2 - INTERVAL 1^1 SECOND;
+1%2 - INTERVAL 1^1 SECOND | 1%2 - INTERVAL 1^1 SECOND
+NULL
+CREATE TABLE t1 (a INT, b DATETIME);
+INSERT INTO t1 VALUES (INTERVAL(3,2,1) + 1, "1997-12-31 23:59:59" + INTERVAL 1 SECOND);
+SELECT * FROM t1 WHERE a = INTERVAL(3,2,1) + 1;
+a b
+3 1998-01-01 00:00:00
+DROP TABLE t1;
+DROP TABLE IF EXISTS t1,t2,t3;
+CREATE TABLE t1 (a1 INT, a2 INT, a3 INT, a4 DATETIME);
+CREATE TABLE t2 LIKE t1;
+CREATE TABLE t3 LIKE t1;
+SELECT t1.* FROM t1 AS t0, { OJ t2 INNER JOIN t1 ON (t1.a1=t2.a1) } WHERE t0.a3=2;
+a1 a2 a3 a4
+SELECT t1.*,t2.* FROM { OJ ((t1 INNER JOIN t2 ON (t1.a1=t2.a2)) LEFT OUTER JOIN t3 ON t3.a3=t2.a1)};
+a1 a2 a3 a4 a1 a2 a3 a4
+SELECT t1.*,t2.* FROM { OJ ((t1 LEFT OUTER JOIN t2 ON t1.a3=t2.a2) INNER JOIN t3 ON (t3.a1=t2.a2))};
+a1 a2 a3 a4 a1 a2 a3 a4
+SELECT t1.*,t2.* FROM { OJ (t1 LEFT OUTER JOIN t2 ON t1.a1=t2.a2) CROSS JOIN t3 ON (t3.a2=t2.a3)};
+a1 a2 a3 a4 a1 a2 a3 a4
+SELECT * FROM {oj t1 LEFT OUTER JOIN t2 ON t1.a1=t2.a3} WHERE t1.a2 > 10;
+a1 a2 a3 a4 a1 a2 a3 a4
+SELECT {fn CONCAT(a1,a2)} FROM t1;
+{fn CONCAT(a1,a2)}
+UPDATE t3 SET a4={d '1789-07-14'} WHERE a1=0;
+SELECT a1, a4 FROM t2 WHERE a4 LIKE {fn UCASE('1789-07-14')};
+a1 a4
+DROP TABLE t1, t2, t3;
+#
+# End of 5.1 tests
+#
diff --git a/mysql-test/r/parser_bug21114_innodb.result b/mysql-test/r/parser_bug21114_innodb.result
new file mode 100644
index 00000000000..e39b63f571d
--- /dev/null
+++ b/mysql-test/r/parser_bug21114_innodb.result
@@ -0,0 +1,867 @@
+drop table if exists abs;
+drop table if exists bug21114_child;
+SHOW CREATE TABLE abs;
+Table Create Table
+abs CREATE TABLE `abs` (
+ `col1` int(11) NOT NULL,
+ `col2` int(11) NOT NULL,
+ `col3` varchar(10) DEFAULT NULL,
+ PRIMARY KEY (`col1`,`col2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+SHOW CREATE TABLE bug21114_child;
+Table Create Table
+bug21114_child CREATE TABLE `bug21114_child` (
+ `pk` int(11) NOT NULL,
+ `fk_col1` int(11) NOT NULL,
+ `fk_col2` int(11) NOT NULL,
+ `fk_col3` int(11) NOT NULL,
+ `fk_col4` int(11) NOT NULL,
+ KEY `fk_fct` (`fk_col1`,`fk_col2`),
+ KEY `fk_fct_space` (`fk_col3`,`fk_col4`),
+ CONSTRAINT `fk_fct` FOREIGN KEY (`fk_col1`, `fk_col2`) REFERENCES `abs` (`col1`, `col2`),
+ CONSTRAINT `fk_fct_space` FOREIGN KEY (`fk_col3`, `fk_col4`) REFERENCES `abs` (`col1`, `col2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TABLE bug21114_child;
+DROP TABLE abs;
+drop table if exists field;
+drop table if exists bug21114_child;
+SHOW CREATE TABLE field;
+Table Create Table
+field CREATE TABLE `field` (
+ `col1` int(11) NOT NULL,
+ `col2` int(11) NOT NULL,
+ `col3` varchar(10) DEFAULT NULL,
+ PRIMARY KEY (`col1`,`col2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+SHOW CREATE TABLE bug21114_child;
+Table Create Table
+bug21114_child CREATE TABLE `bug21114_child` (
+ `pk` int(11) NOT NULL,
+ `fk_col1` int(11) NOT NULL,
+ `fk_col2` int(11) NOT NULL,
+ `fk_col3` int(11) NOT NULL,
+ `fk_col4` int(11) NOT NULL,
+ KEY `fk_fct` (`fk_col1`,`fk_col2`),
+ KEY `fk_fct_space` (`fk_col3`,`fk_col4`),
+ CONSTRAINT `fk_fct` FOREIGN KEY (`fk_col1`, `fk_col2`) REFERENCES `field` (`col1`, `col2`),
+ CONSTRAINT `fk_fct_space` FOREIGN KEY (`fk_col3`, `fk_col4`) REFERENCES `field` (`col1`, `col2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TABLE bug21114_child;
+DROP TABLE field;
+drop table if exists format;
+drop table if exists bug21114_child;
+SHOW CREATE TABLE format;
+Table Create Table
+format CREATE TABLE `format` (
+ `col1` int(11) NOT NULL,
+ `col2` int(11) NOT NULL,
+ `col3` varchar(10) DEFAULT NULL,
+ PRIMARY KEY (`col1`,`col2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+SHOW CREATE TABLE bug21114_child;
+Table Create Table
+bug21114_child CREATE TABLE `bug21114_child` (
+ `pk` int(11) NOT NULL,
+ `fk_col1` int(11) NOT NULL,
+ `fk_col2` int(11) NOT NULL,
+ `fk_col3` int(11) NOT NULL,
+ `fk_col4` int(11) NOT NULL,
+ KEY `fk_fct` (`fk_col1`,`fk_col2`),
+ KEY `fk_fct_space` (`fk_col3`,`fk_col4`),
+ CONSTRAINT `fk_fct` FOREIGN KEY (`fk_col1`, `fk_col2`) REFERENCES `format` (`col1`, `col2`),
+ CONSTRAINT `fk_fct_space` FOREIGN KEY (`fk_col3`, `fk_col4`) REFERENCES `format` (`col1`, `col2`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TABLE bug21114_child;
+DROP TABLE format;
+drop table if exists acos;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE acos;
+drop table if exists adddate;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE adddate;
+drop table if exists addtime;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE addtime;
+drop table if exists aes_decrypt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE aes_decrypt;
+drop table if exists aes_encrypt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE aes_encrypt;
+drop table if exists area;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE area;
+drop table if exists asbinary;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE asbinary;
+drop table if exists asin;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE asin;
+drop table if exists astext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE astext;
+drop table if exists aswkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE aswkb;
+drop table if exists aswkt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE aswkt;
+drop table if exists atan;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE atan;
+drop table if exists atan2;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE atan2;
+drop table if exists benchmark;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE benchmark;
+drop table if exists bin;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE bin;
+drop table if exists bit_count;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE bit_count;
+drop table if exists bit_length;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE bit_length;
+drop table if exists ceil;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ceil;
+drop table if exists ceiling;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ceiling;
+drop table if exists centroid;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE centroid;
+drop table if exists character_length;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE character_length;
+drop table if exists char_length;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE char_length;
+drop table if exists coercibility;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE coercibility;
+drop table if exists compress;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE compress;
+drop table if exists concat;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE concat;
+drop table if exists concat_ws;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE concat_ws;
+drop table if exists connection_id;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE connection_id;
+drop table if exists conv;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE conv;
+drop table if exists convert_tz;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE convert_tz;
+drop table if exists cos;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE cos;
+drop table if exists cot;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE cot;
+drop table if exists crc32;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE crc32;
+drop table if exists crosses;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE crosses;
+drop table if exists datediff;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE datediff;
+drop table if exists date_format;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE date_format;
+drop table if exists dayname;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE dayname;
+drop table if exists dayofmonth;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE dayofmonth;
+drop table if exists dayofweek;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE dayofweek;
+drop table if exists dayofyear;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE dayofyear;
+drop table if exists decode;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE decode;
+drop table if exists degrees;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE degrees;
+drop table if exists des_decrypt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE des_decrypt;
+drop table if exists des_encrypt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE des_encrypt;
+drop table if exists dimension;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE dimension;
+drop table if exists disjoint;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE disjoint;
+drop table if exists elt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE elt;
+drop table if exists encode;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE encode;
+drop table if exists encrypt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE encrypt;
+drop table if exists endpoint;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE endpoint;
+drop table if exists envelope;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE envelope;
+drop table if exists equals;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE equals;
+drop table if exists exp;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE exp;
+drop table if exists export_set;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE export_set;
+drop table if exists exteriorring;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE exteriorring;
+drop table if exists extractvalue;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE extractvalue;
+drop table if exists find_in_set;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE find_in_set;
+drop table if exists floor;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE floor;
+drop table if exists found_rows;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE found_rows;
+drop table if exists from_days;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE from_days;
+drop table if exists from_unixtime;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE from_unixtime;
+drop table if exists geomcollfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geomcollfromtext;
+drop table if exists geomcollfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geomcollfromwkb;
+drop table if exists geometrycollectionfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geometrycollectionfromtext;
+drop table if exists geometrycollectionfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geometrycollectionfromwkb;
+drop table if exists geometryfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geometryfromtext;
+drop table if exists geometryfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geometryfromwkb;
+drop table if exists geometryn;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geometryn;
+drop table if exists geometrytype;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geometrytype;
+drop table if exists geomfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geomfromtext;
+drop table if exists geomfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE geomfromwkb;
+drop table if exists get_lock;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE get_lock;
+drop table if exists glength;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE glength;
+drop table if exists greatest;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE greatest;
+drop table if exists hex;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE hex;
+drop table if exists ifnull;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ifnull;
+drop table if exists inet_aton;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE inet_aton;
+drop table if exists inet_ntoa;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE inet_ntoa;
+drop table if exists instr;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE instr;
+drop table if exists interiorringn;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE interiorringn;
+drop table if exists intersects;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE intersects;
+drop table if exists isclosed;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE isclosed;
+drop table if exists isempty;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE isempty;
+drop table if exists isnull;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE isnull;
+drop table if exists issimple;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE issimple;
+drop table if exists is_free_lock;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE is_free_lock;
+drop table if exists is_used_lock;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE is_used_lock;
+drop table if exists last_day;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE last_day;
+drop table if exists last_insert_id;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE last_insert_id;
+drop table if exists lcase;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE lcase;
+drop table if exists least;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE least;
+drop table if exists length;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE length;
+drop table if exists linefromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE linefromtext;
+drop table if exists linefromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE linefromwkb;
+drop table if exists linestringfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE linestringfromtext;
+drop table if exists linestringfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE linestringfromwkb;
+drop table if exists ln;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ln;
+drop table if exists load_file;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE load_file;
+drop table if exists locate;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE locate;
+drop table if exists log;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE log;
+drop table if exists log10;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE log10;
+drop table if exists log2;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE log2;
+drop table if exists lower;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE lower;
+drop table if exists lpad;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE lpad;
+drop table if exists ltrim;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ltrim;
+drop table if exists makedate;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE makedate;
+drop table if exists maketime;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE maketime;
+drop table if exists make_set;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE make_set;
+drop table if exists master_pos_wait;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE master_pos_wait;
+drop table if exists mbrcontains;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbrcontains;
+drop table if exists mbrdisjoint;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbrdisjoint;
+drop table if exists mbrequal;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbrequal;
+drop table if exists mbrintersects;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbrintersects;
+drop table if exists mbroverlaps;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbroverlaps;
+drop table if exists mbrtouches;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbrtouches;
+drop table if exists mbrwithin;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mbrwithin;
+drop table if exists md5;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE md5;
+drop table if exists mlinefromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mlinefromtext;
+drop table if exists mlinefromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mlinefromwkb;
+drop table if exists monthname;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE monthname;
+drop table if exists mpointfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mpointfromtext;
+drop table if exists mpointfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mpointfromwkb;
+drop table if exists mpolyfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mpolyfromtext;
+drop table if exists mpolyfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE mpolyfromwkb;
+drop table if exists multilinestringfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE multilinestringfromtext;
+drop table if exists multilinestringfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE multilinestringfromwkb;
+drop table if exists multipointfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE multipointfromtext;
+drop table if exists multipointfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE multipointfromwkb;
+drop table if exists multipolygonfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE multipolygonfromtext;
+drop table if exists multipolygonfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE multipolygonfromwkb;
+drop table if exists name_const;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE name_const;
+drop table if exists nullif;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE nullif;
+drop table if exists numgeometries;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE numgeometries;
+drop table if exists numinteriorrings;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE numinteriorrings;
+drop table if exists numpoints;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE numpoints;
+drop table if exists oct;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE oct;
+drop table if exists octet_length;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE octet_length;
+drop table if exists ord;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ord;
+drop table if exists overlaps;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE overlaps;
+drop table if exists period_add;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE period_add;
+drop table if exists period_diff;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE period_diff;
+drop table if exists pi;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE pi;
+drop table if exists pointfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE pointfromtext;
+drop table if exists pointfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE pointfromwkb;
+drop table if exists pointn;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE pointn;
+drop table if exists polyfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE polyfromtext;
+drop table if exists polyfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE polyfromwkb;
+drop table if exists polygonfromtext;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE polygonfromtext;
+drop table if exists polygonfromwkb;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE polygonfromwkb;
+drop table if exists pow;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE pow;
+drop table if exists power;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE power;
+drop table if exists quote;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE quote;
+drop table if exists radians;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE radians;
+drop table if exists rand;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE rand;
+drop table if exists release_lock;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE release_lock;
+drop table if exists reverse;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE reverse;
+drop table if exists round;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE round;
+drop table if exists row_count;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE row_count;
+drop table if exists rpad;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE rpad;
+drop table if exists rtrim;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE rtrim;
+drop table if exists sec_to_time;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sec_to_time;
+drop table if exists session_user;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE session_user;
+drop table if exists sha;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sha;
+drop table if exists sha1;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sha1;
+drop table if exists sign;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sign;
+drop table if exists sin;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sin;
+drop table if exists sleep;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sleep;
+drop table if exists soundex;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE soundex;
+drop table if exists space;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE space;
+drop table if exists sqrt;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE sqrt;
+drop table if exists srid;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE srid;
+drop table if exists startpoint;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE startpoint;
+drop table if exists strcmp;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE strcmp;
+drop table if exists str_to_date;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE str_to_date;
+drop table if exists subdate;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE subdate;
+drop table if exists substring_index;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE substring_index;
+drop table if exists subtime;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE subtime;
+drop table if exists system_user;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE system_user;
+drop table if exists tan;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE tan;
+drop table if exists timediff;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE timediff;
+drop table if exists time_format;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE time_format;
+drop table if exists time_to_sec;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE time_to_sec;
+drop table if exists touches;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE touches;
+drop table if exists to_days;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE to_days;
+drop table if exists ucase;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE ucase;
+drop table if exists uncompress;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE uncompress;
+drop table if exists uncompressed_length;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE uncompressed_length;
+drop table if exists unhex;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE unhex;
+drop table if exists unix_timestamp;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE unix_timestamp;
+drop table if exists updatexml;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE updatexml;
+drop table if exists upper;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE upper;
+drop table if exists uuid;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE uuid;
+drop table if exists version;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE version;
+drop table if exists weekday;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE weekday;
+drop table if exists weekofyear;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE weekofyear;
+drop table if exists within;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE within;
+drop table if exists x;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE x;
+drop table if exists y;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE y;
+drop table if exists yearweek;
+drop table if exists bug21114_child;
+DROP TABLE bug21114_child;
+DROP TABLE yearweek;
diff --git a/mysql-test/r/parser_not_embedded.result b/mysql-test/r/parser_not_embedded.result
new file mode 100644
index 00000000000..140b13c9864
--- /dev/null
+++ b/mysql-test/r/parser_not_embedded.result
@@ -0,0 +1,49 @@
+#
+# Bug#39559: dump of stored procedures / functions with C-style
+# comment can't be read back
+#
++----------+--------+
+| expected | result |
++----------+--------+
+| 2 | 2 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 1 | 1 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 3 | 3 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 2 | 2 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 7 | 7 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 8 | 8 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 7 | 7 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 4 | 4 |
++----------+--------+
++----------+--------+
+| expected | result |
++----------+--------+
+| 4 | 4 |
++----------+--------+
diff --git a/mysql-test/r/partition.result b/mysql-test/r/partition.result
new file mode 100644
index 00000000000..6611d39628f
--- /dev/null
+++ b/mysql-test/r/partition.result
@@ -0,0 +1,2073 @@
+drop table if exists t1, t2;
+CREATE TABLE t1 (
+a int NOT NULL,
+b int NOT NULL);
+CREATE TABLE t2 (
+a int NOT NULL,
+b int NOT NULL,
+INDEX(b)
+)
+PARTITION BY HASH(a) PARTITIONS 2;
+INSERT INTO t1 VALUES (399, 22);
+INSERT INTO t2 VALUES (1, 22), (1, 42);
+INSERT INTO t2 SELECT 1, 399 FROM t2, t1
+WHERE t1.b = t2.b;
+DROP TABLE t1, t2;
+CREATE TABLE t1 (
+a timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
+b varchar(10),
+PRIMARY KEY (a)
+)
+PARTITION BY RANGE (to_days(a)) (
+PARTITION p1 VALUES LESS THAN (733407),
+PARTITION pmax VALUES LESS THAN MAXVALUE
+);
+INSERT INTO t1 VALUES ('2007-07-30 17:35:48', 'p1');
+INSERT INTO t1 VALUES ('2009-07-14 17:35:55', 'pmax');
+INSERT INTO t1 VALUES ('2009-09-21 17:31:42', 'pmax');
+SELECT * FROM t1;
+a b
+2007-07-30 17:35:48 p1
+2009-07-14 17:35:55 pmax
+2009-09-21 17:31:42 pmax
+ALTER TABLE t1 REORGANIZE PARTITION pmax INTO (
+PARTITION p3 VALUES LESS THAN (733969),
+PARTITION pmax VALUES LESS THAN MAXVALUE);
+SELECT * FROM t1;
+a b
+2007-07-30 17:35:48 p1
+2009-07-14 17:35:55 pmax
+2009-09-21 17:31:42 pmax
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ `b` varchar(10) DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (to_days(a))
+(PARTITION p1 VALUES LESS THAN (733407) ENGINE = MyISAM,
+ PARTITION p3 VALUES LESS THAN (733969) ENGINE = MyISAM,
+ PARTITION pmax VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */
+DROP TABLE t1;
+create table t1 (a int, b int, key(a))
+partition by list (a)
+( partition p0 values in (1),
+partition p1 values in (2));
+insert into t1 values (1,1),(2,1),(2,2),(2,3);
+show indexes from t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+show indexes from t1;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+t1 1 a 1 a A 1 NULL NULL YES BTREE
+drop table t1;
+CREATE TABLE t1 (a INT, FOREIGN KEY (a) REFERENCES t0 (a))
+ENGINE=MyISAM
+PARTITION BY HASH (a);
+ERROR HY000: Foreign key clause is not yet supported in conjunction with partitioning
+CREATE TABLE t1 (
+pk INT NOT NULL AUTO_INCREMENT,
+PRIMARY KEY (pk)
+)
+/*!50100 PARTITION BY HASH (pk)
+PARTITIONS 2 */;
+INSERT INTO t1 VALUES (NULL);
+INSERT INTO t1 VALUES (NULL);
+INSERT INTO t1 VALUES (NULL);
+SELECT * FROM t1 WHERE pk < 0 ORDER BY pk;
+pk
+DROP TABLE t1;
+CREATE TABLE t1 (a INT NOT NULL, KEY(a))
+PARTITION BY RANGE(a)
+(PARTITION p1 VALUES LESS THAN (200), PARTITION pmax VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (2), (40), (40), (70), (60), (90), (199);
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 95 ORDER BY a ASC;
+a
+60
+70
+90
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 95;
+a
+60
+70
+90
+INSERT INTO t1 VALUES (200), (250), (210);
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 220 ORDER BY a ASC;
+a
+60
+70
+90
+199
+200
+210
+SELECT a FROM t1 WHERE a BETWEEN 200 AND 220 ORDER BY a ASC;
+a
+200
+210
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 95 ORDER BY a DESC;
+a
+90
+70
+60
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 220 ORDER BY a DESC;
+a
+210
+200
+199
+90
+70
+60
+SELECT a FROM t1 WHERE a BETWEEN 200 AND 220 ORDER BY a DESC;
+a
+210
+200
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 220;
+a
+199
+200
+210
+60
+70
+90
+SELECT a FROM t1 WHERE a BETWEEN 200 AND 220;
+a
+200
+210
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 95;
+a
+60
+70
+90
+SELECT a FROM t1 WHERE a BETWEEN 60 AND 220;
+a
+199
+200
+210
+60
+70
+90
+SELECT a FROM t1 WHERE a BETWEEN 200 AND 220;
+a
+200
+210
+DROP TABLE t1;
+CREATE TABLE t1 (
+a INT NOT NULL,
+b MEDIUMINT NOT NULL,
+c INT NOT NULL,
+KEY b (b)
+) ENGINE=MyISAM
+PARTITION BY LIST (a) (
+PARTITION p0 VALUES IN (1)
+);
+INSERT INTO t1 VALUES (1,1,0), (1,1,1), (1,1,2), (1,1,53), (1,1,4), (1,1,5),
+(1,1,6), (1,1,7), (1,1,8), (1,1,9), (1,1,10), (1,1,11), (1,1,12), (1,1,13),
+(1,1,14), (1,1,15), (1,1,16), (1,1,67), (1,1,18), (1,1,19), (1,1,20), (1,1,21),
+(1,1,22), (1,1,23), (1,1,24), (1,1,75), (1,1,26), (1,1,27), (1,1,128),
+(1,1,79), (1,1,30), (1,1,31), (1,1,32), (1,1,33), (1,1,34), (1,1,85), (1,1,36),
+(1,1,37), (1,1,38), (1,1,39), (1,1,40), (1,1,241), (1,1,42), (1,1,43),
+(1,1,44), (1,1,45), (1,1,46), (1,1,147), (1,1,48), (1,1,49), (1,2,0), (1,2,1),
+(1,2,2), (1,2,3), (1,2,4), (1,2,5), (1,2,6), (1,2,7), (1,2,8), (1,2,9),
+(1,2,10), (1,2,11), (1,2,12), (1,2,13), (1,2,14), (1,2,15), (1,2,16), (1,2,17),
+(1,2,18), (1,2,19), (1,2,20), (1,2,21), (1,2,22), (1,2,23), (1,2,24), (1,2,25),
+(1,2,26), (1,2,27), (1,2,28), (1,2,29), (1,2,30), (1,2,31), (1,2,32), (1,2,33),
+(1,2,34), (1,2,35), (1,2,36), (1,2,37), (1,2,38), (1,2,39), (1,2,40), (1,2,41),
+(1,2,42), (1,2,43), (1,2,44), (1,2,45), (1,2,46), (1,2,47), (1,2,48), (1,2,49),
+(1,6,0), (1,6,1), (1,6,2), (1,6,3), (1,6,4), (1,6,5), (1,6,6), (1,6,7),
+(1,6,8), (1,6,9), (1,6,10), (1,6,11), (1,6,12), (1,6,13), (1,6,14), (1,6,15),
+(1,6,16), (1,6,17), (1,6,18), (1,6,19), (1,6,20), (1,6,21), (1,6,22), (1,6,23),
+(1,6,24), (1,6,25), (1,6,26), (1,6,27), (1,6,28), (1,6,29), (1,6,30), (1,6,31),
+(1,6,32), (1,6,33), (1,6,34), (1,6,35), (1,6,36), (1,6,37), (1,6,38), (1,6,39),
+(1,6,40), (1,6,41), (1,6,42), (1,6,43), (1,6,44), (1,6,45), (1,6,46), (1,6,47),
+(1,6,48), (1,6,49), (1,7,0), (1,7,1), (1,7,2), (1,7,3), (1,7,4), (1,7,5),
+(1,7,6), (1,7,7), (1,7,8), (1,7,9), (1,7,10), (1,7,11), (1,7,12), (1,7,13),
+(1,7,14), (1,7,15), (1,7,16), (1,7,17), (1,7,18), (1,7,19), (1,7,20), (1,7,21),
+(1,7,22), (1,7,23), (1,7,24), (1,7,25), (1,7,26), (1,7,27), (1,7,28), (1,7,29),
+(1,7,30), (1,7,31), (1,7,32), (1,7,33), (1,7,34), (1,7,35), (1,7,38), (1,7,39),
+(1,7,90), (1,7,41), (1,7,43), (1,7,48), (1,7,49), (1,9,0), (1,9,1), (1,9,2),
+(1,9,3), (1,9,4), (1,9,5), (1,9,6), (1,9,7), (1,9,8), (1,9,9), (1,9,10),
+(1,9,11), (1,9,12), (1,9,13), (1,9,14), (1,9,15), (1,9,16), (1,9,17), (1,9,18),
+(1,9,19), (1,9,20), (1,9,21), (1,9,22), (1,9,23), (1,9,24), (1,9,25), (1,9,26),
+(1,9,29), (1,9,32), (1,9,35), (1,9,38), (1,10,0), (1,10,1), (1,10,2), (1,10,3),
+(1,10,4), (1,10,5), (1,10,6), (1,10,7), (1,10,8), (1,10,9), (1,10,10),
+(1,10,11), (1,10,13), (1,10,14), (1,10,15), (1,10,16), (1,10,17), (1,10,18),
+(1,10,22), (1,10,24), (1,10,25), (1,10,26), (1,10,28), (1,10,131), (1,10,33),
+(1,10,84), (1,10,35), (1,10,40), (1,10,42), (1,10,49), (1,11,0), (1,11,1),
+(1,11,2), (1,11,3), (1,11,4), (1,11,5), (1,11,6), (1,11,7), (1,11,8), (1,11,9),
+(1,11,10), (1,11,11), (1,11,12), (1,11,13), (1,11,14), (1,11,15), (1,11,16),
+(1,11,17), (1,11,18), (1,11,19), (1,11,20), (1,11,21), (1,11,22), (1,11,23),
+(1,11,24), (1,11,25), (1,11,26), (1,11,27), (1,11,28), (1,11,30), (1,11,31),
+(1,11,32), (1,11,33), (1,11,34), (1,11,35), (1,11,37), (1,11,39), (1,11,40),
+(1,11,42), (1,11,44), (1,11,45), (1,11,47), (1,11,48), (1,14,104), (1,14,58),
+(1,14,12), (1,14,13), (1,14,15), (1,14,16), (1,14,17), (1,14,34), (1,15,0),
+(1,15,1), (1,15,2), (1,15,3), (1,15,4), (1,15,5), (1,15,7), (1,15,9),
+(1,15,15), (1,15,27), (1,15,49), (1,16,0), (1,16,1), (1,16,3), (1,17,4),
+(1,19,1);
+SELECT COUNT(*) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+COUNT(*)
+24
+SELECT SUM(c) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+SUM(c)
+400
+ALTER TABLE t1 DROP INDEX b;
+SELECT COUNT(*) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+COUNT(*)
+24
+SELECT SUM(c) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+SUM(c)
+400
+ALTER TABLE t1 ENGINE = Memory;
+SELECT COUNT(*) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+COUNT(*)
+24
+SELECT SUM(c) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+SUM(c)
+400
+ALTER TABLE t1 ADD INDEX b USING HASH (b);
+SELECT COUNT(*) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+COUNT(*)
+24
+SELECT SUM(c) FROM t1 WHERE b NOT IN ( 1,2,6,7,9,10,11 );
+SUM(c)
+400
+DROP TABLE t1;
+CREATE TABLE `t1` (
+`c1` int(11) DEFAULT NULL,
+KEY `c1` (`c1`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+CREATE TABLE `t2` (
+`c1` int(11) DEFAULT NULL,
+KEY `c1` (`c1`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (c1) (PARTITION a VALUES LESS THAN (100) ENGINE = MyISAM, PARTITION b VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */;
+INSERT INTO `t1` VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15),(16),(17),(18),(19),(20);
+INSERT INTO `t2` VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15),(16),(17),(18),(19),(20);
+EXPLAIN PARTITIONS SELECT c1 FROM t1 WHERE (c1 > 10 AND c1 < 13) OR (c1 > 17 AND c1 < 20);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 NULL range c1 c1 5 NULL 4 Using where; Using index
+FLUSH STATUS;
+SELECT c1 FROM t1 WHERE (c1 > 10 AND c1 < 13) OR (c1 > 17 AND c1 < 20);
+c1
+11
+12
+18
+19
+SHOW STATUS LIKE 'Handler_read_%';
+Variable_name Value
+Handler_read_first 0
+Handler_read_key 2
+Handler_read_next 4
+Handler_read_prev 0
+Handler_read_rnd 0
+Handler_read_rnd_next 0
+EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 10 AND c1 < 13) OR (c1 > 17 AND c1 < 20);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 a range c1 c1 5 NULL 4 Using where; Using index
+FLUSH STATUS;
+SELECT c1 FROM t2 WHERE (c1 > 10 AND c1 < 13) OR (c1 > 17 AND c1 < 20);
+c1
+11
+12
+18
+19
+SHOW STATUS LIKE 'Handler_read_%';
+Variable_name Value
+Handler_read_first 0
+Handler_read_key 2
+Handler_read_next 4
+Handler_read_prev 0
+Handler_read_rnd 0
+Handler_read_rnd_next 0
+DROP TABLE t1,t2;
+CREATE TABLE `t1` (
+`c1` int(11) DEFAULT NULL,
+KEY `c1` (`c1`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+CREATE TABLE `t2` (
+`c1` int(11) DEFAULT NULL,
+KEY `c1` (`c1`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (c1)
+(PARTITION a VALUES LESS THAN (100) ENGINE = MyISAM,
+PARTITION b VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */;
+INSERT INTO `t1` VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15),(16),(17),(18),(19),(20);
+INSERT INTO `t2` VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15),(16),(17),(18),(19),(20);
+EXPLAIN PARTITIONS SELECT c1 FROM t1 WHERE (c1 > 2 AND c1 < 5);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 NULL range c1 c1 5 NULL 2 Using where; Using index
+FLUSH STATUS;
+SELECT c1 FROM t1 WHERE (c1 > 2 AND c1 < 5);
+c1
+3
+4
+SHOW STATUS LIKE 'Handler_read_%';
+Variable_name Value
+Handler_read_first 0
+Handler_read_key 1
+Handler_read_next 2
+Handler_read_prev 0
+Handler_read_rnd 0
+Handler_read_rnd_next 0
+EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 2 AND c1 < 5);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 a range c1 c1 5 NULL 2 Using where; Using index
+FLUSH STATUS;
+SELECT c1 FROM t2 WHERE (c1 > 2 AND c1 < 5);
+c1
+3
+4
+SHOW STATUS LIKE 'Handler_read_%';
+Variable_name Value
+Handler_read_first 0
+Handler_read_key 1
+Handler_read_next 2
+Handler_read_prev 0
+Handler_read_rnd 0
+Handler_read_rnd_next 0
+EXPLAIN PARTITIONS SELECT c1 FROM t1 WHERE (c1 > 12 AND c1 < 15);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 NULL range c1 c1 5 NULL 2 Using where; Using index
+FLUSH STATUS;
+SELECT c1 FROM t1 WHERE (c1 > 12 AND c1 < 15);
+c1
+13
+14
+SHOW STATUS LIKE 'Handler_read_%';
+Variable_name Value
+Handler_read_first 0
+Handler_read_key 1
+Handler_read_next 2
+Handler_read_prev 0
+Handler_read_rnd 0
+Handler_read_rnd_next 0
+EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 12 AND c1 < 15);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 a range c1 c1 5 NULL 2 Using where; Using index
+FLUSH STATUS;
+SELECT c1 FROM t2 WHERE (c1 > 12 AND c1 < 15);
+c1
+13
+14
+SHOW STATUS LIKE 'Handler_read_%';
+Variable_name Value
+Handler_read_first 0
+Handler_read_key 1
+Handler_read_next 2
+Handler_read_prev 0
+Handler_read_rnd 0
+Handler_read_rnd_next 0
+DROP TABLE t1,t2;
+create table t1 (a int) partition by list ((a/3)*10 div 1)
+(partition p0 values in (0), partition p1 values in (1));
+ERROR HY000: This partition function is not allowed
+CREATE TABLE t1 (
+d DATE NOT NULL
+)
+PARTITION BY RANGE( YEAR(d) ) (
+PARTITION p0 VALUES LESS THAN (1960),
+PARTITION p1 VALUES LESS THAN (1970),
+PARTITION p2 VALUES LESS THAN (1980),
+PARTITION p3 VALUES LESS THAN (1990)
+);
+ALTER TABLE t1 ADD PARTITION (
+PARTITION `p5` VALUES LESS THAN (2010)
+COMMENT 'APSTART \' APEND'
+);
+SELECT * FROM t1 LIMIT 1;
+d
+DROP TABLE t1;
+create table t1 (id int auto_increment, s1 int, primary key (id));
+insert into t1 values (null,1);
+insert into t1 values (null,6);
+select * from t1;
+id s1
+1 1
+2 6
+alter table t1 partition by range (id) (
+partition p0 values less than (3),
+partition p1 values less than maxvalue
+);
+drop table t1;
+create table t1 (a int)
+partition by key(a)
+partitions 0.2+e1;
+ERROR 42000: Only integers allowed as number here near '0.2+e1' at line 3
+create table t1 (a int)
+partition by key(a)
+partitions -1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-1' at line 3
+create table t1 (a int)
+partition by key(a)
+partitions 1.5;
+ERROR 42000: Only integers allowed as number here near '1.5' at line 3
+create table t1 (a int)
+partition by key(a)
+partitions 1e+300;
+ERROR 42000: Only integers allowed as number here near '1e+300' at line 3
+create table t1 (a int)
+partition by list (a)
+(partition p0 values in (1));
+create procedure pz()
+alter table t1 engine = myisam;
+call pz();
+call pz();
+drop procedure pz;
+drop table t1;
+create table t1 (a bigint)
+partition by range (a)
+(partition p0 values less than (0xFFFFFFFFFFFFFFFF),
+partition p1 values less than (10));
+ERROR 42000: VALUES value must be of same type as partition function near '),
+partition p1 values less than (10))' at line 3
+create table t1 (a bigint)
+partition by list (a)
+(partition p0 values in (0xFFFFFFFFFFFFFFFF),
+partition p1 values in (10));
+ERROR 42000: VALUES value must be of same type as partition function near '),
+partition p1 values in (10))' at line 3
+create table t1 (a bigint unsigned)
+partition by range (a)
+(partition p0 values less than (100),
+partition p1 values less than MAXVALUE);
+insert into t1 values (1);
+drop table t1;
+create table t1 (a bigint unsigned)
+partition by hash (a);
+insert into t1 values (0xFFFFFFFFFFFFFFFD);
+insert into t1 values (0xFFFFFFFFFFFFFFFE);
+select * from t1 where (a + 1) < 10;
+a
+select * from t1 where (a + 1) > 10;
+a
+18446744073709551613
+18446744073709551614
+drop table t1;
+create table t1 (a int)
+partition by key(a)
+(partition p0 engine = MEMORY);
+drop table t1;
+create table t1 (a int)
+partition by range (a)
+subpartition by key (a)
+(partition p0 values less than (1));
+alter table t1 add partition (partition p1 values less than (2));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY KEY (a)
+(PARTITION p0 VALUES LESS THAN (1) ENGINE = MyISAM,
+ PARTITION p1 VALUES LESS THAN (2) ENGINE = MyISAM) */
+alter table t1 reorganize partition p1 into (partition p1 values less than (3));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY KEY (a)
+(PARTITION p0 VALUES LESS THAN (1) ENGINE = MyISAM,
+ PARTITION p1 VALUES LESS THAN (3) ENGINE = MyISAM) */
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a);
+select count(*) from t1;
+count(*)
+0
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` int(11) NOT NULL,
+ `c` int(11) NOT NULL,
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a) */
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a, b);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+partitions 3
+(partition x1, partition x2, partition x3);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+partitions 3
+(partition x1 nodegroup 0,
+partition x2 nodegroup 1,
+partition x3 nodegroup 2);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+partitions 3
+(partition x1 engine myisam,
+partition x2 engine myisam,
+partition x3 engine myisam);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+CREATE TABLE t2 LIKE t1;
+drop table t2;
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 3
+(partition x1 values in (1,2,9,4) tablespace ts1,
+partition x2 values in (3, 11, 5, 7) tablespace ts2,
+partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (b*a)
+partitions 3
+(partition x1 values in (1,2,9,4) tablespace ts1,
+partition x2 values in (3, 11, 5, 7) tablespace ts2,
+partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (b*a)
+(partition x1 values in (1) tablespace ts1,
+partition x2 values in (3, 11, 5, 7) tablespace ts2,
+partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
+drop table t1;
+CREATE TABLE t1 (
+a int not null)
+partition by key(a);
+LOCK TABLES t1 WRITE;
+insert into t1 values (1);
+insert into t1 values (2);
+insert into t1 values (3);
+insert into t1 values (4);
+UNLOCK TABLES;
+drop table t1;
+CREATE TABLE t1 (a int, name VARCHAR(50), purchased DATE)
+PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (3),
+PARTITION p1 VALUES LESS THAN (7),
+PARTITION p2 VALUES LESS THAN (9),
+PARTITION p3 VALUES LESS THAN (11));
+INSERT INTO t1 VALUES
+(1, 'desk organiser', '2003-10-15'),
+(2, 'CD player', '1993-11-05'),
+(3, 'TV set', '1996-03-10'),
+(4, 'bookcase', '1982-01-10'),
+(5, 'exercise bike', '2004-05-09'),
+(6, 'sofa', '1987-06-05'),
+(7, 'popcorn maker', '2001-11-22'),
+(8, 'acquarium', '1992-08-04'),
+(9, 'study desk', '1984-09-16'),
+(10, 'lava lamp', '1998-12-25');
+SELECT * from t1 ORDER BY a;
+a name purchased
+1 desk organiser 2003-10-15
+2 CD player 1993-11-05
+3 TV set 1996-03-10
+4 bookcase 1982-01-10
+5 exercise bike 2004-05-09
+6 sofa 1987-06-05
+7 popcorn maker 2001-11-22
+8 acquarium 1992-08-04
+9 study desk 1984-09-16
+10 lava lamp 1998-12-25
+ALTER TABLE t1 DROP PARTITION p0;
+SELECT * from t1 ORDER BY a;
+a name purchased
+3 TV set 1996-03-10
+4 bookcase 1982-01-10
+5 exercise bike 2004-05-09
+6 sofa 1987-06-05
+7 popcorn maker 2001-11-22
+8 acquarium 1992-08-04
+9 study desk 1984-09-16
+10 lava lamp 1998-12-25
+drop table t1;
+CREATE TABLE t1 (a int)
+PARTITION BY LIST (a)
+(PARTITION p0 VALUES IN (1,2,3), PARTITION p1 VALUES IN (4,5,6));
+insert into t1 values (1),(2),(3),(4),(5),(6);
+select * from t1;
+a
+1
+2
+3
+4
+5
+6
+truncate t1;
+select * from t1;
+a
+truncate t1;
+select * from t1;
+a
+drop table t1;
+CREATE TABLE t1 (a int, b int, primary key(a,b))
+PARTITION BY KEY(b,a) PARTITIONS 4;
+insert into t1 values (0,0),(1,1),(2,2),(3,3),(4,4),(5,5),(6,6);
+select * from t1 where a = 4;
+a b
+4 4
+drop table t1;
+CREATE TABLE t1 (c1 INT, c2 INT, PRIMARY KEY USING BTREE (c1,c2)) ENGINE=MEMORY
+PARTITION BY KEY(c2,c1) PARTITIONS 4;
+INSERT INTO t1 VALUES (0,0),(1,1),(2,2),(3,3),(4,4),(5,5),(6,6);
+SELECT * FROM t1 WHERE c1 = 4;
+c1 c2
+4 4
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY LIST (a)
+PARTITIONS 1
+(PARTITION x1 VALUES IN (1) ENGINE=MEMORY);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY LIST (a)
+(PARTITION x1 VALUES IN (1) ENGINE = MEMORY) */
+drop table t1;
+CREATE TABLE t1 (a int, unique(a))
+PARTITION BY LIST (a)
+(PARTITION x1 VALUES IN (10), PARTITION x2 VALUES IN (20));
+REPLACE t1 SET a = 4;
+ERROR HY000: Table has no partition for value 4
+drop table t1;
+CREATE TABLE t1 (a int)
+PARTITION BY LIST (a)
+(PARTITION x1 VALUES IN (2), PARTITION x2 VALUES IN (3));
+insert into t1 values (2), (3);
+insert into t1 values (4);
+ERROR HY000: Table has no partition for value 4
+insert into t1 values (1);
+ERROR HY000: Table has no partition for value 1
+drop table t1;
+CREATE TABLE t1 (a int)
+PARTITION BY HASH(a)
+PARTITIONS 5;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a)
+PARTITIONS 5 */
+drop table t1;
+CREATE TABLE t1 (a int)
+PARTITION BY RANGE (a)
+(PARTITION x1 VALUES LESS THAN (2));
+insert into t1 values (1);
+update t1 set a = 5;
+ERROR HY000: Table has no partition for value 5
+drop table t1;
+CREATE TABLE t1 (a int)
+PARTITION BY LIST (a)
+(PARTITION x1 VALUES IN (10), PARTITION x2 VALUES IN (20));
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+drop table t1;
+create table t1
+(a int)
+partition by range (a)
+( partition p0 values less than(10),
+partition p1 values less than (20),
+partition p2 values less than (25));
+alter table t1 reorganize partition p2 into (partition p2 values less than (30));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (10) ENGINE = MyISAM,
+ PARTITION p1 VALUES LESS THAN (20) ENGINE = MyISAM,
+ PARTITION p2 VALUES LESS THAN (30) ENGINE = MyISAM) */
+drop table t1;
+CREATE TABLE t1 (a int, b int)
+PARTITION BY RANGE (a)
+(PARTITION x0 VALUES LESS THAN (2),
+PARTITION x1 VALUES LESS THAN (4),
+PARTITION x2 VALUES LESS THAN (6),
+PARTITION x3 VALUES LESS THAN (8),
+PARTITION x4 VALUES LESS THAN (10),
+PARTITION x5 VALUES LESS THAN (12),
+PARTITION x6 VALUES LESS THAN (14),
+PARTITION x7 VALUES LESS THAN (16),
+PARTITION x8 VALUES LESS THAN (18),
+PARTITION x9 VALUES LESS THAN (20));
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1,x2 INTO
+(PARTITION x1 VALUES LESS THAN (6));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION x1 VALUES LESS THAN (6) ENGINE = MyISAM,
+ PARTITION x3 VALUES LESS THAN (8) ENGINE = MyISAM,
+ PARTITION x4 VALUES LESS THAN (10) ENGINE = MyISAM,
+ PARTITION x5 VALUES LESS THAN (12) ENGINE = MyISAM,
+ PARTITION x6 VALUES LESS THAN (14) ENGINE = MyISAM,
+ PARTITION x7 VALUES LESS THAN (16) ENGINE = MyISAM,
+ PARTITION x8 VALUES LESS THAN (18) ENGINE = MyISAM,
+ PARTITION x9 VALUES LESS THAN (20) ENGINE = MyISAM) */
+drop table t1;
+create table t1 (a int not null, b int not null) partition by LIST (a+b) (
+partition p0 values in (12),
+partition p1 values in (14)
+);
+insert into t1 values (10,1);
+ERROR HY000: Table has no partition for value 11
+drop table t1;
+create table t1 (f1 integer,f2 integer, f3 varchar(10), primary key(f1,f2))
+partition by range(f1) subpartition by hash(f2) subpartitions 2
+(partition p1 values less than (0),
+partition p2 values less than (2),
+partition p3 values less than (2147483647));
+insert into t1 values(10,10,'10');
+insert into t1 values(2,2,'2');
+select * from t1 where f1 = 2;
+f1 f2 f3
+2 2 2
+drop table t1;
+create table t1 (f1 integer,f2 integer, unique index(f1))
+partition by range(f1 div 2)
+subpartition by hash(f1) subpartitions 2
+(partition partb values less than (2),
+partition parte values less than (4),
+partition partf values less than (10000));
+insert into t1 values(10,1);
+select * from t1 where f1 = 10;
+f1 f2
+10 1
+drop table t1;
+set session storage_engine= 'memory';
+create table t1 (f_int1 int(11) default null) engine = memory
+partition by range (f_int1) subpartition by hash (f_int1)
+(partition part1 values less than (1000)
+(subpartition subpart11 engine = memory));
+drop table t1;
+set session storage_engine='myisam';
+create table t1 (f_int1 integer, f_int2 integer, primary key (f_int1))
+partition by hash(f_int1) partitions 2;
+insert into t1 values (1,1),(2,2);
+replace into t1 values (1,1),(2,2);
+drop table t1;
+create table t1 (s1 int, unique (s1)) partition by list (s1) (partition x1 VALUES in (10), partition x2 values in (20));
+alter table t1 add partition (partition x3 values in (30));
+drop table t1;
+create table t1 (a int)
+partition by key(a)
+partitions 2
+(partition p0 engine=myisam, partition p1 engine=myisam);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM) */
+alter table t1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM) */
+alter table t1 engine=myisam;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM) */
+alter table t1 engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MEMORY,
+ PARTITION p1 ENGINE = MEMORY) */
+alter table t1 remove partitioning;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a int)
+engine=myisam
+partition by key(a)
+partitions 2
+(partition p0 engine=myisam, partition p1 engine=myisam);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM) */
+alter table t1 add column b int remove partitioning;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1
+engine=myisam
+partition by key(a)
+(partition p0 engine=myisam, partition p1);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM) */
+alter table t1
+engine=heap
+partition by key(a)
+(partition p0, partition p1 engine=heap);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MEMORY,
+ PARTITION p1 ENGINE = MEMORY) */
+alter table t1 engine=myisam, add column c int remove partitioning;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1
+engine=heap
+partition by key (a)
+(partition p0, partition p1);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MEMORY,
+ PARTITION p1 ENGINE = MEMORY) */
+alter table t1
+partition by key (a)
+(partition p0, partition p1);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MEMORY,
+ PARTITION p1 ENGINE = MEMORY) */
+alter table t1
+engine=heap
+partition by key (a)
+(partition p0, partition p1);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MEMORY,
+ PARTITION p1 ENGINE = MEMORY) */
+alter table t1
+partition by key(a)
+(partition p0, partition p1 engine=heap);
+alter table t1
+partition by key(a)
+(partition p0 engine=heap, partition p1);
+alter table t1
+engine=heap
+partition by key (a)
+(partition p0 engine=heap, partition p1 engine=myisam);
+ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL
+alter table t1
+partition by key (a)
+(partition p0 engine=heap, partition p1 engine=myisam);
+ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL
+drop table t1;
+CREATE TABLE t1 (
+f_int1 INTEGER, f_int2 INTEGER,
+f_char1 CHAR(10), f_char2 CHAR(10), f_charbig VARCHAR(1000)
+)
+PARTITION BY RANGE(f_int1 DIV 2)
+SUBPARTITION BY HASH(f_int1)
+SUBPARTITIONS 2
+(PARTITION parta VALUES LESS THAN (0),
+PARTITION partb VALUES LESS THAN (5),
+PARTITION parte VALUES LESS THAN (10),
+PARTITION partf VALUES LESS THAN (2147483647));
+INSERT INTO t1 SET f_int1 = NULL , f_int2 = -20, f_char1 = CAST(-20 AS CHAR),
+f_char2 = CAST(-20 AS CHAR), f_charbig = '#NULL#';
+SELECT * FROM t1 WHERE f_int1 IS NULL;
+f_int1 f_int2 f_char1 f_char2 f_charbig
+NULL -20 -20 -20 #NULL#
+SELECT * FROM t1;
+f_int1 f_int2 f_char1 f_char2 f_charbig
+NULL -20 -20 -20 #NULL#
+drop table t1;
+CREATE TABLE t1 (
+f_int1 INTEGER, f_int2 INTEGER,
+f_char1 CHAR(10), f_char2 CHAR(10), f_charbig VARCHAR(1000) )
+PARTITION BY LIST(MOD(f_int1,2))
+SUBPARTITION BY KEY(f_int1)
+(PARTITION part1 VALUES IN (-1) (SUBPARTITION sp1, SUBPARTITION sp2),
+PARTITION part2 VALUES IN (0) (SUBPARTITION sp3, SUBPARTITION sp5),
+PARTITION part3 VALUES IN (1) (SUBPARTITION sp4, SUBPARTITION sp6));
+INSERT INTO t1 SET f_int1 = 2, f_int2 = 2, f_char1 = '2', f_char2 = '2', f_charbig = '===2===';
+INSERT INTO t1 SET f_int1 = 2, f_int2 = 2, f_char1 = '2', f_char2 = '2', f_charbig = '===2===';
+SELECT * FROM t1 WHERE f_int1 IS NULL;
+f_int1 f_int2 f_char1 f_char2 f_charbig
+drop table t1;
+create procedure p ()
+begin
+create table t1 (s1 mediumint,s2 mediumint)
+partition by list (s2)
+(partition p1 values in (0),
+partition p2 values in (1));
+end//
+call p()//
+drop procedure p//
+drop table t1;
+create procedure p ()
+begin
+create table t1 (a int not null,b int not null,c int not null,primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+(partition x1 values less than (1)
+(subpartition x11,
+subpartition x12),
+partition x2 values less than (5)
+(subpartition x21,
+subpartition x22));
+end//
+call p()//
+drop procedure p//
+drop table t1//
+create table t1 (a int,b int,c int,key(a,b))
+partition by range (a)
+partitions 3
+(partition x1 values less than (0) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than maxvalue tablespace ts3);
+insert into t1 values (NULL, 1, 1);
+insert into t1 values (0, 1, 1);
+insert into t1 values (12, 1, 1);
+select partition_name, partition_description, table_rows
+from information_schema.partitions where table_schema ='test';
+partition_name partition_description table_rows
+x1 0 1
+x2 10 1
+x3 MAXVALUE 1
+drop table t1;
+create table t1 (a int,b int, c int)
+partition by list(a)
+partitions 2
+(partition x123 values in (11,12),
+partition x234 values in (1 ,NULL, NULL));
+ERROR HY000: Multiple definition of same constant in list partitioning
+create table t1 (a int,b int, c int)
+partition by list(a)
+partitions 2
+(partition x123 values in (11, NULL),
+partition x234 values in (1 ,NULL));
+ERROR HY000: Multiple definition of same constant in list partitioning
+create table t1 (a int,b int, c int)
+partition by list(a)
+partitions 2
+(partition x123 values in (11, 12),
+partition x234 values in (5, 1));
+insert into t1 values (NULL,1,1);
+ERROR HY000: Table has no partition for value NULL
+drop table t1;
+create table t1 (a int,b int, c int)
+partition by list(a)
+partitions 2
+(partition x123 values in (11, 12),
+partition x234 values in (NULL, 1));
+insert into t1 values (11,1,6);
+insert into t1 values (NULL,1,1);
+select partition_name, partition_description, table_rows
+from information_schema.partitions where table_schema ='test';
+partition_name partition_description table_rows
+x123 11,12 1
+x234 NULL,1 1
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition p0 values in (1));
+alter table t1 rebuild partition;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition p0 values in (5));
+insert into t1 values (0);
+ERROR HY000: Table has no partition for value 0
+drop table t1;
+create table t1 (a int)
+partition by range (a) subpartition by hash (a)
+(partition p0 values less than (100));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY HASH (a)
+(PARTITION p0 VALUES LESS THAN (100) ENGINE = MyISAM) */
+alter table t1 add partition (partition p1 values less than (200)
+(subpartition subpart21));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY HASH (a)
+(PARTITION p0 VALUES LESS THAN (100)
+ (SUBPARTITION p0sp0 ENGINE = MyISAM),
+ PARTITION p1 VALUES LESS THAN (200)
+ (SUBPARTITION subpart21 ENGINE = MyISAM)) */
+drop table t1;
+create table t1 (a int)
+partition by key (a);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a) */
+alter table t1 add partition (partition p1);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM) */
+drop table t1;
+create table t1 (a int, b int)
+partition by range (a)
+subpartition by hash(a)
+(partition p0 values less than (0) (subpartition sp0),
+partition p1 values less than (1));
+ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near ')' at line 5
+create table t1 (a int, b int)
+partition by range (a)
+subpartition by hash(a)
+(partition p0 values less than (0),
+partition p1 values less than (1) (subpartition sp0));
+ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'subpartition sp0))' at line 5
+create table t1 (a int, b int)
+partition by list (a)
+subpartition by hash(a)
+(partition p0 values in (0),
+partition p1 values in (1) (subpartition sp0));
+ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'subpartition sp0))' at line 5
+create table t1 (a int)
+partition by hash (a)
+(partition p0 (subpartition sp0));
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+create table t1 (a int)
+partition by range (a)
+(partition p0 values less than (1));
+alter table t1 add partition (partition p1 values in (2));
+ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition
+alter table t1 add partition (partition p1);
+ERROR HY000: Syntax error: RANGE PARTITIONING requires definition of VALUES LESS THAN for each partition
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition p0 values in (1));
+alter table t1 add partition (partition p1 values less than (2));
+ERROR HY000: Only RANGE PARTITIONING can use VALUES LESS THAN in partition definition
+alter table t1 add partition (partition p1);
+ERROR HY000: Syntax error: LIST PARTITIONING requires definition of VALUES IN for each partition
+drop table t1;
+create table t1 (a int)
+partition by hash (a)
+(partition p0);
+alter table t1 add partition (partition p1 values less than (2));
+ERROR HY000: Only RANGE PARTITIONING can use VALUES LESS THAN in partition definition
+alter table t1 add partition (partition p1 values in (2));
+ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition p0 values in (1));
+alter table t1 rebuild partition;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+drop table t1;
+create table t2 (s1 int not null auto_increment, primary key (s1)) partition by list (s1) (partition p1 values in (1),partition p2 values in (2),partition p3 values in (3),partition p4 values in (4));
+insert into t2 values (null),(null),(null);
+select * from t2;
+s1
+1
+2
+3
+select * from t2 where s1 < 2;
+s1
+1
+update t2 set s1 = s1 + 1 order by s1 desc;
+select * from t2 where s1 < 3;
+s1
+2
+select * from t2 where s1 = 2;
+s1
+2
+drop table t2;
+create temporary table t1 (a int) partition by hash(a);
+ERROR HY000: Cannot create temporary table with partitions
+create table t1 (a int, b int) partition by list (a)
+(partition p1 values in (1), partition p2 values in (2));
+alter table t1 add primary key (b);
+ERROR HY000: A PRIMARY KEY must include all columns in the table's partitioning function
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY LIST (a)
+(PARTITION p1 VALUES IN (1) ENGINE = MyISAM,
+ PARTITION p2 VALUES IN (2) ENGINE = MyISAM) */
+drop table t1;
+create table t1 (a int unsigned not null auto_increment primary key)
+partition by key(a);
+alter table t1 rename t2, add c char(10), comment "no comment";
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `c` char(10) DEFAULT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='no comment'
+/*!50100 PARTITION BY KEY (a) */
+drop table t2;
+create table t1 (f1 int) partition by hash (f1) as select 1;
+drop table t1;
+prepare stmt1 from 'create table t1 (s1 int) partition by hash (s1)';
+execute stmt1;
+execute stmt1;
+ERROR 42S01: Table 't1' already exists
+drop table t1;
+CREATE PROCEDURE test.p1(IN i INT)
+BEGIN
+DECLARE CONTINUE HANDLER FOR sqlexception BEGIN END;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (num INT,PRIMARY KEY(num));
+START TRANSACTION;
+INSERT INTO t1 VALUES(i);
+savepoint t1_save;
+INSERT INTO t1 VALUES (14);
+ROLLBACK to savepoint t1_save;
+COMMIT;
+END|
+CALL test.p1(12);
+Warnings:
+Note 1051 Unknown table 't1'
+Warning 1196 Some non-transactional changed tables couldn't be rolled back
+CALL test.p1(13);
+Warnings:
+Warning 1196 Some non-transactional changed tables couldn't be rolled back
+drop table t1;
+drop procedure test.p1;
+CREATE TABLE t1 (a int not null)
+partition by key(a)
+(partition p0 COMMENT='first partition');
+drop table t1;
+CREATE TABLE t1 (`a b` int not null)
+partition by key(`a b`);
+drop table t1;
+CREATE TABLE t1 (`a b` int not null)
+partition by hash(`a b`);
+drop table t1;
+create table t1 (f1 integer) partition by range(f1)
+(partition p1 values less than (0), partition p2 values less than (10));
+insert into t1 set f1 = null;
+select * from t1 where f1 is null;
+f1
+NULL
+explain partitions select * from t1 where f1 is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1 system NULL NULL NULL NULL 1
+drop table t1;
+create table t1 (f1 integer) partition by list(f1)
+(partition p1 values in (1), partition p2 values in (null));
+insert into t1 set f1 = null;
+insert into t1 set f1 = 1;
+select * from t1 where f1 is null or f1 = 1;
+f1
+1
+NULL
+drop table t1;
+create table t1 (f1 smallint)
+partition by list (f1) (partition p0 values in (null));
+insert into t1 values (null);
+select * from t1 where f1 is null;
+f1
+NULL
+select * from t1 where f1 < 1;
+f1
+select * from t1 where f1 <= NULL;
+f1
+select * from t1 where f1 < NULL;
+f1
+select * from t1 where f1 >= NULL;
+f1
+select * from t1 where f1 > NULL;
+f1
+select * from t1 where f1 > 1;
+f1
+drop table t1;
+create table t1 (f1 smallint)
+partition by range (f1) (partition p0 values less than (0));
+insert into t1 values (null);
+select * from t1 where f1 is null;
+f1
+NULL
+drop table t1;
+create table t1 (f1 integer) partition by list(f1)
+(
+partition p1 values in (1),
+partition p2 values in (NULL),
+partition p3 values in (2),
+partition p4 values in (3),
+partition p5 values in (4)
+);
+insert into t1 values (1),(2),(3),(4),(null);
+select * from t1 where f1 < 3;
+f1
+1
+2
+explain partitions select * from t1 where f1 < 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p3 ALL NULL NULL NULL NULL 2 Using where
+select * from t1 where f1 is null;
+f1
+NULL
+explain partitions select * from t1 where f1 is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2 system NULL NULL NULL NULL 1
+drop table t1;
+create table t1 (f1 int) partition by list(f1 div 2)
+(
+partition p1 values in (1),
+partition p2 values in (NULL),
+partition p3 values in (2),
+partition p4 values in (3),
+partition p5 values in (4)
+);
+insert into t1 values (2),(4),(6),(8),(null);
+select * from t1 where f1 < 3;
+f1
+2
+explain partitions select * from t1 where f1 < 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p2,p3,p4,p5 ALL NULL NULL NULL NULL 5 Using where
+select * from t1 where f1 is null;
+f1
+NULL
+explain partitions select * from t1 where f1 is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2 system NULL NULL NULL NULL 1
+drop table t1;
+create table t1 (a int) partition by LIST(a) (
+partition pn values in (NULL),
+partition p0 values in (0),
+partition p1 values in (1),
+partition p2 values in (2)
+);
+insert into t1 values (NULL),(0),(1),(2);
+select * from t1 where a is null or a < 2;
+a
+NULL
+0
+1
+explain partitions select * from t1 where a is null or a < 2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pn,p0,p1 ALL NULL NULL NULL NULL 3 Using where
+select * from t1 where a is null or a < 0 or a > 1;
+a
+NULL
+2
+explain partitions select * from t1 where a is null or a < 0 or a > 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pn,p2 ALL NULL NULL NULL NULL 4 Using where
+drop table t1;
+CREATE TABLE t1 (id INT NOT NULL PRIMARY KEY, name VARCHAR(20))
+ENGINE=MyISAM DEFAULT CHARSET=latin1
+PARTITION BY RANGE(id)
+(PARTITION p0 VALUES LESS THAN (10) ENGINE = MyISAM,
+PARTITION p1 VALUES LESS THAN (20) ENGINE = MyISAM,
+PARTITION p2 VALUES LESS THAN (30) ENGINE = MyISAM);
+SHOW TABLE STATUS;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 MyISAM 10 Dynamic 0 0 0 0 0 0 NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+DROP TABLE t1;
+create table t1 (a bigint unsigned)
+partition by list (a)
+(partition p0 values in (0-1));
+ERROR HY000: Partition constant is out of partition function domain
+create table t1 (a bigint unsigned)
+partition by range (a)
+(partition p0 values less than (10));
+insert into t1 values (0xFFFFFFFFFFFFFFFF);
+ERROR HY000: Table has no partition for value 18446744073709551615
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition `s1 s2` values in (0));
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition `7` values in (0));
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+(partition `s1 s2 ` values in (0));
+ERROR HY000: Incorrect partition name
+create table t1 (a int)
+partition by list (a)
+subpartition by hash (a)
+(partition p1 values in (0) (subpartition `p1 p2 `));
+ERROR HY000: Incorrect partition name
+CREATE TABLE t1 (a int)
+PARTITION BY LIST (a)
+(PARTITION p0 VALUES IN (NULL));
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY LIST (a)
+(PARTITION p0 VALUES IN (NULL) ENGINE = MyISAM) */
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY RANGE(a)
+(PARTITION p0 VALUES LESS THAN (NULL));
+ERROR 42000: Not allowed to use NULL value in VALUES LESS THAN near '))' at line 3
+create table t1 (s1 int auto_increment primary key)
+partition by list (s1)
+(partition p1 values in (1),
+partition p2 values in (2),
+partition p3 values in (3));
+insert into t1 values (null);
+insert into t1 values (null);
+insert into t1 values (null);
+select auto_increment from information_schema.tables where table_name='t1';
+auto_increment
+4
+select * from t1;
+s1
+1
+2
+3
+drop table t1;
+create table t1 (a int) engine=memory
+partition by key(a);
+insert into t1 values (1);
+create index inx1 on t1(a);
+drop table t1;
+create table t1 (a int)
+PARTITION BY KEY (a)
+(PARTITION p0);
+set session sql_mode='no_table_options';
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+)
+/*!50100 PARTITION BY KEY (a)
+(PARTITION p0) */
+set session sql_mode='';
+drop table t1;
+create table t1 (a int)
+partition by key (a)
+(partition p0 engine = MERGE);
+ERROR HY000: Engine cannot be used in partitioned tables
+create table t1 (a varchar(1))
+partition by key (a)
+as select 'a';
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a) */
+drop table t1;
+CREATE TABLE t1 (a int) ENGINE = MYISAM PARTITION BY KEY(a);
+INSERT into t1 values (1), (2);
+SHOW TABLE STATUS;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 MyISAM 10 Fixed 2 7 14 0 0 0 NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+DELETE from t1 where a = 1;
+SHOW TABLE STATUS;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 MyISAM 10 Fixed 1 14 14 0 0 7 NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+ALTER TABLE t1 OPTIMIZE PARTITION p0;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+SHOW TABLE STATUS;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 MyISAM 10 Fixed 1 7 7 0 1024 0 NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+DROP TABLE t1;
+CREATE TABLE t1 (a int, index(a)) PARTITION BY KEY(a);
+ALTER TABLE t1 DISABLE KEYS;
+ALTER TABLE t1 ENABLE KEYS;
+DROP TABLE t1;
+create table t1 (a int)
+engine=MEMORY
+partition by key (a);
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair note The storage engine for the table doesn't support repair
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize note The storage engine for the table doesn't support optimize
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze note The storage engine for the table doesn't support analyze
+drop table t1;
+drop procedure if exists mysqltest_1;
+create table t1 (a int)
+partition by list (a)
+(partition p0 values in (0));
+insert into t1 values (0);
+create procedure mysqltest_1 ()
+begin
+begin
+declare continue handler for sqlexception begin end;
+update ignore t1 set a = 1 where a = 0;
+end;
+prepare stmt1 from 'alter table t1';
+execute stmt1;
+end//
+call mysqltest_1()//
+drop table t1;
+drop procedure mysqltest_1;
+create table t1 (a int, index(a))
+partition by hash(a);
+insert into t1 values (1),(2);
+select * from t1 ORDER BY a DESC;
+a
+2
+1
+drop table t1;
+create table t1 (a bigint unsigned not null, primary key(a))
+engine = myisam
+partition by key (a)
+partitions 10;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bigint(20) unsigned NOT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+PARTITIONS 10 */
+insert into t1 values (18446744073709551615), (0xFFFFFFFFFFFFFFFE),
+(18446744073709551613), (18446744073709551612);
+select * from t1;
+a
+18446744073709551612
+18446744073709551613
+18446744073709551614
+18446744073709551615
+select * from t1 where a = 18446744073709551615;
+a
+18446744073709551615
+delete from t1 where a = 18446744073709551615;
+select * from t1;
+a
+18446744073709551612
+18446744073709551613
+18446744073709551614
+drop table t1;
+CREATE TABLE t1 (
+num int(11) NOT NULL, cs int(11) NOT NULL)
+PARTITION BY RANGE (num) SUBPARTITION BY HASH (
+cs) SUBPARTITIONS 2 (PARTITION p_X VALUES LESS THAN MAXVALUE);
+ALTER TABLE t1
+REORGANIZE PARTITION p_X INTO (
+PARTITION p_100 VALUES LESS THAN (100),
+PARTITION p_X VALUES LESS THAN MAXVALUE
+);
+drop table t1;
+CREATE TABLE t2 (
+taken datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+id int(11) NOT NULL DEFAULT '0',
+PRIMARY KEY (id,taken),
+KEY taken (taken)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t2 VALUES
+('2006-09-27 21:50:01',16421),
+('2006-10-02 21:50:01',16421),
+('2006-09-27 21:50:01',19092),
+('2006-09-28 21:50:01',19092),
+('2006-09-29 21:50:01',19092),
+('2006-09-30 21:50:01',19092),
+('2006-10-01 21:50:01',19092),
+('2006-10-02 21:50:01',19092),
+('2006-09-27 21:50:01',22589),
+('2006-09-29 21:50:01',22589);
+CREATE TABLE t1 (
+id int(8) NOT NULL,
+PRIMARY KEY (id)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES
+(16421),
+(19092),
+(22589);
+CREATE TABLE t4 (
+taken datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+id int(11) NOT NULL DEFAULT '0',
+PRIMARY KEY (id,taken),
+KEY taken (taken)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+PARTITION BY RANGE (to_days(taken))
+(
+PARTITION p01 VALUES LESS THAN (732920) ,
+PARTITION p02 VALUES LESS THAN (732950) ,
+PARTITION p03 VALUES LESS THAN MAXVALUE ) ;
+INSERT INTO t4 select * from t2;
+set @f_date='2006-09-28';
+set @t_date='2006-10-02';
+SELECT t1.id AS MyISAM_part
+FROM t1
+WHERE t1.id IN (
+SELECT distinct id
+FROM t4
+WHERE taken BETWEEN @f_date AND date_add(@t_date, INTERVAL 1 DAY))
+ORDER BY t1.id
+;
+MyISAM_part
+16421
+19092
+22589
+drop table t1, t2, t4;
+CREATE TABLE t1 (
+taken datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+id int(11) NOT NULL DEFAULT '0',
+status varchar(20) NOT NULL DEFAULT '',
+PRIMARY KEY (id,taken)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+PARTITION BY RANGE (to_days(taken))
+(
+PARTITION p15 VALUES LESS THAN (732950) ,
+PARTITION p16 VALUES LESS THAN MAXVALUE ) ;
+INSERT INTO t1 VALUES
+('2006-09-27 21:50:01',22589,'Open'),
+('2006-09-29 21:50:01',22589,'Verified');
+DROP TABLE IF EXISTS t2;
+Warnings:
+Note 1051 Unknown table 't2'
+CREATE TABLE t2 (
+id int(8) NOT NULL,
+severity tinyint(4) NOT NULL DEFAULT '0',
+priority tinyint(4) NOT NULL DEFAULT '0',
+status varchar(20) DEFAULT NULL,
+alien tinyint(4) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t2 VALUES
+(22589,1,1,'Need Feedback',0);
+SELECT t2.id FROM t2 WHERE t2.id IN (SELECT id FROM t1 WHERE status = 'Verified');
+id
+22589
+drop table t1, t2;
+create table t1 (c1 varchar(255),c2 tinyint,primary key(c1))
+partition by key (c1) partitions 10 ;
+insert into t1 values ('aaa','1') on duplicate key update c2 = c2 + 1;
+insert into t1 values ('aaa','1') on duplicate key update c2 = c2 + 1;
+select * from t1;
+c1 c2
+aaa 2
+drop table t1;
+create table t1 (s1 bigint) partition by list (s1) (partition p1 values in (-9223372036854775808));
+drop table t1;
+create table t1(a int auto_increment, b int, primary key (b, a))
+partition by hash(b) partitions 2;
+insert into t1 values (null, 1);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 MyISAM 10 Fixed 1 9 9 0 0 0 1 NULL NULL NULL latin1_swedish_ci NULL partitioned
+drop table t1;
+create table t1(a int auto_increment primary key)
+partition by key(a) partitions 2;
+insert into t1 values (null), (null), (null);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 MyISAM 10 Fixed 3 7 21 0 0 0 4 NULL NULL NULL latin1_swedish_ci NULL partitioned
+drop table t1;
+CREATE TABLE t1(a INT NOT NULL, b TINYBLOB, KEY(a))
+PARTITION BY RANGE(a) ( PARTITION p0 VALUES LESS THAN (32));
+INSERT INTO t1 VALUES (1, REPEAT('a', 10));
+INSERT INTO t1 SELECT a + 1, b FROM t1;
+INSERT INTO t1 SELECT a + 2, b FROM t1;
+INSERT INTO t1 SELECT a + 4, b FROM t1;
+INSERT INTO t1 SELECT a + 8, b FROM t1;
+ALTER TABLE t1 ADD PARTITION (PARTITION p1 VALUES LESS THAN (64));
+ALTER TABLE t1 DROP PARTITION p1;
+DROP TABLE t1;
+create table t (s1 int) engine=myisam partition by key (s1);
+create trigger t_ad after delete on t for each row insert into t values (old.s1);
+insert into t values (1);
+drop table t;
+create table t2 (b int);
+create table t1 (b int)
+PARTITION BY RANGE (t2.b) (
+PARTITION p1 VALUES LESS THAN (10),
+PARTITION p2 VALUES LESS THAN (20)
+) select * from t2;
+ERROR 42S22: Unknown column 't2.b' in 'partition function'
+create table t1 (a int)
+PARTITION BY RANGE (b) (
+PARTITION p1 VALUES LESS THAN (10),
+PARTITION p2 VALUES LESS THAN (20)
+) select * from t2;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (b)
+(PARTITION p1 VALUES LESS THAN (10) ENGINE = MyISAM,
+ PARTITION p2 VALUES LESS THAN (20) ENGINE = MyISAM) */
+drop table t1, t2;
+create table t1
+(s1 timestamp on update current_timestamp, s2 int)
+partition by key(s1) partitions 3;
+insert into t1 values (null,null);
+drop table t1;
+create table t1 (
+c0 int,
+c1 bigint,
+c2 set('sweet'),
+key (c2,c1,c0),
+key(c0)
+) engine=myisam partition by hash (month(c0)) partitions 5;
+insert ignore into t1 set c0 = -6502262, c1 = 3992917, c2 = 35019;
+insert ignore into t1 set c0 = 241221, c1 = -6862346, c2 = 56644;
+select c1 from t1 group by (select c0 from t1 limit 1);
+c1
+-6862346
+drop table t1;
+CREATE TABLE t1(a int)
+PARTITION BY RANGE (a) (
+PARTITION p1 VALUES LESS THAN (10),
+PARTITION p2 VALUES LESS THAN (20)
+);
+ALTER TABLE t1 OPTIMIZE PARTITION p1 EXTENDED;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXTENDED' at line 1
+ALTER TABLE t1 ANALYZE PARTITION p1 EXTENDED;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXTENDED' at line 1
+ALTER TABLE t1 ANALYZE PARTITION p1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+ALTER TABLE t1 CHECK PARTITION p1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+ALTER TABLE t1 REPAIR PARTITION p1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+ALTER TABLE t1 OPTIMIZE PARTITION p1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+DROP TABLE t1;
+CREATE TABLE t1 (s1 BIGINT UNSIGNED)
+PARTITION BY RANGE (s1) (
+PARTITION p0 VALUES LESS THAN (0),
+PARTITION p1 VALUES LESS THAN (1),
+PARTITION p2 VALUES LESS THAN (18446744073709551615)
+);
+INSERT INTO t1 VALUES (0), (18446744073709551614);
+INSERT INTO t1 VALUES (18446744073709551615);
+ERROR HY000: Table has no partition for value 18446744073709551615
+DROP TABLE t1;
+CREATE TABLE t1 (s1 BIGINT UNSIGNED)
+PARTITION BY RANGE (s1) (
+PARTITION p0 VALUES LESS THAN (0),
+PARTITION p1 VALUES LESS THAN (1),
+PARTITION p2 VALUES LESS THAN (18446744073709551614),
+PARTITION p3 VALUES LESS THAN MAXVALUE
+);
+INSERT INTO t1 VALUES (-1), (0), (18446744073709551613),
+(18446744073709551614), (18446744073709551615);
+Warnings:
+Warning 1264 Out of range value for column 's1' at row 1
+SELECT * FROM t1;
+s1
+0
+0
+18446744073709551613
+18446744073709551614
+18446744073709551615
+SELECT * FROM t1 WHERE s1 = 0;
+s1
+0
+0
+SELECT * FROM t1 WHERE s1 = 18446744073709551614;
+s1
+18446744073709551614
+SELECT * FROM t1 WHERE s1 = 18446744073709551615;
+s1
+18446744073709551615
+DROP TABLE t1;
+CREATE TABLE t1 (s1 BIGINT UNSIGNED)
+PARTITION BY RANGE (s1) (
+PARTITION p0 VALUES LESS THAN (0),
+PARTITION p1 VALUES LESS THAN (1),
+PARTITION p2 VALUES LESS THAN (18446744073709551615),
+PARTITION p3 VALUES LESS THAN MAXVALUE
+);
+DROP TABLE t1;
+CREATE TABLE t1
+(int_column INT, char_column CHAR(5),
+PRIMARY KEY(char_column,int_column))
+PARTITION BY KEY(char_column,int_column)
+PARTITIONS 101;
+INSERT INTO t1 (int_column, char_column) VALUES
+( 39868 ,'zZZRW'),
+( 545592 ,'zZzSD'),
+( 4936 ,'zzzsT'),
+( 9274 ,'ZzZSX'),
+( 970185 ,'ZZzTN'),
+( 786036 ,'zZzTO'),
+( 37240 ,'zZzTv'),
+( 313801 ,'zzzUM'),
+( 782427 ,'ZZZva'),
+( 907955 ,'zZZvP'),
+( 453491 ,'zzZWV'),
+( 756594 ,'ZZZXU'),
+( 718061 ,'ZZzZH');
+SELECT * FROM t1 ORDER BY char_column DESC;
+int_column char_column
+718061 ZZzZH
+756594 ZZZXU
+453491 zzZWV
+907955 zZZvP
+782427 ZZZva
+313801 zzzUM
+37240 zZzTv
+786036 zZzTO
+970185 ZZzTN
+9274 ZzZSX
+4936 zzzsT
+545592 zZzSD
+39868 zZZRW
+DROP TABLE t1;
+CREATE TABLE t1(id MEDIUMINT NOT NULL AUTO_INCREMENT,
+user CHAR(25), PRIMARY KEY(id))
+PARTITION BY RANGE(id)
+SUBPARTITION BY hash(id) subpartitions 2
+(PARTITION pa1 values less than (10),
+PARTITION pa2 values less than (20),
+PARTITION pa11 values less than MAXVALUE);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `id` mediumint(9) NOT NULL AUTO_INCREMENT,
+ `user` char(25) DEFAULT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM AUTO_INCREMENT=16 DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (id)
+SUBPARTITION BY HASH (id)
+SUBPARTITIONS 2
+(PARTITION pa1 VALUES LESS THAN (10) ENGINE = MyISAM,
+ PARTITION pa2 VALUES LESS THAN (20) ENGINE = MyISAM,
+ PARTITION pa11 VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */
+drop table t1;
+CREATE TABLE t1 (
+`ID` bigint(20) NOT NULL AUTO_INCREMENT,
+`createdDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
+`number` int,
+PRIMARY KEY (`ID`, number)
+)
+PARTITION BY RANGE (number) (
+PARTITION p0 VALUES LESS THAN (6),
+PARTITION p1 VALUES LESS THAN (11)
+);
+create table t2 (
+`ID` bigint(20),
+`createdDate` TIMESTAMP,
+`number` int
+);
+INSERT INTO t1 SET number=1;
+insert into t2 select * from t1;
+SELECT SLEEP(1);
+SLEEP(1)
+0
+UPDATE t1 SET number=6;
+select count(*) from t1, t2 where t1.createdDate = t2.createdDate;
+count(*)
+1
+drop table t1, t2;
+SET @orig_sql_mode = @@SQL_MODE;
+SET SQL_MODE='STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO';
+CREATE TABLE t1 (c1 INT)
+PARTITION BY LIST(1 DIV c1) (
+PARTITION p0 VALUES IN (NULL),
+PARTITION p1 VALUES IN (1)
+);
+INSERT INTO t1 VALUES (0);
+ERROR 22012: Division by 0
+SELECT * FROM t1;
+c1
+TRUNCATE t1;
+INSERT INTO t1 VALUES (NULL), (0), (1), (2);
+ERROR 22012: Division by 0
+SELECT * FROM t1;
+c1
+NULL
+DROP TABLE t1;
+SET SQL_MODE= @orig_sql_mode;
+create table t1 (s1 int) partition by hash(s1) partitions 2;
+create index i on t1 (s1);
+insert into t1 values (1);
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1 order by s1 desc;
+select * from t1;
+s1
+1
+1
+1
+1
+1
+1
+1
+1
+drop table t1;
+create table t1 (s1 int) partition by range(s1)
+(partition pa1 values less than (10),
+partition pa2 values less than MAXVALUE);
+create index i on t1 (s1);
+insert into t1 values (1);
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1 order by s1 desc;
+select * from t1;
+s1
+1
+1
+1
+1
+1
+1
+1
+1
+drop table t1;
+create table t1 (s1 int) partition by range(s1)
+(partition pa1 values less than (10),
+partition pa2 values less than MAXVALUE);
+create index i on t1 (s1);
+insert into t1 values (20);
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1 order by s1 desc;
+select * from t1;
+s1
+20
+20
+20
+20
+20
+20
+20
+20
+drop table t1;
+create table t1 (s1 int) partition by range(s1)
+(partition pa1 values less than (10),
+partition pa2 values less than MAXVALUE);
+create index i on t1 (s1);
+insert into t1 values (1), (2), (3), (4), (5), (6), (7), (8);
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1;
+insert into t1 select s1 from t1 order by s1 desc;
+insert into t1 select s1 from t1 where s1=3;
+select count(*) from t1;
+count(*)
+288
+drop table t1;
+#
+# Bug#42944: partition not pruned correctly
+#
+CREATE TABLE t1 (a int) PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (100),
+PARTITION p1 VALUES LESS THAN (200),
+PARTITION p2 VALUES LESS THAN (300),
+PARTITION p3 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (10), (100), (200), (300), (400);
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a>=200;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2,p3 ALL NULL NULL NULL NULL 3 Using where
+DROP TABLE t1;
+CREATE TABLE t1 ( a INT, b INT, c INT, KEY bc(b, c) )
+PARTITION BY KEY (a, b) PARTITIONS 3
+;
+INSERT INTO t1 VALUES
+(17, 1, -8),
+(3, 1, -7),
+(23, 1, -6),
+(22, 1, -5),
+(11, 1, -4),
+(21, 1, -3),
+(19, 1, -2),
+(30, 1, -1),
+(20, 1, 1),
+(16, 1, 2),
+(18, 1, 3),
+(9, 1, 4),
+(15, 1, 5),
+(28, 1, 6),
+(29, 1, 7),
+(25, 1, 8),
+(10, 1, 9),
+(13, 1, 10),
+(27, 1, 11),
+(24, 1, 12),
+(12, 1, 13),
+(26, 1, 14),
+(14, 1, 15)
+;
+SELECT b, c FROM t1 WHERE b = 1 GROUP BY b, c;
+b c
+1 -8
+1 -7
+1 -6
+1 -5
+1 -4
+1 -3
+1 -2
+1 -1
+1 1
+1 2
+1 3
+1 4
+1 5
+1 6
+1 7
+1 8
+1 9
+1 10
+1 11
+1 12
+1 13
+1 14
+1 15
+EXPLAIN
+SELECT b, c FROM t1 WHERE b = 1 GROUP BY b, c;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range bc bc 10 NULL 7 Using where; Using index for group-by
+DROP TABLE t1;
+#
+# Bug #45807: crash accessing partitioned table and sql_mode
+# contains ONLY_FULL_GROUP_BY
+#
+SET SESSION SQL_MODE='ONLY_FULL_GROUP_BY';
+CREATE TABLE t1(id INT,KEY(id)) ENGINE=MYISAM
+PARTITION BY HASH(id) PARTITIONS 2;
+DROP TABLE t1;
+SET SESSION SQL_MODE=DEFAULT;
+#
+# BUG#45816 - assertion failure with index containing double
+# column on partitioned table
+#
+CREATE TABLE t1 (
+a INT DEFAULT NULL,
+b DOUBLE DEFAULT NULL,
+c INT DEFAULT NULL,
+KEY idx2(b,a)
+) PARTITION BY HASH(c) PARTITIONS 3;
+INSERT INTO t1 VALUES (6,8,9);
+INSERT INTO t1 VALUES (6,8,10);
+SELECT 1 FROM t1 JOIN t1 AS t2 USING (a) FOR UPDATE;
+1
+1
+1
+1
+1
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/partition_archive.result b/mysql-test/r/partition_archive.result
new file mode 100644
index 00000000000..de64b09e042
--- /dev/null
+++ b/mysql-test/r/partition_archive.result
@@ -0,0 +1,106 @@
+drop database if exists db99;
+drop table if exists t1;
+create database db99;
+use db99;
+create table t1 (a int not null)
+engine=archive
+partition by list (a)
+(partition p0 values in (1), partition p1 values in (2));
+insert into t1 values (1), (2);
+create index inx on t1 (a);
+alter table t1 add partition (partition p2 values in (3));
+alter table t1 drop partition p2;
+use test;
+drop database db99;
+create table t1 (f1 integer) engine= ARCHIVE partition by list(f1)
+(
+partition p1 values in (1),
+partition p2 values in (NULL),
+partition p3 values in (2),
+partition p4 values in (3),
+partition p5 values in (4)
+);
+insert into t1 values (1),(2),(3),(4),(null);
+select * from t1;
+f1
+1
+NULL
+2
+3
+4
+select * from t1 where f1 < 3;
+f1
+1
+2
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null) engine=ARCHIVE
+partition by hash (a + 2)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+insert into t1 values (1,1,1);
+insert into t1 values (2,1,1);
+insert into t1 values (3,1,1);
+insert into t1 values (4,1,1);
+insert into t1 values (5,1,1);
+select * from t1;
+a b c
+1 1 1
+4 1 1
+2 1 1
+5 1 1
+3 1 1
+drop table t1;
+create table t1 (a int) engine=archive partition by hash(a);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a) */
+drop table t1;
+CREATE TABLE t1(id MEDIUMINT NOT NULL AUTO_INCREMENT,
+f1 VARCHAR(25),
+PRIMARY KEY(id)) ENGINE=ARCHIVE
+PARTITION BY RANGE(id)
+SUBPARTITION BY hash(id) subpartitions 2
+(PARTITION pa1 values less than (10),
+PARTITION pa2 values less than (20),
+PARTITION pa3 values less than (30),
+PARTITION pa4 values less than (40),
+PARTITION pa5 values less than (50),
+PARTITION pa6 values less than (60),
+PARTITION pa7 values less than (70),
+PARTITION pa8 values less than (80),
+PARTITION pa9 values less than (90),
+PARTITION pa10 values less than (100),
+PARTITION pa11 values less than MAXVALUE);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `id` mediumint(9) NOT NULL AUTO_INCREMENT,
+ `f1` varchar(25) DEFAULT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=ARCHIVE AUTO_INCREMENT=101 DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (id)
+SUBPARTITION BY HASH (id)
+SUBPARTITIONS 2
+(PARTITION pa1 VALUES LESS THAN (10) ENGINE = ARCHIVE,
+ PARTITION pa2 VALUES LESS THAN (20) ENGINE = ARCHIVE,
+ PARTITION pa3 VALUES LESS THAN (30) ENGINE = ARCHIVE,
+ PARTITION pa4 VALUES LESS THAN (40) ENGINE = ARCHIVE,
+ PARTITION pa5 VALUES LESS THAN (50) ENGINE = ARCHIVE,
+ PARTITION pa6 VALUES LESS THAN (60) ENGINE = ARCHIVE,
+ PARTITION pa7 VALUES LESS THAN (70) ENGINE = ARCHIVE,
+ PARTITION pa8 VALUES LESS THAN (80) ENGINE = ARCHIVE,
+ PARTITION pa9 VALUES LESS THAN (90) ENGINE = ARCHIVE,
+ PARTITION pa10 VALUES LESS THAN (100) ENGINE = ARCHIVE,
+ PARTITION pa11 VALUES LESS THAN MAXVALUE ENGINE = ARCHIVE) */
+select count(*) from t1;
+count(*)
+100
+drop table t1;
diff --git a/mysql-test/r/partition_blackhole.result b/mysql-test/r/partition_blackhole.result
new file mode 100644
index 00000000000..225cc1886fd
--- /dev/null
+++ b/mysql-test/r/partition_blackhole.result
@@ -0,0 +1,7 @@
+DROP TABLE IF EXISTS t1;
+CREATE TABLE `t1` (
+`id` int(11) default NULL
+) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 PARTITION BY HASH (id) ;
+SELECT * FROM t1;
+id
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_bug18198.result b/mysql-test/r/partition_bug18198.result
new file mode 100644
index 00000000000..18d7d904bb0
--- /dev/null
+++ b/mysql-test/r/partition_bug18198.result
@@ -0,0 +1,173 @@
+drop table if exists t1;
+create table t1 (col1 datetime)
+partition by range(datediff(col1,col1))
+(partition p0 values less than (10), partition p1 values less than (30));
+drop table t1;
+create table t1 (col1 int)
+partition by range(greatest(col1,10))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(isnull(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(least(col1,12))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(case when col1>0 then 10 else 20 end)
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(ifnull(col1,5))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(nullif(col1,5))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(bit_length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(bit_length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(char_length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(char_length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(character_length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(find_in_set(col1,1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(find_in_set(col1,'1'))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(instr(col1,3))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(instr(col1,'3'))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(locate(1,col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(locate(1,col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(octet_length(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(position(1 in col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(position(1 in col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 char(5))
+partition by range(strcmp(col1,2))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(strcmp(col1,2))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(crc32(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(round(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(sign(col1))
+(partition p0 values less than (2), partition p1 values less than (6));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 datetime)
+partition by range(period_add(col1,5))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 datetime, col2 datetime)
+partition by range(period_diff(col1,col2))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int, col2 int)
+partition by range(period_diff(col1,col2))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 datetime)
+partition by range(timestampdiff(day,5,col1))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 date)
+partition by range(unix_timestamp(col1))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 datetime)
+partition by range(week(col1))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 varchar(25))
+partition by range(cast(col1 as signed))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 varchar(25))
+partition by range(convert(col1,unsigned))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(col1 | 20)
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(col1 & 20)
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(col1 ^ 20)
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(col1 << 20)
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(col1 >> 20)
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(~col1)
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(bit_count(col1))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
+create table t1 (col1 int)
+partition by range(inet_aton(col1))
+(partition p0 values less than (10), partition p1 values less than (30));
+ERROR HY000: This partition function is not allowed
diff --git a/mysql-test/r/partition_charset.result b/mysql-test/r/partition_charset.result
new file mode 100644
index 00000000000..f8f75e8bee7
--- /dev/null
+++ b/mysql-test/r/partition_charset.result
@@ -0,0 +1,22 @@
+drop table if exists t1;
+set names utf8;
+create table t1 (s1 int)
+partition by list (s1)
+(partition c values in (1),
+partition Ç values in (3));
+insert into t1 values (1),(3);
+select * from t1;
+s1
+1
+3
+flush tables;
+set names latin1;
+select * from t1;
+s1
+1
+3
+drop table t1;
+create table t1 (a varchar(1), primary key (a))
+partition by list (ascii(a))
+(partition p1 values in (65));
+ERROR HY000: This partition function is not allowed
diff --git a/mysql-test/r/partition_csv.result b/mysql-test/r/partition_csv.result
new file mode 100644
index 00000000000..18e28d4670a
--- /dev/null
+++ b/mysql-test/r/partition_csv.result
@@ -0,0 +1,55 @@
+call mtr.add_suppression("Failed to write to mysql.general_log");
+drop table if exists t1;
+create table t1 (a int)
+engine = csv
+partition by list (a)
+(partition p0 values in (null));
+ERROR HY000: Engine cannot be used in partitioned tables
+USE mysql;
+TRUNCATE TABLE general_log;
+SET @old_general_log_state = @@global.general_log;
+SET GLOBAL general_log = 0;
+ALTER TABLE general_log ENGINE = MyISAM;
+ALTER TABLE general_log PARTITION BY RANGE (TO_DAYS(event_time))
+(PARTITION p0 VALUES LESS THAN (733144), PARTITION p1 VALUES LESS THAN (3000000));
+ERROR HY000: Incorrect usage of PARTITION and log table
+ALTER TABLE general_log ENGINE = CSV;
+SET GLOBAL general_log = @old_general_log_state;
+use test;
+#
+# Bug#40281: partitioning the general log table crashes the server
+#
+# set up partitioned log, and switch to it
+USE mysql;
+SET @old_general_log_state = @@global.general_log;
+SET GLOBAL general_log = 0;
+CREATE TABLE gl_partitioned LIKE general_log;
+ALTER TABLE gl_partitioned ENGINE=myisam;
+ALTER TABLE gl_partitioned PARTITION BY HASH (thread_id) PARTITIONS 10;
+ALTER TABLE general_log RENAME TO gl_nonpartitioned;
+ALTER TABLE gl_partitioned RENAME TO general_log;
+SELECT @@global.log_output INTO @old_glo;
+SET GLOBAL log_output='table';
+SET GLOBAL general_log =1;
+# do some things to be logged to partitioned log, should fail
+USE /* 1 */ test;
+CREATE TABLE t1 (i INT);
+INSERT INTO t1 VALUES (1);
+SELECT * FROM t1;
+i
+1
+USE mysql;
+SET GLOBAL general_log =0;
+ALTER TABLE general_log RENAME TO gl_partitioned;
+ALTER TABLE gl_nonpartitioned RENAME TO general_log;
+# show whether we actually logged anything (no) to general_log
+SELECT COUNT(argument) FROM gl_partitioned;
+COUNT(argument)
+0
+DROP TABLE gl_partitioned;
+SET GLOBAL log_output = @old_glo;
+SET GLOBAL general_log = 1;
+USE /* 2 */ test;
+DROP TABLE t1;
+SET GLOBAL general_log = @old_general_log_state;
+End of 5.1 tests
diff --git a/mysql-test/r/partition_datatype.result b/mysql-test/r/partition_datatype.result
new file mode 100644
index 00000000000..607afb71da5
--- /dev/null
+++ b/mysql-test/r/partition_datatype.result
@@ -0,0 +1,338 @@
+drop table if exists t1;
+# test with not null
+create table t1 (a bit not null) partition by key (a);
+insert into t1 values (b'1');
+select hex(a) from t1 where a = b'1';
+hex(a)
+1
+drop table t1;
+create table t1 (a tinyint not null) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a smallint not null) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a mediumint not null) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a int not null) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a bigint not null) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a float not null) partition by key (a);
+insert into t1 values (0.5);
+select * from t1 where a = 0.5;
+a
+0.5
+drop table t1;
+create table t1 (a double not null) partition by key (a);
+insert into t1 values (0.5);
+select * from t1 where a = 0.5;
+a
+0.5
+drop table t1;
+create table t1 (a decimal(4,2) not null) partition by key (a);
+insert into t1 values (2.1);
+select * from t1 where a = 2.1;
+a
+2.10
+drop table t1;
+create table t1 (a date not null) partition by key (a);
+insert into t1 values ('2001-01-01');
+select * from t1 where a = '2001-01-01';
+a
+2001-01-01
+drop table t1;
+create table t1 (a datetime not null) partition by key (a);
+insert into t1 values ('2001-01-01 01:02:03');
+select * from t1 where a = '2001-01-01 01:02:03';
+a
+2001-01-01 01:02:03
+drop table t1;
+create table t1 (a timestamp not null) partition by key (a);
+insert into t1 values ('2001-01-01 01:02:03');
+select * from t1 where a = '2001-01-01 01:02:03';
+a
+2001-01-01 01:02:03
+drop table t1;
+create table t1 (a time not null) partition by key (a);
+insert into t1 values ('01:02:03');
+select * from t1 where a = '01:02:03';
+a
+01:02:03
+drop table t1;
+create table t1 (a year not null) partition by key (a);
+insert into t1 values ('2001');
+select * from t1 where a = '2001';
+a
+2001
+drop table t1;
+create table t1 (a varchar(10) character set utf8 not null) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a varchar(300) character set utf8 not null) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a varchar(10) character set latin1 not null) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a varchar(300) character set latin1 not null) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a char(10) character set utf8 not null) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a char(10) character set latin1 not null) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a enum('y','n') not null) partition by key (a);
+insert into t1 values ('y');
+select * from t1 where a = 'y';
+a
+y
+drop table t1;
+create table t1 (a set('y','n') not null) partition by key (a);
+insert into t1 values ('y');
+select * from t1 where a = 'y';
+a
+y
+drop table t1;
+# test with null allowed
+create table t1 (a bit) partition by key (a);
+insert into t1 values (b'1');
+insert into t1 values (NULL);
+select hex(a) from t1 where a = b'1';
+hex(a)
+1
+select hex(a) from t1 where a is NULL;
+hex(a)
+NULL
+select hex(a) from t1 order by a;
+hex(a)
+NULL
+1
+drop table t1;
+create table t1 (a tinyint) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a smallint) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a mediumint) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a int) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a bigint) partition by key (a);
+insert into t1 values (2);
+select * from t1 where a = 2;
+a
+2
+drop table t1;
+create table t1 (a float) partition by key (a);
+insert into t1 values (0.5);
+select * from t1 where a = 0.5;
+a
+0.5
+drop table t1;
+create table t1 (a double) partition by key (a);
+insert into t1 values (0.5);
+select * from t1 where a = 0.5;
+a
+0.5
+drop table t1;
+create table t1 (a decimal(4,2)) partition by key (a);
+insert into t1 values (2.1);
+select * from t1 where a = 2.1;
+a
+2.10
+drop table t1;
+create table t1 (a date) partition by key (a);
+insert into t1 values ('2001-01-01');
+select * from t1 where a = '2001-01-01';
+a
+2001-01-01
+drop table t1;
+create table t1 (a datetime) partition by key (a);
+insert into t1 values ('2001-01-01 01:02:03');
+select * from t1 where a = '2001-01-01 01:02:03';
+a
+2001-01-01 01:02:03
+drop table t1;
+create table t1 (a timestamp null) partition by key (a);
+insert into t1 values ('2001-01-01 01:02:03');
+select * from t1 where a = '2001-01-01 01:02:03';
+a
+2001-01-01 01:02:03
+drop table t1;
+create table t1 (a time) partition by key (a);
+insert into t1 values ('01:02:03');
+select * from t1 where a = '01:02:03';
+a
+01:02:03
+drop table t1;
+create table t1 (a year) partition by key (a);
+insert into t1 values ('2001');
+select * from t1 where a = '2001';
+a
+2001
+drop table t1;
+create table t1 (a varchar(10) character set utf8) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a varchar(300) character set utf8) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a varchar(10) character set latin1) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a varchar(300) character set latin1) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a char(10) character set utf8) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a char(10) character set latin1) partition by key (a);
+insert into t1 values ('abc');
+select * from t1 where a = 'abc';
+a
+abc
+drop table t1;
+create table t1 (a enum('y','n')) partition by key (a);
+insert into t1 values ('y');
+select * from t1 where a = 'y';
+a
+y
+drop table t1;
+create table t1 (a set('y','n')) partition by key (a);
+insert into t1 values ('y');
+select * from t1 where a = 'y';
+a
+y
+drop table t1;
+create table t1 (a varchar(65531)) partition by key (a);
+insert into t1 values ('bbbb');
+insert into t1 values ('aaaa');
+select * from t1 where a = 'aaaa';
+a
+aaaa
+select * from t1 where a like 'aaa%';
+a
+aaaa
+select * from t1 where a = 'bbbb';
+a
+bbbb
+drop table t1;
+create table t1 (a varchar(65532)) partition by key (a);
+insert into t1 values ('bbbb');
+insert into t1 values ('aaaa');
+select * from t1 where a = 'aaaa';
+a
+aaaa
+select * from t1 where a like 'aaa%';
+a
+aaaa
+select * from t1 where a = 'bbbb';
+a
+bbbb
+drop table t1;
+create table t1 (a varchar(65533) not null) partition by key (a);
+insert into t1 values ('bbbb');
+insert into t1 values ('aaaa');
+select * from t1 where a = 'aaaa';
+a
+aaaa
+select * from t1 where a like 'aaa%';
+a
+aaaa
+select * from t1 where a = 'bbbb';
+a
+bbbb
+drop table t1;
+create table t1 (a varchar(65533)) partition by key (a);
+ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
+create table t1 (a varchar(65534) not null) partition by key (a);
+ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
+create table t1 (a varchar(65535)) partition by key (a);
+ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
+create table t1 (a bit(27), primary key (a)) engine=myisam
+partition by hash (a)
+(partition p0, partition p1, partition p2);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bit(27) NOT NULL DEFAULT b'0',
+ PRIMARY KEY (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a)
+(PARTITION p0 ENGINE = MyISAM,
+ PARTITION p1 ENGINE = MyISAM,
+ PARTITION p2 ENGINE = MyISAM) */
+insert into t1 values (1),(4),(7),(10),(13),(16),(19),(22),(25),(28),(31),(34);
+select hex(a) from t1 where a = 7;
+hex(a)
+7
+drop table t1;
diff --git a/mysql-test/r/partition_disabled.result b/mysql-test/r/partition_disabled.result
new file mode 100644
index 00000000000..df36f56a328
--- /dev/null
+++ b/mysql-test/r/partition_disabled.result
@@ -0,0 +1,93 @@
+DROP TABLE IF EXISTS t1;
+FLUSH TABLES;
+SELECT * FROM t1;
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+TRUNCATE TABLE t1;
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 analyze error Corrupt
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 check error Corrupt
+OPTIMIZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 optimize Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 optimize error Corrupt
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 repair error Corrupt
+ALTER TABLE t1 REPAIR PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 repair Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 repair error Corrupt
+ALTER TABLE t1 CHECK PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 check Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 check error Corrupt
+ALTER TABLE t1 OPTIMIZE PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 optimize Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 optimize error Corrupt
+ALTER TABLE t1 ANALYZE PARTITION ALL;
+Table Op Msg_type Msg_text
+test.t1 analyze Error The MySQL server is running with the --skip-partition option so it cannot execute this statement
+test.t1 analyze error Corrupt
+ALTER TABLE t1 REBUILD PARTITION ALL;
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+ALTER TABLE t1 ENGINE Memory;
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+ALTER TABLE t1 ADD (new INT);
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+DROP TABLE t1;
+CREATE TABLE t1 (
+firstname VARCHAR(25) NOT NULL,
+lastname VARCHAR(25) NOT NULL,
+username VARCHAR(16) NOT NULL,
+email VARCHAR(35),
+joined DATE NOT NULL
+)
+PARTITION BY KEY(joined)
+PARTITIONS 6;
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+ALTER TABLE t1 PARTITION BY KEY(joined) PARTITIONS 2;
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+drop table t1;
+ERROR 42S02: Unknown table 't1'
+CREATE TABLE t1 (
+firstname VARCHAR(25) NOT NULL,
+lastname VARCHAR(25) NOT NULL,
+username VARCHAR(16) NOT NULL,
+email VARCHAR(35),
+joined DATE NOT NULL
+)
+PARTITION BY RANGE( YEAR(joined) ) (
+PARTITION p0 VALUES LESS THAN (1960),
+PARTITION p1 VALUES LESS THAN (1970),
+PARTITION p2 VALUES LESS THAN (1980),
+PARTITION p3 VALUES LESS THAN (1990),
+PARTITION p4 VALUES LESS THAN MAXVALUE
+);
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+drop table t1;
+ERROR 42S02: Unknown table 't1'
+CREATE TABLE t1 (id INT, purchased DATE)
+PARTITION BY RANGE( YEAR(purchased) )
+SUBPARTITION BY HASH( TO_DAYS(purchased) )
+SUBPARTITIONS 2 (
+PARTITION p0 VALUES LESS THAN (1990),
+PARTITION p1 VALUES LESS THAN (2000),
+PARTITION p2 VALUES LESS THAN MAXVALUE
+);
+ERROR HY000: The MySQL server is running with the --skip-partition option so it cannot execute this statement
+drop table t1;
+ERROR 42S02: Unknown table 't1'
+create table t1 (a varchar(10) charset latin1 collate latin1_bin);
+insert into t1 values (''),(' '),('a'),('a '),('a ');
+explain partitions select * from t1 where a='a ' OR a='a';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 NULL ALL NULL NULL NULL NULL 5 Using where
+drop table t1;
diff --git a/mysql-test/r/partition_error.result b/mysql-test/r/partition_error.result
new file mode 100644
index 00000000000..511806d64bd
--- /dev/null
+++ b/mysql-test/r/partition_error.result
@@ -0,0 +1,653 @@
+drop table if exists t1;
+CREATE TABLE t1 (a INTEGER NOT NULL, PRIMARY KEY (a));
+INSERT INTO t1 VALUES (1),(1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+DROP TABLE t1;
+CREATE TABLE t1 (a INTEGER NOT NULL, PRIMARY KEY (a))
+PARTITION BY KEY (a) PARTITIONS 2;
+INSERT INTO t1 VALUES (1),(1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+DROP TABLE t1;
+CREATE TABLE t1 (a INT)
+PARTITION BY HASH (a)
+( PARTITION p0 ENGINE=MyISAM,
+PARTITION p1);
+ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL
+CREATE TABLE t1 (a INT)
+PARTITION BY LIST (a)
+SUBPARTITION BY HASH (a)
+( PARTITION p0 VALUES IN (0)
+( SUBPARTITION s0, SUBPARTITION s1 ENGINE=MyISAM, SUBPARTITION s2),
+PARTITION p1 VALUES IN (1)
+( SUBPARTITION s3 ENGINE=MyISAM, SUBPARTITION s4, SUBPARTITION s5 ENGINE=MyISAM));
+ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL
+CREATE TABLE t1 (
+a int
+)
+PARTITION BY RANGE (a)
+(
+PARTITION p0 VALUES LESS THAN (1),
+PARTITION p1 VALU ES LESS THAN (2)
+);
+ERROR HY000: Syntax error: RANGE PARTITIONING requires definition of VALUES LESS THAN for each partition
+partition by list (a)
+partitions 3
+(partition x1 values in (1,2,9,4) tablespace ts1,
+partition x2 values in (3, 11, 5, 7) tablespace ts2,
+partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
+ERROR 42000: Partitioning can not be used stand-alone in query near 'partition by list (a)
+partitions 3
+(partition x1 values in (1,2,9,4) tablespace ' at line 1
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2;
+ERROR HY000: For LIST partitions each partition must be defined
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (sin(a))
+partitions 3
+(partition x1 values in (1,2,9,4) tablespace ts1,
+partition x2 values in (3, 11, 5, 7) tablespace ts2,
+partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
+ERROR HY000: This partition function is not allowed
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a+2)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '+2)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+part' at line 6
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+partitions 3
+(partition tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3)' at line 8
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a,d)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+ERROR HY000: Field in list of fields for partition function not found in table
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (a + d)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+ERROR 42S22: Unknown column 'd' in 'partition function'
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (sin(a))
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+ERROR HY000: This partition function is not allowed
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+partitions 3
+(partition x1, partition x2);
+ERROR 42000: Wrong number of partitions defined, mismatch with previous setting near ')' at line 8
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (rand(a))
+partitions 2
+(partition x1, partition x2);
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')
+partitions 2
+(partition x1, partition x2)' at line 6
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (rand(a))
+partitions 2
+(partition x1 values less than (0), partition x2 values less than (2));
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')
+partitions 2
+(partition x1 values less than (0), partition x2 values less than' at line 6
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (rand(a))
+partitions 2
+(partition x1 values in (1), partition x2 values in (2));
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')
+partitions 2
+(partition x1 values in (1), partition x2 values in (2))' at line 6
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (a)
+partitions 2
+(partition x1 values less than (4),
+partition x2 values less than (5));
+ERROR HY000: Only RANGE PARTITIONING can use VALUES LESS THAN in partition definition
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (a)
+partitions 2
+(partition x1 values in (4),
+partition x2 values in (5));
+ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (a)
+partitions 2
+(partition x1 values in (4,6),
+partition x2 values in (5,7));
+ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by key (b);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by key (a, b);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by hash (a+b);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by key (b);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by key (a, b);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by hash (a+b);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by hash (rand(a+b));
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')' at line 7
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by hash (sin(a+b))
+(partition x1 (subpartition x11, subpartition x12),
+partition x2 (subpartition x21, subpartition x22));
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by key (a+b)
+(partition x1 values less than (1) (subpartition x11, subpartition x12),
+partition x2 values less than (2) (subpartition x21, subpartition x22));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '+b)
+(partition x1 values less than (1) (subpartition x11, subpartition x12),
+par' at line 7
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by key (a,d)
+(partition x1 values less than (1) (subpartition x11, subpartition x12),
+partition x2 values less than (2) (subpartition x21, subpartition x22));
+ERROR HY000: Field in list of fields for partition function not found in table
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by hash (3+4);
+ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+d)
+(partition x1 values less than (1) (subpartition x11, subpartition x12),
+partition x2 values less than (2) (subpartition x21, subpartition x22));
+ERROR 42S22: Unknown column 'd' in 'partition function'
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a);
+ERROR HY000: For RANGE partitions each partition must be defined
+select load_file('$MYSQLD_DATADIR/test/t1.par');
+load_file('$MYSQLD_DATADIR/test/t1.par')
+NULL
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a+d)
+partitions 2
+(partition x1 values less than (4) tablespace ts1,
+partition x2 values less than (8) tablespace ts2);
+ERROR 42S22: Unknown column 'd' in 'partition function'
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (4.0) tablespace ts1,
+partition x2 values less than (8) tablespace ts2);
+ERROR 42000: VALUES value must be of same type as partition function near ') tablespace ts1,
+partition x2 values less than (8) tablespace ts2)' at line 8
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (3+4)
+partitions 2
+(partition x1 values less than (4) tablespace ts1,
+partition x2 values less than (8) tablespace ts2);
+ERROR HY000: Constant/Random expression in (sub)partitioning function is not allowed
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (4),
+partition x2);
+ERROR HY000: Syntax error: RANGE PARTITIONING requires definition of VALUES LESS THAN for each partition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values in (4),
+partition x2);
+ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values in (4),
+partition x2 values less than (5));
+ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values less than 4,
+partition x2 values less than (5));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4,
+partition x2 values less than (5))' at line 8
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values less than maxvalue,
+partition x2 values less than (5));
+ERROR 42000: MAXVALUE can only be used in last partition definition near '))' at line 9
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values less than maxvalue,
+partition x2 values less than maxvalue);
+ERROR 42000: MAXVALUE can only be used in last partition definition near 'maxvalue)' at line 9
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (4),
+partition x2 values less than (3));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (sin(a))
+partitions 2
+(partition x1 values less than (4),
+partition x2 values less than (5));
+ERROR HY000: This partition function is not allowed
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by list (a)
+subpartition by hash (a+b)
+subpartitions 3
+( partition x1 values in (1,2,4)
+( subpartition x11 nodegroup 0,
+subpartition x12 nodegroup 1),
+partition x2 values in (3,5,6)
+( subpartition x21 nodegroup 0,
+subpartition x22 nodegroup 1)
+);
+ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '),
+partition x2 values in (3,5,6)
+( subpartition x21 nodegroup 0,
+subpartition x' at line 11
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by list (a)
+subpartition by hash (a+b)
+( partition x1 values in (1)
+( subpartition x11 nodegroup 0,
+subpartition xextra,
+subpartition x12 nodegroup 1),
+partition x2 values in (2)
+( subpartition x21 nodegroup 0,
+subpartition x22 nodegroup 1)
+);
+ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near ')
+)' at line 14
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by list (a+b)
+( partition x1
+( subpartition x11 engine myisam,
+subpartition x12 engine myisam),
+partition x2
+( subpartition x21 engine myisam,
+subpartition x22 engine myisam)
+);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'list (a+b)
+( partition x1
+( subpartition x11 engine myisam,
+subpartition x12 eng' at line 7
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by key (a)
+subpartition by list (a+b)
+( partition x1
+( subpartition x11 engine myisam values in (0),
+subpartition x12 engine myisam values in (1)),
+partition x2
+( subpartition x21 engine myisam values in (0),
+subpartition x22 engine myisam values in (1))
+);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'list (a+b)
+( partition x1
+( subpartition x11 engine myisam values in (0),
+subpar' at line 7
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a);
+ERROR HY000: For LIST partitions each partition must be defined
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (3+4)
+partitions 2
+(partition x1 values in (4) tablespace ts1,
+partition x2 values in (8) tablespace ts2);
+ERROR HY000: Constant/Random expression in (sub)partitioning function is not allowed
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a+d)
+partitions 2
+(partition x1 values in (4) tablespace ts1,
+partition x2 values in (8) tablespace ts2);
+ERROR 42S22: Unknown column 'd' in 'partition function'
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values in (4),
+partition x2);
+ERROR HY000: Syntax error: LIST PARTITIONING requires definition of VALUES IN for each partition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values in (4),
+partition x2 values less than (5));
+ERROR HY000: Only RANGE PARTITIONING can use VALUES LESS THAN in partition definition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values in (4,6),
+partition x2);
+ERROR HY000: Syntax error: LIST PARTITIONING requires definition of VALUES IN for each partition
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values in (4, 12+9),
+partition x2 values in (3, 21));
+ERROR HY000: Multiple definition of same constant in list partitioning
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values in (4.0, 12+8),
+partition x2 values in (3, 21));
+ERROR 42000: VALUES value must be of same type as partition function near ' 12+8),
+partition x2 values in (3, 21))' at line 8
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+partitions 2
+(partition x1 values in 4,
+partition x2 values in (5));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4,
+partition x2 values in (5))' at line 8
+CREATE TABLE t1 (a int)
+PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (x1));
+ERROR 42S22: Unknown column 'x1' in 'partition function'
+CREATE TABLE t1(a int)
+PARTITION BY RANGE (a) (PARTITION p1 VALUES LESS THAN(5));
+insert into t1 values (10);
+ERROR HY000: Table has no partition for value 10
+drop table t1;
+create table t1 (a bigint unsigned)
+partition by range (a)
+(partition p0 values less than (-1));
+ERROR HY000: Partition constant is out of partition function domain
+create table t1 (v varchar(12))
+partition by range (ascii(v))
+(partition p0 values less than (10));
+ERROR HY000: This partition function is not allowed
+create table t1 (a int)
+partition by hash (rand(a));
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')' at line 2
+create table t1 (a int)
+partition by hash(CURTIME() + a);
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')' at line 2
+create table t1 (a int)
+partition by hash (NOW()+a);
+ERROR 42000: Constant/Random expression in (sub)partitioning function is not allowed near ')' at line 2
+create table t1 (a int)
+partition by hash (extract(hour from convert_tz(a, '+00:00', '+00:00')));
+ERROR HY000: This partition function is not allowed
+create table t1 (a int)
+partition by range (a + (select count(*) from t1))
+(partition p1 values less than (1));
+ERROR HY000: This partition function is not allowed
+create table t1 (a char(10))
+partition by hash (extractvalue(a,'a'));
+ERROR HY000: This partition function is not allowed
diff --git a/mysql-test/r/partition_federated.result b/mysql-test/r/partition_federated.result
new file mode 100644
index 00000000000..2d98e366c95
--- /dev/null
+++ b/mysql-test/r/partition_federated.result
@@ -0,0 +1,6 @@
+drop table if exists t1;
+create table t1 (s1 int) engine=federated
+connection='mysql://root@localhost/federated/t1' partition by list (s1)
+(partition p1 values in (1), partition p2 values in (2));
+ERROR HY000: Engine cannot be used in partitioned tables
+End of 5.1 tests
diff --git a/mysql-test/r/partition_grant.result b/mysql-test/r/partition_grant.result
new file mode 100644
index 00000000000..c334a473a2a
--- /dev/null
+++ b/mysql-test/r/partition_grant.result
@@ -0,0 +1,34 @@
+drop schema if exists mysqltest_1;
+create schema mysqltest_1;
+use mysqltest_1;
+create table t1 (a int) partition by list (a) (partition p1 values in (1), partition p2 values in (2), partition p3 values in (3));
+insert into t1 values (1),(2);
+grant usage on *.* to mysqltest_1@localhost;
+revoke all privileges on *.* from mysqltest_1@localhost;
+grant select,alter on mysqltest_1.* to mysqltest_1@localhost;
+show grants for current_user;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT, ALTER ON `mysqltest_1`.* TO 'mysqltest_1'@'localhost'
+alter table t1 add b int;
+alter table t1 drop partition p2;
+ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1'
+grant drop on mysqltest_1.* to mysqltest_1@localhost;
+alter table t1 drop partition p2;
+revoke alter on mysqltest_1.* from mysqltest_1@localhost;
+alter table t1 drop partition p3;
+ERROR 42000: ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
+revoke select,alter,drop on mysqltest_1.* from mysqltest_1@localhost;
+drop table t1;
+create table t1 (s1 int);
+insert into t1 values (1);
+grant alter on mysqltest_1.* to mysqltest_1@localhost;
+alter table t1 partition by list (s1) (partition p1 values in (2));
+ERROR HY000: Table has no partition for some existing values
+grant select, alter on mysqltest_1.* to mysqltest_1@localhost;
+alter table t1 partition by list (s1) (partition p1 values in (2));
+ERROR HY000: Table has no partition for value 1
+drop table t1;
+drop user mysqltest_1@localhost;
+drop schema mysqltest_1;
+End of 5.1 tests
diff --git a/mysql-test/r/partition_hash.result b/mysql-test/r/partition_hash.result
new file mode 100644
index 00000000000..19da70db5a0
--- /dev/null
+++ b/mysql-test/r/partition_hash.result
@@ -0,0 +1,200 @@
+drop table if exists t1;
+CREATE TABLE t1 (c1 INT)
+PARTITION BY HASH (c1)
+PARTITIONS 15;
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
+ALTER TABLE t1 COALESCE PARTITION 13;
+DROP TABLE t1;
+CREATE TABLE t1 (c1 INT)
+PARTITION BY LINEAR HASH (c1)
+PARTITIONS 5;
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
+ALTER TABLE t1 COALESCE PARTITION 3;
+DROP TABLE t1;
+create table t1 (a int unsigned)
+partition by hash(a div 2)
+partitions 4;
+insert into t1 values (null),(0),(1),(2),(3),(4),(5),(6),(7);
+select * from t1 where a < 0;
+a
+select * from t1 where a is null or (a >= 5 and a <= 7);
+a
+NULL
+5
+6
+7
+select * from t1 where a is null;
+a
+NULL
+select * from t1 where a is not null;
+a
+0
+1
+2
+3
+4
+5
+6
+7
+select * from t1 where a >= 1 and a < 3;
+a
+1
+2
+select * from t1 where a >= 3 and a <= 5;
+a
+3
+4
+5
+select * from t1 where a > 2 and a < 4;
+a
+3
+select * from t1 where a > 3 and a <= 6;
+a
+4
+5
+6
+select * from t1 where a > 5;
+a
+6
+7
+select * from t1 where a >= 1 and a <= 5;
+a
+1
+2
+3
+4
+5
+explain partitions select * from t1 where a < 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a is null or (a >= 5 and a <= 7);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p2,p3 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a is not null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a >= 1 and a < 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a >= 3 and a <= 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p2 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a > 2 and a < 4;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a > 3 and a <= 6;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2,p3 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a > 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
+explain partitions select * from t1 where a >= 1 and a <= 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (a + 2)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+insert into t1 values (1,1,1);
+insert into t1 values (2,1,1);
+insert into t1 values (3,1,1);
+insert into t1 values (4,1,1);
+insert into t1 values (5,1,1);
+select * from t1;
+a b c
+1 1 1
+4 1 1
+2 1 1
+5 1 1
+3 1 1
+update t1 set c=3 where b=1;
+select * from t1;
+a b c
+1 1 3
+4 1 3
+2 1 3
+5 1 3
+3 1 3
+select b from t1 where a=3;
+b
+1
+select b,c from t1 where a=1 AND b=1;
+b c
+1 3
+delete from t1 where a=1;
+delete from t1 where c=3;
+select * from t1;
+a b c
+ALTER TABLE t1
+partition by hash (a + 3)
+partitions 3
+(partition x1 tablespace ts1,
+partition x2 tablespace ts2,
+partition x3 tablespace ts3);
+select * from t1;
+a b c
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by hash (a)
+(partition x1);
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by key (a)
+(partition x1);
+drop table t1;
+CREATE TABLE t1 (f1 INTEGER, f2 char(20)) ENGINE = 'MYISAM' PARTITION BY HASH(f1) PARTITIONS 2;
+INSERT INTO t1 SET f1 = 0 - 1, f2 = '#######';
+select * from t1;
+f1 f2
+-1 #######
+drop table t1;
+CREATE TABLE t1 (s1 int) ENGINE=BLACKHOLE PARTITION BY HASH (s1);
+INSERT INTO t1 VALUES (0);
+DROP TABLE t1;
+create table t1 (c1 int DEFAULT NULL,
+c2 varchar (30) DEFAULT NULL,
+c3 date DEFAULT NULL)
+engine = myisam
+partition by hash (to_days(c3))
+partitions 12;
+insert into t1 values
+(136,'abc','2002-01-05'),(142,'abc','2002-02-14'),(162,'abc','2002-06-28'),
+(182,'abc','2002-11-09'),(158,'abc','2002-06-01'),(184,'abc','2002-11-22');
+select * from t1;
+c1 c2 c3
+136 abc 2002-01-05
+158 abc 2002-06-01
+142 abc 2002-02-14
+162 abc 2002-06-28
+182 abc 2002-11-09
+184 abc 2002-11-22
+select * from t1 where c3 between '2002-01-01' and '2002-12-31';
+c1 c2 c3
+136 abc 2002-01-05
+158 abc 2002-06-01
+142 abc 2002-02-14
+162 abc 2002-06-28
+182 abc 2002-11-09
+184 abc 2002-11-22
+drop table t1;
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM PARTITION BY HASH(c1) PARTITIONS 1;
+INSERT DELAYED INTO t1 VALUES (1);
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_innodb.result b/mysql-test/r/partition_innodb.result
new file mode 100644
index 00000000000..b8cfa25349d
--- /dev/null
+++ b/mysql-test/r/partition_innodb.result
@@ -0,0 +1,276 @@
+drop table if exists t1;
+create table t1 (a int not null,
+b datetime not null,
+primary key (a,b))
+engine=innodb
+partition by range (to_days(b))
+subpartition by hash (a)
+subpartitions 2
+( partition p0 values less than (to_days('2009-01-01')),
+partition p1 values less than (to_days('2009-02-01')),
+partition p2 values less than (to_days('2009-03-01')),
+partition p3 values less than maxvalue);
+alter table t1 reorganize partition p1,p2 into
+( partition p2 values less than (to_days('2009-03-01')));
+drop table t1;
+CREATE TABLE t1 (id INT PRIMARY KEY, data INT) ENGINE = InnoDB
+PARTITION BY RANGE(id) (
+PARTITION p0 VALUES LESS THAN (5),
+PARTITION p1 VALUES LESS THAN (10),
+PARTITION p2 VALUES LESS THAN MAXVALUE
+);
+INSERT INTO t1 VALUES (1,1), (2,2), (3,3), (4,4), (5,5), (6,6), (7,7), (8,8),
+(9,9), (10,10), (11,11);
+SET @old_tx_isolation := @@session.tx_isolation;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+SET autocommit = 0;
+UPDATE t1 SET DATA = data*2 WHERE id = 3;
+SHOW ENGINE InnoDB STATUS;
+Type Name Status
+InnoDB 2 lock struct(s) 1 row lock(s)
+UPDATE t1 SET data = data*2 WHERE data = 2;
+SHOW ENGINE InnoDB STATUS;
+Type Name Status
+InnoDB 6 lock struct(s) 2 row lock(s)
+SET @@session.tx_isolation = @old_tx_isolation;
+DROP TABLE t1;
+# Bug#37721, test of ORDER BY on PK and WHERE on INDEX
+CREATE TABLE t1 (
+a INT,
+b INT,
+PRIMARY KEY (a),
+INDEX (b))
+ENGINE InnoDB
+PARTITION BY HASH(a)
+PARTITIONS 3;
+INSERT INTO t1 VALUES (0,0),(4,0),(2,0);
+SELECT a FROM t1 WHERE b = 0 ORDER BY a ASC;
+a
+0
+2
+4
+SELECT a FROM t1 WHERE b = 0 ORDER BY a DESC;
+a
+4
+2
+0
+ALTER TABLE t1 DROP INDEX b;
+SELECT a FROM t1 WHERE b = 0 ORDER BY a ASC;
+a
+0
+2
+4
+SELECT a FROM t1 WHERE b = 0 ORDER BY a DESC;
+a
+4
+2
+0
+DROP TABLE t1;
+CREATE TABLE t1 (
+a VARCHAR(600),
+b VARCHAR(600),
+PRIMARY KEY (a),
+INDEX (b))
+ENGINE InnoDB
+PARTITION BY KEY(a)
+PARTITIONS 3;
+INSERT INTO t1 VALUES (concat(repeat('MySQL',100),'1'),repeat('0',257));
+INSERT INTO t1 VALUES (concat(repeat('MySQL',100),'3'),repeat('0',257));
+INSERT INTO t1 VALUES (concat(repeat('MySQL',100),'2'),repeat('0',257));
+SELECT right(a,1) FROM t1 WHERE b = repeat('0',257) ORDER BY a ASC;
+right(a,1)
+1
+2
+3
+SELECT right(a,1) FROM t1 WHERE b = repeat('0',257) ORDER BY a DESC;
+right(a,1)
+3
+2
+1
+ALTER TABLE t1 DROP INDEX b;
+SELECT right(a,1) FROM t1 WHERE b = repeat('0',257) ORDER BY a ASC;
+right(a,1)
+1
+2
+3
+SELECT right(a,1) FROM t1 WHERE b = repeat('0',257) ORDER BY a DESC;
+right(a,1)
+3
+2
+1
+DROP TABLE t1;
+# Bug#32948
+CREATE TABLE t1 (c1 INT, PRIMARY KEY (c1)) ENGINE=INNODB;
+CREATE TABLE t2 (c1 INT, PRIMARY KEY (c1),
+FOREIGN KEY (c1) REFERENCES t1 (c1)
+ON DELETE CASCADE)
+ENGINE=INNODB;
+ALTER TABLE t1 PARTITION BY HASH(c1) PARTITIONS 5;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
+ALTER TABLE t1 ENGINE=MyISAM;
+ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
+DROP TABLE t2;
+DROP TABLE t1;
+create table t1 (a int) engine=innodb partition by hash(a) ;
+show table status like 't1';
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 InnoDB 10 Compact 2 8192 16384 0 0 # NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+drop table t1;
+create table t1 (a int)
+engine = innodb
+partition by key (a);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 InnoDB 10 Compact 2 8192 16384 0 0 # NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+insert into t1 values (0), (1), (2), (3);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 InnoDB 10 Compact 4 4096 16384 0 0 # NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
+drop table t1;
+create table t1 (a int auto_increment primary key)
+engine = innodb
+partition by key (a);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 InnoDB 10 Compact 2 8192 16384 0 0 # 1 NULL NULL NULL latin1_swedish_ci NULL partitioned
+insert into t1 values (NULL), (NULL), (NULL), (NULL);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 InnoDB 10 Compact 4 4096 16384 0 0 # 5 NULL NULL NULL latin1_swedish_ci NULL partitioned
+insert into t1 values (NULL), (NULL), (NULL), (NULL);
+show table status;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+t1 InnoDB 10 Compact 8 2048 16384 0 0 # 9 NULL NULL NULL latin1_swedish_ci NULL partitioned
+drop table t1;
+create table t1 (a int)
+partition by key (a)
+(partition p1 engine = innodb);
+alter table t1 rebuild partition p1;
+alter table t1 rebuild partition p1;
+alter table t1 rebuild partition p1;
+alter table t1 rebuild partition p1;
+alter table t1 rebuild partition p1;
+alter table t1 rebuild partition p1;
+alter table t1 rebuild partition p1;
+drop table t1;
+create table t1 (a date)
+engine = innodb
+partition by range (year(a))
+(partition p0 values less than (2006),
+partition p1 values less than (2007));
+explain partitions select * from t1
+where a between '2006-01-01' and '2007-06-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1 ALL NULL NULL NULL NULL 2 Using where
+drop table t1;
+create table t1 (a int)
+engine = x
+partition by key (a);
+Warnings:
+Warning 1286 Unknown table engine 'x'
+Warning 1266 Using storage engine MyISAM for table 't1'
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a) */
+drop table t1;
+create table t1 (a int)
+engine = innodb
+partition by list (a)
+(partition p0 values in (0));
+alter table t1 engine = x;
+ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY LIST (a)
+(PARTITION p0 VALUES IN (0) ENGINE = InnoDB) */
+drop table t1;
+create table t1
+(
+id int unsigned auto_increment,
+time datetime not null,
+first_name varchar(40),
+last_name varchar(50),
+primary key (id, time),
+index first_index (first_name),
+index last_index (last_name)
+) engine=Innodb partition by range (to_days(time)) (
+partition p1 values less than (to_days('2007-02-07')),
+partition p2 values less than (to_days('2007-02-08')),
+partition p3 values less than MAXVALUE
+);
+insert into t1 (time, first_name, last_name) values ('2007-02-07', 'Q', 'Robert'),
+('2007-02-07', 'Mark', 'Nate'), ('2007-02-07', 'Nate', 'Oscar'),
+('2007-02-07', 'Zack', 'Alice'), ('2007-02-07', 'Jack', 'Kathy'),
+('2007-02-06', 'Alice', 'Alice'), ('2007-02-06', 'Brian', 'Charles'),
+('2007-02-06', 'Charles', 'David'), ('2007-02-06', 'David', 'Eric'),
+('2007-02-07', 'Hector', 'Isaac'), ('2007-02-07', 'Oscar', 'Patricia'),
+('2007-02-07', 'Patricia', 'Q'), ('2007-02-07', 'X', 'Yuri'),
+('2007-02-07', 'Robert', 'Shawn'), ('2007-02-07', 'Kathy', 'Lois'),
+('2007-02-07', 'Eric', 'Francis'), ('2007-02-06', 'Shawn', 'Theron'),
+('2007-02-06', 'U', 'Vincent'), ('2007-02-06', 'Francis', 'George'),
+('2007-02-06', 'George', 'Hector'), ('2007-02-06', 'Vincent', 'Walter'),
+('2007-02-06', 'Walter', 'X'), ('2007-02-07', 'Lois', 'Mark'),
+('2007-02-07', 'Yuri', 'Zack'), ('2007-02-07', 'Isaac', 'Jack'),
+('2007-02-07', 'Sharon', 'Mark'), ('2007-02-07', 'Michael', 'Michelle'),
+('2007-02-07', 'Derick', 'Nathan'), ('2007-02-07', 'Peter', 'Xavier'),
+('2007-02-07', 'Fred', 'Harold'), ('2007-02-07', 'Katherine', 'Lisa'),
+('2007-02-07', 'Tom', 'Rina'), ('2007-02-07', 'Jerry', 'Victor'),
+('2007-02-07', 'Alexander', 'Terry'), ('2007-02-07', 'Justin', 'John'),
+('2007-02-07', 'Greg', 'Ernest'), ('2007-02-07', 'Robert', 'Q'),
+('2007-02-07', 'Nate', 'Mark'), ('2007-02-07', 'Oscar', 'Nate'),
+('2007-02-07', 'Alice', 'Zack'), ('2007-02-07', 'Kathy', 'Jack'),
+('2007-02-06', 'Alice', 'Alice'), ('2007-02-06', 'Charles', 'Brian'),
+('2007-02-06', 'David', 'Charles'), ('2007-02-06', 'Eric', 'David'),
+('2007-02-07', 'Isaac', 'Hector'), ('2007-02-07', 'Patricia', 'Oscar'),
+('2007-02-07', 'Q', 'Patricia'), ('2007-02-07', 'Yuri', 'X'),
+('2007-02-07', 'Shawn', 'Robert'), ('2007-02-07', 'Lois', 'Kathy'),
+('2007-02-07', 'Francis', 'Eric'), ('2007-02-06', 'Theron', 'Shawn'),
+('2007-02-06', 'Vincent', 'U'), ('2007-02-06', 'George', 'Francis'),
+('2007-02-06', 'Hector', 'George'), ('2007-02-06', 'Walter', 'Vincent'),
+('2007-02-06', 'X', 'Walter'), ('2007-02-07', 'Mark', 'Lois'),
+('2007-02-07', 'Zack', 'Yuri'), ('2007-02-07', 'Jack', 'Isaac'),
+('2007-02-07', 'Mark', 'Sharon'), ('2007-02-07', 'Michelle', 'Michael'),
+('2007-02-07', 'Nathan', 'Derick'), ('2007-02-07', 'Xavier', 'Peter'),
+('2007-02-07', 'Harold', 'Fred'), ('2007-02-07', 'Lisa', 'Katherine'),
+('2007-02-07', 'Rina', 'Tom'), ('2007-02-07', 'Victor', 'Jerry'),
+('2007-02-07', 'Terry', 'Alexander'), ('2007-02-07', 'John', 'Justin'),
+('2007-02-07', 'Ernest', 'Greg');
+SELECT * FROM t1 WHERE first_name='Andy' OR last_name='Jake';
+id time first_name last_name
+drop table t1;
+CREATE TABLE t1 (a DOUBLE NOT NULL, KEY(a)) ENGINE=InnoDB
+PARTITION BY KEY(a) PARTITIONS 10;
+INSERT INTO t1 VALUES(1),(2);
+SELECT COUNT(*) FROM t1;
+COUNT(*)
+2
+DROP TABLE t1;
+create table t1 (int_column int, char_column char(5))
+PARTITION BY RANGE (int_column) subpartition by key (char_column) subpartitions 2
+(PARTITION p1 VALUES LESS THAN (5) ENGINE = InnoDB);
+alter table t1
+ENGINE = MyISAM
+PARTITION BY RANGE (int_column)
+subpartition by key (char_column) subpartitions 2
+(PARTITION p1 VALUES LESS THAN (5));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `int_column` int(11) DEFAULT NULL,
+ `char_column` char(5) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (int_column)
+SUBPARTITION BY KEY (char_column)
+SUBPARTITIONS 2
+(PARTITION p1 VALUES LESS THAN (5) ENGINE = MyISAM) */
+drop table t1;
+CREATE TABLE t1 (a INT) ENGINE=InnoDB
+PARTITION BY list(a) (PARTITION p1 VALUES IN (1));
+CREATE INDEX i1 ON t1 (a);
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_innodb_builtin.result b/mysql-test/r/partition_innodb_builtin.result
new file mode 100644
index 00000000000..384ce0790a4
--- /dev/null
+++ b/mysql-test/r/partition_innodb_builtin.result
@@ -0,0 +1,39 @@
+SET NAMES utf8;
+CREATE TABLE `t``\""e` (a INT, PRIMARY KEY (a))
+ENGINE=InnoDB
+PARTITION BY RANGE (a)
+SUBPARTITION BY HASH (a)
+(PARTITION `p0``\""e` VALUES LESS THAN (100)
+(SUBPARTITION `sp0``\""e`,
+SUBPARTITION `sp1``\""e`),
+PARTITION `p1``\""e` VALUES LESS THAN (MAXVALUE)
+(SUBPARTITION `sp2``\""e`,
+SUBPARTITION `sp3``\""e`));
+INSERT INTO `t``\""e` VALUES (0), (2), (6), (10), (14), (18), (22);
+START TRANSACTION;
+# con1
+SET NAMES utf8;
+START TRANSACTION;
+# default connection
+UPDATE `t``\""e` SET a = 16 WHERE a = 0;
+# con1
+UPDATE `t``\""e` SET a = 8 WHERE a = 22;
+UPDATE `t``\""e` SET a = 12 WHERE a = 0;
+# default connection
+UPDATE `t``\""e` SET a = 4 WHERE a = 22;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# First table reported in 'SHOW ENGINE InnoDB STATUS'
+SHOW ENGINE InnoDB STATUS;
+Type Name Status
+InnoDB index `PRIMARY` of table `test`.`t``\""e` /* Partition `p0``\""e`, Subpartition `sp0``\""e` */
+set @old_sql_mode = @@sql_mode;
+set sql_mode = 'ANSI_QUOTES';
+SHOW ENGINE InnoDB STATUS;
+Type Name Status
+InnoDB index `PRIMARY` of table `test`.`t``\""e` /* Partition `p0``\""e`, Subpartition `sp0``\""e` */
+set @@sql_mode = @old_sql_mode;
+# con1
+ROLLBACK;
+# default connection
+DROP TABLE `t``\""e`;
+SET NAMES DEFAULT;
diff --git a/mysql-test/r/partition_innodb_plugin.result b/mysql-test/r/partition_innodb_plugin.result
new file mode 100644
index 00000000000..dd91eee316a
--- /dev/null
+++ b/mysql-test/r/partition_innodb_plugin.result
@@ -0,0 +1,50 @@
+SET NAMES utf8;
+CREATE TABLE `t``\""e` (a INT, PRIMARY KEY (a))
+ENGINE=InnoDB
+PARTITION BY RANGE (a)
+SUBPARTITION BY HASH (a)
+(PARTITION `p0``\""e` VALUES LESS THAN (100)
+(SUBPARTITION `sp0``\""e`,
+SUBPARTITION `sp1``\""e`),
+PARTITION `p1``\""e` VALUES LESS THAN (MAXVALUE)
+(SUBPARTITION `sp2``\""e`,
+SUBPARTITION `sp3``\""e`));
+INSERT INTO `t``\""e` VALUES (0), (2), (6), (10), (14), (18), (22);
+START TRANSACTION;
+# con1
+SET NAMES utf8;
+START TRANSACTION;
+# default connection
+UPDATE `t``\""e` SET a = 16 WHERE a = 0;
+# con1
+UPDATE `t``\""e` SET a = 8 WHERE a = 22;
+UPDATE `t``\""e` SET a = 12 WHERE a = 0;
+# default connection
+SELECT lock_table, COUNT(*) FROM INFORMATION_SCHEMA.INNODB_LOCKS
+GROUP BY lock_table;
+lock_table COUNT(*)
+`test`.`t``\""e` /* Partition `p0``\""e`, Subpartition `sp0``\""e` */ 2
+set @old_sql_mode = @@sql_mode;
+set sql_mode = 'ANSI_QUOTES';
+SELECT lock_table, COUNT(*) FROM INFORMATION_SCHEMA.INNODB_LOCKS
+GROUP BY lock_table;
+lock_table COUNT(*)
+"test"."t`\""""e" /* Partition "p0`\""""e", Subpartition "sp0`\""""e" */ 2
+set @@sql_mode = @old_sql_mode;
+UPDATE `t``\""e` SET a = 4 WHERE a = 22;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# First table reported in 'SHOW ENGINE InnoDB STATUS'
+SHOW ENGINE InnoDB STATUS;
+Type Name Status
+InnoDB index `PRIMARY` of table `test`.`t``\""e` /* Partition `p0``\""e`, Subpartition `sp0``\""e` */
+set @old_sql_mode = @@sql_mode;
+set sql_mode = 'ANSI_QUOTES';
+SHOW ENGINE InnoDB STATUS;
+Type Name Status
+InnoDB index `PRIMARY` of table `test`.`t``\""e` /* Partition `p0``\""e`, Subpartition `sp0``\""e` */
+set @@sql_mode = @old_sql_mode;
+# con1
+ROLLBACK;
+# default connection
+DROP TABLE `t``\""e`;
+SET NAMES DEFAULT;
diff --git a/mysql-test/r/partition_innodb_semi_consistent.result b/mysql-test/r/partition_innodb_semi_consistent.result
new file mode 100644
index 00000000000..471da4c1c2e
--- /dev/null
+++ b/mysql-test/r/partition_innodb_semi_consistent.result
@@ -0,0 +1,129 @@
+drop table if exists t1;
+set binlog_format=mixed;
+set session transaction isolation level repeatable read;
+create table t1(a int not null)
+engine=innodb
+DEFAULT CHARSET=latin1
+PARTITION BY RANGE(a)
+(PARTITION p0 VALUES LESS THAN (20),
+PARTITION p1 VALUES LESS THAN MAXVALUE);
+insert into t1 values (1),(2),(3),(4),(5),(6),(7);
+set autocommit=0;
+select * from t1 where a=3 lock in share mode;
+a
+3
+set binlog_format=mixed;
+set session transaction isolation level repeatable read;
+set autocommit=0;
+update t1 set a=10 where a=5;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+set session transaction isolation level read committed;
+update t1 set a=10 where a=5;
+select * from t1 where a=2 for update;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+select * from t1 where a=2 limit 1 for update;
+a
+2
+update t1 set a=11 where a=6;
+update t1 set a=12 where a=2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+update t1 set a=13 where a=1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+update t1 set a=14 where a=1;
+commit;
+select * from t1;
+a
+10
+11
+14
+2
+3
+4
+7
+drop table t1;
+SET SESSION AUTOCOMMIT = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
+set binlog_format=mixed;
+# Switch to connection con1
+CREATE TABLE t1 (a INT PRIMARY KEY, b VARCHAR(256))
+ENGINE = InnoDB
+PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (300),
+PARTITION p1 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (1,2);
+# 1. test for locking:
+BEGIN;
+UPDATE t1 SET b = 12 WHERE a = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+SELECT * FROM t1;
+a b
+1 12
+# Switch to connection con2
+UPDATE t1 SET b = 21 WHERE a = 1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Switch to connection con1
+SELECT * FROM t1;
+a b
+1 12
+ROLLBACK;
+# 2. test for serialized update:
+CREATE TABLE t2 (a INT);
+TRUNCATE t1;
+INSERT INTO t1 VALUES (1,'init');
+CREATE PROCEDURE p1()
+BEGIN
+UPDATE t1 SET b = CONCAT(b, '+con2') WHERE a = 1;
+INSERT INTO t2 VALUES ();
+END|
+BEGIN;
+UPDATE t1 SET b = CONCAT(b, '+con1') WHERE a = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+SELECT * FROM t1;
+a b
+1 init+con1
+# Switch to connection con2
+CALL p1;;
+# Switch to connection con1
+SELECT * FROM t1;
+a b
+1 init+con1
+COMMIT;
+SELECT * FROM t1;
+a b
+1 init+con1
+# Switch to connection con2
+SELECT * FROM t1;
+a b
+1 init+con1+con2
+# Switch to connection con1
+# 3. test for updated key column:
+TRUNCATE t1;
+TRUNCATE t2;
+INSERT INTO t1 VALUES (1,'init');
+BEGIN;
+UPDATE t1 SET a = 2, b = CONCAT(b, '+con1') WHERE a = 1;
+affected rows: 1
+info: Rows matched: 1 Changed: 1 Warnings: 0
+SELECT * FROM t1;
+a b
+2 init+con1
+# Switch to connection con2
+CALL p1;;
+# Switch to connection con1
+SELECT * FROM t1;
+a b
+2 init+con1
+COMMIT;
+SELECT * FROM t1;
+a b
+2 init+con1
+# Switch to connection con2
+SELECT * FROM t1;
+a b
+2 init+con1
+DROP PROCEDURE p1;
+DROP TABLE t1, t2;
diff --git a/mysql-test/r/partition_innodb_stmt.result b/mysql-test/r/partition_innodb_stmt.result
new file mode 100644
index 00000000000..2735b0d2193
--- /dev/null
+++ b/mysql-test/r/partition_innodb_stmt.result
@@ -0,0 +1,48 @@
+# connection default
+SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
+CREATE TABLE t1
+(
+id SMALLINT NOT NULL,
+PRIMARY KEY (id)
+) ENGINE=innodb
+PARTITION BY RANGE (id)
+(
+PARTITION p1 VALUES LESS THAN (2),
+PARTITION p2 VALUES LESS THAN (4),
+PARTITION p3 VALUES LESS THAN (10)
+);
+INSERT INTO t1 VALUES (1),(2),(3);
+# Test READ COMMITTED -> REPEATABLE READ
+FLUSH TABLES;
+SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
+BEGIN;
+SELECT * FROM t1;
+id
+1
+2
+3
+#connection con1
+SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
+BEGIN;
+INSERT INTO t1 VALUES(7);
+COMMIT;
+# connection default
+COMMIT;
+FLUSH TABLES;
+# Test REPEATABLE READ -> READ COMMITTED
+SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
+BEGIN;
+SELECT * FROM t1;
+id
+1
+2
+3
+7
+# connection con1
+SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
+BEGIN;
+INSERT INTO t1 VALUES(9);
+ERROR HY000: Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT'
+COMMIT;
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_list.result b/mysql-test/r/partition_list.result
new file mode 100644
index 00000000000..a68a67c6386
--- /dev/null
+++ b/mysql-test/r/partition_list.result
@@ -0,0 +1,301 @@
+drop table if exists t1;
+create table t1 (a int unsigned)
+partition by list (a)
+(partition p0 values in (0),
+partition p1 values in (1),
+partition pnull values in (null),
+partition p2 values in (2));
+insert into t1 values (null),(0),(1),(2);
+select * from t1 where a < 2;
+a
+0
+1
+select * from t1 where a <= 0;
+a
+0
+select * from t1 where a < 1;
+a
+0
+select * from t1 where a > 0;
+a
+1
+2
+select * from t1 where a > 1;
+a
+2
+select * from t1 where a >= 0;
+a
+0
+1
+2
+select * from t1 where a >= 1;
+a
+1
+2
+select * from t1 where a is null;
+a
+NULL
+select * from t1 where a is not null;
+a
+0
+1
+2
+select * from t1 where a is null or a > 0;
+a
+1
+NULL
+2
+drop table t1;
+create table t1 (a int unsigned, b int)
+partition by list (a)
+subpartition by hash (b)
+subpartitions 2
+(partition p0 values in (0),
+partition p1 values in (1),
+partition pnull values in (null, 2),
+partition p3 values in (3));
+insert into t1 values (0,0),(0,1),(1,0),(1,1),(null,0),(null,1);
+insert into t1 values (2,0),(2,1),(3,0),(3,1);
+explain partitions select * from t1 where a is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 4 Using where
+select * from t1 where a is null;
+a b
+NULL 0
+NULL 1
+explain partitions select * from t1 where a = 2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 4 Using where
+select * from t1 where a = 2;
+a b
+2 0
+2 1
+select * from t1 where a <= 0;
+a b
+0 0
+0 1
+select * from t1 where a < 3;
+a b
+0 0
+0 1
+1 0
+1 1
+2 0
+2 1
+select * from t1 where a >= 1 or a is null;
+a b
+1 0
+1 1
+NULL 0
+2 0
+NULL 1
+2 1
+3 0
+3 1
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null)
+partition by list(a)
+partitions 2
+(partition x123 values in (1,5,6),
+partition x234 values in (4,7,8));
+INSERT into t1 VALUES (1,1,1);
+INSERT into t1 VALUES (2,1,1);
+ERROR HY000: Table has no partition for value 2
+INSERT into t1 VALUES (3,1,1);
+ERROR HY000: Table has no partition for value 3
+INSERT into t1 VALUES (4,1,1);
+INSERT into t1 VALUES (5,1,1);
+INSERT into t1 VALUES (6,1,1);
+INSERT into t1 VALUES (7,1,1);
+INSERT into t1 VALUES (8,1,1);
+INSERT into t1 VALUES (9,1,1);
+ERROR HY000: Table has no partition for value 9
+INSERT into t1 VALUES (1,2,1);
+INSERT into t1 VALUES (1,3,1);
+INSERT into t1 VALUES (1,4,1);
+INSERT into t1 VALUES (7,2,1);
+INSERT into t1 VALUES (7,3,1);
+INSERT into t1 VALUES (7,4,1);
+SELECT * from t1;
+a b c
+1 1 1
+5 1 1
+6 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+8 1 1
+7 2 1
+7 3 1
+7 4 1
+SELECT * from t1 WHERE a=1;
+a b c
+1 1 1
+1 2 1
+1 3 1
+1 4 1
+SELECT * from t1 WHERE a=7;
+a b c
+7 1 1
+7 2 1
+7 3 1
+7 4 1
+SELECT * from t1 WHERE b=2;
+a b c
+1 2 1
+7 2 1
+UPDATE t1 SET a=8 WHERE a=7 AND b=3;
+SELECT * from t1;
+a b c
+1 1 1
+5 1 1
+6 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+8 1 1
+7 2 1
+8 3 1
+7 4 1
+UPDATE t1 SET a=8 WHERE a=5 AND b=1;
+SELECT * from t1;
+a b c
+1 1 1
+6 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+8 1 1
+7 2 1
+8 3 1
+7 4 1
+8 1 1
+DELETE from t1 WHERE a=8;
+SELECT * from t1;
+a b c
+1 1 1
+6 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+7 2 1
+7 4 1
+DELETE from t1 WHERE a=2;
+SELECT * from t1;
+a b c
+1 1 1
+6 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+7 2 1
+7 4 1
+DELETE from t1 WHERE a=5 OR a=6;
+SELECT * from t1;
+a b c
+1 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+7 2 1
+7 4 1
+ALTER TABLE t1
+partition by list(a)
+partitions 2
+(partition x123 values in (1,5,6),
+partition x234 values in (4,7,8));
+SELECT * from t1;
+a b c
+1 1 1
+1 2 1
+1 3 1
+1 4 1
+4 1 1
+7 1 1
+7 2 1
+7 4 1
+INSERT into t1 VALUES (6,2,1);
+INSERT into t1 VALUES (2,2,1);
+ERROR HY000: Table has no partition for value 2
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by list (a)
+subpartition by hash (a+b)
+( partition x1 values in (1,2,3)
+( subpartition x11 nodegroup 0,
+subpartition x12 nodegroup 1),
+partition x2 values in (4,5,6)
+( subpartition x21 nodegroup 0,
+subpartition x22 nodegroup 1)
+);
+INSERT into t1 VALUES (1,1,1);
+INSERT into t1 VALUES (4,1,1);
+INSERT into t1 VALUES (7,1,1);
+ERROR HY000: Table has no partition for value 7
+UPDATE t1 SET a=5 WHERE a=1;
+SELECT * from t1;
+a b c
+5 1 1
+4 1 1
+UPDATE t1 SET a=6 WHERE a=4;
+SELECT * from t1;
+a b c
+5 1 1
+6 1 1
+DELETE from t1 WHERE a=6;
+SELECT * from t1;
+a b c
+5 1 1
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by list (a)
+(partition x1 values in (1,2,9,4) tablespace ts1);
+drop table t1;
+CREATE TABLE t1 (s1 int) PARTITION BY LIST (s1)
+(PARTITION p1 VALUES IN (1),
+PARTITION p2 VALUES IN (2),
+PARTITION p3 VALUES IN (3),
+PARTITION p4 VALUES IN (4),
+PARTITION p5 VALUES IN (5));
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
+SELECT COUNT(*) FROM t1 WHERE s1 < 3;
+COUNT(*)
+2
+DROP TABLE t1;
+create table t1 (a int auto_increment primary key)
+auto_increment=100
+partition by list (a)
+(partition p0 values in (1, 100));
+create index inx on t1 (a);
+insert into t1 values (null);
+select * from t1;
+a
+100
+drop table t1;
+create table t1 (a char(1))
+partition by list (ascii(ucase(a)))
+(partition p1 values in (2));
+ERROR HY000: This partition function is not allowed
diff --git a/mysql-test/r/partition_mgm.result b/mysql-test/r/partition_mgm.result
new file mode 100644
index 00000000000..2ff6e3f1923
--- /dev/null
+++ b/mysql-test/r/partition_mgm.result
@@ -0,0 +1,95 @@
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a INT PRIMARY KEY)
+ENGINE MYISAM
+PARTITION BY HASH (a)
+PARTITIONS 1;
+INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
+ALTER TABLE t1 REORGANIZE PARTITION;
+DROP TABLE t1;
+create table t1 (a int)
+partition by range (a)
+subpartition by key (a)
+(partition p0 values less than (10) (subpartition sp00, subpartition sp01),
+partition p1 values less than (20) (subpartition sp10, subpartition sp11));
+alter table t1 reorganize partition p0 into
+(partition p0 values less than (10) (subpartition sp00,
+subpartition sp01, subpartition sp02));
+ERROR HY000: Wrong number of subpartitions defined, mismatch with previous setting
+drop table t1;
+CREATE TABLE t1 (f_date DATE, f_varchar VARCHAR(30))
+PARTITION BY HASH(YEAR(f_date)) PARTITIONS 2;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `f_date` date DEFAULT NULL,
+ `f_varchar` varchar(30) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (YEAR(f_date))
+PARTITIONS 2 */
+ALTER TABLE t1 COALESCE PARTITION 1;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `f_date` date DEFAULT NULL,
+ `f_varchar` varchar(30) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (YEAR(f_date))
+PARTITIONS 1 */
+drop table t1;
+create table t1 (a int)
+partition by list (a)
+subpartition by hash (a)
+(partition p11 values in (1,2),
+partition p12 values in (3,4));
+alter table t1 REORGANIZE partition p11, p12 INTO
+(partition p1 values in (1,2,3,4));
+alter table t1 REORGANIZE partition p1 INTO
+(partition p11 values in (1,2),
+partition p12 values in (3,4));
+drop table t1;
+CREATE TABLE t1 (a INT)
+/*!50100 PARTITION BY HASH (a)
+/* Test
+of multi-line
+comment */
+PARTITIONS 5 */;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a)
+PARTITIONS 5 */
+DROP TABLE t1;
+CREATE TABLE t1 (a INT)
+/*!50100 PARTITION BY HASH (a)
+-- with a single line comment embedded
+PARTITIONS 5 */;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a)
+PARTITIONS 5 */
+DROP TABLE t1;
+CREATE TABLE t1 (a INT)
+/*!50100 PARTITION BY HASH (a)
+PARTITIONS 5 */;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a)
+PARTITIONS 5 */
+DROP TABLE t1;
+CREATE TABLE t1 (a INT) /*!50100 PARTITION BY HASH (a) PARTITIONS 5 */;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY HASH (a)
+PARTITIONS 5 */
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_mgm_err.result b/mysql-test/r/partition_mgm_err.result
new file mode 100644
index 00000000000..f8403988f47
--- /dev/null
+++ b/mysql-test/r/partition_mgm_err.result
@@ -0,0 +1,160 @@
+drop table if exists t1;
+CREATE TABLE t1 (a int, b int)
+PARTITION BY RANGE (a)
+(PARTITION x0 VALUES LESS THAN (2),
+PARTITION x1 VALUES LESS THAN (4),
+PARTITION x2 VALUES LESS THAN (6),
+PARTITION x3 VALUES LESS THAN (8),
+PARTITION x4 VALUES LESS THAN (10),
+PARTITION x5 VALUES LESS THAN (12),
+PARTITION x6 VALUES LESS THAN (14),
+PARTITION x7 VALUES LESS THAN (16),
+PARTITION x8 VALUES LESS THAN (18),
+PARTITION x9 VALUES LESS THAN (20));
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1 INTO
+(PARTITION x01 VALUES LESS THAN (2),
+PARTITION x11 VALUES LESS THAN (5));
+ERROR HY000: Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range
+ALTER TABLE t1 DROP PARTITION x0, x1, x2, x3, x3;
+ERROR HY000: Error in list of partitions to DROP
+ALTER TABLE t1 DROP PARTITION x0, x1, x2, x10;
+ERROR HY000: Error in list of partitions to DROP
+ALTER TABLE t1 DROP PARTITION x10, x1, x2, x1;
+ERROR HY000: Error in list of partitions to DROP
+ALTER TABLE t1 DROP PARTITION x10, x1, x2, x3;
+ERROR HY000: Error in list of partitions to DROP
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10 INTO
+(PARTITION x11 VALUES LESS THAN (22));
+ERROR HY000: More partitions to reorganize than there are partitions
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1,x2 INTO
+(PARTITION x3 VALUES LESS THAN (6));
+ERROR HY000: Duplicate partition name x3
+ALTER TABLE t1 REORGANIZE PARTITION x0, x2 INTO
+(PARTITION x11 VALUES LESS THAN (2));
+ERROR HY000: When reorganizing a set of partitions they must be in consecutive order
+ALTER TABLE t1 REORGANIZE PARTITION x0, x1, x1 INTO
+(PARTITION x11 VALUES LESS THAN (4));
+ERROR HY000: Error in list of partitions to REORGANIZE
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1 INTO
+(PARTITION x01 VALUES LESS THAN (5));
+ERROR HY000: Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1 INTO
+(PARTITION x01 VALUES LESS THAN (4),
+PARTITION x11 VALUES LESS THAN (2));
+ERROR HY000: Reorganize of range partitions cannot change total ranges except for last partition where it can extend the range
+ALTER TABLE t1 REORGANIZE PARTITION x0,x1 INTO
+(PARTITION x01 VALUES LESS THAN (6),
+PARTITION x11 VALUES LESS THAN (4));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY KEY (a)
+PARTITIONS 2;
+ALTER TABLE t1 ADD PARTITION (PARTITION p1);
+ERROR HY000: Duplicate partition name p1
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY KEY (a)
+(PARTITION x0, PARTITION x1, PARTITION x2, PARTITION x3, PARTITION x3);
+ERROR HY000: Duplicate partition name x3
+CREATE TABLE t1 (a int)
+PARTITION BY RANGE (a)
+SUBPARTITION BY KEY (a)
+SUBPARTITIONS 2
+(PARTITION x0 VALUES LESS THAN (4),
+PARTITION x1 VALUES LESS THAN (8));
+ALTER TABLE t1 ADD PARTITION (PARTITION x2 VALUES LESS THAN (5)
+(SUBPARTITION sp0, SUBPARTITION sp1));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
+ALTER TABLE t1 ADD PARTITION (PARTITION x2 VALUES LESS THAN (12)
+(SUBPARTITION sp0, SUBPARTITION sp1, SUBPARTITION sp2));
+ERROR HY000: Trying to Add partition(s) with wrong number of subpartitions
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY LIST (a)
+(PARTITION x0 VALUES IN (1,2,3),
+PARTITION x1 VALUES IN (4,5,6));
+ALTER TABLE t1 ADD PARTITION (PARTITION x2 VALUES IN (3,4));
+ERROR HY000: Multiple definition of same constant in list partitioning
+DROP TABLE t1;
+CREATE TABLE t1 (a int);
+ALTER TABLE t1 ADD PARTITION PARTITIONS 1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+ALTER TABLE t1 DROP PARTITION x1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+ALTER TABLE t1 COALESCE PARTITION 1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+ALTER TABLE t1 ANALYZE PARTITION p1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+ALTER TABLE t1 CHECK PARTITION p1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+ALTER TABLE t1 OPTIMIZE PARTITION p1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+ALTER TABLE t1 REPAIR PARTITION p1;
+ERROR HY000: Partition management on a not partitioned table is not possible
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY KEY (a)
+(PARTITION x0, PARTITION x1);
+ALTER TABLE t1 ADD PARTITION PARTITIONS 0;
+ERROR HY000: At least one partition must be added
+ALTER TABLE t1 ADD PARTITION PARTITIONS 1024;
+ERROR HY000: Too many partitions (including subpartitions) were defined
+ALTER TABLE t1 DROP PARTITION x0;
+ERROR HY000: DROP PARTITION can only be used on RANGE/LIST partitions
+ALTER TABLE t1 COALESCE PARTITION 1;
+ALTER TABLE t1 COALESCE PARTITION 1;
+ERROR HY000: Cannot remove all partitions, use DROP TABLE instead
+DROP TABLE t1;
+CREATE TABLE t1 (a int)
+PARTITION BY RANGE (a)
+(PARTITION x0 VALUES LESS THAN (4),
+PARTITION x1 VALUES LESS THAN (8));
+ALTER TABLE t1 ADD PARTITION PARTITIONS 1;
+ERROR HY000: For RANGE partitions each partition must be defined
+ALTER TABLE t1 DROP PARTITION x2;
+ERROR HY000: Error in list of partitions to DROP
+ALTER TABLE t1 COALESCE PARTITION 1;
+ERROR HY000: COALESCE PARTITION can only be used on HASH/KEY partitions
+ALTER TABLE t1 DROP PARTITION x1;
+ALTER TABLE t1 DROP PARTITION x0;
+ERROR HY000: Cannot remove all partitions, use DROP TABLE instead
+DROP TABLE t1;
+CREATE TABLE t1 ( id INT NOT NULL,
+fname VARCHAR(50) NOT NULL,
+lname VARCHAR(50) NOT NULL,
+hired DATE NOT NULL )
+PARTITION BY RANGE(YEAR(hired)) (
+PARTITION p1 VALUES LESS THAN (1991),
+PARTITION p2 VALUES LESS THAN (1996),
+PARTITION p3 VALUES LESS THAN (2001),
+PARTITION p4 VALUES LESS THAN (2005));
+ALTER TABLE t1 ADD PARTITION (
+PARTITION p5 VALUES LESS THAN (2010),
+PARTITION p6 VALUES LESS THAN MAXVALUE);
+DROP TABLE t1;
+CREATE TABLE t1 (a INT);
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+ALTER TABLE t1 PARTITION BY KEY(a) PARTITIONS 2;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY KEY (a)
+PARTITIONS 2 */
+DROP TABLE t1;
+CREATE TABLE t1 (a INT) PARTITION BY HASH(a);
+ALTER TABLE t1 ADD PARTITION PARTITIONS 4;
+DROP TABLE t1;
+CREATE TABLE t1 (s1 int, s2 int)
+PARTITION BY LIST (s1)
+SUBPARTITION BY KEY (s2) (
+PARTITION p1 VALUES IN (0) (SUBPARTITION p1b),
+PARTITION p2 VALUES IN (2) (SUBPARTITION p1b)
+);
+ERROR HY000: Duplicate partition name p1b
diff --git a/mysql-test/r/partition_mgm_err2.result b/mysql-test/r/partition_mgm_err2.result
new file mode 100644
index 00000000000..7e5763b8f1b
--- /dev/null
+++ b/mysql-test/r/partition_mgm_err2.result
@@ -0,0 +1,2 @@
+INSERT INTO t1 VALUES (15);
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_not_embedded.result b/mysql-test/r/partition_not_embedded.result
new file mode 100644
index 00000000000..c942189a956
--- /dev/null
+++ b/mysql-test/r/partition_not_embedded.result
@@ -0,0 +1,81 @@
+DROP TABLE IF EXISTS t1, t2;
+# Bug#30102 test
+CREATE TABLE t1 (a INT)
+PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (6),
+PARTITION `p1....................` VALUES LESS THAN (9),
+PARTITION p2 VALUES LESS THAN MAXVALUE);
+# List of files in database `test`, all original t1-files here
+t1#P#p0.MYD
+t1#P#p0.MYI
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t1#P#p2.MYD
+t1#P#p2.MYI
+t1.frm
+t1.par
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
+# Renaming to a file name where the first partition is 250 chars
+# and the second partition is 350 chars
+RENAME TABLE t1 TO `t2_new..............................................end`;
+Got one of the listed errors
+# List of files in database `test`, should not be any t2-files here
+# List of files in database `test`, should be all t1-files here
+t1#P#p0.MYD
+t1#P#p0.MYI
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t1#P#p2.MYD
+t1#P#p2.MYI
+t1.frm
+t1.par
+SELECT * FROM t1;
+a
+1
+10
+2
+3
+4
+5
+6
+7
+8
+9
+# List of files in database `test`, should be all t1-files here
+t1#P#p0.MYD
+t1#P#p0.MYI
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t1#P#p2.MYD
+t1#P#p2.MYI
+t1.frm
+t1.par
+# Renaming to a file name where the first partition is 156 chars
+# and the second partition is 256 chars
+RENAME TABLE t1 TO `t2_............................_end`;
+Got one of the listed errors
+# List of files in database `test`, should not be any t2-files here
+# List of files in database `test`, should be all t1-files here
+t1#P#p0.MYD
+t1#P#p0.MYI
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t1#P#p2.MYD
+t1#P#p2.MYI
+t1.frm
+t1.par
+SELECT * FROM t1;
+a
+1
+10
+2
+3
+4
+5
+6
+7
+8
+9
+DROP TABLE t1;
+# Should not be any files left here
+# End of bug#30102 test.
diff --git a/mysql-test/r/partition_not_windows.result b/mysql-test/r/partition_not_windows.result
new file mode 100644
index 00000000000..42dca557b3e
--- /dev/null
+++ b/mysql-test/r/partition_not_windows.result
@@ -0,0 +1,97 @@
+create table t1 (a int) engine myisam
+partition by range (a)
+subpartition by hash (a)
+(partition p0 VALUES LESS THAN (1) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp'
+(SUBPARTITION subpart00, SUBPARTITION subpart01));
+# Checking if file exists before alter
+ALTER TABLE t1 REORGANIZE PARTITION p0 INTO
+(partition p1 VALUES LESS THAN (1) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp'
+(SUBPARTITION subpart10, SUBPARTITION subpart11),
+partition p2 VALUES LESS THAN (2) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp'
+(SUBPARTITION subpart20, SUBPARTITION subpart21));
+# Checking if file exists after alter
+drop table t1;
+set @org_mode=@@sql_mode;
+set @@sql_mode='NO_DIR_IN_CREATE';
+select @@sql_mode;
+@@sql_mode
+NO_DIR_IN_CREATE
+create table t1 (i int )
+partition by range (i)
+(
+partition p01 values less than (1000)
+data directory='/not/existing'
+ index directory='/not/existing'
+);
+Warnings:
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `i` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (i)
+(PARTITION p01 VALUES LESS THAN (1000) ENGINE = MyISAM) */
+DROP TABLE t1, t2;
+set @@sql_mode=@org_mode;
+CREATE TABLE t1(a INT)
+PARTITION BY KEY (a)
+(PARTITION p0 DATA DIRECTORY 'MYSQLD_DATADIR/test');
+ERROR HY000: Incorrect arguments to DATA DIRECTORY
+CREATE TABLE t1(a INT)
+PARTITION BY KEY (a)
+(PARTITION p0 INDEX DIRECTORY 'MYSQLD_DATADIR/test');
+ERROR HY000: Incorrect arguments to INDEX DIRECTORY
+CREATE TABLE ts (id INT, purchased DATE)
+PARTITION BY RANGE(YEAR(purchased))
+SUBPARTITION BY HASH(TO_DAYS(purchased)) (
+PARTITION p0 VALUES LESS THAN (1990) (
+SUBPARTITION s0a
+DATA DIRECTORY = 'MYSQLD_DATADIR/test',
+SUBPARTITION s0b
+DATA DIRECTORY = 'MYSQLD_DATADIR/test'
+));
+ERROR HY000: Incorrect arguments to DATA DIRECTORY
+CREATE TABLE ts (id INT, purchased DATE)
+PARTITION BY RANGE(YEAR(purchased))
+SUBPARTITION BY HASH(TO_DAYS(purchased)) (
+PARTITION p0 VALUES LESS THAN (1990) (
+SUBPARTITION s0a
+INDEX DIRECTORY = 'MYSQLD_DATADIR/test',
+SUBPARTITION s0b
+INDEX DIRECTORY = 'MYSQLD_DATADIR/test'
+));
+ERROR HY000: Incorrect arguments to INDEX DIRECTORY
+DROP TABLE IF EXISTS `example`;
+CREATE TABLE `example` (
+`ID_EXAMPLE` int(10) unsigned NOT NULL AUTO_INCREMENT,
+`DESCRIPTION` varchar(30) NOT NULL,
+`LEVEL` smallint(5) unsigned DEFAULT NULL,
+PRIMARY KEY (`ID_EXAMPLE`)
+) ENGINE = MYISAM
+PARTITION BY HASH(ID_EXAMPLE)(
+PARTITION p0 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p0Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p0Index',
+PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p1Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p1Index',
+PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p2Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p2Index',
+PARTITION p3 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p3Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p3Index'
+);
+# Checking that MyISAM .MYD and .MYI are in test db and data/idx dir
+DROP TABLE example;
+CREATE TABLE `example` (
+`ID_EXAMPLE` int(10) unsigned NOT NULL AUTO_INCREMENT,
+`DESCRIPTION` varchar(30) NOT NULL,
+`LEVEL` smallint(5) unsigned DEFAULT NULL,
+PRIMARY KEY (`ID_EXAMPLE`)
+) ENGINE = MYISAM
+PARTITION BY HASH(ID_EXAMPLE)(
+PARTITION p0 DATA DIRECTORY = '/not/existent/p0Data',
+PARTITION p1 DATA DIRECTORY = '/not/existent/p1Data',
+PARTITION p2 DATA DIRECTORY = '/not/existent/p2Data',
+PARTITION p3 DATA DIRECTORY = '/not/existent/p3Data'
+);
+Got one of the listed errors
diff --git a/mysql-test/r/partition_open_files_limit.result b/mysql-test/r/partition_open_files_limit.result
new file mode 100644
index 00000000000..1441ba4e78e
--- /dev/null
+++ b/mysql-test/r/partition_open_files_limit.result
@@ -0,0 +1,22 @@
+DROP TABLE IF EXISTS `t1`;
+# Bug#46922: crash when adding partitions and open_files_limit is reached
+CREATE TABLE t1 (a INT PRIMARY KEY)
+ENGINE=MyISAM PARTITION BY KEY () PARTITIONS 1;
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11);
+# if the bug exists, then crash will happen here
+ALTER TABLE t1 ADD PARTITION PARTITIONS 511;
+ERROR HY000: Out of resources when opening file '<partition file>' (Errcode: 24)
+SELECT * FROM t1;
+a
+1
+10
+11
+2
+3
+4
+5
+6
+7
+8
+9
+DROP TABLE t1;
diff --git a/mysql-test/r/partition_order.result b/mysql-test/r/partition_order.result
new file mode 100644
index 00000000000..78ff7cd3121
--- /dev/null
+++ b/mysql-test/r/partition_order.result
@@ -0,0 +1,785 @@
+drop table if exists t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b tinyint not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b tinyint unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b smallint not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b smallint unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b mediumint not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b mediumint unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b bigint unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b bigint not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b bigint not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b float not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b double not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b double unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b float unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b double precision not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b double precision unsigned not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b decimal not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (2, 5);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b char(10) not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > 0 order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b varchar(10) not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b varchar(10) not null,
+primary key(a),
+index (b(5)))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b varchar(10) binary not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b tinytext not null,
+primary key(a),
+index (b(10)))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b text not null,
+primary key(a),
+index (b(10)))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b mediumtext not null,
+primary key(a),
+index (b(10)))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b longtext not null,
+primary key(a),
+index (b(10)))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b > '0' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b enum('1','2', '4', '5') not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b >= '1' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b set('1','2', '4', '5') not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '1');
+INSERT into t1 values (2, '5');
+INSERT into t1 values (30, '4');
+INSERT into t1 values (35, '2');
+select * from t1 force index (b) where b >= '1' order by b;
+a b
+1 1
+35 2
+30 4
+2 5
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b date not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '2001-01-01');
+INSERT into t1 values (2, '2005-01-01');
+INSERT into t1 values (30, '2004-01-01');
+INSERT into t1 values (35, '2002-01-01');
+select * from t1 force index (b) where b > '2000-01-01' order by b;
+a b
+1 2001-01-01
+35 2002-01-01
+30 2004-01-01
+2 2005-01-01
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b datetime not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '2001-01-01 00:00:00');
+INSERT into t1 values (2, '2005-01-01 00:00:00');
+INSERT into t1 values (30, '2004-01-01 00:00:00');
+INSERT into t1 values (35, '2002-01-01 00:00:00');
+select * from t1 force index (b) where b > '2000-01-01 00:00:00' order by b;
+a b
+1 2001-01-01 00:00:00
+35 2002-01-01 00:00:00
+30 2004-01-01 00:00:00
+2 2005-01-01 00:00:00
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b timestamp not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '2001-01-01 00:00:00');
+INSERT into t1 values (2, '2005-01-01 00:00:00');
+INSERT into t1 values (30, '2004-01-01 00:00:00');
+INSERT into t1 values (35, '2002-01-01 00:00:00');
+select * from t1 force index (b) where b > '2000-01-01 00:00:00' order by b;
+a b
+1 2001-01-01 00:00:00
+35 2002-01-01 00:00:00
+30 2004-01-01 00:00:00
+2 2005-01-01 00:00:00
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b time not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, '01:00:00');
+INSERT into t1 values (2, '05:00:00');
+INSERT into t1 values (30, '04:00:00');
+INSERT into t1 values (35, '02:00:00');
+select * from t1 force index (b) where b > '00:00:00' order by b;
+a b
+1 01:00:00
+35 02:00:00
+30 04:00:00
+2 05:00:00
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b year not null,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 2001);
+INSERT into t1 values (2, 2005);
+INSERT into t1 values (30, 2004);
+INSERT into t1 values (35, 2002);
+select * from t1 force index (b) where b > 2000 order by b;
+a b
+1 2001
+35 2002
+30 2004
+2 2005
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b bit(5) not null,
+c int,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, b'00001', NULL);
+INSERT into t1 values (2, b'00101', 2);
+INSERT into t1 values (30, b'00100', 2);
+INSERT into t1 values (35, b'00010', NULL);
+select a from t1 force index (b) where b > b'00000' order by b;
+a
+1
+35
+30
+2
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b bit(15) not null,
+c int,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, b'000000000000001', NULL);
+INSERT into t1 values (2, b'001010000000101', 2);
+INSERT into t1 values (30, b'001000000000100', 2);
+INSERT into t1 values (35, b'000100000000010', NULL);
+select a from t1 force index (b) where b > b'000000000000000' order by b;
+a
+1
+35
+30
+2
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int,
+primary key(a),
+index (b))
+partition by range (a)
+partitions 2
+(partition x1 values less than (25),
+partition x2 values less than (100));
+INSERT into t1 values (1, 1);
+INSERT into t1 values (5, NULL);
+INSERT into t1 values (2, 4);
+INSERT into t1 values (3, 3);
+INSERT into t1 values (4, 5);
+INSERT into t1 values (7, 1);
+INSERT into t1 values (6, 6);
+INSERT into t1 values (30, 4);
+INSERT into t1 values (35, 2);
+INSERT into t1 values (40, NULL);
+select * from t1 force index (b) where b < 10 OR b IS NULL order by b;
+a b
+5 NULL
+40 NULL
+1 1
+7 1
+35 2
+3 3
+2 4
+30 4
+4 5
+6 6
+select * from t1 force index (b) where b < 10 ORDER BY b;
+a b
+1 1
+7 1
+35 2
+3 3
+2 4
+30 4
+4 5
+6 6
+select * from t1 force index (b) where b < 10 ORDER BY b DESC;
+a b
+6 6
+4 5
+2 4
+30 4
+3 3
+35 2
+7 1
+1 1
+drop table t1;
+create table t1 (a int not null, b int, c varchar(20), key (a,b,c))
+partition by range (b)
+(partition p0 values less than (5),
+partition p1 values less than (10));
+INSERT into t1 values (1,1,'1'),(2,2,'2'),(1,3,'3'),(2,4,'4'),(1,5,'5');
+INSERT into t1 values (2,6,'6'),(1,7,'7'),(2,8,'8'),(1,9,'9');
+INSERT into t1 values (1, NULL, NULL), (2, NULL, '10');
+select * from t1 where a = 1 order by a desc, b desc;
+a b c
+1 9 9
+1 7 7
+1 5 5
+1 3 3
+1 1 1
+1 NULL NULL
+select * from t1 where a = 1 order by b desc;
+a b c
+1 9 9
+1 7 7
+1 5 5
+1 3 3
+1 1 1
+1 NULL NULL
+drop table t1;
diff --git a/mysql-test/r/partition_pruning.result b/mysql-test/r/partition_pruning.result
new file mode 100644
index 00000000000..3128c57b2cf
--- /dev/null
+++ b/mysql-test/r/partition_pruning.result
@@ -0,0 +1,2230 @@
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+# test of RANGE and index
+CREATE TABLE t1 (a DATE, KEY(a))
+PARTITION BY RANGE (TO_DAYS(a))
+(PARTITION `pNULL` VALUES LESS THAN (0),
+PARTITION `p0001-01-01` VALUES LESS THAN (366 + 1),
+PARTITION `p1001-01-01` VALUES LESS THAN (TO_DAYS('1001-01-01') + 1),
+PARTITION `p2001-01-01` VALUES LESS THAN (TO_DAYS('2001-01-01') + 1));
+INSERT INTO t1 VALUES ('0000-00-00'), ('0000-01-02'), ('0001-01-01'),
+('1001-00-00'), ('1001-01-01'), ('1002-00-00'), ('2001-01-01');
+SELECT * FROM t1 WHERE a < '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a <= '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a >= '1001-01-01';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-01-01';
+a
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-01-01';
+a
+1001-01-01
+SELECT * FROM t1 WHERE a < '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+SELECT * FROM t1 WHERE a <= '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a >= '1001-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-00-00';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-00-00';
+a
+1001-00-00
+# Disabling warnings for the invalid date
+SELECT * FROM t1 WHERE a < '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a <= '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a >= '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a > '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a = '1999-02-31';
+a
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+a
+0001-01-01
+1001-00-00
+1001-01-01
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p2001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1001-01-01 system a NULL NULL NULL 1
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ref a a 4 const 1 Using where; Using index
+# Disabling warnings for the invalid date
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01,p2001-01-01 range a a 4 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01,p2001-01-01 range a a 4 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p2001-01-01 range a a 4 NULL 2 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p2001-01-01 range a a 4 NULL 2 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ref a a 4 const 1 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01,p2001-01-01 range a a 4 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+# test without index
+ALTER TABLE t1 DROP KEY a;
+SELECT * FROM t1 WHERE a < '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a <= '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a >= '1001-01-01';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-01-01';
+a
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-01-01';
+a
+1001-01-01
+SELECT * FROM t1 WHERE a < '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+SELECT * FROM t1 WHERE a <= '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a >= '1001-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-00-00';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-00-00';
+a
+1001-00-00
+# Disabling warnings for the invalid date
+SELECT * FROM t1 WHERE a < '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a <= '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a >= '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a > '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a = '1999-02-31';
+a
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+a
+0001-01-01
+1001-00-00
+1001-01-01
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1001-01-01 system NULL NULL NULL NULL 1
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ALL NULL NULL NULL NULL 7 Using where
+# Disabling warnings for the invalid date
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01,p2001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p0001-01-01,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+DROP TABLE t1;
+# test of LIST and index
+CREATE TABLE t1 (a DATE, KEY(a))
+PARTITION BY LIST (TO_DAYS(a))
+(PARTITION `p0001-01-01` VALUES IN (TO_DAYS('0001-01-01')),
+PARTITION `p2001-01-01` VALUES IN (TO_DAYS('2001-01-01')),
+PARTITION `pNULL` VALUES IN (NULL),
+PARTITION `p0000-01-02` VALUES IN (TO_DAYS('0000-01-02')),
+PARTITION `p1001-01-01` VALUES IN (TO_DAYS('1001-01-01')));
+INSERT INTO t1 VALUES ('0000-00-00'), ('0000-01-02'), ('0001-01-01'),
+('1001-00-00'), ('1001-01-01'), ('1002-00-00'), ('2001-01-01');
+SELECT * FROM t1 WHERE a < '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a <= '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a >= '1001-01-01';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-01-01';
+a
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-01-01';
+a
+1001-01-01
+SELECT * FROM t1 WHERE a < '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+SELECT * FROM t1 WHERE a <= '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a >= '1001-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-00-00';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-00-00';
+a
+1001-00-00
+# Disabling warnings for the invalid date
+SELECT * FROM t1 WHERE a < '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a <= '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a >= '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a > '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a = '1999-02-31';
+a
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+a
+0001-01-01
+1001-00-00
+1001-01-01
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL,p1001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1001-01-01 system a NULL NULL NULL 1
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02 range a a 4 NULL 3 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL,p1001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL,p1001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ref a a 4 const 1 Using where; Using index
+# Disabling warnings for the invalid date
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 range a a 4 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 range a a 4 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL range a a 4 NULL 2 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL range a a 4 NULL 2 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ref a a 4 const 1 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 range a a 4 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 range a a 4 NULL 4 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01 range a a 4 NULL 2 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p1001-01-01 range a a 4 NULL 3 Using where; Using index
+# test without index
+ALTER TABLE t1 DROP KEY a;
+SELECT * FROM t1 WHERE a < '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a <= '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a >= '1001-01-01';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-01-01';
+a
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-01-01';
+a
+1001-01-01
+SELECT * FROM t1 WHERE a < '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+SELECT * FROM t1 WHERE a <= '1001-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+SELECT * FROM t1 WHERE a >= '1001-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a > '1001-00-00';
+a
+1001-01-01
+1002-00-00
+2001-01-01
+SELECT * FROM t1 WHERE a = '1001-00-00';
+a
+1001-00-00
+# Disabling warnings for the invalid date
+SELECT * FROM t1 WHERE a < '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a <= '1999-02-31';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a >= '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a > '1999-02-31';
+a
+2001-01-01
+SELECT * FROM t1 WHERE a = '1999-02-31';
+a
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+a
+0000-00-00
+0000-01-02
+0001-01-01
+1001-00-00
+1001-01-01
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+a
+1001-00-00
+1001-01-01
+1002-00-00
+SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+a
+0001-01-01
+1001-00-00
+1001-01-01
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1001-01-01 system NULL NULL NULL NULL 1
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ALL NULL NULL NULL NULL 7 Using where
+# Disabling warnings for the invalid date
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2001-01-01,pNULL ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1999-02-31';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p0000-01-02,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pNULL,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0001-01-01,pNULL,p1001-01-01 ALL NULL NULL NULL NULL 7 Using where
+DROP TABLE t1;
+# Test with DATETIME column NOT NULL
+CREATE TABLE t1 (
+a int(10) unsigned NOT NULL,
+b DATETIME NOT NULL,
+PRIMARY KEY (a, b)
+) PARTITION BY RANGE (TO_DAYS(b))
+(PARTITION p20090401 VALUES LESS THAN (TO_DAYS('2009-04-02')),
+PARTITION p20090402 VALUES LESS THAN (TO_DAYS('2009-04-03')),
+PARTITION p20090403 VALUES LESS THAN (TO_DAYS('2009-04-04')),
+PARTITION p20090404 VALUES LESS THAN (TO_DAYS('2009-04-05')),
+PARTITION p20090405 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (1, '2009-01-01'), (1, '2009-04-01'), (2, '2009-04-01'),
+(1, '2009-04-02'), (2, '2009-04-02'), (1, '2009-04-02 23:59:59'),
+(1, '2009-04-03'), (2, '2009-04-03'), (1, '2009-04-04'), (2, '2009-04-04'),
+(1, '2009-04-05'), (1, '2009-04-06'), (1, '2009-04-07');
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 6 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 12 NULL 8 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 12 NULL 8 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090402 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 index NULL PRIMARY 12 NULL 13 Using where; Using index
+DROP TABLE t1;
+# Test with DATE column NOT NULL
+CREATE TABLE t1 (
+a int(10) unsigned NOT NULL,
+b DATE NOT NULL,
+PRIMARY KEY (a, b)
+) PARTITION BY RANGE (TO_DAYS(b))
+(PARTITION p20090401 VALUES LESS THAN (TO_DAYS('2009-04-02')),
+PARTITION p20090402 VALUES LESS THAN (TO_DAYS('2009-04-03')),
+PARTITION p20090403 VALUES LESS THAN (TO_DAYS('2009-04-04')),
+PARTITION p20090404 VALUES LESS THAN (TO_DAYS('2009-04-05')),
+PARTITION p20090405 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (1, '2009-01-01'), (1, '2009-04-01'), (2, '2009-04-01'),
+(1, '2009-04-02'), (2, '2009-04-02'), (1, '2009-04-03'), (2, '2009-04-03'),
+(1, '2009-04-04'), (2, '2009-04-04'), (1, '2009-04-05'), (1, '2009-04-06'),
+(1, '2009-04-07');
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 5 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 7 NULL 7 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 7 NULL 7 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 index NULL PRIMARY 7 NULL 12 Using where; Using index
+DROP TABLE t1;
+# Test with DATETIME column NULL
+CREATE TABLE t1 (
+a int(10) unsigned NOT NULL,
+b DATETIME NULL
+) PARTITION BY RANGE (TO_DAYS(b))
+(PARTITION p20090401 VALUES LESS THAN (TO_DAYS('2009-04-02')),
+PARTITION p20090402 VALUES LESS THAN (TO_DAYS('2009-04-03')),
+PARTITION p20090403 VALUES LESS THAN (TO_DAYS('2009-04-04')),
+PARTITION p20090404 VALUES LESS THAN (TO_DAYS('2009-04-05')),
+PARTITION p20090405 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (1, '2009-01-01'), (1, '2009-04-01'), (2, '2009-04-01'),
+(1, '2009-04-02'), (2, '2009-04-02'), (1, '2009-04-02 23:59:59'),
+(1, '2009-04-03'), (2, '2009-04-03'), (1, '2009-04-04'), (2, '2009-04-04'),
+(1, '2009-04-05'), (1, '2009-04-06'), (1, '2009-04-07');
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 6 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 8 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 8 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090402 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 13 Using where
+DROP TABLE t1;
+# Test with DATE column NULL
+CREATE TABLE t1 (
+a int(10) unsigned NOT NULL,
+b DATE NULL
+) PARTITION BY RANGE (TO_DAYS(b))
+(PARTITION p20090401 VALUES LESS THAN (TO_DAYS('2009-04-02')),
+PARTITION p20090402 VALUES LESS THAN (TO_DAYS('2009-04-03')),
+PARTITION p20090403 VALUES LESS THAN (TO_DAYS('2009-04-04')),
+PARTITION p20090404 VALUES LESS THAN (TO_DAYS('2009-04-05')),
+PARTITION p20090405 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (1, '2009-01-01'), (1, '2009-04-01'), (2, '2009-04-01'),
+(1, '2009-04-02'), (2, '2009-04-02'), (1, '2009-04-03'), (2, '2009-04-03'),
+(1, '2009-04-04'), (2, '2009-04-04'), (1, '2009-04-05'), (1, '2009-04-06'),
+(1, '2009-04-07');
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 5 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 7 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:59' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > CAST('2009-04-03' AS DATE);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-02 23:59:59';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b <= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b = '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b >= '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b > '2009-04-03';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402,p20090403 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-03 00:00:01' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b < CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b <= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090402 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b = CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b >= CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE b > CAST('2009-04-02 23:59:58' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p20090401,p20090403,p20090404,p20090405 ALL NULL NULL NULL NULL 12 Using where
+DROP TABLE t1;
+# For better code coverage of the patch
+CREATE TABLE t1 (
+a int(10) unsigned NOT NULL,
+b DATE
+) PARTITION BY RANGE ( TO_DAYS(b) )
+(PARTITION p20090401 VALUES LESS THAN (TO_DAYS('2009-04-02')),
+PARTITION p20090402 VALUES LESS THAN (TO_DAYS('2009-04-03')),
+PARTITION p20090403 VALUES LESS THAN (TO_DAYS('2009-04-04')),
+PARTITION p20090404 VALUES LESS THAN (TO_DAYS('2009-04-05')),
+PARTITION p20090405 VALUES LESS THAN MAXVALUE);
+INSERT INTO t1 VALUES (1, '2009-01-01'), (2, NULL);
+# test with an invalid date, which lead to item->null_value is set.
+EXPLAIN PARTITIONS SELECT * FROM t1 WHERE b < CAST('2009-04-99' AS DATETIME);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+Warnings:
+Warning 1292 Incorrect datetime value: '2009-04-99'
+DROP TABLE t1;
+CREATE TABLE t1
+(a INT NOT NULL AUTO_INCREMENT,
+b DATETIME,
+PRIMARY KEY (a,b),
+KEY (b))
+PARTITION BY RANGE (to_days(b))
+(PARTITION p0 VALUES LESS THAN (733681) COMMENT = 'LESS THAN 2008-10-01',
+PARTITION p1 VALUES LESS THAN (733712) COMMENT = 'LESS THAN 2008-11-01',
+PARTITION pX VALUES LESS THAN MAXVALUE);
+SELECT a,b FROM t1 WHERE b >= '2008-12-01' AND b < '2009-12-00';
+a b
+DROP TABLE t1;
+create table t1 ( a int not null) partition by hash(a) partitions 2;
+insert into t1 values (1),(2),(3);
+explain select * from t1 where a=5 and a=6;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+drop table t1;
+create table t1 (
+a int(11) not null
+) partition by hash (a) partitions 2;
+insert into t1 values (1),(2),(3);
+explain partitions select * from t1 where a=1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t1 where a=2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 system NULL NULL NULL NULL 1
+explain partitions select * from t1 where a=1 or a=2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 3 Using where
+create table t2 (
+a int not null,
+b int not null
+) partition by key(a,b) partitions 2;
+insert into t2 values (1,1),(2,2),(3,3);
+explain partitions select * from t2 where a=1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t2 where b=1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t2 where a=1 and b=1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0 ALL NULL NULL NULL NULL 3 Using where
+create table t3 (
+a int
+)
+partition by range (a*1) (
+partition p0 values less than (10),
+partition p1 values less than (20)
+);
+insert into t3 values (5),(15);
+explain partitions select * from t3 where a=11;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t3 where a=10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t3 where a=20;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t3 where a=30;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+create table t4 (a int not null, b int not null) partition by LIST (a+b) (
+partition p0 values in (12),
+partition p1 values in (14)
+);
+insert into t4 values (10,2), (10,4);
+explain partitions select * from t4 where (a=10 and b=1) or (a=10 and b=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 p0 system NULL NULL NULL NULL 1
+explain partitions select * from t4
+where (a=10 and b=1) or (a=10 and b=2) or (a=10 and b = 3);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 p0 system NULL NULL NULL NULL 1
+explain partitions select * from t4 where (a=10 and b=2) or (a=10 and b=3)
+or (a=10 and b = 4);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 p0,p1 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t4 where (a=10 and b=1) or a=11;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 p0,p1 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t4 where (a=10 and b=2) or a=11;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t4 p0,p1 ALL NULL NULL NULL NULL 2 Using where
+drop table t1, t2, t3, t4;
+create table t5 (a int not null, b int not null,
+c int not null, d int not null)
+partition by LIST(a+b) subpartition by HASH (c+d) subpartitions 2
+(
+partition p0 values in (12),
+partition p1 values in (14)
+);
+insert into t5 values (10,2,0,0), (10,4,0,0), (10,2,0,1), (10,4,0,1);
+explain partitions select * from t5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp0,p0_p0sp1,p1_p1sp0,p1_p1sp1 ALL NULL NULL NULL NULL 4
+explain partitions select * from t5
+where (a=10 and b=1) or (a=10 and b=2) or (a=10 and b = 3);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp0,p0_p0sp1 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t5 where (a=10 and b=2) or (a=10 and b=3)
+or (a=10 and b = 4);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp0,p0_p0sp1,p1_p1sp0,p1_p1sp1 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t5 where (c=1 and d=1);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp0,p1_p1sp0 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t5 where (c=2 and d=1);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp1,p1_p1sp1 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t5 where (a=10 and b=2 and c=1 and d=1) or
+(c=2 and d=1);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp0,p0_p0sp1,p1_p1sp1 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t5 where (a=10 and b=2 and c=1 and d=1) or
+(b=2 and c=2 and d=1);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t5 p0_p0sp0,p0_p0sp1,p1_p1sp1 ALL NULL NULL NULL NULL 4 Using where
+create table t6 (a int not null) partition by LIST(a) (
+partition p1 values in (1),
+partition p3 values in (3),
+partition p5 values in (5),
+partition p7 values in (7),
+partition p9 values in (9)
+);
+insert into t6 values (1),(3),(5);
+explain partitions select * from t6 where a < 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a <= 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p1 system NULL NULL NULL NULL 1
+explain partitions select * from t6 where a > 9;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a >= 9;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a > 0 and a < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p1,p3 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t6 where a > 5 and a < 12;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a > 3 and a < 8 ;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p5,p7 system NULL NULL NULL NULL 1
+explain partitions select * from t6 where a >= 0 and a <= 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p1,p3,p5 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t6 where a >= 5 and a <= 12;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p5,p7,p9 system NULL NULL NULL NULL 1
+explain partitions select * from t6 where a >= 3 and a <= 8;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p3,p5,p7 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t6 where a > 3 and a < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+drop table t6;
+create table t6 (a int unsigned not null) partition by LIST(a) (
+partition p1 values in (1),
+partition p3 values in (3),
+partition p5 values in (5),
+partition p7 values in (7),
+partition p9 values in (9)
+);
+insert into t6 values (1),(3),(5);
+explain partitions select * from t6 where a < 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a <= 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p1 system NULL NULL NULL NULL 1
+explain partitions select * from t6 where a > 9;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a >= 9;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a > 0 and a < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p1,p3 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t6 where a > 5 and a < 12;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t6 where a > 3 and a < 8 ;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p5,p7 system NULL NULL NULL NULL 1
+explain partitions select * from t6 where a >= 0 and a <= 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p1,p3,p5 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t6 where a >= 5 and a <= 12;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p5,p7,p9 system NULL NULL NULL NULL 1
+explain partitions select * from t6 where a >= 3 and a <= 8;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t6 p3,p5,p7 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t6 where a > 3 and a < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+create table t7 (a int not null) partition by RANGE(a) (
+partition p10 values less than (10),
+partition p30 values less than (30),
+partition p50 values less than (50),
+partition p70 values less than (70),
+partition p90 values less than (90)
+);
+insert into t7 values (10),(30),(50);
+explain partitions select * from t7 where a < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a < 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a <= 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t7 p10,p30 system NULL NULL NULL NULL 1
+explain partitions select * from t7 where a = 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t7 p30 system NULL NULL NULL NULL 1
+explain partitions select * from t7 where a < 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t7 p10,p30,p50,p70,p90 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t7 where a = 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a > 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a >= 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a > 11 and a < 29;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+drop table t7;
+create table t7 (a int unsigned not null) partition by RANGE(a) (
+partition p10 values less than (10),
+partition p30 values less than (30),
+partition p50 values less than (50),
+partition p70 values less than (70),
+partition p90 values less than (90)
+);
+insert into t7 values (10),(30),(50);
+explain partitions select * from t7 where a < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a < 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a <= 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t7 p10,p30 system NULL NULL NULL NULL 1
+explain partitions select * from t7 where a = 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t7 p30 system NULL NULL NULL NULL 1
+explain partitions select * from t7 where a < 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t7 p10,p30,p50,p70,p90 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t7 where a = 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a > 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a >= 90;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t7 where a > 11 and a < 29;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+create table t8 (a date not null) partition by RANGE(YEAR(a)) (
+partition p0 values less than (1980),
+partition p1 values less than (1990),
+partition p2 values less than (2000)
+);
+insert into t8 values ('1985-05-05'),('1995-05-05');
+explain partitions select * from t8 where a < '1980-02-02';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+create table t9 (a date not null) partition by RANGE(TO_DAYS(a)) (
+partition p0 values less than (732299), -- 2004-12-19
+partition p1 values less than (732468), -- 2005-06-06
+partition p2 values less than (732664) -- 2005-12-19
+);
+insert into t9 values ('2005-05-05'), ('2005-04-04');
+explain partitions select * from t9 where a < '2004-12-19';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t9 where a <= '2004-12-19';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t9 p0,p1 ALL NULL NULL NULL NULL 2 Using where
+drop table t5,t6,t7,t8,t9;
+create table t1 (
+a1 int not null
+)
+partition by range (a1) (
+partition p0 values less than (3),
+partition p1 values less than (6),
+partition p2 values less than (9)
+);
+insert into t1 values (1),(2),(3);
+explain partitions select * from t1 where a1 > 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t1 where a1 >= 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p2 system NULL NULL NULL NULL 1
+explain partitions select * from t1 where a1 < 3 and a1 > 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+drop table t1;
+create table t3 (a int, b int)
+partition by list(a) subpartition by hash(b) subpartitions 4 (
+partition p0 values in (1),
+partition p1 values in (2),
+partition p2 values in (3),
+partition p3 values in (4)
+);
+insert into t3 values (1,1),(2,2),(3,3);
+explain partitions select * from t3 where a=2 or b=1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t3 p0_p0sp1,p1_p1sp0,p1_p1sp1,p1_p1sp2,p1_p1sp3,p2_p2sp1,p3_p3sp1 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t3 where a=4 or b=2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t3 p0_p0sp2,p1_p1sp2,p2_p2sp2,p3_p3sp0,p3_p3sp1,p3_p3sp2,p3_p3sp3 system NULL NULL NULL NULL 1
+explain partitions select * from t3 where (a=2 or b=1) and (a=4 or b=2) ;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t3 p1_p1sp2,p3_p3sp1 system NULL NULL NULL NULL 1
+drop table t3;
+create table t1 (a int) partition by hash(a) partitions 2;
+insert into t1 values (1),(2);
+explain partitions select * from t1 where a is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t1 where a is not null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 2 Using where
+drop table t1;
+create table t1 (a int not null, b int not null, key(a), key(b))
+partition by hash(a) partitions 4;
+insert into t1 values (1,1),(2,2),(3,3),(4,4);
+explain partitions
+select * from t1 X, t1 Y
+where X.b = Y.b and (X.a=1 or X.a=2) and (Y.a=2 or Y.a=3);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE X p1,p2 ALL a,b NULL NULL NULL 2 Using where
+1 SIMPLE Y p2,p3 ref a,b b 4 test.X.b 2 Using where
+explain partitions
+select * from t1 X, t1 Y where X.a = Y.a and (X.a=1 or X.a=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE X p1,p2 ALL a NULL NULL NULL 4 Using where
+1 SIMPLE Y p1,p2 ref a a 4 test.X.a 2
+drop table t1;
+create table t1 (a int) partition by hash(a) partitions 20;
+insert into t1 values (1),(2),(3);
+explain partitions select * from t1 where a > 1 and a < 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2 system NULL NULL NULL NULL 1
+explain partitions select * from t1 where a >= 1 and a < 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p2 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t1 where a > 1 and a <= 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2,p3 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t1 where a >= 1 and a <= 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p2,p3 ALL NULL NULL NULL NULL 3 Using where
+drop table t1;
+create table t1 (a int, b int)
+partition by list(a) subpartition by hash(b) subpartitions 20
+(
+partition p0 values in (0),
+partition p1 values in (1),
+partition p2 values in (2),
+partition p3 values in (3)
+);
+insert into t1 values (1,1),(2,2),(3,3);
+explain partitions select * from t1 where b > 1 and b < 3;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0_p0sp2,p1_p1sp2,p2_p2sp2,p3_p3sp2 system NULL NULL NULL NULL 1
+explain partitions select * from t1 where b > 1 and b < 3 and (a =1 or a =2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1_p1sp2,p2_p2sp2 system NULL NULL NULL NULL 1
+drop table t1;
+create table t1 (a int) partition by list(a) (
+partition p0 values in (1,2),
+partition p1 values in (3,4)
+);
+insert into t1 values (1),(1),(2),(2),(3),(4),(3),(4);
+flush status;
+update t1 set a=100 where a=5;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+flush status;
+update t1 set a=100 where a+1=5+1;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 10
+flush status;
+delete from t1 where a=5;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+flush status;
+delete from t1 where a+1=5+1;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 10
+create table t2 like t1;
+insert into t2 select * from t2;
+flush status;
+update t1,t2 set t1.a=1000, t2.a=1000 where t1.a=5 and t2.a=5;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+flush status;
+delete t1,t2 from t1, t2 where t1.a=5 and t2.a=5;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+drop table t1,t2;
+CREATE TABLE `t1` (
+`a` int(11) default NULL
+);
+INSERT INTO t1 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+CREATE TABLE `t2` (
+`a` int(11) default NULL,
+KEY `a` (`a`)
+) ;
+insert into t2 select A.a + 10*(B.a + 10* C.a) from t1 A, t1 B, t1 C ;
+insert into t1 select a from t2;
+drop table t2;
+CREATE TABLE `t2` (
+`a` int(11) default NULL,
+`b` int(11) default NULL
+)
+PARTITION BY RANGE (a) (
+PARTITION p0 VALUES LESS THAN (200),
+PARTITION p1 VALUES LESS THAN (400),
+PARTITION p2 VALUES LESS THAN (600),
+PARTITION p3 VALUES LESS THAN (800),
+PARTITION p4 VALUES LESS THAN (1001));
+insert into t2 select a,1 from t1 where a < 200;
+insert into t2 select a,2 from t1 where a >= 200 and a < 400;
+insert into t2 select a,3 from t1 where a >= 400 and a < 600;
+insert into t2 select a,4 from t1 where a >= 600 and a < 800;
+insert into t2 select a,5 from t1 where a >= 800 and a < 1001;
+explain partitions select * from t2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL NULL NULL NULL NULL 1010
+explain partitions select * from t2 where a < 801 and a > 200;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p1,p2,p3,p4 ALL NULL NULL NULL NULL 1010 Using where
+explain partitions select * from t2 where a < 801 and a > 800;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p4 ALL NULL NULL NULL NULL 1010 Using where
+explain partitions select * from t2 where a > 600;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p3,p4 ALL NULL NULL NULL NULL 1010 Using where
+explain partitions select * from t2 where a > 600 and b = 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p3,p4 ALL NULL NULL NULL NULL 1010 Using where
+explain partitions select * from t2 where a > 600 and b = 4;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p3,p4 ALL NULL NULL NULL NULL 1010 Using where
+explain partitions select * from t2 where a > 600 and b = 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p3,p4 ALL NULL NULL NULL NULL 1010 Using where
+explain partitions select * from t2 where b = 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL NULL NULL NULL NULL 1010 Using where
+flush status;
+update t2 set b = 100 where b = 6;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 1015
+flush status;
+update t2 set a = 1002 where a = 1001;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+flush status;
+update t2 set b = 6 where a = 600;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 201
+flush status;
+update t2 set b = 6 where a > 600 and a < 800;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 201
+flush status;
+delete from t2 where a > 600;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 402
+drop table t2;
+CREATE TABLE `t2` (
+`a` int(11) default NULL,
+`b` int(11) default NULL,
+index (b)
+)
+PARTITION BY RANGE (a) (
+PARTITION p0 VALUES LESS THAN (200),
+PARTITION p1 VALUES LESS THAN (400),
+PARTITION p2 VALUES LESS THAN (600),
+PARTITION p3 VALUES LESS THAN (800),
+PARTITION p4 VALUES LESS THAN (1001));
+insert into t2 select a,1 from t1 where a < 100;
+insert into t2 select a,2 from t1 where a >= 200 and a < 300;
+insert into t2 select a,3 from t1 where a >= 300 and a < 400;
+insert into t2 select a,4 from t1 where a >= 400 and a < 500;
+insert into t2 select a,5 from t1 where a >= 500 and a < 600;
+insert into t2 select a,6 from t1 where a >= 600 and a < 700;
+insert into t2 select a,7 from t1 where a >= 700 and a < 800;
+insert into t2 select a,8 from t1 where a >= 800 and a < 900;
+insert into t2 select a,9 from t1 where a >= 900 and a < 1001;
+explain partitions select * from t2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL NULL NULL NULL NULL 910
+explain partitions select * from t2 where a = 101;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0 ALL NULL NULL NULL NULL 910 Using where
+explain partitions select * from t2 where a = 550;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p2 ALL NULL NULL NULL NULL 910 Using where
+explain partitions select * from t2 where a = 833;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p4 ALL NULL NULL NULL NULL 910 Using where
+explain partitions select * from t2 where (a = 100 OR a = 900);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p4 ALL NULL NULL NULL NULL 910 Using where
+explain partitions select * from t2 where (a > 100 AND a < 600);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3 ALL NULL NULL NULL NULL 910 Using where
+explain partitions select * from t2 where b = 4;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ref b b 5 const 76 Using where
+explain extended select * from t2 where b = 6;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ref b b 5 const 76 100.00 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`b` = 6)
+explain partitions select * from t2 where b = 6;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ref b b 5 const 76 Using where
+explain extended select * from t2 where b in (1,3,5);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL b NULL NULL NULL 910 40.66 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`b` in (1,3,5))
+explain partitions select * from t2 where b in (1,3,5);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL b NULL NULL NULL 910 Using where
+explain extended select * from t2 where b in (2,4,6);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL b NULL NULL NULL 910 25.05 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`b` in (2,4,6))
+explain partitions select * from t2 where b in (2,4,6);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL b NULL NULL NULL 910 Using where
+explain extended select * from t2 where b in (7,8,9);
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL b NULL NULL NULL 910 36.70 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`b` in (7,8,9))
+explain partitions select * from t2 where b in (7,8,9);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL b NULL NULL NULL 910 Using where
+explain extended select * from t2 where b > 5;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL b NULL NULL NULL 910 44.84 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`b` > 5)
+explain partitions select * from t2 where b > 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL b NULL NULL NULL 910 Using where
+explain extended select * from t2 where b > 5 and b < 8;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL b NULL NULL NULL 910 22.09 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where ((`test`.`t2`.`b` > 5) and (`test`.`t2`.`b` < 8))
+explain partitions select * from t2 where b > 5 and b < 8;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL b NULL NULL NULL 910 Using where
+explain extended select * from t2 where b > 5 and b < 7;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 range b b 5 NULL 76 100.00 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where ((`test`.`t2`.`b` > 5) and (`test`.`t2`.`b` < 7))
+explain partitions select * from t2 where b > 5 and b < 7;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 range b b 5 NULL 76 Using where
+explain extended select * from t2 where b > 0 and b < 5;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL b NULL NULL NULL 910 41.65 Using where
+Warnings:
+Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where ((`test`.`t2`.`b` > 0) and (`test`.`t2`.`b` < 5))
+explain partitions select * from t2 where b > 0 and b < 5;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1,p2,p3,p4 ALL b NULL NULL NULL 910 Using where
+flush status;
+update t2 set a = 111 where b = 10;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+show status like 'Handler_read_key';
+Variable_name Value
+Handler_read_key 5
+flush status;
+update t2 set a = 111 where b in (5,6);
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 915
+show status like 'Handler_read_key';
+Variable_name Value
+Handler_read_key 0
+flush status;
+update t2 set a = 222 where b = 7;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+show status like 'Handler_read_key';
+Variable_name Value
+Handler_read_key 5
+flush status;
+delete from t2 where b = 7;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 0
+show status like 'Handler_read_key';
+Variable_name Value
+Handler_read_key 5
+flush status;
+delete from t2 where b > 5;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 1215
+show status like 'Handler_read_key';
+Variable_name Value
+Handler_read_key 0
+show status like 'Handler_read_prev';
+Variable_name Value
+Handler_read_prev 0
+show status like 'Handler_read_next';
+Variable_name Value
+Handler_read_next 0
+flush status;
+delete from t2 where b < 5 or b > 3;
+show status like 'Handler_read_rnd_next';
+Variable_name Value
+Handler_read_rnd_next 1215
+show status like 'Handler_read_key';
+Variable_name Value
+Handler_read_key 0
+show status like 'Handler_read_prev';
+Variable_name Value
+Handler_read_prev 0
+show status like 'Handler_read_next';
+Variable_name Value
+Handler_read_next 0
+drop table t1, t2;
+create table t1 ( f_int1 mediumint, f_int2 integer)
+partition by list(mod(f_int1,4)) (
+partition p_3 values in (-3),
+partition p_2 values in (-2),
+partition p_1 values in (-1),
+partition p0 values in (0),
+partition p1 values in (1),
+partition p2 values in (2),
+partition p3 values in (3)
+);
+insert into t1 values (9, 9), (8, 8), (7, 7), (6, 6), (5, 5),
+(4, 4), (3, 3), (2, 2), (1, 1);
+select * from t1 where f_int1 between 5 and 15 order by f_int1;
+f_int1 f_int2
+5 5
+6 6
+7 7
+8 8
+9 9
+drop table t1;
+create table t1 (f_int1 integer) partition by list(abs(mod(f_int1,2)))
+subpartition by hash(f_int1) subpartitions 2
+(
+partition part1 values in (0),
+partition part2 values in (1),
+partition part4 values in (null)
+);
+insert into t1 set f_int1 = null;
+select * from t1 where f_int1 is null;
+f_int1
+NULL
+explain partitions select * from t1 where f_int1 is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 part4_part4sp0 system NULL NULL NULL NULL 1
+drop table t1;
+create table t1 (a int not null, b int not null)
+partition by list(a)
+subpartition by hash(b) subpartitions 4
+(
+partition p0 values in (1),
+partition p1 values in (2),
+partition p2 values in (3)
+);
+insert into t1 values (1,1),(1,2),(1,3),(1,4),
+(2,1),(2,2),(2,3),(2,4);
+explain partitions select * from t1 where a=1 AND (b=1 OR b=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0_p0sp1,p0_p0sp2 ALL NULL NULL NULL NULL 2 Using where
+drop table t1;
+create table t1 (a int, b int not null)
+partition by list(a)
+subpartition by hash(b) subpartitions 2
+(
+partition p0 values in (1),
+partition p1 values in (2),
+partition p2 values in (3),
+partition pn values in (NULL)
+);
+insert into t1 values (1,1),(1,2),(1,3),(1,4),
+(2,1),(2,2),(2,3),(2,4), (NULL,1);
+explain partitions select * from t1 where a IS NULL AND (b=1 OR b=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pn_pnsp0,pn_pnsp1 system NULL NULL NULL NULL 1
+explain partitions select * from t1 where (a IS NULL or a < 1) AND (b=1 OR b=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pn_pnsp0,pn_pnsp1 system NULL NULL NULL NULL 1
+explain partitions select * from t1 where (a IS NULL or a < 2) AND (b=1 OR b=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0_p0sp0,p0_p0sp1,pn_pnsp0,pn_pnsp1 ALL NULL NULL NULL NULL 5 Using where
+explain partitions select * from t1 where (a IS NULL or a <= 1) AND (b=1 OR b=2);
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0_p0sp0,p0_p0sp1,pn_pnsp0,pn_pnsp1 ALL NULL NULL NULL NULL 5 Using where
+drop table t1;
+create table t1 ( a int) partition by list (MOD(a, 10))
+( partition p0 values in (0), partition p1 values in (1),
+partition p2 values in (2), partition p3 values in (3),
+partition p4 values in (4), partition p5 values in (5),
+partition p6 values in (6), partition pn values in (NULL)
+);
+insert into t1 values (NULL), (0),(1),(2),(3),(4),(5),(6);
+explain partitions select * from t1 where a is null or a < 2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1,p2,p3,p4,p5,p6,pn ALL NULL NULL NULL NULL 8 Using where
+drop table t1;
+create table t1 (s1 int) partition by list (s1)
+(partition p1 values in (0),
+partition p2 values in (1),
+partition p3 values in (null));
+insert into t1 values (0),(1),(null);
+select count(*) from t1 where s1 < 0 or s1 is null;
+count(*)
+1
+explain partitions select count(*) from t1 where s1 < 0 or s1 is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p3 system NULL NULL NULL NULL 1
+drop table t1;
+create table t1 (a char(32) primary key)
+partition by key()
+partitions 100;
+insert into t1 values ('na');
+select * from t1;
+a
+na
+select * from t1 where a like 'n%';
+a
+na
+drop table t1;
+create table t1 (s1 varchar(15)) partition by key (s1);
+select * from t1 where s1 = 0 or s1 is null;
+s1
+insert into t1 values ('aa'),('bb'),('0');
+explain partitions select * from t1 where s1 = 0 or s1 is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 3 Using where
+drop table t1;
+create table t2 (a int, b int)
+partition by LIST(a)
+subpartition by HASH(b) subpartitions 40
+( partition p_0_long_partition_name values in(1),
+partition p_1_long_partition_name values in(2));
+insert into t2 values (1,1),(2,2);
+explain partitions select * from t2;
+id 1
+select_type SIMPLE
+table t2
+partitions p_0_long_partition_name_p_0_long_partition_namesp0,p_0_long_partition_name_p_0_long_partition_namesp1,p_0_long_partition_name_p_0_long_partition_namesp2,p_0_long_partition_name_p_0_long_partition_namesp3,p_0_long_partition_name_p_0_long_partition_namesp4,p_0_long_partition_name_p_0_long_partition_namesp5,p_0_long_partition_name_p_0_long_partition_namesp6,p_0_long_partition_name_p_0_long_partition_namesp7,p_0_long_partition_name_p_0_long_partition_namesp8,p_0_long_partition_name_p_0_long_partition_namesp9,p_0_long_partition_name_p_0_long_partition_namesp10,p_0_long_partition_name_p_0_long_partition_namesp11,p_0_long_partition_name_p_0_long_partition_namesp12,p_0_long_partition_name_p_0_long_partition_namesp13,p_0_long_partition_name_p_0_long_partition_namesp14,p_0_long_partition_name_p_0_long_partition_namesp15,p_0_long_partition_name_p_0_long_partition_namesp16,p_0_long_partition_name_p_0_long_partition_namesp17,p_0_long_partition_name_p_0_long_partition_namesp18,p_0_long_partition_name_p_0_long_partition_namesp19,p_0_long_partition_name_p_0_long_partition_namesp20,p_0_long_partition_name_p_0_long_partition_namesp21,p_0_long_partition_name_p_0_long_partition_namesp22,p_0_long_partition_name_p_0_long_partition_namesp23,p_0_long_partition_name_p_0_long_partition_namesp24,p_0_long_partition_name_p_0_long_partition_namesp25,p_0_long_partition_name_p_0_long_partition_namesp26,p_0_long_partition_name_p_0_long_partition_namesp27,p_0_long_partition_name_p_0_long_partition_namesp28,p_0_long_partition_name_p_0_long_partition_namesp29,p_0_long_partition_name_p_0_long_partition_namesp30,p_0_long_partition_name_p_0_long_partition_namesp31,p_0_long_partition_name_p_0_long_partition_namesp32,p_0_long_partition_name_p_0_long_partition_namesp33,p_0_long_partition_name_p_0_long_partition_namesp34,p_0_long_partition_name_p_0_long_partition_namesp35,p_0_long_partition_name_p_0_long_partition_namesp36,p_0_long_partition_name_p_0_long_partition_namesp37,p_0_long_partition_name_p_0_long_partition_namesp38,p_0_long_partition_name_p_0_long_partition_namesp39,p_1_long_partition_name_p_1_long_partition_namesp0,p_1_long_partition_name_p_1_long_partition_namesp1,p_1_long_partition_name_p_1_long_partition_namesp2,p_1_long_partition_name_p_1_long_partition_namesp3,p_1_long_partition_name_p_1_long_partition_namesp4,p_1_long_partition_name_p_1_long_partition_namesp5,p_1_long_partition_name_p_1_long_partition_namesp6,p_1_long_partition_name_p_1_long_partition_namesp7,p_1_long_partition_name_p_1_long_partition_namesp8,p_1_long_partition_name_p_1_long_partition_namesp9,p_1_long_partition_name_p_1_long_partition_namesp10,p_1_long_partition_name_p_1_long_partition_namesp11,p_1_long_partition_name_p_1_long_partition_namesp12,p_1_long_partition_name_p_1_long_partition_namesp13,p_1_long_partition_name_p_1_long_partition_namesp14,p_1_long_partition_name_p_1_long_partition_namesp15,p_1_long_partition_name_p_1_long_partition_namesp16,p_1_long_partition_name_p_1_long_partition_namesp17,p_1_long_partition_name_p_1_long_partition_namesp18,p_1_long_partition_name_p_1_long_partition_namesp19,p_1_long_partition_name_p_1_long_partition_namesp20,p_1_long_partition_name_p_1_long_partition_namesp21,p_1_long_partition_name_p_1_long_partition_namesp22,p_1_long_partition_name_p_1_long_partition_namesp23,p_1_long_partition_name_p_1_long_partition_namesp24,p_1_long_partition_name_p_1_long_partition_namesp25,p_1_long_partition_name_p_1_long_partition_namesp26,p_1_long_partition_name_p_1_long_partition_namesp27,p_1_long_partition_name_p_1_long_partition_namesp28,p_1_long_partition_name_p_1_long_partition_namesp29,p_1_long_partition_name_p_1_long_partition_namesp30,p_1_long_partition_name_p_1_long_partition_namesp31,p_1_long_partition_name_p_1_long_partition_namesp32,p_1_long_partition_name_p_1_long_partition_namesp33,p_1_long_partition_name_p_1_long_partition_namesp34,p_1_long_partition_name_p_1_long_partition_namesp35,p_1_long_partition_name_p_1_long_partition_namesp36,p_1_long_partition_name_p_1_long_partition_namesp37,p_1_long_partition_name_p_1_long_partition_namesp38,p_1_long_partition_name_p_1_long_partition_namesp39
+type ALL
+possible_keys NULL
+key NULL
+key_len NULL
+ref NULL
+rows 2
+Extra
+drop table t2;
+create table t1 (s1 int);
+explain partitions select 1 from t1 union all select 2;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 PRIMARY t1 NULL system NULL NULL NULL NULL 0 const row not found
+2 UNION NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+NULL UNION RESULT <union1,2> NULL ALL NULL NULL NULL NULL NULL
+drop table t1;
+create table t1 (a bigint unsigned not null) partition by range(a) (
+partition p0 values less than (10),
+partition p1 values less than (100),
+partition p2 values less than (1000),
+partition p3 values less than (18446744073709551000),
+partition p4 values less than (18446744073709551614)
+);
+insert into t1 values (5),(15),(105),(1005);
+insert into t1 values (18446744073709551000+1);
+insert into t1 values (18446744073709551614-1);
+explain partitions select * from t1 where a < 10;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 system NULL NULL NULL NULL 1
+explain partitions select * from t1
+where a >= 18446744073709551000-1 and a <= 18446744073709551000+1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p3,p4 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1
+where a between 18446744073709551001 and 18446744073709551002;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where a = 18446744073709551000;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where a = 18446744073709551613;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where a = 18446744073709551614;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+drop table t1;
+create table t1 (a int)
+partition by range(a) (
+partition p0 values less than (64),
+partition p1 values less than (128),
+partition p2 values less than (255)
+);
+create table t2 (a int)
+partition by range(a+0) (
+partition p0 values less than (64),
+partition p1 values less than (128),
+partition p2 values less than (255)
+);
+insert into t1 values (0x20), (0x20), (0x41), (0x41), (0xFE), (0xFE);
+insert into t2 values (0x20), (0x20), (0x41), (0x41), (0xFE), (0xFE);
+explain partitions select * from t1 where a=0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t2 where a=0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0 ALL NULL NULL NULL NULL 2 Using where
+explain partitions select * from t1 where a=0xFE;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t2 where a=0xFE;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p2 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where a > 0xFE AND a <= 0xFF;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t2 where a > 0xFE AND a <= 0xFF;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t1 where a >= 0xFE AND a <= 0xFF;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p2 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t2 where a >= 0xFE AND a <= 0xFF;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p2 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where a < 64 AND a >= 63;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t2 where a < 64 AND a >= 63;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where a <= 64 AND a >= 63;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 6 Using where
+explain partitions select * from t2 where a <= 64 AND a >= 63;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 p0,p1 ALL NULL NULL NULL NULL 6 Using where
+drop table t1;
+drop table t2;
+create table t1(a bigint unsigned not null) partition by range(a+0) (
+partition p1 values less than (10),
+partition p2 values less than (20),
+partition p3 values less than (2305561538531885056),
+partition p4 values less than (2305561538531950591)
+);
+insert into t1 values (9),(19),(0xFFFF0000FFFF000-1), (0xFFFF0000FFFFFFF-1);
+insert into t1 values (9),(19),(0xFFFF0000FFFF000-1), (0xFFFF0000FFFFFFF-1);
+explain partitions select * from t1 where
+a >= 2305561538531885056-10 and a <= 2305561538531885056-8;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p3 ALL NULL NULL NULL NULL 4 Using where
+explain partitions select * from t1 where
+a > 0xFFFFFFFFFFFFFFEC and a < 0xFFFFFFFFFFFFFFEE;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t1 where a>=0 and a <= 0xFFFFFFFFFFFFFFFF;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p1,p2,p3,p4 ALL NULL NULL NULL NULL 8 Using where
+drop table t1;
+create table t1 (a bigint) partition by range(a+0) (
+partition p1 values less than (-1000),
+partition p2 values less than (-10),
+partition p3 values less than (10),
+partition p4 values less than (1000)
+);
+insert into t1 values (-15),(-5),(5),(15),(-15),(-5),(5),(15);
+explain partitions select * from t1 where a>-2 and a <=0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p3 ALL NULL NULL NULL NULL 4 Using where
+drop table t1;
+CREATE TABLE t1 ( recdate DATETIME NOT NULL )
+PARTITION BY RANGE( TO_DAYS(recdate) ) (
+PARTITION p0 VALUES LESS THAN ( TO_DAYS('2007-03-08') ),
+PARTITION p1 VALUES LESS THAN ( TO_DAYS('2007-04-01') )
+);
+INSERT INTO t1 VALUES ('2007-03-01 12:00:00');
+INSERT INTO t1 VALUES ('2007-03-07 12:00:00');
+INSERT INTO t1 VALUES ('2007-03-08 12:00:00');
+INSERT INTO t1 VALUES ('2007-03-15 12:00:00');
+must use p0 only:
+explain partitions select * from t1 where recdate < '2007-03-08 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 2 Using where
+drop table t1;
+CREATE TABLE t1 ( recdate DATETIME NOT NULL )
+PARTITION BY RANGE( YEAR(recdate) ) (
+PARTITION p0 VALUES LESS THAN (2006),
+PARTITION p1 VALUES LESS THAN (2007)
+);
+INSERT INTO t1 VALUES ('2005-03-01 12:00:00');
+INSERT INTO t1 VALUES ('2005-03-01 12:00:00');
+INSERT INTO t1 VALUES ('2006-03-01 12:00:00');
+INSERT INTO t1 VALUES ('2006-03-01 12:00:00');
+must use p0 only:
+explain partitions select * from t1 where recdate < '2006-01-01 00:00:00';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 2 Using where
+drop table t1;
diff --git a/mysql-test/r/partition_range.result b/mysql-test/r/partition_range.result
new file mode 100644
index 00000000000..02d2f6359c5
--- /dev/null
+++ b/mysql-test/r/partition_range.result
@@ -0,0 +1,796 @@
+drop table if exists t1, t2;
+create table t1 (a int)
+partition by range (a)
+( partition p0 values less than (maxvalue));
+alter table t1 add partition (partition p1 values less than (100000));
+ERROR HY000: MAXVALUE can only be used in last partition definition
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */
+drop table t1;
+create table t1 (a integer)
+partition by range (a)
+( partition p0 values less than (4),
+partition p1 values less than (100));
+create trigger tr1 before insert on t1
+for each row begin
+set @a = 1;
+end|
+alter table t1 drop partition p0;
+drop table t1;
+create table t1 (a integer)
+partition by range (a)
+( partition p0 values less than (4),
+partition p1 values less than (100));
+LOCK TABLES t1 WRITE;
+alter table t1 drop partition p0;
+alter table t1 reorganize partition p1 into
+( partition p0 values less than (4),
+partition p1 values less than (100));
+alter table t1 add partition ( partition p2 values less than (200));
+UNLOCK TABLES;
+drop table t1;
+create table t1 (a int unsigned)
+partition by range (a)
+(partition pnull values less than (0),
+partition p0 values less than (1),
+partition p1 values less than(2));
+insert into t1 values (null),(0),(1);
+select * from t1 where a is null;
+a
+NULL
+select * from t1 where a >= 0;
+a
+0
+1
+select * from t1 where a < 0;
+a
+select * from t1 where a <= 0;
+a
+0
+select * from t1 where a > 1;
+a
+explain partitions select * from t1 where a is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull system NULL NULL NULL NULL 1
+explain partitions select * from t1 where a >= 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t1 where a < 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+explain partitions select * from t1 where a <= 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull,p0 ALL NULL NULL NULL NULL 3 Using where
+explain partitions select * from t1 where a > 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+drop table t1;
+create table t1 (a int unsigned, b int unsigned)
+partition by range (a)
+subpartition by hash (b)
+subpartitions 2
+(partition pnull values less than (0),
+partition p0 values less than (1),
+partition p1 values less than(2));
+insert into t1 values (null,0),(null,1),(0,0),(0,1),(1,0),(1,1);
+select * from t1 where a is null;
+a b
+NULL 0
+NULL 1
+select * from t1 where a >= 0;
+a b
+0 0
+0 1
+1 0
+1 1
+select * from t1 where a < 0;
+a b
+select * from t1 where a <= 0;
+a b
+0 0
+0 1
+select * from t1 where a > 1;
+a b
+explain partitions select * from t1 where a is null;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 6 Using where
+explain partitions select * from t1 where a >= 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p0_p0sp0,p0_p0sp1,p1_p1sp0,p1_p1sp1 ALL NULL NULL NULL NULL 6 Using where
+explain partitions select * from t1 where a < 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 6 Using where
+explain partitions select * from t1 where a <= 0;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1,p0_p0sp0,p0_p0sp1 ALL NULL NULL NULL NULL 6 Using where
+explain partitions select * from t1 where a > 1;
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than maxvalue tablespace ts3);
+INSERT into t1 values (1, 1, 1);
+INSERT into t1 values (6, 1, 1);
+INSERT into t1 values (10, 1, 1);
+INSERT into t1 values (15, 1, 1);
+select * from t1;
+a b c
+1 1 1
+6 1 1
+10 1 1
+15 1 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` int(11) NOT NULL,
+ `c` int(11) NOT NULL,
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION x1 VALUES LESS THAN (5) TABLESPACE = ts1 ENGINE = MyISAM,
+ PARTITION x2 VALUES LESS THAN (10) TABLESPACE = ts2 ENGINE = MyISAM,
+ PARTITION x3 VALUES LESS THAN MAXVALUE TABLESPACE = ts3 ENGINE = MyISAM) */
+ALTER TABLE t1
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than maxvalue tablespace ts3);
+select * from t1;
+a b c
+1 1 1
+6 1 1
+10 1 1
+15 1 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` int(11) NOT NULL,
+ `c` int(11) NOT NULL,
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION x1 VALUES LESS THAN (5) TABLESPACE = ts1 ENGINE = MyISAM,
+ PARTITION x2 VALUES LESS THAN (10) TABLESPACE = ts2 ENGINE = MyISAM,
+ PARTITION x3 VALUES LESS THAN MAXVALUE TABLESPACE = ts3 ENGINE = MyISAM) */
+drop table if exists t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null)
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than maxvalue tablespace ts3);
+INSERT into t1 values (1, 1, 1);
+INSERT into t1 values (6, 1, 1);
+INSERT into t1 values (10, 1, 1);
+INSERT into t1 values (15, 1, 1);
+select * from t1;
+a b c
+1 1 1
+6 1 1
+10 1 1
+15 1 1
+ALTER TABLE t1
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than maxvalue tablespace ts3);
+select * from t1;
+a b c
+1 1 1
+6 1 1
+10 1 1
+15 1 1
+drop table if exists t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than (15) tablespace ts3);
+INSERT into t1 values (1, 1, 1);
+INSERT into t1 values (6, 1, 1);
+INSERT into t1 values (10, 1, 1);
+INSERT into t1 values (15, 1, 1);
+ERROR HY000: Table has no partition for value 15
+select * from t1;
+a b c
+1 1 1
+6 1 1
+10 1 1
+ALTER TABLE t1
+partition by range (a)
+partitions 3
+(partition x1 values less than (5) tablespace ts1,
+partition x2 values less than (10) tablespace ts2,
+partition x3 values less than (15) tablespace ts3);
+select * from t1;
+a b c
+1 1 1
+6 1 1
+10 1 1
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key(a,b))
+partition by range (a)
+(partition x1 values less than (1));
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11,
+subpartition x12),
+partition x2 values less than (5)
+( subpartition x21,
+subpartition x22)
+);
+SELECT * from t1;
+a b c
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` int(11) NOT NULL,
+ `c` int(11) NOT NULL,
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY HASH (a+b)
+(PARTITION x1 VALUES LESS THAN (1)
+ (SUBPARTITION x11 ENGINE = MyISAM,
+ SUBPARTITION x12 ENGINE = MyISAM),
+ PARTITION x2 VALUES LESS THAN (5)
+ (SUBPARTITION x21 ENGINE = MyISAM,
+ SUBPARTITION x22 ENGINE = MyISAM)) */
+ALTER TABLE t1 ADD COLUMN d int;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) NOT NULL,
+ `b` int(11) NOT NULL,
+ `c` int(11) NOT NULL,
+ `d` int(11) DEFAULT NULL,
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+SUBPARTITION BY HASH (a+b)
+(PARTITION x1 VALUES LESS THAN (1)
+ (SUBPARTITION x11 ENGINE = MyISAM,
+ SUBPARTITION x12 ENGINE = MyISAM),
+ PARTITION x2 VALUES LESS THAN (5)
+ (SUBPARTITION x21 ENGINE = MyISAM,
+ SUBPARTITION x22 ENGINE = MyISAM)) */
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1 engine myisam nodegroup 0,
+subpartition x12 tablespace t2 engine myisam nodegroup 1),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1 engine myisam nodegroup 0,
+subpartition x22 tablespace t2 engine myisam nodegroup 1)
+);
+SELECT * from t1;
+a b c
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1 nodegroup 0,
+subpartition x12 tablespace t2 nodegroup 1),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1 nodegroup 0,
+subpartition x22 tablespace t2 nodegroup 1)
+);
+SELECT * from t1;
+a b c
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 engine myisam nodegroup 0,
+subpartition x12 engine myisam nodegroup 1),
+partition x2 values less than (5)
+( subpartition x21 engine myisam nodegroup 0,
+subpartition x22 engine myisam nodegroup 1)
+);
+INSERT into t1 VALUES (1,1,1);
+INSERT into t1 VALUES (4,1,1);
+INSERT into t1 VALUES (5,1,1);
+ERROR HY000: Table has no partition for value 5
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+ALTER TABLE t1
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 engine myisam nodegroup 0,
+subpartition x12 engine myisam nodegroup 1),
+partition x2 values less than (5)
+( subpartition x21 engine myisam nodegroup 0,
+subpartition x22 engine myisam nodegroup 1)
+);
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1 engine myisam,
+subpartition x12 tablespace t2 engine myisam),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1 engine myisam,
+subpartition x22 tablespace t2 engine myisam)
+);
+INSERT into t1 VALUES (1,1,1);
+INSERT into t1 VALUES (4,1,1);
+INSERT into t1 VALUES (5,1,1);
+ERROR HY000: Table has no partition for value 5
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+ALTER TABLE t1
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1 engine myisam,
+subpartition x12 tablespace t2 engine myisam),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1 engine myisam,
+subpartition x22 tablespace t2 engine myisam)
+);
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1,
+subpartition x12 tablespace t2),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1,
+subpartition x22 tablespace t2)
+);
+INSERT into t1 VALUES (1,1,1);
+INSERT into t1 VALUES (4,1,1);
+INSERT into t1 VALUES (5,1,1);
+ERROR HY000: Table has no partition for value 5
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+ALTER TABLE t1
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 tablespace t1 engine myisam,
+subpartition x12 tablespace t2 engine myisam),
+partition x2 values less than (5)
+( subpartition x21 tablespace t1 engine myisam,
+subpartition x22 tablespace t2 engine myisam)
+);
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+drop table t1;
+CREATE TABLE t1 (
+a int not null,
+b int not null,
+c int not null,
+primary key (a,b))
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 engine myisam,
+subpartition x12 engine myisam),
+partition x2 values less than (5)
+( subpartition x21 engine myisam,
+subpartition x22 engine myisam)
+);
+INSERT into t1 VALUES (1,1,1);
+INSERT into t1 VALUES (4,1,1);
+INSERT into t1 VALUES (5,1,1);
+ERROR HY000: Table has no partition for value 5
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+ALTER TABLE t1
+partition by range (a)
+subpartition by hash (a+b)
+( partition x1 values less than (1)
+( subpartition x11 engine myisam,
+subpartition x12 engine myisam),
+partition x2 values less than (5)
+( subpartition x21 engine myisam,
+subpartition x22 engine myisam)
+);
+SELECT * from t1;
+a b c
+1 1 1
+4 1 1
+drop table t1;
+CREATE TABLE t1 (c1 int default NULL, c2 varchar(30) default NULL,
+c3 date default NULL) engine=myisam
+PARTITION BY RANGE (year(c3)) (PARTITION p0 VALUES LESS THAN (1995),
+PARTITION p1 VALUES LESS THAN (1996) , PARTITION p2 VALUES LESS THAN (1997) ,
+PARTITION p3 VALUES LESS THAN (1998) , PARTITION p4 VALUES LESS THAN (1999) ,
+PARTITION p5 VALUES LESS THAN (2000) , PARTITION p6 VALUES LESS THAN (2001) ,
+PARTITION p7 VALUES LESS THAN (2002) , PARTITION p8 VALUES LESS THAN (2003) ,
+PARTITION p9 VALUES LESS THAN (2004) , PARTITION p10 VALUES LESS THAN (2010),
+PARTITION p11 VALUES LESS THAN MAXVALUE );
+INSERT INTO t1 VALUES (1, 'testing partitions', '1995-07-17'),
+(3, 'testing partitions','1995-07-31'),
+(5, 'testing partitions','1995-08-13'),
+(7, 'testing partitions','1995-08-26'),
+(9, 'testing partitions','1995-09-09'),
+(0, 'testing partitions','2000-07-10'),
+(2, 'testing partitions','2000-07-23'),
+(4, 'testing partitions','2000-08-05'),
+(6, 'testing partitions','2000-08-19'),
+(8, 'testing partitions','2000-09-01');
+SELECT COUNT(*) FROM t1 WHERE c3 BETWEEN '1996-12-31' AND '2000-12-31';
+COUNT(*)
+5
+SELECT COUNT(*) FROM t1 WHERE c3 < '2000-12-31';
+COUNT(*)
+10
+DROP TABLE t1;
+create table t1 (a bigint unsigned)
+partition by range (a)
+(partition p0 values less than (10),
+partition p1 values less than (0));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
+create table t1 (a bigint unsigned)
+partition by range (a)
+(partition p0 values less than (0),
+partition p1 values less than (10));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bigint(20) unsigned DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (0) ENGINE = MyISAM,
+ PARTITION p1 VALUES LESS THAN (10) ENGINE = MyISAM) */
+drop table t1;
+create table t1 (a bigint unsigned)
+partition by range (a)
+(partition p0 values less than (2),
+partition p1 values less than (10));
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bigint(20) unsigned DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (2) ENGINE = MyISAM,
+ PARTITION p1 VALUES LESS THAN (10) ENGINE = MyISAM) */
+insert into t1 values (0xFFFFFFFFFFFFFFFF);
+ERROR HY000: Table has no partition for value 18446744073709551615
+drop table t1;
+create table t1 (a int)
+partition by range (MOD(a,3))
+subpartition by hash(a)
+subpartitions 2
+(partition p0 values less than (1),
+partition p1 values less than (2),
+partition p2 values less than (3),
+partition p3 values less than (4));
+ALTER TABLE t1 DROP PARTITION p3;
+ALTER TABLE t1 DROP PARTITION p1;
+ALTER TABLE t1 DROP PARTITION p2;
+drop table t1;
+create table t1 (a int)
+partition by range (MOD(a,3))
+subpartition by hash(a)
+subpartitions 2
+(partition p0 values less than (1),
+partition p1 values less than (2),
+partition p2 values less than (3),
+partition p3 values less than (4));
+ALTER TABLE t1 DROP PARTITION p0;
+ALTER TABLE t1 DROP PARTITION p1;
+ALTER TABLE t1 DROP PARTITION p2;
+drop table t1;
+create table t1 (a int DEFAULT NULL,
+b varchar(30) DEFAULT NULL,
+c date DEFAULT NULL)
+ENGINE=MYISAM DEFAULT CHARSET=latin1;
+insert into t1 values (1, 'abc', '1995-01-01');
+insert into t1 values (1, 'abc', '1995-01-02');
+insert into t1 values (1, 'abc', '1995-01-03');
+insert into t1 values (1, 'abc', '1995-01-04');
+insert into t1 values (1, 'abc', '1995-01-05');
+insert into t1 values (1, 'abc', '1995-01-06');
+insert into t1 values (1, 'abc', '1995-01-07');
+insert into t1 values (1, 'abc', '1995-01-08');
+insert into t1 values (1, 'abc', '1995-01-09');
+insert into t1 values (1, 'abc', '1995-01-10');
+insert into t1 values (1, 'abc', '1995-01-11');
+insert into t1 values (1, 'abc', '1995-01-12');
+insert into t1 values (1, 'abc', '1995-01-13');
+insert into t1 values (1, 'abc', '1995-01-14');
+insert into t1 values (1, 'abc', '1995-01-15');
+insert into t1 values (1, 'abc', '1997-01-01');
+insert into t1 values (1, 'abc', '1997-01-02');
+insert into t1 values (1, 'abc', '1997-01-03');
+insert into t1 values (1, 'abc', '1997-01-04');
+insert into t1 values (1, 'abc', '1997-01-05');
+insert into t1 values (1, 'abc', '1997-01-06');
+insert into t1 values (1, 'abc', '1997-01-07');
+insert into t1 values (1, 'abc', '1997-01-08');
+insert into t1 values (1, 'abc', '1997-01-09');
+insert into t1 values (1, 'abc', '1997-01-10');
+insert into t1 values (1, 'abc', '1997-01-11');
+insert into t1 values (1, 'abc', '1997-01-12');
+insert into t1 values (1, 'abc', '1997-01-13');
+insert into t1 values (1, 'abc', '1997-01-14');
+insert into t1 values (1, 'abc', '1997-01-15');
+insert into t1 values (1, 'abc', '1998-01-01');
+insert into t1 values (1, 'abc', '1998-01-02');
+insert into t1 values (1, 'abc', '1998-01-03');
+insert into t1 values (1, 'abc', '1998-01-04');
+insert into t1 values (1, 'abc', '1998-01-05');
+insert into t1 values (1, 'abc', '1998-01-06');
+insert into t1 values (1, 'abc', '1998-01-07');
+insert into t1 values (1, 'abc', '1998-01-08');
+insert into t1 values (1, 'abc', '1998-01-09');
+insert into t1 values (1, 'abc', '1998-01-10');
+insert into t1 values (1, 'abc', '1998-01-11');
+insert into t1 values (1, 'abc', '1998-01-12');
+insert into t1 values (1, 'abc', '1998-01-13');
+insert into t1 values (1, 'abc', '1998-01-14');
+insert into t1 values (1, 'abc', '1998-01-15');
+insert into t1 values (1, 'abc', '1999-01-01');
+insert into t1 values (1, 'abc', '1999-01-02');
+insert into t1 values (1, 'abc', '1999-01-03');
+insert into t1 values (1, 'abc', '1999-01-04');
+insert into t1 values (1, 'abc', '1999-01-05');
+insert into t1 values (1, 'abc', '1999-01-06');
+insert into t1 values (1, 'abc', '1999-01-07');
+insert into t1 values (1, 'abc', '1999-01-08');
+insert into t1 values (1, 'abc', '1999-01-09');
+insert into t1 values (1, 'abc', '1999-01-10');
+insert into t1 values (1, 'abc', '1999-01-11');
+insert into t1 values (1, 'abc', '1999-01-12');
+insert into t1 values (1, 'abc', '1999-01-13');
+insert into t1 values (1, 'abc', '1999-01-14');
+insert into t1 values (1, 'abc', '1999-01-15');
+insert into t1 values (1, 'abc', '2000-01-01');
+insert into t1 values (1, 'abc', '2000-01-02');
+insert into t1 values (1, 'abc', '2000-01-03');
+insert into t1 values (1, 'abc', '2000-01-04');
+insert into t1 values (1, 'abc', '2000-01-05');
+insert into t1 values (1, 'abc', '2000-01-06');
+insert into t1 values (1, 'abc', '2000-01-07');
+insert into t1 values (1, 'abc', '2000-01-08');
+insert into t1 values (1, 'abc', '2000-01-09');
+insert into t1 values (1, 'abc', '2000-01-15');
+insert into t1 values (1, 'abc', '2000-01-11');
+insert into t1 values (1, 'abc', '2000-01-12');
+insert into t1 values (1, 'abc', '2000-01-13');
+insert into t1 values (1, 'abc', '2000-01-14');
+insert into t1 values (1, 'abc', '2000-01-15');
+insert into t1 values (1, 'abc', '2001-01-01');
+insert into t1 values (1, 'abc', '2001-01-02');
+insert into t1 values (1, 'abc', '2001-01-03');
+insert into t1 values (1, 'abc', '2001-01-04');
+insert into t1 values (1, 'abc', '2001-01-05');
+insert into t1 values (1, 'abc', '2001-01-06');
+insert into t1 values (1, 'abc', '2001-01-07');
+insert into t1 values (1, 'abc', '2001-01-08');
+insert into t1 values (1, 'abc', '2001-01-09');
+insert into t1 values (1, 'abc', '2001-01-15');
+insert into t1 values (1, 'abc', '2001-01-11');
+insert into t1 values (1, 'abc', '2001-01-12');
+insert into t1 values (1, 'abc', '2001-01-13');
+insert into t1 values (1, 'abc', '2001-01-14');
+insert into t1 values (1, 'abc', '2001-01-15');
+alter table t1
+partition by range (year(c))
+(partition p5 values less than (2000), partition p10 values less than (2010));
+alter table t1
+reorganize partition p5 into
+(partition p1 values less than (1996),
+partition p2 values less than (1997),
+partition p3 values less than (1998),
+partition p4 values less than (1999),
+partition p5 values less than (2000));
+drop table t1;
+CREATE TABLE t1 (a date)
+PARTITION BY RANGE (TO_DAYS(a))
+(PARTITION p3xx VALUES LESS THAN (TO_DAYS('2004-01-01')),
+PARTITION p401 VALUES LESS THAN (TO_DAYS('2004-02-01')),
+PARTITION p402 VALUES LESS THAN (TO_DAYS('2004-03-01')),
+PARTITION p403 VALUES LESS THAN (TO_DAYS('2004-04-01')),
+PARTITION p404 VALUES LESS THAN (TO_DAYS('2004-05-01')),
+PARTITION p405 VALUES LESS THAN (TO_DAYS('2004-06-01')),
+PARTITION p406 VALUES LESS THAN (TO_DAYS('2004-07-01')),
+PARTITION p407 VALUES LESS THAN (TO_DAYS('2004-08-01')),
+PARTITION p408 VALUES LESS THAN (TO_DAYS('2004-09-01')),
+PARTITION p409 VALUES LESS THAN (TO_DAYS('2004-10-01')),
+PARTITION p410 VALUES LESS THAN (TO_DAYS('2004-11-01')),
+PARTITION p411 VALUES LESS THAN (TO_DAYS('2004-12-01')),
+PARTITION p412 VALUES LESS THAN (TO_DAYS('2005-01-01')),
+PARTITION p501 VALUES LESS THAN (TO_DAYS('2005-02-01')),
+PARTITION p502 VALUES LESS THAN (TO_DAYS('2005-03-01')),
+PARTITION p503 VALUES LESS THAN (TO_DAYS('2005-04-01')),
+PARTITION p504 VALUES LESS THAN (TO_DAYS('2005-05-01')),
+PARTITION p505 VALUES LESS THAN (TO_DAYS('2005-06-01')),
+PARTITION p506 VALUES LESS THAN (TO_DAYS('2005-07-01')),
+PARTITION p507 VALUES LESS THAN (TO_DAYS('2005-08-01')),
+PARTITION p508 VALUES LESS THAN (TO_DAYS('2005-09-01')),
+PARTITION p509 VALUES LESS THAN (TO_DAYS('2005-10-01')),
+PARTITION p510 VALUES LESS THAN (TO_DAYS('2005-11-01')),
+PARTITION p511 VALUES LESS THAN (TO_DAYS('2005-12-01')),
+PARTITION p512 VALUES LESS THAN (TO_DAYS('2006-01-01')),
+PARTITION p601 VALUES LESS THAN (TO_DAYS('2006-02-01')),
+PARTITION p602 VALUES LESS THAN (TO_DAYS('2006-03-01')),
+PARTITION p603 VALUES LESS THAN (TO_DAYS('2006-04-01')),
+PARTITION p604 VALUES LESS THAN (TO_DAYS('2006-05-01')),
+PARTITION p605 VALUES LESS THAN (TO_DAYS('2006-06-01')),
+PARTITION p606 VALUES LESS THAN (TO_DAYS('2006-07-01')),
+PARTITION p607 VALUES LESS THAN (TO_DAYS('2006-08-01')));
+INSERT INTO t1 VALUES ('2003-01-13'),('2003-06-20'),('2003-08-30');
+INSERT INTO t1 VALUES ('2003-04-13'),('2003-07-20'),('2003-10-30');
+INSERT INTO t1 VALUES ('2003-05-13'),('2003-11-20'),('2003-12-30');
+INSERT INTO t1 VALUES ('2004-01-13'),('2004-01-20'),('2004-01-30');
+INSERT INTO t1 VALUES ('2004-02-13'),('2004-02-20'),('2004-02-28');
+INSERT INTO t1 VALUES ('2004-03-13'),('2004-03-20'),('2004-03-30');
+INSERT INTO t1 VALUES ('2004-04-13'),('2004-04-20'),('2004-04-30');
+INSERT INTO t1 VALUES ('2004-05-13'),('2004-05-20'),('2004-05-30');
+INSERT INTO t1 VALUES ('2004-06-13'),('2004-06-20'),('2004-06-30');
+INSERT INTO t1 VALUES ('2004-07-13'),('2004-07-20'),('2004-07-30');
+INSERT INTO t1 VALUES ('2004-08-13'),('2004-08-20'),('2004-08-30');
+INSERT INTO t1 VALUES ('2004-09-13'),('2004-09-20'),('2004-09-30');
+INSERT INTO t1 VALUES ('2004-10-13'),('2004-10-20'),('2004-10-30');
+INSERT INTO t1 VALUES ('2004-11-13'),('2004-11-20'),('2004-11-30');
+INSERT INTO t1 VALUES ('2004-12-13'),('2004-12-20'),('2004-12-30');
+INSERT INTO t1 VALUES ('2005-01-13'),('2005-01-20'),('2005-01-30');
+INSERT INTO t1 VALUES ('2005-02-13'),('2005-02-20'),('2005-02-28');
+INSERT INTO t1 VALUES ('2005-03-13'),('2005-03-20'),('2005-03-30');
+INSERT INTO t1 VALUES ('2005-04-13'),('2005-04-20'),('2005-04-30');
+INSERT INTO t1 VALUES ('2005-05-13'),('2005-05-20'),('2005-05-30');
+INSERT INTO t1 VALUES ('2005-06-13'),('2005-06-20'),('2005-06-30');
+INSERT INTO t1 VALUES ('2005-07-13'),('2005-07-20'),('2005-07-30');
+INSERT INTO t1 VALUES ('2005-08-13'),('2005-08-20'),('2005-08-30');
+INSERT INTO t1 VALUES ('2005-09-13'),('2005-09-20'),('2005-09-30');
+INSERT INTO t1 VALUES ('2005-10-13'),('2005-10-20'),('2005-10-30');
+INSERT INTO t1 VALUES ('2005-11-13'),('2005-11-20'),('2005-11-30');
+INSERT INTO t1 VALUES ('2005-12-13'),('2005-12-20'),('2005-12-30');
+INSERT INTO t1 VALUES ('2006-01-13'),('2006-01-20'),('2006-01-30');
+INSERT INTO t1 VALUES ('2006-02-13'),('2006-02-20'),('2006-02-28');
+INSERT INTO t1 VALUES ('2006-03-13'),('2006-03-20'),('2006-03-30');
+INSERT INTO t1 VALUES ('2006-04-13'),('2006-04-20'),('2006-04-30');
+INSERT INTO t1 VALUES ('2006-05-13'),('2006-05-20'),('2006-05-30');
+INSERT INTO t1 VALUES ('2006-06-13'),('2006-06-20'),('2006-06-30');
+INSERT INTO t1 VALUES ('2006-07-13'),('2006-07-20'),('2006-07-30');
+SELECT * FROM t1
+WHERE a >= '2004-07-01' AND a <= '2004-09-30';
+a
+2004-07-13
+2004-07-20
+2004-07-30
+2004-08-13
+2004-08-20
+2004-08-30
+2004-09-13
+2004-09-20
+2004-09-30
+EXPLAIN PARTITIONS SELECT * FROM t1
+WHERE a >= '2004-07-01' AND a <= '2004-09-30';
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p3xx,p407,p408,p409 ALL NULL NULL NULL NULL 18 Using where
+SELECT * from t1
+WHERE (a >= '2004-07-01' AND a <= '2004-09-30') OR
+(a >= '2005-07-01' AND a <= '2005-09-30');
+a
+2004-07-13
+2004-07-20
+2004-07-30
+2004-08-13
+2004-08-20
+2004-08-30
+2004-09-13
+2004-09-20
+2004-09-30
+2005-07-13
+2005-07-20
+2005-07-30
+2005-08-13
+2005-08-20
+2005-08-30
+2005-09-13
+2005-09-20
+2005-09-30
+EXPLAIN PARTITIONS SELECT * from t1
+WHERE (a >= '2004-07-01' AND a <= '2004-09-30') OR
+(a >= '2005-07-01' AND a <= '2005-09-30');
+id select_type table partitions type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 p3xx,p407,p408,p409,p507,p508,p509 ALL NULL NULL NULL NULL 27 Using where
+DROP TABLE t1;
+create table t1 (a int);
+insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+CREATE TABLE t2 (
+defid int(10) unsigned NOT NULL,
+day int(10) unsigned NOT NULL,
+count int(10) unsigned NOT NULL,
+filler char(200),
+KEY (defid,day)
+)
+PARTITION BY RANGE (day) (
+PARTITION p7 VALUES LESS THAN (20070401) ,
+PARTITION p8 VALUES LESS THAN (20070501));
+insert into t2 select 20, 20070311, 1, 'filler' from t1 A, t1 B;
+insert into t2 select 20, 20070411, 1, 'filler' from t1 A, t1 B;
+insert into t2 values(52, 20070321, 123, 'filler') ;
+insert into t2 values(52, 20070322, 456, 'filler') ;
+select sum(count) from t2 ch where ch.defid in (50,52) and ch.day between 20070320 and 20070401 group by defid;
+sum(count)
+579
+drop table t1, t2;
diff --git a/mysql-test/r/partition_rename_longfilename.result b/mysql-test/r/partition_rename_longfilename.result
new file mode 100644
index 00000000000..e6bea554481
--- /dev/null
+++ b/mysql-test/r/partition_rename_longfilename.result
@@ -0,0 +1,66 @@
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (a INT)
+PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (6),
+PARTITION `p1....................` VALUES LESS THAN (9),
+PARTITION p2 VALUES LESS THAN MAXVALUE);
+# List of files in database `test`, all original t1-files here
+t1#P#p0.MYD
+t1#P#p0.MYI
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t1#P#p2.MYD
+t1#P#p2.MYI
+t1.frm
+t1.par
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
+# Renaming to a file name where the first partition is 155 chars
+# and the second partition is 255 chars
+RENAME TABLE t1 TO `t2_............................end`;
+# List of files in database `test`, should not be any t1-files here
+# List of files in database `test`, should be all t2-files here
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend#P#p0.MYD
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend#P#p0.MYI
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend#P#p2.MYD
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend#P#p2.MYI
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend.frm
+t2_@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002eend.par
+SELECT * FROM `t2_............................end`;
+a
+1
+10
+2
+3
+4
+5
+6
+7
+8
+9
+RENAME TABLE `t2_............................end` to t1;
+# List of files in database `test`, should be all t1-files here
+t1#P#p0.MYD
+t1#P#p0.MYI
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYD
+t1#P#p1@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e@002e.MYI
+t1#P#p2.MYD
+t1#P#p2.MYI
+t1.frm
+t1.par
+SELECT * FROM t1;
+a
+1
+10
+2
+3
+4
+5
+6
+7
+8
+9
+DROP TABLE t1;
+# Should not be any files left here
+# End of bug#30102 test.
diff --git a/mysql-test/r/partition_symlink.result b/mysql-test/r/partition_symlink.result
new file mode 100644
index 00000000000..60184d11d9c
--- /dev/null
+++ b/mysql-test/r/partition_symlink.result
@@ -0,0 +1,123 @@
+DROP TABLE IF EXISTS t1;
+DROP DATABASE IF EXISTS mysqltest2;
+# Creating two non colliding tables mysqltest2.t1 and test.t1
+# test.t1 have partitions in mysqltest2-directory!
+# user root:
+CREATE USER mysqltest_1@localhost;
+CREATE DATABASE mysqltest2;
+USE mysqltest2;
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (0);
+# user mysqltest_1:
+USE test;
+CREATE TABLE t1 (a INT)
+PARTITION BY LIST (a) (
+PARTITION p0 VALUES IN (0)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp',
+PARTITION p1 VALUES IN (1)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp',
+PARTITION p2 VALUES IN (2)
+);
+# without the patch for bug#32091 this would create
+# files mysqltest2/t1.MYD + .MYI and possible overwrite
+# the mysqltest2.t1 table (depending on bug#32111)
+ALTER TABLE t1 REMOVE PARTITIONING;
+INSERT INTO t1 VALUES (1);
+SELECT * FROM t1;
+a
+1
+# user root:
+USE mysqltest2;
+FLUSH TABLES;
+# if the patch works, this should be different
+# and before the patch they were the same!
+SELECT * FROM t1;
+a
+0
+USE test;
+SELECT * FROM t1;
+a
+1
+DROP TABLE t1;
+DROP DATABASE mysqltest2;
+# test that symlinks can not overwrite files when CREATE TABLE
+# user root:
+CREATE DATABASE mysqltest2;
+USE mysqltest2;
+CREATE TABLE t1 (a INT)
+PARTITION BY LIST (a) (
+PARTITION p0 VALUES IN (0)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp',
+PARTITION p1 VALUES IN (1)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ );
+# user mysqltest_1:
+USE test;
+CREATE TABLE t1 (a INT)
+PARTITION BY LIST (a) (
+PARTITION p0 VALUES IN (0)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp',
+PARTITION p1 VALUES IN (1)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ );
+Got one of the listed errors
+CREATE TABLE t1 (a INT)
+PARTITION BY LIST (a) (
+PARTITION p0 VALUES IN (0)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp',
+PARTITION p1 VALUES IN (1)
+DATA DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY 'MYSQLTEST_VARDIR/tmp'
+ );
+Got one of the listed errors
+# user root (cleanup):
+DROP DATABASE mysqltest2;
+USE test;
+DROP USER mysqltest_1@localhost;
+create table t2 (i int )
+partition by range (i)
+(
+partition p01 values less than (1000)
+data directory="MYSQLTEST_VARDIR/tmp"
+ index directory="MYSQLTEST_VARDIR/tmp"
+);
+set @org_mode=@@sql_mode;
+set @@sql_mode='NO_DIR_IN_CREATE';
+select @@sql_mode;
+@@sql_mode
+NO_DIR_IN_CREATE
+create table t1 (i int )
+partition by range (i)
+(
+partition p01 values less than (1000)
+data directory='/not/existing'
+ index directory='/not/existing'
+);
+Warnings:
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `i` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+/*!50100 PARTITION BY RANGE (i)
+(PARTITION p01 VALUES LESS THAN (1000) ENGINE = MyISAM) */
+DROP TABLE t1, t2;
+set @@sql_mode=@org_mode;
+create table t1 (a int)
+partition by key (a)
+(partition p0 DATA DIRECTORY 'part-data' INDEX DIRECTORY 'part-data');
+Got one of the listed errors
+create table t1 (a int)
+partition by key (a)
+(partition p0,
+partition p1 DATA DIRECTORY 'part-data' INDEX DIRECTORY 'part-data');
+Got one of the listed errors
diff --git a/mysql-test/r/partition_windows.result b/mysql-test/r/partition_windows.result
new file mode 100644
index 00000000000..756690925f8
--- /dev/null
+++ b/mysql-test/r/partition_windows.result
@@ -0,0 +1,30 @@
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+c1 int(10) unsigned NOT NULL AUTO_INCREMENT,
+c2 varchar(30) NOT NULL,
+c3 smallint(5) unsigned DEFAULT NULL,
+PRIMARY KEY (c1)
+) ENGINE = MYISAM
+PARTITION BY HASH(c1)(
+PARTITION p0
+DATA DIRECTORY = 'C:/mysqltest/p0Data'
+ INDEX DIRECTORY = 'D:/mysqltest/p0Index',
+PARTITION p1,
+PARTITION p2
+DATA DIRECTORY = 'E:/mysqltest/p2Data'
+ INDEX DIRECTORY = 'F:/mysqltest/p2Index'
+);
+Warnings:
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
+INSERT INTO t1 VALUES (NULL, "first", 1);
+INSERT INTO t1 VALUES (NULL, "second", 2);
+INSERT INTO t1 VALUES (NULL, "third", 3);
+ALTER TABLE t1 ADD PARTITION (PARTITION p3 DATA DIRECTORY = 'G:/mysqltest/p3Data' INDEX DIRECTORY = 'H:/mysqltest/p3Index');
+Warnings:
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
+INSERT INTO t1 VALUES (NULL, "last", 4);
+DROP TABLE t1;
diff --git a/mysql-test/r/plugin.result b/mysql-test/r/plugin.result
new file mode 100644
index 00000000000..782d2a5a9a4
--- /dev/null
+++ b/mysql-test/r/plugin.result
@@ -0,0 +1,56 @@
+CREATE TABLE t1(a int) ENGINE=EXAMPLE;
+Warnings:
+Warning 1286 Unknown table engine 'EXAMPLE'
+Warning 1266 Using storage engine MyISAM for table 't1'
+DROP TABLE t1;
+INSTALL PLUGIN example SONAME 'ha_example.so';
+INSTALL PLUGIN EXAMPLE SONAME 'ha_example.so';
+ERROR HY000: Function 'EXAMPLE' already exists
+UNINSTALL PLUGIN example;
+INSTALL PLUGIN example SONAME 'ha_example.so';
+CREATE TABLE t1(a int) ENGINE=EXAMPLE;
+SELECT * FROM t1;
+a
+DROP TABLE t1;
+UNINSTALL PLUGIN example;
+UNINSTALL PLUGIN EXAMPLE;
+ERROR 42000: PLUGIN EXAMPLE does not exist
+UNINSTALL PLUGIN non_exist;
+ERROR 42000: PLUGIN non_exist does not exist
+#
+# Bug#32034: check_func_enum() does not check correct values but set it
+# to impossible int val
+#
+INSTALL PLUGIN example SONAME 'ha_example.so';
+SET GLOBAL example_enum_var= e1;
+SET GLOBAL example_enum_var= e2;
+SET GLOBAL example_enum_var= impossible;
+ERROR 42000: Variable 'enum_var' can't be set to the value of 'impossible'
+UNINSTALL PLUGIN example;
+INSTALL PLUGIN example SONAME 'ha_example.so';
+select @@session.sql_mode into @old_sql_mode;
+set session sql_mode='';
+set global example_ulong_var=500;
+select @@global.example_ulong_var;
+@@global.example_ulong_var
+500
+set global example_ulong_var=1111;
+Warnings:
+Warning 1292 Truncated incorrect ulong_var value: '1111'
+select @@global.example_ulong_var;
+@@global.example_ulong_var
+1000
+set session sql_mode='STRICT_ALL_TABLES';
+set global example_ulong_var=500;
+select @@global.example_ulong_var;
+@@global.example_ulong_var
+500
+set global example_ulong_var=1111;
+ERROR 42000: Variable 'ulong_var' can't be set to the value of '1111'
+select @@global.example_ulong_var;
+@@global.example_ulong_var
+500
+set session sql_mode=@old_sql_mode;
+set session old=bla;
+ERROR HY000: Variable 'old' is a read only variable
+UNINSTALL PLUGIN example;
diff --git a/mysql-test/r/plugin_load.result b/mysql-test/r/plugin_load.result
new file mode 100644
index 00000000000..33116cc20ab
--- /dev/null
+++ b/mysql-test/r/plugin_load.result
@@ -0,0 +1,3 @@
+SELECT @@global.example_enum_var = 'e2';
+@@global.example_enum_var = 'e2'
+1
diff --git a/mysql-test/r/profiling.result b/mysql-test/r/profiling.result
index a9ada576b4b..c96074eb830 100644
--- a/mysql-test/r/profiling.result
+++ b/mysql-test/r/profiling.result
@@ -11,6 +11,7 @@ select @@profiling;
0
set global profiling = ON;
ERROR HY000: Variable 'profiling' is a SESSION variable and can't be used with SET GLOBAL
+set @start_value= @@global.profiling_history_size;
set global profiling_history_size=100;
show global variables like 'profil%';
Variable_name Value
@@ -412,4 +413,5 @@ Warnings:
Note 1051 Unknown table 'test.v1'
drop function if exists f1;
set session profiling = OFF;
+set global profiling_history_size= @start_value;
End of 5.0 tests
diff --git a/mysql-test/r/ps.result b/mysql-test/r/ps.result
index 43c50998e20..1f8a077af40 100644
--- a/mysql-test/r/ps.result
+++ b/mysql-test/r/ps.result
@@ -1,4 +1,4 @@
-drop table if exists t1,t2;
+drop table if exists t1,t2,t3,t4;
drop database if exists client_test_db;
create table t1
(
@@ -502,7 +502,8 @@ deallocate prepare stmt;
create table t1 (a varchar(20));
insert into t1 values ('foo');
prepare stmt FROM 'SELECT char_length (a) FROM t1';
-ERROR 42000: FUNCTION test.char_length does not exist
+prepare stmt2 FROM 'SELECT not_a_function (a) FROM t1';
+ERROR 42000: FUNCTION test.not_a_function does not exist
drop table t1;
prepare stmt from "SELECT SQL_CALC_FOUND_ROWS 'foo' UNION SELECT 'bar' LIMIT 0";
execute stmt;
@@ -802,6 +803,8 @@ select @@max_prepared_stmt_count;
@@max_prepared_stmt_count
16382
set global max_prepared_stmt_count=-1;
+Warnings:
+Warning 1292 Truncated incorrect max_prepared_stmt_count value: '-1'
select @@max_prepared_stmt_count;
@@max_prepared_stmt_count
0
@@ -899,6 +902,12 @@ show status like 'prepared_stmt_count';
Variable_name Value
Prepared_stmt_count 3
deallocate prepare stmt;
+select @@max_prepared_stmt_count;
+@@max_prepared_stmt_count
+3
+show status like 'prepared_stmt_count';
+Variable_name Value
+Prepared_stmt_count 0
set global max_prepared_stmt_count= @old_max_prepared_stmt_count;
drop table if exists t1;
create temporary table if not exists t1 (a1 int);
@@ -1084,12 +1093,12 @@ execute stmt2;
show create table mysqltest.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) default NULL
+ `c` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
show create table mysqltest.t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `test` varchar(4) character set latin1 NOT NULL default ''
+ `test` varchar(4) CHARACTER SET latin1 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8
drop table mysqltest.t1;
drop table mysqltest.t2;
@@ -1099,12 +1108,12 @@ execute stmt2;
show create table mysqltest.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 default NULL
+ `c` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show create table mysqltest.t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `test` varchar(4) NOT NULL default ''
+ `test` varchar(4) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop database mysqltest;
deallocate prepare stmt1;
@@ -1147,7 +1156,8 @@ End of 4.1 tests.
create table t1 (a varchar(20));
insert into t1 values ('foo');
prepare stmt FROM 'SELECT char_length (a) FROM t1';
-ERROR 42000: FUNCTION test.char_length does not exist
+prepare stmt2 FROM 'SELECT not_a_function (a) FROM t1';
+ERROR 42000: FUNCTION test.not_a_function does not exist
drop table t1;
create table t1 (a char(3) not null, b char(3) not null,
c char(3) not null, primary key (a, b, c));
@@ -1184,13 +1194,13 @@ SET @aux= "SELECT COUNT(*)
prepare my_stmt from @aux;
execute my_stmt;
COUNT(*)
-37
+39
execute my_stmt;
COUNT(*)
-37
+39
execute my_stmt;
COUNT(*)
-37
+39
deallocate prepare my_stmt;
drop procedure if exists p1|
drop table if exists t1|
@@ -1653,8 +1663,8 @@ execute stmt;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`i`)
+ `i` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`i`)
) ENGINE=MyISAM AUTO_INCREMENT=100 DEFAULT CHARSET=latin1 COMMENT='comment for table t1'
flush tables;
select * from t2;
@@ -1663,11 +1673,27 @@ execute stmt;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) NOT NULL auto_increment,
- PRIMARY KEY (`i`)
+ `i` int(11) NOT NULL AUTO_INCREMENT,
+ PRIMARY KEY (`i`)
) ENGINE=MyISAM AUTO_INCREMENT=100 DEFAULT CHARSET=latin1 COMMENT='comment for table t1'
deallocate prepare stmt;
drop table t1, t2;
+set @old_character_set_server= @@character_set_server;
+set @@character_set_server= latin1;
+prepare stmt from "create database mysqltest_1";
+execute stmt;
+show create database mysqltest_1;
+Database Create Database
+mysqltest_1 CREATE DATABASE `mysqltest_1` /*!40100 DEFAULT CHARACTER SET latin1 */
+drop database mysqltest_1;
+set @@character_set_server= utf8;
+execute stmt;
+show create database mysqltest_1;
+Database Create Database
+mysqltest_1 CREATE DATABASE `mysqltest_1` /*!40100 DEFAULT CHARACTER SET utf8 */
+drop database mysqltest_1;
+deallocate prepare stmt;
+set @@character_set_server= @old_character_set_server;
drop tables if exists t1;
create table t1 (id int primary key auto_increment, value varchar(10));
insert into t1 (id, value) values (1, 'FIRST'), (2, 'SECOND'), (3, 'THIRD');
@@ -1690,7 +1716,7 @@ execute stmt using @a;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `?` decimal(2,1) default NULL
+ `?` decimal(2,1) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
drop table if exists t1;
@@ -1721,73 +1747,73 @@ create table t1 (a int, b int);
drop view v1;
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` latin1 latin1_swedish_ci
drop view v1;
prepare stmt from "create view v1 (c,d) as select a,b from t1";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d` from `t1` latin1 latin1_swedish_ci
select * from v1;
c d
drop view v1;
execute stmt;
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d` from `t1` latin1 latin1_swedish_ci
select * from v1;
c d
drop view v1;
prepare stmt from "create view v1 (c) as select b+1 from t1";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
select * from v1;
c
drop view v1;
execute stmt;
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
select * from v1;
c
drop view v1;
prepare stmt from "create view v1 (c,d,e,f) as select a,b,a in (select a+2 from t1), a = all (select a from t1) from t1";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d`,`t1`.`a` in (select (`t1`.`a` + 2) AS `a+2` from `t1`) AS `e`,`t1`.`a` = all (select `t1`.`a` AS `a` from `t1`) AS `f` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d`,`t1`.`a` in (select (`t1`.`a` + 2) AS `a+2` from `t1`) AS `e`,`t1`.`a` = all (select `t1`.`a` AS `a` from `t1`) AS `f` from `t1` latin1 latin1_swedish_ci
select * from v1;
c d e f
drop view v1;
execute stmt;
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d`,`t1`.`a` in (select (`t1`.`a` + 2) AS `a+2` from `t1`) AS `e`,`t1`.`a` = all (select `t1`.`a` AS `a` from `t1`) AS `f` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `c`,`t1`.`b` AS `d`,`t1`.`a` in (select (`t1`.`a` + 2) AS `a+2` from `t1`) AS `e`,`t1`.`a` = all (select `t1`.`a` AS `a` from `t1`) AS `f` from `t1` latin1 latin1_swedish_ci
select * from v1;
c d e f
drop view v1;
prepare stmt from "create or replace view v1 as select 1";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
select * from v1;
1
1
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
select * from v1;
1
1
@@ -1795,8 +1821,8 @@ drop view v1;
prepare stmt from "create view v1 as select 1, 1";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`,1 AS `My_exp_1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`,1 AS `My_exp_1` latin1 latin1_swedish_ci
select * from v1;
1 My_exp_1
1 1
@@ -1804,8 +1830,8 @@ drop view v1;
execute stmt;
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`,1 AS `My_exp_1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`,1 AS `My_exp_1` latin1 latin1_swedish_ci
select * from v1;
1 My_exp_1
1 1
@@ -1813,32 +1839,32 @@ drop view v1;
prepare stmt from "create view v1 (x) as select a from t1 where a > 1";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `x` from `t1` where (`t1`.`a` > 1)
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `x` from `t1` where (`t1`.`a` > 1) latin1 latin1_swedish_ci
select * from v1;
x
drop view v1;
execute stmt;
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `x` from `t1` where (`t1`.`a` > 1)
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `x` from `t1` where (`t1`.`a` > 1) latin1 latin1_swedish_ci
select * from v1;
x
drop view v1;
prepare stmt from "create view v1 as select * from `t1` `b`";
execute stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `b`.`a` AS `a`,`b`.`b` AS `b` from `t1` `b`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `b`.`a` AS `a`,`b`.`b` AS `b` from `t1` `b` latin1 latin1_swedish_ci
select * from v1;
a b
drop view v1;
execute stmt;
deallocate prepare stmt;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `b`.`a` AS `a`,`b`.`b` AS `b` from `t1` `b`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `b`.`a` AS `a`,`b`.`b` AS `b` from `t1` `b` latin1 latin1_swedish_ci
select * from v1;
a b
drop view v1;
@@ -1892,3 +1918,1008 @@ execute stmt using @arg;
-12345.5432100000
deallocate prepare stmt;
End of 5.0 tests.
+create procedure proc_1() reset query cache;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int deterministic begin reset query cache; return 1; end|
+ERROR 0A000: RESET is not allowed in stored function or trigger
+create function func_1() returns int deterministic begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: RESET is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "reset query cache";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() reset master;
+create function func_1() returns int begin reset master; return 1; end|
+ERROR 0A000: RESET is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: RESET is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "reset master";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() reset slave;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin reset slave; return 1; end|
+ERROR 0A000: RESET is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: RESET is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "reset slave";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1(a integer) kill a;
+call proc_1(0);
+ERROR HY000: Unknown thread id: 0
+call proc_1(0);
+ERROR HY000: Unknown thread id: 0
+call proc_1(0);
+ERROR HY000: Unknown thread id: 0
+drop procedure proc_1;
+create function func_1() returns int begin kill 0; return 1; end|
+select func_1() from dual;
+ERROR HY000: Unknown thread id: 0
+select func_1() from dual;
+ERROR HY000: Unknown thread id: 0
+select func_1() from dual;
+ERROR HY000: Unknown thread id: 0
+drop function func_1;
+prepare abc from "kill 0";
+execute abc;
+ERROR HY000: Unknown thread id: 0
+execute abc;
+ERROR HY000: Unknown thread id: 0
+execute abc;
+ERROR HY000: Unknown thread id: 0
+deallocate prepare abc;
+create procedure proc_1() flush hosts;
+call proc_1();
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush hosts; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush hosts";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() flush privileges;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush privileges; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush privileges";
+deallocate prepare abc;
+create procedure proc_1() flush tables with read lock;
+call proc_1();
+unlock tables;
+call proc_1();
+unlock tables;
+call proc_1();
+unlock tables;
+create function func_1() returns int begin flush tables with read lock; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush tables with read lock";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+unlock tables;
+create procedure proc_1() flush tables;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush tables; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush tables";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() flush tables;
+flush tables;
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+call proc_1();
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+call proc_1();
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+call proc_1();
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+flush tables;
+create function func_1() returns int begin flush tables; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+flush tables;
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+prepare abc from "flush tables";
+execute abc;
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+execute abc;
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+execute abc;
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql general_log 0 0
+select Host, User from mysql.user limit 0;
+Host User
+select Host, Db from mysql.host limit 0;
+Host Db
+show open tables from mysql;
+Database Table In_use Name_locked
+mysql user 0 0
+mysql general_log 0 0
+mysql host 0 0
+flush tables;
+deallocate prepare abc;
+create procedure proc_1() flush logs;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush logs; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush logs";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() flush status;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush status; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush status";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() flush slave;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush slave; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush slave";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() flush master;
+create function func_1() returns int begin flush master; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush master";
+deallocate prepare abc;
+create procedure proc_1() flush des_key_file;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush des_key_file; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush des_key_file";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() flush user_resources;
+call proc_1();
+call proc_1();
+call proc_1();
+create function func_1() returns int begin flush user_resources; return 1; end|
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+create function func_1() returns int begin call proc_1(); return 1; end|
+select func_1(), func_1(), func_1() from dual;
+ERROR 0A000: FLUSH is not allowed in stored function or trigger
+drop function func_1;
+drop procedure proc_1;
+prepare abc from "flush user_resources";
+execute abc;
+execute abc;
+execute abc;
+deallocate prepare abc;
+create procedure proc_1() start slave;
+drop procedure proc_1;
+create function func_1() returns int begin start slave; return 1; end|
+drop function func_1;
+prepare abc from "start slave";
+deallocate prepare abc;
+create procedure proc_1() stop slave;
+drop procedure proc_1;
+create function func_1() returns int begin stop slave; return 1; end|
+drop function func_1;
+prepare abc from "stop slave";
+deallocate prepare abc;
+create procedure proc_1() show binlog events;
+drop procedure proc_1;
+create function func_1() returns int begin show binlog events; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show binlog events";
+deallocate prepare abc;
+create procedure proc_1() show slave status;
+drop procedure proc_1;
+create function func_1() returns int begin show slave status; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show slave status";
+deallocate prepare abc;
+create procedure proc_1() show master status;
+drop procedure proc_1;
+create function func_1() returns int begin show master status; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show master status";
+deallocate prepare abc;
+create procedure proc_1() show master logs;
+drop procedure proc_1;
+create function func_1() returns int begin show master logs; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show master logs";
+deallocate prepare abc;
+create procedure proc_1() show events;
+call proc_1();
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+call proc_1();
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+call proc_1();
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+drop procedure proc_1;
+create function func_1() returns int begin show events; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show events";
+execute abc;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+execute abc;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+execute abc;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+deallocate prepare abc;
+drop procedure if exists a;
+create procedure a() select 42;
+create procedure proc_1(a char(2)) show create procedure a;
+call proc_1("bb");
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` PROCEDURE `a`()
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
+call proc_1("bb");
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` PROCEDURE `a`()
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
+call proc_1("bb");
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` PROCEDURE `a`()
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
+drop procedure proc_1;
+create function func_1() returns int begin show create procedure a; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show create procedure a";
+execute abc;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` PROCEDURE `a`()
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
+execute abc;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` PROCEDURE `a`()
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
+execute abc;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` PROCEDURE `a`()
+select 42 latin1 latin1_swedish_ci latin1_swedish_ci
+deallocate prepare abc;
+drop procedure a;
+drop function if exists a;
+create function a() returns int return 42+13;
+create procedure proc_1(a char(2)) show create function a;
+call proc_1("bb");
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` FUNCTION `a`() RETURNS int(11)
+return 42+13 latin1 latin1_swedish_ci latin1_swedish_ci
+call proc_1("bb");
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` FUNCTION `a`() RETURNS int(11)
+return 42+13 latin1 latin1_swedish_ci latin1_swedish_ci
+call proc_1("bb");
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` FUNCTION `a`() RETURNS int(11)
+return 42+13 latin1 latin1_swedish_ci latin1_swedish_ci
+drop procedure proc_1;
+create function func_1() returns int begin show create function a; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show create function a";
+execute abc;
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` FUNCTION `a`() RETURNS int(11)
+return 42+13 latin1 latin1_swedish_ci latin1_swedish_ci
+execute abc;
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` FUNCTION `a`() RETURNS int(11)
+return 42+13 latin1 latin1_swedish_ci latin1_swedish_ci
+execute abc;
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+a CREATE DEFINER=`root`@`localhost` FUNCTION `a`() RETURNS int(11)
+return 42+13 latin1 latin1_swedish_ci latin1_swedish_ci
+deallocate prepare abc;
+drop function a;
+drop table if exists tab1;
+create table tab1(a int, b char(1), primary key(a,b));
+create procedure proc_1() show create table tab1;
+call proc_1();
+Table Create Table
+tab1 CREATE TABLE `tab1` (
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+call proc_1();
+Table Create Table
+tab1 CREATE TABLE `tab1` (
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+call proc_1();
+Table Create Table
+tab1 CREATE TABLE `tab1` (
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop procedure proc_1;
+create function func_1() returns int begin show create table tab1; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show create table tab1";
+execute abc;
+Table Create Table
+tab1 CREATE TABLE `tab1` (
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+execute abc;
+Table Create Table
+tab1 CREATE TABLE `tab1` (
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+execute abc;
+Table Create Table
+tab1 CREATE TABLE `tab1` (
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`,`b`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+deallocate prepare abc;
+drop table tab1;
+drop view if exists v1;
+drop table if exists t1;
+create table t1(a int, b char(5));
+insert into t1 values (1, "one"), (1, "edno"), (2, "two"), (2, "dve");
+create view v1 as
+(select a, count(*) from t1 group by a)
+union all
+(select b, count(*) from t1 group by b);
+create procedure proc_1() show create view v1;
+call proc_1();
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`a` AS `a`,count(0) AS `count(*)` from `t1` group by `t1`.`a`) union all (select `t1`.`b` AS `b`,count(0) AS `count(*)` from `t1` group by `t1`.`b`) latin1 latin1_swedish_ci
+call proc_1();
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`a` AS `a`,count(0) AS `count(*)` from `t1` group by `t1`.`a`) union all (select `t1`.`b` AS `b`,count(0) AS `count(*)` from `t1` group by `t1`.`b`) latin1 latin1_swedish_ci
+call proc_1();
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`a` AS `a`,count(0) AS `count(*)` from `t1` group by `t1`.`a`) union all (select `t1`.`b` AS `b`,count(0) AS `count(*)` from `t1` group by `t1`.`b`) latin1 latin1_swedish_ci
+drop procedure proc_1;
+create function func_1() returns int begin show create view v1; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "show create view v1";
+execute abc;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`a` AS `a`,count(0) AS `count(*)` from `t1` group by `t1`.`a`) union all (select `t1`.`b` AS `b`,count(0) AS `count(*)` from `t1` group by `t1`.`b`) latin1 latin1_swedish_ci
+execute abc;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`a` AS `a`,count(0) AS `count(*)` from `t1` group by `t1`.`a`) union all (select `t1`.`b` AS `b`,count(0) AS `count(*)` from `t1` group by `t1`.`b`) latin1 latin1_swedish_ci
+execute abc;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`a` AS `a`,count(0) AS `count(*)` from `t1` group by `t1`.`a`) union all (select `t1`.`b` AS `b`,count(0) AS `count(*)` from `t1` group by `t1`.`b`) latin1 latin1_swedish_ci
+deallocate prepare abc;
+drop view v1;
+drop table t1;
+create procedure proc_1() install plugin my_plug soname 'some_plugin.so';
+call proc_1();
+Got one of the listed errors
+call proc_1();
+Got one of the listed errors
+call proc_1();
+Got one of the listed errors
+drop procedure proc_1;
+create function func_1() returns int begin install plugin my_plug soname '/tmp/plugin'; return 1; end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "install plugin my_plug soname 'some_plugin.so'";
+deallocate prepare abc;
+create procedure proc_1() uninstall plugin my_plug;
+call proc_1();
+ERROR 42000: PLUGIN my_plug does not exist
+call proc_1();
+ERROR 42000: PLUGIN my_plug does not exist
+call proc_1();
+ERROR 42000: PLUGIN my_plug does not exist
+drop procedure proc_1;
+create function func_1() returns int begin uninstall plugin my_plug; return 1; end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "uninstall plugin my_plug";
+execute abc;
+ERROR 42000: PLUGIN my_plug does not exist
+execute abc;
+ERROR 42000: PLUGIN my_plug does not exist
+execute abc;
+ERROR 42000: PLUGIN my_plug does not exist
+deallocate prepare abc;
+drop database if exists mysqltest_xyz;
+create procedure proc_1() create database mysqltest_xyz;
+call proc_1();
+drop database if exists mysqltest_xyz;
+call proc_1();
+call proc_1();
+ERROR HY000: Can't create database 'mysqltest_xyz'; database exists
+drop database if exists mysqltest_xyz;
+call proc_1();
+drop database if exists mysqltest_xyz;
+drop procedure proc_1;
+create function func_1() returns int begin create database mysqltest_xyz; return 1; end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "create database mysqltest_xyz";
+execute abc;
+drop database if exists mysqltest_xyz;
+execute abc;
+execute abc;
+ERROR HY000: Can't create database 'mysqltest_xyz'; database exists
+drop database if exists mysqltest_xyz;
+execute abc;
+drop database if exists mysqltest_xyz;
+deallocate prepare abc;
+drop table if exists t1;
+create table t1 (a int, b char(5));
+insert into t1 values (1, "one"), (2, "two"), (3, "three");
+create procedure proc_1() checksum table xyz;
+call proc_1();
+Table Checksum
+test.xyz NULL
+Warnings:
+Error 1146 Table 'test.xyz' doesn't exist
+call proc_1();
+Table Checksum
+test.xyz NULL
+Warnings:
+Error 1146 Table 'test.xyz' doesn't exist
+call proc_1();
+Table Checksum
+test.xyz NULL
+Warnings:
+Error 1146 Table 'test.xyz' doesn't exist
+drop procedure proc_1;
+create function func_1() returns int begin checksum table t1; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "checksum table t1";
+execute abc;
+Table Checksum
+test.t1 645809265
+execute abc;
+Table Checksum
+test.t1 645809265
+execute abc;
+Table Checksum
+test.t1 645809265
+deallocate prepare abc;
+create procedure proc_1() create user pstest_xyz@localhost;
+call proc_1();
+drop user pstest_xyz@localhost;
+call proc_1();
+call proc_1();
+ERROR HY000: Operation CREATE USER failed for 'pstest_xyz'@'localhost'
+drop user pstest_xyz@localhost;
+call proc_1();
+drop user pstest_xyz@localhost;
+drop procedure proc_1;
+create function func_1() returns int begin create user pstest_xyz@localhost; return 1; end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "create user pstest_xyz@localhost";
+execute abc;
+drop user pstest_xyz@localhost;
+execute abc;
+execute abc;
+ERROR HY000: Operation CREATE USER failed for 'pstest_xyz'@'localhost'
+drop user pstest_xyz@localhost;
+execute abc;
+drop user pstest_xyz@localhost;
+deallocate prepare abc;
+drop event if exists xyz;
+create function func_1() returns int begin create event xyz on schedule at now() do select 123; return 1; end|
+ERROR HY000: Recursion of EVENT DDL statements is forbidden when body is present
+select func_1(), func_1(), func_1() from dual;
+ERROR 42000: FUNCTION test.func_1 does not exist
+drop function func_1;
+ERROR 42000: FUNCTION test.func_1 does not exist
+prepare abc from "create event xyz on schedule at now() do select 123";
+ERROR HY000: This command is not supported in the prepared statement protocol yet
+deallocate prepare abc;
+ERROR HY000: Unknown prepared statement handler (abc) given to DEALLOCATE PREPARE
+drop event if exists xyz;
+create event xyz on schedule every 5 minute disable do select 123;
+create procedure proc_1() alter event xyz comment 'xyz';
+call proc_1();
+drop event xyz;
+create event xyz on schedule every 5 minute disable do select 123;
+call proc_1();
+drop event xyz;
+create event xyz on schedule every 5 minute disable do select 123;
+call proc_1();
+drop event xyz;
+drop procedure proc_1;
+create function func_1() returns int begin alter event xyz comment 'xyz'; return 1; end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+prepare abc from "alter event xyz comment 'xyz'";
+ERROR HY000: This command is not supported in the prepared statement protocol yet
+deallocate prepare abc;
+ERROR HY000: Unknown prepared statement handler (abc) given to DEALLOCATE PREPARE
+drop event if exists xyz;
+create event xyz on schedule every 5 minute disable do select 123;
+create procedure proc_1() drop event xyz;
+call proc_1();
+create event xyz on schedule every 5 minute disable do select 123;
+call proc_1();
+call proc_1();
+ERROR HY000: Unknown event 'xyz'
+drop procedure proc_1;
+create function func_1() returns int begin drop event xyz; return 1; end|
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+prepare abc from "drop event xyz";
+ERROR HY000: This command is not supported in the prepared statement protocol yet
+deallocate prepare abc;
+ERROR HY000: Unknown prepared statement handler (abc) given to DEALLOCATE PREPARE
+drop table if exists t1;
+create table t1 (a int, b char(5)) engine=myisam;
+insert into t1 values (1, "one"), (2, "two"), (3, "three");
+SET GLOBAL new_cache.key_buffer_size=128*1024;
+create procedure proc_1() cache index t1 in new_cache;
+call proc_1();
+Table Op Msg_type Msg_text
+test.t1 assign_to_keycache status OK
+call proc_1();
+Table Op Msg_type Msg_text
+test.t1 assign_to_keycache status OK
+call proc_1();
+Table Op Msg_type Msg_text
+test.t1 assign_to_keycache status OK
+drop procedure proc_1;
+SET GLOBAL second_cache.key_buffer_size=128*1024;
+prepare abc from "cache index t1 in second_cache";
+execute abc;
+Table Op Msg_type Msg_text
+test.t1 assign_to_keycache status OK
+execute abc;
+Table Op Msg_type Msg_text
+test.t1 assign_to_keycache status OK
+execute abc;
+Table Op Msg_type Msg_text
+test.t1 assign_to_keycache status OK
+deallocate prepare abc;
+drop table t1;
+drop table if exists t1;
+drop table if exists t2;
+create table t1 (a int, b char(5)) engine=myisam;
+insert into t1 values (1, "one"), (2, "two"), (3, "three");
+create table t2 (a int, b char(5)) engine=myisam;
+insert into t2 values (1, "one"), (2, "two"), (3, "three");
+create procedure proc_1() load index into cache t1 ignore leaves;
+call proc_1();
+Table Op Msg_type Msg_text
+test.t1 preload_keys status OK
+call proc_1();
+Table Op Msg_type Msg_text
+test.t1 preload_keys status OK
+call proc_1();
+Table Op Msg_type Msg_text
+test.t1 preload_keys status OK
+drop procedure proc_1;
+create function func_1() returns int begin load index into cache t1 ignore leaves; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+prepare abc from "load index into cache t2 ignore leaves";
+execute abc;
+Table Op Msg_type Msg_text
+test.t2 preload_keys status OK
+execute abc;
+Table Op Msg_type Msg_text
+test.t2 preload_keys status OK
+execute abc;
+Table Op Msg_type Msg_text
+test.t2 preload_keys status OK
+deallocate prepare abc;
+drop table t1, t2;
+create procedure proc_1() show errors;
+call proc_1();
+Level Code Message
+call proc_1();
+Level Code Message
+call proc_1();
+Level Code Message
+drop procedure proc_1;
+create function func_1() returns int begin show errors; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+prepare abc from "show errors";
+deallocate prepare abc;
+drop table if exists t1;
+drop table if exists t2;
+create procedure proc_1() show warnings;
+drop table if exists t1;
+Warnings:
+Note 1051 Unknown table 't1'
+call proc_1();
+Level Code Message
+drop table if exists t2;
+Warnings:
+Note 1051 Unknown table 't2'
+call proc_1();
+Level Code Message
+drop table if exists t1, t2;
+Warnings:
+Note 1051 Unknown table 't1'
+Note 1051 Unknown table 't2'
+call proc_1();
+Level Code Message
+drop procedure proc_1;
+create function func_1() returns int begin show warnings; return 1; end|
+ERROR 0A000: Not allowed to return a result set from a function
+prepare abc from "show warnings";
+drop table if exists t1;
+Warnings:
+Note 1051 Unknown table 't1'
+execute abc;
+Level Code Message
+Note 1051 Unknown table 't1'
+drop table if exists t2;
+Warnings:
+Note 1051 Unknown table 't2'
+execute abc;
+Level Code Message
+Note 1051 Unknown table 't2'
+drop table if exists t1, t2;
+Warnings:
+Note 1051 Unknown table 't1'
+Note 1051 Unknown table 't2'
+execute abc;
+Level Code Message
+Note 1051 Unknown table 't1'
+Note 1051 Unknown table 't2'
+deallocate prepare abc;
+set @my_password="password";
+set @my_data="clear text to encode";
+prepare stmt1 from 'select decode(encode(?, ?), ?)';
+execute stmt1 using @my_data, @my_password, @my_password;
+decode(encode(?, ?), ?)
+clear text to encode
+set @my_data="more text to encode";
+execute stmt1 using @my_data, @my_password, @my_password;
+decode(encode(?, ?), ?)
+more text to encode
+set @my_password="new password";
+execute stmt1 using @my_data, @my_password, @my_password;
+decode(encode(?, ?), ?)
+more text to encode
+deallocate prepare stmt1;
+set @to_format="123456789.123456789";
+set @dec=0;
+prepare stmt2 from 'select format(?, ?)';
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+123,456,789
+set @dec=4;
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+123,456,789.1235
+set @dec=6;
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+123,456,789.123457
+set @dec=2;
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+123,456,789.12
+set @to_format="100";
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+100.00
+set @to_format="1000000";
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+1,000,000.00
+set @to_format="10000";
+execute stmt2 using @to_format, @dec;
+format(?, ?)
+10,000.00
+deallocate prepare stmt2;
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (i INT);
+INSERT INTO t1 VALUES (1);
+CREATE TABLE t2 (i INT);
+INSERT INTO t2 VALUES (2);
+LOCK TABLE t1 READ, t2 WRITE;
+PREPARE stmt1 FROM "SELECT i FROM t1";
+PREPARE stmt2 FROM "INSERT INTO t2 (i) VALUES (3)";
+EXECUTE stmt1;
+i
+1
+EXECUTE stmt2;
+SELECT * FROM t2;
+i
+2
+UNLOCK TABLES;
+SELECT * FROM t2;
+i
+2
+3
+ALTER TABLE t1 ADD COLUMN j INT;
+ALTER TABLE t2 ADD COLUMN j INT;
+INSERT INTO t1 VALUES (4, 5);
+INSERT INTO t2 VALUES (4, 5);
+EXECUTE stmt1;
+i
+1
+4
+EXECUTE stmt2;
+SELECT * FROM t2;
+i j
+2 NULL
+3 NULL
+4 5
+3 NULL
+DROP TABLE t1, t2;
+drop table if exists t1;
+Warnings:
+Note 1051 Unknown table 't1'
+prepare stmt
+from "create table t1 (c char(100) character set utf8, key (c(10)))";
+execute stmt;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(100) CHARACTER SET utf8 DEFAULT NULL,
+ KEY `c` (`c`(10))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+execute stmt;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(100) CHARACTER SET utf8 DEFAULT NULL,
+ KEY `c` (`c`(10))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+drop table if exists t1, t2;
+create table t1 (a int, b int);
+create table t2 like t1;
+insert into t1 (a, b) values (1,1), (1,2), (1,3), (1,4), (1,5),
+(2,2), (2,3), (2,1), (3,1), (4,1), (4,2), (4,3), (4,4), (4,5), (4,6);
+insert into t2 select a, max(b) from t1 group by a;
+prepare stmt from "delete from t2 where (select (select max(b) from t1 group
+by a having a < 2) x from t1) > 10000";
+delete from t2 where (select (select max(b) from t1 group
+by a having a < 2) x from t1) > 10000;
+ERROR 21000: Subquery returns more than 1 row
+execute stmt;
+ERROR 21000: Subquery returns more than 1 row
+execute stmt;
+ERROR 21000: Subquery returns more than 1 row
+deallocate prepare stmt;
+drop table t1, t2;
+#
+# Bug#27430 Crash in subquery code when in PS and table DDL changed
+# after PREPARE
+#
+# This part of the test doesn't work in embedded server, this is
+# why it's here. For the main test see ps_ddl*.test
+
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show events where (1) in (select * from t1)";
+execute stmt;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
+drop table t1;
+deallocate prepare stmt;
+End of 5.1 tests.
diff --git a/mysql-test/r/ps_11bugs.result b/mysql-test/r/ps_11bugs.result
index ebe161f46b3..a298c552806 100644
--- a/mysql-test/r/ps_11bugs.result
+++ b/mysql-test/r/ps_11bugs.result
@@ -162,4 +162,32 @@ a b
12 NULL
drop table t1;
drop table t2;
+CREATE TABLE t1 (a INT);
+PREPARE stmt FROM 'select 1 from `t1` where `a` = any (select (@@tmpdir))';
+EXECUTE stmt;
+1
+DEALLOCATE PREPARE stmt;
+DROP TABLE t1;
+CREATE TABLE t2 (a INT PRIMARY KEY);
+INSERT INTO t2 VALUES (400000), (400001);
+SET @@sort_buffer_size=400000;
+CREATE FUNCTION p1(i INT) RETURNS INT
+BEGIN
+SET @@sort_buffer_size= i;
+RETURN i + 1;
+END|
+SELECT * FROM t2 WHERE a = @@sort_buffer_size AND p1(@@sort_buffer_size + 1) > a - 1;
+a
+400000
+DROP TABLE t2;
+DROP FUNCTION p1;
+SELECT CONCAT(@@sort_buffer_size);
+CONCAT(@@sort_buffer_size)
+400001
+SELECT LEFT("12345", @@ft_boolean_syntax);
+LEFT("12345", @@ft_boolean_syntax)
+
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: '+ -><()~*:""&|'
+SET @@sort_buffer_size=DEFAULT;
End of 5.0 tests.
diff --git a/mysql-test/r/ps_1general.result b/mysql-test/r/ps_1general.result
index 5e951b866f7..1b2a0cc50b2 100644
--- a/mysql-test/r/ps_1general.result
+++ b/mysql-test/r/ps_1general.result
@@ -143,32 +143,32 @@ b char(30)
);
insert into t5( a, b, c) values( 9, 'recreated table', 9);
execute stmt2 ;
-a b c
-9 recreated table 9
+a c b
+9 9 recreated table
drop table t5 ;
create table t5
(
a int primary key,
b char(30),
c int,
-d timestamp default current_timestamp
+d timestamp default '2008-02-23 09:23:45'
);
insert into t5( a, b, c) values( 9, 'recreated table', 9);
execute stmt2 ;
-a b c
-9 recreated table 9
+a b c d
+9 recreated table 9 2008-02-23 09:23:45
drop table t5 ;
create table t5
(
a int primary key,
-d timestamp default current_timestamp,
+d timestamp default '2008-02-23 09:23:45',
b char(30),
c int
);
insert into t5( a, b, c) values( 9, 'recreated table', 9);
execute stmt2 ;
-a b c
-9 recreated table 9
+a d b c
+9 2008-02-23 09:23:45 recreated table 9
drop table t5 ;
create table t5
(
@@ -189,7 +189,8 @@ f3 int
);
insert into t5( f1, f2, f3) values( 9, 'recreated table', 9);
execute stmt2 ;
-ERROR 42S22: Unknown column 'test.t5.a' in 'field list'
+f1 f2 f3
+9 recreated table 9
drop table t5 ;
prepare stmt1 from ' select * from t1 where a <= 2 ' ;
execute stmt1 ;
@@ -259,6 +260,7 @@ prepare stmt4 from ' show databases ';
execute stmt4;
Database
information_schema
+mtr
mysql
test
prepare stmt4 from ' show tables from test like ''t2%'' ';
@@ -303,36 +305,18 @@ prepare stmt4 from ' show variables like ''sql_mode'' ';
execute stmt4;
Variable_name Value
sql_mode
-prepare stmt4 from ' show engine bdb logs ';
+prepare stmt4 from ' show engine myisam logs ';
execute stmt4;
+Type Name Status
prepare stmt4 from ' show grants for user ';
prepare stmt4 from ' show create table t2 ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt4 from ' show master status ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt4 from ' show master logs ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt4 from ' show slave status ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt4 from ' show warnings limit 20 ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt4 from ' show errors limit 20 ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt4 from ' show storage engines ';
execute stmt4;
-Engine Support Comment
-MyISAM YES/NO Default engine as of MySQL 3.23 with great performance
-MEMORY YES/NO Hash based, stored in memory, useful for temporary tables
-InnoDB YES/NO Supports transactions, row-level locking, and foreign keys
-BerkeleyDB YES/NO Supports transactions and page-level locking
-BLACKHOLE YES/NO /dev/null storage engine (anything you write to it disappears)
-EXAMPLE YES/NO Example storage engine
-ARCHIVE YES/NO Archive storage engine
-CSV YES/NO CSV storage engine
-ndbcluster YES/NO Clustered, fault-tolerant, memory-based tables
-FEDERATED YES/NO Federated MySQL storage engine
-MRG_MYISAM YES/NO Collection of identical MyISAM tables
-ISAM YES/NO Obsolete storage engine
drop table if exists t5;
prepare stmt1 from ' drop table if exists t5 ' ;
execute stmt1 ;
@@ -401,10 +385,8 @@ ERROR HY000: This command is not supported in the prepared statement protocol ye
prepare stmt4 from ' use test ' ;
ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt3 from ' create database mysqltest ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
create database mysqltest ;
prepare stmt3 from ' drop database mysqltest ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
drop database mysqltest ;
prepare stmt3 from ' describe t2 ';
execute stmt3;
@@ -426,7 +408,6 @@ execute stmt1 ;
prepare stmt1 from ' optimize table t1 ' ;
prepare stmt1 from ' analyze table t1 ' ;
prepare stmt1 from ' checksum table t1 ' ;
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt1 from ' repair table t1 ' ;
prepare stmt1 from ' restore table t1 from ''<MYSQLTEST_VARDIR>/tmp/data.txt'' ' ;
ERROR HY000: This command is not supported in the prepared statement protocol yet
@@ -454,11 +435,8 @@ execute stmt5;
1
SET sql_mode="";
prepare stmt1 from ' flush local privileges ' ;
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt1 from ' reset query cache ' ;
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt1 from ' KILL 0 ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
prepare stmt1 from ' explain select a from t1 order by b ';
execute stmt1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
diff --git a/mysql-test/r/ps_2myisam.result b/mysql-test/r/ps_2myisam.result
index 43ec79609e4..a91d13d11a1 100644
--- a/mysql-test/r/ps_2myisam.result
+++ b/mysql-test/r/ps_2myisam.result
@@ -63,7 +63,7 @@ def test t9 t9 c11 c11 246 9 6 Y 0 4 63
def test t9 t9 c12 c12 246 10 6 Y 0 4 63
def test t9 t9 c13 c13 10 10 10 Y 128 0 63
def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
+def test t9 t9 c15 c15 7 19 19 N 9441 0 63
def test t9 t9 c16 c16 11 8 8 Y 128 0 63
def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
@@ -1426,7 +1426,7 @@ select a,b from t1 where b = @arg00;
a b
6 six
execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
+ERROR 23000: Duplicate entry '6' for key 'PRIMARY'
set @arg00=NULL ;
prepare stmt1 from 'insert into t1 values(0, ? )';
execute stmt1 using @arg00;
@@ -1539,7 +1539,7 @@ a b
set @arg00=81 ;
set @arg01=1 ;
execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
+ERROR 23000: Duplicate entry '82' for key 'PRIMARY'
drop table if exists t2 ;
create table t2 (id int auto_increment primary key)
ENGINE= 'MYISAM' ;
@@ -1775,31 +1775,31 @@ NULL as const12, @arg12 as param12,
show create table t5 ;
Table Create Table
t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
+ `const01` int(1) NOT NULL DEFAULT '0',
+ `param01` bigint(20) DEFAULT NULL,
+ `const02` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `param02` decimal(65,30) DEFAULT NULL,
+ `const03` double NOT NULL DEFAULT '0',
+ `param03` double DEFAULT NULL,
+ `const04` varchar(3) NOT NULL DEFAULT '',
`param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
+ `const05` varbinary(3) NOT NULL DEFAULT '',
`param05` longblob,
- `const06` varchar(10) NOT NULL default '',
+ `const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
- `const07` date default NULL,
+ `const07` date DEFAULT NULL,
`param07` longblob,
- `const08` varchar(19) NOT NULL default '',
+ `const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
- `const09` datetime default NULL,
+ `const09` datetime DEFAULT NULL,
`param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
+ `const10` int(10) NOT NULL DEFAULT '0',
+ `param10` bigint(20) DEFAULT NULL,
+ `const11` int(4) DEFAULT NULL,
+ `param11` bigint(20) DEFAULT NULL,
+ `const12` binary(0) DEFAULT NULL,
+ `param12` bigint(20) DEFAULT NULL,
+ `param13` decimal(65,30) DEFAULT NULL,
`param14` longtext,
`param15` longblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1
@@ -1917,38 +1917,38 @@ from t9 where c1= 1 ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@@ -1964,38 +1964,38 @@ from t9 where c1= 0 ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@@ -2014,38 +2014,38 @@ execute stmt1 using @my_key ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@@ -2054,38 +2054,38 @@ execute stmt1 using @my_key ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@@ -2102,38 +2102,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 1 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2146,38 +2146,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 0 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2192,76 +2192,76 @@ set @my_key= 1 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
@@ -2572,12 +2572,12 @@ set @arg00= 9223372036854775807 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2595,12 +2595,12 @@ set @arg00= '9223372036854775807' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2618,12 +2618,12 @@ set @arg00= -9223372036854775808 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2641,12 +2641,12 @@ set @arg00= '-9223372036854775808' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2664,14 +2664,14 @@ set @arg00= 1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2689,14 +2689,14 @@ set @arg00= '1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2714,14 +2714,14 @@ set @arg00= -1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2739,14 +2739,14 @@ set @arg00= '-1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2985,45 +2985,45 @@ Warnings:
Note 1265 Data truncated for column 'c13' at row 1
Warning 1265 Data truncated for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
c1 c13 c14 c15 c16 c17
20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
diff --git a/mysql-test/r/ps_3innodb.result b/mysql-test/r/ps_3innodb.result
index ff9ddc8d95d..50c94d6cc4e 100644
--- a/mysql-test/r/ps_3innodb.result
+++ b/mysql-test/r/ps_3innodb.result
@@ -63,7 +63,7 @@ def test t9 t9 c11 c11 246 9 6 Y 0 4 63
def test t9 t9 c12 c12 246 10 6 Y 0 4 63
def test t9 t9 c13 c13 10 10 10 Y 128 0 63
def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
+def test t9 t9 c15 c15 7 19 19 N 9441 0 63
def test t9 t9 c16 c16 11 8 8 Y 128 0 63
def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
@@ -1409,7 +1409,7 @@ select a,b from t1 where b = @arg00;
a b
6 six
execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
+ERROR 23000: Duplicate entry '6' for key 'PRIMARY'
set @arg00=NULL ;
prepare stmt1 from 'insert into t1 values(0, ? )';
execute stmt1 using @arg00;
@@ -1522,7 +1522,7 @@ a b
set @arg00=81 ;
set @arg01=1 ;
execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
+ERROR 23000: Duplicate entry '82' for key 'PRIMARY'
drop table if exists t2 ;
create table t2 (id int auto_increment primary key)
ENGINE= 'InnoDB' ;
@@ -1758,31 +1758,31 @@ NULL as const12, @arg12 as param12,
show create table t5 ;
Table Create Table
t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
+ `const01` int(1) NOT NULL DEFAULT '0',
+ `param01` bigint(20) DEFAULT NULL,
+ `const02` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `param02` decimal(65,30) DEFAULT NULL,
+ `const03` double NOT NULL DEFAULT '0',
+ `param03` double DEFAULT NULL,
+ `const04` varchar(3) NOT NULL DEFAULT '',
`param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
+ `const05` varbinary(3) NOT NULL DEFAULT '',
`param05` longblob,
- `const06` varchar(10) NOT NULL default '',
+ `const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
- `const07` date default NULL,
+ `const07` date DEFAULT NULL,
`param07` longblob,
- `const08` varchar(19) NOT NULL default '',
+ `const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
- `const09` datetime default NULL,
+ `const09` datetime DEFAULT NULL,
`param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
+ `const10` int(10) NOT NULL DEFAULT '0',
+ `param10` bigint(20) DEFAULT NULL,
+ `const11` int(4) DEFAULT NULL,
+ `param11` bigint(20) DEFAULT NULL,
+ `const12` binary(0) DEFAULT NULL,
+ `param12` bigint(20) DEFAULT NULL,
+ `param13` decimal(65,30) DEFAULT NULL,
`param14` longtext,
`param15` longblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1
@@ -1900,38 +1900,38 @@ from t9 where c1= 1 ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@@ -1947,38 +1947,38 @@ from t9 where c1= 0 ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@@ -1997,38 +1997,38 @@ execute stmt1 using @my_key ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@@ -2037,38 +2037,38 @@ execute stmt1 using @my_key ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@@ -2085,38 +2085,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 1 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2129,38 +2129,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 0 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2175,76 +2175,76 @@ set @my_key= 1 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
@@ -2555,12 +2555,12 @@ set @arg00= 9223372036854775807 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2578,12 +2578,12 @@ set @arg00= '9223372036854775807' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2601,12 +2601,12 @@ set @arg00= -9223372036854775808 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2624,12 +2624,12 @@ set @arg00= '-9223372036854775808' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2647,14 +2647,14 @@ set @arg00= 1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2672,14 +2672,14 @@ set @arg00= '1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2697,14 +2697,14 @@ set @arg00= -1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2722,14 +2722,14 @@ set @arg00= '-1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2968,45 +2968,45 @@ Warnings:
Note 1265 Data truncated for column 'c13' at row 1
Warning 1265 Data truncated for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
c1 c13 c14 c15 c16 c17
20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
diff --git a/mysql-test/r/ps_4heap.result b/mysql-test/r/ps_4heap.result
index 92f83d7cf8a..a85809d3800 100644
--- a/mysql-test/r/ps_4heap.result
+++ b/mysql-test/r/ps_4heap.result
@@ -64,7 +64,7 @@ def test t9 t9 c11 c11 246 9 6 Y 0 4 63
def test t9 t9 c12 c12 246 10 6 Y 0 4 63
def test t9 t9 c13 c13 10 10 10 Y 128 0 63
def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
+def test t9 t9 c15 c15 7 19 19 N 9441 0 63
def test t9 t9 c16 c16 11 8 8 Y 128 0 63
def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
@@ -1410,7 +1410,7 @@ select a,b from t1 where b = @arg00;
a b
6 six
execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
+ERROR 23000: Duplicate entry '6' for key 'PRIMARY'
set @arg00=NULL ;
prepare stmt1 from 'insert into t1 values(0, ? )';
execute stmt1 using @arg00;
@@ -1523,7 +1523,7 @@ a b
set @arg00=81 ;
set @arg01=1 ;
execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
+ERROR 23000: Duplicate entry '82' for key 'PRIMARY'
drop table if exists t2 ;
create table t2 (id int auto_increment primary key)
ENGINE= 'HEAP' ;
@@ -1759,31 +1759,31 @@ NULL as const12, @arg12 as param12,
show create table t5 ;
Table Create Table
t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
+ `const01` int(1) NOT NULL DEFAULT '0',
+ `param01` bigint(20) DEFAULT NULL,
+ `const02` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `param02` decimal(65,30) DEFAULT NULL,
+ `const03` double NOT NULL DEFAULT '0',
+ `param03` double DEFAULT NULL,
+ `const04` varchar(3) NOT NULL DEFAULT '',
`param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
+ `const05` varbinary(3) NOT NULL DEFAULT '',
`param05` longblob,
- `const06` varchar(10) NOT NULL default '',
+ `const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
- `const07` date default NULL,
+ `const07` date DEFAULT NULL,
`param07` longblob,
- `const08` varchar(19) NOT NULL default '',
+ `const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
- `const09` datetime default NULL,
+ `const09` datetime DEFAULT NULL,
`param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
+ `const10` int(10) NOT NULL DEFAULT '0',
+ `param10` bigint(20) DEFAULT NULL,
+ `const11` int(4) DEFAULT NULL,
+ `param11` bigint(20) DEFAULT NULL,
+ `const12` binary(0) DEFAULT NULL,
+ `param12` bigint(20) DEFAULT NULL,
+ `param13` decimal(65,30) DEFAULT NULL,
`param14` longtext,
`param15` longblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1
@@ -1901,38 +1901,38 @@ from t9 where c1= 1 ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 0 31 8
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 0 31 8
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 0 31 8
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 0 31 8
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 0 31 8
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 0 31 8
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 0 31 8
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 0 31 8
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@@ -1948,38 +1948,38 @@ from t9 where c1= 0 ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 0 31 8
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 0 31 8
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 0 31 8
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 0 31 8
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 0 31 8
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 0 31 8
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 0 31 8
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 0 31 8
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@@ -1998,38 +1998,38 @@ execute stmt1 using @my_key ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 0 31 8
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 0 31 8
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 0 31 8
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 0 31 8
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 0 31 8
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 0 31 8
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 0 31 8
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 0 31 8
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@@ -2038,38 +2038,38 @@ execute stmt1 using @my_key ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 0 31 8
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 0 31 8
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 0 31 8
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 0 31 8
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 0 31 8
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 0 31 8
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 0 31 8
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 0 31 8
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@@ -2086,38 +2086,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 1 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 0 31 8
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 0 31 8
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 0 31 8
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 0 31 8
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 0 31 8
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 0 31 8
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 0 31 8
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 0 31 8
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2130,38 +2130,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 0 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 0 31 8
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 0 31 8
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 0 31 8
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 0 31 8
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 0 31 8
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 0 31 8
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 0 31 8
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 0 31 8
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2176,76 +2176,76 @@ set @my_key= 1 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 0 31 8
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 0 31 8
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 0 31 8
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 0 31 8
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 0 31 8
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 0 31 8
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 0 31 8
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 0 31 8
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 0 31 8
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 0 31 8
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 0 31 8
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 0 31 8
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 0 31 8
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 0 31 8
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 0 31 8
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 0 31 8
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
@@ -2556,12 +2556,12 @@ set @arg00= 9223372036854775807 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2579,12 +2579,12 @@ set @arg00= '9223372036854775807' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2602,12 +2602,12 @@ set @arg00= -9223372036854775808 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2625,12 +2625,12 @@ set @arg00= '-9223372036854775808' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2648,14 +2648,14 @@ set @arg00= 1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2673,14 +2673,14 @@ set @arg00= '1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2698,14 +2698,14 @@ set @arg00= -1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2723,14 +2723,14 @@ set @arg00= '-1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2969,45 +2969,45 @@ Warnings:
Note 1265 Data truncated for column 'c13' at row 1
Warning 1265 Data truncated for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
c1 c13 c14 c15 c16 c17
20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
diff --git a/mysql-test/r/ps_5merge.result b/mysql-test/r/ps_5merge.result
index b2353121422..fd1b69c0ffd 100644
--- a/mysql-test/r/ps_5merge.result
+++ b/mysql-test/r/ps_5merge.result
@@ -106,7 +106,7 @@ def test t9 t9 c11 c11 246 9 6 Y 0 4 63
def test t9 t9 c12 c12 246 10 6 Y 0 4 63
def test t9 t9 c13 c13 10 10 10 Y 128 0 63
def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
+def test t9 t9 c15 c15 7 19 19 N 9441 0 63
def test t9 t9 c16 c16 11 8 8 Y 128 0 63
def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
@@ -1452,7 +1452,7 @@ select a,b from t1 where b = @arg00;
a b
6 six
execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
+ERROR 23000: Duplicate entry '6' for key 'PRIMARY'
set @arg00=NULL ;
prepare stmt1 from 'insert into t1 values(0, ? )';
execute stmt1 using @arg00;
@@ -1565,7 +1565,7 @@ a b
set @arg00=81 ;
set @arg01=1 ;
execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
+ERROR 23000: Duplicate entry '82' for key 'PRIMARY'
drop table if exists t2 ;
create table t2 (id int auto_increment primary key)
ENGINE= 'MYISAM' ;
@@ -1695,31 +1695,31 @@ NULL as const12, @arg12 as param12,
show create table t5 ;
Table Create Table
t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
+ `const01` int(1) NOT NULL DEFAULT '0',
+ `param01` bigint(20) DEFAULT NULL,
+ `const02` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `param02` decimal(65,30) DEFAULT NULL,
+ `const03` double NOT NULL DEFAULT '0',
+ `param03` double DEFAULT NULL,
+ `const04` varchar(3) NOT NULL DEFAULT '',
`param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
+ `const05` varbinary(3) NOT NULL DEFAULT '',
`param05` longblob,
- `const06` varchar(10) NOT NULL default '',
+ `const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
- `const07` date default NULL,
+ `const07` date DEFAULT NULL,
`param07` longblob,
- `const08` varchar(19) NOT NULL default '',
+ `const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
- `const09` datetime default NULL,
+ `const09` datetime DEFAULT NULL,
`param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
+ `const10` int(10) NOT NULL DEFAULT '0',
+ `param10` bigint(20) DEFAULT NULL,
+ `const11` int(4) DEFAULT NULL,
+ `param11` bigint(20) DEFAULT NULL,
+ `const12` binary(0) DEFAULT NULL,
+ `param12` bigint(20) DEFAULT NULL,
+ `param13` decimal(65,30) DEFAULT NULL,
`param14` longtext,
`param15` longblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1
@@ -1837,38 +1837,38 @@ from t9 where c1= 1 ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@@ -1884,38 +1884,38 @@ from t9 where c1= 0 ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@@ -1934,38 +1934,38 @@ execute stmt1 using @my_key ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@@ -1974,38 +1974,38 @@ execute stmt1 using @my_key ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@@ -2022,38 +2022,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 1 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2066,38 +2066,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 0 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -2112,76 +2112,76 @@ set @my_key= 1 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
@@ -2492,12 +2492,12 @@ set @arg00= 9223372036854775807 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2515,12 +2515,12 @@ set @arg00= '9223372036854775807' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2538,12 +2538,12 @@ set @arg00= -9223372036854775808 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2561,12 +2561,12 @@ set @arg00= '-9223372036854775808' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2584,14 +2584,14 @@ set @arg00= 1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2609,14 +2609,14 @@ set @arg00= '1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -2634,14 +2634,14 @@ set @arg00= -1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2659,14 +2659,14 @@ set @arg00= '-1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -2905,45 +2905,45 @@ Warnings:
Note 1265 Data truncated for column 'c13' at row 1
Warning 1265 Data truncated for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
c1 c13 c14 c15 c16 c17
20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
@@ -3128,7 +3128,7 @@ def test t9 t9 c11 c11 246 9 6 Y 0 4 63
def test t9 t9 c12 c12 246 10 6 Y 0 4 63
def test t9 t9 c13 c13 10 10 10 Y 128 0 63
def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
+def test t9 t9 c15 c15 7 19 19 N 9441 0 63
def test t9 t9 c16 c16 11 8 8 Y 128 0 63
def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
@@ -4474,7 +4474,7 @@ select a,b from t1 where b = @arg00;
a b
6 six
execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
+ERROR 23000: Duplicate entry '6' for key 'PRIMARY'
set @arg00=NULL ;
prepare stmt1 from 'insert into t1 values(0, ? )';
execute stmt1 using @arg00;
@@ -4587,7 +4587,7 @@ a b
set @arg00=81 ;
set @arg01=1 ;
execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
+ERROR 23000: Duplicate entry '82' for key 'PRIMARY'
drop table if exists t2 ;
create table t2 (id int auto_increment primary key)
ENGINE= 'MYISAM' ;
@@ -4717,31 +4717,31 @@ NULL as const12, @arg12 as param12,
show create table t5 ;
Table Create Table
t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
+ `const01` int(1) NOT NULL DEFAULT '0',
+ `param01` bigint(20) DEFAULT NULL,
+ `const02` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `param02` decimal(65,30) DEFAULT NULL,
+ `const03` double NOT NULL DEFAULT '0',
+ `param03` double DEFAULT NULL,
+ `const04` varchar(3) NOT NULL DEFAULT '',
`param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
+ `const05` varbinary(3) NOT NULL DEFAULT '',
`param05` longblob,
- `const06` varchar(10) NOT NULL default '',
+ `const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
- `const07` date default NULL,
+ `const07` date DEFAULT NULL,
`param07` longblob,
- `const08` varchar(19) NOT NULL default '',
+ `const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
- `const09` datetime default NULL,
+ `const09` datetime DEFAULT NULL,
`param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
+ `const10` int(10) NOT NULL DEFAULT '0',
+ `param10` bigint(20) DEFAULT NULL,
+ `const11` int(4) DEFAULT NULL,
+ `param11` bigint(20) DEFAULT NULL,
+ `const12` binary(0) DEFAULT NULL,
+ `param12` bigint(20) DEFAULT NULL,
+ `param13` decimal(65,30) DEFAULT NULL,
`param14` longtext,
`param15` longblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1
@@ -4859,38 +4859,38 @@ from t9 where c1= 1 ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@@ -4906,38 +4906,38 @@ from t9 where c1= 0 ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@@ -4956,38 +4956,38 @@ execute stmt1 using @my_key ;
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@@ -4996,38 +4996,38 @@ execute stmt1 using @my_key ;
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@@ -5044,38 +5044,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 1 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -5088,38 +5088,38 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
from t9 where c1= 0 ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@@ -5134,76 +5134,76 @@ set @my_key= 1 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 1 Y 32896 0 63
+def @arg03 8 20 1 Y 32896 0 63
+def @arg04 8 20 1 Y 32896 0 63
+def @arg05 8 20 1 Y 32896 0 63
+def @arg06 8 20 1 Y 32896 0 63
+def @arg07 5 23 1 Y 32896 31 63
+def @arg08 5 23 1 Y 32896 31 63
+def @arg09 5 23 1 Y 32896 31 63
+def @arg10 5 23 1 Y 32896 31 63
+def @arg11 246 83 6 Y 128 30 63
+def @arg12 246 83 6 Y 128 30 63
+def @arg13 251 16777216 10 Y 128 31 63
+def @arg14 251 16777216 19 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 8 Y 128 31 63
+def @arg17 8 20 4 Y 32928 0 63
+def @arg18 8 20 1 Y 32896 0 63
+def @arg19 8 20 1 Y 32896 0 63
+def @arg20 251 16777216 1 Y 0 31 8
+def @arg21 251 16777216 10 Y 0 31 8
+def @arg22 251 16777216 30 Y 0 31 8
+def @arg23 251 16777216 8 Y 128 31 63
+def @arg24 251 16777216 8 Y 0 31 8
+def @arg25 251 16777216 4 Y 128 31 63
+def @arg26 251 16777216 4 Y 0 31 8
+def @arg27 251 16777216 10 Y 128 31 63
+def @arg28 251 16777216 10 Y 0 31 8
+def @arg29 251 16777216 8 Y 128 31 63
+def @arg30 251 16777216 8 Y 0 31 8
+def @arg31 251 16777216 3 Y 0 31 8
+def @arg32 251 16777216 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
execute stmt1 using @my_key ;
execute full_info ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
+def @arg01 8 20 1 Y 32896 0 63
+def @arg02 8 20 0 Y 32896 0 63
+def @arg03 8 20 0 Y 32896 0 63
+def @arg04 8 20 0 Y 32896 0 63
+def @arg05 8 20 0 Y 32896 0 63
+def @arg06 8 20 0 Y 32896 0 63
+def @arg07 5 23 0 Y 32896 31 63
+def @arg08 5 23 0 Y 32896 31 63
+def @arg09 5 23 0 Y 32896 31 63
+def @arg10 5 23 0 Y 32896 31 63
+def @arg11 246 83 0 Y 128 30 63
+def @arg12 246 83 0 Y 128 30 63
+def @arg13 251 16777216 0 Y 128 31 63
+def @arg14 251 16777216 0 Y 128 31 63
+def @arg15 251 16777216 19 Y 128 31 63
+def @arg16 251 16777216 0 Y 128 31 63
+def @arg17 8 20 0 Y 32928 0 63
+def @arg18 8 20 0 Y 32896 0 63
+def @arg19 8 20 0 Y 32896 0 63
+def @arg20 251 16777216 0 Y 0 31 8
+def @arg21 251 16777216 0 Y 0 31 8
+def @arg22 251 16777216 0 Y 0 31 8
+def @arg23 251 16777216 0 Y 128 31 63
+def @arg24 251 16777216 0 Y 0 31 8
+def @arg25 251 16777216 0 Y 128 31 63
+def @arg26 251 16777216 0 Y 0 31 8
+def @arg27 251 16777216 0 Y 128 31 63
+def @arg28 251 16777216 0 Y 0 31 8
+def @arg29 251 16777216 0 Y 128 31 63
+def @arg30 251 16777216 0 Y 0 31 8
+def @arg31 251 16777216 0 Y 0 31 8
+def @arg32 251 16777216 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
@@ -5514,12 +5514,12 @@ set @arg00= 9223372036854775807 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -5537,12 +5537,12 @@ set @arg00= '9223372036854775807' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -5560,12 +5560,12 @@ set @arg00= -9223372036854775808 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -5583,12 +5583,12 @@ set @arg00= '-9223372036854775808' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -5606,14 +5606,14 @@ set @arg00= 1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -5631,14 +5631,14 @@ set @arg00= '1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 127
c2 32767
@@ -5656,14 +5656,14 @@ set @arg00= -1.11111111111111111111e+50 ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -5681,14 +5681,14 @@ set @arg00= '-1.11111111111111111111e+50' ;
execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
@arg00, @arg00, @arg00, @arg00, @arg00 ;
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c2' at row 1
+Warning 1264 Out of range value for column 'c3' at row 1
+Warning 1264 Out of range value for column 'c4' at row 1
+Warning 1264 Out of range value for column 'c5' at row 1
+Warning 1264 Out of range value for column 'c6' at row 1
+Warning 1264 Out of range value for column 'c7' at row 1
+Warning 1264 Out of range value for column 'c12' at row 1
execute my_select ;
c1 -128
c2 -32768
@@ -5927,45 +5927,45 @@ Warnings:
Note 1265 Data truncated for column 'c13' at row 1
Warning 1265 Data truncated for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
+Warning 1264 Out of range value for column 'c13' at row 1
+Warning 1264 Out of range value for column 'c14' at row 1
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
Warnings:
Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
+Warning 1264 Out of range value for column 'c16' at row 1
+Warning 1264 Out of range value for column 'c17' at row 1
select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
c1 c13 c14 c15 c16 c17
20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
diff --git a/mysql-test/r/ps_6bdb.result b/mysql-test/r/ps_6bdb.result
deleted file mode 100644
index d70a89522e2..00000000000
--- a/mysql-test/r/ps_6bdb.result
+++ /dev/null
@@ -1,3128 +0,0 @@
-use test;
-drop table if exists t1, t9 ;
-create table t1
-(
-a int, b varchar(30),
-primary key(a)
-) engine = 'BDB' ;
-create table t9
-(
-c1 tinyint, c2 smallint, c3 mediumint, c4 int,
-c5 integer, c6 bigint, c7 float, c8 double,
-c9 double precision, c10 real, c11 decimal(7, 4), c12 numeric(8, 4),
-c13 date, c14 datetime, c15 timestamp, c16 time,
-c17 year, c18 tinyint, c19 bool, c20 char,
-c21 char(10), c22 varchar(30), c23 tinyblob, c24 tinytext,
-c25 blob, c26 text, c27 mediumblob, c28 mediumtext,
-c29 longblob, c30 longtext, c31 enum('one', 'two', 'three'),
-c32 set('monday', 'tuesday', 'wednesday'),
-primary key(c1)
-) engine = 'BDB' ;
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-test_sequence
------- simple select tests ------
-prepare stmt1 from ' select * from t9 order by c1 ' ;
-execute stmt1;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def test t9 t9 c1 c1 1 4 1 N 49155 0 63
-def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
-def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
-def test t9 t9 c4 c4 3 11 1 Y 32768 0 63
-def test t9 t9 c5 c5 3 11 1 Y 32768 0 63
-def test t9 t9 c6 c6 8 20 1 Y 32768 0 63
-def test t9 t9 c7 c7 4 12 1 Y 32768 31 63
-def test t9 t9 c8 c8 5 22 1 Y 32768 31 63
-def test t9 t9 c9 c9 5 22 1 Y 32768 31 63
-def test t9 t9 c10 c10 5 22 1 Y 32768 31 63
-def test t9 t9 c11 c11 246 9 6 Y 0 4 63
-def test t9 t9 c12 c12 246 10 6 Y 0 4 63
-def test t9 t9 c13 c13 10 10 10 Y 128 0 63
-def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
-def test t9 t9 c16 c16 11 8 8 Y 128 0 63
-def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
-def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
-def test t9 t9 c19 c19 1 1 1 Y 32768 0 63
-def test t9 t9 c20 c20 254 1 1 Y 0 0 8
-def test t9 t9 c21 c21 254 10 10 Y 0 0 8
-def test t9 t9 c22 c22 253 30 30 Y 0 0 8
-def test t9 t9 c23 c23 252 255 8 Y 144 0 63
-def test t9 t9 c24 c24 252 255 8 Y 16 0 8
-def test t9 t9 c25 c25 252 65535 4 Y 144 0 63
-def test t9 t9 c26 c26 252 65535 4 Y 16 0 8
-def test t9 t9 c27 c27 252 16777215 10 Y 144 0 63
-def test t9 t9 c28 c28 252 16777215 10 Y 16 0 8
-def test t9 t9 c29 c29 252 4294967295 8 Y 144 0 63
-def test t9 t9 c30 c30 252 4294967295 8 Y 16 0 8
-def test t9 t9 c31 c31 254 5 3 Y 256 0 8
-def test t9 t9 c32 c32 254 24 7 Y 2048 0 8
-c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 c16 c17 c18 c19 c20 c21 c22 c23 c24 c25 c26 c27 c28 c29 c30 c31 c32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-9 9 9 9 9 9 9 9 9 9 9.0000 9.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 0 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext two tuesday
-set @arg00='SELECT' ;
-@arg00 a from t1 where a=1;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 a from t1 where a=1' at line 1
-prepare stmt1 from ' ? a from t1 where a=1 ';
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? a from t1 where a=1' at line 1
-set @arg00=1 ;
-select @arg00, b from t1 where a=1 ;
-@arg00 b
-1 one
-prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-? b
-1 one
-set @arg00='lion' ;
-select @arg00, b from t1 where a=1 ;
-@arg00 b
-lion one
-prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-? b
-lion one
-set @arg00=NULL ;
-select @arg00, b from t1 where a=1 ;
-@arg00 b
-NULL one
-prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-? b
-NULL one
-set @arg00=1 ;
-select b, a - @arg00 from t1 where a=1 ;
-b a - @arg00
-one 0
-prepare stmt1 from ' select b, a - ? from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-b a - ?
-one 0
-set @arg00=null ;
-select @arg00 as my_col ;
-my_col
-NULL
-prepare stmt1 from ' select ? as my_col';
-execute stmt1 using @arg00 ;
-my_col
-NULL
-select @arg00 + 1 as my_col ;
-my_col
-NULL
-prepare stmt1 from ' select ? + 1 as my_col';
-execute stmt1 using @arg00 ;
-my_col
-NULL
-select 1 + @arg00 as my_col ;
-my_col
-NULL
-prepare stmt1 from ' select 1 + ? as my_col';
-execute stmt1 using @arg00 ;
-my_col
-NULL
-set @arg00='MySQL' ;
-select substr(@arg00,1,2) from t1 where a=1 ;
-substr(@arg00,1,2)
-My
-prepare stmt1 from ' select substr(?,1,2) from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-substr(?,1,2)
-My
-set @arg00=3 ;
-select substr('MySQL',@arg00,5) from t1 where a=1 ;
-substr('MySQL',@arg00,5)
-SQL
-prepare stmt1 from ' select substr(''MySQL'',?,5) from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-substr('MySQL',?,5)
-SQL
-select substr('MySQL',1,@arg00) from t1 where a=1 ;
-substr('MySQL',1,@arg00)
-MyS
-prepare stmt1 from ' select substr(''MySQL'',1,?) from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-substr('MySQL',1,?)
-MyS
-set @arg00='MySQL' ;
-select a , concat(@arg00,b) from t1 order by a;
-a concat(@arg00,b)
-1 MySQLone
-2 MySQLtwo
-3 MySQLthree
-4 MySQLfour
-prepare stmt1 from ' select a , concat(?,b) from t1 order by a ' ;
-execute stmt1 using @arg00;
-a concat(?,b)
-1 MySQLone
-2 MySQLtwo
-3 MySQLthree
-4 MySQLfour
-select a , concat(b,@arg00) from t1 order by a ;
-a concat(b,@arg00)
-1 oneMySQL
-2 twoMySQL
-3 threeMySQL
-4 fourMySQL
-prepare stmt1 from ' select a , concat(b,?) from t1 order by a ' ;
-execute stmt1 using @arg00;
-a concat(b,?)
-1 oneMySQL
-2 twoMySQL
-3 threeMySQL
-4 fourMySQL
-set @arg00='MySQL' ;
-select group_concat(@arg00,b order by a) from t1
-group by 'a' ;
-group_concat(@arg00,b order by a)
-MySQLone,MySQLtwo,MySQLthree,MySQLfour
-prepare stmt1 from ' select group_concat(?,b order by a) from t1
-group by ''a'' ' ;
-execute stmt1 using @arg00;
-group_concat(?,b order by a)
-MySQLone,MySQLtwo,MySQLthree,MySQLfour
-select group_concat(b,@arg00 order by a) from t1
-group by 'a' ;
-group_concat(b,@arg00 order by a)
-oneMySQL,twoMySQL,threeMySQL,fourMySQL
-prepare stmt1 from ' select group_concat(b,? order by a) from t1
-group by ''a'' ' ;
-execute stmt1 using @arg00;
-group_concat(b,? order by a)
-oneMySQL,twoMySQL,threeMySQL,fourMySQL
-set @arg00='first' ;
-set @arg01='second' ;
-set @arg02=NULL;
-select @arg00, @arg01 from t1 where a=1 ;
-@arg00 @arg01
-first second
-prepare stmt1 from ' select ?, ? from t1 where a=1 ' ;
-execute stmt1 using @arg00, @arg01 ;
-? ?
-first second
-execute stmt1 using @arg02, @arg01 ;
-? ?
-NULL second
-execute stmt1 using @arg00, @arg02 ;
-? ?
-first NULL
-execute stmt1 using @arg02, @arg02 ;
-? ?
-NULL NULL
-drop table if exists t5 ;
-create table t5 (id1 int(11) not null default '0',
-value2 varchar(100), value1 varchar(100)) ;
-insert into t5 values (1,'hh','hh'),(2,'hh','hh'),
-(1,'ii','ii'),(2,'ii','ii') ;
-prepare stmt1 from ' select id1,value1 from t5 where id1=? or value1=? order by id1,value1 ' ;
-set @arg00=1 ;
-set @arg01='hh' ;
-execute stmt1 using @arg00, @arg01 ;
-id1 value1
-1 hh
-1 ii
-2 hh
-drop table t5 ;
-drop table if exists t5 ;
-create table t5(session_id char(9) not null) ;
-insert into t5 values ('abc') ;
-prepare stmt1 from ' select * from t5
-where ?=''1111'' and session_id = ''abc'' ' ;
-set @arg00='abc' ;
-execute stmt1 using @arg00 ;
-session_id
-set @arg00='1111' ;
-execute stmt1 using @arg00 ;
-session_id
-abc
-set @arg00='abc' ;
-execute stmt1 using @arg00 ;
-session_id
-drop table t5 ;
-set @arg00='FROM' ;
-select a @arg00 t1 where a=1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 t1 where a=1' at line 1
-prepare stmt1 from ' select a ? t1 where a=1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? t1 where a=1' at line 1
-set @arg00='t1' ;
-select a from @arg00 where a=1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 where a=1' at line 1
-prepare stmt1 from ' select a from ? where a=1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? where a=1' at line 1
-set @arg00='WHERE' ;
-select a from t1 @arg00 a=1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 a=1' at line 1
-prepare stmt1 from ' select a from t1 ? a=1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? a=1' at line 1
-set @arg00=1 ;
-select a FROM t1 where a=@arg00 ;
-a
-1
-prepare stmt1 from ' select a FROM t1 where a=? ' ;
-execute stmt1 using @arg00 ;
-a
-1
-set @arg00=1000 ;
-execute stmt1 using @arg00 ;
-a
-set @arg00=NULL ;
-select a FROM t1 where a=@arg00 ;
-a
-prepare stmt1 from ' select a FROM t1 where a=? ' ;
-execute stmt1 using @arg00 ;
-a
-set @arg00=4 ;
-select a FROM t1 where a=sqrt(@arg00) ;
-a
-2
-prepare stmt1 from ' select a FROM t1 where a=sqrt(?) ' ;
-execute stmt1 using @arg00 ;
-a
-2
-set @arg00=NULL ;
-select a FROM t1 where a=sqrt(@arg00) ;
-a
-prepare stmt1 from ' select a FROM t1 where a=sqrt(?) ' ;
-execute stmt1 using @arg00 ;
-a
-set @arg00=2 ;
-set @arg01=3 ;
-select a FROM t1 where a in (@arg00,@arg01) order by a;
-a
-2
-3
-prepare stmt1 from ' select a FROM t1 where a in (?,?) order by a ';
-execute stmt1 using @arg00, @arg01;
-a
-2
-3
-set @arg00= 'one' ;
-set @arg01= 'two' ;
-set @arg02= 'five' ;
-prepare stmt1 from ' select b FROM t1 where b in (?,?,?) order by b ' ;
-execute stmt1 using @arg00, @arg01, @arg02 ;
-b
-one
-two
-prepare stmt1 from ' select b FROM t1 where b like ? ';
-set @arg00='two' ;
-execute stmt1 using @arg00 ;
-b
-two
-set @arg00='tw%' ;
-execute stmt1 using @arg00 ;
-b
-two
-set @arg00='%wo' ;
-execute stmt1 using @arg00 ;
-b
-two
-set @arg00=null ;
-insert into t9 set c1= 0, c5 = NULL ;
-select c5 from t9 where c5 > NULL ;
-c5
-prepare stmt1 from ' select c5 from t9 where c5 > ? ';
-execute stmt1 using @arg00 ;
-c5
-select c5 from t9 where c5 < NULL ;
-c5
-prepare stmt1 from ' select c5 from t9 where c5 < ? ';
-execute stmt1 using @arg00 ;
-c5
-select c5 from t9 where c5 = NULL ;
-c5
-prepare stmt1 from ' select c5 from t9 where c5 = ? ';
-execute stmt1 using @arg00 ;
-c5
-select c5 from t9 where c5 <=> NULL ;
-c5
-NULL
-prepare stmt1 from ' select c5 from t9 where c5 <=> ? ';
-execute stmt1 using @arg00 ;
-c5
-NULL
-delete from t9 where c1= 0 ;
-set @arg00='>' ;
-select a FROM t1 where a @arg00 1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 1' at line 1
-prepare stmt1 from ' select a FROM t1 where a ? 1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? 1' at line 1
-set @arg00=1 ;
-select a,b FROM t1 where a is not NULL
-AND b is not NULL group by a - @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-prepare stmt1 from ' select a,b FROM t1 where a is not NULL
-AND b is not NULL group by a - ? ' ;
-execute stmt1 using @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00='two' ;
-select a,b FROM t1 where a is not NULL
-AND b is not NULL having b <> @arg00 order by a ;
-a b
-1 one
-3 three
-4 four
-prepare stmt1 from ' select a,b FROM t1 where a is not NULL
-AND b is not NULL having b <> ? order by a ' ;
-execute stmt1 using @arg00 ;
-a b
-1 one
-3 three
-4 four
-set @arg00=1 ;
-select a,b FROM t1 where a is not NULL
-AND b is not NULL order by a - @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-prepare stmt1 from ' select a,b FROM t1 where a is not NULL
-AND b is not NULL order by a - ? ' ;
-execute stmt1 using @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00=2 ;
-select a,b from t1 order by 2 ;
-a b
-4 four
-1 one
-3 three
-2 two
-prepare stmt1 from ' select a,b from t1
-order by ? ';
-execute stmt1 using @arg00;
-a b
-4 four
-1 one
-3 three
-2 two
-set @arg00=1 ;
-execute stmt1 using @arg00;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00=0 ;
-execute stmt1 using @arg00;
-ERROR 42S22: Unknown column '?' in 'order clause'
-set @arg00=1;
-prepare stmt1 from ' select a,b from t1 order by a
-limit 1 ';
-execute stmt1 ;
-a b
-1 one
-prepare stmt1 from ' select a,b from t1 order by a limit ? ';
-execute stmt1 using @arg00;
-a b
-1 one
-set @arg00='b' ;
-set @arg01=0 ;
-set @arg02=2 ;
-set @arg03=2 ;
-select sum(a), @arg00 from t1 where a > @arg01
-and b is not null group by substr(b,@arg02)
-having sum(a) <> @arg03 ;
-sum(a) @arg00
-3 b
-1 b
-4 b
-prepare stmt1 from ' select sum(a), ? from t1 where a > ?
-and b is not null group by substr(b,?)
-having sum(a) <> ? ';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03;
-sum(a) ?
-3 b
-1 b
-4 b
-test_sequence
------- join tests ------
-select first.a as a1, second.a as a2
-from t1 first, t1 second
-where first.a = second.a order by a1 ;
-a1 a2
-1 1
-2 2
-3 3
-4 4
-prepare stmt1 from ' select first.a as a1, second.a as a2
- from t1 first, t1 second
- where first.a = second.a order by a1 ';
-execute stmt1 ;
-a1 a2
-1 1
-2 2
-3 3
-4 4
-set @arg00='ABC';
-set @arg01='two';
-set @arg02='one';
-select first.a, @arg00, second.a FROM t1 first, t1 second
-where @arg01 = first.b or first.a = second.a or second.b = @arg02
-order by second.a, first.a;
-a @arg00 a
-1 ABC 1
-2 ABC 1
-3 ABC 1
-4 ABC 1
-2 ABC 2
-2 ABC 3
-3 ABC 3
-2 ABC 4
-4 ABC 4
-prepare stmt1 from ' select first.a, ?, second.a FROM t1 first, t1 second
- where ? = first.b or first.a = second.a or second.b = ?
- order by second.a, first.a';
-execute stmt1 using @arg00, @arg01, @arg02;
-a ? a
-1 ABC 1
-2 ABC 1
-3 ABC 1
-4 ABC 1
-2 ABC 2
-2 ABC 3
-3 ABC 3
-2 ABC 4
-4 ABC 4
-drop table if exists t2 ;
-create table t2 as select * from t1 ;
-set @query1= 'SELECT * FROM t2 join t1 on (t1.a=t2.a) order by t2.a ' ;
-set @query2= 'SELECT * FROM t2 natural join t1 order by t2.a ' ;
-set @query3= 'SELECT * FROM t2 join t1 using(a) order by t2.a ' ;
-set @query4= 'SELECT * FROM t2 left join t1 on(t1.a=t2.a) order by t2.a ' ;
-set @query5= 'SELECT * FROM t2 natural left join t1 order by t2.a ' ;
-set @query6= 'SELECT * FROM t2 left join t1 using(a) order by t2.a ' ;
-set @query7= 'SELECT * FROM t2 right join t1 on(t1.a=t2.a) order by t2.a ' ;
-set @query8= 'SELECT * FROM t2 natural right join t1 order by t2.a ' ;
-set @query9= 'SELECT * FROM t2 right join t1 using(a) order by t2.a ' ;
-the join statement is:
-SELECT * FROM t2 right join t1 using(a) order by t2.a
-prepare stmt1 from @query9 ;
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-the join statement is:
-SELECT * FROM t2 natural right join t1 order by t2.a
-prepare stmt1 from @query8 ;
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-the join statement is:
-SELECT * FROM t2 right join t1 on(t1.a=t2.a) order by t2.a
-prepare stmt1 from @query7 ;
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-the join statement is:
-SELECT * FROM t2 left join t1 using(a) order by t2.a
-prepare stmt1 from @query6 ;
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-the join statement is:
-SELECT * FROM t2 natural left join t1 order by t2.a
-prepare stmt1 from @query5 ;
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-the join statement is:
-SELECT * FROM t2 left join t1 on(t1.a=t2.a) order by t2.a
-prepare stmt1 from @query4 ;
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-the join statement is:
-SELECT * FROM t2 join t1 using(a) order by t2.a
-prepare stmt1 from @query3 ;
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-the join statement is:
-SELECT * FROM t2 natural join t1 order by t2.a
-prepare stmt1 from @query2 ;
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-the join statement is:
-SELECT * FROM t2 join t1 on (t1.a=t2.a) order by t2.a
-prepare stmt1 from @query1 ;
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-drop table t2 ;
-test_sequence
------- subquery tests ------
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = ''two'') ';
-execute stmt1 ;
-a b
-2 two
-set @arg00='two' ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where b = 'two' ) and b=@arg00 ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = ''two'') and b=? ';
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00='two' ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where b = @arg00 ) and b='two' ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = ? ) and b=''two'' ' ;
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=3 ;
-set @arg01='three' ;
-select a,b FROM t1 where (a,b) in (select 3, 'three');
-a b
-3 three
-select a FROM t1 where (a,b) in (select @arg00,@arg01);
-a
-3
-prepare stmt1 from ' select a FROM t1 where (a,b) in (select ?, ?) ';
-execute stmt1 using @arg00, @arg01;
-a
-3
-set @arg00=1 ;
-set @arg01='two' ;
-set @arg02=2 ;
-set @arg03='two' ;
-select a, @arg00, b FROM t1 outer_table where
-b=@arg01 and a = (select @arg02 from t1 where b = @arg03 ) ;
-a @arg00 b
-2 1 two
-prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
- b=? and a = (select ? from t1 where b = ? ) ' ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
-a ? b
-2 1 two
-prepare stmt1 from 'select c4 FROM t9 where
- c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
-execute stmt1 using @arg01, @arg02;
-c4
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = outer_table.b ) order by a ';
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-prepare stmt1 from ' SELECT a as ccc from t1 outr where a+1=
- (SELECT 1+outr.a from t1 where outr.a+1=a+1 and a=1) ';
-execute stmt1 ;
-ccc
-1
-deallocate prepare stmt1 ;
-prepare stmt1 from ' SELECT a as ccc from t1 outr where a+1=
- (SELECT 1+outr.a from t1 where outr.a+1=a+1 and a=1) ';
-execute stmt1 ;
-ccc
-1
-deallocate prepare stmt1 ;
-prepare stmt1 from ' SELECT a as ccc from t1 outr where a+1=
- (SELECT 1+outr.a from t1 where outr.a+1=a+1 and a=1) ';
-execute stmt1 ;
-ccc
-1
-deallocate prepare stmt1 ;
-set @arg00='two' ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where b = outer_table.b ) and b=@arg00 ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = outer_table.b) and b=? ';
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=2 ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where a = @arg00 and b = outer_table.b) and b='two' ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where a = ? and b = outer_table.b) and b=''two'' ' ;
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=2 ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where outer_table.a = @arg00 and a=2) and b='two' ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where outer_table.a = ? and a=2) and b=''two'' ' ;
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=1 ;
-set @arg01='two' ;
-set @arg02=2 ;
-set @arg03='two' ;
-select a, @arg00, b FROM t1 outer_table where
-b=@arg01 and a = (select @arg02 from t1 where outer_table.b = @arg03
-and outer_table.a=a ) ;
-a @arg00 b
-2 1 two
-prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
- b=? and a = (select ? from t1 where outer_table.b = ?
- and outer_table.a=a ) ' ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
-a ? b
-2 1 two
-set @arg00=1 ;
-set @arg01=0 ;
-select a, @arg00
-from ( select a - @arg00 as a from t1 where a=@arg00 ) as t2
-where a=@arg01;
-a @arg00
-0 1
-prepare stmt1 from ' select a, ?
- from ( select a - ? as a from t1 where a=? ) as t2
- where a=? ';
-execute stmt1 using @arg00, @arg00, @arg00, @arg01 ;
-a ?
-0 1
-drop table if exists t2 ;
-create table t2 as select * from t1;
-prepare stmt1 from ' select a in (select a from t2) from t1 ' ;
-execute stmt1 ;
-a in (select a from t2)
-1
-1
-1
-1
-drop table if exists t5, t6, t7 ;
-create table t5 (a int , b int) ;
-create table t6 like t5 ;
-create table t7 like t5 ;
-insert into t5 values (0, 100), (1, 2), (1, 3), (2, 2), (2, 7),
-(2, -1), (3, 10) ;
-insert into t6 values (0, 0), (1, 1), (2, 1), (3, 1), (4, 1) ;
-insert into t7 values (3, 3), (2, 2), (1, 1) ;
-prepare stmt1 from ' select a, (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1) from t7 ' ;
-execute stmt1 ;
-a (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1)
-3 1
-2 2
-1 2
-execute stmt1 ;
-a (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1)
-3 1
-2 2
-1 2
-execute stmt1 ;
-a (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1)
-3 1
-2 2
-1 2
-drop table t5, t6, t7 ;
-drop table if exists t2 ;
-create table t2 as select * from t9;
-set @stmt= ' SELECT
- (SELECT SUM(c1 + c12 + 0.0) FROM t2
- where (t9.c2 - 0e-3) = t2.c2
- GROUP BY t9.c15 LIMIT 1) as scalar_s,
- exists (select 1.0e+0 from t2
- where t2.c3 * 9.0000000000 = t9.c4) as exists_s,
- c5 * 4 in (select c6 + 0.3e+1 from t2) as in_s,
- (c7 - 4, c8 - 4) in (select c9 + 4.0, c10 + 40e-1 from t2) as in_row_s
-FROM t9,
-(select c25 x, c32 y from t2) tt WHERE x = c25 ' ;
-prepare stmt1 from @stmt ;
-execute stmt1 ;
-execute stmt1 ;
-set @stmt= concat('explain ',@stmt);
-prepare stmt1 from @stmt ;
-execute stmt1 ;
-execute stmt1 ;
-set @stmt= ' SELECT
- (SELECT SUM(c1+c12+?) FROM t2 where (t9.c2-?)=t2.c2
- GROUP BY t9.c15 LIMIT 1) as scalar_s,
- exists (select ? from t2
- where t2.c3*?=t9.c4) as exists_s,
- c5*? in (select c6+? from t2) as in_s,
- (c7-?, c8-?) in (select c9+?, c10+? from t2) as in_row_s
-FROM t9,
-(select c25 x, c32 y from t2) tt WHERE x =c25 ' ;
-set @arg00= 0.0 ;
-set @arg01= 0e-3 ;
-set @arg02= 1.0e+0 ;
-set @arg03= 9.0000000000 ;
-set @arg04= 4 ;
-set @arg05= 0.3e+1 ;
-set @arg06= 4 ;
-set @arg07= 4 ;
-set @arg08= 4.0 ;
-set @arg09= 40e-1 ;
-prepare stmt1 from @stmt ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-set @stmt= concat('explain ',@stmt);
-prepare stmt1 from @stmt ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-drop table t2 ;
-select 1 < (select a from t1) ;
-ERROR 21000: Subquery returns more than 1 row
-prepare stmt1 from ' select 1 < (select a from t1) ' ;
-execute stmt1 ;
-ERROR 21000: Subquery returns more than 1 row
-select 1 as my_col ;
-my_col
-1
-test_sequence
------- union tests ------
-prepare stmt1 from ' select a FROM t1 where a=1
- union distinct
- select a FROM t1 where a=1 ';
-execute stmt1 ;
-a
-1
-execute stmt1 ;
-a
-1
-prepare stmt1 from ' select a FROM t1 where a=1
- union all
- select a FROM t1 where a=1 ';
-execute stmt1 ;
-a
-1
-1
-prepare stmt1 from ' SELECT 1, 2 union SELECT 1 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-prepare stmt1 from ' SELECT 1 union SELECT 1, 2 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-prepare stmt1 from ' SELECT * from t1 union SELECT 1 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-prepare stmt1 from ' SELECT 1 union SELECT * from t1 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-set @arg00=1 ;
-select @arg00 FROM t1 where a=1
-union distinct
-select 1 FROM t1 where a=1;
-@arg00
-1
-prepare stmt1 from ' select ? FROM t1 where a=1
- union distinct
- select 1 FROM t1 where a=1 ' ;
-execute stmt1 using @arg00;
-?
-1
-set @arg00=1 ;
-select 1 FROM t1 where a=1
-union distinct
-select @arg00 FROM t1 where a=1;
-1
-1
-prepare stmt1 from ' select 1 FROM t1 where a=1
- union distinct
- select ? FROM t1 where a=1 ' ;
-execute stmt1 using @arg00;
-1
-1
-set @arg00='a' ;
-select @arg00 FROM t1 where a=1
-union distinct
-select @arg00 FROM t1 where a=1;
-@arg00
-a
-prepare stmt1 from ' select ? FROM t1 where a=1
- union distinct
- select ? FROM t1 where a=1 ';
-execute stmt1 using @arg00, @arg00;
-?
-a
-prepare stmt1 from ' select ?
- union distinct
- select ? ';
-execute stmt1 using @arg00, @arg00;
-?
-a
-set @arg00='a' ;
-set @arg01=1 ;
-set @arg02='a' ;
-set @arg03=2 ;
-select @arg00 FROM t1 where a=@arg01
-union distinct
-select @arg02 FROM t1 where a=@arg03;
-@arg00
-a
-prepare stmt1 from ' select ? FROM t1 where a=?
- union distinct
- select ? FROM t1 where a=? ' ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03;
-?
-a
-set @arg00=1 ;
-prepare stmt1 from ' select sum(a) + 200, ? from t1
-union distinct
-select sum(a) + 200, 1 from t1
-group by b ' ;
-execute stmt1 using @arg00;
-sum(a) + 200 ?
-210 1
-204 1
-201 1
-203 1
-202 1
-set @Oporto='Oporto' ;
-set @Lisboa='Lisboa' ;
-set @0=0 ;
-set @1=1 ;
-set @2=2 ;
-set @3=3 ;
-set @4=4 ;
-select @Oporto,@Lisboa,@0,@1,@2,@3,@4 ;
-@Oporto @Lisboa @0 @1 @2 @3 @4
-Oporto Lisboa 0 1 2 3 4
-select sum(a) + 200 as the_sum, @Oporto as the_town from t1
-group by b
-union distinct
-select sum(a) + 200, @Lisboa from t1
-group by b ;
-the_sum the_town
-204 Oporto
-201 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-201 Lisboa
-203 Lisboa
-202 Lisboa
-prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
- group by b
- union distinct
- select sum(a) + 200, ? from t1
- group by b ' ;
-execute stmt1 using @Oporto, @Lisboa;
-the_sum the_town
-204 Oporto
-201 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-201 Lisboa
-203 Lisboa
-202 Lisboa
-select sum(a) + 200 as the_sum, @Oporto as the_town from t1
-where a > @1
-group by b
-union distinct
-select sum(a) + 200, @Lisboa from t1
-where a > @2
-group by b ;
-the_sum the_town
-204 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-203 Lisboa
-prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
- where a > ?
- group by b
- union distinct
- select sum(a) + 200, ? from t1
- where a > ?
- group by b ' ;
-execute stmt1 using @Oporto, @1, @Lisboa, @2;
-the_sum the_town
-204 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-203 Lisboa
-select sum(a) + 200 as the_sum, @Oporto as the_town from t1
-where a > @1
-group by b
-having avg(a) > @2
-union distinct
-select sum(a) + 200, @Lisboa from t1
-where a > @2
-group by b
-having avg(a) > @3;
-the_sum the_town
-204 Oporto
-203 Oporto
-204 Lisboa
-prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
- where a > ?
- group by b
- having avg(a) > ?
- union distinct
- select sum(a) + 200, ? from t1
- where a > ?
- group by b
- having avg(a) > ? ';
-execute stmt1 using @Oporto, @1, @2, @Lisboa, @2, @3;
-the_sum the_town
-204 Oporto
-203 Oporto
-204 Lisboa
-test_sequence
------- explain select tests ------
-prepare stmt1 from ' explain select * from t9 ' ;
-execute stmt1;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def id 8 3 1 N 32929 0 63
-def select_type 253 19 6 N 1 31 8
-def table 253 64 2 Y 0 31 8
-def type 253 10 3 Y 0 31 8
-def possible_keys 253 4096 0 Y 0 31 8
-def key 253 64 0 Y 0 31 8
-def key_len 253 4096 0 Y 0 31 8
-def ref 253 1024 0 Y 0 31 8
-def rows 8 10 1 Y 32928 0 63
-def Extra 253 255 0 N 1 31 8
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t9 ALL NULL NULL NULL NULL 3
-test_sequence
------- delete tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-prepare stmt1 from 'delete from t1 where a=2' ;
-execute stmt1;
-select a,b from t1 where a=2;
-a b
-execute stmt1;
-insert into t1 values(0,NULL);
-set @arg00=NULL;
-prepare stmt1 from 'delete from t1 where b=?' ;
-execute stmt1 using @arg00;
-select a,b from t1 where b is NULL ;
-a b
-0 NULL
-set @arg00='one';
-execute stmt1 using @arg00;
-select a,b from t1 where b=@arg00;
-a b
-prepare stmt1 from 'truncate table t1' ;
-test_sequence
------- update tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-prepare stmt1 from 'update t1 set b=''a=two'' where a=2' ;
-execute stmt1;
-select a,b from t1 where a=2;
-a b
-2 a=two
-execute stmt1;
-select a,b from t1 where a=2;
-a b
-2 a=two
-set @arg00=NULL;
-prepare stmt1 from 'update t1 set b=? where a=2' ;
-execute stmt1 using @arg00;
-select a,b from t1 where a=2;
-a b
-2 NULL
-set @arg00='two';
-execute stmt1 using @arg00;
-select a,b from t1 where a=2;
-a b
-2 two
-set @arg00=2;
-prepare stmt1 from 'update t1 set b=NULL where a=?' ;
-execute stmt1 using @arg00;
-select a,b from t1 where a=@arg00;
-a b
-2 NULL
-update t1 set b='two' where a=@arg00;
-set @arg00=2000;
-execute stmt1 using @arg00;
-select a,b from t1 where a=@arg00;
-a b
-set @arg00=2;
-set @arg01=22;
-prepare stmt1 from 'update t1 set a=? where a=?' ;
-execute stmt1 using @arg00, @arg00;
-select a,b from t1 where a=@arg00;
-a b
-2 two
-execute stmt1 using @arg01, @arg00;
-select a,b from t1 where a=@arg01;
-a b
-22 two
-execute stmt1 using @arg00, @arg01;
-select a,b from t1 where a=@arg00;
-a b
-2 two
-set @arg00=NULL;
-set @arg01=2;
-execute stmt1 using @arg00, @arg01;
-Warnings:
-Warning 1048 Column 'a' cannot be null
-select a,b from t1 order by a;
-a b
-0 two
-1 one
-3 three
-4 four
-set @arg00=0;
-execute stmt1 using @arg01, @arg00;
-select a,b from t1 order by a;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00=23;
-set @arg01='two';
-set @arg02=2;
-set @arg03='two';
-set @arg04=2;
-drop table if exists t2;
-create table t2 as select a,b from t1 ;
-prepare stmt1 from 'update t1 set a=? where b=?
- and a in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 where a = @arg00 ;
-a b
-23 two
-prepare stmt1 from 'update t1 set a=? where b=?
- and a not in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 order by a ;
-a b
-1 one
-2 two
-3 three
-4 four
-drop table t2 ;
-create table t2
-(
-a int, b varchar(30),
-primary key(a)
-) engine = 'BDB' ;
-insert into t2(a,b) select a, b from t1 ;
-prepare stmt1 from 'update t1 set a=? where b=?
- and a in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 where a = @arg00 ;
-a b
-23 two
-prepare stmt1 from 'update t1 set a=? where b=?
- and a not in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 order by a ;
-a b
-1 one
-2 two
-3 three
-4 four
-drop table t2 ;
-set @arg00=1;
-prepare stmt1 from 'update t1 set b=''bla''
-where a=2
-limit 1';
-execute stmt1 ;
-select a,b from t1 where b = 'bla' ;
-a b
-2 bla
-prepare stmt1 from 'update t1 set b=''bla'' where a=2 limit ?';
-execute stmt1 using @arg00;
-test_sequence
------- insert tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-prepare stmt1 from 'insert into t1 values(5, ''five'' )';
-execute stmt1;
-select a,b from t1 where a = 5;
-a b
-5 five
-set @arg00='six' ;
-prepare stmt1 from 'insert into t1 values(6, ? )';
-execute stmt1 using @arg00;
-select a,b from t1 where b = @arg00;
-a b
-6 six
-execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
-set @arg00=NULL ;
-prepare stmt1 from 'insert into t1 values(0, ? )';
-execute stmt1 using @arg00;
-select a,b from t1 where b is NULL;
-a b
-0 NULL
-set @arg00=8 ;
-set @arg01='eight' ;
-prepare stmt1 from 'insert into t1 values(?, ? )';
-execute stmt1 using @arg00, @arg01 ;
-select a,b from t1 where b = @arg01;
-a b
-8 eight
-set @NULL= null ;
-set @arg00= 'abc' ;
-execute stmt1 using @NULL, @NULL ;
-ERROR 23000: Column 'a' cannot be null
-execute stmt1 using @NULL, @NULL ;
-ERROR 23000: Column 'a' cannot be null
-execute stmt1 using @NULL, @arg00 ;
-ERROR 23000: Column 'a' cannot be null
-execute stmt1 using @NULL, @arg00 ;
-ERROR 23000: Column 'a' cannot be null
-set @arg01= 10000 + 2 ;
-execute stmt1 using @arg01, @arg00 ;
-set @arg01= 10000 + 1 ;
-execute stmt1 using @arg01, @arg00 ;
-select * from t1 where a > 10000 order by a ;
-a b
-10001 abc
-10002 abc
-delete from t1 where a > 10000 ;
-set @arg01= 10000 + 2 ;
-execute stmt1 using @arg01, @NULL ;
-set @arg01= 10000 + 1 ;
-execute stmt1 using @arg01, @NULL ;
-select * from t1 where a > 10000 order by a ;
-a b
-10001 NULL
-10002 NULL
-delete from t1 where a > 10000 ;
-set @arg01= 10000 + 10 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 9 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 8 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 7 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 6 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 5 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 4 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 3 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 2 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 1 ;
-execute stmt1 using @arg01, @arg01 ;
-select * from t1 where a > 10000 order by a ;
-a b
-10001 10001
-10002 10002
-10003 10003
-10004 10004
-10005 10005
-10006 10006
-10007 10007
-10008 10008
-10009 10009
-10010 10010
-delete from t1 where a > 10000 ;
-set @arg00=81 ;
-set @arg01='8-1' ;
-set @arg02=82 ;
-set @arg03='8-2' ;
-prepare stmt1 from 'insert into t1 values(?,?),(?,?)';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
-select a,b from t1 where a in (@arg00,@arg02) ;
-a b
-81 8-1
-82 8-2
-set @arg00=9 ;
-set @arg01='nine' ;
-prepare stmt1 from 'insert into t1 set a=?, b=? ';
-execute stmt1 using @arg00, @arg01 ;
-select a,b from t1 where a = @arg00 ;
-a b
-9 nine
-set @arg00=6 ;
-set @arg01=1 ;
-prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
- on duplicate key update a=a + ?, b=concat(b,''modified'') ';
-execute stmt1 using @arg00, @arg01;
-select * from t1 order by a;
-a b
-0 NULL
-1 one
-2 two
-3 three
-4 four
-5 five
-7 sixmodified
-8 eight
-9 nine
-81 8-1
-82 8-2
-set @arg00=81 ;
-set @arg01=1 ;
-execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
-drop table if exists t2 ;
-create table t2 (id int auto_increment primary key)
-ENGINE= 'BDB' ;
-prepare stmt1 from ' select last_insert_id() ' ;
-insert into t2 values (NULL) ;
-execute stmt1 ;
-last_insert_id()
-1
-insert into t2 values (NULL) ;
-execute stmt1 ;
-last_insert_id()
-2
-drop table t2 ;
-set @1000=1000 ;
-set @x1000_2="x1000_2" ;
-set @x1000_3="x1000_3" ;
-set @x1000="x1000" ;
-set @1100=1100 ;
-set @x1100="x1100" ;
-set @100=100 ;
-set @updated="updated" ;
-insert into t1 values(1000,'x1000_1') ;
-insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
-on duplicate key update a = a + @100, b = concat(b,@updated) ;
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 x1000_3
-1100 x1000_1updated
-delete from t1 where a >= 1000 ;
-insert into t1 values(1000,'x1000_1') ;
-prepare stmt1 from ' insert into t1 values(?,?),(?,?)
- on duplicate key update a = a + ?, b = concat(b,?) ';
-execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 x1000_3
-1100 x1000_1updated
-delete from t1 where a >= 1000 ;
-insert into t1 values(1000,'x1000_1') ;
-execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1200 x1000_1updatedupdated
-delete from t1 where a >= 1000 ;
-prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
-execute stmt1;
-execute stmt1;
-execute stmt1;
-test_sequence
------- multi table tests ------
-delete from t1 ;
-delete from t9 ;
-insert into t1(a,b) values (1, 'one'), (2, 'two'), (3, 'three') ;
-insert into t9 (c1,c21)
-values (1, 'one'), (2, 'two'), (3, 'three') ;
-prepare stmt_delete from " delete t1, t9
- from t1, t9 where t1.a=t9.c1 and t1.b='updated' ";
-prepare stmt_update from " update t1, t9
- set t1.b='updated', t9.c21='updated'
- where t1.a=t9.c1 and t1.a=? ";
-prepare stmt_select1 from " select a, b from t1 order by a" ;
-prepare stmt_select2 from " select c1, c21 from t9 order by c1" ;
-set @arg00= 1 ;
-execute stmt_update using @arg00 ;
-execute stmt_delete ;
-execute stmt_select1 ;
-a b
-2 two
-3 three
-execute stmt_select2 ;
-c1 c21
-2 two
-3 three
-set @arg00= @arg00 + 1 ;
-execute stmt_update using @arg00 ;
-execute stmt_delete ;
-execute stmt_select1 ;
-a b
-3 three
-execute stmt_select2 ;
-c1 c21
-3 three
-set @arg00= @arg00 + 1 ;
-execute stmt_update using @arg00 ;
-execute stmt_delete ;
-execute stmt_select1 ;
-a b
-execute stmt_select2 ;
-c1 c21
-set @arg00= @arg00 + 1 ;
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-insert into t1 values(0,NULL) ;
-set @duplicate='duplicate ' ;
-set @1000=1000 ;
-set @5=5 ;
-select a,b from t1 where a < 5 order by a ;
-a b
-0 NULL
-1 one
-2 two
-3 three
-4 four
-insert into t1 select a + @1000, concat(@duplicate,b) from t1
-where a < @5 ;
-affected rows: 5
-info: Records: 5 Duplicates: 0 Warnings: 0
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 NULL
-1001 duplicate one
-1002 duplicate two
-1003 duplicate three
-1004 duplicate four
-delete from t1 where a >= 1000 ;
-prepare stmt1 from ' insert into t1 select a + ?, concat(?,b) from t1
-where a < ? ' ;
-execute stmt1 using @1000, @duplicate, @5;
-affected rows: 5
-info: Records: 5 Duplicates: 0 Warnings: 0
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 NULL
-1001 duplicate one
-1002 duplicate two
-1003 duplicate three
-1004 duplicate four
-delete from t1 where a >= 1000 ;
-set @1=1 ;
-set @2=2 ;
-set @100=100 ;
-set @float=1.00;
-set @five='five' ;
-drop table if exists t2;
-create table t2 like t1 ;
-insert into t2 (b,a)
-select @duplicate, sum(first.a) from t1 first, t1 second
-where first.a <> @5 and second.b = first.b
-and second.b <> @five
-group by second.b
-having sum(second.a) > @2
-union
-select b, a + @100 from t1
-where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
-from t1);
-affected rows: 3
-info: Records: 3 Duplicates: 0 Warnings: 0
-select a,b from t2 order by a ;
-a b
-3 duplicate
-4 duplicate
-103 three
-delete from t2 ;
-prepare stmt1 from ' insert into t2 (b,a)
-select ?, sum(first.a)
- from t1 first, t1 second
- where first.a <> ? and second.b = first.b and second.b <> ?
- group by second.b
- having sum(second.a) > ?
-union
-select b, a + ? from t1
- where (a,b) in ( select sqrt(a+?)+CAST(? AS signed),b
- from t1 ) ' ;
-execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
-affected rows: 3
-info: Records: 3 Duplicates: 0 Warnings: 0
-select a,b from t2 order by a ;
-a b
-3 duplicate
-4 duplicate
-103 three
-drop table t2;
-drop table if exists t5 ;
-set @arg01= 8;
-set @arg02= 8.0;
-set @arg03= 80.00000000000e-1;
-set @arg04= 'abc' ;
-set @arg05= CAST('abc' as binary) ;
-set @arg06= '1991-08-05' ;
-set @arg07= CAST('1991-08-05' as date);
-set @arg08= '1991-08-05 01:01:01' ;
-set @arg09= CAST('1991-08-05 01:01:01' as datetime) ;
-set @arg10= unix_timestamp('1991-01-01 01:01:01');
-set @arg11= YEAR('1991-01-01 01:01:01');
-set @arg12= 8 ;
-set @arg12= NULL ;
-set @arg13= 8.0 ;
-set @arg13= NULL ;
-set @arg14= 'abc';
-set @arg14= NULL ;
-set @arg15= CAST('abc' as binary) ;
-set @arg15= NULL ;
-create table t5 as select
-8 as const01, @arg01 as param01,
-8.0 as const02, @arg02 as param02,
-80.00000000000e-1 as const03, @arg03 as param03,
-'abc' as const04, @arg04 as param04,
-CAST('abc' as binary) as const05, @arg05 as param05,
-'1991-08-05' as const06, @arg06 as param06,
-CAST('1991-08-05' as date) as const07, @arg07 as param07,
-'1991-08-05 01:01:01' as const08, @arg08 as param08,
-CAST('1991-08-05 01:01:01' as datetime) as const09, @arg09 as param09,
-unix_timestamp('1991-01-01 01:01:01') as const10, @arg10 as param10,
-YEAR('1991-01-01 01:01:01') as const11, @arg11 as param11,
-NULL as const12, @arg12 as param12,
-@arg13 as param13,
-@arg14 as param14,
-@arg15 as param15;
-show create table t5 ;
-Table Create Table
-t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
- `param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
- `param05` longblob,
- `const06` varchar(10) NOT NULL default '',
- `param06` longtext,
- `const07` date default NULL,
- `param07` longblob,
- `const08` varchar(19) NOT NULL default '',
- `param08` longtext,
- `const09` datetime default NULL,
- `param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
- `param14` longtext,
- `param15` longblob
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-select * from t5 ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def test t5 t5 const01 const01 3 1 1 N 32769 0 63
-def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
-def test t5 t5 const02 const02 246 4 3 N 1 1 63
-def test t5 t5 param02 param02 246 67 32 Y 0 30 63
-def test t5 t5 const03 const03 5 17 1 N 32769 31 63
-def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
-def test t5 t5 const04 const04 253 3 3 N 1 0 8
-def test t5 t5 param04 param04 252 4294967295 3 Y 16 0 8
-def test t5 t5 const05 const05 253 3 3 N 129 0 63
-def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
-def test t5 t5 const06 const06 253 10 10 N 1 0 8
-def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
-def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
-def test t5 t5 const08 const08 253 19 19 N 1 0 8
-def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
-def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
-def test t5 t5 const10 const10 3 10 9 N 32769 0 63
-def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
-def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
-def test t5 t5 param11 param11 8 20 4 Y 32768 0 63
-def test t5 t5 const12 const12 254 0 0 Y 128 0 63
-def test t5 t5 param12 param12 8 20 0 Y 32768 0 63
-def test t5 t5 param13 param13 246 67 0 Y 0 30 63
-def test t5 t5 param14 param14 252 4294967295 0 Y 16 0 8
-def test t5 t5 param15 param15 252 4294967295 0 Y 144 0 63
-const01 8
-param01 8
-const02 8.0
-param02 8.000000000000000000000000000000
-const03 8
-param03 8
-const04 abc
-param04 abc
-const05 abc
-param05 abc
-const06 1991-08-05
-param06 1991-08-05
-const07 1991-08-05
-param07 1991-08-05
-const08 1991-08-05 01:01:01
-param08 1991-08-05 01:01:01
-const09 1991-08-05 01:01:01
-param09 1991-08-05 01:01:01
-const10 662680861
-param10 662680861
-const11 1991
-param11 1991
-const12 NULL
-param12 NULL
-param13 NULL
-param14 NULL
-param15 NULL
-drop table t5 ;
-test_sequence
------- data type conversion tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-insert into t9 set c1= 0, c15= '1991-01-01 01:01:01' ;
-select * from t9 order by c1 ;
-c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 c16 c17 c18 c19 c20 c21 c22 c23 c24 c25 c26 c27 c28 c29 c30 c31 c32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-9 9 9 9 9 9 9 9 9 9 9.0000 9.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 0 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext two tuesday
-test_sequence
------- select @parameter:= column ------
-prepare full_info from "select @arg01, @arg02, @arg03, @arg04,
- @arg05, @arg06, @arg07, @arg08,
- @arg09, @arg10, @arg11, @arg12,
- @arg13, @arg14, @arg15, @arg16,
- @arg17, @arg18, @arg19, @arg20,
- @arg21, @arg22, @arg23, @arg24,
- @arg25, @arg26, @arg27, @arg28,
- @arg29, @arg30, @arg31, @arg32" ;
-select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
-@arg05:= c5, @arg06:= c6, @arg07:= c7, @arg08:= c8,
-@arg09:= c9, @arg10:= c10, @arg11:= c11, @arg12:= c12,
-@arg13:= c13, @arg14:= c14, @arg15:= c15, @arg16:= c16,
-@arg17:= c17, @arg18:= c18, @arg19:= c19, @arg20:= c20,
-@arg21:= c21, @arg22:= c22, @arg23:= c23, @arg24:= c24,
-@arg25:= c25, @arg26:= c26, @arg27:= c27, @arg28:= c28,
-@arg29:= c29, @arg30:= c30, @arg31:= c31, @arg32:= c32
-from t9 where c1= 1 ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
-@arg05:= c5, @arg06:= c6, @arg07:= c7, @arg08:= c8,
-@arg09:= c9, @arg10:= c10, @arg11:= c11, @arg12:= c12,
-@arg13:= c13, @arg14:= c14, @arg15:= c15, @arg16:= c16,
-@arg17:= c17, @arg18:= c18, @arg19:= c19, @arg20:= c20,
-@arg21:= c21, @arg22:= c22, @arg23:= c23, @arg24:= c24,
-@arg25:= c25, @arg26:= c26, @arg27:= c27, @arg28:= c28,
-@arg29:= c29, @arg30:= c30, @arg31:= c31, @arg32:= c32
-from t9 where c1= 0 ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select
- @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
- @arg05:= c5, @arg06:= c6, @arg07:= c7, @arg08:= c8,
- @arg09:= c9, @arg10:= c10, @arg11:= c11, @arg12:= c12,
- @arg13:= c13, @arg14:= c14, @arg15:= c15, @arg16:= c16,
- @arg17:= c17, @arg18:= c18, @arg19:= c19, @arg20:= c20,
- @arg21:= c21, @arg22:= c22, @arg23:= c23, @arg24:= c24,
- @arg25:= c25, @arg26:= c26, @arg27:= c27, @arg28:= c28,
- @arg29:= c29, @arg30:= c30, @arg31:= c31, @arg32:= c32
-from t9 where c1= ?" ;
-set @my_key= 1 ;
-execute stmt1 using @my_key ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-set @my_key= 0 ;
-execute stmt1 using @my_key ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':= c1 from t9 where c1= 1' at line 1
-test_sequence
------- select column, .. into @parm,.. ------
-select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
-c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24,
-c25, c26, c27, c28, c29, c30, c31, c32
-into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
-@arg09, @arg10, @arg11, @arg12, @arg13, @arg14, @arg15, @arg16,
-@arg17, @arg18, @arg19, @arg20, @arg21, @arg22, @arg23, @arg24,
-@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
-from t9 where c1= 1 ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
-c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24,
-c25, c26, c27, c28, c29, c30, c31, c32
-into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
-@arg09, @arg10, @arg11, @arg12, @arg13, @arg14, @arg15, @arg16,
-@arg17, @arg18, @arg19, @arg20, @arg21, @arg22, @arg23, @arg24,
-@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
-from t9 where c1= 0 ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
- c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24,
- c25, c26, c27, c28, c29, c30, c31, c32
-into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
- @arg09, @arg10, @arg11, @arg12, @arg13, @arg14, @arg15, @arg16,
- @arg17, @arg18, @arg19, @arg20, @arg21, @arg22, @arg23, @arg24,
- @arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
-from t9 where c1= ?" ;
-set @my_key= 1 ;
-execute stmt1 using @my_key ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-set @my_key= 0 ;
-execute stmt1 using @my_key ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? from t9 where c1= 1' at line 1
-test_sequence
--- insert into numeric columns --
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 ) ;
-set @arg00= 21 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22 )" ;
-execute stmt1 ;
-set @arg00= 23;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0,
-30.0, 30.0, 30.0 ) ;
-set @arg00= 31.0 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 32.0, 32.0, 32.0, 32.0, 32.0, 32.0, 32.0, 32.0,
- 32.0, 32.0, 32.0 )" ;
-execute stmt1 ;
-set @arg00= 33.0;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( '40', '40', '40', '40', '40', '40', '40', '40',
-'40', '40', '40' ) ;
-set @arg00= '41' ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( '42', '42', '42', '42', '42', '42', '42', '42',
- '42', '42', '42' )" ;
-execute stmt1 ;
-set @arg00= '43';
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( CAST('50' as binary), CAST('50' as binary),
-CAST('50' as binary), CAST('50' as binary), CAST('50' as binary),
-CAST('50' as binary), CAST('50' as binary), CAST('50' as binary),
-CAST('50' as binary), CAST('50' as binary), CAST('50' as binary) ) ;
-set @arg00= CAST('51' as binary) ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( CAST('52' as binary), CAST('52' as binary),
- CAST('52' as binary), CAST('52' as binary), CAST('52' as binary),
- CAST('52' as binary), CAST('52' as binary), CAST('52' as binary),
- CAST('52' as binary), CAST('52' as binary), CAST('52' as binary) )" ;
-execute stmt1 ;
-set @arg00= CAST('53' as binary) ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-set @arg00= 2 ;
-set @arg00= NULL ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 60, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-NULL, NULL, NULL ) ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 61, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 62, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL )" ;
-execute stmt1 ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 63, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-set @arg00= 8.0 ;
-set @arg00= NULL ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 71, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 73, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-set @arg00= 'abc' ;
-set @arg00= NULL ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 81, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 83, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12
-from t9 where c1 >= 20
-order by c1 ;
-c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c12
-20 20 20 20 20 20 20 20 20 20 20.0000
-21 21 21 21 21 21 21 21 21 21 21.0000
-22 22 22 22 22 22 22 22 22 22 22.0000
-23 23 23 23 23 23 23 23 23 23 23.0000
-30 30 30 30 30 30 30 30 30 30 30.0000
-31 31 31 31 31 31 31 31 31 31 31.0000
-32 32 32 32 32 32 32 32 32 32 32.0000
-33 33 33 33 33 33 33 33 33 33 33.0000
-40 40 40 40 40 40 40 40 40 40 40.0000
-41 41 41 41 41 41 41 41 41 41 41.0000
-42 42 42 42 42 42 42 42 42 42 42.0000
-43 43 43 43 43 43 43 43 43 43 43.0000
-50 50 50 50 50 50 50 50 50 50 50.0000
-51 51 51 51 51 51 51 51 51 51 51.0000
-52 52 52 52 52 52 52 52 52 52 52.0000
-53 53 53 53 53 53 53 53 53 53 53.0000
-60 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-61 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-62 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-63 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-71 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-73 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-81 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-83 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-test_sequence
--- select .. where numeric column = .. --
-set @arg00= 20;
-select 'true' as found from t9
-where c1= 20 and c2= 20 and c3= 20 and c4= 20 and c5= 20 and c6= 20 and c7= 20
-and c8= 20 and c9= 20 and c10= 20 and c12= 20;
-found
-true
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c2= 20 and c3= 20 and c4= 20 and c5= 20 and c6= 20 and c7= 20
- and c8= 20 and c9= 20 and c10= 20 and c12= 20 ";
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 20.0;
-select 'true' as found from t9
-where c1= 20.0 and c2= 20.0 and c3= 20.0 and c4= 20.0 and c5= 20.0 and c6= 20.0
-and c7= 20.0 and c8= 20.0 and c9= 20.0 and c10= 20.0 and c12= 20.0;
-found
-true
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20.0 and c2= 20.0 and c3= 20.0 and c4= 20.0 and c5= 20.0 and c6= 20.0
- and c7= 20.0 and c8= 20.0 and c9= 20.0 and c10= 20.0 and c12= 20.0 ";
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-select 'true' as found from t9
-where c1= '20' and c2= '20' and c3= '20' and c4= '20' and c5= '20' and c6= '20'
- and c7= '20' and c8= '20' and c9= '20' and c10= '20' and c12= '20';
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= '20' and c2= '20' and c3= '20' and c4= '20' and c5= '20' and c6= '20'
- and c7= '20' and c8= '20' and c9= '20' and c10= '20' and c12= '20' ";
-execute stmt1 ;
-found
-true
-set @arg00= '20';
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-select 'true' as found from t9
-where c1= CAST('20' as binary) and c2= CAST('20' as binary) and
-c3= CAST('20' as binary) and c4= CAST('20' as binary) and
-c5= CAST('20' as binary) and c6= CAST('20' as binary) and
-c7= CAST('20' as binary) and c8= CAST('20' as binary) and
-c9= CAST('20' as binary) and c10= CAST('20' as binary) and
-c12= CAST('20' as binary);
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= CAST('20' as binary) and c2= CAST('20' as binary) and
- c3= CAST('20' as binary) and c4= CAST('20' as binary) and
- c5= CAST('20' as binary) and c6= CAST('20' as binary) and
- c7= CAST('20' as binary) and c8= CAST('20' as binary) and
- c9= CAST('20' as binary) and c10= CAST('20' as binary) and
- c12= CAST('20' as binary) ";
-execute stmt1 ;
-found
-true
-set @arg00= CAST('20' as binary) ;
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-delete from t9 ;
-test_sequence
--- some numeric overflow experiments --
-prepare my_insert from "insert into t9
- ( c21, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 'O', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-prepare my_select from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12
-from t9 where c21 = 'O' ";
-prepare my_delete from "delete from t9 where c21 = 'O' ";
-set @arg00= 9223372036854775807 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 9.22337e+18
-c8 9.22337203685478e+18
-c9 9.22337203685478e+18
-c10 9.22337203685478e+18
-c12 9999.9999
-execute my_delete ;
-set @arg00= '9223372036854775807' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 9.22337e+18
-c8 9.22337203685478e+18
-c9 9.22337203685478e+18
-c10 9.22337203685478e+18
-c12 9999.9999
-execute my_delete ;
-set @arg00= -9223372036854775808 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -9.22337e+18
-c8 -9.22337203685478e+18
-c9 -9.22337203685478e+18
-c10 -9.22337203685478e+18
-c12 -9999.9999
-execute my_delete ;
-set @arg00= '-9223372036854775808' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -9.22337e+18
-c8 -9.22337203685478e+18
-c9 -9.22337203685478e+18
-c10 -9.22337203685478e+18
-c12 -9999.9999
-execute my_delete ;
-set @arg00= 1.11111111111111111111e+50 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 3.40282e+38
-c8 1.11111111111111e+50
-c9 1.11111111111111e+50
-c10 1.11111111111111e+50
-c12 9999.9999
-execute my_delete ;
-set @arg00= '1.11111111111111111111e+50' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 3.40282e+38
-c8 1.11111111111111e+50
-c9 1.11111111111111e+50
-c10 1.11111111111111e+50
-c12 9999.9999
-execute my_delete ;
-set @arg00= -1.11111111111111111111e+50 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -3.40282e+38
-c8 -1.11111111111111e+50
-c9 -1.11111111111111e+50
-c10 -1.11111111111111e+50
-c12 -9999.9999
-execute my_delete ;
-set @arg00= '-1.11111111111111111111e+50' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -3.40282e+38
-c8 -1.11111111111111e+50
-c9 -1.11111111111111e+50
-c10 -1.11111111111111e+50
-c12 -9999.9999
-execute my_delete ;
-test_sequence
--- insert into string columns --
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-select c1, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30
-from t9 where c1 >= 20
-order by c1 ;
-c1 c20 c21 c22 c23 c24 c25 c26 c27 c28 c29 c30
-20 2 20 20 20 20 20 20 20 20 20 20
-21 2 21 21 21 21 21 21 21 21 21 21
-22 2 22 22 22 22 22 22 22 22 22 22
-23 2 23 23 23 23 23 23 23 23 23 23
-30 3 30 30 30 30 30 30 30 30 30 30
-31 3 31 31 31 31 31 31 31 31 31 31
-32 3 32 32 32 32 32 32 32 32 32 32
-33 3 33 33 33 33 33 33 33 33 33 33
-40 4 40 40 40 40 40 40 40 40 40 40
-41 4 41 41 41 41 41 41 41 41 41 41
-42 4 42 42 42 42 42 42 42 42 42 42
-43 4 43 43 43 43 43 43 43 43 43 43
-50 5 50.0 50.0 50.0 50.0 50.0 50.0 50.0 50.0 50.0 50.0
-51 5 51.0 51.0 51.0 51.0 51.0 51.0 51.0 51.0 51.0 51.0
-52 5 52.0 52.0 52.0 52.0 52.0 52.0 52.0 52.0 52.0 52.0
-53 5 53.0 53.0 53.0 53.0 53.0 53.0 53.0 53.0 53.0 53.0
-54 5 54 54 54.00 54.00 54.00 54.00 54.00 54.00 54.00 54.00
-55 5 55 55 55 55 55 55 55 55 55 55
-56 6 56 56 56.00 56.00 56.00 56.00 56.00 56.00 56.00 56.00
-57 6 57 57 57.00 57.00 57.00 57.00 57.00 57.00 57.00 57.00
-60 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-61 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-62 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-63 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-71 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-73 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-81 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-83 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-test_sequence
--- select .. where string column = .. --
-set @arg00= '20';
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr('20',1+length(c20)))= '20' and c21= '20' and
-c22= '20' and c23= '20' and c24= '20' and c25= '20' and c26= '20' and
-c27= '20' and c28= '20' and c29= '20' and c30= '20' ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20)))= @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr('20',1+length(c20)))= '20' and c21= '20' and
- c22= '20' and c23= '20' and c24= '20' and c25= '20' and c26= '20' and
- c27= '20' and c28= '20' and c29= '20' and c30= '20'" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20)))= ? and
- c21= ? and c22= ? and c23= ? and c25= ? and
- c26= ? and c27= ? and c28= ? and c29= ? and c30= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= CAST('20' as binary);
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(CAST('20' as binary),1+length(c20)))
-= CAST('20' as binary) and c21= CAST('20' as binary)
-and c22= CAST('20' as binary) and c23= CAST('20' as binary) and
-c24= CAST('20' as binary) and c25= CAST('20' as binary) and
-c26= CAST('20' as binary) and c27= CAST('20' as binary) and
-c28= CAST('20' as binary) and c29= CAST('20' as binary) and
-c30= CAST('20' as binary) ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20))) = @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and
-c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(CAST('20' as binary),1+length(c20)))
- = CAST('20' as binary) and c21= CAST('20' as binary)
- and c22= CAST('20' as binary) and c23= CAST('20' as binary) and
- c24= CAST('20' as binary) and c25= CAST('20' as binary) and
- c26= CAST('20' as binary) and c27= CAST('20' as binary) and
- c28= CAST('20' as binary) and c29= CAST('20' as binary) and
- c30= CAST('20' as binary)" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20))) = ? and c21= ? and
- c22= ? and c23= ? and c25= ? and c26= ? and c27= ? and c28= ? and
- c29= ? and c30= ?";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 20;
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20,1+length(c20)))= 20 and c21= 20 and
-c22= 20 and c23= 20 and c24= 20 and c25= 20 and c26= 20 and
-c27= 20 and c28= 20 and c29= 20 and c30= 20 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20)))= @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20,1+length(c20)))= 20 and c21= 20 and
- c22= 20 and c23= 20 and c24= 20 and c25= 20 and c26= 20 and
- c27= 20 and c28= 20 and c29= 20 and c30= 20" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20)))= ? and
- c21= ? and c22= ? and c23= ? and c25= ? and
- c26= ? and c27= ? and c28= ? and c29= ? and c30= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 20.0;
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20.0,1+length(c20)))= 20.0 and c21= 20.0 and
-c22= 20.0 and c23= 20.0 and c24= 20.0 and c25= 20.0 and c26= 20.0 and
-c27= 20.0 and c28= 20.0 and c29= 20.0 and c30= 20.0 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20)))= @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20.0,1+length(c20)))= 20.0 and c21= 20.0 and
- c22= 20.0 and c23= 20.0 and c24= 20.0 and c25= 20.0 and c26= 20.0 and
- c27= 20.0 and c28= 20.0 and c29= 20.0 and c30= 20.0" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20)))= ? and
- c21= ? and c22= ? and c23= ? and c25= ? and
- c26= ? and c27= ? and c28= ? and c29= ? and c30= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-delete from t9 ;
-test_sequence
--- insert into date/time columns --
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
-c1 c13 c14 c15 c16 c17
-20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-21 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-22 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-23 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-30 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-31 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-32 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-33 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-40 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-41 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-42 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-43 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-50 2001-00-00 2001-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-51 2010-00-00 2010-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-52 2001-00-00 2001-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-53 2001-00-00 2001-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-60 NULL NULL 1991-01-01 01:01:01 NULL NULL
-61 NULL NULL 1991-01-01 01:01:01 NULL NULL
-62 NULL NULL 1991-01-01 01:01:01 NULL NULL
-63 NULL NULL 1991-01-01 01:01:01 NULL NULL
-71 NULL NULL 1991-01-01 01:01:01 NULL NULL
-73 NULL NULL 1991-01-01 01:01:01 NULL NULL
-81 NULL NULL 1991-01-01 01:01:01 NULL NULL
-83 NULL NULL 1991-01-01 01:01:01 NULL NULL
-test_sequence
--- select .. where date/time column = .. --
-set @arg00= '1991-01-01 01:01:01' ;
-select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 01:01:01' AS DATE) and c14= '1991-01-01 01:01:01' and
-c15= '1991-01-01 01:01:01' and c16= '1991-01-01 01:01:01' and
-c17= '1991-01-01 01:01:01' ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and c13= CAST(@arg00 AS DATE) and c14= @arg00 and c15= @arg00 and c16= @arg00
-and c17= @arg00 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 01:01:01' AS DATE) and c14= '1991-01-01 01:01:01' and
- c15= '1991-01-01 01:01:01' and c16= '1991-01-01 01:01:01' and
- c17= '1991-01-01 01:01:01'" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST(? AS DATE) and c14= ? and c15= ? and c16= ? and c17= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= CAST('1991-01-01 01:01:01' as datetime) ;
-select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 00:00:00' as datetime) and
-c14= CAST('1991-01-01 01:01:01' as datetime) and
-c15= CAST('1991-01-01 01:01:01' as datetime) and
-c16= CAST('1991-01-01 01:01:01' as datetime) and
-c17= CAST('1991-01-01 01:01:01' as datetime) ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and c13= CAST(@arg00 AS DATE) and c14= @arg00 and c15= @arg00 and c16= @arg00
-and c17= @arg00 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 00:00:00' as datetime) and
- c14= CAST('1991-01-01 01:01:01' as datetime) and
- c15= CAST('1991-01-01 01:01:01' as datetime) and
- c16= CAST('1991-01-01 01:01:01' as datetime) and
- c17= CAST('1991-01-01 01:01:01' as datetime)" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST(? AS DATE) and c14= ? and c15= ? and c16= ? and c17= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 1991 ;
-select 'true' as found from t9
-where c1= 20 and c17= 1991 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and c17= @arg00 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c17= 1991" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c17= ?" ;
-execute stmt1 using @arg00 ;
-found
-true
-set @arg00= 1.991e+3 ;
-select 'true' as found from t9
-where c1= 20 and abs(c17 - 1.991e+3) < 0.01 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and abs(c17 - @arg00) < 0.01 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and abs(c17 - 1.991e+3) < 0.01" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and abs(c17 - ?) < 0.01" ;
-execute stmt1 using @arg00 ;
-found
-true
-drop table t1, t9;
diff --git a/mysql-test/r/ps_7ndb.result b/mysql-test/r/ps_7ndb.result
deleted file mode 100644
index 502b7ce8591..00000000000
--- a/mysql-test/r/ps_7ndb.result
+++ /dev/null
@@ -1,3128 +0,0 @@
-use test;
-drop table if exists t1, t9 ;
-create table t1
-(
-a int, b varchar(30),
-primary key(a)
-) engine = 'NDB' ;
-create table t9
-(
-c1 tinyint, c2 smallint, c3 mediumint, c4 int,
-c5 integer, c6 bigint, c7 float, c8 double,
-c9 double precision, c10 real, c11 decimal(7, 4), c12 numeric(8, 4),
-c13 date, c14 datetime, c15 timestamp, c16 time,
-c17 year, c18 tinyint, c19 bool, c20 char,
-c21 char(10), c22 varchar(30), c23 tinyblob, c24 tinytext,
-c25 blob, c26 text, c27 mediumblob, c28 mediumtext,
-c29 longblob, c30 longtext, c31 enum('one', 'two', 'three'),
-c32 set('monday', 'tuesday', 'wednesday'),
-primary key(c1)
-) engine = 'NDB' ;
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-test_sequence
------- simple select tests ------
-prepare stmt1 from ' select * from t9 order by c1 ' ;
-execute stmt1;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def test t9 t9 c1 c1 1 4 1 N 49155 0 63
-def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
-def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
-def test t9 t9 c4 c4 3 11 1 Y 32768 0 63
-def test t9 t9 c5 c5 3 11 1 Y 32768 0 63
-def test t9 t9 c6 c6 8 20 1 Y 32768 0 63
-def test t9 t9 c7 c7 4 12 1 Y 32768 31 63
-def test t9 t9 c8 c8 5 22 1 Y 32768 31 63
-def test t9 t9 c9 c9 5 22 1 Y 32768 31 63
-def test t9 t9 c10 c10 5 22 1 Y 32768 31 63
-def test t9 t9 c11 c11 246 9 6 Y 0 4 63
-def test t9 t9 c12 c12 246 10 6 Y 0 4 63
-def test t9 t9 c13 c13 10 10 10 Y 128 0 63
-def test t9 t9 c14 c14 12 19 19 Y 128 0 63
-def test t9 t9 c15 c15 7 19 19 N 1249 0 63
-def test t9 t9 c16 c16 11 8 8 Y 128 0 63
-def test t9 t9 c17 c17 13 4 4 Y 32864 0 63
-def test t9 t9 c18 c18 1 4 1 Y 32768 0 63
-def test t9 t9 c19 c19 1 1 1 Y 32768 0 63
-def test t9 t9 c20 c20 254 1 1 Y 0 0 8
-def test t9 t9 c21 c21 254 10 10 Y 0 0 8
-def test t9 t9 c22 c22 253 30 30 Y 0 0 8
-def test t9 t9 c23 c23 252 255 8 Y 144 0 63
-def test t9 t9 c24 c24 252 255 8 Y 16 0 8
-def test t9 t9 c25 c25 252 65535 4 Y 144 0 63
-def test t9 t9 c26 c26 252 65535 4 Y 16 0 8
-def test t9 t9 c27 c27 252 16777215 10 Y 144 0 63
-def test t9 t9 c28 c28 252 16777215 10 Y 16 0 8
-def test t9 t9 c29 c29 252 4294967295 8 Y 144 0 63
-def test t9 t9 c30 c30 252 4294967295 8 Y 16 0 8
-def test t9 t9 c31 c31 254 5 3 Y 256 0 8
-def test t9 t9 c32 c32 254 24 7 Y 2048 0 8
-c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 c16 c17 c18 c19 c20 c21 c22 c23 c24 c25 c26 c27 c28 c29 c30 c31 c32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-9 9 9 9 9 9 9 9 9 9 9.0000 9.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 0 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext two tuesday
-set @arg00='SELECT' ;
-@arg00 a from t1 where a=1;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 a from t1 where a=1' at line 1
-prepare stmt1 from ' ? a from t1 where a=1 ';
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? a from t1 where a=1' at line 1
-set @arg00=1 ;
-select @arg00, b from t1 where a=1 ;
-@arg00 b
-1 one
-prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-? b
-1 one
-set @arg00='lion' ;
-select @arg00, b from t1 where a=1 ;
-@arg00 b
-lion one
-prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-? b
-lion one
-set @arg00=NULL ;
-select @arg00, b from t1 where a=1 ;
-@arg00 b
-NULL one
-prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-? b
-NULL one
-set @arg00=1 ;
-select b, a - @arg00 from t1 where a=1 ;
-b a - @arg00
-one 0
-prepare stmt1 from ' select b, a - ? from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-b a - ?
-one 0
-set @arg00=null ;
-select @arg00 as my_col ;
-my_col
-NULL
-prepare stmt1 from ' select ? as my_col';
-execute stmt1 using @arg00 ;
-my_col
-NULL
-select @arg00 + 1 as my_col ;
-my_col
-NULL
-prepare stmt1 from ' select ? + 1 as my_col';
-execute stmt1 using @arg00 ;
-my_col
-NULL
-select 1 + @arg00 as my_col ;
-my_col
-NULL
-prepare stmt1 from ' select 1 + ? as my_col';
-execute stmt1 using @arg00 ;
-my_col
-NULL
-set @arg00='MySQL' ;
-select substr(@arg00,1,2) from t1 where a=1 ;
-substr(@arg00,1,2)
-My
-prepare stmt1 from ' select substr(?,1,2) from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-substr(?,1,2)
-My
-set @arg00=3 ;
-select substr('MySQL',@arg00,5) from t1 where a=1 ;
-substr('MySQL',@arg00,5)
-SQL
-prepare stmt1 from ' select substr(''MySQL'',?,5) from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-substr('MySQL',?,5)
-SQL
-select substr('MySQL',1,@arg00) from t1 where a=1 ;
-substr('MySQL',1,@arg00)
-MyS
-prepare stmt1 from ' select substr(''MySQL'',1,?) from t1 where a=1 ' ;
-execute stmt1 using @arg00 ;
-substr('MySQL',1,?)
-MyS
-set @arg00='MySQL' ;
-select a , concat(@arg00,b) from t1 order by a;
-a concat(@arg00,b)
-1 MySQLone
-2 MySQLtwo
-3 MySQLthree
-4 MySQLfour
-prepare stmt1 from ' select a , concat(?,b) from t1 order by a ' ;
-execute stmt1 using @arg00;
-a concat(?,b)
-1 MySQLone
-2 MySQLtwo
-3 MySQLthree
-4 MySQLfour
-select a , concat(b,@arg00) from t1 order by a ;
-a concat(b,@arg00)
-1 oneMySQL
-2 twoMySQL
-3 threeMySQL
-4 fourMySQL
-prepare stmt1 from ' select a , concat(b,?) from t1 order by a ' ;
-execute stmt1 using @arg00;
-a concat(b,?)
-1 oneMySQL
-2 twoMySQL
-3 threeMySQL
-4 fourMySQL
-set @arg00='MySQL' ;
-select group_concat(@arg00,b order by a) from t1
-group by 'a' ;
-group_concat(@arg00,b order by a)
-MySQLone,MySQLtwo,MySQLthree,MySQLfour
-prepare stmt1 from ' select group_concat(?,b order by a) from t1
-group by ''a'' ' ;
-execute stmt1 using @arg00;
-group_concat(?,b order by a)
-MySQLone,MySQLtwo,MySQLthree,MySQLfour
-select group_concat(b,@arg00 order by a) from t1
-group by 'a' ;
-group_concat(b,@arg00 order by a)
-oneMySQL,twoMySQL,threeMySQL,fourMySQL
-prepare stmt1 from ' select group_concat(b,? order by a) from t1
-group by ''a'' ' ;
-execute stmt1 using @arg00;
-group_concat(b,? order by a)
-oneMySQL,twoMySQL,threeMySQL,fourMySQL
-set @arg00='first' ;
-set @arg01='second' ;
-set @arg02=NULL;
-select @arg00, @arg01 from t1 where a=1 ;
-@arg00 @arg01
-first second
-prepare stmt1 from ' select ?, ? from t1 where a=1 ' ;
-execute stmt1 using @arg00, @arg01 ;
-? ?
-first second
-execute stmt1 using @arg02, @arg01 ;
-? ?
-NULL second
-execute stmt1 using @arg00, @arg02 ;
-? ?
-first NULL
-execute stmt1 using @arg02, @arg02 ;
-? ?
-NULL NULL
-drop table if exists t5 ;
-create table t5 (id1 int(11) not null default '0',
-value2 varchar(100), value1 varchar(100)) ;
-insert into t5 values (1,'hh','hh'),(2,'hh','hh'),
-(1,'ii','ii'),(2,'ii','ii') ;
-prepare stmt1 from ' select id1,value1 from t5 where id1=? or value1=? order by id1,value1 ' ;
-set @arg00=1 ;
-set @arg01='hh' ;
-execute stmt1 using @arg00, @arg01 ;
-id1 value1
-1 hh
-1 ii
-2 hh
-drop table t5 ;
-drop table if exists t5 ;
-create table t5(session_id char(9) not null) ;
-insert into t5 values ('abc') ;
-prepare stmt1 from ' select * from t5
-where ?=''1111'' and session_id = ''abc'' ' ;
-set @arg00='abc' ;
-execute stmt1 using @arg00 ;
-session_id
-set @arg00='1111' ;
-execute stmt1 using @arg00 ;
-session_id
-abc
-set @arg00='abc' ;
-execute stmt1 using @arg00 ;
-session_id
-drop table t5 ;
-set @arg00='FROM' ;
-select a @arg00 t1 where a=1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 t1 where a=1' at line 1
-prepare stmt1 from ' select a ? t1 where a=1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? t1 where a=1' at line 1
-set @arg00='t1' ;
-select a from @arg00 where a=1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 where a=1' at line 1
-prepare stmt1 from ' select a from ? where a=1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? where a=1' at line 1
-set @arg00='WHERE' ;
-select a from t1 @arg00 a=1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 a=1' at line 1
-prepare stmt1 from ' select a from t1 ? a=1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? a=1' at line 1
-set @arg00=1 ;
-select a FROM t1 where a=@arg00 ;
-a
-1
-prepare stmt1 from ' select a FROM t1 where a=? ' ;
-execute stmt1 using @arg00 ;
-a
-1
-set @arg00=1000 ;
-execute stmt1 using @arg00 ;
-a
-set @arg00=NULL ;
-select a FROM t1 where a=@arg00 ;
-a
-prepare stmt1 from ' select a FROM t1 where a=? ' ;
-execute stmt1 using @arg00 ;
-a
-set @arg00=4 ;
-select a FROM t1 where a=sqrt(@arg00) ;
-a
-2
-prepare stmt1 from ' select a FROM t1 where a=sqrt(?) ' ;
-execute stmt1 using @arg00 ;
-a
-2
-set @arg00=NULL ;
-select a FROM t1 where a=sqrt(@arg00) ;
-a
-prepare stmt1 from ' select a FROM t1 where a=sqrt(?) ' ;
-execute stmt1 using @arg00 ;
-a
-set @arg00=2 ;
-set @arg01=3 ;
-select a FROM t1 where a in (@arg00,@arg01) order by a;
-a
-2
-3
-prepare stmt1 from ' select a FROM t1 where a in (?,?) order by a ';
-execute stmt1 using @arg00, @arg01;
-a
-2
-3
-set @arg00= 'one' ;
-set @arg01= 'two' ;
-set @arg02= 'five' ;
-prepare stmt1 from ' select b FROM t1 where b in (?,?,?) order by b ' ;
-execute stmt1 using @arg00, @arg01, @arg02 ;
-b
-one
-two
-prepare stmt1 from ' select b FROM t1 where b like ? ';
-set @arg00='two' ;
-execute stmt1 using @arg00 ;
-b
-two
-set @arg00='tw%' ;
-execute stmt1 using @arg00 ;
-b
-two
-set @arg00='%wo' ;
-execute stmt1 using @arg00 ;
-b
-two
-set @arg00=null ;
-insert into t9 set c1= 0, c5 = NULL ;
-select c5 from t9 where c5 > NULL ;
-c5
-prepare stmt1 from ' select c5 from t9 where c5 > ? ';
-execute stmt1 using @arg00 ;
-c5
-select c5 from t9 where c5 < NULL ;
-c5
-prepare stmt1 from ' select c5 from t9 where c5 < ? ';
-execute stmt1 using @arg00 ;
-c5
-select c5 from t9 where c5 = NULL ;
-c5
-prepare stmt1 from ' select c5 from t9 where c5 = ? ';
-execute stmt1 using @arg00 ;
-c5
-select c5 from t9 where c5 <=> NULL ;
-c5
-NULL
-prepare stmt1 from ' select c5 from t9 where c5 <=> ? ';
-execute stmt1 using @arg00 ;
-c5
-NULL
-delete from t9 where c1= 0 ;
-set @arg00='>' ;
-select a FROM t1 where a @arg00 1 ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@arg00 1' at line 1
-prepare stmt1 from ' select a FROM t1 where a ? 1 ' ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? 1' at line 1
-set @arg00=1 ;
-select a,b FROM t1 where a is not NULL
-AND b is not NULL group by a - @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-prepare stmt1 from ' select a,b FROM t1 where a is not NULL
-AND b is not NULL group by a - ? ' ;
-execute stmt1 using @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00='two' ;
-select a,b FROM t1 where a is not NULL
-AND b is not NULL having b <> @arg00 order by a ;
-a b
-1 one
-3 three
-4 four
-prepare stmt1 from ' select a,b FROM t1 where a is not NULL
-AND b is not NULL having b <> ? order by a ' ;
-execute stmt1 using @arg00 ;
-a b
-1 one
-3 three
-4 four
-set @arg00=1 ;
-select a,b FROM t1 where a is not NULL
-AND b is not NULL order by a - @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-prepare stmt1 from ' select a,b FROM t1 where a is not NULL
-AND b is not NULL order by a - ? ' ;
-execute stmt1 using @arg00 ;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00=2 ;
-select a,b from t1 order by 2 ;
-a b
-4 four
-1 one
-3 three
-2 two
-prepare stmt1 from ' select a,b from t1
-order by ? ';
-execute stmt1 using @arg00;
-a b
-4 four
-1 one
-3 three
-2 two
-set @arg00=1 ;
-execute stmt1 using @arg00;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00=0 ;
-execute stmt1 using @arg00;
-ERROR 42S22: Unknown column '?' in 'order clause'
-set @arg00=1;
-prepare stmt1 from ' select a,b from t1 order by a
-limit 1 ';
-execute stmt1 ;
-a b
-1 one
-prepare stmt1 from ' select a,b from t1 order by a limit ? ';
-execute stmt1 using @arg00;
-a b
-1 one
-set @arg00='b' ;
-set @arg01=0 ;
-set @arg02=2 ;
-set @arg03=2 ;
-select sum(a), @arg00 from t1 where a > @arg01
-and b is not null group by substr(b,@arg02)
-having sum(a) <> @arg03 ;
-sum(a) @arg00
-3 b
-1 b
-4 b
-prepare stmt1 from ' select sum(a), ? from t1 where a > ?
-and b is not null group by substr(b,?)
-having sum(a) <> ? ';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03;
-sum(a) ?
-3 b
-1 b
-4 b
-test_sequence
------- join tests ------
-select first.a as a1, second.a as a2
-from t1 first, t1 second
-where first.a = second.a order by a1 ;
-a1 a2
-1 1
-2 2
-3 3
-4 4
-prepare stmt1 from ' select first.a as a1, second.a as a2
- from t1 first, t1 second
- where first.a = second.a order by a1 ';
-execute stmt1 ;
-a1 a2
-1 1
-2 2
-3 3
-4 4
-set @arg00='ABC';
-set @arg01='two';
-set @arg02='one';
-select first.a, @arg00, second.a FROM t1 first, t1 second
-where @arg01 = first.b or first.a = second.a or second.b = @arg02
-order by second.a, first.a;
-a @arg00 a
-1 ABC 1
-2 ABC 1
-3 ABC 1
-4 ABC 1
-2 ABC 2
-2 ABC 3
-3 ABC 3
-2 ABC 4
-4 ABC 4
-prepare stmt1 from ' select first.a, ?, second.a FROM t1 first, t1 second
- where ? = first.b or first.a = second.a or second.b = ?
- order by second.a, first.a';
-execute stmt1 using @arg00, @arg01, @arg02;
-a ? a
-1 ABC 1
-2 ABC 1
-3 ABC 1
-4 ABC 1
-2 ABC 2
-2 ABC 3
-3 ABC 3
-2 ABC 4
-4 ABC 4
-drop table if exists t2 ;
-create table t2 as select * from t1 ;
-set @query1= 'SELECT * FROM t2 join t1 on (t1.a=t2.a) order by t2.a ' ;
-set @query2= 'SELECT * FROM t2 natural join t1 order by t2.a ' ;
-set @query3= 'SELECT * FROM t2 join t1 using(a) order by t2.a ' ;
-set @query4= 'SELECT * FROM t2 left join t1 on(t1.a=t2.a) order by t2.a ' ;
-set @query5= 'SELECT * FROM t2 natural left join t1 order by t2.a ' ;
-set @query6= 'SELECT * FROM t2 left join t1 using(a) order by t2.a ' ;
-set @query7= 'SELECT * FROM t2 right join t1 on(t1.a=t2.a) order by t2.a ' ;
-set @query8= 'SELECT * FROM t2 natural right join t1 order by t2.a ' ;
-set @query9= 'SELECT * FROM t2 right join t1 using(a) order by t2.a ' ;
-the join statement is:
-SELECT * FROM t2 right join t1 using(a) order by t2.a
-prepare stmt1 from @query9 ;
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-the join statement is:
-SELECT * FROM t2 natural right join t1 order by t2.a
-prepare stmt1 from @query8 ;
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-the join statement is:
-SELECT * FROM t2 right join t1 on(t1.a=t2.a) order by t2.a
-prepare stmt1 from @query7 ;
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-the join statement is:
-SELECT * FROM t2 left join t1 using(a) order by t2.a
-prepare stmt1 from @query6 ;
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-the join statement is:
-SELECT * FROM t2 natural left join t1 order by t2.a
-prepare stmt1 from @query5 ;
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-the join statement is:
-SELECT * FROM t2 left join t1 on(t1.a=t2.a) order by t2.a
-prepare stmt1 from @query4 ;
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-the join statement is:
-SELECT * FROM t2 join t1 using(a) order by t2.a
-prepare stmt1 from @query3 ;
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-execute stmt1 ;
-a b b
-1 one one
-2 two two
-3 three three
-4 four four
-the join statement is:
-SELECT * FROM t2 natural join t1 order by t2.a
-prepare stmt1 from @query2 ;
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-the join statement is:
-SELECT * FROM t2 join t1 on (t1.a=t2.a) order by t2.a
-prepare stmt1 from @query1 ;
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-execute stmt1 ;
-a b a b
-1 one 1 one
-2 two 2 two
-3 three 3 three
-4 four 4 four
-drop table t2 ;
-test_sequence
------- subquery tests ------
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = ''two'') ';
-execute stmt1 ;
-a b
-2 two
-set @arg00='two' ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where b = 'two' ) and b=@arg00 ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = ''two'') and b=? ';
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00='two' ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where b = @arg00 ) and b='two' ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = ? ) and b=''two'' ' ;
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=3 ;
-set @arg01='three' ;
-select a,b FROM t1 where (a,b) in (select 3, 'three');
-a b
-3 three
-select a FROM t1 where (a,b) in (select @arg00,@arg01);
-a
-3
-prepare stmt1 from ' select a FROM t1 where (a,b) in (select ?, ?) ';
-execute stmt1 using @arg00, @arg01;
-a
-3
-set @arg00=1 ;
-set @arg01='two' ;
-set @arg02=2 ;
-set @arg03='two' ;
-select a, @arg00, b FROM t1 outer_table where
-b=@arg01 and a = (select @arg02 from t1 where b = @arg03 ) ;
-a @arg00 b
-2 1 two
-prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
- b=? and a = (select ? from t1 where b = ? ) ' ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
-a ? b
-2 1 two
-prepare stmt1 from 'select c4 FROM t9 where
- c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
-execute stmt1 using @arg01, @arg02;
-c4
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = outer_table.b ) order by a ';
-execute stmt1 ;
-a b
-1 one
-2 two
-3 three
-4 four
-prepare stmt1 from ' SELECT a as ccc from t1 outr where a+1=
- (SELECT 1+outr.a from t1 where outr.a+1=a+1 and a=1) ';
-execute stmt1 ;
-ccc
-1
-deallocate prepare stmt1 ;
-prepare stmt1 from ' SELECT a as ccc from t1 outr where a+1=
- (SELECT 1+outr.a from t1 where outr.a+1=a+1 and a=1) ';
-execute stmt1 ;
-ccc
-1
-deallocate prepare stmt1 ;
-prepare stmt1 from ' SELECT a as ccc from t1 outr where a+1=
- (SELECT 1+outr.a from t1 where outr.a+1=a+1 and a=1) ';
-execute stmt1 ;
-ccc
-1
-deallocate prepare stmt1 ;
-set @arg00='two' ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where b = outer_table.b ) and b=@arg00 ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where b = outer_table.b) and b=? ';
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=2 ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where a = @arg00 and b = outer_table.b) and b='two' ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where a = ? and b = outer_table.b) and b=''two'' ' ;
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=2 ;
-select a, b FROM t1 outer_table where
-a = (select a from t1 where outer_table.a = @arg00 and a=2) and b='two' ;
-a b
-2 two
-prepare stmt1 from ' select a, b FROM t1 outer_table where
- a = (select a from t1 where outer_table.a = ? and a=2) and b=''two'' ' ;
-execute stmt1 using @arg00;
-a b
-2 two
-set @arg00=1 ;
-set @arg01='two' ;
-set @arg02=2 ;
-set @arg03='two' ;
-select a, @arg00, b FROM t1 outer_table where
-b=@arg01 and a = (select @arg02 from t1 where outer_table.b = @arg03
-and outer_table.a=a ) ;
-a @arg00 b
-2 1 two
-prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
- b=? and a = (select ? from t1 where outer_table.b = ?
- and outer_table.a=a ) ' ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
-a ? b
-2 1 two
-set @arg00=1 ;
-set @arg01=0 ;
-select a, @arg00
-from ( select a - @arg00 as a from t1 where a=@arg00 ) as t2
-where a=@arg01;
-a @arg00
-0 1
-prepare stmt1 from ' select a, ?
- from ( select a - ? as a from t1 where a=? ) as t2
- where a=? ';
-execute stmt1 using @arg00, @arg00, @arg00, @arg01 ;
-a ?
-0 1
-drop table if exists t2 ;
-create table t2 as select * from t1;
-prepare stmt1 from ' select a in (select a from t2) from t1 ' ;
-execute stmt1 ;
-a in (select a from t2)
-1
-1
-1
-1
-drop table if exists t5, t6, t7 ;
-create table t5 (a int , b int) ;
-create table t6 like t5 ;
-create table t7 like t5 ;
-insert into t5 values (0, 100), (1, 2), (1, 3), (2, 2), (2, 7),
-(2, -1), (3, 10) ;
-insert into t6 values (0, 0), (1, 1), (2, 1), (3, 1), (4, 1) ;
-insert into t7 values (3, 3), (2, 2), (1, 1) ;
-prepare stmt1 from ' select a, (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1) from t7 ' ;
-execute stmt1 ;
-a (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1)
-3 1
-2 2
-1 2
-execute stmt1 ;
-a (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1)
-3 1
-2 2
-1 2
-execute stmt1 ;
-a (select count(distinct t5.b) as sum from t5, t6
- where t5.a=t6.a and t6.b > 0 and t5.a <= t7.b
- group by t5.a order by sum limit 1)
-3 1
-2 2
-1 2
-drop table t5, t6, t7 ;
-drop table if exists t2 ;
-create table t2 as select * from t9;
-set @stmt= ' SELECT
- (SELECT SUM(c1 + c12 + 0.0) FROM t2
- where (t9.c2 - 0e-3) = t2.c2
- GROUP BY t9.c15 LIMIT 1) as scalar_s,
- exists (select 1.0e+0 from t2
- where t2.c3 * 9.0000000000 = t9.c4) as exists_s,
- c5 * 4 in (select c6 + 0.3e+1 from t2) as in_s,
- (c7 - 4, c8 - 4) in (select c9 + 4.0, c10 + 40e-1 from t2) as in_row_s
-FROM t9,
-(select c25 x, c32 y from t2) tt WHERE x = c25 ' ;
-prepare stmt1 from @stmt ;
-execute stmt1 ;
-execute stmt1 ;
-set @stmt= concat('explain ',@stmt);
-prepare stmt1 from @stmt ;
-execute stmt1 ;
-execute stmt1 ;
-set @stmt= ' SELECT
- (SELECT SUM(c1+c12+?) FROM t2 where (t9.c2-?)=t2.c2
- GROUP BY t9.c15 LIMIT 1) as scalar_s,
- exists (select ? from t2
- where t2.c3*?=t9.c4) as exists_s,
- c5*? in (select c6+? from t2) as in_s,
- (c7-?, c8-?) in (select c9+?, c10+? from t2) as in_row_s
-FROM t9,
-(select c25 x, c32 y from t2) tt WHERE x =c25 ' ;
-set @arg00= 0.0 ;
-set @arg01= 0e-3 ;
-set @arg02= 1.0e+0 ;
-set @arg03= 9.0000000000 ;
-set @arg04= 4 ;
-set @arg05= 0.3e+1 ;
-set @arg06= 4 ;
-set @arg07= 4 ;
-set @arg08= 4.0 ;
-set @arg09= 40e-1 ;
-prepare stmt1 from @stmt ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-set @stmt= concat('explain ',@stmt);
-prepare stmt1 from @stmt ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
-@arg07, @arg08, @arg09 ;
-drop table t2 ;
-select 1 < (select a from t1) ;
-ERROR 21000: Subquery returns more than 1 row
-prepare stmt1 from ' select 1 < (select a from t1) ' ;
-execute stmt1 ;
-ERROR 21000: Subquery returns more than 1 row
-select 1 as my_col ;
-my_col
-1
-test_sequence
------- union tests ------
-prepare stmt1 from ' select a FROM t1 where a=1
- union distinct
- select a FROM t1 where a=1 ';
-execute stmt1 ;
-a
-1
-execute stmt1 ;
-a
-1
-prepare stmt1 from ' select a FROM t1 where a=1
- union all
- select a FROM t1 where a=1 ';
-execute stmt1 ;
-a
-1
-1
-prepare stmt1 from ' SELECT 1, 2 union SELECT 1 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-prepare stmt1 from ' SELECT 1 union SELECT 1, 2 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-prepare stmt1 from ' SELECT * from t1 union SELECT 1 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-prepare stmt1 from ' SELECT 1 union SELECT * from t1 ' ;
-ERROR 21000: The used SELECT statements have a different number of columns
-set @arg00=1 ;
-select @arg00 FROM t1 where a=1
-union distinct
-select 1 FROM t1 where a=1;
-@arg00
-1
-prepare stmt1 from ' select ? FROM t1 where a=1
- union distinct
- select 1 FROM t1 where a=1 ' ;
-execute stmt1 using @arg00;
-?
-1
-set @arg00=1 ;
-select 1 FROM t1 where a=1
-union distinct
-select @arg00 FROM t1 where a=1;
-1
-1
-prepare stmt1 from ' select 1 FROM t1 where a=1
- union distinct
- select ? FROM t1 where a=1 ' ;
-execute stmt1 using @arg00;
-1
-1
-set @arg00='a' ;
-select @arg00 FROM t1 where a=1
-union distinct
-select @arg00 FROM t1 where a=1;
-@arg00
-a
-prepare stmt1 from ' select ? FROM t1 where a=1
- union distinct
- select ? FROM t1 where a=1 ';
-execute stmt1 using @arg00, @arg00;
-?
-a
-prepare stmt1 from ' select ?
- union distinct
- select ? ';
-execute stmt1 using @arg00, @arg00;
-?
-a
-set @arg00='a' ;
-set @arg01=1 ;
-set @arg02='a' ;
-set @arg03=2 ;
-select @arg00 FROM t1 where a=@arg01
-union distinct
-select @arg02 FROM t1 where a=@arg03;
-@arg00
-a
-prepare stmt1 from ' select ? FROM t1 where a=?
- union distinct
- select ? FROM t1 where a=? ' ;
-execute stmt1 using @arg00, @arg01, @arg02, @arg03;
-?
-a
-set @arg00=1 ;
-prepare stmt1 from ' select sum(a) + 200, ? from t1
-union distinct
-select sum(a) + 200, 1 from t1
-group by b ' ;
-execute stmt1 using @arg00;
-sum(a) + 200 ?
-210 1
-204 1
-201 1
-203 1
-202 1
-set @Oporto='Oporto' ;
-set @Lisboa='Lisboa' ;
-set @0=0 ;
-set @1=1 ;
-set @2=2 ;
-set @3=3 ;
-set @4=4 ;
-select @Oporto,@Lisboa,@0,@1,@2,@3,@4 ;
-@Oporto @Lisboa @0 @1 @2 @3 @4
-Oporto Lisboa 0 1 2 3 4
-select sum(a) + 200 as the_sum, @Oporto as the_town from t1
-group by b
-union distinct
-select sum(a) + 200, @Lisboa from t1
-group by b ;
-the_sum the_town
-204 Oporto
-201 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-201 Lisboa
-203 Lisboa
-202 Lisboa
-prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
- group by b
- union distinct
- select sum(a) + 200, ? from t1
- group by b ' ;
-execute stmt1 using @Oporto, @Lisboa;
-the_sum the_town
-204 Oporto
-201 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-201 Lisboa
-203 Lisboa
-202 Lisboa
-select sum(a) + 200 as the_sum, @Oporto as the_town from t1
-where a > @1
-group by b
-union distinct
-select sum(a) + 200, @Lisboa from t1
-where a > @2
-group by b ;
-the_sum the_town
-204 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-203 Lisboa
-prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
- where a > ?
- group by b
- union distinct
- select sum(a) + 200, ? from t1
- where a > ?
- group by b ' ;
-execute stmt1 using @Oporto, @1, @Lisboa, @2;
-the_sum the_town
-204 Oporto
-203 Oporto
-202 Oporto
-204 Lisboa
-203 Lisboa
-select sum(a) + 200 as the_sum, @Oporto as the_town from t1
-where a > @1
-group by b
-having avg(a) > @2
-union distinct
-select sum(a) + 200, @Lisboa from t1
-where a > @2
-group by b
-having avg(a) > @3;
-the_sum the_town
-204 Oporto
-203 Oporto
-204 Lisboa
-prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
- where a > ?
- group by b
- having avg(a) > ?
- union distinct
- select sum(a) + 200, ? from t1
- where a > ?
- group by b
- having avg(a) > ? ';
-execute stmt1 using @Oporto, @1, @2, @Lisboa, @2, @3;
-the_sum the_town
-204 Oporto
-203 Oporto
-204 Lisboa
-test_sequence
------- explain select tests ------
-prepare stmt1 from ' explain select * from t9 ' ;
-execute stmt1;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def id 8 3 1 N 32929 0 63
-def select_type 253 19 6 N 1 31 8
-def table 253 64 2 Y 0 31 8
-def type 253 10 3 Y 0 31 8
-def possible_keys 253 4096 0 Y 0 31 8
-def key 253 64 0 Y 0 31 8
-def key_len 253 4096 0 Y 0 31 8
-def ref 253 1024 0 Y 0 31 8
-def rows 8 10 1 Y 32928 0 63
-def Extra 253 255 0 N 1 31 8
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t9 ALL NULL NULL NULL NULL 2
-test_sequence
------- delete tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-prepare stmt1 from 'delete from t1 where a=2' ;
-execute stmt1;
-select a,b from t1 where a=2;
-a b
-execute stmt1;
-insert into t1 values(0,NULL);
-set @arg00=NULL;
-prepare stmt1 from 'delete from t1 where b=?' ;
-execute stmt1 using @arg00;
-select a,b from t1 where b is NULL ;
-a b
-0 NULL
-set @arg00='one';
-execute stmt1 using @arg00;
-select a,b from t1 where b=@arg00;
-a b
-prepare stmt1 from 'truncate table t1' ;
-test_sequence
------- update tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-prepare stmt1 from 'update t1 set b=''a=two'' where a=2' ;
-execute stmt1;
-select a,b from t1 where a=2;
-a b
-2 a=two
-execute stmt1;
-select a,b from t1 where a=2;
-a b
-2 a=two
-set @arg00=NULL;
-prepare stmt1 from 'update t1 set b=? where a=2' ;
-execute stmt1 using @arg00;
-select a,b from t1 where a=2;
-a b
-2 NULL
-set @arg00='two';
-execute stmt1 using @arg00;
-select a,b from t1 where a=2;
-a b
-2 two
-set @arg00=2;
-prepare stmt1 from 'update t1 set b=NULL where a=?' ;
-execute stmt1 using @arg00;
-select a,b from t1 where a=@arg00;
-a b
-2 NULL
-update t1 set b='two' where a=@arg00;
-set @arg00=2000;
-execute stmt1 using @arg00;
-select a,b from t1 where a=@arg00;
-a b
-set @arg00=2;
-set @arg01=22;
-prepare stmt1 from 'update t1 set a=? where a=?' ;
-execute stmt1 using @arg00, @arg00;
-select a,b from t1 where a=@arg00;
-a b
-2 two
-execute stmt1 using @arg01, @arg00;
-select a,b from t1 where a=@arg01;
-a b
-22 two
-execute stmt1 using @arg00, @arg01;
-select a,b from t1 where a=@arg00;
-a b
-2 two
-set @arg00=NULL;
-set @arg01=2;
-execute stmt1 using @arg00, @arg01;
-Warnings:
-Warning 1048 Column 'a' cannot be null
-select a,b from t1 order by a;
-a b
-0 two
-1 one
-3 three
-4 four
-set @arg00=0;
-execute stmt1 using @arg01, @arg00;
-select a,b from t1 order by a;
-a b
-1 one
-2 two
-3 three
-4 four
-set @arg00=23;
-set @arg01='two';
-set @arg02=2;
-set @arg03='two';
-set @arg04=2;
-drop table if exists t2;
-create table t2 as select a,b from t1 ;
-prepare stmt1 from 'update t1 set a=? where b=?
- and a in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 where a = @arg00 ;
-a b
-23 two
-prepare stmt1 from 'update t1 set a=? where b=?
- and a not in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 order by a ;
-a b
-1 one
-2 two
-3 three
-4 four
-drop table t2 ;
-create table t2
-(
-a int, b varchar(30),
-primary key(a)
-) engine = 'NDB' ;
-insert into t2(a,b) select a, b from t1 ;
-prepare stmt1 from 'update t1 set a=? where b=?
- and a in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 where a = @arg00 ;
-a b
-23 two
-prepare stmt1 from 'update t1 set a=? where b=?
- and a not in (select ? from t2
- where b = ? or a = ?)';
-execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-select a,b from t1 order by a ;
-a b
-1 one
-2 two
-3 three
-4 four
-drop table t2 ;
-set @arg00=1;
-prepare stmt1 from 'update t1 set b=''bla''
-where a=2
-limit 1';
-execute stmt1 ;
-select a,b from t1 where b = 'bla' ;
-a b
-2 bla
-prepare stmt1 from 'update t1 set b=''bla'' where a=2 limit ?';
-execute stmt1 using @arg00;
-test_sequence
------- insert tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-prepare stmt1 from 'insert into t1 values(5, ''five'' )';
-execute stmt1;
-select a,b from t1 where a = 5;
-a b
-5 five
-set @arg00='six' ;
-prepare stmt1 from 'insert into t1 values(6, ? )';
-execute stmt1 using @arg00;
-select a,b from t1 where b = @arg00;
-a b
-6 six
-execute stmt1 using @arg00;
-ERROR 23000: Duplicate entry '6' for key 1
-set @arg00=NULL ;
-prepare stmt1 from 'insert into t1 values(0, ? )';
-execute stmt1 using @arg00;
-select a,b from t1 where b is NULL;
-a b
-0 NULL
-set @arg00=8 ;
-set @arg01='eight' ;
-prepare stmt1 from 'insert into t1 values(?, ? )';
-execute stmt1 using @arg00, @arg01 ;
-select a,b from t1 where b = @arg01;
-a b
-8 eight
-set @NULL= null ;
-set @arg00= 'abc' ;
-execute stmt1 using @NULL, @NULL ;
-ERROR 23000: Column 'a' cannot be null
-execute stmt1 using @NULL, @NULL ;
-ERROR 23000: Column 'a' cannot be null
-execute stmt1 using @NULL, @arg00 ;
-ERROR 23000: Column 'a' cannot be null
-execute stmt1 using @NULL, @arg00 ;
-ERROR 23000: Column 'a' cannot be null
-set @arg01= 10000 + 2 ;
-execute stmt1 using @arg01, @arg00 ;
-set @arg01= 10000 + 1 ;
-execute stmt1 using @arg01, @arg00 ;
-select * from t1 where a > 10000 order by a ;
-a b
-10001 abc
-10002 abc
-delete from t1 where a > 10000 ;
-set @arg01= 10000 + 2 ;
-execute stmt1 using @arg01, @NULL ;
-set @arg01= 10000 + 1 ;
-execute stmt1 using @arg01, @NULL ;
-select * from t1 where a > 10000 order by a ;
-a b
-10001 NULL
-10002 NULL
-delete from t1 where a > 10000 ;
-set @arg01= 10000 + 10 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 9 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 8 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 7 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 6 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 5 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 4 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 3 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 2 ;
-execute stmt1 using @arg01, @arg01 ;
-set @arg01= 10000 + 1 ;
-execute stmt1 using @arg01, @arg01 ;
-select * from t1 where a > 10000 order by a ;
-a b
-10001 10001
-10002 10002
-10003 10003
-10004 10004
-10005 10005
-10006 10006
-10007 10007
-10008 10008
-10009 10009
-10010 10010
-delete from t1 where a > 10000 ;
-set @arg00=81 ;
-set @arg01='8-1' ;
-set @arg02=82 ;
-set @arg03='8-2' ;
-prepare stmt1 from 'insert into t1 values(?,?),(?,?)';
-execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
-select a,b from t1 where a in (@arg00,@arg02) ;
-a b
-81 8-1
-82 8-2
-set @arg00=9 ;
-set @arg01='nine' ;
-prepare stmt1 from 'insert into t1 set a=?, b=? ';
-execute stmt1 using @arg00, @arg01 ;
-select a,b from t1 where a = @arg00 ;
-a b
-9 nine
-set @arg00=6 ;
-set @arg01=1 ;
-prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
- on duplicate key update a=a + ?, b=concat(b,''modified'') ';
-execute stmt1 using @arg00, @arg01;
-select * from t1 order by a;
-a b
-0 NULL
-1 one
-2 two
-3 three
-4 four
-5 five
-7 sixmodified
-8 eight
-9 nine
-81 8-1
-82 8-2
-set @arg00=81 ;
-set @arg01=1 ;
-execute stmt1 using @arg00, @arg01;
-ERROR 23000: Duplicate entry '82' for key 1
-drop table if exists t2 ;
-create table t2 (id int auto_increment primary key)
-ENGINE= 'NDB' ;
-prepare stmt1 from ' select last_insert_id() ' ;
-insert into t2 values (NULL) ;
-execute stmt1 ;
-last_insert_id()
-1
-insert into t2 values (NULL) ;
-execute stmt1 ;
-last_insert_id()
-2
-drop table t2 ;
-set @1000=1000 ;
-set @x1000_2="x1000_2" ;
-set @x1000_3="x1000_3" ;
-set @x1000="x1000" ;
-set @1100=1100 ;
-set @x1100="x1100" ;
-set @100=100 ;
-set @updated="updated" ;
-insert into t1 values(1000,'x1000_1') ;
-insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
-on duplicate key update a = a + @100, b = concat(b,@updated) ;
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 x1000_3
-1100 x1000_1updated
-delete from t1 where a >= 1000 ;
-insert into t1 values(1000,'x1000_1') ;
-prepare stmt1 from ' insert into t1 values(?,?),(?,?)
- on duplicate key update a = a + ?, b = concat(b,?) ';
-execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 x1000_3
-1100 x1000_1updated
-delete from t1 where a >= 1000 ;
-insert into t1 values(1000,'x1000_1') ;
-execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1200 x1000_1updatedupdated
-delete from t1 where a >= 1000 ;
-prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
-execute stmt1;
-execute stmt1;
-execute stmt1;
-test_sequence
------- multi table tests ------
-delete from t1 ;
-delete from t9 ;
-insert into t1(a,b) values (1, 'one'), (2, 'two'), (3, 'three') ;
-insert into t9 (c1,c21)
-values (1, 'one'), (2, 'two'), (3, 'three') ;
-prepare stmt_delete from " delete t1, t9
- from t1, t9 where t1.a=t9.c1 and t1.b='updated' ";
-prepare stmt_update from " update t1, t9
- set t1.b='updated', t9.c21='updated'
- where t1.a=t9.c1 and t1.a=? ";
-prepare stmt_select1 from " select a, b from t1 order by a" ;
-prepare stmt_select2 from " select c1, c21 from t9 order by c1" ;
-set @arg00= 1 ;
-execute stmt_update using @arg00 ;
-execute stmt_delete ;
-execute stmt_select1 ;
-a b
-2 two
-3 three
-execute stmt_select2 ;
-c1 c21
-2 two
-3 three
-set @arg00= @arg00 + 1 ;
-execute stmt_update using @arg00 ;
-execute stmt_delete ;
-execute stmt_select1 ;
-a b
-3 three
-execute stmt_select2 ;
-c1 c21
-3 three
-set @arg00= @arg00 + 1 ;
-execute stmt_update using @arg00 ;
-execute stmt_delete ;
-execute stmt_select1 ;
-a b
-execute stmt_select2 ;
-c1 c21
-set @arg00= @arg00 + 1 ;
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-insert into t1 values(0,NULL) ;
-set @duplicate='duplicate ' ;
-set @1000=1000 ;
-set @5=5 ;
-select a,b from t1 where a < 5 order by a ;
-a b
-0 NULL
-1 one
-2 two
-3 three
-4 four
-insert into t1 select a + @1000, concat(@duplicate,b) from t1
-where a < @5 ;
-affected rows: 5
-info: Records: 5 Duplicates: 0 Warnings: 0
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 NULL
-1001 duplicate one
-1002 duplicate two
-1003 duplicate three
-1004 duplicate four
-delete from t1 where a >= 1000 ;
-prepare stmt1 from ' insert into t1 select a + ?, concat(?,b) from t1
-where a < ? ' ;
-execute stmt1 using @1000, @duplicate, @5;
-affected rows: 5
-info: Records: 5 Duplicates: 0 Warnings: 0
-select a,b from t1 where a >= 1000 order by a ;
-a b
-1000 NULL
-1001 duplicate one
-1002 duplicate two
-1003 duplicate three
-1004 duplicate four
-delete from t1 where a >= 1000 ;
-set @1=1 ;
-set @2=2 ;
-set @100=100 ;
-set @float=1.00;
-set @five='five' ;
-drop table if exists t2;
-create table t2 like t1 ;
-insert into t2 (b,a)
-select @duplicate, sum(first.a) from t1 first, t1 second
-where first.a <> @5 and second.b = first.b
-and second.b <> @five
-group by second.b
-having sum(second.a) > @2
-union
-select b, a + @100 from t1
-where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
-from t1);
-affected rows: 3
-info: Records: 3 Duplicates: 0 Warnings: 0
-select a,b from t2 order by a ;
-a b
-3 duplicate
-4 duplicate
-103 three
-delete from t2 ;
-prepare stmt1 from ' insert into t2 (b,a)
-select ?, sum(first.a)
- from t1 first, t1 second
- where first.a <> ? and second.b = first.b and second.b <> ?
- group by second.b
- having sum(second.a) > ?
-union
-select b, a + ? from t1
- where (a,b) in ( select sqrt(a+?)+CAST(? AS signed),b
- from t1 ) ' ;
-execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
-affected rows: 3
-info: Records: 3 Duplicates: 0 Warnings: 0
-select a,b from t2 order by a ;
-a b
-3 duplicate
-4 duplicate
-103 three
-drop table t2;
-drop table if exists t5 ;
-set @arg01= 8;
-set @arg02= 8.0;
-set @arg03= 80.00000000000e-1;
-set @arg04= 'abc' ;
-set @arg05= CAST('abc' as binary) ;
-set @arg06= '1991-08-05' ;
-set @arg07= CAST('1991-08-05' as date);
-set @arg08= '1991-08-05 01:01:01' ;
-set @arg09= CAST('1991-08-05 01:01:01' as datetime) ;
-set @arg10= unix_timestamp('1991-01-01 01:01:01');
-set @arg11= YEAR('1991-01-01 01:01:01');
-set @arg12= 8 ;
-set @arg12= NULL ;
-set @arg13= 8.0 ;
-set @arg13= NULL ;
-set @arg14= 'abc';
-set @arg14= NULL ;
-set @arg15= CAST('abc' as binary) ;
-set @arg15= NULL ;
-create table t5 as select
-8 as const01, @arg01 as param01,
-8.0 as const02, @arg02 as param02,
-80.00000000000e-1 as const03, @arg03 as param03,
-'abc' as const04, @arg04 as param04,
-CAST('abc' as binary) as const05, @arg05 as param05,
-'1991-08-05' as const06, @arg06 as param06,
-CAST('1991-08-05' as date) as const07, @arg07 as param07,
-'1991-08-05 01:01:01' as const08, @arg08 as param08,
-CAST('1991-08-05 01:01:01' as datetime) as const09, @arg09 as param09,
-unix_timestamp('1991-01-01 01:01:01') as const10, @arg10 as param10,
-YEAR('1991-01-01 01:01:01') as const11, @arg11 as param11,
-NULL as const12, @arg12 as param12,
-@arg13 as param13,
-@arg14 as param14,
-@arg15 as param15;
-show create table t5 ;
-Table Create Table
-t5 CREATE TABLE `t5` (
- `const01` int(1) NOT NULL default '0',
- `param01` bigint(20) default NULL,
- `const02` decimal(2,1) NOT NULL default '0.0',
- `param02` decimal(65,30) default NULL,
- `const03` double NOT NULL default '0',
- `param03` double default NULL,
- `const04` varchar(3) NOT NULL default '',
- `param04` longtext,
- `const05` varbinary(3) NOT NULL default '',
- `param05` longblob,
- `const06` varchar(10) NOT NULL default '',
- `param06` longtext,
- `const07` date default NULL,
- `param07` longblob,
- `const08` varchar(19) NOT NULL default '',
- `param08` longtext,
- `const09` datetime default NULL,
- `param09` longblob,
- `const10` int(10) NOT NULL default '0',
- `param10` bigint(20) default NULL,
- `const11` int(4) default NULL,
- `param11` bigint(20) default NULL,
- `const12` binary(0) default NULL,
- `param12` bigint(20) default NULL,
- `param13` decimal(65,30) default NULL,
- `param14` longtext,
- `param15` longblob
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-select * from t5 ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def test t5 t5 const01 const01 3 1 1 N 32769 0 63
-def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
-def test t5 t5 const02 const02 246 4 3 N 1 1 63
-def test t5 t5 param02 param02 246 67 32 Y 0 30 63
-def test t5 t5 const03 const03 5 17 1 N 32769 31 63
-def test t5 t5 param03 param03 5 23 1 Y 32768 31 63
-def test t5 t5 const04 const04 253 3 3 N 1 0 8
-def test t5 t5 param04 param04 252 4294967295 3 Y 16 0 8
-def test t5 t5 const05 const05 253 3 3 N 129 0 63
-def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
-def test t5 t5 const06 const06 253 10 10 N 1 0 8
-def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
-def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
-def test t5 t5 const08 const08 253 19 19 N 1 0 8
-def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
-def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
-def test t5 t5 const10 const10 3 10 9 N 32769 0 63
-def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
-def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
-def test t5 t5 param11 param11 8 20 4 Y 32768 0 63
-def test t5 t5 const12 const12 254 0 0 Y 128 0 63
-def test t5 t5 param12 param12 8 20 0 Y 32768 0 63
-def test t5 t5 param13 param13 246 67 0 Y 0 30 63
-def test t5 t5 param14 param14 252 4294967295 0 Y 16 0 8
-def test t5 t5 param15 param15 252 4294967295 0 Y 144 0 63
-const01 8
-param01 8
-const02 8.0
-param02 8.000000000000000000000000000000
-const03 8
-param03 8
-const04 abc
-param04 abc
-const05 abc
-param05 abc
-const06 1991-08-05
-param06 1991-08-05
-const07 1991-08-05
-param07 1991-08-05
-const08 1991-08-05 01:01:01
-param08 1991-08-05 01:01:01
-const09 1991-08-05 01:01:01
-param09 1991-08-05 01:01:01
-const10 662680861
-param10 662680861
-const11 1991
-param11 1991
-const12 NULL
-param12 NULL
-param13 NULL
-param14 NULL
-param15 NULL
-drop table t5 ;
-test_sequence
------- data type conversion tests ------
-delete from t1 ;
-insert into t1 values (1,'one');
-insert into t1 values (2,'two');
-insert into t1 values (3,'three');
-insert into t1 values (4,'four');
-commit ;
-delete from t9 ;
-insert into t9
-set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
-c10= 1, c11= 1, c12 = 1,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=true, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
-insert into t9
-set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
-c10= 9, c11= 9, c12 = 9,
-c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
-c16= '11:11:11', c17= '2004',
-c18= 1, c19=false, c20= 'a', c21= '123456789a',
-c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
-c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
-c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
-commit ;
-insert into t9 set c1= 0, c15= '1991-01-01 01:01:01' ;
-select * from t9 order by c1 ;
-c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 c16 c17 c18 c19 c20 c21 c22 c23 c24 c25 c26 c27 c28 c29 c30 c31 c32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-9 9 9 9 9 9 9 9 9 9 9.0000 9.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 0 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext two tuesday
-test_sequence
------- select @parameter:= column ------
-prepare full_info from "select @arg01, @arg02, @arg03, @arg04,
- @arg05, @arg06, @arg07, @arg08,
- @arg09, @arg10, @arg11, @arg12,
- @arg13, @arg14, @arg15, @arg16,
- @arg17, @arg18, @arg19, @arg20,
- @arg21, @arg22, @arg23, @arg24,
- @arg25, @arg26, @arg27, @arg28,
- @arg29, @arg30, @arg31, @arg32" ;
-select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
-@arg05:= c5, @arg06:= c6, @arg07:= c7, @arg08:= c8,
-@arg09:= c9, @arg10:= c10, @arg11:= c11, @arg12:= c12,
-@arg13:= c13, @arg14:= c14, @arg15:= c15, @arg16:= c16,
-@arg17:= c17, @arg18:= c18, @arg19:= c19, @arg20:= c20,
-@arg21:= c21, @arg22:= c22, @arg23:= c23, @arg24:= c24,
-@arg25:= c25, @arg26:= c26, @arg27:= c27, @arg28:= c28,
-@arg29:= c29, @arg30:= c30, @arg31:= c31, @arg32:= c32
-from t9 where c1= 1 ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
-@arg05:= c5, @arg06:= c6, @arg07:= c7, @arg08:= c8,
-@arg09:= c9, @arg10:= c10, @arg11:= c11, @arg12:= c12,
-@arg13:= c13, @arg14:= c14, @arg15:= c15, @arg16:= c16,
-@arg17:= c17, @arg18:= c18, @arg19:= c19, @arg20:= c20,
-@arg21:= c21, @arg22:= c22, @arg23:= c23, @arg24:= c24,
-@arg25:= c25, @arg26:= c26, @arg27:= c27, @arg28:= c28,
-@arg29:= c29, @arg30:= c30, @arg31:= c31, @arg32:= c32
-from t9 where c1= 0 ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select
- @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
- @arg05:= c5, @arg06:= c6, @arg07:= c7, @arg08:= c8,
- @arg09:= c9, @arg10:= c10, @arg11:= c11, @arg12:= c12,
- @arg13:= c13, @arg14:= c14, @arg15:= c15, @arg16:= c16,
- @arg17:= c17, @arg18:= c18, @arg19:= c19, @arg20:= c20,
- @arg21:= c21, @arg22:= c22, @arg23:= c23, @arg24:= c24,
- @arg25:= c25, @arg26:= c26, @arg27:= c27, @arg28:= c28,
- @arg29:= c29, @arg30:= c30, @arg31:= c31, @arg32:= c32
-from t9 where c1= ?" ;
-set @my_key= 1 ;
-execute stmt1 using @my_key ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-set @my_key= 0 ;
-execute stmt1 using @my_key ;
-@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':= c1 from t9 where c1= 1' at line 1
-test_sequence
------- select column, .. into @parm,.. ------
-select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
-c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24,
-c25, c26, c27, c28, c29, c30, c31, c32
-into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
-@arg09, @arg10, @arg11, @arg12, @arg13, @arg14, @arg15, @arg16,
-@arg17, @arg18, @arg19, @arg20, @arg21, @arg22, @arg23, @arg24,
-@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
-from t9 where c1= 1 ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
-c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24,
-c25, c26, c27, c28, c29, c30, c31, c32
-into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
-@arg09, @arg10, @arg11, @arg12, @arg13, @arg14, @arg15, @arg16,
-@arg17, @arg18, @arg19, @arg20, @arg21, @arg22, @arg23, @arg24,
-@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
-from t9 where c1= 0 ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
- c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24,
- c25, c26, c27, c28, c29, c30, c31, c32
-into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
- @arg09, @arg10, @arg11, @arg12, @arg13, @arg14, @arg15, @arg16,
- @arg17, @arg18, @arg19, @arg20, @arg21, @arg22, @arg23, @arg24,
- @arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
-from t9 where c1= ?" ;
-set @my_key= 1 ;
-execute stmt1 using @my_key ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 1 Y 128 0 63
-def @arg03 253 20 1 Y 128 0 63
-def @arg04 253 20 1 Y 128 0 63
-def @arg05 253 20 1 Y 128 0 63
-def @arg06 253 20 1 Y 128 0 63
-def @arg07 253 23 1 Y 128 31 63
-def @arg08 253 23 1 Y 128 31 63
-def @arg09 253 23 1 Y 128 31 63
-def @arg10 253 23 1 Y 128 31 63
-def @arg11 253 83 6 Y 128 30 63
-def @arg12 253 83 6 Y 128 30 63
-def @arg13 253 8192 10 Y 128 31 63
-def @arg14 253 8192 19 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 8 Y 128 31 63
-def @arg17 253 20 4 Y 160 0 63
-def @arg18 253 20 1 Y 128 0 63
-def @arg19 253 20 1 Y 128 0 63
-def @arg20 253 8192 1 Y 0 31 8
-def @arg21 253 8192 10 Y 0 31 8
-def @arg22 253 8192 30 Y 0 31 8
-def @arg23 253 8192 8 Y 128 31 63
-def @arg24 253 8192 8 Y 0 31 8
-def @arg25 253 8192 4 Y 128 31 63
-def @arg26 253 8192 4 Y 0 31 8
-def @arg27 253 8192 10 Y 128 31 63
-def @arg28 253 8192 10 Y 0 31 8
-def @arg29 253 8192 8 Y 128 31 63
-def @arg30 253 8192 8 Y 0 31 8
-def @arg31 253 8192 3 Y 0 31 8
-def @arg32 253 8192 6 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
-set @my_key= 0 ;
-execute stmt1 using @my_key ;
-execute full_info ;
-Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def @arg01 253 20 1 Y 128 0 63
-def @arg02 253 20 0 Y 128 0 63
-def @arg03 253 20 0 Y 128 0 63
-def @arg04 253 20 0 Y 128 0 63
-def @arg05 253 20 0 Y 128 0 63
-def @arg06 253 20 0 Y 128 0 63
-def @arg07 253 23 0 Y 128 31 63
-def @arg08 253 23 0 Y 128 31 63
-def @arg09 253 23 0 Y 128 31 63
-def @arg10 253 23 0 Y 128 31 63
-def @arg11 253 83 0 Y 128 30 63
-def @arg12 253 83 0 Y 128 30 63
-def @arg13 253 8192 0 Y 128 31 63
-def @arg14 253 8192 0 Y 128 31 63
-def @arg15 253 8192 19 Y 128 31 63
-def @arg16 253 8192 0 Y 128 31 63
-def @arg17 253 20 0 Y 160 0 63
-def @arg18 253 20 0 Y 128 0 63
-def @arg19 253 20 0 Y 128 0 63
-def @arg20 253 8192 0 Y 0 31 8
-def @arg21 253 8192 0 Y 0 31 8
-def @arg22 253 8192 0 Y 0 31 8
-def @arg23 253 8192 0 Y 128 31 63
-def @arg24 253 8192 0 Y 0 31 8
-def @arg25 253 8192 0 Y 128 31 63
-def @arg26 253 8192 0 Y 0 31 8
-def @arg27 253 8192 0 Y 128 31 63
-def @arg28 253 8192 0 Y 0 31 8
-def @arg29 253 8192 0 Y 128 31 63
-def @arg30 253 8192 0 Y 0 31 8
-def @arg31 253 8192 0 Y 0 31 8
-def @arg32 253 8192 0 Y 0 31 8
-@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
-0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? from t9 where c1= 1' at line 1
-test_sequence
--- insert into numeric columns --
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 ) ;
-set @arg00= 21 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22 )" ;
-execute stmt1 ;
-set @arg00= 23;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0,
-30.0, 30.0, 30.0 ) ;
-set @arg00= 31.0 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 32.0, 32.0, 32.0, 32.0, 32.0, 32.0, 32.0, 32.0,
- 32.0, 32.0, 32.0 )" ;
-execute stmt1 ;
-set @arg00= 33.0;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( '40', '40', '40', '40', '40', '40', '40', '40',
-'40', '40', '40' ) ;
-set @arg00= '41' ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( '42', '42', '42', '42', '42', '42', '42', '42',
- '42', '42', '42' )" ;
-execute stmt1 ;
-set @arg00= '43';
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( CAST('50' as binary), CAST('50' as binary),
-CAST('50' as binary), CAST('50' as binary), CAST('50' as binary),
-CAST('50' as binary), CAST('50' as binary), CAST('50' as binary),
-CAST('50' as binary), CAST('50' as binary), CAST('50' as binary) ) ;
-set @arg00= CAST('51' as binary) ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( CAST('52' as binary), CAST('52' as binary),
- CAST('52' as binary), CAST('52' as binary), CAST('52' as binary),
- CAST('52' as binary), CAST('52' as binary), CAST('52' as binary),
- CAST('52' as binary), CAST('52' as binary), CAST('52' as binary) )" ;
-execute stmt1 ;
-set @arg00= CAST('53' as binary) ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-set @arg00= 2 ;
-set @arg00= NULL ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 60, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-NULL, NULL, NULL ) ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 61, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt1 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 62, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL )" ;
-execute stmt1 ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 63, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-set @arg00= 8.0 ;
-set @arg00= NULL ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 71, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 73, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-set @arg00= 'abc' ;
-set @arg00= NULL ;
-insert into t9
-( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
-( 81, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ) ;
-prepare stmt2 from "insert into t9
- ( c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 83, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-execute stmt2 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12
-from t9 where c1 >= 20
-order by c1 ;
-c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c12
-20 20 20 20 20 20 20 20 20 20 20.0000
-21 21 21 21 21 21 21 21 21 21 21.0000
-22 22 22 22 22 22 22 22 22 22 22.0000
-23 23 23 23 23 23 23 23 23 23 23.0000
-30 30 30 30 30 30 30 30 30 30 30.0000
-31 31 31 31 31 31 31 31 31 31 31.0000
-32 32 32 32 32 32 32 32 32 32 32.0000
-33 33 33 33 33 33 33 33 33 33 33.0000
-40 40 40 40 40 40 40 40 40 40 40.0000
-41 41 41 41 41 41 41 41 41 41 41.0000
-42 42 42 42 42 42 42 42 42 42 42.0000
-43 43 43 43 43 43 43 43 43 43 43.0000
-50 50 50 50 50 50 50 50 50 50 50.0000
-51 51 51 51 51 51 51 51 51 51 51.0000
-52 52 52 52 52 52 52 52 52 52 52.0000
-53 53 53 53 53 53 53 53 53 53 53.0000
-60 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-61 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-62 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-63 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-71 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-73 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-81 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-83 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-test_sequence
--- select .. where numeric column = .. --
-set @arg00= 20;
-select 'true' as found from t9
-where c1= 20 and c2= 20 and c3= 20 and c4= 20 and c5= 20 and c6= 20 and c7= 20
-and c8= 20 and c9= 20 and c10= 20 and c12= 20;
-found
-true
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c2= 20 and c3= 20 and c4= 20 and c5= 20 and c6= 20 and c7= 20
- and c8= 20 and c9= 20 and c10= 20 and c12= 20 ";
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 20.0;
-select 'true' as found from t9
-where c1= 20.0 and c2= 20.0 and c3= 20.0 and c4= 20.0 and c5= 20.0 and c6= 20.0
-and c7= 20.0 and c8= 20.0 and c9= 20.0 and c10= 20.0 and c12= 20.0;
-found
-true
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20.0 and c2= 20.0 and c3= 20.0 and c4= 20.0 and c5= 20.0 and c6= 20.0
- and c7= 20.0 and c8= 20.0 and c9= 20.0 and c10= 20.0 and c12= 20.0 ";
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-select 'true' as found from t9
-where c1= '20' and c2= '20' and c3= '20' and c4= '20' and c5= '20' and c6= '20'
- and c7= '20' and c8= '20' and c9= '20' and c10= '20' and c12= '20';
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= '20' and c2= '20' and c3= '20' and c4= '20' and c5= '20' and c6= '20'
- and c7= '20' and c8= '20' and c9= '20' and c10= '20' and c12= '20' ";
-execute stmt1 ;
-found
-true
-set @arg00= '20';
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-select 'true' as found from t9
-where c1= CAST('20' as binary) and c2= CAST('20' as binary) and
-c3= CAST('20' as binary) and c4= CAST('20' as binary) and
-c5= CAST('20' as binary) and c6= CAST('20' as binary) and
-c7= CAST('20' as binary) and c8= CAST('20' as binary) and
-c9= CAST('20' as binary) and c10= CAST('20' as binary) and
-c12= CAST('20' as binary);
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= CAST('20' as binary) and c2= CAST('20' as binary) and
- c3= CAST('20' as binary) and c4= CAST('20' as binary) and
- c5= CAST('20' as binary) and c6= CAST('20' as binary) and
- c7= CAST('20' as binary) and c8= CAST('20' as binary) and
- c9= CAST('20' as binary) and c10= CAST('20' as binary) and
- c12= CAST('20' as binary) ";
-execute stmt1 ;
-found
-true
-set @arg00= CAST('20' as binary) ;
-select 'true' as found from t9
-where c1= @arg00 and c2= @arg00 and c3= @arg00 and c4= @arg00 and c5= @arg00
-and c6= @arg00 and c7= @arg00 and c8= @arg00 and c9= @arg00 and c10= @arg00
-and c12= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= ? and c2= ? and c3= ? and c4= ? and c5= ?
- and c6= ? and c7= ? and c8= ? and c9= ? and c10= ?
- and c12= ? ";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00 ;
-found
-true
-delete from t9 ;
-test_sequence
--- some numeric overflow experiments --
-prepare my_insert from "insert into t9
- ( c21, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12 )
-values
- ( 'O', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" ;
-prepare my_select from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c12
-from t9 where c21 = 'O' ";
-prepare my_delete from "delete from t9 where c21 = 'O' ";
-set @arg00= 9223372036854775807 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 9.22337e+18
-c8 9.22337203685478e+18
-c9 9.22337203685478e+18
-c10 9.22337203685478e+18
-c12 9999.9999
-execute my_delete ;
-set @arg00= '9223372036854775807' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 9.22337e+18
-c8 9.22337203685478e+18
-c9 9.22337203685478e+18
-c10 9.22337203685478e+18
-c12 9999.9999
-execute my_delete ;
-set @arg00= -9223372036854775808 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -9.22337e+18
-c8 -9.22337203685478e+18
-c9 -9.22337203685478e+18
-c10 -9.22337203685478e+18
-c12 -9999.9999
-execute my_delete ;
-set @arg00= '-9223372036854775808' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -9.22337e+18
-c8 -9.22337203685478e+18
-c9 -9.22337203685478e+18
-c10 -9.22337203685478e+18
-c12 -9999.9999
-execute my_delete ;
-set @arg00= 1.11111111111111111111e+50 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 3.40282e+38
-c8 1.11111111111111e+50
-c9 1.11111111111111e+50
-c10 1.11111111111111e+50
-c12 9999.9999
-execute my_delete ;
-set @arg00= '1.11111111111111111111e+50' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 127
-c2 32767
-c3 8388607
-c4 2147483647
-c5 2147483647
-c6 9223372036854775807
-c7 3.40282e+38
-c8 1.11111111111111e+50
-c9 1.11111111111111e+50
-c10 1.11111111111111e+50
-c12 9999.9999
-execute my_delete ;
-set @arg00= -1.11111111111111111111e+50 ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -3.40282e+38
-c8 -1.11111111111111e+50
-c9 -1.11111111111111e+50
-c10 -1.11111111111111e+50
-c12 -9999.9999
-execute my_delete ;
-set @arg00= '-1.11111111111111111111e+50' ;
-execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
-Warning 1264 Out of range value adjusted for column 'c2' at row 1
-Warning 1264 Out of range value adjusted for column 'c3' at row 1
-Warning 1264 Out of range value adjusted for column 'c4' at row 1
-Warning 1264 Out of range value adjusted for column 'c5' at row 1
-Warning 1264 Out of range value adjusted for column 'c6' at row 1
-Warning 1264 Out of range value adjusted for column 'c7' at row 1
-Warning 1264 Out of range value adjusted for column 'c12' at row 1
-execute my_select ;
-c1 -128
-c2 -32768
-c3 -8388608
-c4 -2147483648
-c5 -2147483648
-c6 -9223372036854775808
-c7 -3.40282e+38
-c8 -1.11111111111111e+50
-c9 -1.11111111111111e+50
-c10 -1.11111111111111e+50
-c12 -9999.9999
-execute my_delete ;
-test_sequence
--- insert into string columns --
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c20' at row 1
-select c1, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30
-from t9 where c1 >= 20
-order by c1 ;
-c1 c20 c21 c22 c23 c24 c25 c26 c27 c28 c29 c30
-20 2 20 20 20 20 20 20 20 20 20 20
-21 2 21 21 21 21 21 21 21 21 21 21
-22 2 22 22 22 22 22 22 22 22 22 22
-23 2 23 23 23 23 23 23 23 23 23 23
-30 3 30 30 30 30 30 30 30 30 30 30
-31 3 31 31 31 31 31 31 31 31 31 31
-32 3 32 32 32 32 32 32 32 32 32 32
-33 3 33 33 33 33 33 33 33 33 33 33
-40 4 40 40 40 40 40 40 40 40 40 40
-41 4 41 41 41 41 41 41 41 41 41 41
-42 4 42 42 42 42 42 42 42 42 42 42
-43 4 43 43 43 43 43 43 43 43 43 43
-50 5 50.0 50.0 50.0 50.0 50.0 50.0 50.0 50.0 50.0 50.0
-51 5 51.0 51.0 51.0 51.0 51.0 51.0 51.0 51.0 51.0 51.0
-52 5 52.0 52.0 52.0 52.0 52.0 52.0 52.0 52.0 52.0 52.0
-53 5 53.0 53.0 53.0 53.0 53.0 53.0 53.0 53.0 53.0 53.0
-54 5 54 54 54.00 54.00 54.00 54.00 54.00 54.00 54.00 54.00
-55 5 55 55 55 55 55 55 55 55 55 55
-56 6 56 56 56.00 56.00 56.00 56.00 56.00 56.00 56.00 56.00
-57 6 57 57 57.00 57.00 57.00 57.00 57.00 57.00 57.00 57.00
-60 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-61 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-62 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-63 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-71 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-73 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-81 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-83 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
-test_sequence
--- select .. where string column = .. --
-set @arg00= '20';
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr('20',1+length(c20)))= '20' and c21= '20' and
-c22= '20' and c23= '20' and c24= '20' and c25= '20' and c26= '20' and
-c27= '20' and c28= '20' and c29= '20' and c30= '20' ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20)))= @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr('20',1+length(c20)))= '20' and c21= '20' and
- c22= '20' and c23= '20' and c24= '20' and c25= '20' and c26= '20' and
- c27= '20' and c28= '20' and c29= '20' and c30= '20'" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20)))= ? and
- c21= ? and c22= ? and c23= ? and c25= ? and
- c26= ? and c27= ? and c28= ? and c29= ? and c30= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= CAST('20' as binary);
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(CAST('20' as binary),1+length(c20)))
-= CAST('20' as binary) and c21= CAST('20' as binary)
-and c22= CAST('20' as binary) and c23= CAST('20' as binary) and
-c24= CAST('20' as binary) and c25= CAST('20' as binary) and
-c26= CAST('20' as binary) and c27= CAST('20' as binary) and
-c28= CAST('20' as binary) and c29= CAST('20' as binary) and
-c30= CAST('20' as binary) ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20))) = @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and
-c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(CAST('20' as binary),1+length(c20)))
- = CAST('20' as binary) and c21= CAST('20' as binary)
- and c22= CAST('20' as binary) and c23= CAST('20' as binary) and
- c24= CAST('20' as binary) and c25= CAST('20' as binary) and
- c26= CAST('20' as binary) and c27= CAST('20' as binary) and
- c28= CAST('20' as binary) and c29= CAST('20' as binary) and
- c30= CAST('20' as binary)" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20))) = ? and c21= ? and
- c22= ? and c23= ? and c25= ? and c26= ? and c27= ? and c28= ? and
- c29= ? and c30= ?";
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 20;
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20,1+length(c20)))= 20 and c21= 20 and
-c22= 20 and c23= 20 and c24= 20 and c25= 20 and c26= 20 and
-c27= 20 and c28= 20 and c29= 20 and c30= 20 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20)))= @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20,1+length(c20)))= 20 and c21= 20 and
- c22= 20 and c23= 20 and c24= 20 and c25= 20 and c26= 20 and
- c27= 20 and c28= 20 and c29= 20 and c30= 20" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20)))= ? and
- c21= ? and c22= ? and c23= ? and c25= ? and
- c26= ? and c27= ? and c28= ? and c29= ? and c30= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 20.0;
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20.0,1+length(c20)))= 20.0 and c21= 20.0 and
-c22= 20.0 and c23= 20.0 and c24= 20.0 and c25= 20.0 and c26= 20.0 and
-c27= 20.0 and c28= 20.0 and c29= 20.0 and c30= 20.0 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and concat(c20,substr(@arg00,1+length(c20)))= @arg00 and
-c21= @arg00 and c22= @arg00 and c23= @arg00 and c25= @arg00 and
-c26= @arg00 and c27= @arg00 and c28= @arg00 and c29= @arg00 and c30= @arg00;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(20.0,1+length(c20)))= 20.0 and c21= 20.0 and
- c22= 20.0 and c23= 20.0 and c24= 20.0 and c25= 20.0 and c26= 20.0 and
- c27= 20.0 and c28= 20.0 and c29= 20.0 and c30= 20.0" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and concat(c20,substr(?,1+length(c20)))= ? and
- c21= ? and c22= ? and c23= ? and c25= ? and
- c26= ? and c27= ? and c28= ? and c29= ? and c30= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
-@arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-delete from t9 ;
-test_sequence
--- insert into date/time columns --
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Note 1265 Data truncated for column 'c13' at row 1
-Warning 1265 Data truncated for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1264 Out of range value adjusted for column 'c13' at row 1
-Warning 1264 Out of range value adjusted for column 'c14' at row 1
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-Warnings:
-Warning 1265 Data truncated for column 'c15' at row 1
-Warning 1264 Out of range value adjusted for column 'c16' at row 1
-Warning 1264 Out of range value adjusted for column 'c17' at row 1
-select c1, c13, c14, c15, c16, c17 from t9 order by c1 ;
-c1 c13 c14 c15 c16 c17
-20 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-21 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-22 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-23 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-30 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-31 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-32 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-33 1991-01-01 1991-01-01 01:01:01 1991-01-01 01:01:01 01:01:01 1991
-40 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-41 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-42 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-43 0000-00-00 0000-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-50 2001-00-00 2001-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-51 2010-00-00 2010-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-52 2001-00-00 2001-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-53 2001-00-00 2001-00-00 00:00:00 0000-00-00 00:00:00 838:59:59 0000
-60 NULL NULL 1991-01-01 01:01:01 NULL NULL
-61 NULL NULL 1991-01-01 01:01:01 NULL NULL
-62 NULL NULL 1991-01-01 01:01:01 NULL NULL
-63 NULL NULL 1991-01-01 01:01:01 NULL NULL
-71 NULL NULL 1991-01-01 01:01:01 NULL NULL
-73 NULL NULL 1991-01-01 01:01:01 NULL NULL
-81 NULL NULL 1991-01-01 01:01:01 NULL NULL
-83 NULL NULL 1991-01-01 01:01:01 NULL NULL
-test_sequence
--- select .. where date/time column = .. --
-set @arg00= '1991-01-01 01:01:01' ;
-select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 01:01:01' AS DATE) and c14= '1991-01-01 01:01:01' and
-c15= '1991-01-01 01:01:01' and c16= '1991-01-01 01:01:01' and
-c17= '1991-01-01 01:01:01' ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and c13= CAST(@arg00 AS DATE) and c14= @arg00 and c15= @arg00 and c16= @arg00
-and c17= @arg00 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 01:01:01' AS DATE) and c14= '1991-01-01 01:01:01' and
- c15= '1991-01-01 01:01:01' and c16= '1991-01-01 01:01:01' and
- c17= '1991-01-01 01:01:01'" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST(? AS DATE) and c14= ? and c15= ? and c16= ? and c17= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= CAST('1991-01-01 01:01:01' as datetime) ;
-select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 00:00:00' as datetime) and
-c14= CAST('1991-01-01 01:01:01' as datetime) and
-c15= CAST('1991-01-01 01:01:01' as datetime) and
-c16= CAST('1991-01-01 01:01:01' as datetime) and
-c17= CAST('1991-01-01 01:01:01' as datetime) ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and c13= CAST(@arg00 AS DATE) and c14= @arg00 and c15= @arg00 and c16= @arg00
-and c17= @arg00 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST('1991-01-01 00:00:00' as datetime) and
- c14= CAST('1991-01-01 01:01:01' as datetime) and
- c15= CAST('1991-01-01 01:01:01' as datetime) and
- c16= CAST('1991-01-01 01:01:01' as datetime) and
- c17= CAST('1991-01-01 01:01:01' as datetime)" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c13= CAST(? AS DATE) and c14= ? and c15= ? and c16= ? and c17= ?" ;
-execute stmt1 using @arg00, @arg00, @arg00, @arg00, @arg00 ;
-found
-true
-set @arg00= 1991 ;
-select 'true' as found from t9
-where c1= 20 and c17= 1991 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and c17= @arg00 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c17= 1991" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and c17= ?" ;
-execute stmt1 using @arg00 ;
-found
-true
-set @arg00= 1.991e+3 ;
-select 'true' as found from t9
-where c1= 20 and abs(c17 - 1.991e+3) < 0.01 ;
-found
-true
-select 'true' as found from t9
-where c1= 20 and abs(c17 - @arg00) < 0.01 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and abs(c17 - 1.991e+3) < 0.01" ;
-execute stmt1 ;
-found
-true
-prepare stmt1 from "select 'true' as found from t9
-where c1= 20 and abs(c17 - ?) < 0.01" ;
-execute stmt1 using @arg00 ;
-found
-true
-drop table t1, t9;
diff --git a/mysql-test/r/ps_ddl.result b/mysql-test/r/ps_ddl.result
new file mode 100644
index 00000000000..c7e8812320c
--- /dev/null
+++ b/mysql-test/r/ps_ddl.result
@@ -0,0 +1,2259 @@
+drop temporary table if exists t1, t2, t3;
+drop table if exists t1, t2, t3;
+drop procedure if exists p_verify_reprepare_count;
+drop procedure if exists p1;
+drop function if exists f1;
+drop view if exists v1, v2;
+create procedure p_verify_reprepare_count(expected int)
+begin
+declare old_reprepare_count int default @reprepare_count;
+select variable_value from
+information_schema.session_status where
+variable_name='com_stmt_reprepare'
+ into @reprepare_count;
+if old_reprepare_count + expected <> @reprepare_count then
+select concat("Expected: ", expected,
+", actual: ", @reprepare_count - old_reprepare_count)
+as "ERROR";
+else
+select '' as "SUCCESS";
+end if;
+end|
+set @reprepare_count= 0;
+flush status;
+=====================================================================
+Part 1: NOTHING -> TABLE transitions
+=====================================================================
+prepare stmt from "select * from t1";
+ERROR 42S02: Table 'test.t1' doesn't exist
+=====================================================================
+Part 2: NOTHING -> TEMPORARY TABLE transitions
+=====================================================================
+=====================================================================
+Part 3: NOTHING -> VIEW transitions
+=====================================================================
+=====================================================================
+Part 4: TABLE -> NOTHING transitions
+=====================================================================
+# Test 4-a: select ... from <table>
+create table t1 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+# Test 4-b: TABLE -> NOTHING by renaming the table
+create table t1 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+rename table t1 to t2;
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+drop table t2;
+=====================================================================
+Part 5: TABLE -> TABLE (DDL) transitions
+=====================================================================
+create table t1 (a int);
+prepare stmt from "select a from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 add column (b int);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+deallocate prepare stmt;
+=====================================================================
+Part 6: TABLE -> TABLE (TRIGGER) transitions
+=====================================================================
+# Test 6-a: adding a relevant trigger
+create table t1 (a int);
+prepare stmt from "insert into t1 (a) value (?)";
+set @val=1;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create trigger t1_bi before insert on t1 for each row
+set @message= new.a;
+set @val=2;
+execute stmt using @val;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+2
+set @val=3;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+3
+prepare stmt from "insert into t1 (a) value (?)";
+set @val=4;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+4
+# Test 6-b: adding an irrelevant trigger
+create trigger t1_bd before delete on t1 for each row
+set @message= old.a;
+set @val=5;
+execute stmt using @val;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+5
+set @val=6;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+6
+prepare stmt from "insert into t1 (a) value (?)";
+set @val=7;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+7
+# Test 6-c: changing a relevant trigger
+drop trigger t1_bi;
+create trigger t1_bi before insert on t1 for each row
+set @message= concat("new trigger: ", new.a);
+set @val=8;
+execute stmt using @val;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+new trigger: 8
+set @val=9;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+new trigger: 9
+prepare stmt from "insert into t1 (a) value (?)";
+set @val=10;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+new trigger: 10
+# Test 6-d: changing an irrelevant trigger
+drop trigger t1_bd;
+set @val=11;
+execute stmt using @val;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+new trigger: 11
+Test 6-e: removing a relevant trigger
+drop trigger t1_bi;
+set @val=12;
+execute stmt using @val;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+new trigger: 11
+set @val=13;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+new trigger: 11
+prepare stmt from "insert into t1 (a) value (?)";
+set @val=14;
+execute stmt using @val;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select @message;
+@message
+new trigger: 11
+select * from t1 order by a;
+a
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+drop table t1;
+deallocate prepare stmt;
+=====================================================================
+Part 7: TABLE -> TABLE (TRIGGER dependencies) transitions
+=====================================================================
+# Test 7-a: dependent PROCEDURE has changed
+#
+# Note, this scenario is not supported, subject of Bug#12093
+#
+create table t1 (a int);
+create trigger t1_ai after insert on t1 for each row
+call p1(new.a);
+create procedure p1(a int) begin end;
+prepare stmt from "insert into t1 (a) values (?)";
+set @var= 1;
+execute stmt using @var;
+drop procedure p1;
+create procedure p1 (a int) begin end;
+set @var= 2;
+execute stmt using @var;
+ERROR 42000: PROCEDURE test.p1 does not exist
+# Cleanup
+drop procedure p1;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 7-b: dependent FUNCTION has changed
+#
+# Note, this scenario is supported, subject of Bug#12093
+#
+drop trigger t1_ai;
+create trigger t1_ai after insert on t1 for each row
+select f1(new.a+1) into @var;
+create function f1 (a int) returns int return a;
+prepare stmt from "insert into t1(a) values (?)";
+set @var=3;
+execute stmt using @var;
+select @var;
+@var
+4
+drop function f1;
+create function f1 (a int) returns int return 0;
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop function f1;
+deallocate prepare stmt;
+# Test 7-c: dependent VIEW has changed
+#
+# Note, this scenario is not functioning correctly, see
+# Bug#33255 Trigger using views and view ddl : corrupted triggers
+# and Bug #33000 Triggers do not detect changes in meta-data.
+#
+drop trigger t1_ai;
+create table t2 (a int unique);
+create table t3 (a int unique);
+create view v1 as select a from t2;
+create trigger t1_ai after insert on t1 for each row
+insert into v1 (a) values (new.a);
+# Demonstrate that the same bug is present
+# without prepared statements
+insert into t1 (a) values (5);
+select * from t2;
+a
+5
+select * from t3;
+a
+drop view v1;
+create view v1 as select a from t3;
+insert into t1 (a) values (6);
+ERROR 42S02: Table 'test.t2' doesn't exist
+flush table t1;
+insert into t1 (a) values (6);
+select * from t2;
+a
+5
+select * from t3;
+a
+6
+prepare stmt from "insert into t1 (a) values (?)";
+set @var=7;
+execute stmt using @var;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t3;
+a
+6
+7
+select * from t2;
+a
+5
+drop view v1;
+create view v1 as select a from t2;
+set @var=8;
+# XXX: bug, the SQL statement in the trigger is still
+# pointing at table 't3', since the view was expanded
+# at first statement execution.
+# Repreparation of the main statement doesn't cause repreparation
+# of trigger statements.
+execute stmt using @var;
+ERROR 42S02: Table 'test.t3' doesn't exist
+call p_verify_reprepare_count(1);
+SUCCESS
+
+#
+# Sic: the insert went into t3, even though the view now
+# points at t2. This is because neither the merged view
+# nor its prelocking list are affected by view DDL
+# The binary log is of course wrong, since it is not
+# using prepared statements
+#
+select * from t2;
+a
+5
+select * from t3;
+a
+6
+7
+flush table t1;
+set @var=9;
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t2;
+a
+5
+9
+select * from t3;
+a
+6
+7
+drop view v1;
+drop table t1,t2,t3;
+# Test 7-d: dependent TABLE has changed
+create table t1 (a int);
+create trigger t1_ai after insert on t1 for each row
+insert into t2 (a) values (new.a);
+create table t2 (a int);
+prepare stmt from "insert into t1 (a) values (?)";
+set @var=1;
+execute stmt using @var;
+alter table t2 add column comment varchar(255);
+set @var=2;
+# Since the dependent table is tracked in the prelocked
+# list of the prepared statement, invalidation happens
+# and the statement is re-prepared. This is an unnecessary
+# side effect, since the statement that *is* dependent
+# on t2 definition is inside the trigger, and it is currently
+# not reprepared (see the previous test case).
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t1;
+a
+1
+2
+select * from t2;
+a comment
+1 NULL
+2 NULL
+drop table t1,t2;
+# Test 7-e: dependent TABLE TRIGGER has changed
+create table t1 (a int);
+create trigger t1_ai after insert on t1 for each row
+insert into t2 (a) values (new.a);
+create table t2 (a int unique);
+create trigger t2_ai after insert on t2 for each row
+insert into t3 (a) values (new.a);
+create table t3 (a int unique);
+create table t4 (a int unique);
+insert into t1 (a) values (1);
+select * from t1 join t2 on (t1.a=t2.a) join t3 on (t2.a=t3.a);
+a a a
+1 1 1
+drop trigger t2_ai;
+create trigger t2_ai after insert on t2 for each row
+insert into t4 (a) values (new.a);
+insert into t1 (a) values (2);
+select * from t1 join t2 on (t1.a=t2.a) join t4 on (t2.a=t4.a);
+a a a
+2 2 2
+prepare stmt from "insert into t1 (a) values (?)";
+set @var=3;
+execute stmt using @var;
+select * from t1 join t2 on (t1.a=t2.a) join t4 on (t2.a=t4.a);
+a a a
+2 2 2
+3 3 3
+drop trigger t2_ai;
+create trigger t2_ai after insert on t2 for each row
+insert into t3 (a) values (new.a);
+set @var=4;
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t1 join t2 on (t1.a=t2.a) join t3 on (t2.a=t3.a);
+a a a
+1 1 1
+4 4 4
+select * from t1 join t2 on (t1.a=t2.a) join t4 on (t2.a=t4.a);
+a a a
+2 2 2
+3 3 3
+drop table t1, t2, t3, t4;
+deallocate prepare stmt;
+=====================================================================
+Part 8: TABLE -> TEMPORARY TABLE transitions
+=====================================================================
+# Test 8-a: base table used recreated as temporary table
+create table t1 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+drop table t1;
+create temporary table t1 (a int);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+deallocate prepare stmt;
+# Test 8-b: temporary table has precedence over base table with same name
+create table t1 (a int);
+prepare stmt from 'select count(*) from t1';
+execute stmt;
+count(*)
+0
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+count(*)
+0
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create temporary table t1 AS SELECT 1;
+execute stmt;
+count(*)
+1
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+count(*)
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+drop temporary table t1;
+drop table t1;
+=====================================================================
+Part 9: TABLE -> VIEW transitions
+=====================================================================
+create table t1 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+create table t2 (a int);
+create view t1 as select * from t2;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop view t1;
+drop table t2;
+deallocate prepare stmt;
+=====================================================================
+Part 10: TEMPORARY TABLE -> NOTHING transitions
+=====================================================================
+create temporary table t1 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t1;
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+=====================================================================
+Part 11: TEMPORARY TABLE -> TABLE transitions
+=====================================================================
+# Test 11-a: temporary table replaced by base table
+create table t1 (a int);
+insert into t1 (a) value (1);
+create temporary table t1 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t1;
+execute stmt;
+a
+1
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t1;
+a
+1
+drop table t1;
+deallocate prepare stmt;
+# Test 11-b: temporary table has precedence over base table with same name
+# temporary table disappears
+create table t1 (a int);
+create temporary table t1 as select 1 as a;
+prepare stmt from "select count(*) from t1";
+execute stmt;
+count(*)
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+count(*)
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t1;
+execute stmt;
+count(*)
+0
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+count(*)
+0
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+drop table t1;
+=====================================================================
+Part 12: TEMPORARY TABLE -> TEMPORARY TABLE (DDL) transitions
+=====================================================================
+create temporary table t1 (a int);
+prepare stmt from "select a from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t1;
+create temporary table t1 (a int, b int);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t1;
+a b
+drop temporary table t1;
+deallocate prepare stmt;
+=====================================================================
+Part 13: TEMPORARY TABLE -> VIEW transitions
+=====================================================================
+create temporary table t1 (a int);
+create table t2 (a int);
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t1;
+create view t1 as select * from t2;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop view t1;
+drop table t2;
+deallocate prepare stmt;
+=====================================================================
+Part 14: VIEW -> NOTHING transitions
+=====================================================================
+create table t2 (a int);
+create view t1 as select * from t2;
+prepare stmt from "select * from t1";
+execute stmt;
+a
+drop view t1;
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+deallocate prepare stmt;
+=====================================================================
+Part 15: VIEW -> TABLE transitions
+=====================================================================
+create table t2 (a int);
+create view t1 as select * from t2;
+prepare stmt from "select * from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop view t1;
+create table t1 (a int);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table t2;
+drop table t1;
+deallocate prepare stmt;
+=====================================================================
+Part 16: VIEW -> TEMPORARY TABLE transitions
+=====================================================================
+create table t2 (a int);
+insert into t2 (a) values (1);
+create view t1 as select * from t2;
+prepare stmt from "select * from t1";
+execute stmt;
+a
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create temporary table t1 (a int);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop view t1;
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+drop temporary table t1;
+deallocate prepare stmt;
+=====================================================================
+Part 17: VIEW -> VIEW (DDL) transitions
+=====================================================================
+create table t2 (a int);
+insert into t2 values (10), (20), (30);
+create view t1 as select a, 2*a as b, 3*a as c from t2;
+select * from t1;
+a b c
+10 20 30
+20 40 60
+30 60 90
+prepare stmt from "select * from t1";
+execute stmt;
+a b c
+10 20 30
+20 40 60
+30 60 90
+drop view t1;
+create view t1 as select a, 2*a as b, 5*a as c from t2;
+select * from t1;
+a b c
+10 20 50
+20 40 100
+30 60 150
+# Currently a different result from conventional statements.
+# A view is inlined once at prepare, later on view DDL
+# does not affect prepared statement and it is not re-prepared.
+# This is reported in Bug#36002 Prepared statements: if a view
+# used in a statement is replaced, bad data
+execute stmt;
+a b c
+10 20 30
+20 40 60
+30 60 90
+call p_verify_reprepare_count(0);
+SUCCESS
+
+flush table t2;
+execute stmt;
+a b c
+10 20 50
+20 40 100
+30 60 150
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table t2;
+drop view t1;
+deallocate prepare stmt;
+=====================================================================
+Part 18: VIEW -> VIEW (VIEW dependencies) transitions
+=====================================================================
+# Part 18a: dependent function has changed
+create table t1 (a int);
+insert into t1 (a) values (1), (2), (3);
+create function f1() returns int return (select max(a) from t1);
+create view v1 as select f1();
+prepare stmt from "select * from v1";
+execute stmt;
+f1()
+3
+execute stmt;
+f1()
+3
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop function f1;
+create function f1() returns int return 2;
+# XXX: Used to be another manifestation of Bug#12093.
+# We only used to get a different error
+# message because the non-existing procedure error is masked
+# by the view.
+execute stmt;
+f1()
+2
+execute stmt;
+f1()
+2
+call p_verify_reprepare_count(1);
+SUCCESS
+
+# Part 18b: dependent procedure has changed (referred to via a function)
+create table t2 (a int);
+insert into t2 (a) values (4), (5), (6);
+drop function f1;
+create function f1() returns int
+begin
+declare x int;
+call p1(x);
+return x;
+end|
+create procedure p1(out x int) select max(a) from t1 into x;
+prepare stmt from "select * from v1";
+execute stmt;
+f1()
+3
+execute stmt;
+f1()
+3
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop procedure p1;
+create procedure p1(out x int) select max(a) from t2 into x;
+# XXX: used to be a bug. The prelocked list was not invalidated
+# and we kept opening table t1, whereas the procedure
+# is now referring to table t2
+execute stmt;
+f1()
+6
+call p_verify_reprepare_count(1);
+SUCCESS
+
+flush table t1;
+execute stmt;
+f1()
+6
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+f1()
+6
+# Test 18-c: dependent VIEW has changed
+drop view v1;
+create view v2 as select a from t1;
+create view v1 as select * from v2;
+prepare stmt from "select * from v1";
+execute stmt;
+a
+1
+2
+3
+execute stmt;
+a
+1
+2
+3
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop view v2;
+create view v2 as select a from t2;
+execute stmt;
+a
+1
+2
+3
+execute stmt;
+a
+1
+2
+3
+call p_verify_reprepare_count(0);
+SUCCESS
+
+flush table t1;
+execute stmt;
+a
+4
+5
+6
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+4
+5
+6
+# Test 18-d: dependent TABLE has changed
+drop view v2;
+create table v2 as select * from t1;
+execute stmt;
+a
+1
+2
+3
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+1
+2
+3
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table v2;
+create table v2 (a int unique) as select * from t2;
+execute stmt;
+a
+4
+5
+6
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+4
+5
+6
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 18-e: dependent TABLE trigger has changed
+prepare stmt from "insert into v1 (a) values (?)";
+set @var= 7;
+execute stmt using @var;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create trigger v2_bi before insert on v2 for each row set @message="v2_bi";
+set @var=8;
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+v2_bi
+drop trigger v2_bi;
+set @message=null;
+set @var=9;
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+NULL
+create trigger v2_bi after insert on v2 for each row set @message="v2_ai";
+set @var= 10;
+execute stmt using @var;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select @message;
+@message
+v2_ai
+select * from v1;
+a
+4
+5
+6
+7
+8
+9
+10
+# Cleanup
+drop table if exists t1, t2, v1, v2;
+drop view if exists v1, v2;
+drop function f1;
+drop procedure p1;
+deallocate prepare stmt;
+=====================================================================
+Part 19: Special tables (INFORMATION_SCHEMA)
+=====================================================================
+prepare stmt from
+"select ROUTINE_SCHEMA, ROUTINE_NAME, ROUTINE_TYPE
+ from INFORMATION_SCHEMA.ROUTINES where
+ routine_name='p1'";
+create procedure p1() select "hi there";
+execute stmt;
+ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE
+test p1 PROCEDURE
+execute stmt;
+ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE
+test p1 PROCEDURE
+drop procedure p1;
+create procedure p1() select "hi there, again";
+execute stmt;
+ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE
+test p1 PROCEDURE
+execute stmt;
+ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE
+test p1 PROCEDURE
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop procedure p1;
+deallocate prepare stmt;
+=====================================================================
+Part 20: Special tables (log tables)
+=====================================================================
+prepare stmt from
+"select * from mysql.general_log where argument='IMPOSSIBLE QUERY STRING'";
+execute stmt;
+execute stmt;
+execute stmt;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+=====================================================================
+Part 21: Special tables (system tables)
+=====================================================================
+prepare stmt from
+"select type, db, name from mysql.proc where name='p1'";
+create procedure p1() select "hi there";
+execute stmt;
+type db name
+PROCEDURE test p1
+execute stmt;
+type db name
+PROCEDURE test p1
+drop procedure p1;
+create procedure p1() select "hi there, again";
+execute stmt;
+type db name
+PROCEDURE test p1
+execute stmt;
+type db name
+PROCEDURE test p1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop procedure p1;
+deallocate prepare stmt;
+=====================================================================
+Part 22: Special tables (views temp tables)
+=====================================================================
+create table t1 (a int);
+create algorithm=temptable view v1 as select a*a as a2 from t1;
+# Using a temporary table internally should not confuse the prepared
+# statement code, and should not raise ER_PS_INVALIDATED errors
+show create view v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`a` * `t1`.`a`) AS `a2` from `t1` latin1 latin1_swedish_ci
+prepare stmt from "select * from v1";
+insert into t1 values (1), (2), (3);
+execute stmt;
+a2
+1
+4
+9
+execute stmt;
+a2
+1
+4
+9
+insert into t1 values (4), (5), (6);
+execute stmt;
+a2
+1
+4
+9
+16
+25
+36
+execute stmt;
+a2
+1
+4
+9
+16
+25
+36
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+drop view v1;
+=====================================================================
+Part 23: Special statements
+=====================================================================
+# SQLCOM_ALTER_TABLE:
+create table t1 (a int);
+prepare stmt from "alter table t1 add column b int";
+execute stmt;
+drop table t1;
+create table t1 (a1 int, a2 int);
+# t1 has changed, and it's does not lead to reprepare
+execute stmt;
+alter table t1 drop column b;
+execute stmt;
+alter table t1 drop column b;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+# SQLCOM_REPAIR:
+create table t1 (a int);
+insert into t1 values (1), (2), (3);
+prepare stmt from "repair table t1";
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+drop table t1;
+create table t1 (a1 int, a2 int);
+insert into t1 values (1, 10), (2, 20), (3, 30);
+# t1 has changed, and it's does not lead to reprepare
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+alter table t1 add column b varchar(50) default NULL;
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 drop column b;
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# SQLCOM_ANALYZE:
+prepare stmt from "analyze table t1";
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+drop table t1;
+create table t1 (a1 int, a2 int);
+insert into t1 values (1, 10), (2, 20), (3, 30);
+# t1 has changed, and it's not a problem
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+alter table t1 add column b varchar(50) default NULL;
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+alter table t1 drop column b;
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# SQLCOM_OPTIMIZE:
+prepare stmt from "optimize table t1";
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 optimize status Table is already up to date
+drop table t1;
+create table t1 (a1 int, a2 int);
+insert into t1 values (1, 10), (2, 20), (3, 30);
+# t1 has changed, and it's not a problem
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+alter table t1 add column b varchar(50) default NULL;
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+alter table t1 drop column b;
+execute stmt;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+# SQLCOM_SHOW_CREATE_PROC:
+prepare stmt from "show create procedure p1";
+execute stmt;
+ERROR 42000: PROCEDURE p1 does not exist
+execute stmt;
+ERROR 42000: PROCEDURE p1 does not exist
+create procedure p1() begin end;
+execute stmt;
+execute stmt;
+drop procedure p1;
+create procedure p1(x int, y int) begin end;
+execute stmt;
+execute stmt;
+drop procedure p1;
+execute stmt;
+ERROR 42000: PROCEDURE p1 does not exist
+execute stmt;
+ERROR 42000: PROCEDURE p1 does not exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# SQLCOM_SHOW_CREATE_FUNC:
+prepare stmt from "show create function f1";
+execute stmt;
+ERROR 42000: FUNCTION f1 does not exist
+execute stmt;
+ERROR 42000: FUNCTION f1 does not exist
+create function f1() returns int return 0;
+execute stmt;
+execute stmt;
+drop function f1;
+create function f1(x int, y int) returns int return x+y;
+execute stmt;
+execute stmt;
+drop function f1;
+execute stmt;
+ERROR 42000: FUNCTION f1 does not exist
+execute stmt;
+ERROR 42000: FUNCTION f1 does not exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# SQLCOM_SHOW_CREATE_TRIGGER:
+create table t1 (a int);
+prepare stmt from "show create trigger t1_bi";
+execute stmt;
+ERROR HY000: Trigger does not exist
+execute stmt;
+ERROR HY000: Trigger does not exist
+create trigger t1_bi before insert on t1 for each row set @message= "t1_bi";
+execute stmt;
+execute stmt;
+drop trigger t1_bi;
+create trigger t1_bi before insert on t1 for each row set @message= "t1_bi (2)";
+execute stmt;
+execute stmt;
+drop trigger t1_bi;
+execute stmt;
+ERROR HY000: Trigger does not exist
+execute stmt;
+ERROR HY000: Trigger does not exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+deallocate prepare stmt;
+=====================================================================
+Part 24: Testing the strength of TABLE_SHARE version
+=====================================================================
+# Test 24-a: number of columns
+create table t1 (a int);
+prepare stmt from "select a from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 add column b varchar(50) default NULL;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-b: column name
+alter table t1 change b c int;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-c: column type
+alter table t1 change a a varchar(10);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-d: column type length
+alter table t1 change a a varchar(20);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-e: column NULL property
+alter table t1 change a a varchar(20) NOT NULL;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-f: column DEFAULT
+alter table t1 change c c int DEFAULT 20;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-g: number of keys
+create unique index t1_a_idx on t1 (a);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Test 24-h: changing index uniqueness
+drop index t1_a_idx on t1;
+create index t1_a_idx on t1 (a);
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# Cleanup
+drop table t1;
+deallocate prepare stmt;
+=====================================================================
+Testing reported bugs
+=====================================================================
+#
+# Bug#27420 A combination of PS and view operations cause
+# error + assertion on shutdown
+#
+drop table if exists t_27420_100;
+drop table if exists t_27420_101;
+drop view if exists v_27420;
+create table t_27420_100(a int);
+insert into t_27420_100 values (1), (2);
+create table t_27420_101(a int);
+insert into t_27420_101 values (1), (2);
+create view v_27420 as select t_27420_100.a X, t_27420_101.a Y
+from t_27420_100, t_27420_101
+where t_27420_100.a=t_27420_101.a;
+prepare stmt from "select * from v_27420";
+execute stmt;
+X Y
+1 1
+2 2
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop view v_27420;
+create table v_27420(X int, Y int);
+execute stmt;
+X Y
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table v_27420;
+create table v_27420 (a int, b int, filler char(200));
+execute stmt;
+a b filler
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table t_27420_100;
+drop table t_27420_101;
+drop table v_27420;
+deallocate prepare stmt;
+#
+# Bug#27430 Crash in subquery code when in PS and table DDL changed
+# after PREPARE
+#
+drop table if exists t_27430_1;
+drop table if exists t_27430_2;
+create table t_27430_1 (a int not null, oref int not null, key(a));
+insert into t_27430_1 values
+(1, 1),
+(1, 1234),
+(2, 3),
+(2, 1234),
+(3, 1234);
+create table t_27430_2 (a int not null, oref int not null);
+insert into t_27430_2 values
+(1, 1),
+(2, 2),
+(1234, 3),
+(1234, 4);
+prepare stmt from
+"select oref, a, a in (select a from t_27430_1 where oref=t_27430_2.oref) Z from t_27430_2";
+execute stmt;
+oref a Z
+1 1 1
+2 2 0
+3 1234 0
+4 1234 0
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t_27430_1, t_27430_2;
+create table t_27430_1 (a int, oref int, key(a));
+insert into t_27430_1 values
+(1, 1),
+(1, NULL),
+(2, 3),
+(2, NULL),
+(3, NULL);
+create table t_27430_2 (a int, oref int);
+insert into t_27430_2 values
+(1, 1),
+(2,2),
+(NULL, 3),
+(NULL, 4);
+execute stmt;
+oref a Z
+1 1 1
+2 2 0
+3 NULL NULL
+4 NULL 0
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table t_27430_1;
+drop table t_27430_2;
+deallocate prepare stmt;
+#
+# Bug#27690 Re-execution of prepared statement after table
+# was replaced with a view crashes
+#
+drop table if exists t_27690_1;
+drop view if exists v_27690_1;
+drop table if exists v_27690_2;
+create table t_27690_1 (a int, b int);
+insert into t_27690_1 values (1,1),(2,2);
+create table v_27690_1 as select * from t_27690_1;
+create table v_27690_2 as select * from t_27690_1;
+prepare stmt from "select * from v_27690_1, v_27690_2";
+execute stmt;
+a b a b
+1 1 1 1
+2 2 1 1
+1 1 2 2
+2 2 2 2
+execute stmt;
+a b a b
+1 1 1 1
+2 2 1 1
+1 1 2 2
+2 2 2 2
+drop table v_27690_1;
+execute stmt;
+ERROR 42S02: Table 'test.v_27690_1' doesn't exist
+execute stmt;
+ERROR 42S02: Table 'test.v_27690_1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create view v_27690_1 as select A.a, A.b from t_27690_1 A, t_27690_1 B;
+execute stmt;
+a b a b
+1 1 1 1
+2 2 1 1
+1 1 1 1
+2 2 1 1
+1 1 2 2
+2 2 2 2
+1 1 2 2
+2 2 2 2
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a b a b
+1 1 1 1
+2 2 1 1
+1 1 1 1
+2 2 1 1
+1 1 2 2
+2 2 2 2
+1 1 2 2
+2 2 2 2
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t_27690_1;
+drop view v_27690_1;
+drop table v_27690_2;
+deallocate prepare stmt;
+#=====================================================================
+#
+# Bug#21294 Executing a prepared statement that executes
+# a stored function which was recreat
+#
+create function f1() returns int return 10;
+prepare stmt from "select f1()";
+execute stmt;
+f1()
+10
+drop function f1;
+create function f1() returns int return 10;
+execute stmt;
+f1()
+10
+drop function f1;
+create function f1() returns int return 20;
+execute stmt;
+f1()
+20
+call p_verify_reprepare_count(2);
+SUCCESS
+
+drop function f1;
+deallocate prepare stmt;
+#
+# Bug#12093 SP not found on second PS execution if another thread drops
+# other SP in between
+#
+drop table if exists t_12093;
+drop function if exists f_12093;
+drop function if exists f_12093_unrelated;
+drop procedure if exists p_12093;
+drop view if exists v_12093_unrelated;
+create table t_12093 (a int);
+create function f_12093() returns int return (select count(*) from t_12093);
+create procedure p_12093(a int) select * from t_12093;
+create function f_12093_unrelated() returns int return 2;
+create procedure p_12093_unrelated() begin end;
+create view v_12093_unrelated as select * from t_12093;
+prepare stmt_sf from 'select f_12093();';
+prepare stmt_sp from 'call p_12093(f_12093())';
+execute stmt_sf;
+f_12093()
+0
+execute stmt_sp;
+a
+drop function f_12093_unrelated;
+# XXX: used to be a bug
+execute stmt_sf;
+f_12093()
+0
+# XXX: used to be a bug
+execute stmt_sp;
+a
+# XXX: used to be a bug
+execute stmt_sf;
+f_12093()
+0
+# XXX: used to be a bug
+execute stmt_sp;
+a
+prepare stmt_sf from 'select f_12093();';
+prepare stmt_sp from 'call p_12093(f_12093())';
+execute stmt_sf;
+f_12093()
+0
+execute stmt_sp;
+a
+drop procedure p_12093_unrelated;
+# XXX: used to be a bug
+execute stmt_sf;
+f_12093()
+0
+# XXX: used to be a bug
+execute stmt_sp;
+a
+# XXX: used to be a bug
+execute stmt_sf;
+f_12093()
+0
+# XXX: used to be a bug
+execute stmt_sp;
+a
+prepare stmt_sf from 'select f_12093();';
+prepare stmt_sp from 'call p_12093(f_12093())';
+execute stmt_sf;
+f_12093()
+0
+execute stmt_sp;
+a
+drop view v_12093_unrelated;
+# XXX: used to be a bug
+execute stmt_sf;
+f_12093()
+0
+# XXX: used to be a bug
+execute stmt_sp;
+a
+# XXX: used to be a bug
+execute stmt_sf;
+f_12093()
+0
+# XXX: used to be a bug
+execute stmt_sp;
+a
+call p_verify_reprepare_count(6);
+SUCCESS
+
+drop table t_12093;
+drop function f_12093;
+drop procedure p_12093;
+deallocate prepare stmt_sf;
+deallocate prepare stmt_sp;
+=====================================================================
+Ensure that metadata validation is performed for every type of
+SQL statement where it is needed.
+=====================================================================
+#
+# SQLCOM_SELECT
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "select 1 as res from dual where (1) in (select * from t1)";
+drop table t1;
+create table t1 (x int);
+execute stmt;
+res
+drop table t1;
+deallocate prepare stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+#
+# SQLCOM_CREATE_TABLE
+#
+drop table if exists t1;
+drop table if exists t2;
+create table t1 (a int);
+prepare stmt from 'create table t2 as select * from t1';
+execute stmt;
+drop table t2;
+execute stmt;
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+ERROR 42S01: Table 't2' already exists
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+ERROR 42S01: Table 't2' already exists
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+create temporary table t2 (a int);
+execute stmt;
+ERROR 42S01: Table 't2' already exists
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+ERROR 42S01: Table 't2' already exists
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t2;
+execute stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+create view t2 as select 1;
+execute stmt;
+Got one of the listed errors
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+Got one of the listed errors
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop view t2;
+drop table t1;
+create table t1 (x varchar(20));
+execute stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t2;
+x
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+alter table t1 add column y decimal(10,3);
+execute stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t2;
+x y
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+deallocate prepare stmt;
+# XXX: no validation of the first table in case of
+# CREATE TEMPORARY TABLE. This is a shortcoming of the current code,
+# but since validation is not strictly necessary, nothing is done
+# about it.
+# Will be fixed as part of work on Bug#21431 "Incomplete support of
+# temporary tables"
+create table t1 (a int);
+insert into t1 (a) values (1);
+prepare stmt from "create temporary table if not exists t2 as select * from t1";
+execute stmt;
+drop table t2;
+execute stmt;
+execute stmt;
+Warnings:
+Note 1050 Table 't2' already exists
+select * from t2;
+a
+1
+1
+execute stmt;
+Warnings:
+Note 1050 Table 't2' already exists
+select * from t2;
+a
+1
+1
+1
+drop table t2;
+create temporary table t2 (a varchar(10));
+execute stmt;
+Warnings:
+Note 1050 Table 't2' already exists
+select * from t2;
+a
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Warnings:
+Note 1050 Table 't2' already exists
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+Warnings:
+Note 1050 Table 't2' already exists
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+drop temporary table t2;
+drop table t2;
+deallocate prepare stmt;
+create table t1 (a int);
+prepare stmt from "create table t2 like t1";
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+drop table t1;
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create table t1 (x char(17));
+execute stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+alter table t1 add column y time;
+execute stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+select * from t2;
+x y
+drop table t2;
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+drop table t2;
+deallocate prepare stmt;
+#
+# SQLCOM_UPDATE
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+prepare stmt from "update t2 set a=a+1 where (1) in (select * from t1)";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2;
+deallocate prepare stmt;
+#
+# SQLCOM_INSERT
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+prepare stmt from "insert into t2 set a=((1) in (select * from t1))";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2;
+deallocate prepare stmt;
+#
+# SQLCOM_INSERT_SELECT
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+prepare stmt from "insert into t2 select * from t1";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2;
+deallocate prepare stmt;
+#
+# SQLCOM_REPLACE
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+prepare stmt from "replace t2 set a=((1) in (select * from t1))";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2;
+deallocate prepare stmt;
+#
+# SQLCOM_REPLACE_SELECT
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+prepare stmt from "replace t2 select * from t1";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2;
+deallocate prepare stmt;
+#
+# SQLCOM_DELETE
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+prepare stmt from "delete from t2 where (1) in (select * from t1)";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2;
+deallocate prepare stmt;
+#
+# SQLCOM_DELETE_MULTI
+#
+drop table if exists t1, t2, t3;
+create table t1 (a int);
+create table t2 (a int);
+create table t3 (a int);
+prepare stmt from "delete t2, t3 from t2, t3 where (1) in (select * from t1)";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2, t3;
+deallocate prepare stmt;
+#
+# SQLCOM_UPDATE_MULTI
+#
+drop table if exists t1, t2, t3;
+create table t1 (a int);
+create table t2 (a int);
+create table t3 (a int);
+prepare stmt from "update t2, t3 set t3.a=t2.a, t2.a=null where (1) in (select * from t1)";
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1, t2, t3;
+deallocate prepare stmt;
+# Intermediate results: 8 SQLCOMs tested, 8 automatic reprepares
+call p_verify_reprepare_count(8);
+SUCCESS
+
+#
+# SQLCOM_LOAD
+#
+drop table if exists t1;
+create table t1 (a varchar(20));
+prepare stmt from "load data infile '../std_data_ln/words.dat' into table t1";
+ERROR HY000: This command is not supported in the prepared statement protocol yet
+drop table t1;
+#
+# SQLCOM_SHOW_DATABASES
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show databases where (1) in (select * from t1)";
+execute stmt;
+Database
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Database
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_TABLES
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show tables where (1) in (select * from t1)";
+execute stmt;
+Tables_in_test
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Tables_in_test
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_FIELDS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show fields from t1 where (1) in (select * from t1)";
+execute stmt;
+Field Type Null Key Default Extra
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Field Type Null Key Default Extra
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_KEYS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show keys from t1 where (1) in (select * from t1)";
+execute stmt;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_VARIABLES
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show variables where (1) in (select * from t1)";
+execute stmt;
+Variable_name Value
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Variable_name Value
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_STATUS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show status where (1) in (select * from t1)";
+execute stmt;
+Variable_name Value
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Variable_name Value
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_ENGINE_STATUS, SQLCOM_SHOW_ENGINE_LOGS,
+# SQLCOM_SHOW_ENGINE_MUTEX, SQLCOM_SHOW_PROCESSLIST
+#
+# Currently can not have a where clause, need to be covered
+# with tests
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show engine all status where (1) in (select * from t1)";
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where (1) in (select * from t1)' at line 1
+prepare stmt from "show engine all logs where (1) in (select * from t1)";
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where (1) in (select * from t1)' at line 1
+prepare stmt from "show engine all mutex where (1) in (select * from t1)";
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where (1) in (select * from t1)' at line 1
+prepare stmt from "show processlist where (1) in (select * from t1)";
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where (1) in (select * from t1)' at line 1
+drop table t1;
+#
+# SQLCOM_SHOW_CHARSETS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show charset where (1) in (select * from t1)";
+execute stmt;
+Charset Description Default collation Maxlen
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Charset Description Default collation Maxlen
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_COLLATIONS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show collation where (1) in (select * from t1)";
+execute stmt;
+Collation Charset Id Default Compiled Sortlen
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Collation Charset Id Default Compiled Sortlen
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_TABLE_STATUS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show table status where (1) in (select * from t1)";
+execute stmt;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_TRIGGERS
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show triggers where (1) in (select * from t1)";
+execute stmt;
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_OPEN_TABLES
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show open tables where (1) in (select * from t1)";
+execute stmt;
+Database Table In_use Name_locked
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Database Table In_use Name_locked
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_STATUS_PROC
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show procedure status where (1) in (select * from t1)";
+execute stmt;
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_STATUS_FUNC
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "show function status where (1) in (select * from t1)";
+execute stmt;
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+drop table t1;
+create table t1 (x int);
+execute stmt;
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_SHOW_EVENTS
+#
+#
+# Please see this test in ps.test, it requires not_embedded.inc
+#
+#
+# SQLCOM_SET_OPTION
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "set @a=((1) in (select * from t1))";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_DO
+#
+drop table if exists t1;
+create table t1 (a int);
+prepare stmt from "do ((1) in (select * from t1))";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1;
+deallocate prepare stmt;
+#
+# SQLCOM_CALL
+#
+drop table if exists t1;
+drop procedure if exists p1;
+create procedure p1(a int) begin end;
+create table t1 (a int);
+prepare stmt from "call p1((1) in (select * from t1))";
+execute stmt;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop table t1;
+drop procedure p1;
+deallocate prepare stmt;
+#
+# SQLCOM_CREATE_VIEW
+#
+drop table if exists t1;
+drop view if exists v1;
+create table t1 (a int);
+prepare stmt from "create view v1 as select * from t1";
+execute stmt;
+drop view v1;
+drop table t1;
+create table t1 (x int);
+execute stmt;
+drop view v1;
+drop table t1;
+deallocate prepare stmt;
+# Intermediate result: number of reprepares matches the number
+# of tests
+call p_verify_reprepare_count(17);
+SUCCESS
+
+#
+# SQLCOM_ALTER_VIEW
+#
+drop view if exists v1;
+create view v1 as select 1;
+prepare stmt from "alter view v1 as select 2";
+ERROR HY000: This command is not supported in the prepared statement protocol yet
+drop view v1;
+# Cleanup
+#
+drop temporary table if exists t1, t2, t3;
+drop table if exists t1, t2, t3, v1, v2;
+drop procedure if exists p_verify_reprepare_count;
+drop procedure if exists p1;
+drop function if exists f1;
+drop view if exists v1, v2;
diff --git a/mysql-test/r/ps_ddl1.result b/mysql-test/r/ps_ddl1.result
new file mode 100644
index 00000000000..e41a72ceb96
--- /dev/null
+++ b/mysql-test/r/ps_ddl1.result
@@ -0,0 +1,482 @@
+drop temporary table if exists t1;
+drop table if exists t1, t2;
+drop procedure if exists p_verify_reprepare_count;
+drop procedure if exists p1;
+drop function if exists f1;
+drop view if exists t1;
+drop schema if exists mysqltest;
+create procedure p_verify_reprepare_count(expected int)
+begin
+declare old_reprepare_count int default @reprepare_count;
+select variable_value from
+information_schema.session_status where
+variable_name='com_stmt_reprepare'
+ into @reprepare_count;
+if old_reprepare_count + expected <> @reprepare_count then
+select concat("Expected: ", expected,
+", actual: ", @reprepare_count - old_reprepare_count)
+as "ERROR";
+else
+select '' as "SUCCESS";
+end if;
+end|
+set @reprepare_count= 0;
+flush status;
+drop table if exists t1;
+# Column added or dropped is not within the list of selected columns
+# or table comment has changed.
+# A reprepare is probably not needed.
+create table t1 (a int, b int);
+prepare stmt from "select a from t1";
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 add column c int;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 drop column b;
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 comment "My best table";
+execute stmt;
+a
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+a
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+deallocate prepare stmt;
+# Selects using the table at various positions, inser,update ...
+# + the table disappears
+create table t1 (a int);
+prepare stmt1 from "truncate t1";
+prepare stmt2 from "select 1 as my_column from t1";
+prepare stmt3 from "select 1 as my_column from (select * from t1) as t2";
+prepare stmt4 from
+"select 1 as my_column from (select 1) as t2 where exists (select 1 from t1)";
+prepare stmt5 from "select * from (select 1 as b) as t2, t1";
+prepare stmt6 from "select * from t1 union all select 1.5";
+prepare stmt7 from "select 1 as my_column union all select 1 from t1";
+prepare stmt8 from "insert into t1 values(1),(2)";
+prepare stmt9 from "update t1 set a = 3 where a = 2";
+prepare stmt10 from "delete from t1 where a = 1";
+# Attention: Result logging is disabled.
+execute stmt10;
+execute stmt9;
+execute stmt8;
+execute stmt7;
+execute stmt6;
+execute stmt5;
+execute stmt4;
+execute stmt3;
+execute stmt2;
+execute stmt1;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+execute stmt10;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt9;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt8;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt7;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt6;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt5;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt4;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt3;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt2;
+ERROR 42S02: Table 'test.t1' doesn't exist
+execute stmt1;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt10;
+deallocate prepare stmt9;
+deallocate prepare stmt8;
+deallocate prepare stmt7;
+deallocate prepare stmt6;
+deallocate prepare stmt5;
+deallocate prepare stmt4;
+deallocate prepare stmt3;
+deallocate prepare stmt2;
+deallocate prepare stmt1;
+# Selects using the table at various positions, inser,update ...
+# + layout change (drop column) which must cause a reprepare
+create table t1 (a int, b int);
+insert into t1 values(1,1),(2,2),(3,3);
+create table t2 like t1;
+insert into t1 values(2,2);
+prepare stmt1 from "select a,b from t1";
+prepare stmt2 from "select a,b from (select * from t1) as t1";
+prepare stmt3 from "select * from t1 where a = 2 and b = 2";
+prepare stmt4 from "select * from t2 where (a,b) in (select * from t1)";
+prepare stmt5 from "select * from t1 union select * from t2";
+prepare stmt6 from "select * from t1 union all select * from t2";
+prepare stmt7 from "insert into t1 set a = 4, b = 4";
+prepare stmt8 from "insert into t1 select * from t2";
+# Attention: Result logging is disabled.
+execute stmt8;
+execute stmt7;
+execute stmt6;
+execute stmt5;
+execute stmt4;
+execute stmt3;
+execute stmt2;
+execute stmt1;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 drop column b;
+execute stmt8;
+ERROR 21S01: Column count doesn't match value count at row 1
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt7;
+ERROR 42S22: Unknown column 'b' in 'field list'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt6;
+ERROR 21000: The used SELECT statements have a different number of columns
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt5;
+ERROR 21000: The used SELECT statements have a different number of columns
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt4;
+ERROR 21000: Operand should contain 2 column(s)
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt3;
+ERROR 42S22: Unknown column 'b' in 'where clause'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt2;
+ERROR 42S22: Unknown column 'b' in 'field list'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt1;
+ERROR 42S22: Unknown column 'b' in 'field list'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt8;
+ERROR 21S01: Column count doesn't match value count at row 1
+call p_verify_reprepare_count(1);
+ERROR
+Expected: 1, actual: 0
+execute stmt7;
+ERROR 42S22: Unknown column 'b' in 'field list'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt6;
+ERROR 21000: The used SELECT statements have a different number of columns
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt5;
+ERROR 21000: The used SELECT statements have a different number of columns
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt4;
+ERROR 21000: Operand should contain 2 column(s)
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt3;
+ERROR 42S22: Unknown column 'b' in 'where clause'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt2;
+ERROR 42S22: Unknown column 'b' in 'field list'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt1;
+ERROR 42S22: Unknown column 'b' in 'field list'
+call p_verify_reprepare_count(1);
+SUCCESS
+
+# Why does the INSERT ... SELECT does not get a reprepare or is
+# only the counter not incremented?
+execute stmt8;
+ERROR 21S01: Column count doesn't match value count at row 1
+call p_verify_reprepare_count(1);
+ERROR
+Expected: 1, actual: 0
+alter table t2 add column c int;
+execute stmt8;
+ERROR 21S01: Column count doesn't match value count at row 1
+call p_verify_reprepare_count(1);
+SUCCESS
+
+deallocate prepare stmt8;
+deallocate prepare stmt7;
+deallocate prepare stmt6;
+deallocate prepare stmt5;
+deallocate prepare stmt4;
+deallocate prepare stmt3;
+deallocate prepare stmt2;
+deallocate prepare stmt1;
+drop table t1;
+drop table t2;
+# select AVG(<col>) + optimizer uses index meets loss of the index
+create table t1 (a int, b int, primary key(b),unique index t1_unq_idx(a));
+insert into t1 set a = 0, b = 0;
+insert into t1 select a + 1, b + 1 from t1;
+insert into t1 select a + 2, b + 2 from t1;
+insert into t1 select a + 4, b + 4 from t1;
+insert into t1 select a + 8, b + 8 from t1;
+# Optimizer strategy: Possible keys = NULL , Extra = Using index
+prepare stmt from "select avg(a) from t1";
+execute stmt;
+avg(a)
+7.5000
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+avg(a)
+7.5000
+call p_verify_reprepare_count(0);
+SUCCESS
+
+alter table t1 drop index t1_unq_idx;
+# Optimizer strategy: Possible keys = NULL , Extra =
+execute stmt;
+avg(a)
+7.5000
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+avg(a)
+7.5000
+call p_verify_reprepare_count(0);
+SUCCESS
+
+# select AVG(<col>) + optimizer uses table scan meets a new index
+alter table t1 add unique index t1_unq_idx(a);
+# Optimizer strategy: Possible keys = NULL , Extra = Using index
+execute stmt;
+avg(a)
+7.5000
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+avg(a)
+7.5000
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+drop table t1;
+# table replaced by not updatable view - Insert
+create table t1 (a int);
+prepare stmt from "insert into t1 values(1)";
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t1;
+create view t1 as select 1;
+execute stmt;
+ERROR HY000: The target table t1 of the INSERT is not insertable-into
+call p_verify_reprepare_count(1);
+SUCCESS
+
+drop view t1;
+create table t2 (a int);
+create view t1 as select * from t2 with check option;
+execute stmt;
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+1
+deallocate prepare stmt;
+drop view t1;
+drop table t2;
+=====================================================================
+Some freestyle tests
+=====================================================================
+create temporary table t1 as select 1 as a;
+create procedure p1()
+begin
+drop temporary table t1;
+end|
+create function f1() returns int
+begin
+call p1();
+return 1;
+end|
+prepare stmt from "select f1() as my_column, a from t1";
+execute stmt;
+ERROR HY000: Can't reopen table: 't1'
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+prepare stmt from "select a, f1() as my_column from t1";
+execute stmt;
+ERROR HY000: Can't reopen table: 't1'
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+prepare stmt from "select f1() as my_column, count(*) from t1";
+execute stmt;
+ERROR HY000: Can't reopen table: 't1'
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+prepare stmt from "select count(*), f1() as my_column from t1";
+execute stmt;
+ERROR HY000: Can't reopen table: 't1'
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+# Execute fails, no drop of temporary table
+prepare stmt from "select 1 as my_column from (select 1) as t2
+ where exists (select f1() from t1)";
+execute stmt;
+my_column
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+my_column
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+# Execute drops temporary table
+prepare stmt from "select f1()";
+execute stmt;
+f1()
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+execute stmt;
+ERROR 42S02: Unknown table 't1'
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop function f1;
+drop procedure p1;
+deallocate prepare stmt;
+# Execute fails, temporary table is not replaced by another
+create temporary table t1 as select 1 as a;
+create procedure p1()
+begin
+drop temporary table t1;
+create temporary table t1 as select 'abc' as a;
+end|
+create function f1() returns int
+begin
+call p1();
+return 1;
+end|
+prepare stmt from "select count(*), f1() as my_column from t1";
+execute stmt;
+ERROR HY000: Can't reopen table: 't1'
+call p_verify_reprepare_count(0);
+SUCCESS
+
+select * from t1;
+a
+1
+deallocate prepare stmt;
+prepare stmt from "call p1";
+execute stmt;
+drop procedure p1;
+create schema mysqltest;
+create procedure mysqltest.p1()
+begin
+drop schema mysqltest;
+create schema mysqltest;
+end|
+execute stmt;
+ERROR 42000: PROCEDURE test.p1 does not exist
+call p_verify_reprepare_count(1);
+SUCCESS
+
+execute stmt;
+ERROR 42000: PROCEDURE test.p1 does not exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+deallocate prepare stmt;
+drop schema mysqltest;
+drop temporary table t1;
+# Cleanup
+#
+drop temporary table if exists t1;
+drop table if exists t1, t2;
+drop procedure if exists p_verify_reprepare_count;
+drop procedure if exists p1;
+drop function if exists f1;
+drop view if exists t1;
+drop schema if exists mysqltest;
diff --git a/mysql-test/r/ps_grant.result b/mysql-test/r/ps_grant.result
index fdc1f97bb4c..8b16123ccea 100644
--- a/mysql-test/r/ps_grant.result
+++ b/mysql-test/r/ps_grant.result
@@ -78,13 +78,10 @@ ERROR 42000: There is no such grant defined for user 'second_user' on host 'loca
drop database mysqltest;
prepare stmt3 from ' grant all on test.t1 to drop_user@localhost
identified by ''looser'' ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
grant all on test.t1 to drop_user@localhost
identified by 'looser' ;
prepare stmt3 from ' revoke all privileges on test.t1 from
drop_user@localhost ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
revoke all privileges on test.t1 from drop_user@localhost ;
prepare stmt3 from ' drop user drop_user@localhost ';
-ERROR HY000: This command is not supported in the prepared statement protocol yet
drop user drop_user@localhost;
diff --git a/mysql-test/r/ps_not_windows.result b/mysql-test/r/ps_not_windows.result
new file mode 100644
index 00000000000..e58b6ec5cad
--- /dev/null
+++ b/mysql-test/r/ps_not_windows.result
@@ -0,0 +1,14 @@
+create procedure proc_1() install plugin my_plug soname '/root/some_plugin.so';
+call proc_1();
+ERROR HY000: No paths allowed for shared library
+call proc_1();
+ERROR HY000: No paths allowed for shared library
+call proc_1();
+ERROR HY000: No paths allowed for shared library
+drop procedure proc_1;
+prepare abc from "install plugin my_plug soname '/root/some_plugin.so'";
+execute abc;
+ERROR HY000: No paths allowed for shared library
+execute abc;
+ERROR HY000: No paths allowed for shared library
+deallocate prepare abc;
diff --git a/mysql-test/r/query_cache.result b/mysql-test/r/query_cache.result
index a2b73db77a9..6cabc24d0eb 100644
--- a/mysql-test/r/query_cache.result
+++ b/mysql-test/r/query_cache.result
@@ -3,8 +3,10 @@ flush query cache;
flush query cache;
reset query cache;
flush status;
-drop table if exists t1,t2,t3,t4,t11,t21;
+drop table if exists t1,t2,t3,t4,t11,t21,t1_1,t1_2,t9,t9_1,t9_2;
drop database if exists mysqltest;
+drop table if exists ```a`;
+drop view if exists v1;
create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
@@ -273,8 +275,8 @@ CURRENT_USER()
select benchmark(1,1) from t1;
benchmark(1,1)
explain extended select benchmark(1,1) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select benchmark(1,1) AS `benchmark(1,1)` from `test`.`t1`
show status like "Qcache_queries_in_cache";
@@ -667,7 +669,7 @@ word
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 1
-load data infile 'MYSQLTEST_VARDIR/std_data_ln/words.dat' into table t1;
+load data infile 'MYSQLTEST_VARDIR/std_data/words.dat' into table t1;
show status like "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 0
@@ -1092,6 +1094,7 @@ Qcache_hits 1
drop table t1;
create table t1 (a int);
insert into t1 values (1),(2);
+drop procedure if exists p1;
CREATE PROCEDURE `p1`()
begin
Declare c1 cursor for select a from t1;
@@ -1113,10 +1116,13 @@ create procedure `p1`()
begin
select a, f1() from t1;
end//
+SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
call p1()//
a f1()
1 2
2 2
+SET GLOBAL log_bin_trust_function_creators = @old_log_bin_trust_function_creators;
drop procedure p1//
drop function f1//
drop table t1//
@@ -1296,6 +1302,7 @@ drop procedure f3;
drop procedure f4;
drop table t1;
set GLOBAL query_cache_size=0;
+End of 4.1 tests
SET GLOBAL query_cache_size=102400;
create table t1(a int);
insert into t1 values(0), (1), (4), (5);
@@ -1359,6 +1366,29 @@ start transaction;
insert into t1(c1) select c1 from v1;
drop table t1, t2, t3;
drop view v1;
+create table t1(c1 int);
+insert into t1 values(1),(10),(100);
+select * from t1;
+c1
+1
+10
+100
+select * from t1;
+c1
+1
+10
+100
+select * from t1;
+c1
+1
+10
+100
+select * from t1;
+c1
+1
+10
+100
+drop table t1;
set global query_cache_size=0;
create table t1 (a int);
insert into t1 values (1),(2),(3);
@@ -1437,7 +1467,7 @@ Full-text indexes are called collections 0
Only MyISAM tables support collections 0
Function MATCH ... AGAINST() is used to do a search 0
Full-text search in MySQL implements vector space model 0
-create function change_global() returns integer
+create function change_global() returns integer deterministic
begin
set global ft_boolean_syntax='+ -><()~*:""&|';
return 1;
@@ -1586,75 +1616,20 @@ id
DROP PROCEDURE proc29856;
DROP TABLE t1;
SET GLOBAL query_cache_size= default;
-Bug#28249 Query Cache returns wrong result with concurrent insert/ certain lock
-set GLOBAL query_cache_type=1;
-set GLOBAL query_cache_limit=10000;
-set GLOBAL query_cache_min_res_unit=0;
-set GLOBAL query_cache_size= 100000;
-flush tables;
-drop table if exists t1, t2;
-create table t1 (a int);
-create table t2 (a int);
-insert into t1 values (1),(2),(3);
-Locking table T2 with a write lock.
-lock table t2 write;
-Select blocked by write lock.
-select *, (select count(*) from t2) from t1;;
-Sleeing is ok, because selecting should be done very fast.
-Inserting into table T1.
-insert into t1 values (4);
-Unlocking the tables.
-unlock tables;
-Collecting result from previously blocked select.
-Next select should contain 4 rows, as the insert is long finished.
-select *, (select count(*) from t2) from t1;
-a (select count(*) from t2)
-1 0
-2 0
-3 0
-4 0
-reset query cache;
-select *, (select count(*) from t2) from t1;
-a (select count(*) from t2)
-1 0
-2 0
-3 0
-4 0
-drop table t1,t2;
-DROP DATABASE IF EXISTS bug30269;
-FLUSH STATUS;
-CREATE DATABASE bug30269;
-USE bug30269;
-CREATE TABLE test1 (id int, name varchar(23));
-CREATE VIEW view1 AS SELECT * FROM test1;
-INSERT INTO test1 VALUES (5, 'testit');
-GRANT SELECT (id) ON TABLE bug30269.test1 TO 'bug30269'@'localhost';
-GRANT SELECT ON TABLE bug30269.view1 TO 'bug30269'@'localhost';
-set global query_cache_size= 81920;
-USE bug30269;
-show status like 'Qcache_queries_in_cache';
-Variable_name Value
-Qcache_queries_in_cache 0
-# Select statement not stored in query cache because of column privileges.
-SELECT id FROM test1 WHERE id>2;
-id
-5
-show status like 'Qcache_queries_in_cache';
-Variable_name Value
-Qcache_queries_in_cache 0
-SELECT id FROM view1 WHERE id>2;
-id
-5
-show status like 'Qcache_queries_in_cache';
+#
+# Bug#25132 disabled query cache: Qcache_free_blocks = 1
+#
+set global query_cache_size=100000;
+set global query_cache_size=0;
+set global query_cache_type=0;
+show status like 'Qcache_free_blocks';
Variable_name Value
-Qcache_queries_in_cache 1
-DROP DATABASE bug30269;
-DROP USER 'bug30269'@'localhost';
+Qcache_free_blocks 0
+Restore default values.
set GLOBAL query_cache_type=default;
set GLOBAL query_cache_limit=default;
set GLOBAL query_cache_min_res_unit=default;
set GLOBAL query_cache_size=default;
-use test;
FLUSH STATUS;
SET GLOBAL query_cache_size=10*1024*1024;
SET @save_concurrent_insert= @@concurrent_insert;
@@ -1732,3 +1707,19 @@ Variable_name Value
Qcache_hits 2
DROP TABLE t1;
SET GLOBAL query_cache_size= default;
+End of 5.0 tests
+CREATE TABLE t1 (a ENUM('rainbow'));
+INSERT INTO t1 VALUES (),(),(),(),();
+SELECT 1 FROM t1 GROUP BY (SELECT 1 FROM t1 ORDER BY AVG(LAST_INSERT_ID()));
+1
+1
+DROP TABLE t1;
+CREATE TABLE t1 (a LONGBLOB);
+INSERT INTO t1 SET a = 'aaaa';
+INSERT INTO t1 SET a = 'aaaa';
+SELECT 1 FROM t1 GROUP BY
+(SELECT LAST_INSERT_ID() FROM t1 ORDER BY MIN(a) ASC LIMIT 1);
+1
+1
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/query_cache_28249.result b/mysql-test/r/query_cache_28249.result
new file mode 100644
index 00000000000..aed84911032
--- /dev/null
+++ b/mysql-test/r/query_cache_28249.result
@@ -0,0 +1,62 @@
+SET @query_cache_type= @@global.query_cache_type;
+SET @query_cache_limit= @@global.query_cache_limit;
+SET @query_cache_min_res_unit= @@global.query_cache_min_res_unit;
+SET @query_cache_size= @@global.query_cache_size;
+# Bug#28249 Query Cache returns wrong result with concurrent insert/ certain lock
+# Establish connections user1,user2,user3 (user=root)
+# Switch to connection user1
+SET GLOBAL query_cache_type=1;
+SET GLOBAL query_cache_limit=10000;
+SET GLOBAL query_cache_min_res_unit=0;
+SET GLOBAL query_cache_size= 100000;
+FLUSH TABLES;
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (a INT);
+CREATE TABLE t2 (a INT);
+INSERT INTO t1 VALUES (1),(2),(3);
+# Switch to connection user2
+LOCK TABLE t2 WRITE;
+# Switch to connection user1
+# "send" the next select, "reap" the result later.
+# The select will be blocked by the write lock on the t1.
+SELECT *, (SELECT COUNT(*) FROM t2) FROM t1;
+# Switch to connection user3
+# Poll till the select of connection user1 is blocked by the write lock on t1.
+SELECT user,command,state,info FROM information_schema.processlist
+WHERE state = 'Locked'
+ AND info = 'SELECT *, (SELECT COUNT(*) FROM t2) FROM t1';
+user command state info
+root Query Locked SELECT *, (SELECT COUNT(*) FROM t2) FROM t1
+INSERT INTO t1 VALUES (4);
+# Switch to connection user2
+UNLOCK TABLES;
+# Switch to connection user1
+# Collecting ("reap") the result from the previously blocked select.
+# The printing of the result (varies between 3 and 4 rows) set has to be suppressed.
+# Switch to connection user3
+# The next select enforces that effects of "concurrent_inserts" like the
+# record with a = 4 is missing in result sets can no more happen.
+SELECT 1 FROM t1 WHERE a = 4;
+1
+1
+# Switch to connection user1
+# The next result set must contain 4 rows.
+SELECT *, (SELECT COUNT(*) FROM t2) FROM t1;
+a (SELECT COUNT(*) FROM t2)
+1 0
+2 0
+3 0
+4 0
+RESET QUERY CACHE;
+SELECT *, (SELECT COUNT(*) FROM t2) FROM t1;
+a (SELECT COUNT(*) FROM t2)
+1 0
+2 0
+3 0
+4 0
+DROP TABLE t1,t2;
+# Switch to connection default + close connections user1,user2,user3
+SET GLOBAL query_cache_type= @query_cache_type;
+SET GLOBAL query_cache_limit= @query_cache_limit;
+SET GLOBAL query_cache_min_res_unit= @query_cache_min_res_unit;
+SET GLOBAL query_cache_size= @query_cache_size;
diff --git a/mysql-test/r/query_cache_debug.result b/mysql-test/r/query_cache_debug.result
new file mode 100644
index 00000000000..eb59e62c8ba
--- /dev/null
+++ b/mysql-test/r/query_cache_debug.result
@@ -0,0 +1,181 @@
+flush status;
+set query_cache_type=DEMAND;
+set global query_cache_size= 1024*768;
+drop table if exists t1;
+create table t1 (a varchar(100));
+insert into t1 values ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+Activate debug hook and attempt to retrieve the statement from the cache.
+set session debug='+d,wait_in_query_cache_insert';
+select SQL_CACHE * from t1;;
+On a second connection; clear the query cache.
+show status like 'Qcache_queries_in_cache';
+Variable_name Value
+Qcache_queries_in_cache 1
+set global query_cache_size= 0;
+Signal the debug hook to release the lock.
+select id from information_schema.processlist where state='wait_in_query_cache_insert' into @thread_id;
+kill query @thread_id;
+Show query cache status.
+show status like 'Qcache_queries_in_cache';
+Variable_name Value
+Qcache_queries_in_cache 0
+set global query_cache_size= 0;
+use test;
+drop table t1;
+SET @old_concurrent_insert= @@GLOBAL.concurrent_insert;
+SET @old_query_cache_size= @@GLOBAL.query_cache_size;
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (a INT);
+CREATE TABLE t2 (a INT);
+INSERT INTO t1 VALUES (1),(2),(3);
+SET GLOBAL concurrent_insert= 1;
+SET GLOBAL query_cache_size= 1024*512;
+SET GLOBAL query_cache_type= ON;
+# Switch to connection con1
+SET SESSION debug='+d,wait_after_query_cache_invalidate';
+# Send concurrent insert, will wait in the query cache table invalidate
+INSERT INTO t1 VALUES (4);
+# Switch to connection default
+# Wait for concurrent insert to reach the debug point
+# Switch to connection con2
+# Send SELECT that shouldn't be cached
+SELECT * FROM t1;
+a
+1
+2
+3
+# Switch to connection default
+# Notify the concurrent insert to proceed
+SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE STATE = 'wait_after_query_cache_invalidate' INTO @thread_id;
+KILL QUERY @thread_id;
+# Switch to connection con1
+# Gather insert result
+SHOW STATUS LIKE "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 0
+# Test that it's cacheable
+SELECT * FROM t1;
+a
+1
+2
+3
+4
+SHOW STATUS LIKE "Qcache_queries_in_cache";
+Variable_name Value
+Qcache_queries_in_cache 1
+# Disconnect
+# Restore defaults
+RESET QUERY CACHE;
+DROP TABLE t1,t2;
+SET GLOBAL concurrent_insert= DEFAULT;
+SET GLOBAL query_cache_size= DEFAULT;
+SET GLOBAL query_cache_type= DEFAULT;
+#
+# Bug43758 Query cache can lock up threads in 'freeing items' state
+#
+FLUSH STATUS;
+SET GLOBAL query_cache_type=DEMAND;
+SET GLOBAL query_cache_size= 1024*768;
+DROP TABLE IF EXISTS t1,t2,t3,t4,t5;
+CREATE TABLE t1 (a VARCHAR(100));
+CREATE TABLE t2 (a VARCHAR(100));
+CREATE TABLE t3 (a VARCHAR(100));
+CREATE TABLE t4 (a VARCHAR(100));
+CREATE TABLE t5 (a VARCHAR(100));
+INSERT INTO t1 VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t2 VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t3 VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t4 VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t5 VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'),('bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+=================================== Connection thd1
+**
+** Load Query Cache with a result set and one table.
+**
+SELECT SQL_CACHE * FROM t1;
+a
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+*************************************************************************
+** We want to accomplish the following state:
+** - Query cache status: TABLE_FLUSH_IN_PROGRESS
+** - THD1: invalidate_table_internal (iterating query blocks)
+** - THD2: query_cache_insert (cond_wait)
+** - THD3: query_cache_insert (cond_wait)
+** - No thread should be holding the structure_guard_mutex.
+**
+** First step is to place a DELETE-statement on the debug hook just
+** before the mutex lock in invalidate_table_internal.
+** This will allow new result sets to be written into the QC.
+**
+SET SESSION debug='+d,wait_in_query_cache_invalidate1';
+SET SESSION debug='+d,wait_in_query_cache_invalidate2';
+DELETE FROM t1 WHERE a like '%a%';;
+=================================== Connection default
+** Assert that the expect process status is obtained.
+**
+=================================== Connection thd2
+** On THD2: Insert a result into the cache. This attempt will be blocked
+** because of a debug hook placed just before the mutex lock after which
+** the first part of the result set is written.
+SET SESSION debug='+d,wait_in_query_cache_insert';
+SELECT SQL_CACHE * FROM t2 UNION SELECT * FROM t3;
+=================================== Connection thd3
+** On THD3: Insert another result into the cache and block on the same
+** debug hook.
+SET SESSION debug='+d,wait_in_query_cache_insert';
+SELECT SQL_CACHE * FROM t4 UNION SELECT * FROM t5;;
+=================================== Connection default
+** Assert that the two SELECT-stmt threads to reach the hook.
+**
+**
+** Signal the DELETE thread, THD1, to continue. It will enter the mutex
+** lock and set query cache status to TABLE_FLUSH_IN_PROGRESS and then
+** unlock the mutex before stopping on the next debug hook.
+SELECT SQL_NO_CACHE id FROM information_schema.processlist WHERE state='wait_in_query_cache_invalidate1' LIMIT 1 INTO @flush_thread_id;
+KILL QUERY @flush_thread_id;
+** Assert that we reach the next debug hook.
+**
+** Signal the remaining debug hooks blocking THD2 and THD3.
+** The threads will grab the guard mutex enter the wait condition and
+** and finally release the mutex. The threads will continue to wait
+** until a broadcast signal reaches them causing both threads to
+** come alive and check the condition.
+SELECT SQL_NO_CACHE id FROM information_schema.processlist WHERE state='wait_in_query_cache_insert' ORDER BY id ASC LIMIT 1 INTO @thread_id;
+KILL QUERY @thread_id;
+SELECT SQL_NO_CACHE id FROM information_schema.processlist WHERE state='wait_in_query_cache_insert' ORDER BY id DESC LIMIT 1 INTO @thread_id;
+KILL QUERY @thread_id;
+**
+** Finally signal the DELETE statement on THD1 one last time.
+** The stmt will complete the query cache invalidation and return
+** cache status to NO_FLUSH_IN_PROGRESS. On the status change
+** One signal will be sent to the thread group waiting for executing
+** invalidations and a broadcast signal will be sent to the thread
+** group holding result set writers.
+SELECT SQL_NO_CACHE id FROM information_schema.processlist WHERE state='wait_in_query_cache_invalidate2' LIMIT 1 INTO @flush_thread_id;
+KILL QUERY @flush_thread_id;
+**
+*************************************************************************
+** No tables should be locked
+=================================== Connection thd2
+a
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+DELETE FROM t1;
+DELETE FROM t2;
+DELETE FROM t3;
+=================================== Connection thd3
+a
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+DELETE FROM t4;
+DELETE FROM t5;
+=================================== Connection thd1
+** Done.
+SET GLOBAL query_cache_size= 0;
+# Restore defaults
+RESET QUERY CACHE;
+FLUSH STATUS;
+DROP TABLE t1,t2,t3,t4,t5;
+SET GLOBAL query_cache_size= DEFAULT;
+SET GLOBAL query_cache_type= DEFAULT;
diff --git a/mysql-test/r/query_cache_merge.result b/mysql-test/r/query_cache_merge.result
index f47d3b35119..c324df65f77 100644
--- a/mysql-test/r/query_cache_merge.result
+++ b/mysql-test/r/query_cache_merge.result
@@ -18,6 +18,9 @@ Variable_name Value
Qcache_queries_in_cache 0
drop table t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256,t257,t00;
SET @@global.query_cache_size=0;
+set @@global.table_definition_cache=@save_table_definition_cache;
+SET @save_table_definition_cache = @@global.table_definition_cache;
+SET @@global.table_definition_cache = 512;
CREATE TABLE t255 (a INT);
INSERT INTO t255 VALUES (255);
CREATE TABLE t254 (a INT);
@@ -537,7 +540,6 @@ a
SHOW STATUS LIKE "Qcache_queries_in_cache";
Variable_name Value
Qcache_queries_in_cache 1
-FLUSH TABLES;
TRUNCATE TABLE t255;
SELECT a FROM t1;
a
@@ -1689,4 +1691,5 @@ DROP TABLE t3;
DROP TABLE t2;
DROP TABLE t1;
SET @@global.query_cache_size = 0;
+SET @@global.table_definition_cache = @save_table_definition_cache;
End of 5.1 tests
diff --git a/mysql-test/r/query_cache_notembedded.result b/mysql-test/r/query_cache_notembedded.result
index 8e5df012cfb..d9bf7a6d814 100644
--- a/mysql-test/r/query_cache_notembedded.result
+++ b/mysql-test/r/query_cache_notembedded.result
@@ -314,6 +314,8 @@ drop procedure f2;
drop procedure f3;
drop procedure f4;
drop table t1;
+SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
reset query cache;
drop function if exists f1;
create table t1 (id int);
@@ -345,3 +347,38 @@ id
drop table t1;
drop function f1;
set GLOBAL query_cache_size=0;
+SET @@global.log_bin_trust_function_creators = @old_log_bin_trust_function_creators;
+DROP DATABASE IF EXISTS bug30269;
+FLUSH STATUS;
+CREATE DATABASE bug30269;
+USE bug30269;
+CREATE TABLE test1 (id int, name varchar(23));
+CREATE VIEW view1 AS SELECT * FROM test1;
+INSERT INTO test1 VALUES (5, 'testit');
+GRANT SELECT (id) ON TABLE bug30269.test1 TO 'bug30269'@'localhost';
+GRANT SELECT ON TABLE bug30269.view1 TO 'bug30269'@'localhost';
+set global query_cache_size= 81920;
+USE bug30269;
+show status like 'Qcache_queries_in_cache';
+Variable_name Value
+Qcache_queries_in_cache 0
+# Select statement not stored in query cache because of column privileges.
+SELECT id FROM test1 WHERE id>2;
+id
+5
+show status like 'Qcache_queries_in_cache';
+Variable_name Value
+Qcache_queries_in_cache 0
+SELECT id FROM view1 WHERE id>2;
+id
+5
+show status like 'Qcache_queries_in_cache';
+Variable_name Value
+Qcache_queries_in_cache 1
+USE test;
+DROP DATABASE bug30269;
+DROP USER 'bug30269'@'localhost';
+set GLOBAL query_cache_type=default;
+set GLOBAL query_cache_limit=default;
+set GLOBAL query_cache_min_res_unit=default;
+set GLOBAL query_cache_size=default;
diff --git a/mysql-test/r/query_cache_ps_no_prot.result b/mysql-test/r/query_cache_ps_no_prot.result
new file mode 100644
index 00000000000..0efb2540c64
--- /dev/null
+++ b/mysql-test/r/query_cache_ps_no_prot.result
@@ -0,0 +1,533 @@
+---- establish connection con1 (root) ----
+---- switch to connection default ----
+set @initial_query_cache_size = @@global.query_cache_size;
+set @@global.query_cache_size=100000;
+flush status;
+drop table if exists t1;
+create table t1(c1 int);
+insert into t1 values(1),(10),(100);
+prepare stmt1 from "select * from t1 where c1=10";
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 0
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 0
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 1
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 2
+prepare stmt2 from "select * from t1 where c1=10";
+execute stmt2;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 3
+execute stmt2;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 4
+execute stmt2;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 5
+---- switch to connection con1 ----
+prepare stmt3 from "select * from t1 where c1=10";
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 6
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 7
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 8
+---- switch to connection default ----
+prepare stmt10 from "SELECT * FROM t1 WHERE c1 = 100";
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 8
+execute stmt10;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 8
+execute stmt10;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 9
+SELECT * FROM t1 WHERE c1 = 100;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 10
+---- switch to connection con1 ----
+SELECT * FROM t1 WHERE c1 = 100;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 11
+---- switch to connection default ----
+prepare stmt11 from "SELECT * FROM t1 WHERE c1 = 1";
+---- switch to connection con1 ----
+prepare stmt12 from "SELECT * FROM t1 WHERE c1 = 1";
+---- switch to connection default ----
+SELECT * FROM t1 WHERE c1 = 1;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 11
+SELECT * FROM t1 WHERE c1 = 1;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 12
+execute stmt11;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 13
+---- switch to connection con1 ----
+execute stmt12;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+---- switch to connection default ----
+prepare stmt1 from "select * from t1 where c1=?";
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+set @a=1;
+execute stmt1 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt1 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 15
+---- switch to connection con1 ----
+set @a=1;
+prepare stmt4 from "select * from t1 where c1=?";
+execute stmt4 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+prepare stmt4 from "select @a from t1 where c1=?";
+execute stmt4 using @a;
+@a
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt4 using @a;
+@a
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+---- switch to connection default ----
+prepare stmt1 from "select * from t1 where c1=10";
+set global query_cache_size=0;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+---- switch to connection con1 ----
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+---- switch to connection default ----
+set global query_cache_size=100000;
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 17
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 18
+---- switch to connection con1 ----
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 20
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+---- switch to connection default ----
+set global query_cache_size=0;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+---- switch to connection con1 ----
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+---- switch to connection default ----
+set global query_cache_size=0;
+prepare stmt1 from "select * from t1 where c1=10";
+---- switch to connection con1 ----
+prepare stmt3 from "select * from t1 where c1=10";
+---- switch to connection default ----
+set global query_cache_size=100000;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+---- switch to connection con1 ----
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+---- switch to connection default ----
+set global query_cache_size=0;
+prepare stmt1 from "select * from t1 where c1=?";
+set global query_cache_size=100000;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+set @a=1;
+execute stmt1 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+set @a=100;
+execute stmt1 using @a;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+set @a=10;
+execute stmt1 using @a;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 21
+drop table t1;
+---- disconnect connection con1 ----
+########################################################################
+#
+# BUG#25843: Changing default database between PREPARE and EXECUTE of
+# statement breaks binlog.
+#
+########################################################################
+
+#
+# Check that default database and its attributes are fixed at the
+# creation time.
+#
+
+DROP DATABASE IF EXISTS mysqltest1;
+DROP DATABASE IF EXISTS mysqltest2;
+
+CREATE DATABASE mysqltest1 COLLATE utf8_unicode_ci;
+CREATE DATABASE mysqltest2 COLLATE utf8_general_ci;
+
+CREATE TABLE mysqltest1.t1(msg VARCHAR(255));
+CREATE TABLE mysqltest2.t1(msg VARCHAR(255));
+
+use mysqltest1;
+PREPARE stmt_a_1 FROM 'INSERT INTO t1 VALUES(DATABASE())';
+PREPARE stmt_a_2 FROM 'INSERT INTO t1 VALUES(@@collation_database)';
+
+EXECUTE stmt_a_1;
+EXECUTE stmt_a_2;
+
+use mysqltest2;
+EXECUTE stmt_a_1;
+EXECUTE stmt_a_2;
+
+SELECT * FROM mysqltest1.t1;
+msg
+mysqltest1
+utf8_unicode_ci
+mysqltest1
+utf8_unicode_ci
+
+SELECT * FROM mysqltest2.t1;
+msg
+
+DROP PREPARE stmt_a_1;
+DROP PREPARE stmt_a_2;
+
+#
+# The Query Cache test case.
+#
+
+DELETE FROM mysqltest1.t1;
+DELETE FROM mysqltest2.t1;
+
+INSERT INTO mysqltest1.t1 VALUES('mysqltest1.t1');
+INSERT INTO mysqltest2.t1 VALUES('mysqltest2.t1');
+
+use mysqltest1;
+PREPARE stmt_b_1 FROM 'SELECT * FROM t1';
+
+use mysqltest2;
+PREPARE stmt_b_2 FROM 'SELECT * FROM t1';
+
+EXECUTE stmt_b_1;
+msg
+mysqltest1.t1
+
+EXECUTE stmt_b_2;
+msg
+mysqltest2.t1
+
+use mysqltest1;
+
+EXECUTE stmt_b_1;
+msg
+mysqltest1.t1
+
+EXECUTE stmt_b_2;
+msg
+mysqltest2.t1
+
+DROP PREPARE stmt_b_1;
+DROP PREPARE stmt_b_2;
+
+use test;
+
+DROP DATABASE mysqltest1;
+DROP DATABASE mysqltest2;
+
+#
+# Check that prepared statements work properly when there is no current
+# database.
+#
+
+CREATE DATABASE mysqltest1 COLLATE utf8_unicode_ci;
+CREATE DATABASE mysqltest2 COLLATE utf8_general_ci;
+
+use mysqltest1;
+
+PREPARE stmt_c_1 FROM 'SELECT DATABASE(), @@collation_database';
+
+use mysqltest2;
+
+PREPARE stmt_c_2 FROM 'SELECT DATABASE(), @@collation_database';
+
+DROP DATABASE mysqltest2;
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+EXECUTE stmt_c_1;
+DATABASE() @@collation_database
+mysqltest1 utf8_unicode_ci
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+EXECUTE stmt_c_2;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+Warnings:
+Note 1049 Unknown database 'mysqltest2'
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+PREPARE stmt_c_3 FROM 'SELECT DATABASE(), @@collation_database';
+
+EXECUTE stmt_c_3;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+use mysqltest1;
+
+EXECUTE stmt_c_2;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+Warnings:
+Note 1049 Unknown database 'mysqltest2'
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+mysqltest1 utf8_unicode_ci
+
+EXECUTE stmt_c_3;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+mysqltest1 utf8_unicode_ci
+
+DROP DATABASE mysqltest1;
+
+use test;
+
+########################################################################
+set @@global.query_cache_size=@initial_query_cache_size;
+flush status;
diff --git a/mysql-test/r/query_cache_ps_ps_prot.result b/mysql-test/r/query_cache_ps_ps_prot.result
new file mode 100644
index 00000000000..dc0c4a0193a
--- /dev/null
+++ b/mysql-test/r/query_cache_ps_ps_prot.result
@@ -0,0 +1,533 @@
+---- establish connection con1 (root) ----
+---- switch to connection default ----
+set @initial_query_cache_size = @@global.query_cache_size;
+set @@global.query_cache_size=100000;
+flush status;
+drop table if exists t1;
+create table t1(c1 int);
+insert into t1 values(1),(10),(100);
+prepare stmt1 from "select * from t1 where c1=10";
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 0
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 0
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 1
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 2
+prepare stmt2 from "select * from t1 where c1=10";
+execute stmt2;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 3
+execute stmt2;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 4
+execute stmt2;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 5
+---- switch to connection con1 ----
+prepare stmt3 from "select * from t1 where c1=10";
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 6
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 7
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 8
+---- switch to connection default ----
+prepare stmt10 from "SELECT * FROM t1 WHERE c1 = 100";
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 8
+execute stmt10;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 8
+execute stmt10;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 9
+SELECT * FROM t1 WHERE c1 = 100;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 9
+---- switch to connection con1 ----
+SELECT * FROM t1 WHERE c1 = 100;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 10
+---- switch to connection default ----
+prepare stmt11 from "SELECT * FROM t1 WHERE c1 = 1";
+---- switch to connection con1 ----
+prepare stmt12 from "SELECT * FROM t1 WHERE c1 = 1";
+---- switch to connection default ----
+SELECT * FROM t1 WHERE c1 = 1;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 10
+SELECT * FROM t1 WHERE c1 = 1;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 11
+execute stmt11;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 11
+---- switch to connection con1 ----
+execute stmt12;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 12
+---- switch to connection default ----
+prepare stmt1 from "select * from t1 where c1=?";
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 12
+set @a=1;
+execute stmt1 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 12
+execute stmt1 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 13
+---- switch to connection con1 ----
+set @a=1;
+prepare stmt4 from "select * from t1 where c1=?";
+execute stmt4 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+prepare stmt4 from "select @a from t1 where c1=?";
+execute stmt4 using @a;
+@a
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt4 using @a;
+@a
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+---- switch to connection default ----
+prepare stmt1 from "select * from t1 where c1=10";
+set global query_cache_size=0;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+---- switch to connection con1 ----
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+---- switch to connection default ----
+set global query_cache_size=100000;
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 14
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 15
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 16
+---- switch to connection con1 ----
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 17
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 18
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+---- switch to connection default ----
+set global query_cache_size=0;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+---- switch to connection con1 ----
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+---- switch to connection default ----
+set global query_cache_size=0;
+prepare stmt1 from "select * from t1 where c1=10";
+---- switch to connection con1 ----
+prepare stmt3 from "select * from t1 where c1=10";
+---- switch to connection default ----
+set global query_cache_size=100000;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt1;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+---- switch to connection con1 ----
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+execute stmt3;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+---- switch to connection default ----
+set global query_cache_size=0;
+prepare stmt1 from "select * from t1 where c1=?";
+set global query_cache_size=100000;
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+set @a=1;
+execute stmt1 using @a;
+c1
+1
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+set @a=100;
+execute stmt1 using @a;
+c1
+100
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+set @a=10;
+execute stmt1 using @a;
+c1
+10
+show status like 'Qcache_hits';
+Variable_name Value
+Qcache_hits 19
+drop table t1;
+---- disconnect connection con1 ----
+########################################################################
+#
+# BUG#25843: Changing default database between PREPARE and EXECUTE of
+# statement breaks binlog.
+#
+########################################################################
+
+#
+# Check that default database and its attributes are fixed at the
+# creation time.
+#
+
+DROP DATABASE IF EXISTS mysqltest1;
+DROP DATABASE IF EXISTS mysqltest2;
+
+CREATE DATABASE mysqltest1 COLLATE utf8_unicode_ci;
+CREATE DATABASE mysqltest2 COLLATE utf8_general_ci;
+
+CREATE TABLE mysqltest1.t1(msg VARCHAR(255));
+CREATE TABLE mysqltest2.t1(msg VARCHAR(255));
+
+use mysqltest1;
+PREPARE stmt_a_1 FROM 'INSERT INTO t1 VALUES(DATABASE())';
+PREPARE stmt_a_2 FROM 'INSERT INTO t1 VALUES(@@collation_database)';
+
+EXECUTE stmt_a_1;
+EXECUTE stmt_a_2;
+
+use mysqltest2;
+EXECUTE stmt_a_1;
+EXECUTE stmt_a_2;
+
+SELECT * FROM mysqltest1.t1;
+msg
+mysqltest1
+utf8_unicode_ci
+mysqltest1
+utf8_unicode_ci
+
+SELECT * FROM mysqltest2.t1;
+msg
+
+DROP PREPARE stmt_a_1;
+DROP PREPARE stmt_a_2;
+
+#
+# The Query Cache test case.
+#
+
+DELETE FROM mysqltest1.t1;
+DELETE FROM mysqltest2.t1;
+
+INSERT INTO mysqltest1.t1 VALUES('mysqltest1.t1');
+INSERT INTO mysqltest2.t1 VALUES('mysqltest2.t1');
+
+use mysqltest1;
+PREPARE stmt_b_1 FROM 'SELECT * FROM t1';
+
+use mysqltest2;
+PREPARE stmt_b_2 FROM 'SELECT * FROM t1';
+
+EXECUTE stmt_b_1;
+msg
+mysqltest1.t1
+
+EXECUTE stmt_b_2;
+msg
+mysqltest2.t1
+
+use mysqltest1;
+
+EXECUTE stmt_b_1;
+msg
+mysqltest1.t1
+
+EXECUTE stmt_b_2;
+msg
+mysqltest2.t1
+
+DROP PREPARE stmt_b_1;
+DROP PREPARE stmt_b_2;
+
+use test;
+
+DROP DATABASE mysqltest1;
+DROP DATABASE mysqltest2;
+
+#
+# Check that prepared statements work properly when there is no current
+# database.
+#
+
+CREATE DATABASE mysqltest1 COLLATE utf8_unicode_ci;
+CREATE DATABASE mysqltest2 COLLATE utf8_general_ci;
+
+use mysqltest1;
+
+PREPARE stmt_c_1 FROM 'SELECT DATABASE(), @@collation_database';
+
+use mysqltest2;
+
+PREPARE stmt_c_2 FROM 'SELECT DATABASE(), @@collation_database';
+
+DROP DATABASE mysqltest2;
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+EXECUTE stmt_c_1;
+DATABASE() @@collation_database
+mysqltest1 utf8_unicode_ci
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+EXECUTE stmt_c_2;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+Warnings:
+Note 1049 Unknown database 'mysqltest2'
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+PREPARE stmt_c_3 FROM 'SELECT DATABASE(), @@collation_database';
+
+EXECUTE stmt_c_3;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+use mysqltest1;
+
+EXECUTE stmt_c_2;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+Warnings:
+Note 1049 Unknown database 'mysqltest2'
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+mysqltest1 utf8_unicode_ci
+
+EXECUTE stmt_c_3;
+DATABASE() @@collation_database
+NULL latin1_swedish_ci
+
+SELECT DATABASE(), @@collation_database;
+DATABASE() @@collation_database
+mysqltest1 utf8_unicode_ci
+
+DROP DATABASE mysqltest1;
+
+use test;
+
+########################################################################
+set @@global.query_cache_size=@initial_query_cache_size;
+flush status;
diff --git a/mysql-test/r/range.result b/mysql-test/r/range.result
index 0c4c332395a..0d44e79b39a 100644
--- a/mysql-test/r/range.result
+++ b/mysql-test/r/range.result
@@ -221,27 +221,27 @@ update t1 set y=x;
explain select * from t1, t1 t2 where t1.y = 8 and t2.x between 7 and t1.y+0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref y y 5 const 1 Using where
-1 SIMPLE t2 range x x 5 NULL 2 Using where
+1 SIMPLE t2 range x x 5 NULL 2 Using where; Using join buffer
explain select * from t1, t1 t2 where t1.y = 8 and t2.x >= 7 and t2.x <= t1.y+0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref y y 5 const 1 Using where
-1 SIMPLE t2 range x x 5 NULL 2 Using where
+1 SIMPLE t2 range x x 5 NULL 2 Using where; Using join buffer
explain select * from t1, t1 t2 where t1.y = 2 and t2.x between t1.y-1 and t1.y+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref y y 5 const 1 Using where
-1 SIMPLE t2 range x x 5 NULL 3 Using where
+1 SIMPLE t2 range x x 5 NULL 3 Using where; Using join buffer
explain select * from t1, t1 t2 where t1.y = 2 and t2.x >= t1.y-1 and t2.x <= t1.y+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref y y 5 const 1 Using where
-1 SIMPLE t2 range x x 5 NULL 3 Using where
+1 SIMPLE t2 range x x 5 NULL 3 Using where; Using join buffer
explain select * from t1, t1 t2 where t1.y = 2 and t2.x between 0 and t1.y;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref y y 5 const 1 Using where
-1 SIMPLE t2 range x x 5 NULL 2 Using where
+1 SIMPLE t2 range x x 5 NULL 2 Using where; Using join buffer
explain select * from t1, t1 t2 where t1.y = 2 and t2.x >= 0 and t2.x <= t1.y;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref y y 5 const 1 Using where
-1 SIMPLE t2 range x x 5 NULL 2 Using where
+1 SIMPLE t2 range x x 5 NULL 2 Using where; Using join buffer
explain select count(*) from t1 where x in (1);
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref x x 5 const 1 Using where; Using index
@@ -256,12 +256,12 @@ INSERT INTO t2 VALUES (0),(0),(1),(1),(2),(2);
explain select * from t1, t2 where (t1.key1 <t2.keya + 1) and t2.keya=3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
-1 SIMPLE t1 index i1 i1 4 NULL 7 Using where; Using index
+1 SIMPLE t1 index i1 i1 4 NULL 7 Using where; Using index; Using join buffer
explain select * from t1 force index(i1), t2 force index(j1) where
(t1.key1 <t2.keya + 1) and t2.keya=3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
-1 SIMPLE t1 index i1 i1 4 NULL 7 Using where; Using index
+1 SIMPLE t1 index i1 i1 4 NULL 7 Using where; Using index; Using join buffer
DROP TABLE t1,t2;
CREATE TABLE t1 (
a int(11) default NULL,
@@ -406,7 +406,7 @@ insert into t2(uid, name) values
(24, CHAR(64+24)),
(25, CHAR(64+25)),
(26, CHAR(64+26));
-insert into t1(uid, name) select uid, name from t2;
+insert into t1(uid, name) select uid, name from t2 order by uid;
delete from t2;
insert into t2(id, uid, name) select id, uid, name from t1;
select count(*) from t1;
@@ -705,7 +705,7 @@ v.oxrootid ='d8c4177d09f8b11f5.52725521' AND
s.oxleft > v.oxleft AND s.oxleft < v.oxright;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE v ref OXLEFT,OXRIGHT,OXROOTID OXROOTID 34 const 5 Using where
-1 SIMPLE s ALL OXLEFT NULL NULL NULL 5 Range checked for each record (index map: 0x4)
+1 SIMPLE s ALL OXLEFT NULL NULL NULL 6 Range checked for each record (index map: 0x4)
SELECT s.oxid FROM t1 v, t1 s
WHERE s.oxrootid = 'd8c4177d09f8b11f5.52725521' AND
v.oxrootid ='d8c4177d09f8b11f5.52725521' AND
@@ -1205,3 +1205,205 @@ SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 > -128;
COUNT(*)
4
DROP TABLE t1;
+create table t1 (a int);
+insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t2 (a int, b int, filler char(100));
+insert into t2 select A.a + 10 * (B.a + 10 * C.a), 10, 'filler' from t1 A,
+t1 B, t1 C where A.a < 5;
+insert into t2 select 1000, b, 'filler' from t2;
+alter table t2 add index (a,b);
+select 'In following EXPLAIN the access method should be ref, #rows~=500 (and not 2)' Z;
+Z
+In following EXPLAIN the access method should be ref, #rows~=500 (and not 2)
+explain select * from t2 where a=1000 and b<11;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 5 const 502 Using where
+drop table t1, t2;
+CREATE TABLE t1( a INT, b INT, KEY( a, b ) );
+CREATE TABLE t2( a INT, b INT, KEY( a, b ) );
+CREATE TABLE t3( a INT, b INT, KEY( a, b ) );
+INSERT INTO t1( a, b )
+VALUES (0, 1), (1, 2), (1, 4), (2, 3), (5, 0), (9, 7);
+INSERT INTO t2( a, b )
+VALUES ( 1, 1), ( 2, 1), ( 3, 1), ( 4, 1), ( 5, 1),
+( 6, 1), ( 7, 1), ( 8, 1), ( 9, 1), (10, 1),
+(11, 1), (12, 1), (13, 1), (14, 1), (15, 1),
+(16, 1), (17, 1), (18, 1), (19, 1), (20, 1);
+INSERT INTO t2 SELECT a, 2 FROM t2 WHERE b = 1;
+INSERT INTO t2 SELECT a, 3 FROM t2 WHERE b = 1;
+INSERT INTO t2 SELECT -1, -1 FROM t2;
+INSERT INTO t2 SELECT -1, -1 FROM t2;
+INSERT INTO t2 SELECT -1, -1 FROM t2;
+INSERT INTO t3
+VALUES (1, 0), (2, 0), (3, 0), (4, 0), (5, 0),
+(6, 0), (7, 0), (8, 0), (9, 0), (10, 0);
+INSERT INTO t3 SELECT * FROM t3 WHERE a = 10;
+INSERT INTO t3 SELECT * FROM t3 WHERE a = 10;
+SELECT * FROM t1 WHERE
+3 <= a AND a < 5 OR
+5 < a AND b = 3 OR
+3 <= a;
+a b
+5 0
+9 7
+EXPLAIN
+SELECT * FROM t1 WHERE
+3 <= a AND a < 5 OR
+5 < a AND b = 3 OR
+3 <= a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 3 Using where; Using index
+SELECT * FROM t1 WHERE
+3 <= a AND a < 5 OR
+5 <= a AND b = 3 OR
+3 <= a;
+a b
+5 0
+9 7
+EXPLAIN
+SELECT * FROM t1 WHERE
+3 <= a AND a < 5 OR
+5 <= a AND b = 3 OR
+3 <= a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 4 Using where; Using index
+SELECT * FROM t1 WHERE
+3 <= a AND a <= 5 OR
+5 <= a AND b = 3 OR
+3 <= a;
+a b
+5 0
+9 7
+EXPLAIN
+SELECT * FROM t1 WHERE
+3 <= a AND a <= 5 OR
+5 <= a AND b = 3 OR
+3 <= a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 3 Using where; Using index
+SELECT * FROM t1 WHERE
+3 <= a AND a <= 5 OR
+3 <= a;
+a b
+5 0
+9 7
+EXPLAIN
+SELECT * FROM t1 WHERE
+3 <= a AND a <= 5 OR
+3 <= a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 5 NULL 3 Using where; Using index
+SELECT * FROM t2 WHERE
+5 <= a AND a < 10 AND b = 1 OR
+15 <= a AND a < 20 AND b = 3
+OR
+1 <= a AND b = 1;
+a b
+1 1
+2 1
+3 1
+4 1
+5 1
+6 1
+7 1
+8 1
+9 1
+10 1
+11 1
+12 1
+13 1
+14 1
+15 1
+15 3
+16 1
+16 3
+17 1
+17 3
+18 1
+18 3
+19 1
+19 3
+20 1
+EXPLAIN
+SELECT * FROM t2 WHERE
+5 <= a AND a < 10 AND b = 1 OR
+15 <= a AND a < 20 AND b = 3
+OR
+1 <= a AND b = 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a a 10 NULL 50 Using where; Using index
+SELECT * FROM t2 WHERE
+5 <= a AND a < 10 AND b = 2 OR
+15 <= a AND a < 20 AND b = 3
+OR
+1 <= a AND b = 1;
+a b
+1 1
+2 1
+3 1
+4 1
+5 1
+5 2
+6 1
+6 2
+7 1
+7 2
+8 1
+8 2
+9 1
+9 2
+10 1
+11 1
+12 1
+13 1
+14 1
+15 1
+15 3
+16 1
+16 3
+17 1
+17 3
+18 1
+18 3
+19 1
+19 3
+20 1
+EXPLAIN
+SELECT * FROM t2 WHERE
+5 <= a AND a < 10 AND b = 2 OR
+15 <= a AND a < 20 AND b = 3
+OR
+1 <= a AND b = 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a a 10 NULL 50 Using where; Using index
+SELECT * FROM t3 WHERE
+5 <= a AND a < 10 AND b = 3 OR
+a < 5 OR
+a < 10;
+a b
+1 0
+2 0
+3 0
+4 0
+5 0
+6 0
+7 0
+8 0
+9 0
+EXPLAIN
+SELECT * FROM t3 WHERE
+5 <= a AND a < 10 AND b = 3 OR
+a < 5 OR
+a < 10;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t3 range a a 5 NULL 8 Using where; Using index
+DROP TABLE t1, t2, t3;
+#
+# Bug #47123: Endless 100% CPU loop with STRAIGHT_JOIN
+#
+CREATE TABLE t1(a INT, KEY(a));
+INSERT INTO t1 VALUES (1), (NULL);
+SELECT * FROM t1 WHERE a <> NULL and (a <> NULL or a <= NULL);
+a
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/innodb-big.result b/mysql-test/r/read_many_rows_innodb.result
index 84bb02d445e..29ec509db5a 100644
--- a/mysql-test/r/innodb-big.result
+++ b/mysql-test/r/read_many_rows_innodb.result
@@ -1,8 +1,9 @@
+SET SESSION STORAGE_ENGINE = InnoDB;
DROP TABLE IF EXISTS t1, t2, t3, t4;
-CREATE TABLE t1 (id INTEGER) ENGINE=MYISAM;
-CREATE TABLE t2 (id INTEGER primary key) ENGINE=INNODB;
-CREATE TABLE t3 (a char(32) primary key,id INTEGER) ENGINE=INNODB;
-CREATE TABLE t4 (a char(32) primary key,id INTEGER) ENGINE=MYISAM;
+CREATE TABLE t1 (id INTEGER) ENGINE=MyISAM;
+CREATE TABLE t2 (id INTEGER PRIMARY KEY);
+CREATE TABLE t3 (a CHAR(32) PRIMARY KEY,id INTEGER);
+CREATE TABLE t4 (a CHAR(32) PRIMARY KEY,id INTEGER) ENGINE=MyISAM;
INSERT INTO t1 (id) VALUES (1);
INSERT INTO t1 SELECT id+1 FROM t1;
INSERT INTO t1 SELECT id+2 FROM t1;
@@ -26,12 +27,12 @@ INSERT INTO t1 SELECT id+262144 FROM t1;
INSERT INTO t1 SELECT id+524288 FROM t1;
INSERT INTO t1 SELECT id+1048576 FROM t1;
INSERT INTO t2 SELECT * FROM t1;
-INSERT INTO t3 SELECT concat(id),id from t2 ORDER BY -id;
-INSERT INTO t4 SELECT * from t3 ORDER BY concat(a);
-select sum(id) from t3;
-sum(id)
+INSERT INTO t3 SELECT CONCAT(id),id FROM t2 ORDER BY -id;
+INSERT INTO t4 SELECT * FROM t3 ORDER BY CONCAT(a);
+SELECT SUM(id) FROM t3;
+SUM(id)
2199024304128
-drop table t1,t2,t3,t4;
+DROP TABLE t1,t2,t3,t4;
CREATE TABLE t1 (f1 int NOT NULL) ENGINE=InnoDB;
CREATE TABLE t2 (f2 int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB;
CREATE TRIGGER t1_bi before INSERT
diff --git a/mysql-test/r/read_only.result b/mysql-test/r/read_only.result
index 4b405ddd71a..7b28da5a577 100644
--- a/mysql-test/r/read_only.result
+++ b/mysql-test/r/read_only.result
@@ -1,12 +1,18 @@
+set @start_read_only= @@global.read_only;
DROP TABLE IF EXISTS t1,t2,t3;
grant CREATE, SELECT, DROP on *.* to test@localhost;
+connect (con1,localhost,test,,test);
+connection default;
set global read_only=0;
+connection con1;
create table t1 (a int);
insert into t1 values(1);
create table t2 select * from t1;
+connection default;
set global read_only=1;
create table t3 (a int);
drop table t3;
+connection con1;
select @@global.read_only;
@@global.read_only
1
@@ -39,16 +45,92 @@ delete t1 from t1,t3 where t1.a=t3.a;
drop table t1;
insert into t1 values(1);
ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+connection default;
+set global read_only=0;
+lock table t1 write;
+connection con1;
+lock table t2 write;
+connection default;
+set global read_only=1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables ;
+send set global read_only=1;
+set global read_only=1;
+connection con1;
+select @@global.read_only;
+@@global.read_only
+0
+unlock tables ;
+select @@global.read_only;
+@@global.read_only
+1
+connection default;
+reap;
+connection default;
+set global read_only=0;
+lock table t1 read;
+connection con1;
+lock table t2 read;
+connection default;
+set global read_only=1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables ;
+send set global read_only=1;
+set global read_only=1;
+connection con1;
+select @@global.read_only;
+@@global.read_only
+0
+unlock tables ;
+select @@global.read_only;
+@@global.read_only
+1
+connection default;
+reap;
+connection default;
+set global read_only=0;
+BEGIN;
+connection con1;
+BEGIN;
+connection default;
+set global read_only=1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+ROLLBACK;
+set global read_only=1;
+connection con1;
+select @@global.read_only;
+@@global.read_only
+1
+ROLLBACK;
+connection default;
+set global read_only=0;
+flush tables with read lock;
+set global read_only=1;
+unlock tables;
+connect (root2,localhost,root,,test);
+connection default;
+set global read_only=0;
+flush tables with read lock;
+connection root2;
+set global read_only=1;
+connection default;
+select @@global.read_only;
+@@global.read_only
+1
+unlock tables;
drop temporary table ttt;
ERROR 42S02: Unknown table 'ttt'
drop temporary table if exists ttt;
Warnings:
Note 1051 Unknown table 'ttt'
+connection default;
+set global read_only=0;
drop table t1,t2;
drop user test@localhost;
#
# Bug#27440 read_only allows create and drop database
#
+set global read_only= 1;
drop database if exists mysqltest_db1;
drop database if exists mysqltest_db2;
delete from mysql.user where User like 'mysqltest_%';
@@ -60,16 +142,20 @@ grant all on mysqltest_db2.* to `mysqltest_u1`@`%`;
create database mysqltest_db1;
grant all on mysqltest_db1.* to `mysqltest_u1`@`%`;
flush privileges;
+connect (con_bug27440,127.0.0.1,mysqltest_u1,,test,MASTER_MYPORT,);
+connection con_bug27440;
create database mysqltest_db2;
ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
show databases like '%mysqltest_db2%';
Database (%mysqltest_db2%)
drop database mysqltest_db1;
ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+disconnect con_bug27440;
+connection default;
delete from mysql.user where User like 'mysqltest_%';
delete from mysql.db where User like 'mysqltest_%';
delete from mysql.tables_priv where User like 'mysqltest_%';
delete from mysql.columns_priv where User like 'mysqltest_%';
flush privileges;
drop database mysqltest_db1;
-set global read_only=0;
+set global read_only= @start_read_only;
diff --git a/mysql-test/r/read_only_innodb.result b/mysql-test/r/read_only_innodb.result
new file mode 100644
index 00000000000..690de085bf9
--- /dev/null
+++ b/mysql-test/r/read_only_innodb.result
@@ -0,0 +1,48 @@
+DROP TABLE IF EXISTS table_11733 ;
+grant CREATE, SELECT, DROP on *.* to test@localhost;
+set global read_only=0;
+create table table_11733 (a int) engine=InnoDb;
+BEGIN;
+insert into table_11733 values(11733);
+set global read_only=1;
+select @@global.read_only;
+@@global.read_only
+1
+select * from table_11733 ;
+a
+11733
+COMMIT;
+ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+set global read_only=0;
+drop table table_11733 ;
+drop user test@localhost;
+GRANT CREATE, SELECT, DROP ON *.* TO test@localhost;
+CREATE TABLE t1(a INT) ENGINE=INNODB;
+INSERT INTO t1 VALUES (0), (1);
+SET GLOBAL read_only=1;
+SELECT * FROM t1;
+a
+0
+1
+BEGIN;
+SELECT * FROM t1;
+a
+0
+1
+COMMIT;
+SET GLOBAL read_only=0;
+FLUSH TABLES WITH READ LOCK;
+SELECT * FROM t1;
+a
+0
+1
+BEGIN;
+SELECT * FROM t1;
+a
+0
+1
+COMMIT;
+UNLOCK TABLES;
+DROP TABLE t1;
+DROP USER test@localhost;
+echo End of 5.1 tests
diff --git a/mysql-test/r/renamedb.result b/mysql-test/r/renamedb.result
new file mode 100644
index 00000000000..ff8f89592fc
--- /dev/null
+++ b/mysql-test/r/renamedb.result
@@ -0,0 +1,12 @@
+rename database testdb1 to testdb2;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'database testdb1 to testdb2' at line 1
+ALTER DATABASE wrong UPGRADE DATA DIRECTORY NAME;
+ERROR HY000: Incorrect usage of ALTER DATABASE UPGRADE DATA DIRECTORY NAME and name
+ALTER DATABASE `#mysql41#not-supported` UPGRADE DATA DIRECTORY NAME;
+ERROR HY000: Incorrect usage of ALTER DATABASE UPGRADE DATA DIRECTORY NAME and name
+ALTER DATABASE `#mysql51#not-yet` UPGRADE DATA DIRECTORY NAME;
+ERROR HY000: Incorrect usage of ALTER DATABASE UPGRADE DATA DIRECTORY NAME and name
+ALTER DATABASE `#mysql50#` UPGRADE DATA DIRECTORY NAME;
+ERROR HY000: Incorrect usage of ALTER DATABASE UPGRADE DATA DIRECTORY NAME and name
+ALTER DATABASE `#mysql50#upgrade-me` UPGRADE DATA DIRECTORY NAME;
+ERROR 42000: Unknown database '#mysql50#upgrade-me'
diff --git a/mysql-test/r/repair.result b/mysql-test/r/repair.result
index e7866ae7656..5bb3dd76fed 100644
--- a/mysql-test/r/repair.result
+++ b/mysql-test/r/repair.result
@@ -126,11 +126,11 @@ id
# Run CHECK TABLE, it should indicate table need a REPAIR TABLE
CHECK TABLE t1 FOR UPGRADE;
Table Op Msg_type Msg_text
-test.t1 check error Table upgrade required. Please do "REPAIR TABLE `t1`" to fix it!
+test.t1 check error Table upgrade required. Please do "REPAIR TABLE `t1`" or dump/reload to fix it!
# REPAIR old table USE_FRM should fail
REPAIR TABLE t1 USE_FRM;
Table Op Msg_type Msg_text
-t1 repair error Failed reparing incompatible .FRM file
+t1 repair error Failed repairing incompatible .frm file
# Run REPAIR TABLE to upgrade .frm file
REPAIR TABLE t1;
Table Op Msg_type Msg_text
@@ -151,3 +151,9 @@ id
1
2
DROP TABLE t1;
+DROP TABLE IF EXISTS tt1;
+CREATE TEMPORARY TABLE tt1 (c1 INT);
+REPAIR TABLE tt1 USE_FRM;
+Table Op Msg_type Msg_text
+tt1 repair error Cannot repair temporary table from .frm file
+DROP TABLE tt1;
diff --git a/mysql-test/r/replace.result b/mysql-test/r/replace.result
index 5a5e4571ba9..842302c89ac 100644
--- a/mysql-test/r/replace.result
+++ b/mysql-test/r/replace.result
@@ -13,9 +13,9 @@ drop table t1;
create table t1 (a tinyint not null auto_increment primary key, b char(20) default "default_value");
insert into t1 values (126,"first"),(63, "middle"),(0,"last");
insert into t1 values (0,"error");
-ERROR 23000: Duplicate entry '127' for key 1
+ERROR 23000: Duplicate entry '127' for key 'PRIMARY'
replace into t1 values (0,"error");
-ERROR 23000: Duplicate entry '127' for key 1
+ERROR 23000: Duplicate entry '127' for key 'PRIMARY'
replace into t1 values (126,"first updated");
replace into t1 values (63,default);
select * from t1;
diff --git a/mysql-test/r/round.result b/mysql-test/r/round.result
index e9a80df0f49..49a00885f34 100644
--- a/mysql-test/r/round.result
+++ b/mysql-test/r/round.result
@@ -5,7 +5,7 @@ INSERT INTO t1 VALUES ('0.5');
INSERT INTO t1 VALUES ('127.4');
INSERT INTO t1 VALUES ('127.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint8' at row 1
+Warning 1264 Out of range value for column 'sint8' at row 1
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
INSERT INTO t1 VALUES ('-127.4');
@@ -13,7 +13,7 @@ INSERT INTO t1 VALUES ('-127.5');
INSERT INTO t1 VALUES ('-128.4');
INSERT INTO t1 VALUES ('-128.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint8' at row 1
+Warning 1264 Out of range value for column 'sint8' at row 1
SELECT * FROM t1;
sint8
0
@@ -35,11 +35,11 @@ INSERT INTO t1 VALUES ('127.5');
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint8' at row 1
+Warning 1264 Out of range value for column 'uint8' at row 1
INSERT INTO t1 VALUES ('255.4');
INSERT INTO t1 VALUES ('255.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint8' at row 1
+Warning 1264 Out of range value for column 'uint8' at row 1
SELECT * FROM t1;
uint8
0
@@ -57,7 +57,7 @@ INSERT INTO t1 VALUES ('0.5');
INSERT INTO t1 VALUES ('32767.4');
INSERT INTO t1 VALUES ('32767.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint16' at row 1
+Warning 1264 Out of range value for column 'sint16' at row 1
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
INSERT INTO t1 VALUES ('-32767.4');
@@ -65,7 +65,7 @@ INSERT INTO t1 VALUES ('-32767.5');
INSERT INTO t1 VALUES ('-32768.4');
INSERT INTO t1 VALUES ('-32768.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint16' at row 1
+Warning 1264 Out of range value for column 'sint16' at row 1
SELECT * FROM t1;
sint16
0
@@ -87,11 +87,11 @@ INSERT INTO t1 VALUES ('32767.5');
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint16' at row 1
+Warning 1264 Out of range value for column 'uint16' at row 1
INSERT INTO t1 VALUES ('65535.4');
INSERT INTO t1 VALUES ('65535.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint16' at row 1
+Warning 1264 Out of range value for column 'uint16' at row 1
SELECT * FROM t1;
uint16
0
@@ -109,7 +109,7 @@ INSERT INTO t1 VALUES ('0.5');
INSERT INTO t1 VALUES ('8388607.4');
INSERT INTO t1 VALUES ('8388607.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint24' at row 1
+Warning 1264 Out of range value for column 'sint24' at row 1
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
INSERT INTO t1 VALUES ('-8388607.4');
@@ -117,7 +117,7 @@ INSERT INTO t1 VALUES ('-8388607.5');
INSERT INTO t1 VALUES ('-8388608.4');
INSERT INTO t1 VALUES ('-8388608.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint24' at row 1
+Warning 1264 Out of range value for column 'sint24' at row 1
SELECT * FROM t1;
sint24
0
@@ -139,11 +139,11 @@ INSERT INTO t1 VALUES ('8388607.5');
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint24' at row 1
+Warning 1264 Out of range value for column 'uint24' at row 1
INSERT INTO t1 VALUES ('16777215.4');
INSERT INTO t1 VALUES ('16777215.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint24' at row 1
+Warning 1264 Out of range value for column 'uint24' at row 1
SELECT * FROM t1;
uint24
0
@@ -161,7 +161,7 @@ INSERT INTO t1 VALUES ('0.5');
INSERT INTO t1 VALUES ('9223372036854775807.4');
INSERT INTO t1 VALUES ('9223372036854775807.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint64' at row 1
+Warning 1264 Out of range value for column 'sint64' at row 1
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
INSERT INTO t1 VALUES ('-9223372036854775807.4');
@@ -169,7 +169,7 @@ INSERT INTO t1 VALUES ('-9223372036854775807.5');
INSERT INTO t1 VALUES ('-9223372036854775808.4');
INSERT INTO t1 VALUES ('-9223372036854775808.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'sint64' at row 1
+Warning 1264 Out of range value for column 'sint64' at row 1
SELECT * FROM t1;
sint64
0
@@ -191,11 +191,11 @@ INSERT INTO t1 VALUES ('9223372036854775807.5');
INSERT INTO t1 VALUES ('-0.1');
INSERT INTO t1 VALUES ('-0.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint64' at row 1
+Warning 1264 Out of range value for column 'uint64' at row 1
INSERT INTO t1 VALUES ('18446744073709551615.4');
INSERT INTO t1 VALUES ('18446744073709551615.5');
Warnings:
-Warning 1264 Out of range value adjusted for column 'uint64' at row 1
+Warning 1264 Out of range value for column 'uint64' at row 1
INSERT INTO t1 VALUES ('1844674407370955161.0');
INSERT INTO t1 VALUES ('1844674407370955161.1');
INSERT INTO t1 VALUES ('1844674407370955161.2');
diff --git a/mysql-test/r/row.result b/mysql-test/r/row.result
index 9afb528b6dd..2eaec67c547 100644
--- a/mysql-test/r/row.result
+++ b/mysql-test/r/row.result
@@ -46,8 +46,8 @@ select row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,NULL)));
row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,NULL)))
NULL
explain extended select row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,NULL)));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select ((1,2,(3,4)) in ((3,2,(3,4)),(1,2,(3,NULL)))) AS `row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,NULL)))`
SELECT (1,2,3)=(0,NULL,3);
@@ -340,11 +340,11 @@ a b a b c
3 1 3 1 3
EXPLAIN SELECT * FROM t1,t2 WHERE t1.a=t2.a AND t1.b=2;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 5 Using where; Using index
+1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 Using where; Using index
1 SIMPLE t2 ref PRIMARY PRIMARY 4 test.t1.a 1 Using index
EXPLAIN SELECT * FROM t1,t2 WHERE (t1.a,t1.b)=(t2.a,2);
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 5 Using where; Using index
+1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 Using where; Using index
1 SIMPLE t2 ref PRIMARY PRIMARY 4 test.t1.a 1 Using index
SELECT * FROM t1,t2 WHERE t1.a=1 and t1.b=t2.b;
a b a b c
@@ -363,9 +363,9 @@ a b a b c
3 2 3 1 1
3 2 3 1 3
EXPLAIN EXTENDED SELECT * FROM t1,t2 WHERE (t1.a,t1.b)=(t2.a,t2.b+1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 Using index
-1 SIMPLE t2 ref PRIMARY PRIMARY 4 test.t1.a 1 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 100.00 Using index
+1 SIMPLE t2 ref PRIMARY PRIMARY 4 test.t1.a 1 100.00 Using where; Using index
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`c` AS `c` from `test`.`t1` join `test`.`t2` where ((`test`.`t2`.`a` = `test`.`t1`.`a`) and (`test`.`t1`.`b` = (`test`.`t2`.`b` + 1)))
SELECT * FROM t1,t2 WHERE (t1.a,t1.b)=(t2.a,t2.b+1);
@@ -375,9 +375,9 @@ a b a b c
3 2 3 1 1
3 2 3 1 3
EXPLAIN EXTENDED SELECT * FROM t1,t2 WHERE (t1.a-1,t1.b)=(t2.a-1,t2.b+1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 8 NULL 6 Using index
-1 SIMPLE t2 index NULL PRIMARY 12 NULL 7 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index NULL PRIMARY 8 NULL 6 100.00 Using index
+1 SIMPLE t2 index NULL PRIMARY 12 NULL 7 100.00 Using where; Using index; Using join buffer
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`c` AS `c` from `test`.`t1` join `test`.`t2` where (((`test`.`t1`.`a` - 1) = (`test`.`t2`.`a` - 1)) and (`test`.`t1`.`b` = (`test`.`t2`.`b` + 1)))
SELECT * FROM t1,t2 WHERE (t1.a-1,t1.b)=(t2.a-1,t2.b+1);
@@ -401,9 +401,9 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 Using index
1 SIMPLE t2 eq_ref PRIMARY PRIMARY 12 test.t1.a,const,const 1 Using index
EXPLAIN EXTENDED SELECT * FROM t1,t2 WHERE (t2.a,(t2.b,t2.c))=(t1.a,(2,1));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 Using index
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 12 test.t1.a,const,const 1 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 100.00 Using index
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 12 test.t1.a,const,const 1 100.00 Using index
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`c` AS `c` from `test`.`t1` join `test`.`t2` where ((`test`.`t2`.`c` = 1) and (`test`.`t2`.`b` = 2) and (`test`.`t2`.`a` = `test`.`t1`.`a`))
SELECT * FROM t1,t2 WHERE (t2.a,(t2.b,t2.c))=(t1.a,(2,1));
@@ -411,9 +411,9 @@ a b a b c
1 1 1 2 1
1 2 1 2 1
EXPLAIN EXTENDED SELECT * FROM t1,t2 WHERE t2.a=t1.a AND (t2.b,t2.c)=(2,1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 Using index
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 12 test.t1.a,const,const 1 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 6 100.00 Using index
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 12 test.t1.a,const,const 1 100.00 Using index
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`c` AS `c` from `test`.`t1` join `test`.`t2` where ((`test`.`t2`.`c` = 1) and (`test`.`t2`.`b` = 2) and (`test`.`t2`.`a` = `test`.`t1`.`a`))
SELECT * FROM t1,t2 WHERE t2.a=t1.a AND (t2.b,t2.c)=(2,1);
diff --git a/mysql-test/r/rowid_order_bdb.result b/mysql-test/r/rowid_order_bdb.result
deleted file mode 100644
index bbdc6f6ff77..00000000000
--- a/mysql-test/r/rowid_order_bdb.result
+++ /dev/null
@@ -1,186 +0,0 @@
-drop table if exists t1, t2, t3,t4;
-create table t1 (
-pk1 int not NULL,
-key1 int(11),
-key2 int(11),
-PRIMARY KEY (pk1),
-KEY key1 (key1),
-KEY key2 (key2)
-) engine=bdb;
-insert into t1 values (-5, 1, 1),
-(-100, 1, 1),
-(3, 1, 1),
-(0, 1, 1),
-(10, 1, 1);
-explain select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge key1,key2 key1,key2 5,5 NULL 5 Using sort_union(key1,key2); Using where
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 key1 key2
--100 1 1
--5 1 1
-0 1 1
-3 1 1
-10 1 1
-drop table t1;
-create table t1 (
-pk1 int unsigned not NULL,
-key1 int(11),
-key2 int(11),
-PRIMARY KEY (pk1),
-KEY key1 (key1),
-KEY key2 (key2)
-) engine=bdb;
-insert into t1 values (0, 1, 1),
-(0xFFFFFFFF, 1, 1),
-(0xFFFFFFFE, 1, 1),
-(1, 1, 1),
-(2, 1, 1);
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 key1 key2
-0 1 1
-1 1 1
-2 1 1
-4294967294 1 1
-4294967295 1 1
-drop table t1;
-create table t1 (
-pk1 char(4) not NULL,
-key1 int(11),
-key2 int(11),
-PRIMARY KEY (pk1),
-KEY key1 (key1),
-KEY key2 (key2)
-) engine=bdb collate latin2_general_ci;
-insert into t1 values ('a1', 1, 1),
-('b2', 1, 1),
-('A3', 1, 1),
-('B4', 1, 1);
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 key1 key2
-a1 1 1
-A3 1 1
-b2 1 1
-B4 1 1
-drop table t1;
-create table t1 (
-pk1 int not NULL,
-pk2 char(4) not NULL collate latin1_german1_ci,
-pk3 char(4) not NULL collate latin1_bin,
-key1 int(11),
-key2 int(11),
-PRIMARY KEY (pk1,pk2,pk3),
-KEY key1 (key1),
-KEY key2 (key2)
-) engine=bdb;
-insert into t1 values
-(1, 'u', 'u', 1, 1),
-(1, 'u', char(0xEC), 1, 1),
-(1, 'u', 'x', 1, 1);
-insert ignore into t1 select pk1, char(0xEC), pk3, key1, key2 from t1;
-insert ignore into t1 select pk1, 'x', pk3, key1, key2 from t1 where pk2='u';
-insert ignore into t1 select 2, pk2, pk3, key1, key2 from t1;
-select * from t1;
-pk1 pk2 pk3 key1 key2
-1 u 1 1
-1 x 1 1
-1 1 1
-1 u u 1 1
-1 u x 1 1
-1 u 1 1
-1 x u 1 1
-1 x x 1 1
-1 x 1 1
-2 u 1 1
-2 x 1 1
-2 1 1
-2 u u 1 1
-2 u x 1 1
-2 u 1 1
-2 x u 1 1
-2 x x 1 1
-2 x 1 1
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 pk2 pk3 key1 key2
-1 u 1 1
-1 x 1 1
-1 1 1
-1 u u 1 1
-1 u x 1 1
-1 u 1 1
-1 x u 1 1
-1 x x 1 1
-1 x 1 1
-2 u 1 1
-2 x 1 1
-2 1 1
-2 u u 1 1
-2 u x 1 1
-2 u 1 1
-2 x u 1 1
-2 x x 1 1
-2 x 1 1
-alter table t1 drop primary key;
-select * from t1;
-pk1 pk2 pk3 key1 key2
-1 u 1 1
-1 x 1 1
-1 1 1
-1 u u 1 1
-1 u x 1 1
-1 u 1 1
-1 x u 1 1
-1 x x 1 1
-1 x 1 1
-2 u 1 1
-2 x 1 1
-2 1 1
-2 u u 1 1
-2 u x 1 1
-2 u 1 1
-2 x u 1 1
-2 x x 1 1
-2 x 1 1
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 pk2 pk3 key1 key2
-1 u 1 1
-1 x 1 1
-1 1 1
-1 u u 1 1
-1 u x 1 1
-1 u 1 1
-1 x u 1 1
-1 x x 1 1
-1 x 1 1
-2 u 1 1
-2 x 1 1
-2 1 1
-2 u u 1 1
-2 u x 1 1
-2 u 1 1
-2 x u 1 1
-2 x x 1 1
-2 x 1 1
-drop table t1;
-create table t1 (
-pk1 varchar(8) NOT NULL default '',
-pk2 varchar(4) NOT NULL default '',
-key1 int(11),
-key2 int(11),
-primary key(pk1, pk2),
-KEY key1 (key1),
-KEY key2 (key2)
-) engine=bdb;
-insert into t1 values ('','empt',2,2),
-('a','a--a',2,2),
-('bb','b--b',2,2),
-('ccc','c--c',2,2),
-('dddd','d--d',2,2);
-select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
-pk1 pk2 key1 key2
- empt 2 2
-a a--a 2 2
-bb b--b 2 2
-ccc c--c 2 2
-dddd d--d 2 2
-drop table t1;
diff --git a/mysql-test/r/rowid_order_innodb.result b/mysql-test/r/rowid_order_innodb.result
index f76002e9cb2..e0796cd7ab5 100644
--- a/mysql-test/r/rowid_order_innodb.result
+++ b/mysql-test/r/rowid_order_innodb.result
@@ -1,12 +1,13 @@
+SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1, t2, t3,t4;
-create table t1 (
+create table t1 (
pk1 int not NULL,
key1 int(11),
key2 int(11),
PRIMARY KEY (pk1),
KEY key1 (key1),
KEY key2 (key2)
-) engine=innodb;
+);
insert into t1 values (-5, 1, 1),
(-100, 1, 1),
(3, 1, 1),
@@ -23,14 +24,14 @@ pk1 key1 key2
3 1 1
10 1 1
drop table t1;
-create table t1 (
+create table t1 (
pk1 int unsigned not NULL,
key1 int(11),
key2 int(11),
PRIMARY KEY (pk1),
KEY key1 (key1),
KEY key2 (key2)
-) engine=innodb;
+);
insert into t1 values (0, 1, 1),
(0xFFFFFFFF, 1, 1),
(0xFFFFFFFE, 1, 1),
@@ -44,14 +45,14 @@ pk1 key1 key2
4294967294 1 1
4294967295 1 1
drop table t1;
-create table t1 (
+create table t1 (
pk1 char(4) not NULL,
key1 int(11),
key2 int(11),
PRIMARY KEY (pk1),
KEY key1 (key1),
KEY key2 (key2)
-) engine=innodb collate latin2_general_ci;
+) collate latin2_general_ci;
insert into t1 values ('a1', 1, 1),
('b2', 1, 1),
('A3', 1, 1),
@@ -72,8 +73,8 @@ key2 int(11),
PRIMARY KEY (pk1,pk2,pk3),
KEY key1 (key1),
KEY key2 (key2)
-) engine=innodb;
-insert into t1 values
+);
+insert into t1 values
(1, 'u', 'u', 1, 1),
(1, 'u', char(0xEC), 1, 1),
(1, 'u', 'x', 1, 1);
@@ -170,7 +171,7 @@ key2 int(11),
primary key(pk1, pk2),
KEY key1 (key1),
KEY key2 (key2)
-) engine=innodb;
+);
insert into t1 values ('','empt',2,2),
('a','a--a',2,2),
('bb','b--b',2,2),
diff --git a/mysql-test/r/rpl000001.a.result b/mysql-test/r/rpl000001.a.result
deleted file mode 100644
index c52b83d729a..00000000000
--- a/mysql-test/r/rpl000001.a.result
+++ /dev/null
@@ -1,3 +0,0 @@
-n
-1
-2
diff --git a/mysql-test/r/rpl000001.b.result b/mysql-test/r/rpl000001.b.result
deleted file mode 100644
index 5108cfdaf26..00000000000
--- a/mysql-test/r/rpl000001.b.result
+++ /dev/null
@@ -1,2 +0,0 @@
-sum(length(word))
-71
diff --git a/mysql-test/r/rpl000001.result b/mysql-test/r/rpl000001.result
deleted file mode 100644
index 3b4cd05f640..00000000000
--- a/mysql-test/r/rpl000001.result
+++ /dev/null
@@ -1,82 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (word char(20) not null);
-load data infile '../std_data_ln/words.dat' into table t1;
-load data local infile 'MYSQL_TEST_DIR/std_data/words.dat' into table t1;
-select * from t1 limit 10;
-word
-Aarhus
-Aaron
-Ababa
-aback
-abaft
-abandon
-abandoned
-abandoning
-abandonment
-abandons
-stop slave;
-set password for root@"localhost" = password('foo');
-start slave;
-set password for root@"localhost" = password('');
-create table t3(n int);
-insert into t3 values(1),(2);
-select * from t3;
-n
-1
-2
-select sum(length(word)) from t1;
-sum(length(word))
-1022
-drop table t1,t3;
-create table t1 (n int) engine=myisam;
-reset master;
-stop slave;
-reset slave;
-lock tables t1 read;
-start slave;
-unlock tables;
-create table t2(id int);
-insert into t2 values(connection_id());
-create temporary table t3(n int);
-insert into t3 select get_lock('crash_lock%20C', 1) from t2;
-update t1 set n = n + get_lock('crash_lock%20C', 2);
-select (@id := id) - id from t2;
-(@id := id) - id
-0
-kill @id;
-drop table t2;
-Got one of the listed errors
-set global sql_slave_skip_counter=1;
-start slave;
-select count(*) from t1;
-count(*)
-5000
-drop table t1;
-create table t1 (n int);
-insert into t1 values(3456);
-insert into mysql.user (Host, User, Password)
-VALUES ("10.10.10.%", "blafasel2", password("blafasel2"));
-Warnings:
-Warning 1364 Field 'ssl_cipher' doesn't have a default value
-Warning 1364 Field 'x509_issuer' doesn't have a default value
-Warning 1364 Field 'x509_subject' doesn't have a default value
-select select_priv,user from mysql.user where user = _binary'blafasel2';
-select_priv user
-N blafasel2
-update mysql.user set Select_priv = "Y" where User= _binary"blafasel2";
-select select_priv,user from mysql.user where user = _binary'blafasel2';
-select_priv user
-Y blafasel2
-select n from t1;
-n
-3456
-select select_priv,user from mysql.user where user = _binary'blafasel2';
-select_priv user
-Y blafasel2
-drop table t1;
-delete from mysql.user where user="blafasel2";
diff --git a/mysql-test/r/rpl000002.result b/mysql-test/r/rpl000002.result
deleted file mode 100644
index e5e661795fe..00000000000
--- a/mysql-test/r/rpl000002.result
+++ /dev/null
@@ -1,46 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int auto_increment primary key);
-set insert_id = 2000;
-insert into t1 values (NULL),(NULL),(NULL);
-select * from t1;
-n
-2000
-2001
-2002
-show slave hosts;
-Server_id Host Port Rpl_recovery_rank Master_id
-2 127.0.0.1 9999 2 1
-drop table t1;
-stop slave;
-create table t2(id int auto_increment primary key, created datetime);
-set timestamp=12345;
-insert into t2 set created=now();
-select * from t2;
-id created
-1 1970-01-01 06:25:45
-create table t3 like t2;
-create temporary table t4 like t2;
-create table t5 select * from t4;
-start slave;
-select * from t2;
-id created
-1 1970-01-01 06:25:45
-show create table t3;
-Table Create Table
-t3 CREATE TABLE `t3` (
- `id` int(11) NOT NULL auto_increment,
- `created` datetime default NULL,
- PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-show create table t5;
-Table Create Table
-t5 CREATE TABLE `t5` (
- `id` int(11) NOT NULL default '0',
- `created` datetime default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-drop table t2,t3,t5;
diff --git a/mysql-test/r/rpl000004.a.result b/mysql-test/r/rpl000004.a.result
deleted file mode 100644
index 694d7429a14..00000000000
--- a/mysql-test/r/rpl000004.a.result
+++ /dev/null
@@ -1,2 +0,0 @@
-Table Op Msg_type Msg_text
-test.t1 check status OK
diff --git a/mysql-test/r/rpl000004.b.result b/mysql-test/r/rpl000004.b.result
deleted file mode 100644
index 7e05933909e..00000000000
--- a/mysql-test/r/rpl000004.b.result
+++ /dev/null
@@ -1,2 +0,0 @@
-count(*)
-10
diff --git a/mysql-test/r/rpl000004.result b/mysql-test/r/rpl000004.result
deleted file mode 100644
index e25a48939e3..00000000000
--- a/mysql-test/r/rpl000004.result
+++ /dev/null
@@ -1,28 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set SQL_LOG_BIN=0;
-create table t1 (word char(20) not null, index(word));
-load data infile '../std_data_ln/words.dat' into table t1;
-create table t2 (word char(20) not null);
-load data infile '../std_data_ln/words.dat' into table t2;
-create table t3 (word char(20) not null primary key);
-load table t1 from master;
-load table t2 from master;
-load table t3 from master;
-check table t1;
-Table Op Msg_type Msg_text
-test.t1 check status OK
-select count(*) from t2;
-count(*)
-70
-select count(*) from t3;
-count(*)
-0
-set SQL_LOG_BIN=1;
-drop table if exists t1,t2,t3;
-create table t1(n int);
-drop table t1;
diff --git a/mysql-test/r/rpl000005.result b/mysql-test/r/rpl000005.result
deleted file mode 100644
index 8acfa2cbfac..00000000000
--- a/mysql-test/r/rpl000005.result
+++ /dev/null
@@ -1,25 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-SHOW VARIABLES LIKE 'relay_log_space_limit';
-Variable_name Value
-relay_log_space_limit 0
-CREATE TABLE t1 (name varchar(64), age smallint(3));
-INSERT INTO t1 SET name='Andy', age=31;
-INSERT t1 SET name='Jacob', age=2;
-INSERT into t1 SET name='Caleb', age=1;
-ALTER TABLE t1 ADD id int(8) ZEROFILL AUTO_INCREMENT PRIMARY KEY;
-select * from t1;
-name age id
-Andy 31 00000001
-Jacob 2 00000002
-Caleb 1 00000003
-select * from t1;
-name age id
-Andy 31 00000001
-Jacob 2 00000002
-Caleb 1 00000003
-drop table t1;
diff --git a/mysql-test/r/rpl000006.result b/mysql-test/r/rpl000006.result
deleted file mode 100644
index e4c2006c2f0..00000000000
--- a/mysql-test/r/rpl000006.result
+++ /dev/null
@@ -1,29 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set SQL_LOG_BIN=0,timestamp=200006;
-create table t1(t timestamp not null,a char(1));
-insert into t1 ( a) values ('F');
-select unix_timestamp(t) from t1;
-unix_timestamp(t)
-200006
-load table t1 from master;
-select unix_timestamp(t) from t1;
-unix_timestamp(t)
-200006
-set SQL_LOG_BIN=1,timestamp=default;
-drop table t1;
-set SQL_LOG_BIN=0;
-CREATE TABLE t1 (
-a int not null
-) ENGINE=MyISAM MAX_ROWS=4000 CHECKSUM=1;
-INSERT INTO t1 VALUES (1);
-load table t1 from master;
-check table t1;
-Table Op Msg_type Msg_text
-test.t1 check status OK
-drop table t1;
-drop table t1;
diff --git a/mysql-test/r/rpl000008.result b/mysql-test/r/rpl000008.result
deleted file mode 100644
index a88a3c690ed..00000000000
--- a/mysql-test/r/rpl000008.result
+++ /dev/null
@@ -1,23 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-use test;
-drop table if exists mysqltest_foo;
-drop table if exists mysqltest_bar;
-create table mysqltest_foo (n int);
-insert into mysqltest_foo values(4);
-use test;
-create table mysqltest_foo (n int);
-insert into mysqltest_foo values(5);
-create table mysqltest_bar (m int);
-insert into mysqltest_bar values(15);
-create table t1 (k int);
-insert into t1 values(55);
-select mysqltest_foo.n,mysqltest_bar.m,t1.k from mysqltest_foo,mysqltest_bar,t1;
-n m k
-4 15 55
-drop table mysqltest_foo,mysqltest_bar,t1;
-drop table mysqltest_foo,mysqltest_bar,t1;
diff --git a/mysql-test/r/rpl000009.result b/mysql-test/r/rpl000009.result
deleted file mode 100644
index a4dbf54f39b..00000000000
--- a/mysql-test/r/rpl000009.result
+++ /dev/null
@@ -1,139 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest;
-drop database if exists mysqltest2;
-drop database if exists mysqltest3;
-drop database if exists mysqltest;
-drop database if exists mysqltest2;
-drop database if exists mysqltest3;
-create database mysqltest2;
-create database mysqltest;
-create database mysqltest2;
-create table mysqltest2.foo (n int);
-insert into mysqltest2.foo values(4);
-create table mysqltest2.foo (n int);
-insert into mysqltest2.foo values(5);
-create table mysqltest.bar (m int);
-insert into mysqltest.bar values(15);
-select mysqltest2.foo.n,mysqltest.bar.m from mysqltest2.foo,mysqltest.bar;
-n m
-4 15
-drop database mysqltest;
-drop database if exists mysqltest2;
-drop database mysqltest;
-ERROR HY000: Can't drop database 'mysqltest'; database doesn't exist
-drop database mysqltest2;
-set sql_log_bin = 0;
-create database mysqltest2;
-create database mysqltest;
-show databases;
-Database
-information_schema
-mysql
-mysqltest
-mysqltest2
-test
-create table mysqltest2.t1(n int, s char(20));
-create table mysqltest2.t2(n int, s text);
-insert into mysqltest2.t1 values (1, 'one'), (2, 'two'), (3, 'three');
-insert into mysqltest2.t2 values (11, 'eleven'), (12, 'twelve'), (13, 'thirteen');
-create table mysqltest.t1(n int, s char(20));
-create table mysqltest.t2(n int, s text);
-insert into mysqltest.t1 values (1, 'one test'), (2, 'two test'), (3, 'three test');
-insert into mysqltest.t2 values (11, 'eleven test'), (12, 'twelve test'),
-(13, 'thirteen test');
-set sql_log_bin = 1;
-show databases;
-Database
-information_schema
-mysql
-test
-create database mysqltest2;
-create table mysqltest2.t1(n int, s char(20));
-insert into mysqltest2.t1 values (1, 'original foo.t1');
-create table mysqltest2.t3(n int, s char(20));
-insert into mysqltest2.t3 values (1, 'original foo.t3');
-create database mysqltest3;
-create table mysqltest3.t1(n int, s char(20));
-insert into mysqltest3.t1 values (1, 'original foo2.t1');
-create database mysqltest;
-create table mysqltest.t1(n int, s char(20));
-insert into mysqltest.t1 values (1, 'original bar.t1');
-create table mysqltest.t3(n int, s char(20));
-insert into mysqltest.t3 values (1, 'original bar.t3');
-load data from master;
-show databases;
-Database
-information_schema
-mysql
-mysqltest
-mysqltest2
-mysqltest3
-test
-use mysqltest2;
-show tables;
-Tables_in_mysqltest2
-t1
-t3
-select * from t1;
-n s
-1 original foo.t1
-use mysqltest3;
-show tables;
-Tables_in_mysqltest3
-t1
-select * from t1;
-n s
-1 original foo2.t1
-use mysqltest;
-show tables;
-Tables_in_mysqltest
-t1
-t2
-t3
-select * from mysqltest.t1;
-n s
-1 one test
-2 two test
-3 three test
-select * from mysqltest.t2;
-n s
-11 eleven test
-12 twelve test
-13 thirteen test
-select * from mysqltest.t3;
-n s
-1 original bar.t3
-insert into mysqltest.t1 values (4, 'four test');
-select * from mysqltest.t1;
-n s
-1 one test
-2 two test
-3 three test
-4 four test
-stop slave;
-reset slave;
-load data from master;
-start slave;
-insert into mysqltest.t1 values (5, 'five bar');
-select * from mysqltest.t1;
-n s
-1 one test
-2 two test
-3 three test
-4 four test
-5 five bar
-load table mysqltest.t1 from master;
-ERROR 42S01: Table 't1' already exists
-drop table mysqltest.t1;
-load table mysqltest.t1 from master;
-load table bar.t1 from master;
-ERROR HY000: Error from master: 'Table 'bar.t1' doesn't exist'
-drop database mysqltest;
-drop database mysqltest2;
-drop database mysqltest2;
-drop database mysqltest3;
diff --git a/mysql-test/r/rpl000010.result b/mysql-test/r/rpl000010.result
deleted file mode 100644
index 65191ea411f..00000000000
--- a/mysql-test/r/rpl000010.result
+++ /dev/null
@@ -1,14 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int not null auto_increment primary key);
-insert into t1 values(NULL);
-insert into t1 values(2);
-select n from t1;
-n
-1
-2
-drop table t1;
diff --git a/mysql-test/r/rpl000011.result b/mysql-test/r/rpl000011.result
deleted file mode 100644
index dd0fa2fbe74..00000000000
--- a/mysql-test/r/rpl000011.result
+++ /dev/null
@@ -1,16 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int);
-insert into t1 values(1);
-stop slave;
-start slave;
-insert into t1 values(2);
-select * from t1;
-n
-1
-2
-drop table t1;
diff --git a/mysql-test/r/rpl000012.result b/mysql-test/r/rpl000012.result
deleted file mode 100644
index 17fb53010ab..00000000000
--- a/mysql-test/r/rpl000012.result
+++ /dev/null
@@ -1,37 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t2 (n int);
-create temporary table t1 (n int);
-insert into t1 values(1),(2),(3);
-insert into t2 select * from t1;
-create temporary table t3 (n int not null);
-alter table t3 add primary key(n);
-flush logs;
-insert into t3 values (100);
-insert into t2 select * from t3;
-drop table if exists t3;
-insert into t2 values (101);
-create temporary table t1 (n int);
-insert into t1 values (4),(5);
-insert into t2 select * from t1;
-insert into t2 values(6);
-select * from t2;
-n
-1
-2
-3
-100
-101
-4
-5
-6
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 0
-drop table if exists t1,t2;
-Warnings:
-Note 1051 Unknown table 't1'
diff --git a/mysql-test/r/rpl000013.result b/mysql-test/r/rpl000013.result
deleted file mode 100644
index 37838bb88e0..00000000000
--- a/mysql-test/r/rpl000013.result
+++ /dev/null
@@ -1,28 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t2(n int);
-create temporary table t1 (n int);
-insert into t1 values(1),(2),(3);
-insert into t2 select * from t1;
-create temporary table t1 (n int);
-insert into t1 values (4),(5);
-insert into t2 select * from t1 as t10;
-insert into t2 values(6);
-select * from t2;
-n
-1
-2
-3
-4
-5
-6
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 0
-drop table if exists t1,t2;
-Warnings:
-Note 1051 Unknown table 't1'
diff --git a/mysql-test/r/rpl000015.result b/mysql-test/r/rpl000015.result
deleted file mode 100644
index 080ef436a2e..00000000000
--- a/mysql-test/r/rpl000015.result
+++ /dev/null
@@ -1,29 +0,0 @@
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
-reset slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-change master to master_host='127.0.0.1';
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 test DEFAULT_MASTER_PORT 7 4 # # No No 0 0 0 # None 0 No #
-change master to master_host='127.0.0.1',master_user='root',
-master_password='',master_port=MASTER_PORT;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 7 4 # # No No 0 0 0 # None 0 No #
-start slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 7 master-bin.000001 98 # # master-bin.000001 Yes Yes 0 0 98 # None 0 No #
-drop table if exists t1;
-create table t1 (n int);
-insert into t1 values (10),(45),(90);
-select * from t1;
-n
-10
-45
-90
-drop table t1;
diff --git a/mysql-test/r/rpl000017.result b/mysql-test/r/rpl000017.result
deleted file mode 100644
index 7a283699370..00000000000
--- a/mysql-test/r/rpl000017.result
+++ /dev/null
@@ -1,12 +0,0 @@
-reset master;
-grant replication slave on *.* to replicate@localhost identified by 'aaaaaaaaaaaaaaab';
-grant replication slave on *.* to replicate@127.0.0.1 identified by 'aaaaaaaaaaaaaaab';
-start slave;
-drop table if exists t1;
-create table t1(n int);
-insert into t1 values(24);
-select * from t1;
-n
-24
-drop table t1;
-delete from mysql.user where user="replicate";
diff --git a/mysql-test/r/rpl_EE_error.result b/mysql-test/r/rpl_EE_error.result
deleted file mode 100644
index f4765b4b13c..00000000000
--- a/mysql-test/r/rpl_EE_error.result
+++ /dev/null
@@ -1,18 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int) engine=myisam;
-flush tables;
-drop table if exists t1;
-Warnings:
-Error 2 Can't find file: 't1' (errno: 2)
-create table t1 (a int, unique(a)) engine=myisam;
-set sql_log_bin=0;
-insert into t1 values(2);
-set sql_log_bin=1;
-insert into t1 values(1),(2);
-ERROR 23000: Duplicate entry '2' for key 1
-drop table t1;
diff --git a/mysql-test/r/rpl_alter.result b/mysql-test/r/rpl_alter.result
deleted file mode 100644
index 6ef5ce3462a..00000000000
--- a/mysql-test/r/rpl_alter.result
+++ /dev/null
@@ -1,21 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest;
-create database mysqltest;
-create table mysqltest.t1 ( n int);
-alter table mysqltest.t1 add m int;
-insert into mysqltest.t1 values (1,2);
-create table mysqltest.t2 (n int);
-insert into mysqltest.t2 values (45);
-rename table mysqltest.t2 to mysqltest.t3, mysqltest.t1 to mysqltest.t2;
-select * from mysqltest.t2;
-n m
-1 2
-select * from mysqltest.t3;
-n
-45
-drop database mysqltest;
diff --git a/mysql-test/r/rpl_auto_increment.result b/mysql-test/r/rpl_auto_increment.result
deleted file mode 100644
index ea4815e5e64..00000000000
--- a/mysql-test/r/rpl_auto_increment.result
+++ /dev/null
@@ -1,229 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int not null auto_increment,b int, primary key (a)) engine=myisam auto_increment=3;
-insert into t1 values (NULL,1),(NULL,2),(NULL,3);
-select * from t1;
-a b
-12 1
-22 2
-32 3
-select * from t1;
-a b
-12 1
-22 2
-32 3
-drop table t1;
-create table t1 (a int not null auto_increment,b int, primary key (a)) engine=myisam;
-insert into t1 values (1,1),(NULL,2),(3,3),(NULL,4);
-delete from t1 where b=4;
-insert into t1 values (NULL,5),(NULL,6);
-select * from t1;
-a b
-1 1
-2 2
-3 3
-22 5
-32 6
-select * from t1;
-a b
-1 1
-2 2
-3 3
-22 5
-32 6
-drop table t1;
-set @@session.auto_increment_increment=100, @@session.auto_increment_offset=10;
-show variables like "%auto_inc%";
-Variable_name Value
-auto_increment_increment 100
-auto_increment_offset 10
-create table t1 (a int not null auto_increment, primary key (a)) engine=myisam;
-insert into t1 values (NULL),(5),(NULL);
-insert into t1 values (250),(NULL);
-select * from t1;
-a
-5
-10
-110
-250
-310
-insert into t1 values (1000);
-set @@insert_id=400;
-insert into t1 values(NULL),(NULL);
-select * from t1;
-a
-5
-10
-110
-250
-310
-400
-410
-1000
-select * from t1;
-a
-5
-10
-110
-250
-310
-400
-410
-1000
-drop table t1;
-create table t1 (a int not null auto_increment, primary key (a)) engine=innodb;
-insert into t1 values (NULL),(5),(NULL);
-insert into t1 values (250),(NULL);
-select * from t1;
-a
-5
-10
-110
-250
-310
-insert into t1 values (1000);
-set @@insert_id=400;
-insert into t1 values(NULL),(NULL);
-select * from t1;
-a
-5
-10
-110
-250
-310
-400
-410
-1000
-select * from t1;
-a
-5
-10
-110
-250
-310
-400
-410
-1000
-drop table t1;
-set @@session.auto_increment_increment=1, @@session.auto_increment_offset=1;
-create table t1 (a int not null auto_increment, primary key (a)) engine=myisam;
-insert into t1 values (NULL),(5),(NULL),(NULL);
-insert into t1 values (500),(NULL),(502),(NULL),(NULL);
-select * from t1;
-a
-1
-5
-6
-7
-500
-501
-502
-503
-504
-set @@insert_id=600;
-insert into t1 values(600),(NULL),(NULL);
-ERROR 23000: Duplicate entry '600' for key 1
-set @@insert_id=600;
-insert ignore into t1 values(600),(NULL),(NULL),(610),(NULL);
-select * from t1;
-a
-1
-5
-6
-7
-500
-501
-502
-503
-504
-600
-610
-611
-select * from t1;
-a
-1
-5
-6
-7
-500
-501
-502
-503
-504
-600
-610
-611
-drop table t1;
-set @@session.auto_increment_increment=10, @@session.auto_increment_offset=1;
-create table t1 (a int not null auto_increment, primary key (a)) engine=myisam;
-insert into t1 values(2),(12),(22),(32),(42);
-insert into t1 values (NULL),(NULL);
-insert into t1 values (3),(NULL),(NULL);
-select * from t1;
-a
-1
-3
-11
-21
-31
-select * from t1;
-a
-1
-2
-3
-11
-12
-21
-22
-31
-32
-42
-drop table t1;
-create table t1 (a tinyint not null auto_increment primary key) engine=myisam;
-insert into t1 values(103);
-set auto_increment_increment=11;
-set auto_increment_offset=4;
-insert into t1 values(null);
-insert into t1 values(null);
-insert into t1 values(null);
-ERROR 23000: Duplicate entry '125' for key 1
-select a, mod(a-@@auto_increment_offset,@@auto_increment_increment) from t1 order by a;
-a mod(a-@@auto_increment_offset,@@auto_increment_increment)
-103 0
-114 0
-125 0
-create table t2 (a tinyint unsigned not null auto_increment primary key) engine=myisam;
-set auto_increment_increment=10;
-set auto_increment_offset=1;
-set insert_id=1000;
-insert into t2 values(null);
-Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-select a, mod(a-@@auto_increment_offset,@@auto_increment_increment) from t2 order by a;
-a mod(a-@@auto_increment_offset,@@auto_increment_increment)
-251 0
-create table t3 like t1;
-set auto_increment_increment=1000;
-set auto_increment_offset=700;
-insert into t3 values(null);
-Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-select * from t3 order by a;
-a
-127
-select * from t1 order by a;
-a
-103
-114
-125
-select * from t2 order by a;
-a
-251
-select * from t3 order by a;
-a
-127
-drop table t1,t2,t3;
diff --git a/mysql-test/r/rpl_auto_increment_11932.result b/mysql-test/r/rpl_auto_increment_11932.result
deleted file mode 100644
index 25eda6ee454..00000000000
--- a/mysql-test/r/rpl_auto_increment_11932.result
+++ /dev/null
@@ -1,47 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists test1;
-create database test1;
-use test1;
-CREATE TABLE `t1` (
-`id` int(10) unsigned NOT NULL auto_increment,
-`fname` varchar(100) default NULL,
-PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
-INSERT INTO `t1` VALUES (1, 'blablabla');
-CREATE TABLE `t2` (
-`id` int(10) NOT NULL auto_increment,
-`comment` varchar(255) NOT NULL default '',
-PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=3 ;
-INSERT INTO `t2` VALUES (1, 'testtest 1');
-INSERT INTO `t2` VALUES (2, 'test 2');
-CREATE PROCEDURE simpleproc3 ()
-NOT DETERMINISTIC
-BEGIN
-INSERT INTO t1 (fname) (SELECT t2.comment FROM t2 WHERE t2.id = '1');
-INSERT INTO t1 (fname) VALUES('test');
-END
-$
-CALL simpleproc3();
-select * from t2;
-id comment
-1 testtest 1
-2 test 2
-TRUNCATE TABLE `t1`;
-CALL simpleproc3();
-select * from t1;
-id fname
-1 testtest 1
-2 test
-use test1;
-select * from t1;
-id fname
-1 testtest 1
-2 test
-drop database test1;
-drop database test1;
diff --git a/mysql-test/r/rpl_auto_increment_bug33029.result b/mysql-test/r/rpl_auto_increment_bug33029.result
deleted file mode 100644
index fb17553f5a0..00000000000
--- a/mysql-test/r/rpl_auto_increment_bug33029.result
+++ /dev/null
@@ -1,165 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-DROP TABLE IF EXISTS t1, t2;
-DROP PROCEDURE IF EXISTS p1;
-DROP PROCEDURE IF EXISTS p2;
-DROP TRIGGER IF EXISTS tr1;
-DROP FUNCTION IF EXISTS f1;
-CREATE TABLE t1 (id INT AUTO_INCREMENT PRIMARY KEY);
-CREATE TABLE t2 (id INT AUTO_INCREMENT PRIMARY KEY);
-CREATE PROCEDURE p1()
-BEGIN
-DECLARE ins_count INT DEFAULT 10;
-WHILE ins_count > 0 DO
-INSERT INTO t1 VALUES (NULL);
-SET ins_count = ins_count - 1;
-END WHILE;
-DELETE FROM t1 WHERE id = 1;
-DELETE FROM t1 WHERE id = 2;
-DELETE FROM t2 WHERE id = 1;
-DELETE FROM t2 WHERE id = 2;
-END//
-CREATE PROCEDURE p2()
-BEGIN
-INSERT INTO t1 VALUES (NULL);
-DELETE FROM t1 WHERE id = f1(3);
-DELETE FROM t1 WHERE id = f1(4);
-DELETE FROM t2 WHERE id = 3;
-DELETE FROM t2 WHERE id = 4;
-END//
-CREATE TRIGGER tr1 BEFORE DELETE
-ON t1 FOR EACH ROW
-BEGIN
-INSERT INTO t2 VALUES (NULL);
-END//
-CREATE FUNCTION f1 (i int) RETURNS int
-BEGIN
-INSERT INTO t2 VALUES (NULL);
-RETURN i;
-END//
-CALL p1();
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Intvar # # INSERT_ID=1
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=2
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=3
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=4
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=5
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=6
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=7
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=8
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=9
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Intvar # # INSERT_ID=10
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Query # # use `test`; DELETE FROM t1 WHERE id = 1
-master-bin.000001 # Query # # use `test`; DELETE FROM t1 WHERE id = 2
-master-bin.000001 # Query # # use `test`; DELETE FROM t2 WHERE id = 1
-master-bin.000001 # Query # # use `test`; DELETE FROM t2 WHERE id = 2
-# Result on master
-SELECT * FROM t1;
-id
-3
-4
-5
-6
-7
-8
-9
-10
-SELECT * FROM t2;
-id
-# Result on slave
-SELECT * FROM t1;
-id
-3
-4
-5
-6
-7
-8
-9
-10
-SELECT * FROM t2;
-id
-DROP TRIGGER tr1;
-CALL p2();
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Intvar # # INSERT_ID=11
-master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (NULL)
-master-bin.000001 # Query # # use `test`; DELETE FROM t1 WHERE id = f1(3)
-master-bin.000001 # Query # # use `test`; DELETE FROM t1 WHERE id = f1(4)
-master-bin.000001 # Query # # use `test`; DELETE FROM t2 WHERE id = 3
-master-bin.000001 # Query # # use `test`; DELETE FROM t2 WHERE id = 4
-# Result on master
-SELECT * FROM t1;
-id
-5
-6
-7
-8
-9
-10
-11
-SELECT * FROM t2;
-id
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-# Result on slave
-SELECT * FROM t1;
-id
-5
-6
-7
-8
-9
-10
-11
-SELECT * FROM t2;
-id
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-DROP TABLE IF EXISTS t1, t2;
-DROP PROCEDURE IF EXISTS p1;
-DROP PROCEDURE IF EXISTS p2;
-DROP FUNCTION IF EXISTS f1;
-DROP TRIGGER IF EXISTS tr1;
diff --git a/mysql-test/r/rpl_begin_commit_rollback.result b/mysql-test/r/rpl_begin_commit_rollback.result
deleted file mode 100644
index 23736804784..00000000000
--- a/mysql-test/r/rpl_begin_commit_rollback.result
+++ /dev/null
@@ -1,109 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-DROP DATABASE IF EXISTS db1;
-CREATE DATABASE db1;
-use db1;
-CREATE TABLE db1.t1 (a INT) ENGINE=InnoDB;
-CREATE TABLE db1.t2 (s CHAR(255)) ENGINE=MyISAM;
-include/stop_slave.inc
-[on master]
-CREATE PROCEDURE db1.p1 ()
-BEGIN
-INSERT INTO t1 VALUES (1);
-INSERT INTO t1 VALUES (2);
-INSERT INTO t1 VALUES (3);
-INSERT INTO t1 VALUES (4);
-INSERT INTO t1 VALUES (5);
-END//
-CREATE PROCEDURE db1.p2 ()
-BEGIN
-INSERT INTO t1 VALUES (6);
-INSERT INTO t1 VALUES (7);
-INSERT INTO t1 VALUES (8);
-INSERT INTO t1 VALUES (9);
-INSERT INTO t1 VALUES (10);
-INSERT INTO t2 VALUES ('executed db1.p2()');
-END//
-INSERT INTO db1.t2 VALUES ('before call db1.p1()');
-use test;
-BEGIN;
-CALL db1.p1();
-COMMIT;
-INSERT INTO db1.t2 VALUES ('after call db1.p1()');
-SELECT * FROM db1.t1;
-a
-1
-2
-3
-4
-5
-SELECT * FROM db1.t2;
-s
-before call db1.p1()
-after call db1.p1()
-[on slave]
-start slave until master_log_file='master-bin.000001', master_log_pos=MASTER_POS;
-#
-# If we got non-zero here, then we're suffering BUG#43263
-#
-SELECT 0 as 'Must be 0';
-Must be 0
-0
-SELECT * from db1.t1;
-a
-1
-2
-3
-4
-5
-SELECT * from db1.t2;
-s
-before call db1.p1()
-[on master]
-INSERT INTO db1.t2 VALUES ('before call db1.p2()');
-BEGIN;
-CALL db1.p2();
-ROLLBACK;
-INSERT INTO db1.t2 VALUES ('after call db1.p2()');
-SELECT * FROM db1.t1;
-a
-1
-2
-3
-4
-5
-SELECT * FROM db1.t2;
-s
-before call db1.p1()
-after call db1.p1()
-before call db1.p2()
-executed db1.p2()
-after call db1.p2()
-[on slave]
-start slave until master_log_file='master-bin.000001', master_log_pos=MASTER_POS;
-#
-# If we got non-zero here, then we're suffering BUG#43263
-#
-SELECT 0 as 'Must be 0';
-Must be 0
-0
-SELECT * from db1.t1;
-a
-1
-2
-3
-4
-5
-SELECT * from db1.t2;
-s
-before call db1.p1()
-executed db1.p2()
-#
-# Clean up
-#
-DROP DATABASE db1;
-DROP DATABASE db1;
diff --git a/mysql-test/r/rpl_bug33931.result b/mysql-test/r/rpl_bug33931.result
deleted file mode 100644
index 519bd73aa6a..00000000000
--- a/mysql-test/r/rpl_bug33931.result
+++ /dev/null
@@ -1,38 +0,0 @@
-reset master;
-stop slave;
-reset slave;
-start slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File
-Read_Master_Log_Pos 4
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 0
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
diff --git a/mysql-test/r/rpl_bug38694.result b/mysql-test/r/rpl_bug38694.result
deleted file mode 100644
index 711c4a91c03..00000000000
--- a/mysql-test/r/rpl_bug38694.result
+++ /dev/null
@@ -1,6 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
diff --git a/mysql-test/r/rpl_change_master.result b/mysql-test/r/rpl_change_master.result
deleted file mode 100644
index 98c42069470..00000000000
--- a/mysql-test/r/rpl_change_master.result
+++ /dev/null
@@ -1,88 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1(n int);
-select * from t1;
-n
-stop slave sql_thread;
-insert into t1 values(1);
-insert into t1 values(2);
-stop slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 357
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 183
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-change master to master_user='root';
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 183
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 183
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-start slave;
-select * from t1;
-n
-1
-2
-drop table t1;
diff --git a/mysql-test/r/rpl_charset.result b/mysql-test/r/rpl_charset.result
deleted file mode 100644
index c77818d34ee..00000000000
--- a/mysql-test/r/rpl_charset.result
+++ /dev/null
@@ -1,292 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set timestamp=1000000000;
-drop database if exists mysqltest2;
-drop database if exists mysqltest3;
-create database mysqltest2 character set latin2;
-set @@character_set_server=latin5;
-create database mysqltest3;
-
---- --master--
-show create database mysqltest2;
-Database Create Database
-mysqltest2 CREATE DATABASE `mysqltest2` /*!40100 DEFAULT CHARACTER SET latin2 */
-show create database mysqltest3;
-Database Create Database
-mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET latin5 */
-
---- --slave--
-show create database mysqltest2;
-Database Create Database
-mysqltest2 CREATE DATABASE `mysqltest2` /*!40100 DEFAULT CHARACTER SET latin2 */
-show create database mysqltest3;
-Database Create Database
-mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET latin5 */
-set @@collation_server=armscii8_bin;
-drop database mysqltest3;
-create database mysqltest3;
-
---- --master--
-show create database mysqltest3;
-Database Create Database
-mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET armscii8 COLLATE armscii8_bin */
-
---- --slave--
-show create database mysqltest3;
-Database Create Database
-mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET armscii8 COLLATE armscii8_bin */
-use mysqltest2;
-create table t1 (a int auto_increment primary key, b varchar(100));
-set character_set_client=cp850, collation_connection=latin2_croatian_ci;
-insert into t1 (b) values(@@character_set_server);
-insert into t1 (b) values(@@collation_server);
-insert into t1 (b) values(@@character_set_client);
-insert into t1 (b) values(@@character_set_connection);
-insert into t1 (b) values(@@collation_connection);
-
---- --master--
-select * from t1 order by a;
-a b
-1 armscii8
-2 armscii8_bin
-3 cp850
-4 latin2
-5 latin2_croatian_ci
-
---- --slave--
-select * from mysqltest2.t1 order by a;
-a b
-1 armscii8
-2 armscii8_bin
-3 cp850
-4 latin2
-5 latin2_croatian_ci
-set character_set_client=latin1, collation_connection=latin1_german1_ci;
-truncate table t1;
-insert into t1 (b) values(@@collation_connection);
-insert into t1 (b) values(LEAST("Mller","Muffler"));
-set collation_connection=latin1_german2_ci;
-insert into t1 (b) values(@@collation_connection);
-insert into t1 (b) values(LEAST("Mller","Muffler"));
-
---- --master--
-select * from t1 order by a;
-a b
-1 latin1_german1_ci
-2 Muffler
-3 latin1_german2_ci
-4 Mller
-
---- --slave--
-select * from mysqltest2.t1 order by a;
-a b
-1 latin1_german1_ci
-2 Muffler
-3 latin1_german2_ci
-4 Mller
-set @a= _cp850 'Mller' collate cp850_general_ci;
-truncate table t1;
-insert into t1 (b) values(collation(@a));
-
---- --master--
-select * from t1 order by a;
-a b
-1 cp850_general_ci
-
---- --slave--
-select * from mysqltest2.t1 order by a;
-a b
-1 cp850_general_ci
-drop database mysqltest2;
-drop database mysqltest3;
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # drop database if exists mysqltest2
-master-bin.000001 # Query 1 # drop database if exists mysqltest3
-master-bin.000001 # Query 1 # create database mysqltest2 character set latin2
-master-bin.000001 # Query 1 # create database mysqltest3
-master-bin.000001 # Query 1 # drop database mysqltest3
-master-bin.000001 # Query 1 # create database mysqltest3
-master-bin.000001 # Query 1 # use `mysqltest2`; create table t1 (a int auto_increment primary key, b varchar(100))
-master-bin.000001 # Intvar 1 # INSERT_ID=1
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@character_set_server)
-master-bin.000001 # Intvar 1 # INSERT_ID=2
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_server)
-master-bin.000001 # Intvar 1 # INSERT_ID=3
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@character_set_client)
-master-bin.000001 # Intvar 1 # INSERT_ID=4
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@character_set_connection)
-master-bin.000001 # Intvar 1 # INSERT_ID=5
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_connection)
-master-bin.000001 # Query 1 # use `mysqltest2`; truncate table t1
-master-bin.000001 # Intvar 1 # INSERT_ID=1
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_connection)
-master-bin.000001 # Intvar 1 # INSERT_ID=2
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(LEAST("Mller","Muffler"))
-master-bin.000001 # Intvar 1 # INSERT_ID=3
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_connection)
-master-bin.000001 # Intvar 1 # INSERT_ID=4
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(LEAST("Mller","Muffler"))
-master-bin.000001 # Query 1 # use `mysqltest2`; truncate table t1
-master-bin.000001 # Intvar 1 # INSERT_ID=1
-master-bin.000001 # User var 1 # @`a`=_cp850 0x4DFC6C6C6572 COLLATE cp850_general_ci
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(collation(@a))
-master-bin.000001 # Query 1 # drop database mysqltest2
-master-bin.000001 # Query 1 # drop database mysqltest3
-set global character_set_server=latin2;
-set global character_set_server=latin1;
-set global character_set_server=latin2;
-set global character_set_server=latin1;
-set one_shot @@character_set_server=latin5;
-set @@max_join_size=1000;
-select @@character_set_server;
-@@character_set_server
-latin5
-select @@character_set_server;
-@@character_set_server
-latin1
-set @@character_set_server=latin5;
-select @@character_set_server;
-@@character_set_server
-latin5
-select @@character_set_server;
-@@character_set_server
-latin5
-set one_shot max_join_size=10;
-ERROR HY000: The 'SET ONE_SHOT' syntax is reserved for purposes internal to the MySQL server
-set character_set_client=9999999;
-ERROR 42000: Unknown character set: '9999999'
-set collation_server=9999998;
-ERROR HY000: Unknown collation: '9999998'
-use test;
-CREATE TABLE t1 (c1 VARBINARY(255), c2 VARBINARY(255));
-SET CHARACTER_SET_CLIENT=koi8r,
-CHARACTER_SET_CONNECTION=cp1251,
-CHARACTER_SET_RESULTS=koi8r;
-INSERT INTO t1 (c1, c2) VALUES (', ',', ');
-select hex(c1), hex(c2) from t1;
-hex(c1) hex(c2)
-CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3
-select hex(c1), hex(c2) from t1;
-hex(c1) hex(c2)
-CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3
-/*!40019 SET @@session.max_insert_delayed_threads=0*/;
-/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
-DELIMITER /*!*/;
-ROLLBACK/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
-SET @@session.sql_mode=0/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
-drop database if exists mysqltest2
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-drop database if exists mysqltest3
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-create database mysqltest2 character set latin2
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=30/*!*/;
-create database mysqltest3
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=64/*!*/;
-drop database mysqltest3
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-create database mysqltest3
-/*!*/;
-use mysqltest2/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-create table t1 (a int auto_increment primary key, b varchar(100))
-/*!*/;
-SET INSERT_ID=1/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C cp850 *//*!*/;
-SET @@session.character_set_client=4,@@session.collation_connection=27,@@session.collation_server=64/*!*/;
-insert into t1 (b) values(@@character_set_server)
-/*!*/;
-SET INSERT_ID=2/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(@@collation_server)
-/*!*/;
-SET INSERT_ID=3/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(@@character_set_client)
-/*!*/;
-SET INSERT_ID=4/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(@@character_set_connection)
-/*!*/;
-SET INSERT_ID=5/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(@@collation_connection)
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=5,@@session.collation_server=64/*!*/;
-truncate table t1
-/*!*/;
-SET INSERT_ID=1/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(@@collation_connection)
-/*!*/;
-SET INSERT_ID=2/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(LEAST("Mller","Muffler"))
-/*!*/;
-SET INSERT_ID=3/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=31,@@session.collation_server=64/*!*/;
-insert into t1 (b) values(@@collation_connection)
-/*!*/;
-SET INSERT_ID=4/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(LEAST("Mller","Muffler"))
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-truncate table t1
-/*!*/;
-SET INSERT_ID=1/*!*/;
-SET @`a`:=_cp850 0x4DFC6C6C6572 COLLATE `cp850_general_ci`/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-insert into t1 (b) values(collation(@a))
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-drop database mysqltest2
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-drop database mysqltest3
-/*!*/;
-use test/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=30/*!*/;
-CREATE TABLE t1 (c1 VARBINARY(255), c2 VARBINARY(255))
-/*!*/;
-SET TIMESTAMP=1000000000/*!*/;
-/*!\C koi8r *//*!*/;
-SET @@session.character_set_client=7,@@session.collation_connection=51,@@session.collation_server=30/*!*/;
-INSERT INTO t1 (c1, c2) VALUES (', ',', ')
-/*!*/;
-DELIMITER ;
-# End of log file
-ROLLBACK /* added by mysqlbinlog */;
-/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
-drop table t1;
-create table `t1` (
-`pk` varchar(10) not null default '',
-primary key (`pk`)
-) engine=myisam default charset=latin1;
-set @p=_latin1 'test';
-update t1 set pk='test' where pk=@p;
-drop table t1;
diff --git a/mysql-test/r/rpl_charset_sjis.result b/mysql-test/r/rpl_charset_sjis.result
deleted file mode 100644
index 770ad0588d1..00000000000
--- a/mysql-test/r/rpl_charset_sjis.result
+++ /dev/null
@@ -1,26 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1;
-drop procedure if exists p1;
-create table t1 (a varchar(255) character set sjis);
-create procedure p1 (in a varchar(255) character set sjis) insert into t1 values (a);
-SET NAMES binary;
-CALL p1 ('\\');
-select "--- on master ---";
---- on master ---
---- on master ---
-select hex(a) from t1 ;
-hex(a)
-965C
-select "--- on slave ---";
---- on slave ---
---- on slave ---
-select hex(a) from t1;
-hex(a)
-965C
-drop table t1;
-drop procedure p1;
diff --git a/mysql-test/r/rpl_colSize.result b/mysql-test/r/rpl_colSize.result
new file mode 100644
index 00000000000..91456742833
--- /dev/null
+++ b/mysql-test/r/rpl_colSize.result
@@ -0,0 +1,179 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+DROP TABLE IF EXISTS t1;
+**** Testing WL#3228 changes. ****
+*** Create "wider" table on slave ***
+STOP SLAVE;
+RESET SLAVE;
+CREATE TABLE t1 (
+a float (47),
+b double (143,9),
+c decimal (65,30),
+d numeric (4,0),
+e bit (32),
+f char (21),
+g varchar (1300),
+h binary (33),
+j varbinary (200),
+k enum ('5','6','7', '8','9','0'),
+l set ('1','2','3','4','5','6','7','8','9','0','11','12','13','14','15','16','17','18','19','21','22','23','24','25','26','27','28','29'),
+m TINYBLOB,
+n BLOB,
+o MEDIUMBLOB,
+p LONGBLOB,
+q TINYTEXT,
+r TEXT,
+s MEDIUMTEXT,
+t LONGTEXT
+);
+*** Create same table on master but with narrow columns ***
+CREATE TABLE t1 (
+a float (44),
+b double (10,3),
+c decimal (10,2),
+d numeric (3,0),
+e bit (16),
+f char (10),
+g varchar (100),
+h binary (20),
+j varbinary (20),
+k enum ('5','6','7'),
+l set ('1','2','3','4','5','6','7','8','9','0'),
+m TINYBLOB,
+n BLOB,
+o MEDIUMBLOB,
+p LONGBLOB,
+q TINYTEXT,
+r TEXT,
+s MEDIUMTEXT,
+t LONGTEXT
+);
+RESET MASTER;
+*** Start replication ***
+START SLAVE;
+*** Insert data on master and display it. ***
+INSERT INTO t1 () VALUES (
+17.567,
+2.123,
+10.20,
+125,
+hex(64),
+'TEST',
+'This is a test',
+'binary data',
+'more binary data',
+'6',
+'7',
+"blob 1",
+"blob 2",
+"blob 3",
+"blob 4",
+"text 1",
+"text 2",
+"text 3",
+"text 4");
+SELECT * FROM t1 ORDER BY a;
+a b c d e f g h j k l m n o p q r s t
+17.567 2.123 10.20 125 # TEST This is a test # more binary data 6 7 blob 1 blob 2 blob 3 blob 4 text 1 text 2 text 3 text 4
+*** Select data from slave to compare ***
+SELECT * FROM t1 ORDER BY a;
+a b c d e f g h j k l m n o p q r s t
+17.567 2.123000000 10.200000000000000000000000000000 125 # TEST This is a test # more binary data 6 7 blob 1 blob 2 blob 3 blob 4 text 1 text 2 text 3 text 4
+DROP TABLE t1;
+Create varchar table on master
+CREATE TABLE t1 (
+a VARCHAR(50),
+b VARCHAR(100),
+c VARCHAR(300),
+d CHAR(5)
+);
+Alter varchar table on slave
+ALTER TABLE t1 CHANGE COLUMN a a VARCHAR(100);
+ALTER TABLE t1 CHANGE COLUMN b b VARCHAR(400);
+ALTER TABLE t1 CHANGE COLUMN c c VARCHAR(500);
+ALTER TABLE t1 CHANGE COLUMN d d CHAR(100);
+Insert some values and select them on master
+INSERT INTO t1 VALUES ("This is a test of col a.",
+"This is another test of col b.",
+"This is a test of the large col c.",
+"Col d");
+SELECT * FROM t1;
+a b c d
+This is a test of col a. This is another test of col b. This is a test of the large col c. Col d
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(50) DEFAULT NULL,
+ `b` varchar(100) DEFAULT NULL,
+ `c` varchar(300) DEFAULT NULL,
+ `d` char(5) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+Insert some values and select them on slave
+SELECT * FROM t1;
+a b c d
+This is a test of col a. This is another test of col b. This is a test of the large col c. Col d
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(100) DEFAULT NULL,
+ `b` varchar(400) DEFAULT NULL,
+ `c` varchar(500) DEFAULT NULL,
+ `d` char(100) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE t1;
+Create bit table on master
+CREATE TABLE t1 (
+a BIT(7),
+b BIT(8),
+c BIT(21),
+d BIT(11),
+e BIT(11)
+);
+Create bit table on slave
+DROP TABLE t1;
+CREATE TABLE t1 (
+a BIT(16),
+b BIT(22),
+c BIT(54),
+d BIT(25),
+e BIT(13)
+);
+Insert some values and select them on master
+INSERT INTO t1 VALUES (
+b'1010101',
+b'10101011',
+b'101010110101010101111',
+b'10101010101',
+b'10101011111'
+ );
+SELECT BIN(a), BIN(b), BIN(c), BIN(d), BIN(e) FROM t1;
+BIN(a) BIN(b) BIN(c) BIN(d) BIN(e)
+1010101 10101011 101010110101010101111 10101010101 10101011111
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bit(7) DEFAULT NULL,
+ `b` bit(8) DEFAULT NULL,
+ `c` bit(21) DEFAULT NULL,
+ `d` bit(11) DEFAULT NULL,
+ `e` bit(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+Insert some values and select them on master
+SELECT BIN(a), BIN(b), BIN(c), BIN(d), BIN(e) FROM t1;
+BIN(a) BIN(b) BIN(c) BIN(d) BIN(e)
+1010101 10101011 101010110101010101111 10101010101 10101011111
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bit(16) DEFAULT NULL,
+ `b` bit(22) DEFAULT NULL,
+ `c` bit(54) DEFAULT NULL,
+ `d` bit(25) DEFAULT NULL,
+ `e` bit(13) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+*** Cleanup ***
+DROP TABLE t1;
diff --git a/mysql-test/r/rpl_commit_after_flush.result b/mysql-test/r/rpl_commit_after_flush.result
deleted file mode 100644
index d3aba779219..00000000000
--- a/mysql-test/r/rpl_commit_after_flush.result
+++ /dev/null
@@ -1,13 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int) engine=innodb;
-begin;
-insert into t1 values(1);
-flush tables with read lock;
-commit;
-unlock tables;
-drop table t1;
diff --git a/mysql-test/r/rpl_create_database.result b/mysql-test/r/rpl_create_database.result
deleted file mode 100644
index ca4585d0d8d..00000000000
--- a/mysql-test/r/rpl_create_database.result
+++ /dev/null
@@ -1,87 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-DROP DATABASE IF EXISTS mysqltest_prometheus;
-DROP DATABASE IF EXISTS mysqltest_sisyfos;
-DROP DATABASE IF EXISTS mysqltest_bob;
-DROP DATABASE IF EXISTS mysqltest_bob;
-CREATE DATABASE mysqltest_prometheus;
-CREATE DATABASE mysqltest_sisyfos;
-CREATE DATABASE mysqltest_bob;
-USE mysqltest_sisyfos;
-CREATE TABLE t1 (b int);
-INSERT INTO t1 VALUES(1);
-USE mysqltest_bob;
-CREATE TABLE t2 (b int);
-INSERT INTO t2 VALUES(2);
-ALTER DATABASE mysqltest_sisyfos CHARACTER SET latin1;
-USE mysqltest_sisyfos;
-ALTER DATABASE mysqltest_bob CHARACTER SET latin1;
-SHOW DATABASES;
-Database
-information_schema
-mysql
-mysqltest_bob
-mysqltest_prometheus
-mysqltest_sisyfos
-test
-SHOW DATABASES;
-Database
-information_schema
-mysql
-mysqltest_prometheus
-mysqltest_sisyfos
-test
-DROP DATABASE IF EXISTS mysqltest_sisyfos;
-USE mysqltest_prometheus;
-CREATE TABLE t1 (a INT);
-INSERT INTO t1 VALUES (1);
-CREATE DATABASE mysqltest_sisyfos;
-USE mysqltest_sisyfos;
-CREATE TABLE t2 (a INT);
-SHOW BINLOG EVENTS;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Format_desc 1 # Server ver: VERSION, Binlog ver: 4
-master-bin.000001 # Query 1 # DROP DATABASE IF EXISTS mysqltest_prometheus
-master-bin.000001 # Query 1 # DROP DATABASE IF EXISTS mysqltest_sisyfos
-master-bin.000001 # Query 1 # CREATE DATABASE mysqltest_prometheus
-master-bin.000001 # Query 1 # CREATE DATABASE mysqltest_sisyfos
-master-bin.000001 # Query 1 # use `mysqltest_sisyfos`; CREATE TABLE t1 (b int)
-master-bin.000001 # Query 1 # use `mysqltest_sisyfos`; INSERT INTO t1 VALUES(1)
-master-bin.000001 # Query 1 # ALTER DATABASE mysqltest_sisyfos CHARACTER SET latin1
-master-bin.000001 # Query 1 # DROP DATABASE IF EXISTS mysqltest_sisyfos
-master-bin.000001 # Query 1 # use `mysqltest_prometheus`; CREATE TABLE t1 (a INT)
-master-bin.000001 # Query 1 # use `mysqltest_prometheus`; INSERT INTO t1 VALUES (1)
-master-bin.000001 # Query 1 # CREATE DATABASE mysqltest_sisyfos
-master-bin.000001 # Query 1 # use `mysqltest_sisyfos`; CREATE TABLE t2 (a INT)
-SHOW DATABASES;
-Database
-information_schema
-mysql
-mysqltest_bob
-mysqltest_prometheus
-mysqltest_sisyfos
-test
-SHOW DATABASES;
-Database
-information_schema
-mysql
-mysqltest_prometheus
-mysqltest_sisyfos
-test
-SHOW CREATE TABLE mysqltest_prometheus.t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` int(11) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-SHOW CREATE TABLE mysqltest_sisyfos.t2;
-Table Create Table
-t2 CREATE TABLE `t2` (
- `a` int(11) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-DROP DATABASE IF EXISTS mysqltest_prometheus;
-DROP DATABASE IF EXISTS mysqltest_sisyfos;
-DROP DATABASE IF EXISTS mysqltest_bob;
diff --git a/mysql-test/r/rpl_critical_errors.result b/mysql-test/r/rpl_critical_errors.result
deleted file mode 100644
index bcc53565084..00000000000
--- a/mysql-test/r/rpl_critical_errors.result
+++ /dev/null
@@ -1 +0,0 @@
-Turn on parsing to run this test
diff --git a/mysql-test/r/rpl_critical_errors.result.txt b/mysql-test/r/rpl_critical_errors.result.txt
deleted file mode 100644
index 0df2e1ef369..00000000000
--- a/mysql-test/r/rpl_critical_errors.result.txt
+++ /dev/null
@@ -1,56 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 (data LONGBLOB) ENGINE=MYISAM;
-CREATE TABLE t2 (data LONGBLOB) ENGINE=MYISAM;
-INSERT INTO t1 (data) VALUES (repeat('a',1024*1024));
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t1 SELECT * FROM t1;
-INSERT INTO t2 SELECT * FROM t1;
-KILL QUERY 2;
-SELECT COUNT(*) FROM t2;
-COUNT(*)
-0
-SHOW SLAVE STATUS;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 1317
-Last_Error #
-Skip_Counter 0
-Exec_Master_Log_Pos #
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
diff --git a/mysql-test/r/rpl_ddl.result b/mysql-test/r/rpl_ddl.result
deleted file mode 100644
index 92e91b31459..00000000000
--- a/mysql-test/r/rpl_ddl.result
+++ /dev/null
@@ -1,1693 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-SET AUTOCOMMIT = 1;
-DROP DATABASE IF EXISTS mysqltest1;
-DROP DATABASE IF EXISTS mysqltest2;
-DROP DATABASE IF EXISTS mysqltest3;
-CREATE DATABASE mysqltest1;
-CREATE DATABASE mysqltest2;
-CREATE TABLE mysqltest1.t1 (f1 BIGINT) ENGINE= "InnoDB";
-INSERT INTO mysqltest1.t1 SET f1= 0;
-CREATE TABLE mysqltest1.t2 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t3 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t4 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t5 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t6 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE INDEX my_idx6 ON mysqltest1.t6(f1);
-CREATE TABLE mysqltest1.t7 (f1 BIGINT) ENGINE= "InnoDB";
-INSERT INTO mysqltest1.t7 SET f1= 0;
-CREATE TABLE mysqltest1.t8 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t9 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t10 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t11 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t12 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t13 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t14 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t15 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t16 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t17 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t18 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TABLE mysqltest1.t19 (f1 BIGINT) ENGINE= "InnoDB";
-CREATE TEMPORARY TABLE mysqltest1.t23 (f1 BIGINT);
-SET AUTOCOMMIT = 0;
-use mysqltest1;
-
--------- switch to slave --------
-SET AUTOCOMMIT = 0;
-use mysqltest1;
-
--------- switch to master -------
-
-######## COMMIT ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 0 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-0
-
--------- switch to master -------
-COMMIT;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## ROLLBACK ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 1 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
-TEST-INFO: MASTER: The INSERT is not committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
-TEST-INFO: SLAVE: The INSERT is not committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## SET AUTOCOMMIT=1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 1 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-1
-
--------- switch to master -------
-SET AUTOCOMMIT=1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SET AUTOCOMMIT=0;
-
-######## START TRANSACTION ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 2 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-3
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-2
-
--------- switch to master -------
-START TRANSACTION;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-3
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-3
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-3
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-3
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## BEGIN ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 3 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-4
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-3
-
--------- switch to master -------
-BEGIN;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-4
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-4
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-4
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-4
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## DROP TABLE mysqltest1.t2 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 4 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-4
-
--------- switch to master -------
-DROP TABLE mysqltest1.t2;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW TABLES LIKE 't2';
-Tables_in_mysqltest1 (t2)
-
--------- switch to slave --------
-SHOW TABLES LIKE 't2';
-Tables_in_mysqltest1 (t2)
-
--------- switch to master -------
-
-######## DROP TEMPORARY TABLE mysqltest1.t23 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 5 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
--------- switch to master -------
-DROP TEMPORARY TABLE mysqltest1.t23;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
--------- switch to master -------
-ROLLBACK;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-5
-
-TEST-INFO: MASTER: The INSERT is not committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW TABLES LIKE 't23';
-Tables_in_mysqltest1 (t23)
-
--------- switch to slave --------
-SHOW TABLES LIKE 't23';
-Tables_in_mysqltest1 (t23)
-
--------- switch to master -------
-
-######## RENAME TABLE mysqltest1.t3 to mysqltest1.t20 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 5 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to master -------
-RENAME TABLE mysqltest1.t3 to mysqltest1.t20;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW TABLES LIKE 't20';
-Tables_in_mysqltest1 (t20)
-t20
-
--------- switch to slave --------
-SHOW TABLES LIKE 't20';
-Tables_in_mysqltest1 (t20)
-t20
-
--------- switch to master -------
-
-######## ALTER TABLE mysqltest1.t4 ADD column f2 BIGINT ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 6 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-7
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-6
-
--------- switch to master -------
-ALTER TABLE mysqltest1.t4 ADD column f2 BIGINT;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-7
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-7
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-7
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-7
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-describe mysqltest1.t4;
-Field Type Null Key Default Extra
-f1 bigint(20) YES NULL
-f2 bigint(20) YES NULL
-
--------- switch to slave --------
-describe mysqltest1.t4;
-Field Type Null Key Default Extra
-f1 bigint(20) YES NULL
-f2 bigint(20) YES NULL
-
--------- switch to master -------
-
-######## CREATE TABLE mysqltest1.t21 (f1 BIGINT) ENGINE= "InnoDB" ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 7 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-7
-
--------- switch to master -------
-CREATE TABLE mysqltest1.t21 (f1 BIGINT) ENGINE= "InnoDB";
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## CREATE TEMPORARY TABLE mysqltest1.t22 (f1 BIGINT) ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 8 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
--------- switch to master -------
-CREATE TEMPORARY TABLE mysqltest1.t22 (f1 BIGINT);
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
--------- switch to master -------
-ROLLBACK;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-8
-
-TEST-INFO: MASTER: The INSERT is not committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## TRUNCATE TABLE mysqltest1.t7 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 8 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to master -------
-TRUNCATE TABLE mysqltest1.t7;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SELECT * FROM mysqltest1.t7;
-f1
-
--------- switch to slave --------
-SELECT * FROM mysqltest1.t7;
-f1
-
--------- switch to master -------
-
-######## LOCK TABLES mysqltest1.t1 WRITE, mysqltest1.t8 READ ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 9 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-9
-
--------- switch to master -------
-LOCK TABLES mysqltest1.t1 WRITE, mysqltest1.t8 READ;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-UNLOCK TABLES;
-
-######## UNLOCK TABLES ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 10 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to master -------
-UNLOCK TABLES;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
-TEST-INFO: MASTER: The INSERT is not committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
-TEST-INFO: SLAVE: The INSERT is not committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-LOCK TABLES mysqltest1.t1 READ;
-
-######## UNLOCK TABLES ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 10 + 1;
-ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to master -------
-UNLOCK TABLES;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
-TEST-INFO: MASTER: The INSERT is not committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
-TEST-INFO: SLAVE: The INSERT is not committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-LOCK TABLES mysqltest1.t1 WRITE, mysqltest1.t8 READ;
-
-######## UNLOCK TABLES ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 10 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-10
-
--------- switch to master -------
-UNLOCK TABLES;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-
-######## DROP INDEX my_idx6 ON mysqltest1.t6 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 11 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-12
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-11
-
--------- switch to master -------
-DROP INDEX my_idx6 ON mysqltest1.t6;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-12
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-12
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-12
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-12
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW INDEX FROM mysqltest1.t6;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-
--------- switch to slave --------
-SHOW INDEX FROM mysqltest1.t6;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-
--------- switch to master -------
-
-######## CREATE INDEX my_idx5 ON mysqltest1.t5(f1) ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 12 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-13
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-12
-
--------- switch to master -------
-CREATE INDEX my_idx5 ON mysqltest1.t5(f1);
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-13
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-13
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-13
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-13
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW INDEX FROM mysqltest1.t5;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t5 1 my_idx5 1 f1 A 0 NULL NULL YES BTREE
-
--------- switch to slave --------
-SHOW INDEX FROM mysqltest1.t5;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t5 1 my_idx5 1 f1 A NULL NULL NULL YES BTREE
-
--------- switch to master -------
-
-######## DROP DATABASE mysqltest2 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 13 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-14
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-13
-
--------- switch to master -------
-DROP DATABASE mysqltest2;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-14
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-14
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-14
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-14
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW DATABASES LIKE "mysqltest2";
-Database (mysqltest2)
-
--------- switch to slave --------
-SHOW DATABASES LIKE "mysqltest2";
-Database (mysqltest2)
-
--------- switch to master -------
-
-######## CREATE DATABASE mysqltest3 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 14 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-15
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-14
-
--------- switch to master -------
-CREATE DATABASE mysqltest3;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-15
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-15
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-15
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-15
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW DATABASES LIKE "mysqltest3";
-Database (mysqltest3)
-mysqltest3
-
--------- switch to slave --------
-SHOW DATABASES LIKE "mysqltest3";
-Database (mysqltest3)
-mysqltest3
-
--------- switch to master -------
-
-######## CREATE PROCEDURE p1() READS SQL DATA SELECT "this is p1" ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 15 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-16
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-15
-
--------- switch to master -------
-CREATE PROCEDURE p1() READS SQL DATA SELECT "this is p1";
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-16
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-16
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-16
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-16
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW PROCEDURE STATUS LIKE 'p1';
-Db mysqltest1
-Name p1
-Type PROCEDURE
-Definer root@localhost
-Modified #
-Created #
-Security_type DEFINER
-Comment
- -------- switch to slave -------
-SHOW PROCEDURE STATUS LIKE 'p1';
-Db mysqltest1
-Name p1
-Type PROCEDURE
-Definer root@localhost
-Modified #
-Created #
-Security_type DEFINER
-Comment
-
-######## ALTER PROCEDURE p1 COMMENT "I have been altered" ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 16 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-17
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-16
-
--------- switch to master -------
-ALTER PROCEDURE p1 COMMENT "I have been altered";
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-17
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-17
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-17
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-17
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW PROCEDURE STATUS LIKE 'p1';
-Db mysqltest1
-Name p1
-Type PROCEDURE
-Definer root@localhost
-Modified #
-Created #
-Security_type DEFINER
-Comment I have been altered
- -------- switch to slave -------
-SHOW PROCEDURE STATUS LIKE 'p1';
-Db mysqltest1
-Name p1
-Type PROCEDURE
-Definer root@localhost
-Modified #
-Created #
-Security_type DEFINER
-Comment I have been altered
-
-######## DROP PROCEDURE p1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 17 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-18
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-17
-
--------- switch to master -------
-DROP PROCEDURE p1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-18
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-18
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-18
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-18
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW PROCEDURE STATUS LIKE 'p1';
- -------- switch to slave -------
-SHOW PROCEDURE STATUS LIKE 'p1';
-
-######## CREATE OR REPLACE VIEW v1 as select * from t1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 18 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-19
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-18
-
--------- switch to master -------
-CREATE OR REPLACE VIEW v1 as select * from t1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-19
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-19
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-19
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-19
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`
-
--------- switch to slave -------
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`
-
-######## ALTER VIEW v1 AS select f1 from t1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 19 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-20
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-19
-
--------- switch to master -------
-ALTER VIEW v1 AS select f1 from t1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-20
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-20
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-20
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-20
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`
-
--------- switch to slave -------
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`
-
-######## DROP VIEW IF EXISTS v1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 20 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-21
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-20
-
--------- switch to master -------
-DROP VIEW IF EXISTS v1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-21
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-21
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-21
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-21
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW CREATE VIEW v1;
-ERROR 42S02: Table 'mysqltest1.v1' doesn't exist
-
--------- switch to slave -------
-SHOW CREATE VIEW v1;
-ERROR 42S02: Table 'mysqltest1.v1' doesn't exist
-
-######## CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW SET @a:=1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 21 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-22
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-21
-
--------- switch to master -------
-CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW SET @a:=1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-22
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-22
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-22
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-22
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-trg1 INSERT t1 SET @a:=1 BEFORE NULL root@localhost
-
--------- switch to slave -------
-SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-trg1 INSERT t1 SET @a:=1 BEFORE NULL root@localhost
-
-######## DROP TRIGGER trg1 ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 22 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-23
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-22
-
--------- switch to master -------
-DROP TRIGGER trg1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-23
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-23
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-23
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-23
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-
--------- switch to slave -------
-SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-
-######## CREATE USER user1@localhost ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 23 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-24
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-23
-
--------- switch to master -------
-CREATE USER user1@localhost;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-24
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-24
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-24
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-24
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SELECT user FROM mysql.user WHERE user = 'user1';
-user
-user1
-
--------- switch to slave -------
-SELECT user FROM mysql.user WHERE user = 'user1';
-user
-user1
-
-######## RENAME USER user1@localhost TO rename1@localhost ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 24 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-25
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-24
-
--------- switch to master -------
-RENAME USER user1@localhost TO rename1@localhost;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-25
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-25
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-25
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-25
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SELECT user FROM mysql.user WHERE user = 'rename1';
-user
-rename1
-
--------- switch to slave -------
-SELECT user FROM mysql.user WHERE user = 'rename1';
-user
-rename1
-
-######## DROP USER rename1@localhost ########
-
--------- switch to master -------
-INSERT INTO t1 SET f1= 25 + 1;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-26
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-25
-
--------- switch to master -------
-DROP USER rename1@localhost;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-26
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-26
-
--------- switch to master -------
-ROLLBACK;
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-26
-
-TEST-INFO: MASTER: The INSERT is committed (Succeeded)
-
--------- switch to slave --------
-SELECT MAX(f1) FROM t1;
-MAX(f1)
-26
-
-TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-
--------- switch to master -------
-flush logs;
-
--------- switch to slave --------
-flush logs;
-
--------- switch to master -------
-SELECT user FROM mysql.user WHERE user = 'rename1';
-user
-
--------- switch to slave -------
-SELECT user FROM mysql.user WHERE user = 'rename1';
-user
-DROP DATABASE IF EXISTS mysqltest1;
-DROP DATABASE IF EXISTS mysqltest2;
-DROP DATABASE IF EXISTS mysqltest3;
diff --git a/mysql-test/r/rpl_deadlock.result b/mysql-test/r/rpl_deadlock.result
deleted file mode 100644
index 116c34a4d96..00000000000
--- a/mysql-test/r/rpl_deadlock.result
+++ /dev/null
@@ -1,190 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int not null, key(a)) engine=innodb;
-create table t2 (a int not null, key(a)) engine=innodb;
-create table t3 (a int unique) engine=innodb;
-create table t4 (a int) engine=innodb;
-show variables like 'slave_transaction_retries';
-Variable_name Value
-slave_transaction_retries 10
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL,
- KEY `a` (`a`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-show create table t2;
-Table Create Table
-t2 CREATE TABLE `t2` (
- `a` int(11) NOT NULL,
- KEY `a` (`a`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-show variables like 'slave_transaction_retries';
-Variable_name Value
-slave_transaction_retries 2
-stop slave;
-begin;
-insert into t3 select * from t2 for update;
-insert into t1 values(1);
-commit;
-begin;
-select * from t1 for update;
-a
-start slave;
-insert into t2 values(201);
-commit;
-select * from t1;
-a
-1
-select * from t2;
-a
-201
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 18918
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 18918
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-stop slave;
-delete from t3;
-change master to master_log_pos=539;
-begin;
-select * from t2 for update;
-a
-201
-start slave;
-select count(*) from t3 /* must be zero */;
-count(*)
-0
-commit;
-select * from t1;
-a
-1
-1
-select * from t2;
-a
-201
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 18918
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running #
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 18918
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-set @my_max_relay_log_size= @@global.max_relay_log_size;
-set global max_relay_log_size=0;
-stop slave;
-delete from t3;
-change master to master_log_pos=539;
-begin;
-select * from t2 for update;
-a
-201
-start slave;
-select count(*) from t3 /* must be zero */;
-count(*)
-0
-commit;
-select * from t1;
-a
-1
-1
-1
-select * from t2;
-a
-201
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 18918
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running #
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 18918
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-drop table t1,t2,t3,t4;
-set global max_relay_log_size= @my_max_relay_log_size;
diff --git a/mysql-test/r/rpl_delete_all.result b/mysql-test/r/rpl_delete_all.result
deleted file mode 100644
index 1aa556270c9..00000000000
--- a/mysql-test/r/rpl_delete_all.result
+++ /dev/null
@@ -1,31 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create database mysqltest;
-drop database if exists mysqltest;
-Warnings:
-Note 1008 Can't drop database 'mysqltest'; database doesn't exist
-show tables from mysqltest;
-ERROR 42000: Unknown database 'mysqltest'
-create table t1 (a int);
-drop table if exists t1;
-Warnings:
-Note 1051 Unknown table 't1'
-select * from t1;
-ERROR 42S02: Table 'test.t1' doesn't exist
-create table t1 (a int);
-insert into t1 values(1);
-delete from t1;
-select * from t1;
-a
-insert into t1 values(1);
-insert into t1 values(2);
-update t1 set a=2;
-select * from t1;
-a
-2
-2
-drop table t1;
diff --git a/mysql-test/r/rpl_do_grant.result b/mysql-test/r/rpl_do_grant.result
deleted file mode 100644
index fe6ef3c26bc..00000000000
--- a/mysql-test/r/rpl_do_grant.result
+++ /dev/null
@@ -1,37 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-delete from mysql.user where user=_binary'rpl_do_grant';
-delete from mysql.db where user=_binary'rpl_do_grant';
-flush privileges;
-delete from mysql.user where user=_binary'rpl_ignore_grant';
-delete from mysql.db where user=_binary'rpl_ignore_grant';
-flush privileges;
-grant select on *.* to rpl_do_grant@localhost;
-grant drop on test.* to rpl_do_grant@localhost;
-show grants for rpl_do_grant@localhost;
-Grants for rpl_do_grant@localhost
-GRANT SELECT ON *.* TO 'rpl_do_grant'@'localhost'
-GRANT DROP ON `test`.* TO 'rpl_do_grant'@'localhost'
-set password for rpl_do_grant@localhost=password("does it work?");
-select password<>_binary'' from mysql.user where user=_binary'rpl_do_grant';
-password<>_binary''
-1
-update mysql.user set password='' where user='rpl_do_grant';
-flush privileges;
-select password<>'' from mysql.user where user='rpl_do_grant';
-password<>''
-0
-set sql_mode='ANSI_QUOTES';
-set password for rpl_do_grant@localhost=password('does it work?');
-set sql_mode='';
-select password<>'' from mysql.user where user='rpl_do_grant';
-password<>''
-1
-delete from mysql.user where user=_binary'rpl_do_grant';
-delete from mysql.db where user=_binary'rpl_do_grant';
-flush privileges;
-flush privileges;
diff --git a/mysql-test/r/rpl_drop.result b/mysql-test/r/rpl_drop.result
deleted file mode 100644
index b83594c9bb1..00000000000
--- a/mysql-test/r/rpl_drop.result
+++ /dev/null
@@ -1,10 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1, t2;
-create table t1 (a int);
-drop table t1, t2;
-ERROR 42S02: Unknown table 't2'
diff --git a/mysql-test/r/rpl_drop_db.result b/mysql-test/r/rpl_drop_db.result
deleted file mode 100644
index 97a24d980b6..00000000000
--- a/mysql-test/r/rpl_drop_db.result
+++ /dev/null
@@ -1,37 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest1;
-create database mysqltest1;
-create table mysqltest1.t1 (n int);
-insert into mysqltest1.t1 values (1);
-select * from mysqltest1.t1 into outfile 'mysqltest1/f1.txt';
-create table mysqltest1.t2 (n int);
-create table mysqltest1.t3 (n int);
-drop database mysqltest1;
-ERROR HY000: Error dropping database (can't rmdir './mysqltest1/', errno: 17)
-use mysqltest1;
-show tables;
-Tables_in_mysqltest1
-drop database mysqltest1;
-ERROR HY000: Error dropping database (can't rmdir './mysqltest1/', errno: 17)
-use mysqltest1;
-show tables;
-Tables_in_mysqltest1
-use test;
-create table t1 (n int);
-insert into t1 values (1234);
-use mysqltest1;
-show tables;
-Tables_in_mysqltest1
-use test;
-select * from t1;
-n
-1234
-drop table t1;
-stop slave;
-drop database mysqltest1;
-drop database mysqltest1;
diff --git a/mysql-test/r/rpl_drop_if_exists.result b/mysql-test/r/rpl_drop_if_exists.result
deleted file mode 100644
index f711a873122..00000000000
--- a/mysql-test/r/rpl_drop_if_exists.result
+++ /dev/null
@@ -1,80 +0,0 @@
-RESET MASTER;
-DROP PROCEDURE IF EXISTS db_bug_13684.p;
-DROP FUNCTION IF EXISTS db_bug_13684.f;
-DROP TRIGGER IF EXISTS db_bug_13684.tr;
-DROP VIEW IF EXISTS db_bug_13684.v;
-DROP TABLE IF EXISTS db_bug_13684.t;
-DROP DATABASE IF EXISTS db_bug_13684;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # use `test`; DROP PROCEDURE IF EXISTS db_bug_13684.p
-master-bin.000001 # Query # # use `test`; DROP FUNCTION IF EXISTS db_bug_13684.f
-master-bin.000001 # Query # # use `test`; DROP TRIGGER IF EXISTS db_bug_13684.tr
-master-bin.000001 # Query # # use `test`; DROP VIEW IF EXISTS db_bug_13684.v
-master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS db_bug_13684.t
-master-bin.000001 # Query # # DROP DATABASE IF EXISTS db_bug_13684
-CREATE DATABASE db_bug_13684;
-CREATE TABLE db_bug_13684.t (a int);
-CREATE VIEW db_bug_13684.v
-AS SELECT * FROM db_bug_13684.t;
-CREATE TRIGGER db_bug_13684.tr BEFORE INSERT ON db_bug_13684.t
-FOR EACH ROW BEGIN
-END;
-CREATE PROCEDURE db_bug_13684.p (OUT p1 INT)
-BEGIN
-END;
-CREATE FUNCTION db_bug_13684.f (s CHAR(20))
-RETURNS CHAR(50) DETERMINISTIC
-RETURN s;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # use `test`; DROP PROCEDURE IF EXISTS db_bug_13684.p
-master-bin.000001 # Query # # use `test`; DROP FUNCTION IF EXISTS db_bug_13684.f
-master-bin.000001 # Query # # use `test`; DROP TRIGGER IF EXISTS db_bug_13684.tr
-master-bin.000001 # Query # # use `test`; DROP VIEW IF EXISTS db_bug_13684.v
-master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS db_bug_13684.t
-master-bin.000001 # Query # # DROP DATABASE IF EXISTS db_bug_13684
-master-bin.000001 # Query # # CREATE DATABASE db_bug_13684
-master-bin.000001 # Query # # use `test`; CREATE TABLE db_bug_13684.t (a int)
-master-bin.000001 # Query # # use `test`; CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `db_bug_13684`.`v` AS select `db_bug_13684`.`t`.`a` AS `a` from `db_bug_13684`.`t`
-master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` TRIGGER db_bug_13684.tr BEFORE INSERT ON db_bug_13684.t
-FOR EACH ROW BEGIN
-END
-master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `db_bug_13684`.`p`(OUT p1 INT)
-BEGIN
-END
-master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` FUNCTION `db_bug_13684`.`f`(s CHAR(20)) RETURNS char(50) CHARSET latin1
- DETERMINISTIC
-RETURN s
-DROP PROCEDURE IF EXISTS db_bug_13684.p;
-DROP FUNCTION IF EXISTS db_bug_13684.f;
-DROP TRIGGER IF EXISTS db_bug_13684.tr;
-DROP VIEW IF EXISTS db_bug_13684.v;
-DROP TABLE IF EXISTS db_bug_13684.t;
-DROP DATABASE IF EXISTS db_bug_13684;
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # use `test`; DROP PROCEDURE IF EXISTS db_bug_13684.p
-master-bin.000001 # Query # # use `test`; DROP FUNCTION IF EXISTS db_bug_13684.f
-master-bin.000001 # Query # # use `test`; DROP TRIGGER IF EXISTS db_bug_13684.tr
-master-bin.000001 # Query # # use `test`; DROP VIEW IF EXISTS db_bug_13684.v
-master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS db_bug_13684.t
-master-bin.000001 # Query # # DROP DATABASE IF EXISTS db_bug_13684
-master-bin.000001 # Query # # CREATE DATABASE db_bug_13684
-master-bin.000001 # Query # # use `test`; CREATE TABLE db_bug_13684.t (a int)
-master-bin.000001 # Query # # use `test`; CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `db_bug_13684`.`v` AS select `db_bug_13684`.`t`.`a` AS `a` from `db_bug_13684`.`t`
-master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` TRIGGER db_bug_13684.tr BEFORE INSERT ON db_bug_13684.t
-FOR EACH ROW BEGIN
-END
-master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `db_bug_13684`.`p`(OUT p1 INT)
-BEGIN
-END
-master-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` FUNCTION `db_bug_13684`.`f`(s CHAR(20)) RETURNS char(50) CHARSET latin1
- DETERMINISTIC
-RETURN s
-master-bin.000001 # Query # # use `test`; DROP PROCEDURE IF EXISTS db_bug_13684.p
-master-bin.000001 # Query # # use `test`; DROP FUNCTION IF EXISTS db_bug_13684.f
-master-bin.000001 # Query # # use `test`; DROP TRIGGER IF EXISTS db_bug_13684.tr
-master-bin.000001 # Query # # use `test`; DROP VIEW IF EXISTS db_bug_13684.v
-master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS db_bug_13684.t
-master-bin.000001 # Query # # DROP DATABASE IF EXISTS db_bug_13684
diff --git a/mysql-test/r/rpl_drop_temp.result b/mysql-test/r/rpl_drop_temp.result
deleted file mode 100644
index fff179d7056..00000000000
--- a/mysql-test/r/rpl_drop_temp.result
+++ /dev/null
@@ -1,20 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create database if not exists mysqltest;
-use mysqltest;
-create temporary table mysqltest.t1 (n int);
-create temporary table mysqltest.t2 (n int);
-select get_lock("con_temp",10);
-get_lock("con_temp",10)
-1
-select get_lock("con_temp",10);
-get_lock("con_temp",10)
-1
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 0
-drop database mysqltest;
diff --git a/mysql-test/r/rpl_drop_view.result b/mysql-test/r/rpl_drop_view.result
deleted file mode 100644
index ef625464881..00000000000
--- a/mysql-test/r/rpl_drop_view.result
+++ /dev/null
@@ -1,27 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1, t2;
-drop view if exists v1, v2, v3, not_exist_view;
-create table t1 (a int);
-create table t2 (b int);
-create table t3 (c int);
-create view v1 as select * from t1;
-create view v2 as select * from t2;
-create view v3 as select * from t3;
-drop view not_exist_view;
-ERROR 42S02: Unknown table 'not_exist_view'
-drop view v1, not_exist_view;
-ERROR 42S02: Unknown table 'not_exist_view'
-select * from v1;
-ERROR 42S02: Table 'test.v1' doesn't exist
-drop view v2, v3;
-select * from v1;
-ERROR 42S02: Table 'test.v1' doesn't exist
-select * from v2;
-ERROR 42S02: Table 'test.v2' doesn't exist
-select * from v3;
-ERROR 42S02: Table 'test.v3' doesn't exist
diff --git a/mysql-test/r/rpl_dual_pos_advance.result b/mysql-test/r/rpl_dual_pos_advance.result
deleted file mode 100644
index 4c6323a61db..00000000000
--- a/mysql-test/r/rpl_dual_pos_advance.result
+++ /dev/null
@@ -1,60 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-reset master;
-change master to master_host="127.0.0.1",master_port=SLAVE_PORT,master_user="root";
-start slave;
-create table t1 (n int);
-stop slave;
-create table t2 (n int);
-show tables;
-Tables_in_test
-t1
-t2
-create table t3 (n int) engine=innodb;
-set @a=1;
-insert into t3 values(@a);
-begin;
-insert into t3 values(2);
-insert into t3 values(3);
-commit;
-insert into t3 values(4);
-start slave until master_log_file="slave-bin.000001",master_log_pos=195;
-Warnings:
-Note 1278 It is recommended to use --skip-slave-start when doing step-by-step replication with START SLAVE UNTIL; otherwise, you will get problems if you get an unexpected slave's mysqld restart
-show tables;
-Tables_in_test
-t1
-t2
-start slave until master_log_file="slave-bin.000001",master_log_pos=438;
-Warnings:
-Note 1278 It is recommended to use --skip-slave-start when doing step-by-step replication with START SLAVE UNTIL; otherwise, you will get problems if you get an unexpected slave's mysqld restart
-select * from t3;
-n
-1
-start slave until master_log_file="slave-bin.000001",master_log_pos=663;
-Warnings:
-Note 1278 It is recommended to use --skip-slave-start when doing step-by-step replication with START SLAVE UNTIL; otherwise, you will get problems if you get an unexpected slave's mysqld restart
-select * from t3;
-n
-1
-2
-3
-start slave;
-create table t4 (n int);
-create table t5 (n int);
-create table t6 (n int);
-show tables;
-Tables_in_test
-t1
-t2
-t3
-t4
-t5
-t6
-stop slave;
-reset slave;
-drop table t1,t2,t3,t4,t5,t6;
diff --git a/mysql-test/r/rpl_empty_master_crash.result b/mysql-test/r/rpl_empty_master_crash.result
deleted file mode 100644
index 3e234d4ef59..00000000000
--- a/mysql-test/r/rpl_empty_master_crash.result
+++ /dev/null
@@ -1,12 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-load table t1 from master;
-ERROR 08S01: Error connecting to master: Master is not configured
-load table t1 from master;
-ERROR HY000: Error from master: 'Table 'test.t1' doesn't exist'
diff --git a/mysql-test/r/rpl_error_ignored_table.result b/mysql-test/r/rpl_error_ignored_table.result
deleted file mode 100644
index b813941a782..00000000000
--- a/mysql-test/r/rpl_error_ignored_table.result
+++ /dev/null
@@ -1,39 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int primary key);
-insert into t1 values (1),(1);
-ERROR 23000: Duplicate entry '1' for key 1
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 288 # # master-bin.000001 Yes Yes test.t3,test.t1,test.t2 0 0 288 # None 0 No #
-show tables like 't1';
-Tables_in_test (t1)
-drop table t1;
-select get_lock('crash_lock%20C', 10);
-get_lock('crash_lock%20C', 10)
-1
-create table t2 (a int primary key);
-insert into t2 values(1);
-create table t3 (id int);
-insert into t3 values(connection_id());
-update t2 set a = a + 1 + get_lock('crash_lock%20C', 10);
-select (@id := id) - id from t3;
-(@id := id) - id
-0
-kill @id;
-drop table t2,t3;
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int primary key)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (1),(1)
-master-bin.000001 # Query 1 # use `test`; drop table t1
-master-bin.000001 # Query 1 # use `test`; create table t2 (a int primary key)
-master-bin.000001 # Query 1 # use `test`; insert into t2 values(1)
-master-bin.000001 # Query 1 # use `test`; create table t3 (id int)
-master-bin.000001 # Query 1 # use `test`; insert into t3 values(connection_id())
-master-bin.000001 # Query 1 # use `test`; update t2 set a = a + 1 + get_lock('crash_lock%20C', 10)
-master-bin.000001 # Query 1 # use `test`; drop table t2,t3
diff --git a/mysql-test/r/rpl_extraColmaster_innodb.result b/mysql-test/r/rpl_extraColmaster_innodb.result
new file mode 100644
index 00000000000..27d6592a7ad
--- /dev/null
+++ b/mysql-test/r/rpl_extraColmaster_innodb.result
Binary files differ
diff --git a/mysql-test/r/rpl_extraColmaster_myisam.result b/mysql-test/r/rpl_extraColmaster_myisam.result
new file mode 100644
index 00000000000..9a77ae6ca19
--- /dev/null
+++ b/mysql-test/r/rpl_extraColmaster_myisam.result
Binary files differ
diff --git a/mysql-test/r/rpl_failed_optimize.result b/mysql-test/r/rpl_failed_optimize.result
deleted file mode 100644
index ff7f6ad6177..00000000000
--- a/mysql-test/r/rpl_failed_optimize.result
+++ /dev/null
@@ -1,20 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 ( a int ) ENGINE=InnoDB;
-BEGIN;
-INSERT INTO t1 VALUES (1);
-OPTIMIZE TABLE t1;
-Table Op Msg_type Msg_text
-test.t1 optimize error Lock wait timeout exceeded; try restarting transaction
-test.t1 optimize status Operation failed
-Warnings:
-Error 1205 Lock wait timeout exceeded; try restarting transaction
-OPTIMIZE TABLE non_existing;
-Table Op Msg_type Msg_text
-test.non_existing optimize Error Table 'test.non_existing' doesn't exist
-test.non_existing optimize status Operation failed
-drop table t1;
diff --git a/mysql-test/r/rpl_filter_tables_not_exist.result b/mysql-test/r/rpl_filter_tables_not_exist.result
deleted file mode 100644
index 7eddaabc636..00000000000
--- a/mysql-test/r/rpl_filter_tables_not_exist.result
+++ /dev/null
@@ -1,151 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 (id int, a int);
-CREATE TABLE t2 (id int, b int);
-CREATE TABLE t3 (id int, c int);
-CREATE TABLE t4 (id int, d int);
-CREATE TABLE t5 (id int, e int);
-CREATE TABLE t6 (id int, f int);
-CREATE TABLE t7 (id int, g int);
-CREATE TABLE t8 (id int, h int);
-CREATE TABLE t9 (id int, i int);
-INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t2 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t3 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t4 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t5 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t6 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t7 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t8 VALUES (1, 1), (2, 2), (3, 3);
-INSERT INTO t9 VALUES (1, 1), (2, 2), (3, 3);
-[on slave]
-SHOW TABLES LIKE 't%';
-Tables_in_test (t%)
-t1
-t2
-t3
-[on master]
-UPDATE t7 LEFT JOIN t4 ON (t4.id=t7.id) SET d=0, g=0 where t7.id=1;
-UPDATE t7 LEFT JOIN (t4, t5, t6) ON (t7.id=t4.id and t7.id=t5.id and t7.id=t6.id) SET d=0, e=0, f=0, g=0 where t7.id=1;
-UPDATE t4 LEFT JOIN (t7, t8, t9) ON (t4.id=t7.id and t4.id=t8.id and t4.id=t9.id) SET d=0, g=0, h=0, i=0 where t4.id=1;
-UPDATE t7 LEFT JOIN (t8, t9) ON (t7.id=t8.id and t7.id=t9.id) SET g=0, h=0, i=0 where t7.id=1;
-UPDATE t1 LEFT JOIN t4 ON (t1.id=t4.id) SET d=0 where t1.id=1;
-UPDATE t1 LEFT JOIN t7 ON (t1.id=t7.id) SET g=0 where t1.id=1;
-UPDATE t1 LEFT JOIN (t4, t5, t6) ON (t1.id=t4.id and t1.id=t5.id and t1.id=t6.id) SET d=0, e=0, f=0 where t1.id=1;
-UPDATE t1 LEFT JOIN (t4, t5, t8) ON (t1.id=t4.id and t1.id=t5.id and t1.id=t8.id) SET d=0, e=0, h=0 where t1.id=1;
-UPDATE t1 LEFT JOIN (t7, t8, t5) ON (t1.id=t7.id and t1.id=t8.id and t1.id=t5.id) SET g=0, h=0, e=0 where t1.id=1;
-UPDATE t1 LEFT JOIN (t2, t3, t5) ON (t1.id=t2.id and t1.id=t3.id and t1.id=t5.id) SET e=0 where t1.id=1;
-UPDATE t4 LEFT JOIN t1 ON (t1.id=t4.id) SET a=0, d=0 where t4.id=1;
-UPDATE t4 LEFT JOIN (t1, t7) ON (t4.id=t1.id and t7.id=t4.id) SET a = 0, d=0, g=0 where t4.id=1;
-UPDATE t4 LEFT JOIN (t1, t2, t3) ON (t1.id=t4.id and t2.id=t4.id and t3.id=t4.id) SET a=0, b=0, c=0, d=0 where t4.id=1;
-UPDATE t4 LEFT JOIN (t1, t2, t5) ON (t1.id=t4.id and t2.id=t4.id and t5.id=t4.id) SET a=0, b=0, e=0, d=0 where t4.id=1;
-UPDATE t4 LEFT JOIN (t1, t6, t7) ON (t4.id=t1.id and t4.id=t6.id and t4.id=t7.id) SET a=0, d=0, f=0, g=0 where t4.id=1;
-UPDATE t7 LEFT JOIN (t4, t1, t2) ON (t7.id=t4.id and t7.id=t1.id and t7.id=t2.id) SET a=0, b=0, d=0, g=0 where t7.id=1;
-UPDATE t7 LEFT JOIN (t8, t4, t1) ON (t7.id=t8.id and t7.id=t4.id and t7.id=t1.id) SET a=0, d=0, g=0, h=0 where t7.id=1;
-UPDATE t1 LEFT JOIN t4 ON (t1.id=t4.id) SET a=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN t4 ON (t1.id=t4.id) SET a=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t4, t7) ON (t1.id=t4.id and t1.id=t7.id) SET a=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t4, t7) ON (t1.id=t4.id and t1.id=t7.id) SET a=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t2, t4, t7) ON (t1.id=t2.id and t1.id=t4.id and t1.id=t7.id) SET a=0, b=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t2, t4, t7) ON (t1.id=t2.id and t1.id=t4.id and t1.id=t7.id) SET a=0, b=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t2, t3, t7) ON (t1.id=t2.id and t1.id=t3.id and t1.id=t7.id) SET a=0, b=0, c=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t2, t3, t7) ON (t1.id=t2.id and t1.id=t3.id and t1.id=t7.id) SET a=0, b=0, c=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN t7 ON (t1.id=t7.id) SET a=0, g=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN t7 ON (t1.id=t7.id) SET a=0, g=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t7 LEFT JOIN t1 ON (t1.id=t7.id) SET a=0, g=0 where t7.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t7 LEFT JOIN t1 ON (t1.id=t7.id) SET a=0, g=0 where t7.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t4, t5, t7) ON (t1.id=t4.id and t1.id=t5.id and t1.id=t7.id) SET a=0, g=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t4, t5, t7) ON (t1.id=t4.id and t1.id=t5.id and t1.id=t7.id) SET a=0, g=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t4, t7, t8) ON (t1.id=t4.id and t1.id=t7.id and t1.id=t8.id) SET a=0, g=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t4, t7, t8) ON (t1.id=t4.id and t1.id=t7.id and t1.id=t8.id) SET a=0, g=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t7, t8, t9) ON (t1.id=t7.id and t1.id=t8.id and t1.id=t9.id) SET a=0, g=0, h=0, i=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t7, t8, t9) ON (t1.id=t7.id and t1.id=t8.id and t1.id=t9.id) SET a=0, g=0, h=0, i=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t7 LEFT JOIN (t1, t2, t3) ON (t7.id=t1.id and t7.id=t2.id and t7.id=t3.id) SET g=0, a=0, b=0, c=0 where t7.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t7 LEFT JOIN (t1, t2, t3) ON (t7.id=t1.id and t7.id=t2.id and t7.id=t3.id) SET g=0, a=0, b=0, c=0 where t7.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t7 LEFT JOIN (t4, t5, t3) ON (t7.id=t4.id and t7.id=t5.id and t7.id=t3.id) SET g=0, c=0 where t7.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t7 LEFT JOIN (t4, t5, t3) ON (t7.id=t4.id and t7.id=t5.id and t7.id=t3.id) SET g=0, c=0 where t7.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t7 LEFT JOIN (t8, t9, t3) ON (t7.id=t8.id and t7.id=t9.id and t7.id=t3.id) SET g=0, h=0, i=0, c=0 where t7.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t7 LEFT JOIN (t8, t9, t3) ON (t7.id=t8.id and t7.id=t9.id and t7.id=t3.id) SET g=0, h=0, i=0, c=0 where t7.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN t4 ON (t1.id=t4.id) SET a=0, d=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN t4 ON (t1.id=t4.id) SET a=0, d=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t1 LEFT JOIN (t4, t5, t6) ON (t1.id=t4.id and t1.id=t5.id and t1.id=t6.id) SET a=0, d=0, e=0, f=0 where t1.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t1 LEFT JOIN (t4, t5, t6) ON (t1.id=t4.id and t1.id=t5.id and t1.id=t6.id) SET a=0, d=0, e=0, f=0 where t1.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t4 LEFT JOIN (t1, t5, t6) ON (t4.id=t1.id and t4.id=t5.id and t4.id=t6.id) SET a=0, e=0, f=0 where t4.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t4' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t4 LEFT JOIN (t1, t5, t6) ON (t4.id=t1.id and t4.id=t5.id and t4.id=t6.id) SET a=0, e=0, f=0 where t4.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-UPDATE t7 LEFT JOIN (t1, t4, t2) ON (t7.id=t1.id and t7.id=t4.id and t7.id=t2.id) SET a=0, b=0, d=0, g=0 where t7.id=1;
---source include/wait_for_slave_sql_error_and_skip.inc
-Last_SQL_Error = Error 'Table 'test.t7' doesn't exist' on query. Default database: 'test'. Query: 'UPDATE t7 LEFT JOIN (t1, t4, t2) ON (t7.id=t1.id and t7.id=t4.id and t7.id=t2.id) SET a=0, b=0, d=0, g=0 where t7.id=1'
-set global sql_slave_skip_counter=1;
-include/start_slave.inc
-[on slave]
-show tables like 't%';
-Tables_in_test (t%)
-t1
-t2
-t3
-SELECT * FROM t1;
-id a
-1 1
-2 2
-3 3
-SELECT * FROM t2;
-id b
-1 1
-2 2
-3 3
-SELECT * FROM t3;
-id c
-1 1
-2 2
-3 3
-[on master]
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
diff --git a/mysql-test/r/rpl_flush_log_loop.result b/mysql-test/r/rpl_flush_log_loop.result
deleted file mode 100644
index d9bb93810d0..00000000000
--- a/mysql-test/r/rpl_flush_log_loop.result
+++ /dev/null
@@ -1,55 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-show variables like 'relay_log%';
-Variable_name Value
-relay_log MYSQLTEST_VARDIR/master-data/relay-log
-relay_log_index
-relay_log_info_file relay-log.info
-relay_log_purge ON
-relay_log_space_limit 0
-stop slave;
-change master to master_host='127.0.0.1',master_user='root',
-master_password='',master_port=MASTER_PORT;
-start slave;
-change master to master_host='127.0.0.1',master_user='root',
-master_password='',master_port=SLAVE_PORT;
-start slave;
-flush logs;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 98
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table #
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 98
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
diff --git a/mysql-test/r/rpl_flush_tables.result b/mysql-test/r/rpl_flush_tables.result
deleted file mode 100644
index 7d0bc54ae31..00000000000
--- a/mysql-test/r/rpl_flush_tables.result
+++ /dev/null
@@ -1,47 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int);
-insert into t1 values (10);
-create table t2 (a int);
-create table t3 (a int) engine=merge union(t1);
-create table t4 (a int);
-insert into t4 select * from t3;
-rename table t1 to t5, t2 to t1;
-flush no_write_to_binlog tables;
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Format_desc 1 # Server ver: SERVER_VERSION, Binlog ver: 4
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (10)
-master-bin.000001 # Query 1 # use `test`; create table t2 (a int)
-master-bin.000001 # Query 1 # use `test`; create table t3 (a int) engine=merge union(t1)
-master-bin.000001 # Query 1 # use `test`; create table t4 (a int)
-master-bin.000001 # Query 1 # use `test`; insert into t4 select * from t3
-master-bin.000001 # Query 1 # use `test`; rename table t1 to t5, t2 to t1
-select * from t3;
-a
-flush tables;
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Format_desc 1 # Server ver: SERVER_VERSION, Binlog ver: 4
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (10)
-master-bin.000001 # Query 1 # use `test`; create table t2 (a int)
-master-bin.000001 # Query 1 # use `test`; create table t3 (a int) engine=merge union(t1)
-master-bin.000001 # Query 1 # use `test`; create table t4 (a int)
-master-bin.000001 # Query 1 # use `test`; insert into t4 select * from t3
-master-bin.000001 # Query 1 # use `test`; rename table t1 to t5, t2 to t1
-master-bin.000001 # Query 1 # use `test`; flush tables
-select * from t3;
-a
-stop slave;
-drop table t1;
-flush tables with read lock;
-start slave;
-stop slave;
-ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
-drop table t3, t4, t5;
diff --git a/mysql-test/r/rpl_free_items.result b/mysql-test/r/rpl_free_items.result
deleted file mode 100644
index 91c1e2aa6e5..00000000000
--- a/mysql-test/r/rpl_free_items.result
+++ /dev/null
@@ -1,10 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int);
-create table t2 (a int);
-drop table t1;
-drop table t2;
diff --git a/mysql-test/r/rpl_get_lock.result b/mysql-test/r/rpl_get_lock.result
deleted file mode 100644
index da300d99964..00000000000
--- a/mysql-test/r/rpl_get_lock.result
+++ /dev/null
@@ -1,35 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1(n int);
-insert into t1 values(get_lock("lock",2));
-select get_lock("lock",2);
-get_lock("lock",2)
-1
-select release_lock("lock");
-release_lock("lock")
-1
-select get_lock("lock",3);
-get_lock("lock",3)
-1
-select * from t1;
-n
-1
-select is_free_lock("lock"), is_used_lock("lock") = connection_id();
-is_free_lock("lock") is_used_lock("lock") = connection_id()
-0 1
-explain extended select is_free_lock("lock"), is_used_lock("lock");
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
-Warnings:
-Note 1003 select is_free_lock(_latin1'lock') AS `is_free_lock("lock")`,is_used_lock(_latin1'lock') AS `is_used_lock("lock")`
-select is_free_lock("lock2");
-is_free_lock("lock2")
-1
-select is_free_lock(NULL);
-is_free_lock(NULL)
-NULL
-drop table t1;
diff --git a/mysql-test/r/rpl_grant.result b/mysql-test/r/rpl_grant.result
deleted file mode 100644
index 6ee1ca3cb36..00000000000
--- a/mysql-test/r/rpl_grant.result
+++ /dev/null
@@ -1,77 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-**** On Master ****
-CREATE USER dummy@localhost;
-CREATE USER dummy1@localhost, dummy2@localhost;
-SELECT user, host FROM mysql.user WHERE user != 'root';
-user host
-dummy localhost
-dummy1 localhost
-dummy2 localhost
-SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
-COUNT(*)
-3
-**** On Slave ****
-SELECT user,host FROM mysql.user WHERE user != 'root';
-user host
-dummy localhost
-dummy1 localhost
-dummy2 localhost
-SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
-COUNT(*)
-3
-**** On Master ****
-DROP USER nonexisting@localhost;
-ERROR HY000: Operation DROP USER failed for 'nonexisting'@'localhost'
-DROP USER nonexisting@localhost, dummy@localhost;
-ERROR HY000: Operation DROP USER failed for 'nonexisting'@'localhost'
-DROP USER dummy1@localhost, dummy2@localhost;
-SELECT user, host FROM mysql.user WHERE user != 'root';
-user host
-SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
-COUNT(*)
-0
-**** On Slave ****
-SELECT user,host FROM mysql.user WHERE user != 'root';
-user host
-SELECT COUNT(*) FROM mysql.user WHERE user != 'root' or (host != 'localhost' and host != @hostname);
-COUNT(*)
-0
-SHOW SLAVE STATUS;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 515
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 515
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
diff --git a/mysql-test/r/rpl_ignore_grant.result b/mysql-test/r/rpl_ignore_grant.result
deleted file mode 100644
index 5169cc8e888..00000000000
--- a/mysql-test/r/rpl_ignore_grant.result
+++ /dev/null
@@ -1,37 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-delete from mysql.user where user=_binary'rpl_ignore_grant';
-delete from mysql.db where user=_binary'rpl_ignore_grant';
-flush privileges;
-delete from mysql.user where user=_binary'rpl_ignore_grant';
-delete from mysql.db where user=_binary'rpl_ignore_grant';
-flush privileges;
-grant select on *.* to rpl_ignore_grant@localhost;
-grant drop on test.* to rpl_ignore_grant@localhost;
-show grants for rpl_ignore_grant@localhost;
-Grants for rpl_ignore_grant@localhost
-GRANT SELECT ON *.* TO 'rpl_ignore_grant'@'localhost'
-GRANT DROP ON `test`.* TO 'rpl_ignore_grant'@'localhost'
-show grants for rpl_ignore_grant@localhost;
-ERROR 42000: There is no such grant defined for user 'rpl_ignore_grant' on host 'localhost'
-select count(*) from mysql.user where user=_binary'rpl_ignore_grant';
-count(*)
-0
-select count(*) from mysql.db where user=_binary'rpl_ignore_grant';
-count(*)
-0
-grant select on *.* to rpl_ignore_grant@localhost;
-set password for rpl_ignore_grant@localhost=password("does it work?");
-select password<>_binary'' from mysql.user where user=_binary'rpl_ignore_grant';
-password<>_binary''
-0
-delete from mysql.user where user=_binary'rpl_ignore_grant';
-delete from mysql.db where user=_binary'rpl_ignore_grant';
-flush privileges;
-delete from mysql.user where user=_binary'rpl_ignore_grant';
-delete from mysql.db where user=_binary'rpl_ignore_grant';
-flush privileges;
diff --git a/mysql-test/r/rpl_ignore_revoke.result b/mysql-test/r/rpl_ignore_revoke.result
deleted file mode 100644
index b1ccd2f0442..00000000000
--- a/mysql-test/r/rpl_ignore_revoke.result
+++ /dev/null
@@ -1,30 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-grant select on *.* to 'user_foo'@'%' identified by 'user_foopass';
-revoke select on *.* from 'user_foo'@'%';
-select select_priv from mysql.user where user='user_foo' /* master:must be N */;
-select_priv
-N
-grant select on *.* to 'user_foo'@'%' identified by 'user_foopass';
-revoke select on *.* from 'user_foo'@'%';
-select select_priv from mysql.user where user='user_foo' /* slave:must be N */;
-select_priv
-N
-grant select on *.* to 'user_foo'@'%' identified by 'user_foopass';
-select select_priv from mysql.user where user='user_foo' /* slave:must be Y */;
-select_priv
-Y
-revoke select on *.* from 'user_foo';
-select select_priv from mysql.user where user='user_foo' /* master:must be N */;
-select_priv
-N
-select select_priv from mysql.user where user='user_foo' /* slave:must get Y */;
-select_priv
-Y
-revoke select on *.* FROM 'user_foo';
-delete from mysql.user where user="user_foo";
-delete from mysql.user where user="user_foo";
diff --git a/mysql-test/r/rpl_ignore_table.result b/mysql-test/r/rpl_ignore_table.result
deleted file mode 100644
index 80cff7c9a1e..00000000000
--- a/mysql-test/r/rpl_ignore_table.result
+++ /dev/null
@@ -1,139 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-**** Test case for BUG#16487 ****
-**** Master ****
-CREATE TABLE test.t4 (a int);
-CREATE TABLE test.t1 (a int);
-UPDATE test.t4 NATURAL JOIN test.t1 SET t1.a=5;
-**** Slave ****
-SELECT * FROM t4;
-a
-DROP TABLE t1;
-DROP TABLE t4;
-**** Test case for BUG#25482 ****
-**** Adding GRANTS on master ****
-create table test.t1(a int);
-create table test.t4(a int);
-GRANT SELECT ON test.t1 TO mysqltest1@localhost;
-GRANT INSERT ON test.t4 TO mysqltest2@localhost;
-GRANT select, update, insert, references on t1
-to mysqltest2@localhost;
-GRANT SELECT ON test.* TO mysqltest3@localhost;
-GRANT INSERT ON test.t4 TO mysqltest3@localhost;
-GRANT select(a), update(a), insert(a), references(a) on t4
-to mysqltest3@localhost;
-create database mysqltest2;
-create table mysqltest2.t2 (id int);
-GRANT SELECT ON mysqltest2.t2 TO mysqltest4@localhost IDENTIFIED BY 'pass';
-insert into mysql.user (user, host) values ("mysqltest5", "somehost");
-Warnings:
-Warning 1364 Field 'ssl_cipher' doesn't have a default value
-Warning 1364 Field 'x509_issuer' doesn't have a default value
-Warning 1364 Field 'x509_subject' doesn't have a default value
-GRANT SELECT ON *.* TO mysqltest6@localhost;
-GRANT INSERT ON *.* TO mysqltest6@localhost;
-GRANT INSERT ON test.* TO mysqltest6@localhost;
-GRANT INSERT ON test.t1 TO mysqltest6@localhost;
-show grants for mysqltest1@localhost;
-Grants for mysqltest1@localhost
-GRANT USAGE ON *.* TO 'mysqltest1'@'localhost'
-GRANT SELECT ON `test`.`t1` TO 'mysqltest1'@'localhost'
-show grants for mysqltest2@localhost;
-Grants for mysqltest2@localhost
-GRANT USAGE ON *.* TO 'mysqltest2'@'localhost'
-GRANT SELECT, INSERT, UPDATE, REFERENCES ON `test`.`t1` TO 'mysqltest2'@'localhost'
-GRANT INSERT ON `test`.`t4` TO 'mysqltest2'@'localhost'
-show grants for mysqltest3@localhost;
-Grants for mysqltest3@localhost
-GRANT USAGE ON *.* TO 'mysqltest3'@'localhost'
-GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost'
-GRANT SELECT (a), INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost'
-show grants for mysqltest4@localhost;
-Grants for mysqltest4@localhost
-GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7'
-GRANT SELECT ON `mysqltest2`.`t2` TO 'mysqltest4'@'localhost'
-show grants for mysqltest6@localhost;
-Grants for mysqltest6@localhost
-GRANT SELECT, INSERT ON *.* TO 'mysqltest6'@'localhost'
-GRANT INSERT ON `test`.* TO 'mysqltest6'@'localhost'
-GRANT INSERT ON `test`.`t1` TO 'mysqltest6'@'localhost'
-flush privileges;
-show grants for mysqltest5@somehost;
-Grants for mysqltest5@somehost
-GRANT USAGE ON *.* TO 'mysqltest5'@'somehost'
-**** Checking grants on slave ****
-show grants for mysqltest2@localhost;
-Grants for mysqltest2@localhost
-GRANT USAGE ON *.* TO 'mysqltest2'@'localhost'
-GRANT INSERT ON `test`.`t4` TO 'mysqltest2'@'localhost'
-show grants for mysqltest3@localhost;
-Grants for mysqltest3@localhost
-GRANT USAGE ON *.* TO 'mysqltest3'@'localhost'
-GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost'
-GRANT SELECT (a), INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost'
-show grants for mysqltest4@localhost;
-Grants for mysqltest4@localhost
-GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7'
-GRANT SELECT ON `mysqltest2`.`t2` TO 'mysqltest4'@'localhost'
-show grants for mysqltest5@somehost;
-Grants for mysqltest5@somehost
-GRANT USAGE ON *.* TO 'mysqltest5'@'somehost'
-show grants for mysqltest6@localhost;
-Grants for mysqltest6@localhost
-GRANT SELECT, INSERT ON *.* TO 'mysqltest6'@'localhost'
-GRANT INSERT ON `test`.* TO 'mysqltest6'@'localhost'
-show grants for mysqltest1@localhost;
-ERROR 42000: There is no such grant defined for user 'mysqltest1' on host 'localhost'
-**** Revoking grants on master ****
-REVOKE SELECT ON test.t1 FROM mysqltest1@localhost;
-REVOKE SELECT ON mysqltest2.t2 FROM mysqltest4@localhost;
-REVOKE select(a) on t4
-from mysqltest3@localhost;
-show grants for mysqltest1@localhost;
-Grants for mysqltest1@localhost
-GRANT USAGE ON *.* TO 'mysqltest1'@'localhost'
-show grants for mysqltest3@localhost;
-Grants for mysqltest3@localhost
-GRANT USAGE ON *.* TO 'mysqltest3'@'localhost'
-GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost'
-GRANT INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost'
-show grants for mysqltest4@localhost;
-Grants for mysqltest4@localhost
-GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7'
-**** Checking grants on slave ****
-show grants for mysqltest1@localhost;
-ERROR 42000: There is no such grant defined for user 'mysqltest1' on host 'localhost'
-show grants for mysqltest3@localhost;
-Grants for mysqltest3@localhost
-GRANT USAGE ON *.* TO 'mysqltest3'@'localhost'
-GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost'
-GRANT INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost'
-show grants for mysqltest4@localhost;
-Grants for mysqltest4@localhost
-GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7'
-drop table t1, t4, mysqltest2.t2;
-drop database mysqltest2;
-delete from mysql.user where user like "mysqltest%";
-delete from mysql.db where user like "mysqltest%";
-delete from mysql.tables_priv where user like "mysqltest%";
-delete from mysql.columns_priv where user like "mysqltest%";
-DROP TABLE IF EXISTS t5;
-CREATE TABLE t5 (
-word varchar(50) collate utf8_unicode_ci NOT NULL default ''
-) DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-SET @@session.character_set_client=33,@@session.collation_connection=192;
-CREATE TEMPORARY TABLE tmptbl504451f4258$1 (id INT NOT NULL) ENGINE=MEMORY;
-INSERT INTO t5 (word) VALUES ('TEST’');
-SELECT HEX(word) FROM t5;
-HEX(word)
-54455354E28099
-SELECT HEX(word) FROM t5;
-HEX(word)
-54455354E28099
-SELECT * FROM tmptbl504451f4258$1;
-ERROR 42S02: Table 'test.tmptbl504451f4258$1' doesn't exist
-DROP TABLE t5;
diff --git a/mysql-test/r/rpl_init_slave.result b/mysql-test/r/rpl_init_slave.result
deleted file mode 100644
index f92fb9b4c1d..00000000000
--- a/mysql-test/r/rpl_init_slave.result
+++ /dev/null
@@ -1,27 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-show variables like 'init_slave';
-Variable_name Value
-init_slave set global max_connections=500
-show variables like 'max_connections';
-Variable_name Value
-max_connections 500
-reset master;
-show variables like 'init_slave';
-Variable_name Value
-init_slave
-show variables like 'max_connections';
-Variable_name Value
-max_connections 100
-set @my_global_init_connect= @@global.init_connect;
-set global init_connect="set @c=1";
-show variables like 'init_connect';
-Variable_name Value
-init_connect set @c=1
-stop slave;
-set global init_connect= @my_global_init_connect;
-set global max_connections= default;
diff --git a/mysql-test/r/rpl_innodb.result b/mysql-test/r/rpl_innodb.result
deleted file mode 100644
index 765de8af458..00000000000
--- a/mysql-test/r/rpl_innodb.result
+++ /dev/null
@@ -1,37 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t4 (
-id INT(5) unsigned NOT NULL auto_increment,
-name varchar(15) NOT NULL default '',
-number varchar(35) NOT NULL default 'default',
-PRIMARY KEY (id),
-UNIQUE KEY unique_rec (name,number)
-) ENGINE=InnoDB;
-LOAD DATA
-INFILE '../std_data_ln/loaddata_pair.dat'
-REPLACE INTO TABLE t4
-(name,number);
-SELECT * FROM t4;
-id name number
-1 XXX 12345
-2 XXY 12345
-SELECT * FROM t4;
-id name number
-1 XXX 12345
-2 XXY 12345
-LOAD DATA
-INFILE '../std_data_ln/loaddata_pair.dat'
-REPLACE INTO TABLE t4
-(name,number);
-SELECT * FROM t4;
-id name number
-3 XXX 12345
-4 XXY 12345
-SELECT * FROM t4;
-id name number
-3 XXX 12345
-4 XXY 12345
diff --git a/mysql-test/r/rpl_insert_delayed.result b/mysql-test/r/rpl_insert_delayed.result
deleted file mode 100644
index 6815a727fd7..00000000000
--- a/mysql-test/r/rpl_insert_delayed.result
+++ /dev/null
@@ -1,54 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 (id INT primary key auto_increment, name VARCHAR(64));
-truncate table t1;
-insert delayed into t1 values(10, "my name");
-insert delayed into t1 values(10, "is Bond"), (20, "James Bond");
-ERROR 23000: Duplicate entry '10' for key 1
-flush table t1;
-select * from t1;
-id name
-10 my name
-select * from t1;
-id name
-10 my name
-delete from t1 where id!=10;
-insert delayed into t1 values(20, "is Bond"), (10, "James Bond");
-ERROR 23000: Duplicate entry '10' for key 1
-flush table t1;
-select * from t1;
-id name
-10 my name
-20 is Bond
-select * from t1;
-id name
-10 my name
-20 is Bond
-drop table t1;
-CREATE TABLE t1(a int, UNIQUE(a));
-INSERT DELAYED IGNORE INTO t1 VALUES(1);
-INSERT DELAYED IGNORE INTO t1 VALUES(1);
-flush table t1;
-show binlog events limit 11,100;
-Log_name Pos Event_type Server_id End_log_pos Info
-x x x x x use `test`; INSERT DELAYED IGNORE INTO t1 VALUES(1)
-x x x x x use `test`; INSERT DELAYED IGNORE INTO t1 VALUES(1)
-x x x x x use `test`; flush table t1
-select * from t1;
-a
-1
-On slave
-show binlog events limit 12,100;
-Log_name Pos Event_type Server_id End_log_pos Info
-x x x x x use `test`; INSERT DELAYED IGNORE INTO t1 VALUES(1)
-x x x x x use `test`; INSERT DELAYED IGNORE INTO t1 VALUES(1)
-x x x x x use `test`; flush table t1
-select * from t1;
-a
-1
-drop table t1;
-End of 5.0 tests
diff --git a/mysql-test/r/rpl_insert_id.result b/mysql-test/r/rpl_insert_id.result
deleted file mode 100644
index a5c8e17f67e..00000000000
--- a/mysql-test/r/rpl_insert_id.result
+++ /dev/null
@@ -1,444 +0,0 @@
-#
-# Setup
-#
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-use test;
-drop table if exists t1, t2, t3;
-#
-# See if queries that use both auto_increment and LAST_INSERT_ID()
-# are replicated well
-#
-# We also check how the foreign_key_check variable is replicated
-#
-create table t1(a int auto_increment, key(a));
-create table t2(b int auto_increment, c int, key(b));
-insert into t1 values (1),(2),(3);
-insert into t1 values (null);
-insert into t2 values (null,last_insert_id());
-select * from t1;
-a
-1
-2
-3
-4
-select * from t2;
-b c
-1 4
-drop table t1;
-drop table t2;
-create table t1(a int auto_increment, key(a)) engine=innodb;
-create table t2(b int auto_increment, c int, key(b), foreign key(b) references t1(a)) engine=innodb;
-SET FOREIGN_KEY_CHECKS=0;
-insert into t1 values (10);
-insert into t1 values (null),(null),(null);
-insert into t2 values (5,0);
-insert into t2 values (null,last_insert_id());
-SET FOREIGN_KEY_CHECKS=1;
-select * from t1;
-a
-10
-11
-12
-13
-select * from t2;
-b c
-5 0
-6 11
-#
-# check if INSERT SELECT in auto_increment is well replicated (bug #490)
-#
-drop table t2;
-drop table t1;
-create table t1(a int auto_increment, key(a));
-create table t2(b int auto_increment, c int, key(b));
-insert into t1 values (10);
-insert into t1 values (null),(null),(null);
-insert into t2 values (5,0);
-insert into t2 (c) select * from t1;
-select * from t2;
-b c
-5 0
-6 10
-7 11
-8 12
-9 13
-select * from t1;
-a
-10
-11
-12
-13
-select * from t2;
-b c
-5 0
-6 10
-7 11
-8 12
-9 13
-drop table t1;
-drop table t2;
-#
-# Bug#8412: Error codes reported in binary log for CHARACTER SET,
-# FOREIGN_KEY_CHECKS
-#
-SET TIMESTAMP=1000000000;
-CREATE TABLE t1 ( a INT UNIQUE );
-SET FOREIGN_KEY_CHECKS=0;
-INSERT INTO t1 VALUES (1),(1);
-ERROR 23000: Duplicate entry '1' for key 1
-drop table t1;
-#
-# Bug#14553: NULL in WHERE resets LAST_INSERT_ID
-#
-create table t1(a int auto_increment, key(a));
-create table t2(a int);
-insert into t1 (a) values (null);
-insert into t2 (a) select a from t1 where a is null;
-insert into t2 (a) select a from t1 where a is null;
-select * from t2;
-a
-1
-select * from t2;
-a
-1
-drop table t1;
-drop table t2;
-#
-# End of 4.1 tests
-#
-drop function if exists bug15728;
-drop function if exists bug15728_insert;
-drop table if exists t1, t2;
-create table t1 (
-id int not null auto_increment,
-last_id int,
-primary key (id)
-);
-create function bug15728() returns int(11)
-return last_insert_id();
-insert into t1 (last_id) values (0);
-insert into t1 (last_id) values (last_insert_id());
-insert into t1 (last_id) values (bug15728());
-create table t2 (
-id int not null auto_increment,
-last_id int,
-primary key (id)
-);
-create function bug15728_insert() returns int(11) modifies sql data
-begin
-insert into t2 (last_id) values (bug15728());
-return bug15728();
-end|
-create trigger t1_bi before insert on t1 for each row
-begin
-declare res int;
-select bug15728_insert() into res;
-set NEW.last_id = res;
-end|
-insert into t1 (last_id) values (0);
-drop trigger t1_bi;
-select last_insert_id();
-last_insert_id()
-4
-select bug15728_insert();
-bug15728_insert()
-2
-select last_insert_id();
-last_insert_id()
-4
-insert into t1 (last_id) values (bug15728());
-select last_insert_id();
-last_insert_id()
-5
-select * from t1;
-id last_id
-1 0
-2 1
-3 2
-4 1
-5 4
-select * from t2;
-id last_id
-1 3
-2 4
-drop function bug15728;
-drop function bug15728_insert;
-drop table t1, t2;
-create table t1 (n int primary key auto_increment not null,
-b int, unique(b));
-set sql_log_bin=0;
-insert into t1 values(null,100);
-replace into t1 values(null,50),(null,100),(null,150);
-select * from t1 order by n;
-n b
-2 50
-3 100
-4 150
-truncate table t1;
-set sql_log_bin=1;
-insert into t1 values(null,100);
-select * from t1 order by n;
-n b
-1 100
-insert into t1 values(null,200),(null,300);
-delete from t1 where b <> 100;
-select * from t1 order by n;
-n b
-1 100
-replace into t1 values(null,100),(null,350);
-select * from t1 order by n;
-n b
-2 100
-3 350
-select * from t1 order by n;
-n b
-2 100
-3 350
-insert into t1 values (NULL,400),(3,500),(NULL,600) on duplicate key UPDATE n=1000;
-select * from t1 order by n;
-n b
-2 100
-4 400
-1000 350
-1001 600
-select * from t1 order by n;
-n b
-2 100
-4 400
-1000 350
-1001 600
-drop table t1;
-create table t1 (n int primary key auto_increment not null,
-b int, unique(b));
-insert into t1 values(null,100);
-select * from t1 order by n;
-n b
-1 100
-insert into t1 values(null,200),(null,300);
-delete from t1 where b <> 100;
-select * from t1 order by n;
-n b
-1 100
-insert into t1 values(null,100),(null,350) on duplicate key update n=2;
-select * from t1 order by n;
-n b
-2 100
-3 350
-select * from t1 order by n;
-n b
-2 100
-3 350
-drop table t1;
-CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT,
-UNIQUE(b));
-INSERT INTO t1(b) VALUES(1),(1),(2) ON DUPLICATE KEY UPDATE t1.b=10;
-SELECT * FROM t1;
-a b
-1 10
-2 2
-SELECT * FROM t1;
-a b
-1 10
-2 2
-drop table t1;
-CREATE TABLE t1 (
-id bigint(20) unsigned NOT NULL auto_increment,
-field_1 int(10) unsigned NOT NULL,
-field_2 varchar(255) NOT NULL,
-field_3 varchar(255) NOT NULL,
-PRIMARY KEY (id),
-UNIQUE KEY field_1 (field_1, field_2)
-);
-CREATE TABLE t2 (
-field_a int(10) unsigned NOT NULL,
-field_b varchar(255) NOT NULL,
-field_c varchar(255) NOT NULL
-);
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (1, 'a', '1a');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (2, 'b', '2b');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (3, 'c', '3c');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (4, 'd', '4d');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (5, 'e', '5e');
-INSERT INTO t1 (field_1, field_2, field_3)
-SELECT t2.field_a, t2.field_b, t2.field_c
-FROM t2
-ON DUPLICATE KEY UPDATE
-t1.field_3 = t2.field_c;
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (6, 'f', '6f');
-INSERT INTO t1 (field_1, field_2, field_3)
-SELECT t2.field_a, t2.field_b, t2.field_c
-FROM t2
-ON DUPLICATE KEY UPDATE
-t1.field_3 = t2.field_c;
-SELECT * FROM t1;
-id field_1 field_2 field_3
-1 1 a 1a
-2 2 b 2b
-3 3 c 3c
-4 4 d 4d
-5 5 e 5e
-6 6 f 6f
-SELECT * FROM t1;
-id field_1 field_2 field_3
-1 1 a 1a
-2 2 b 2b
-3 3 c 3c
-4 4 d 4d
-5 5 e 5e
-6 6 f 6f
-drop table t1, t2;
-DROP PROCEDURE IF EXISTS p1;
-DROP TABLE IF EXISTS t1, t2;
-SELECT LAST_INSERT_ID(0);
-LAST_INSERT_ID(0)
-0
-CREATE TABLE t1 (
-id INT NOT NULL DEFAULT 0,
-last_id INT,
-PRIMARY KEY (id)
-);
-CREATE TABLE t2 (
-id INT NOT NULL AUTO_INCREMENT,
-last_id INT,
-PRIMARY KEY (id)
-);
-CREATE PROCEDURE p1()
-BEGIN
-INSERT INTO t2 (last_id) VALUES (LAST_INSERT_ID());
-INSERT INTO t1 (last_id) VALUES (LAST_INSERT_ID());
-END|
-CALL p1();
-SELECT * FROM t1;
-id last_id
-0 1
-SELECT * FROM t2;
-id last_id
-1 0
-SELECT * FROM t1;
-id last_id
-0 1
-SELECT * FROM t2;
-id last_id
-1 0
-DROP PROCEDURE p1;
-DROP TABLE t1, t2;
-DROP PROCEDURE IF EXISTS p1;
-DROP FUNCTION IF EXISTS f1;
-DROP FUNCTION IF EXISTS f2;
-DROP FUNCTION IF EXISTS f3;
-DROP TABLE IF EXISTS t1, t2;
-CREATE TABLE t1 (
-i INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-j INT DEFAULT 0
-);
-CREATE TABLE t2 (i INT);
-CREATE PROCEDURE p1()
-BEGIN
-INSERT INTO t1 (i) VALUES (NULL);
-INSERT INTO t2 (i) VALUES (LAST_INSERT_ID());
-INSERT INTO t1 (i) VALUES (NULL), (NULL);
-INSERT INTO t2 (i) VALUES (LAST_INSERT_ID());
-END |
-CREATE FUNCTION f1() RETURNS INT MODIFIES SQL DATA
-BEGIN
-INSERT INTO t1 (i) VALUES (NULL);
-INSERT INTO t2 (i) VALUES (LAST_INSERT_ID());
-INSERT INTO t1 (i) VALUES (NULL), (NULL);
-INSERT INTO t2 (i) VALUES (LAST_INSERT_ID());
-RETURN 0;
-END |
-CREATE FUNCTION f2() RETURNS INT NOT DETERMINISTIC
-RETURN LAST_INSERT_ID() |
-CREATE FUNCTION f3() RETURNS INT MODIFIES SQL DATA
-BEGIN
-INSERT INTO t2 (i) VALUES (LAST_INSERT_ID());
-RETURN 0;
-END |
-INSERT INTO t1 VALUES (NULL, -1);
-CALL p1();
-SELECT f1();
-f1()
-0
-INSERT INTO t1 VALUES (NULL, f2()), (NULL, LAST_INSERT_ID()),
-(NULL, LAST_INSERT_ID()), (NULL, f2()), (NULL, f2());
-INSERT INTO t1 VALUES (NULL, f2());
-INSERT INTO t1 VALUES (NULL, LAST_INSERT_ID()), (NULL, LAST_INSERT_ID(5)),
-(NULL, @@LAST_INSERT_ID);
-INSERT INTO t1 VALUES (NULL, 0), (NULL, LAST_INSERT_ID());
-UPDATE t1 SET j= -1 WHERE i IS NULL;
-INSERT INTO t1 (i) VALUES (NULL);
-INSERT INTO t1 (i) VALUES (NULL);
-SELECT f3();
-f3()
-0
-SELECT * FROM t1;
-i j
-1 -1
-2 0
-3 0
-4 0
-5 0
-6 0
-7 0
-8 3
-9 3
-10 3
-11 3
-12 3
-13 8
-14 13
-15 5
-16 13
-17 -1
-18 14
-19 0
-20 0
-SELECT * FROM t2;
-i
-2
-3
-5
-6
-19
-SELECT * FROM t1;
-i j
-1 -1
-2 0
-3 0
-4 0
-5 0
-6 0
-7 0
-8 3
-9 3
-10 3
-11 3
-12 3
-13 8
-14 13
-15 5
-16 13
-17 -1
-18 14
-19 0
-20 0
-SELECT * FROM t2;
-i
-2
-3
-5
-6
-19
-DROP PROCEDURE p1;
-DROP FUNCTION f1;
-DROP FUNCTION f2;
-DROP FUNCTION f3;
-DROP TABLE t1, t2;
-
-# End of 5.0 tests
-
diff --git a/mysql-test/r/rpl_insert_ignore.result b/mysql-test/r/rpl_insert_ignore.result
deleted file mode 100644
index da24c86627c..00000000000
--- a/mysql-test/r/rpl_insert_ignore.result
+++ /dev/null
@@ -1,70 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 (
-a int unsigned not null auto_increment primary key,
-b int unsigned,
-unique (b)
-) ENGINE=innodb;
-CREATE TABLE t2 (
-a int unsigned, # to force INSERT SELECT to have a certain order
-b int unsigned
-) ENGINE=innodb;
-INSERT INTO t1 VALUES (NULL, 1);
-INSERT INTO t1 VALUES (NULL, 2);
-INSERT INTO t1 VALUES (NULL, 3);
-INSERT INTO t1 VALUES (NULL, 4);
-INSERT INTO t2 VALUES (1, 1);
-INSERT INTO t2 VALUES (2, 2);
-INSERT INTO t2 VALUES (3, 5);
-INSERT INTO t2 VALUES (4, 3);
-INSERT INTO t2 VALUES (5, 4);
-INSERT INTO t2 VALUES (6, 6);
-INSERT IGNORE INTO t1 SELECT NULL, t2.b FROM t2 ORDER BY t2.a;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-SELECT * FROM t1 ORDER BY a;
-a b
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-drop table t1;
-CREATE TABLE t1 (
-a int unsigned not null auto_increment primary key,
-b int unsigned,
-unique (b)
-) ENGINE=myisam;
-INSERT INTO t1 VALUES (1, 1);
-INSERT INTO t1 VALUES (2, 2);
-INSERT INTO t1 VALUES (3, 3);
-INSERT INTO t1 VALUES (4, 4);
-INSERT IGNORE INTO t1 SELECT NULL, t2.b FROM t2 ORDER BY t2.a;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-SELECT * FROM t1 ORDER BY a;
-a b
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-drop table t1, t2;
diff --git a/mysql-test/r/rpl_insert_select.result b/mysql-test/r/rpl_insert_select.result
deleted file mode 100644
index 1aff39e0026..00000000000
--- a/mysql-test/r/rpl_insert_select.result
+++ /dev/null
@@ -1,17 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int not null primary key);
-insert into t1 values (1);
-create table t2 (n int);
-insert into t2 values (1);
-insert ignore into t1 select * from t2;
-insert into t1 values (2);
-select * from t1;
-n
-1
-2
-drop table t1,t2;
diff --git a/mysql-test/r/rpl_killed_ddl.result b/mysql-test/r/rpl_killed_ddl.result
deleted file mode 100644
index aa419a8556e..00000000000
--- a/mysql-test/r/rpl_killed_ddl.result
+++ /dev/null
@@ -1,146 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-DROP DATABASE IF EXISTS d1;
-DROP DATABASE IF EXISTS d2;
-DROP DATABASE IF EXISTS d3;
-DROP DATABASE IF EXISTS d4;
-DROP FUNCTION IF EXISTS f1;
-DROP FUNCTION IF EXISTS f2;
-DROP FUNCTION IF EXISTS f3;
-DROP FUNCTION IF EXISTS f4;
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-DROP TABLE IF EXISTS t3;
-DROP TABLE IF EXISTS t4;
-DROP PROCEDURE IF EXISTS p1;
-DROP PROCEDURE IF EXISTS p2;
-DROP PROCEDURE IF EXISTS p3;
-DROP PROCEDURE IF EXISTS p4;
-DROP TRIGGER IF EXISTS tr1;
-DROP TRIGGER IF EXISTS tr2;
-DROP TRIGGER IF EXISTS tr3;
-DROP TRIGGER IF EXISTS tr4;
-CREATE DATABASE d1;
-CREATE FUNCTION f1 () RETURNS INT DETERMINISTIC
-RETURN 1;
-CREATE PROCEDURE p1 (OUT rows INT)
-BEGIN
-SELECT COUNT(*) INTO rows FROM t1;
-END;
-//
-CREATE TABLE t1 (a int);
-CREATE TABLE t3 (a int);
-CREATE TRIGGER tr1 BEFORE INSERT ON t1
-FOR EACH ROW BEGIN
-DELETE FROM t4 WHERE a=NEW.a;
-END;
-//
-CREATE INDEX i1 ON t1 (a);
-CREATE VIEW v1 AS SELECT a FROM t1 WHERE a < 100;
-[on master]
-[on master1]
-CREATE DATABASE d2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-ALTER DATABASE d1
-DEFAULT CHARACTER SET = 'utf8';
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP DATABASE d1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP DATABASE d2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-CREATE FUNCTION f2 () RETURNS INT DETERMINISTIC
-RETURN 1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-ALTER FUNCTION f1 SQL SECURITY INVOKER;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP FUNCTION IF EXISTS f1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP FUNCTION IF EXISTS f2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-CREATE PROCEDURE p2 (OUT rows INT)
-BEGIN
-SELECT COUNT(*) INTO rows FROM t2;
-END;
-//
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-ALTER PROCEDURE p1 SQL SECURITY INVOKER COMMENT 'return rows of table t1';
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP PROCEDURE IF EXISTS p1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP PROCEDURE IF EXISTS p2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-CREATE TABLE t2 (b int);
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-ALTER TABLE t1 ADD (d int);
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-RENAME TABLE t3 TO t4;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-CREATE INDEX i2 on t1 (a);
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP INDEX i1 on t1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-CREATE TRIGGER tr2 BEFORE INSERT ON t4
-FOR EACH ROW BEGIN
-DELETE FROM t1 WHERE a=NEW.a;
-END;
-//
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP TRIGGER tr1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP TRIGGER IF EXISTS tr2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-CREATE VIEW v2 AS SELECT a FROM t1 WHERE a > 100;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP VIEW v1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP VIEW IF EXISTS v2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP TABLE t1;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP TABLE IF EXISTS t2;
-source include/kill_query.inc;
-source include/diff_master_slave.inc;
-DROP DATABASE IF EXISTS d1;
-DROP DATABASE IF EXISTS d2;
-DROP DATABASE IF EXISTS d3;
-DROP DATABASE IF EXISTS d4;
-DROP FUNCTION IF EXISTS f1;
-DROP FUNCTION IF EXISTS f2;
-DROP FUNCTION IF EXISTS f3;
-DROP FUNCTION IF EXISTS f4;
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-DROP TABLE IF EXISTS t3;
-DROP TABLE IF EXISTS t4;
-DROP PROCEDURE IF EXISTS p1;
-DROP PROCEDURE IF EXISTS p2;
-DROP PROCEDURE IF EXISTS p3;
-DROP PROCEDURE IF EXISTS p4;
diff --git a/mysql-test/r/rpl_known_bugs_detection.result b/mysql-test/r/rpl_known_bugs_detection.result
deleted file mode 100644
index c23586c6f61..00000000000
--- a/mysql-test/r/rpl_known_bugs_detection.result
+++ /dev/null
@@ -1,133 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT,
-UNIQUE(b));
-INSERT INTO t1(b) VALUES(1),(1),(2) ON DUPLICATE KEY UPDATE t1.b=10;
-SELECT * FROM t1;
-a b
-1 10
-2 2
-show slave status;;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port #
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 1105
-Last_Error Error 'master may suffer from http://bugs.mysql.com/bug.php?id=24432 so slave stops; check error log on slave for more info' on query. Default database: 'test'. Query: 'INSERT INTO t1(b) VALUES(1),(1),(2) ON DUPLICATE KEY UPDATE t1.b=10'
-Skip_Counter 0
-Exec_Master_Log_Pos 238
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-SELECT * FROM t1;
-a b
-stop slave;
-reset slave;
-reset master;
-drop table t1;
-start slave;
-CREATE TABLE t1 (
-id bigint(20) unsigned NOT NULL auto_increment,
-field_1 int(10) unsigned NOT NULL,
-field_2 varchar(255) NOT NULL,
-field_3 varchar(255) NOT NULL,
-PRIMARY KEY (id),
-UNIQUE KEY field_1 (field_1, field_2)
-);
-CREATE TABLE t2 (
-field_a int(10) unsigned NOT NULL,
-field_b varchar(255) NOT NULL,
-field_c varchar(255) NOT NULL
-);
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (1, 'a', '1a');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (2, 'b', '2b');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (3, 'c', '3c');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (4, 'd', '4d');
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (5, 'e', '5e');
-INSERT INTO t1 (field_1, field_2, field_3)
-SELECT t2.field_a, t2.field_b, t2.field_c
-FROM t2
-ON DUPLICATE KEY UPDATE
-t1.field_3 = t2.field_c;
-INSERT INTO t2 (field_a, field_b, field_c) VALUES (6, 'f', '6f');
-INSERT INTO t1 (field_1, field_2, field_3)
-SELECT t2.field_a, t2.field_b, t2.field_c
-FROM t2
-ON DUPLICATE KEY UPDATE
-t1.field_3 = t2.field_c;
-SELECT * FROM t1;
-id field_1 field_2 field_3
-1 1 a 1a
-2 2 b 2b
-3 3 c 3c
-4 4 d 4d
-5 5 e 5e
-6 6 f 6f
-show slave status;;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port #
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 1105
-Last_Error Error 'master may suffer from http://bugs.mysql.com/bug.php?id=24432 so slave stops; check error log on slave for more info' on query. Default database: 'test'. Query: 'INSERT INTO t1 (field_1, field_2, field_3)
-SELECT t2.field_a, t2.field_b, t2.field_c
-FROM t2
-ON DUPLICATE KEY UPDATE
-t1.field_3 = t2.field_c'
-Skip_Counter 0
-Exec_Master_Log_Pos 1270
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-SELECT * FROM t1;
-id field_1 field_2 field_3
-drop table t1, t2;
-drop table t1, t2;
diff --git a/mysql-test/r/rpl_loaddata.result b/mysql-test/r/rpl_loaddata.result
deleted file mode 100644
index e704ada657b..00000000000
--- a/mysql-test/r/rpl_loaddata.result
+++ /dev/null
@@ -1,87 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-reset master;
-create table t1(a int not null auto_increment, b int, primary key(a) );
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
-load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines;
-create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
-insert into t3 select * from t2;
-select * from t1;
-a b
-1 10
-2 15
-select * from t3;
-day id category name
-2003-02-22 2461 b a a a @ %  ' " a
-2003-03-22 2161 c asdf
-2003-03-22 2416 a bbbbb
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-slave-bin.000001 1272
-drop table t1;
-drop table t2;
-drop table t3;
-create table t1(a int, b int, unique(b));
-insert into t1 values(1,10);
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-set global sql_slave_skip_counter=1;
-start slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1789 # # master-bin.000001 Yes Yes 0 0 1789 # None 0 No #
-set sql_log_bin=0;
-delete from t1;
-set sql_log_bin=1;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-stop slave;
-change master to master_user='test';
-change master to master_user='root';
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1824 # # master-bin.000001 No No 0 0 1824 # None 0 No #
-set global sql_slave_skip_counter=1;
-start slave;
-set sql_log_bin=0;
-delete from t1;
-set sql_log_bin=1;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-stop slave;
-reset slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 4 # # No No 0 0 0 # None 0 No #
-reset master;
-create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60),
-unique(day)) engine=MyISAM;
-load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields
-terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
-'\n##\n' starting by '>' ignore 1 lines;
-ERROR 23000: Duplicate entry '2003-03-22' for key 1
-select * from t2;
-day id category name
-2003-02-22 2461 b a a a @ %  ' " a
-2003-03-22 2161 c asdf
-start slave;
-select * from t2;
-day id category name
-2003-02-22 2461 b a a a @ %  ' " a
-2003-03-22 2161 c asdf
-alter table t2 drop key day;
-delete from t2;
-load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields
-terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
-'\n##\n' starting by '>' ignore 1 lines;
-ERROR 23000: Duplicate entry '2003-03-22' for key 1
-set @@global.sql_slave_skip_counter=1;
-start slave;
-drop table t2;
-drop table t1;
-CREATE TABLE t1 (word CHAR(20) NOT NULL PRIMARY KEY) ENGINE=INNODB;
-LOAD DATA INFILE "../std_data_ln/words.dat" INTO TABLE t1;
-ERROR 23000: Duplicate entry 'Aarhus' for key 1
-DROP TABLE t1;
diff --git a/mysql-test/r/rpl_loaddata_charset.result b/mysql-test/r/rpl_loaddata_charset.result
deleted file mode 100644
index 47fee19cf5d..00000000000
--- a/mysql-test/r/rpl_loaddata_charset.result
+++ /dev/null
@@ -1,78 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a varchar(10) character set utf8);
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-set @@character_set_database=koi8r;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-set @@character_set_database=DEFAULT;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-set @@character_set_database=koi8r;
-load data infile '../std_data_ln/loaddata6.dat' into table t1;
-set @@character_set_database=DEFAULT;
-load data infile '../std_data_ln/loaddata6.dat' into table t1 character set koi8r;
-select hex(a) from t1;
-hex(a)
-C3BF
-D0AA
-C3BF
-C3BF
-C3BF
-D0AA
-D0AA
-select hex(a) from t1;
-hex(a)
-C3BF
-D0AA
-C3BF
-C3BF
-C3BF
-D0AA
-D0AA
-drop table t1;
--------------test bug#45516------------------
-DROP DATABASE IF EXISTS mysqltest;
-CREATE DATABASE mysqltest CHARSET UTF8;
-USE mysqltest;
-CREATE TABLE t (cl varchar(100)) CHARSET UTF8;
-LOAD DATA LOCAL INFILE './std_data/loaddata_utf8.dat' INTO TABLE t
-FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
-----------content on master----------
-SELECT hex(cl) FROM t;
-hex(cl)
-E4B880E4BA8CE4B889
-E59B9BE4BA94E585AD
-E4B883E585ABE4B99D
-----------content on slave----------
-USE mysqltest;
-SELECT hex(cl) FROM t;
-hex(cl)
-E4B880E4BA8CE4B889
-E59B9BE4BA94E585AD
-E4B883E585ABE4B99D
-DROP DATABASE mysqltest;
-DROP DATABASE IF EXISTS mysqltest;
-CREATE DATABASE mysqltest CHARSET UTF8;
-USE mysqltest;
-CREATE TABLE t (cl varchar(100)) CHARSET UTF8;
-LOAD DATA INFILE '../std_data_ln/loaddata_utf8.dat' INTO TABLE t
-FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
-----------content on master----------
-SELECT hex(cl) FROM t;
-hex(cl)
-E4B880E4BA8CE4B889
-E59B9BE4BA94E585AD
-E4B883E585ABE4B99D
-----------content on slave----------
-USE mysqltest;
-SELECT hex(cl) FROM t;
-hex(cl)
-E4B880E4BA8CE4B889
-E59B9BE4BA94E585AD
-E4B883E585ABE4B99D
-DROP DATABASE mysqltest;
diff --git a/mysql-test/r/rpl_loaddata_map.result b/mysql-test/r/rpl_loaddata_map.result
deleted file mode 100644
index c2159adef6a..00000000000
--- a/mysql-test/r/rpl_loaddata_map.result
+++ /dev/null
@@ -1,26 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t2 (id int not null primary key auto_increment);
-select @@session.read_buffer_size - @@session.max_allowed_packet > 0 ;
-@@session.read_buffer_size - @@session.max_allowed_packet > 0
-1
-load data infile 'MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' into table t2;
-select count(*) from t2 /* 5 000 */;
-count(*)
-5000
-show binlog events in 'master-bin.000002' from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000002 98 Query 1 # use `test`; create table t2 (id int not null primary key auto_increment)
-master-bin.000002 221 Begin_load_query 1 # ;file_id=#;block_len=8192
-master-bin.000002 8436 Append_block 1 # ;file_id=#;block_len=8192
-master-bin.000002 16651 Append_block 1 # ;file_id=#;block_len=7509
-master-bin.000002 24183 Execute_load_query 1 # use `test`; load data infile 'MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' into table t2 ;file_id=#
-select count(*) from t2 /* 5 000 */;
-count(*)
-5000
-drop table t1, t2;
-end of the tests
diff --git a/mysql-test/r/rpl_loaddata_rule_m.result b/mysql-test/r/rpl_loaddata_rule_m.result
deleted file mode 100644
index 375057aad0a..00000000000
--- a/mysql-test/r/rpl_loaddata_rule_m.result
+++ /dev/null
@@ -1,21 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest;
-stop slave;
-create database mysqltest;
-create table t1(a int, b int, unique(b));
-use mysqltest;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table test.t1;
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # drop database if exists mysqltest
-master-bin.000001 # Query 1 # create database mysqltest
-master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=12
-master-bin.000001 # Execute_load_query 1 # use `mysqltest`; load data infile '../std_data_ln/rpl_loaddata.dat' into table test.t1 ;file_id=1
-drop database mysqltest;
-use test;
-drop table t1;
diff --git a/mysql-test/r/rpl_loaddata_rule_s.result b/mysql-test/r/rpl_loaddata_rule_s.result
deleted file mode 100644
index 62e9b64cb0d..00000000000
--- a/mysql-test/r/rpl_loaddata_rule_s.result
+++ /dev/null
@@ -1,15 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-reset master;
-create table t1(a int, b int, unique(b));
-load data infile '../std_data_ln/rpl_loaddata.dat' into table test.t1;
-select count(*) from t1;
-count(*)
-2
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-drop table t1;
diff --git a/mysql-test/r/rpl_loaddatalocal.result b/mysql-test/r/rpl_loaddatalocal.result
deleted file mode 100644
index 20e56a62133..00000000000
--- a/mysql-test/r/rpl_loaddatalocal.result
+++ /dev/null
@@ -1,31 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1(a int);
-select * into outfile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' from t1;
-truncate table t1;
-load data local infile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' into table t1;
-select a,count(*) from t1 group by a;
-a count(*)
-1 10000
-drop table t1;
-create table t1(a int);
-insert into t1 values (1), (2), (2), (3);
-select * into outfile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' from t1;
-drop table t1;
-create table t1(a int primary key);
-load data local infile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' into table t1;
-select * from t1;
-a
-1
-2
-3
-select * from t1;
-a
-1
-2
-3
-drop table t1;
diff --git a/mysql-test/r/rpl_locale.result b/mysql-test/r/rpl_locale.result
deleted file mode 100644
index b7396084663..00000000000
--- a/mysql-test/r/rpl_locale.result
+++ /dev/null
@@ -1,20 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (s1 char(10));
-set lc_time_names= 'de_DE';
-insert into t1 values (date_format('2001-01-01','%W'));
-set lc_time_names= 'en_US';
-insert into t1 values (date_format('2001-01-01','%W'));
-select * from t1;
-s1
-Montag
-Monday
-select * from t1;
-s1
-Montag
-Monday
-drop table t1;
diff --git a/mysql-test/r/rpl_log.result b/mysql-test/r/rpl_log.result
deleted file mode 100644
index ae3fe107038..00000000000
--- a/mysql-test/r/rpl_log.result
+++ /dev/null
@@ -1,119 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-reset master;
-reset slave;
-start slave;
-create table t1(n int not null auto_increment primary key);
-insert into t1 values (NULL);
-drop table t1;
-create table t1 (word char(20) not null);
-load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines;
-select count(*) from t1;
-count(*)
-69
-drop table t1;
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
-master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
-master-bin.000001 219 Intvar 1 247 INSERT_ID=1
-master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
-master-bin.000001 338 Query 1 414 use `test`; drop table t1
-master-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
-master-bin.000001 517 Begin_load_query 1 1121 ;file_id=#;block_len=#
-master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile 'words.dat' into table t1 ignore 1 lines ;file_id=#
-master-bin.000001 1269 Query 1 1345 use `test`; drop table t1
-show binlog events from 98 limit 1;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
-show binlog events from 98 limit 2;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
-master-bin.000001 219 Intvar 1 247 INSERT_ID=1
-show binlog events from 98 limit 2,1;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
-flush logs;
-create table t5 (a int);
-drop table t5;
-flush logs;
-stop slave;
-create table t1 (n int);
-insert into t1 values (1);
-drop table t1;
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
-master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
-master-bin.000001 219 Intvar 1 247 INSERT_ID=1
-master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
-master-bin.000001 338 Query 1 414 use `test`; drop table t1
-master-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
-master-bin.000001 517 Begin_load_query 1 1121 ;file_id=#;block_len=#
-master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile 'words.dat' into table t1 ignore 1 lines ;file_id=#
-master-bin.000001 1269 Query 1 1345 use `test`; drop table t1
-master-bin.000001 1345 Rotate 1 1389 master-bin.000002;pos=4
-show binlog events in 'master-bin.000002';
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000002 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
-master-bin.000002 98 Query 1 184 use `test`; create table t5 (a int)
-master-bin.000002 184 Query 1 260 use `test`; drop table t5
-master-bin.000002 260 Query 1 346 use `test`; create table t1 (n int)
-master-bin.000002 346 Query 1 434 use `test`; insert into t1 values (1)
-master-bin.000002 434 Query 1 510 use `test`; drop table t1
-show binary logs;
-Log_name File_size
-master-bin.000001 1389
-master-bin.000002 510
-start slave;
-show binary logs;
-Log_name File_size
-slave-bin.000001 1552
-slave-bin.000002 348
-show binlog events in 'slave-bin.000001' from 4;
-Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000001 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
-slave-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
-slave-bin.000001 219 Intvar 1 247 INSERT_ID=1
-slave-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
-slave-bin.000001 338 Query 1 414 use `test`; drop table t1
-slave-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
-slave-bin.000001 517 Begin_load_query 1 1121 ;file_id=#;block_len=#
-slave-bin.000001 1121 Execute_load_query 1 1271 use `test`; load data INFILE 'words.dat' INTO table t1 ignore 1 lines ;file_id=#
-slave-bin.000001 1271 Query 1 1347 use `test`; drop table t1
-slave-bin.000001 1347 Query 1 1433 use `test`; create table t5 (a int)
-slave-bin.000001 1433 Query 1 1509 use `test`; drop table t5
-slave-bin.000001 1509 Rotate 2 1552 slave-bin.000002;pos=4
-show binlog events in 'slave-bin.000002' from 4;
-Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000002 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
-slave-bin.000002 98 Query 1 184 use `test`; create table t1 (n int)
-slave-bin.000002 184 Query 1 272 use `test`; insert into t1 values (1)
-slave-bin.000002 272 Query 1 348 use `test`; drop table t1
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000002 510 # # master-bin.000002 Yes Yes 0 0 510 # None 0 No #
-show binlog events in 'slave-bin.000005' from 4;
-ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log
-create table t1(a int auto_increment primary key, b int);
-insert into t1 values (NULL, 1);
-reset master;
-set insert_id=5;
-insert into t1 values (NULL, last_insert_id()), (NULL, last_insert_id());
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000001 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
-slave-bin.000001 98 Intvar 2 126 LAST_INSERT_ID=1
-slave-bin.000001 126 Intvar 2 154 INSERT_ID=5
-slave-bin.000001 154 Query 2 289 use `test`; insert into t1 values (NULL, last_insert_id()), (NULL, last_insert_id())
-select * from t1;
-a b
-1 1
-5 1
-6 1
-drop table t1;
diff --git a/mysql-test/r/rpl_log_pos.result b/mysql-test/r/rpl_log_pos.result
deleted file mode 100644
index b55326415bf..00000000000
--- a/mysql-test/r/rpl_log_pos.result
+++ /dev/null
@@ -1,97 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
-stop slave;
-change master to master_log_pos=73;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 73
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 73
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-start slave;
-stop slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 73
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 73
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 98
-create table if not exists t1 (n int);
-drop table if exists t1;
-create table t1 (n int);
-insert into t1 values (1),(2),(3);
-change master to master_log_pos=98;
-start slave;
-select * from t1;
-n
-1
-2
-3
-drop table t1;
-End of 5.0 tests
diff --git a/mysql-test/r/rpl_many_optimize.result b/mysql-test/r/rpl_many_optimize.result
deleted file mode 100644
index b2148892591..00000000000
--- a/mysql-test/r/rpl_many_optimize.result
+++ /dev/null
@@ -1,9 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int not null auto_increment primary key, b int, key(b));
-INSERT INTO t1 (a) VALUES (1),(2);
-drop table t1;
diff --git a/mysql-test/r/rpl_master_pos_wait.result b/mysql-test/r/rpl_master_pos_wait.result
deleted file mode 100644
index b831eb9b95a..00000000000
--- a/mysql-test/r/rpl_master_pos_wait.result
+++ /dev/null
@@ -1,24 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-select master_pos_wait('master-bin.999999',0,2);
-master_pos_wait('master-bin.999999',0,2)
--1
-explain extended select master_pos_wait('master-bin.999999',0,2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
-Warnings:
-Note 1003 select master_pos_wait(_latin1'master-bin.999999',0,2) AS `master_pos_wait('master-bin.999999',0,2)`
-select master_pos_wait('master-bin.999999',0);
-stop slave sql_thread;
-master_pos_wait('master-bin.999999',0)
-NULL
-"*** must be empty ***"
-show slave status;
-"*** must be NULL ***"
-select master_pos_wait('foo', 98);
-master_pos_wait('foo', 98)
-NULL
diff --git a/mysql-test/r/rpl_max_relay_size.result b/mysql-test/r/rpl_max_relay_size.result
deleted file mode 100644
index 95c9ae79d05..00000000000
--- a/mysql-test/r/rpl_max_relay_size.result
+++ /dev/null
@@ -1,273 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-#
-# Generate a big enough master's binlog to cause relay log rotations
-#
-create table t1 (a int);
-drop table t1;
-reset slave;
-#
-# Test 1
-#
-set @my_max_binlog_size= @@global.max_binlog_size;
-set global max_binlog_size=8192;
-set global max_relay_log_size=8192-1;
-select @@global.max_relay_log_size;
-@@global.max_relay_log_size
-4096
-start slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 72952
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 72952
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-#
-# Test 2
-#
-stop slave;
-reset slave;
-set global max_relay_log_size=(5*4096);
-select @@global.max_relay_log_size;
-@@global.max_relay_log_size 20480
-start slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 72952
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 72952
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-#
-# Test 3: max_relay_log_size = 0
-#
-stop slave;
-reset slave;
-set global max_relay_log_size=0;
-select @@global.max_relay_log_size;
-@@global.max_relay_log_size 0
-start slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 72952
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 72952
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-#
-# Test 4: Tests below are mainly to ensure that we have not coded with wrong assumptions
-#
-stop slave;
-reset slave;
-flush logs;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File
-Read_Master_Log_Pos 4
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 0
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-#
-# Test 5
-#
-reset slave;
-start slave;
-flush logs;
-create table t1 (a int);
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 73038
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 73038
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-#
-# Test 6: one more rotation, to be sure Relay_Log_Space is correctly updated
-#
-flush logs;
-drop table t1;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_PORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 73114
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 73114
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-flush logs;
-show master status;
-File master-bin.000002
-Position 98
-Binlog_Do_DB
-Binlog_Ignore_DB
-set global max_binlog_size= @my_max_binlog_size;
-#
-# End of 4.1 tests
-#
diff --git a/mysql-test/r/rpl_misc_functions.result b/mysql-test/r/rpl_misc_functions.result
deleted file mode 100644
index a8e5520ca8f..00000000000
--- a/mysql-test/r/rpl_misc_functions.result
+++ /dev/null
@@ -1,55 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1(id int, i int, r1 int, r2 int, p varchar(100));
-insert into t1 values(1, connection_id(), 0, 0, "");
-insert into t1 values(2, 0, rand()*1000, rand()*1000, "");
-set sql_log_bin=0;
-insert into t1 values(6, 0, rand(), rand(), "");
-delete from t1 where id=6;
-set sql_log_bin=1;
-insert into t1 values(3, 0, 0, 0, password('does_this_work?'));
-insert into t1 values(4, connection_id(), rand()*1000, rand()*1000, password('does_this_still_work?'));
-select * into outfile 'rpl_misc_functions.outfile' from t1;
-create table t2 like t1;
-load data local infile 'MYSQLTEST_VARDIR/master-data/test/rpl_misc_functions.outfile' into table t2;
-select * from t1, t2 where (t1.id=t2.id) and not(t1.i=t2.i and t1.r1=t2.r1 and t1.r2=t2.r2 and t1.p=t2.p);
-id i r1 r2 p id i r1 r2 p
-drop table t1;
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-col_a DOUBLE DEFAULT NULL);
-CREATE PROCEDURE test_replication_sp1()
-BEGIN
-INSERT INTO t1 (col_a) VALUES (rand()), (rand());
-INSERT INTO t1 (col_a) VALUES (rand());
-END|
-CREATE PROCEDURE test_replication_sp2()
-BEGIN
-CALL test_replication_sp1();
-CALL test_replication_sp1();
-END|
-CREATE FUNCTION test_replication_sf() RETURNS DOUBLE DETERMINISTIC
-BEGIN
-RETURN (rand() + rand());
-END|
-CALL test_replication_sp1();
-CALL test_replication_sp2();
-INSERT INTO t1 (col_a) VALUES (test_replication_sf());
-INSERT INTO t1 (col_a) VALUES (test_replication_sf());
-INSERT INTO t1 (col_a) VALUES (test_replication_sf());
-select * from t1 into outfile "../tmp/t1_slave.txt";
-create temporary table t1_slave select * from t1 where 1=0;
-load data infile '../tmp/t1_slave.txt' into table t1_slave;
-select count(*) into @aux from t1 join t1_slave using (id)
-where ABS(t1.col_a - t1_slave.col_a) < 0.0000001 ;
-SELECT @aux;
-@aux
-12
-DROP TABLE t1, t1_slave;
-DROP PROCEDURE test_replication_sp1;
-DROP PROCEDURE test_replication_sp2;
-DROP FUNCTION test_replication_sf;
diff --git a/mysql-test/r/rpl_multi_delete.result b/mysql-test/r/rpl_multi_delete.result
deleted file mode 100644
index d2c68eee62e..00000000000
--- a/mysql-test/r/rpl_multi_delete.result
+++ /dev/null
@@ -1,31 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int);
-create table t2 (a int);
-insert into t1 values (1);
-insert into t2 values (1);
-delete t1.* from t1, t2 where t1.a = t2.a;
-select * from t1;
-a
-select * from t2;
-a
-1
-select * from t1;
-a
-select * from t2;
-a
-1
-delete from t1;
-delete from t2;
-insert into t1 values(1);
-insert into t2 values(1);
-DELETE t1.*, t2.* from t1, t2;
-select * from t1;
-a
-select * from t2;
-a
-drop table t1,t2;
diff --git a/mysql-test/r/rpl_multi_delete2.result b/mysql-test/r/rpl_multi_delete2.result
deleted file mode 100644
index 73db9f62eb4..00000000000
--- a/mysql-test/r/rpl_multi_delete2.result
+++ /dev/null
@@ -1,44 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set sql_log_bin=0;
-create database mysqltest_from;
-set sql_log_bin=1;
-create database mysqltest_to;
-use mysqltest_from;
-drop table if exists a;
-CREATE TABLE a (i INT);
-INSERT INTO a VALUES(1);
-DELETE alias FROM a alias WHERE alias.i=1;
-SELECT * FROM a;
-i
-insert into a values(2),(3);
-delete a alias FROM a alias where alias.i=2;
-select * from a;
-i
-3
-use mysqltest_to;
-select * from a;
-i
-3
-create table t1 (a int);
-create table t2 (a int);
-insert into t1 values (1);
-insert into t2 values (1);
-delete t1.* from t1, t2 where t1.a = t2.a;
-select * from t1;
-a
-select * from t2;
-a
-1
-select * from t1;
-ERROR 42S02: Table 'mysqltest_to.t1' doesn't exist
-select * from t2;
-ERROR 42S02: Table 'mysqltest_to.t2' doesn't exist
-set sql_log_bin=0;
-drop database mysqltest_from;
-set sql_log_bin=1;
-drop database mysqltest_to;
diff --git a/mysql-test/r/rpl_multi_query.result b/mysql-test/r/rpl_multi_query.result
deleted file mode 100644
index f2d8ea77536..00000000000
--- a/mysql-test/r/rpl_multi_query.result
+++ /dev/null
@@ -1,32 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest;
-create database mysqltest;
-create table mysqltest.t1 ( n int);
-insert into mysqltest.t1 values(1)/
-insert into mysqltest.t1 values(2);
-insert into mysqltest.t1 values(3);
-insert into mysqltest.t1 values(4);
-insert into mysqltest.t1 values(5)/
-select * from mysqltest.t1;
-n
-1
-2
-3
-4
-5
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # drop database if exists mysqltest
-master-bin.000001 # Query 1 # create database mysqltest
-master-bin.000001 # Query 1 # use `test`; create table mysqltest.t1 ( n int)
-master-bin.000001 # Query 1 # use `test`; insert into mysqltest.t1 values(1)
-master-bin.000001 # Query 1 # use `test`; insert into mysqltest.t1 values(2)
-master-bin.000001 # Query 1 # use `test`; insert into mysqltest.t1 values(3)
-master-bin.000001 # Query 1 # use `test`; insert into mysqltest.t1 values(4)
-master-bin.000001 # Query 1 # use `test`; insert into mysqltest.t1 values(5)
-drop database mysqltest;
diff --git a/mysql-test/r/rpl_multi_update.result b/mysql-test/r/rpl_multi_update.result
deleted file mode 100644
index 04cb1bc7460..00000000000
--- a/mysql-test/r/rpl_multi_update.result
+++ /dev/null
@@ -1,39 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE t1 (
-a int unsigned not null auto_increment primary key,
-b int unsigned
-) ENGINE=MyISAM;
-CREATE TABLE t2 (
-a int unsigned not null auto_increment primary key,
-b int unsigned
-) ENGINE=MyISAM;
-INSERT INTO t1 VALUES (NULL, 0);
-INSERT INTO t1 SELECT NULL, 0 FROM t1;
-INSERT INTO t2 VALUES (NULL, 0), (NULL,1);
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0
-2 0
-SELECT * FROM t2 ORDER BY a;
-a b
-1 0
-2 1
-UPDATE t1, t2 SET t1.b = t2.b WHERE t1.a = t2.a;
-delete from t1;
-delete from t2;
-insert into t1 values(1,1);
-insert into t2 values(1,1);
-update t1 set a=2;
-UPDATE t1, t2 SET t1.a = t2.a;
-select * from t1;
-a b
-1 1
-select * from t2;
-a b
-1 1
-drop table t1, t2;
diff --git a/mysql-test/r/rpl_multi_update2.result b/mysql-test/r/rpl_multi_update2.result
deleted file mode 100644
index 5bb262764fa..00000000000
--- a/mysql-test/r/rpl_multi_update2.result
+++ /dev/null
@@ -1,55 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1,t2;
-CREATE TABLE t1 (
-a int unsigned not null auto_increment primary key,
-b int unsigned
-) ENGINE=MyISAM;
-CREATE TABLE t2 (
-a int unsigned not null auto_increment primary key,
-b int unsigned
-) ENGINE=MyISAM;
-INSERT INTO t1 VALUES (NULL, 0);
-INSERT INTO t1 SELECT NULL, 0 FROM t1;
-INSERT INTO t2 VALUES (NULL, 0), (NULL,1);
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0
-2 0
-SELECT * FROM t2 ORDER BY a;
-a b
-1 0
-2 1
-UPDATE t1, t2 SET t1.b = (t2.b+4) WHERE t1.a = t2.a;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 4
-2 5
-SELECT * FROM t2 ORDER BY a;
-a b
-1 0
-2 1
-SELECT * FROM t1 ORDER BY a;
-a b
-1 4
-2 5
-SELECT * FROM t2 ORDER BY a;
-a b
-1 0
-2 1
-drop table t1,t2;
-reset master;
-CREATE TABLE t1 ( a INT );
-INSERT INTO t1 VALUES (0);
-UPDATE t1, (SELECT 3 as b) AS x SET t1.a = x.b;
-select * from t1;
-a
-3
-select * from t1;
-a
-3
-drop table t1;
diff --git a/mysql-test/r/rpl_multi_update3.result b/mysql-test/r/rpl_multi_update3.result
deleted file mode 100644
index bf454c7bb48..00000000000
--- a/mysql-test/r/rpl_multi_update3.result
+++ /dev/null
@@ -1,197 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-
--------- Test for BUG#9361 --------
-CREATE TABLE t1 (
-a int unsigned not null auto_increment primary key,
-b int unsigned
-) ENGINE=MyISAM;
-CREATE TABLE t2 (
-a int unsigned not null auto_increment primary key,
-b int unsigned
-) ENGINE=MyISAM;
-INSERT INTO t1 VALUES (NULL, 0);
-INSERT INTO t1 SELECT NULL, 0 FROM t1;
-INSERT INTO t2 VALUES (NULL, 0), (NULL,1);
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0
-2 0
-SELECT * FROM t2 ORDER BY a;
-a b
-1 0
-2 1
-UPDATE t2, (SELECT a FROM t1) AS t SET t2.b = t.a+5 ;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0
-2 0
-SELECT * FROM t2 ORDER BY a;
-a b
-1 6
-2 6
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0
-2 0
-SELECT * FROM t2 ORDER BY a;
-a b
-1 6
-2 6
-drop table t1,t2;
-
--------- Test 1 for BUG#9361 --------
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-CREATE TABLE t1 (
-a1 char(30),
-a2 int,
-a3 int,
-a4 char(30),
-a5 char(30)
-);
-CREATE TABLE t2 (
-b1 int,
-b2 char(30)
-);
-INSERT INTO t1 VALUES ('Yes', 1, NULL, 'foo', 'bar');
-INSERT INTO t2 VALUES (1, 'baz');
-UPDATE t1 a, t2
-SET a.a1 = 'No'
-WHERE a.a2 =
-(SELECT b1
-FROM t2
-WHERE b2 = 'baz')
-AND a.a3 IS NULL
-AND a.a4 = 'foo'
-AND a.a5 = 'bar';
-SELECT * FROM t1;
-a1 a2 a3 a4 a5
-No 1 NULL foo bar
-SELECT * FROM t2;
-b1 b2
-1 baz
-DROP TABLE t1, t2;
-
--------- Test 2 for BUG#9361 --------
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-DROP TABLE IF EXISTS t3;
-CREATE TABLE t1 (
-i INT,
-j INT,
-x INT,
-y INT,
-z INT
-);
-CREATE TABLE t2 (
-i INT,
-k INT,
-x INT,
-y INT,
-z INT
-);
-CREATE TABLE t3 (
-j INT,
-k INT,
-x INT,
-y INT,
-z INT
-);
-INSERT INTO t1 VALUES ( 1, 2,13,14,15);
-INSERT INTO t2 VALUES ( 1, 3,23,24,25);
-INSERT INTO t3 VALUES ( 2, 3, 1,34,35), ( 2, 3, 1,34,36);
-UPDATE t1 AS a
-INNER JOIN t2 AS b
-ON a.i = b.i
-INNER JOIN t3 AS c
-ON a.j = c.j AND b.k = c.k
-SET a.x = b.x,
-a.y = b.y,
-a.z = (
-SELECT sum(z)
-FROM t3
-WHERE y = 34
-)
-WHERE b.x = 23;
-SELECT * FROM t1;
-i j x y z
-1 2 23 24 71
-DROP TABLE t1, t2, t3;
-DROP TABLE IF EXISTS t1;
-Warnings:
-Note 1051 Unknown table 't1'
-DROP TABLE IF EXISTS t2;
-Warnings:
-Note 1051 Unknown table 't2'
-CREATE TABLE t1 (
-idp int(11) NOT NULL default '0',
-idpro int(11) default NULL,
-price decimal(19,4) default NULL,
-PRIMARY KEY (idp)
-);
-CREATE TABLE t2 (
-idpro int(11) NOT NULL default '0',
-price decimal(19,4) default NULL,
-nbprice int(11) default NULL,
-PRIMARY KEY (idpro)
-);
-INSERT INTO t1 VALUES
-(1,1,'3.0000'),
-(2,2,'1.0000'),
-(3,1,'1.0000'),
-(4,1,'4.0000'),
-(5,3,'2.0000'),
-(6,2,'4.0000');
-INSERT INTO t2 VALUES
-(1,'0.0000',0),
-(2,'0.0000',0),
-(3,'0.0000',0);
-update
-t2
-join
-( select idpro, min(price) as min_price, count(*) as nbr_price
-from t1
-where idpro>0 and price>0
-group by idpro
-) as table_price
-on t2.idpro = table_price.idpro
-set t2.price = table_price.min_price,
-t2.nbprice = table_price.nbr_price;
-select "-- MASTER AFTER JOIN --" as "";
-
--- MASTER AFTER JOIN --
-select * from t1;
-idp idpro price
-1 1 3.0000
-2 2 1.0000
-3 1 1.0000
-4 1 4.0000
-5 3 2.0000
-6 2 4.0000
-select * from t2;
-idpro price nbprice
-1 1.0000 3
-2 1.0000 2
-3 2.0000 1
-select "-- SLAVE AFTER JOIN --" as "";
-
--- SLAVE AFTER JOIN --
-select * from t1;
-idp idpro price
-1 1 3.0000
-2 2 1.0000
-3 1 1.0000
-4 1 4.0000
-5 3 2.0000
-6 2 4.0000
-select * from t2;
-idpro price nbprice
-1 1.0000 3
-2 1.0000 2
-3 2.0000 1
-drop table t1, t2;
diff --git a/mysql-test/r/rpl_multi_update4.result b/mysql-test/r/rpl_multi_update4.result
deleted file mode 100644
index f6dde65a35d..00000000000
--- a/mysql-test/r/rpl_multi_update4.result
+++ /dev/null
@@ -1,25 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists d1;
-drop database if exists d2;
-drop database if exists d2;
-create database d1;
-create table d1.t0 (id int);
-create database d2;
-use d2;
-create table t1 (id int);
-create table t2 (id int);
-insert into t1 values (1), (2), (3), (4), (5);
-insert into t2 select id + 3 from t1;
-update t1 join t2 using (id) set t1.id = 0;
-insert into d1.t0 values (0);
-use d1;
-select * from t0 where id=0;
-id
-0
-drop database d1;
-drop database d2;
diff --git a/mysql-test/r/rpl_mystery22.result b/mysql-test/r/rpl_mystery22.result
deleted file mode 100644
index 348b3211cd5..00000000000
--- a/mysql-test/r/rpl_mystery22.result
+++ /dev/null
@@ -1,23 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1(n int auto_increment primary key);
-insert into t1 values (2);
-insert into t1 values(NULL);
-insert into t1 values(NULL);
-delete from t1 where n = 2;
-start slave;
-stop slave;
-create table t2(n int);
-drop table t2;
-insert into t1 values(NULL);
-start slave;
-select * from t1;
-n
-1
-2
-3
-drop table t1;
diff --git a/mysql-test/r/rpl_name_const.result b/mysql-test/r/rpl_name_const.result
deleted file mode 100644
index acb2684d2c8..00000000000
--- a/mysql-test/r/rpl_name_const.result
+++ /dev/null
@@ -1,28 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-==== Initialize ====
-[on master]
-create table t1 (id int);
-==== create a procedure that has a column aliase in a subquery ====
-drop procedure if exists test_procedure;
-create procedure test_procedure(_id int)
-begin
-insert into t1 (id)
-select a.id
-from
-( select _id as id ) a;
-end;$$
-==== enable the binary log, then call the procedure ====
-call test_procedure(1234);
-[on slave]
-select * from t1 order by id;
-id
-1234
-==== Clean up ====
-[on master]
-drop table t1;
-drop procedure test_procedure;
diff --git a/mysql-test/r/rpl_ndb_innodb_trans.result b/mysql-test/r/rpl_ndb_innodb_trans.result
deleted file mode 100644
index 148e6247b03..00000000000
--- a/mysql-test/r/rpl_ndb_innodb_trans.result
+++ /dev/null
@@ -1,103 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int, unique(a)) engine=ndbcluster;
-create table t2 (a int, unique(a)) engine=innodb;
-begin;
-insert into t1 values(1);
-insert into t2 values(1);
-rollback;
-select count(*) from t1;
-count(*)
-0
-select count(*) from t2;
-count(*)
-0
-select count(*) from t1;
-count(*)
-0
-select count(*) from t2;
-count(*)
-0
-begin;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t2;
-Warnings:
-Warning 1262 Row 1 was truncated; it contained more data than there were input columns
-Warning 1262 Row 2 was truncated; it contained more data than there were input columns
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-Warnings:
-Warning 1262 Row 1 was truncated; it contained more data than there were input columns
-Warning 1262 Row 2 was truncated; it contained more data than there were input columns
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-select count(*) from t1;
-count(*)
-2
-select count(*) from t2;
-count(*)
-0
-select count(*) from t1;
-count(*)
-2
-select count(*) from t2;
-count(*)
-0
-delete from t1;
-delete from t2;
-begin;
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t2;
-Warnings:
-Warning 1262 Row 1 was truncated; it contained more data than there were input columns
-Warning 1262 Row 2 was truncated; it contained more data than there were input columns
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-Warnings:
-Warning 1262 Row 1 was truncated; it contained more data than there were input columns
-Warning 1262 Row 2 was truncated; it contained more data than there were input columns
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-select count(*) from t1;
-count(*)
-2
-select count(*) from t2;
-count(*)
-0
-select count(*) from t1;
-count(*)
-2
-select count(*) from t2;
-count(*)
-0
-delete from t1;
-delete from t2;
-begin;
-insert into t2 values(3),(4);
-insert into t1 values(3),(4);
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t2;
-Warnings:
-Warning 1262 Row 1 was truncated; it contained more data than there were input columns
-Warning 1262 Row 2 was truncated; it contained more data than there were input columns
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
-Warnings:
-Warning 1262 Row 1 was truncated; it contained more data than there were input columns
-Warning 1262 Row 2 was truncated; it contained more data than there were input columns
-rollback;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-select count(*) from t1;
-count(*)
-4
-select count(*) from t2;
-count(*)
-0
-select count(*) from t1;
-count(*)
-4
-select count(*) from t2;
-count(*)
-0
-drop table t1,t2;
diff --git a/mysql-test/r/rpl_openssl.result b/mysql-test/r/rpl_openssl.result
deleted file mode 100644
index c10606bc03f..00000000000
--- a/mysql-test/r/rpl_openssl.result
+++ /dev/null
@@ -1,31 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-grant replication slave on *.* to replssl@localhost require ssl;
-create table t1 (t int);
-stop slave;
-change master to master_user='replssl',master_password='';
-start slave;
-insert into t1 values (1);
-select * from t1;
-t
-stop slave;
-change master to master_ssl=1 , master_ssl_ca ='MYSQL_TEST_DIR/std_data/cacert.pem', master_ssl_cert='MYSQL_TEST_DIR/std_data/client-cert.pem', master_ssl_key='MYSQL_TEST_DIR/std_data/client-key.pem';
-start slave;
-select * from t1;
-t
-1
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 replssl MASTER_MYPORT 1 master-bin.000001 398 # # master-bin.000001 Yes Yes 0 0 398 # None 0 Yes MYSQL_TEST_DIR/std_data/cacert.pem MYSQL_TEST_DIR/std_data/client-cert.pem MYSQL_TEST_DIR/std_data/client-key.pem #
-stop slave;
-change master to master_user='root',master_password='', master_ssl=0;
-start slave;
-drop user replssl@localhost;
-drop table t1;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 564 # # master-bin.000001 Yes Yes 0 0 564 # None 0 No MYSQL_TEST_DIR/std_data/cacert.pem MYSQL_TEST_DIR/std_data/client-cert.pem MYSQL_TEST_DIR/std_data/client-key.pem #
diff --git a/mysql-test/r/rpl_optimize.result b/mysql-test/r/rpl_optimize.result
deleted file mode 100644
index 79891169fbc..00000000000
--- a/mysql-test/r/rpl_optimize.result
+++ /dev/null
@@ -1,27 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int not null auto_increment primary key, b int, key(b));
-INSERT INTO t1 (a) VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-INSERT INTO t1 (a) SELECT null FROM t1;
-update t1 set b=(a/2*rand());
-delete from t1 order by b limit 10000;
-optimize table t1;
-Table Op Msg_type Msg_text
-test.t1 optimize status OK
-drop table t1;
diff --git a/mysql-test/r/rpl_packet.result b/mysql-test/r/rpl_packet.result
deleted file mode 100644
index f84ce18810e..00000000000
--- a/mysql-test/r/rpl_packet.result
+++ /dev/null
@@ -1,31 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists DB_NAME_OF_MAX_LENGTH_AKA_NAME_LEN_64_BYTES_____________________;
-create database DB_NAME_OF_MAX_LENGTH_AKA_NAME_LEN_64_BYTES_____________________;
-SET @@global.max_allowed_packet=1024;
-SET @@global.net_buffer_length=1024;
-STOP SLAVE;
-START SLAVE;
-select @@net_buffer_length, @@max_allowed_packet;
-@@net_buffer_length @@max_allowed_packet
-1024 1024
-create table `t1` (`f1` LONGTEXT) ENGINE=MyISAM;
-INSERT INTO `t1`(`f1`) VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1023');
-select count(*) from `DB_NAME_OF_MAX_LENGTH_AKA_NAME_LEN_64_BYTES_____________________`.`t1` /* must be 1 */;
-count(*)
-1
-drop database DB_NAME_OF_MAX_LENGTH_AKA_NAME_LEN_64_BYTES_____________________;
-SET @@global.max_allowed_packet=4096;
-SET @@global.net_buffer_length=4096;
-STOP SLAVE;
-START SLAVE;
-CREATE TABLE `t1` (`f1` LONGTEXT) ENGINE=MyISAM;
-INSERT INTO `t1`(`f1`) VALUES ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2048');
-Slave_IO_Running = No (expect No)
-==== clean up ====
-DROP TABLE t1;
-DROP TABLE t1;
diff --git a/mysql-test/r/rpl_ps.result b/mysql-test/r/rpl_ps.result
deleted file mode 100644
index c969575de76..00000000000
--- a/mysql-test/r/rpl_ps.result
+++ /dev/null
@@ -1,28 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1;
-create table t1(n char(30));
-prepare stmt1 from 'insert into t1 values (?)';
-set @var1= "from-master-1";
-execute stmt1 using @var1;
-set @var1= "from-master-2-'',";
-execute stmt1 using @var1;
-select * from t1;
-n
-from-master-1
-from-master-2-'',
-set @var2= 'insert into t1 values (concat("from-var-", ?))';
-prepare stmt2 from @var2;
-set @var1='from-master-3';
-execute stmt2 using @var1;
-select * from t1;
-n
-from-master-1
-from-master-2-'',
-from-var-from-master-3
-drop table t1;
-stop slave;
diff --git a/mysql-test/r/rpl_redirect.result b/mysql-test/r/rpl_redirect.result
deleted file mode 100644
index 9dd51eaba4d..00000000000
--- a/mysql-test/r/rpl_redirect.result
+++ /dev/null
@@ -1,42 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-SHOW SLAVE STATUS;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-SHOW SLAVE HOSTS;
-Server_id Host Port Rpl_recovery_rank Master_id
-2 127.0.0.1 SLAVE_PORT 2 1
-create table t1 ( n int);
-insert into t1 values (1),(2),(3),(4);
-insert into t1 values(5);
-select * from t1;
-n
-1
-2
-3
-4
-5
-select * from t1;
-n
-1
-2
-3
-4
-select * from t1;
-n
-1
-2
-3
-4
-select * from t1;
-n
-1
-2
-3
-4
-5
-drop table t1;
-drop table t1;
diff --git a/mysql-test/r/rpl_relayrotate.result b/mysql-test/r/rpl_relayrotate.result
deleted file mode 100644
index 20f19973d83..00000000000
--- a/mysql-test/r/rpl_relayrotate.result
+++ /dev/null
@@ -1,16 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-create table t1 (a int) engine=innodb;
-reset slave;
-start slave;
-stop slave;
-start slave;
-select max(a) from t1;
-max(a)
-8000
-drop table t1;
diff --git a/mysql-test/r/rpl_relayspace.result b/mysql-test/r/rpl_relayspace.result
deleted file mode 100644
index 1f2a739d3e3..00000000000
--- a/mysql-test/r/rpl_relayspace.result
+++ /dev/null
@@ -1,19 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-create table t1 (a int);
-drop table t1;
-create table t1 (a int);
-drop table t1;
-reset slave;
-start slave io_thread;
-stop slave io_thread;
-reset slave;
-start slave;
-select master_pos_wait('master-bin.001',200,6)=-1;
-master_pos_wait('master-bin.001',200,6)=-1
-0
diff --git a/mysql-test/r/rpl_replicate_do.result b/mysql-test/r/rpl_replicate_do.result
deleted file mode 100644
index 9bacffb0609..00000000000
--- a/mysql-test/r/rpl_replicate_do.result
+++ /dev/null
@@ -1,77 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t11;
-drop table if exists t11;
-create table t2 (n int);
-insert into t2 values(4);
-create table t2 (s char(20));
-load data infile '../std_data_ln/words.dat' into table t2;
-insert into t2 values('five');
-create table t1 (m int);
-insert into t1 values(15),(16),(17);
-update t1 set m=20 where m=16;
-delete from t1 where m=17;
-create table t11 select * from t1;
-select * from t1;
-m
-15
-20
-select * from t2;
-n
-4
-select * from t11;
-ERROR 42S02: Table 'test.t11' doesn't exist
-drop table if exists t1,t2,t11;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1658 # # master-bin.000001 Yes Yes test.t1 0 0 1658 # None 0 No #
-create table t1 (ts timestamp);
-set one_shot time_zone='met';
-insert into t1 values('2005-08-12 00:00:00');
-set one_shot time_zone='met';
-select * from t1;
-ts
-2005-08-12 00:00:00
-set one_shot time_zone='met';
-select * from t1;
-ts
-2005-08-12 00:00:00
-drop table t1;
-*** master ***
-create table t1 (a int, b int);
-create trigger trg1 before insert on t1 for each row set new.b=2;
-create table t2 (a int, b int);
-create trigger trg2 before insert on t2 for each row set new.b=2;
-show tables;
-Tables_in_test
-t1
-t2
-show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
-trg1 INSERT t1 set new.b=2 BEFORE NULL root@localhost
-trg2 INSERT t2 set new.b=2 BEFORE NULL root@localhost
-*** slave ***
-show tables;
-Tables_in_test
-t1
-show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
-trg1 INSERT t1 set new.b=2 BEFORE NULL root@localhost
-*** master ***
-drop trigger trg1;
-drop trigger trg2;
-show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
-*** slave ***
-show tables;
-Tables_in_test
-t1
-show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
-*** master ***
-drop table t1;
-drop table t2;
diff --git a/mysql-test/r/rpl_reset_slave.result b/mysql-test/r/rpl_reset_slave.result
deleted file mode 100644
index ab55423b773..00000000000
--- a/mysql-test/r/rpl_reset_slave.result
+++ /dev/null
@@ -1,32 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 98 # # master-bin.000001 Yes Yes 0 0 98 # None 0 No #
-stop slave;
-change master to master_user='test';
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 test MASTER_PORT 1 master-bin.000001 98 # # master-bin.000001 No No 0 0 98 # None 0 No #
-reset slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 4 # # No No 0 0 0 # None 0 No #
-start slave;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 98 # # master-bin.000001 Yes Yes 0 0 98 # None 0 No #
-stop slave;
-reset slave;
-start slave;
-create temporary table t1 (a int);
-stop slave;
-reset slave;
-start slave;
-show status like 'slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 1
diff --git a/mysql-test/r/rpl_rewrite_db.result b/mysql-test/r/rpl_rewrite_db.result
deleted file mode 100644
index 46e12bc166b..00000000000
--- a/mysql-test/r/rpl_rewrite_db.result
+++ /dev/null
@@ -1,221 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest1;
-create database mysqltest1;
-use mysqltest1;
-create table t1 (a int);
-insert into t1 values(9);
-select * from mysqltest1.t1;
-a
-9
-show databases like 'mysqltest1';
-Database (mysqltest1)
-mysqltest1
-select * from test.t1;
-a
-9
-drop table t1;
-drop database mysqltest1;
-drop database if exists rewrite;
-create database rewrite;
-use test;
-create table t1 (a date, b date, c date not null, d date);
-load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',';
-Warnings:
-Warning 1265 Data truncated for column 'a' at row 1
-Warning 1265 Data truncated for column 'c' at row 1
-Warning 1265 Data truncated for column 'd' at row 1
-Warning 1265 Data truncated for column 'a' at row 2
-Warning 1265 Data truncated for column 'b' at row 2
-Warning 1265 Data truncated for column 'd' at row 2
-load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
-select * from rewrite.t1;
-a b c d
-0000-00-00 NULL 0000-00-00 0000-00-00
-0000-00-00 0000-00-00 0000-00-00 0000-00-00
-2003-03-03 2003-03-03 2003-03-03 NULL
-2003-03-03 2003-03-03 2003-03-03 NULL
-truncate table t1;
-load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
-Warnings:
-Warning 1265 Data truncated for column 'c' at row 1
-Warning 1265 Data truncated for column 'd' at row 1
-Warning 1265 Data truncated for column 'b' at row 2
-Warning 1265 Data truncated for column 'd' at row 2
-select * from rewrite.t1;
-a b c d
-NULL NULL 0000-00-00 0000-00-00
-NULL 0000-00-00 0000-00-00 0000-00-00
-NULL 2003-03-03 2003-03-03 NULL
-drop table t1;
-create table t1 (a text, b text);
-load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
-Warnings:
-Warning 1261 Row 3 doesn't contain data for all columns
-select concat('|',a,'|'), concat('|',b,'|') from rewrite.t1;
-concat('|',a,'|') concat('|',b,'|')
-|Field A| |Field B|
-|Field 1| |Field 2'
-Field 3,'Field 4|
-|Field 5' ,'Field 6| NULL
-|Field 6| | 'Field 7'|
-drop table t1;
-create table t1 (a int, b char(10));
-load data infile '../std_data_ln/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
-Warnings:
-Warning 1366 Incorrect integer value: 'error ' for column 'a' at row 3
-Warning 1262 Row 3 was truncated; it contained more data than there were input columns
-Warning 1366 Incorrect integer value: 'wrong end ' for column 'a' at row 5
-Warning 1262 Row 5 was truncated; it contained more data than there were input columns
-select * from rewrite.t1;
-a b
-1 row 1
-2 row 2
-0 1234567890
-3 row 3
-0 1234567890
-truncate table t1;
-load data infile '../std_data_ln/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines;
-Warnings:
-Warning 1366 Incorrect integer value: '
-' for column 'a' at row 4
-Warning 1261 Row 4 doesn't contain data for all columns
-select * from rewrite.t1;
-a b
-1 row 1
-2 row 2
-3 row 3
-0
-set sql_log_bin= 0;
-drop database rewrite;
-set sql_log_bin= 1;
-set sql_log_bin= 0;
-drop table t1;
-set sql_log_bin= 1;
-
-****
-**** Bug #46861 Auto-closing of temporary tables broken by replicate-rewrite-db
-****
-
-****
-**** Preparing the environment
-****
-SET sql_log_bin= 0;
-CREATE DATABASE database_master_temp_01;
-CREATE DATABASE database_master_temp_02;
-CREATE DATABASE database_master_temp_03;
-SET sql_log_bin= 1;
-SET sql_log_bin= 0;
-CREATE DATABASE database_slave_temp_01;
-CREATE DATABASE database_slave_temp_02;
-CREATE DATABASE database_slave_temp_03;
-SET sql_log_bin= 1;
-
-****
-**** Creating temporary tables on different databases with different connections
-****
-**** con_temp_01 --> creates
-**** t_01_01_temp on database_master_temp_01
-****
-**** con_temp_02 --> creates
-**** t_01_01_temp on database_master_temp_01
-**** t_02_01_temp, t_02_02_temp on database_master_temp_02
-****
-**** con_temp_02 --> creates
-**** t_01_01_temp on database_master_temp_01
-**** t_02_01_temp, t_02_02_temp on database_master_temp_02
-**** t_03_01_temp, t_03_02_temp, t_03_03_temp on database_master_temp_03
-****
-
-con_temp_01
-
-USE database_master_temp_01;
-CREATE TEMPORARY TABLE t_01_01_temp(a int);
-INSERT INTO t_01_01_temp VALUES(1);
-
-con_temp_02
-
-USE database_master_temp_01;
-CREATE TEMPORARY TABLE t_01_01_temp(a int);
-INSERT INTO t_01_01_temp VALUES(1);
-USE database_master_temp_02;
-CREATE TEMPORARY TABLE t_02_01_temp(a int);
-INSERT INTO t_02_01_temp VALUES(1);
-CREATE TEMPORARY TABLE t_02_02_temp(a int);
-INSERT INTO t_02_02_temp VALUES(1);
-
-con_temp_03
-
-USE database_master_temp_01;
-CREATE TEMPORARY TABLE t_01_01_temp(a int);
-INSERT INTO t_01_01_temp VALUES(1);
-USE database_master_temp_02;
-CREATE TEMPORARY TABLE t_02_01_temp(a int);
-INSERT INTO t_02_01_temp VALUES(1);
-CREATE TEMPORARY TABLE t_02_02_temp(a int);
-INSERT INTO t_02_02_temp VALUES(1);
-USE database_master_temp_03;
-CREATE TEMPORARY TABLE t_03_01_temp(a int);
-INSERT INTO t_03_01_temp VALUES(1);
-CREATE TEMPORARY TABLE t_03_02_temp(a int);
-INSERT INTO t_03_02_temp VALUES(1);
-CREATE TEMPORARY TABLE t_03_03_temp(a int);
-INSERT INTO t_03_03_temp VALUES(1);
-
-**** Dropping the connections
-**** We want to SHOW BINLOG EVENTS, to know what was logged. But there is no
-**** guarantee that logging of the terminated con1 has been done yet.a To be
-**** sure that logging has been done, we use a user lock.
-
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 10
-select get_lock("con_01",10);
-get_lock("con_01",10)
-1
-select get_lock("con_01",10);
-get_lock("con_01",10)
-1
-select get_lock("con_02",10);
-get_lock("con_02",10)
-1
-select get_lock("con_02",10);
-get_lock("con_02",10)
-1
-select get_lock("con_03",10);
-get_lock("con_03",10)
-1
-select get_lock("con_03",10);
-get_lock("con_03",10)
-1
-
-**** Checking the binary log and temporary tables
-
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 0
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # use `database_master_temp_01`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t_01_01_temp`
-master-bin.000001 # Query # # use `database_master_temp_02`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t_02_02_temp`,`t_02_01_temp`
-master-bin.000001 # Query # # use `database_master_temp_01`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t_01_01_temp`
-master-bin.000001 # Query # # use `database_master_temp_03`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t_03_03_temp`,`t_03_02_temp`,`t_03_01_temp`
-master-bin.000001 # Query # # use `database_master_temp_02`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t_02_02_temp`,`t_02_01_temp`
-master-bin.000001 # Query # # use `database_master_temp_01`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t_01_01_temp`
-****
-**** Cleaning up the test case
-****
-SET sql_log_bin= 0;
-DROP DATABASE database_master_temp_01;
-DROP DATABASE database_master_temp_02;
-DROP DATABASE database_master_temp_03;
-SET sql_log_bin= 1;
-SET sql_log_bin= 0;
-DROP DATABASE database_slave_temp_01;
-DROP DATABASE database_slave_temp_02;
-DROP DATABASE database_slave_temp_03;
-SET sql_log_bin= 1;
diff --git a/mysql-test/r/rpl_rotate_logs.result b/mysql-test/r/rpl_rotate_logs.result
deleted file mode 100644
index 8a5ae6c8983..00000000000
--- a/mysql-test/r/rpl_rotate_logs.result
+++ /dev/null
@@ -1,105 +0,0 @@
-drop table if exists t1, t2, t3, t4;
-drop table if exists t1, t2, t3, t4;
-start slave;
-Got one of the listed errors
-start slave;
-ERROR HY000: Could not initialize master info structure; more error messages can be found in the MySQL error log
-change master to master_host='127.0.0.1',master_port=MASTER_PORT, master_user='root';
-ERROR HY000: Could not initialize master info structure; more error messages can be found in the MySQL error log
-reset slave;
-change master to master_host='127.0.0.1',master_port=MASTER_PORT, master_user='root';
-reset master;
-start slave;
-create temporary table temp_table (a char(80) not null);
-insert into temp_table values ("testing temporary tables");
-create table t1 (s text);
-insert into t1 values('Could not break slave'),('Tried hard');
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 60 master-bin.000001 548 # # master-bin.000001 Yes Yes 0 0 548 # None 0 No #
-select * from t1;
-s
-Could not break slave
-Tried hard
-flush logs;
-create table t2(m int not null auto_increment primary key);
-insert into t2 values (34),(67),(123);
-flush logs;
-show binary logs;
-Log_name File_size
-master-bin.000001 592
-master-bin.000002 363
-master-bin.000003 98
-create table t3 select * from temp_table;
-select * from t3;
-a
-testing temporary tables
-drop table temp_table, t3;
-insert into t2 values(1234);
-set insert_id=1234;
-insert into t2 values(NULL);
-set global sql_slave_skip_counter=1;
-start slave;
-purge master logs to 'master-bin.000002';
-show master logs;
-Log_name File_size
-master-bin.000002 363
-master-bin.000003 407
-purge binary logs to 'master-bin.000002';
-show binary logs;
-Log_name File_size
-master-bin.000002 363
-master-bin.000003 407
-select @time_for_purge:=DATE_ADD(UPDATE_TIME, INTERVAL 1 SECOND)
-from information_schema.tables
-where TABLE_SCHEMA="test" and TABLE_NAME="t2";
-purge master logs before (@time_for_purge);
-show binary logs;
-Log_name File_size
-master-bin.000003 407
-insert into t2 values (65);
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 60 master-bin.000003 496 # # master-bin.000003 Yes Yes 0 0 496 # None 0 No #
-select * from t2;
-m
-34
-65
-67
-123
-1234
-create temporary table temp_table (a char(80) not null);
-insert into temp_table values ("testing temporary tables part 2");
-create table t3 (n int);
-select count(*) from t3 where n >= 4;
-count(*)
-100
-create table t4 select * from temp_table;
-show binary logs;
-Log_name File_size
-master-bin.000003 4185
-master-bin.000004 4190
-master-bin.000005 2032
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000005 2032
-select * from t4;
-a
-testing temporary tables part 2
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 60 master-bin.000005 2032 # # master-bin.000005 Yes Yes 0 0 2032 # None 0 No #
-lock tables t3 read;
-select count(*) from t3 where n >= 4;
-count(*)
-100
-unlock tables;
-drop table if exists t1,t2,t3,t4;
-End of 4.1 tests
-show binlog events in 'non existing_binlog_file';
-ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log
-purge master logs before now();
-show binlog events in '';
-ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log
-purge master logs before now();
-End of 5.0 tests
diff --git a/mysql-test/r/rpl_server_id.result b/mysql-test/r/rpl_server_id.result
deleted file mode 100644
index 1e74394c122..00000000000
--- a/mysql-test/r/rpl_server_id.result
+++ /dev/null
@@ -1,34 +0,0 @@
-set global server_id=1;
-reset master;
-drop table if exists t1,t2,t3;
-create table t1 (a int);
-select @@server_id;
-@@server_id
-1
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; drop table if exists t1,t2,t3
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-set global server_id=2;
-create table t2 (b int);
-select @@server_id;
-@@server_id
-2
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; drop table if exists t1,t2,t3
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-master-bin.000001 # Query 2 # use `test`; create table t2 (b int)
-set global server_id=3;
-create table t3 (c int);
-select @@server_id;
-@@server_id
-3
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # use `test`; drop table if exists t1,t2,t3
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-master-bin.000001 # Query 2 # use `test`; create table t2 (b int)
-master-bin.000001 # Query 3 # use `test`; create table t3 (c int)
-set global server_id=1;
-drop table t1,t2,t3;
diff --git a/mysql-test/r/rpl_server_id1.result b/mysql-test/r/rpl_server_id1.result
deleted file mode 100644
index a3ab6672f69..00000000000
--- a/mysql-test/r/rpl_server_id1.result
+++ /dev/null
@@ -1,19 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int);
-reset master;
-stop slave;
-change master to master_port=SLAVE_PORT;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
- 127.0.0.1 root SLAVE_PORT 1 4 slave-relay-bin.000001 4 No No # 0 0 0 98 None 0 No NULL
-start slave;
-insert into t1 values (1);
-show status like "slave_running";
-Variable_name Value
-Slave_running OFF
-drop table t1;
diff --git a/mysql-test/r/rpl_server_id2.result b/mysql-test/r/rpl_server_id2.result
deleted file mode 100644
index b196646aecc..00000000000
--- a/mysql-test/r/rpl_server_id2.result
+++ /dev/null
@@ -1,21 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int);
-reset master;
-stop slave;
-change master to master_port=SLAVE_PORT;
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
- 127.0.0.1 root SLAVE_PORT 1 4 slave-relay-bin.000001 4 No No # 0 0 0 98 None 0 No NULL
-start slave;
-insert into t1 values (1);
-select * from t1;
-n
-1
-1
-stop slave;
-drop table t1;
diff --git a/mysql-test/r/rpl_session_var.result b/mysql-test/r/rpl_session_var.result
deleted file mode 100644
index 787899932d6..00000000000
--- a/mysql-test/r/rpl_session_var.result
+++ /dev/null
@@ -1,53 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1;
-Warnings:
-Note 1051 Unknown table 't1'
-create table t1(a varchar(100),b int);
-set @@session.sql_mode=pipes_as_concat;
-insert into t1 values('My'||'SQL', 1);
-set @@session.sql_mode=default;
-insert into t1 values('1'||'2', 2);
-select * from t1 where b<3 order by a;
-a b
-1 2
-MySQL 1
-select * from t1 where b<3 order by a;
-a b
-1 2
-MySQL 1
-set @@session.sql_mode=ignore_space;
-insert into t1 values(password ('MySQL'), 3);
-set @@session.sql_mode=ansi_quotes;
-create table "t2" ("a" int);
-drop table t1, t2;
-set @@session.sql_mode=default;
-create table t1(a int auto_increment primary key);
-create table t2(b int, a int);
-set @@session.sql_auto_is_null=1;
-insert into t1 values(null);
-insert into t2 select 1,a from t1 where a is null;
-set @@session.sql_auto_is_null=0;
-insert into t1 values(null);
-insert into t2 select 2,a from t1 where a is null;
-select * from t2 order by b;
-b a
-1 1
-select * from t2 order by b;
-b a
-1 1
-drop table t1,t2;
-CREATE TABLE t1 (
-`id` int(11) NOT NULL auto_increment,
-`data` varchar(100),
-PRIMARY KEY (`id`)
-) ENGINE=MyISAM;
-INSERT INTO t1(data) VALUES(SESSION_USER());
-SELECT * FROM t1;
-id data
-1
-drop table t1;
diff --git a/mysql-test/r/rpl_set_charset.result b/mysql-test/r/rpl_set_charset.result
deleted file mode 100644
index 480d926fbba..00000000000
--- a/mysql-test/r/rpl_set_charset.result
+++ /dev/null
@@ -1,48 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest1;
-create database mysqltest1 /*!40100 character set latin2 */;
-use mysqltest1;
-drop table if exists t1;
-create table t1 (a varchar(255) character set latin2, b varchar(4));
-SET CHARACTER SET cp1250_latin2;
-INSERT INTO t1 VALUES ('','80');
-INSERT INTO t1 VALUES ('','90');
-INSERT INTO t1 VALUES ('','A0');
-INSERT INTO t1 VALUES ('','B0');
-INSERT INTO t1 VALUES ('','C0');
-INSERT INTO t1 VALUES ('','D0');
-INSERT INTO t1 VALUES ('','E0');
-INSERT INTO t1 VALUES ('','F0');
-select "--- on master ---";
---- on master ---
---- on master ---
-select hex(a),b from t1 order by b;
-hex(a) b
-A9A6ABAEAC 80
-B9B6BBBEBC 90
-A3A1AAAF A0
-B3B1BAA5B5BF B0
-C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF C0
-D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF D0
-E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF E0
-F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF F0
-use mysqltest1;
-select "--- on slave ---";
---- on slave ---
---- on slave ---
-select hex(a),b from t1 order by b;
-hex(a) b
-A9A6ABAEAC 80
-B9B6BBBEBC 90
-A3A1AAAF A0
-B3B1BAA5B5BF B0
-C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF C0
-D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF D0
-E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF E0
-F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF F0
-drop database mysqltest1;
diff --git a/mysql-test/r/rpl_skip_error.result b/mysql-test/r/rpl_skip_error.result
deleted file mode 100644
index 22ba357ef49..00000000000
--- a/mysql-test/r/rpl_skip_error.result
+++ /dev/null
@@ -1,35 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (n int not null primary key);
-insert into t1 values (1);
-insert into t1 values (1);
-insert into t1 values (2),(3);
-select * from t1;
-n
-1
-2
-3
-drop table t1;
-create table t1(a int primary key);
-insert into t1 values (1),(2);
-delete from t1 where @@server_id=1;
-set sql_mode=strict_trans_tables;
-select @@server_id;
-@@server_id
-1
-insert into t1 values (1),(2),(3);
-select @@server_id;
-@@server_id
-2
-select * from t1;
-a
-1
-2
-show slave status;
-Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 843 # # master-bin.000001 Yes Yes 0 0 843 # None 0 No #
-drop table t1;
diff --git a/mysql-test/r/rpl_slave_skip.result b/mysql-test/r/rpl_slave_skip.result
deleted file mode 100644
index 0e06e0951b3..00000000000
--- a/mysql-test/r/rpl_slave_skip.result
+++ /dev/null
@@ -1,242 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-**** On Master ****
-CREATE TABLE t1 (a INT, b SET('master','slave')) ENGINE=InnoDB;
-CREATE TABLE t2 (a INT, b SET('master','slave')) ENGINE=MyISAM;
-CREATE TABLE t3 (a CHAR(20), b SET('master','slave')) ENGINE=InnoDB;
-CREATE TABLE t4 (a CHAR(20), b SET('master','slave')) ENGINE=MyISAM;
-==== Skipping normal transactions ====
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-BEGIN;
-INSERT INTO t1 VALUES (1, 'master');
-INSERT INTO t1 VALUES (2, 'master');
-INSERT INTO t1 VALUES (3, 'master');
-COMMIT;
-BEGIN;
-INSERT INTO t1 VALUES (4, 'master,slave');
-INSERT INTO t1 VALUES (5, 'master,slave');
-INSERT INTO t1 VALUES (6, 'master,slave');
-COMMIT;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 master
-2 master
-3 master
-4 master,slave
-5 master,slave
-6 master,slave
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
-START SLAVE;
-SELECT * FROM t1 ORDER BY a;
-a b
-4 master,slave
-5 master,slave
-6 master,slave
-**** On Master ****
-DELETE FROM t1;
-==== Skipping two normal transactions ====
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-BEGIN;
-INSERT INTO t1 VALUES (1, 'master');
-INSERT INTO t1 VALUES (2, 'master');
-INSERT INTO t1 VALUES (3, 'master');
-COMMIT;
-BEGIN;
-INSERT INTO t1 VALUES (4, 'master');
-INSERT INTO t1 VALUES (5, 'master');
-INSERT INTO t1 VALUES (6, 'master');
-COMMIT;
-BEGIN;
-INSERT INTO t1 VALUES (7, 'master,slave');
-INSERT INTO t1 VALUES (8, 'master,slave');
-INSERT INTO t1 VALUES (9, 'master,slave');
-COMMIT;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 master
-2 master
-3 master
-4 master
-5 master
-6 master
-7 master,slave
-8 master,slave
-9 master,slave
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
-START SLAVE;
-SELECT * FROM t1 ORDER BY a;
-a b
-7 master,slave
-8 master,slave
-9 master,slave
-**** On Master ****
-DELETE FROM t1;
-==== Skipping without autocommit ====
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-SET AUTOCOMMIT=0;
-INSERT INTO t1 VALUES (1, 'master');
-INSERT INTO t1 VALUES (2, 'master');
-INSERT INTO t1 VALUES (3, 'master');
-COMMIT;
-INSERT INTO t1 VALUES (4, 'master,slave');
-INSERT INTO t1 VALUES (5, 'master,slave');
-INSERT INTO t1 VALUES (6, 'master,slave');
-COMMIT;
-SELECT * FROM t1 ORDER BY a;
-a b
-1 master
-2 master
-3 master
-4 master,slave
-5 master,slave
-6 master,slave
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
-START SLAVE;
-SELECT * FROM t1 ORDER BY a;
-a b
-4 master,slave
-5 master,slave
-6 master,slave
-==== Rollback of transaction with non-transactional change ====
-**** On Master ****
-DELETE FROM t1;
-SET AUTOCOMMIT=1;
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-BEGIN;
-INSERT INTO t1 VALUES (1, '');
-INSERT INTO t2 VALUES (2, 'master');
-INSERT INTO t1 VALUES (3, '');
-ROLLBACK;
-BEGIN;
-INSERT INTO t1 VALUES (4, '');
-INSERT INTO t2 VALUES (5, 'master,slave');
-INSERT INTO t1 VALUES (6, '');
-ROLLBACK;
-SELECT * FROM t1 ORDER BY a;
-a b
-SELECT * FROM t2 ORDER BY a;
-a b
-2 master
-5 master,slave
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
-START SLAVE;
-SELECT * FROM t1 ORDER BY a;
-a b
-SELECT * FROM t2 ORDER BY a;
-a b
-5 master,slave
-==== Skipping first event of a LOAD DATA for a transactional table ====
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-SET AUTOCOMMIT=1;
-LOAD DATA INFILE '../std_data_ln/words.dat' INTO TABLE t3(a) SET b = 'master';
-INSERT INTO t3 VALUES ('Go Rin No Sho', 'master,slave');
-SELECT COUNT(*) FROM t3;
-COUNT(*)
-71
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
-START SLAVE;
--- Should only contain records marked 'master,slave'
-SELECT * FROM t3 ORDER BY a;
-a b
-Go Rin No Sho master,slave
-**** On Master ****
-DELETE FROM t3;
-==== Skipping first event of a LOAD DATA for a non-transactional table ====
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-SET AUTOCOMMIT=1;
-LOAD DATA INFILE '../std_data_ln/words.dat' INTO TABLE t4(a) SET b = 'master';
-INSERT INTO t4 VALUES ('Go Rin No Sho', 'master,slave');
-SELECT COUNT(*) FROM t4;
-COUNT(*)
-71
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
-START SLAVE;
--- Should only contain records marked 'master,slave'
-SELECT * FROM t4 ORDER BY a;
-a b
-Go Rin No Sho master,slave
-**** On Master ****
-DELETE FROM t4;
-==== Try with a big file so that we get an append_block event as well
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-SET AUTOCOMMIT=1;
-SET SQL_LOG_BIN=0;
-LOAD DATA INFILE '../std_data_ln/words.dat' INTO TABLE t4(a) SET b = 'master';
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-INSERT INTO t4 SELECT * FROM t4;
-SELECT a FROM t4 INTO OUTFILE 'rpl_slave_skip_words.dat';
-SET SQL_LOG_BIN=1;
-LOAD DATA INFILE 'rpl_slave_skip_words.dat' INTO TABLE t4(a) SET b = 'master';
-INSERT INTO t4 VALUES ('Go Rin No Sho', 'master,slave');
-SELECT COUNT(*) FROM t4;
-COUNT(*)
-286721
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
-START SLAVE;
--- Should only contain records marked 'master,slave'
-SELECT * FROM t4 ORDER BY a;
-a b
-Go Rin No Sho master,slave
-**** On Master ****
-DELETE FROM t4;
-**** On Master ****
-CREATE TABLE t5 (a int, b int, c SET('master','slave'), PRIMARY KEY (a,b)) ENGINE=MyISAM;
-LOAD DATA INFILE '../std_data_ln/loaddata5.dat' INTO TABLE t5 FIELDS TERMINATED BY '' ENCLOSED BY '' (a,b) SET c='master,slave';
-**** On Slave ****
-STOP SLAVE;
-**** On Master ****
-LOAD DATA INFILE '../std_data_ln/loaddata5.dat' INTO TABLE t5 FIELDS TERMINATED BY '' ENCLOSED BY '' (a,b) SET c='';
-ERROR 23000: Duplicate entry '1-2' for key 1
-INSERT INTO t5 VALUES (42, 42, 'master,slave');
-SELECT * FROM t5;
-a b c
-1 2 master,slave
-3 4 master,slave
-5 6 master,slave
-42 42 master,slave
-**** On Slave ****
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
-START SLAVE;
-SELECT * FROM t5;
-a b c
-1 2 master,slave
-3 4 master,slave
-5 6 master,slave
-42 42 master,slave
-==== Cleanup ====
-**** On Master ****
-DROP TABLE t1, t2, t3, t4, t5;
diff --git a/mysql-test/r/rpl_slave_status.result b/mysql-test/r/rpl_slave_status.result
deleted file mode 100644
index 641a65f5ed7..00000000000
--- a/mysql-test/r/rpl_slave_status.result
+++ /dev/null
@@ -1,56 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-grant replication slave on *.* to rpl@127.0.0.1 identified by 'rpl';
-stop slave;
-change master to master_user='rpl',master_password='rpl';
-start slave;
-drop table if exists t1;
-create table t1 (n int);
-insert into t1 values (1);
-select * from t1;
-n
-1
-delete from mysql.user where user='rpl';
-flush privileges;
-stop slave;
-start slave;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User rpl
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running No
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos #
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master NULL
-drop table t1;
-drop table t1;
diff --git a/mysql-test/r/rpl_sp.result b/mysql-test/r/rpl_sp.result
deleted file mode 100644
index 7f1ae19035f..00000000000
--- a/mysql-test/r/rpl_sp.result
+++ /dev/null
@@ -1,952 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop database if exists mysqltest1;
-create database mysqltest1;
-use mysqltest1;
-create table t1 (a varchar(100));
-use mysqltest1;
-create procedure foo()
-begin
-declare b int;
-set b = 8;
-insert into t1 values (b);
-insert into t1 values (unix_timestamp());
-end|
-select * from mysql.proc where name='foo' and db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-mysqltest1 foo PROCEDURE foo SQL CONTAINS_SQL NO DEFINER begin
-declare b int;
-set b = 8;
-insert into t1 values (b);
-insert into t1 values (unix_timestamp());
-end root@localhost # #
-select * from mysql.proc where name='foo' and db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-mysqltest1 foo PROCEDURE foo SQL CONTAINS_SQL NO DEFINER begin
-declare b int;
-set b = 8;
-insert into t1 values (b);
-insert into t1 values (unix_timestamp());
-end root@localhost # #
-set timestamp=1000000000;
-call foo();
-select * from t1;
-a
-8
-1000000000
-select * from t1;
-a
-8
-1000000000
-delete from t1;
-create procedure foo2()
-select * from mysqltest1.t1;
-call foo2();
-a
-alter procedure foo2 contains sql;
-drop table t1;
-create table t1 (a int);
-create table t2 like t1;
-create procedure foo3()
-deterministic
-insert into t1 values (15);
-grant CREATE ROUTINE, EXECUTE on mysqltest1.* to "zedjzlcsjhd"@127.0.0.1;
-grant SELECT on mysqltest1.t1 to "zedjzlcsjhd"@127.0.0.1;
-grant SELECT, INSERT on mysqltest1.t2 to "zedjzlcsjhd"@127.0.0.1;
-SELECT 1;
-1
-1
-create procedure foo4()
-deterministic
-begin
-insert into t2 values(3);
-insert into t1 values (5);
-end|
-call foo4();
-Got one of the listed errors
-call foo3();
-show warnings;
-Level Code Message
-call foo4();
-Got one of the listed errors
-alter procedure foo4 sql security invoker;
-call foo4();
-show warnings;
-Level Code Message
-select * from t1;
-a
-15
-5
-select * from t2;
-a
-3
-3
-3
-select * from t1;
-a
-15
-5
-select * from t2;
-a
-3
-3
-3
-delete from t2;
-alter table t2 add unique (a);
-drop procedure foo4;
-create procedure foo4()
-deterministic
-begin
-insert into t2 values(20),(20);
-end|
-call foo4();
-ERROR 23000: Duplicate entry '20' for key 1
-show warnings;
-Level Code Message
-Error 1062 Duplicate entry '20' for key 1
-select * from t2;
-a
-20
-select * from t2;
-a
-20
-select * from mysql.proc where name="foo4" and db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-mysqltest1 foo4 PROCEDURE foo4 SQL CONTAINS_SQL YES DEFINER begin
-insert into t2 values(20),(20);
-end root@localhost # #
-drop procedure foo4;
-select * from mysql.proc where name="foo4" and db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-select * from mysql.proc where name="foo4" and db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-drop procedure foo;
-drop procedure foo2;
-drop procedure foo3;
-create function fn1(x int)
-returns int
-begin
-insert into t1 values (x);
-return x+2;
-end|
-ERROR HY000: This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
-create function fn1(x int)
-returns int
-deterministic
-begin
-insert into t1 values (x);
-return x+2;
-end|
-delete t1,t2 from t1,t2;
-select fn1(20);
-fn1(20)
-22
-insert into t2 values(fn1(21));
-select * from t1;
-a
-21
-20
-select * from t2;
-a
-23
-select * from t1;
-a
-21
-20
-select * from t2;
-a
-23
-drop function fn1;
-create function fn1()
-returns int
-no sql
-begin
-return unix_timestamp();
-end|
-alter function fn1 contains sql;
-ERROR HY000: This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
-delete from t1;
-set timestamp=1000000000;
-insert into t1 values(fn1());
-create function fn2()
-returns int
-no sql
-begin
-return unix_timestamp();
-end|
-ERROR HY000: You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
-set global log_bin_trust_routine_creators=1;
-Warnings:
-Warning 1287 'log_bin_trust_routine_creators' is deprecated; use 'log_bin_trust_function_creators' instead
-set global log_bin_trust_function_creators=0;
-set global log_bin_trust_function_creators=1;
-set global log_bin_trust_function_creators=1;
-create function fn2()
-returns int
-no sql
-begin
-return unix_timestamp();
-end|
-create function fn3()
-returns int
-not deterministic
-reads sql data
-begin
-return 0;
-end|
-select fn3();
-fn3()
-0
-select * from mysql.proc where db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-mysqltest1 fn1 FUNCTION fn1 SQL NO_SQL NO DEFINER int(11) begin
-return unix_timestamp();
-end root@localhost # #
-mysqltest1 fn2 FUNCTION fn2 SQL NO_SQL NO DEFINER int(11) begin
-return unix_timestamp();
-end zedjzlcsjhd@localhost # #
-mysqltest1 fn3 FUNCTION fn3 SQL READS_SQL_DATA NO DEFINER int(11) begin
-return 0;
-end root@localhost # #
-select * from t1;
-a
-1000000000
-use mysqltest1;
-select * from t1;
-a
-1000000000
-select * from mysql.proc where db='mysqltest1';
-db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
-mysqltest1 fn1 FUNCTION fn1 SQL NO_SQL NO DEFINER int(11) begin
-return unix_timestamp();
-end root@localhost # #
-mysqltest1 fn2 FUNCTION fn2 SQL NO_SQL NO DEFINER int(11) begin
-return unix_timestamp();
-end zedjzlcsjhd@localhost # #
-mysqltest1 fn3 FUNCTION fn3 SQL READS_SQL_DATA NO DEFINER int(11) begin
-return 0;
-end root@localhost # #
-delete from t2;
-alter table t2 add unique (a);
-drop function fn1;
-create function fn1(x int)
-returns int
-begin
-insert into t2 values(x),(x);
-return 10;
-end|
-do fn1(100);
-Warnings:
-Error 1062 Duplicate entry '100' for key 1
-select fn1(20);
-ERROR 23000: Duplicate entry '20' for key 1
-select * from t2;
-a
-20
-100
-select * from t2;
-a
-20
-100
-create trigger trg before insert on t1 for each row set new.a= 10;
-ERROR 42000: Access denied; you need the SUPER privilege for this operation
-delete from t1;
-create trigger trg before insert on t1 for each row set new.a= 10;
-insert into t1 values (1);
-select * from t1;
-a
-10
-select * from t1;
-a
-10
-delete from t1;
-drop trigger trg;
-insert into t1 values (1);
-select * from t1;
-a
-1
-select * from t1;
-a
-1
-create procedure foo()
-not deterministic
-reads sql data
-select * from t1;
-call foo();
-a
-1
-drop procedure foo;
-drop function fn1;
-drop database mysqltest1;
-drop user "zedjzlcsjhd"@127.0.0.1;
-use test;
-use test;
-drop function if exists f1;
-create function f1() returns int reads sql data
-begin
-declare var integer;
-declare c cursor for select a from v1;
-open c;
-fetch c into var;
-close c;
-return var;
-end|
-create view v1 as select 1 as a;
-create table t1 (a int);
-insert into t1 (a) values (f1());
-select * from t1;
-a
-1
-drop view v1;
-drop function f1;
-select * from t1;
-a
-1
-DROP PROCEDURE IF EXISTS p1;
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1(col VARCHAR(10));
-CREATE PROCEDURE p1(arg VARCHAR(10))
-INSERT INTO t1 VALUES(arg);
-CALL p1('test');
-SELECT * FROM t1;
-col
-test
-SELECT * FROM t1;
-col
-test
-DROP PROCEDURE p1;
-
----> Test for BUG#20438
-
----> Preparing environment...
----> connection: master
-DROP PROCEDURE IF EXISTS p1;
-DROP FUNCTION IF EXISTS f1;
-
----> Synchronizing slave with master...
-
----> connection: master
-
----> Creating procedure...
-/*!50003 CREATE PROCEDURE p1() SET @a = 1 */;
-/*!50003 CREATE FUNCTION f1() RETURNS INT RETURN 0 */;
-
----> Checking on master...
-SHOW CREATE PROCEDURE p1;
-Procedure sql_mode Create Procedure
-p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
-SET @a = 1
-SHOW CREATE FUNCTION f1;
-Function sql_mode Create Function
-f1 CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-RETURN 0
-
----> Synchronizing slave with master...
----> connection: master
-
----> Checking on slave...
-SHOW CREATE PROCEDURE p1;
-Procedure sql_mode Create Procedure
-p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
-SET @a = 1
-SHOW CREATE FUNCTION f1;
-Function sql_mode Create Function
-f1 CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-RETURN 0
-
----> connection: master
-
----> Cleaning up...
-DROP PROCEDURE p1;
-DROP FUNCTION f1;
-drop table t1;
-drop database if exists mysqltest;
-drop database if exists mysqltest2;
-create database mysqltest;
-create database mysqltest2;
-use mysqltest2;
-create table t ( t integer );
-create procedure mysqltest.test() begin end;
-insert into t values ( 1 );
-create procedure `\\`.test() begin end;
-ERROR 42000: Incorrect database name '\\'
-create function f1 () returns int
-begin
-insert into t values (1);
-return 0;
-end|
-use mysqltest;
-set @a:= mysqltest2.f1();
-show binlog events in 'master-bin.000001' from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query 1 # drop database if exists mysqltest1
-master-bin.000001 # Query 1 # create database mysqltest1
-master-bin.000001 # Query 1 # use `mysqltest1`; create table t1 (a varchar(100))
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `foo`()
-begin
-declare b int;
-set b = 8;
-insert into t1 values (b);
-insert into t1 values (unix_timestamp());
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values ( NAME_CONST('b',8))
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values (unix_timestamp())
-master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `foo2`()
-select * from mysqltest1.t1
-master-bin.000001 # Query 1 # use `mysqltest1`; alter procedure foo2 contains sql
-master-bin.000001 # Query 1 # use `mysqltest1`; drop table t1
-master-bin.000001 # Query 1 # use `mysqltest1`; create table t1 (a int)
-master-bin.000001 # Query 1 # use `mysqltest1`; create table t2 like t1
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `foo3`()
- DETERMINISTIC
-insert into t1 values (15)
-master-bin.000001 # Query 1 # use `mysqltest1`; grant CREATE ROUTINE, EXECUTE on mysqltest1.* to "zedjzlcsjhd"@127.0.0.1
-master-bin.000001 # Query 1 # use `mysqltest1`; grant SELECT on mysqltest1.t1 to "zedjzlcsjhd"@127.0.0.1
-master-bin.000001 # Query 1 # use `mysqltest1`; grant SELECT, INSERT on mysqltest1.t2 to "zedjzlcsjhd"@127.0.0.1
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`zedjzlcsjhd`@`127.0.0.1` PROCEDURE `foo4`()
- DETERMINISTIC
-begin
-insert into t2 values(3);
-insert into t1 values (5);
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t2 values(3)
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values (15)
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t2 values(3)
-master-bin.000001 # Query 1 # use `mysqltest1`; alter procedure foo4 sql security invoker
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t2 values(3)
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values (5)
-master-bin.000001 # Query 1 # use `mysqltest1`; delete from t2
-master-bin.000001 # Query 1 # use `mysqltest1`; alter table t2 add unique (a)
-master-bin.000001 # Query 1 # use `mysqltest1`; drop procedure foo4
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `foo4`()
- DETERMINISTIC
-begin
-insert into t2 values(20),(20);
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t2 values(20),(20)
-master-bin.000001 # Query 1 # use `mysqltest1`; drop procedure foo4
-master-bin.000001 # Query 1 # use `mysqltest1`; drop procedure foo
-master-bin.000001 # Query 1 # use `mysqltest1`; drop procedure foo2
-master-bin.000001 # Query 1 # use `mysqltest1`; drop procedure foo3
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` FUNCTION `fn1`(x int) RETURNS int(11)
- DETERMINISTIC
-begin
-insert into t1 values (x);
-return x+2;
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; delete t1,t2 from t1,t2
-master-bin.000001 # Query 1 # use `mysqltest1`; SELECT `mysqltest1`.`fn1`(20)
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t2 values(fn1(21))
-master-bin.000001 # Query 1 # use `mysqltest1`; drop function fn1
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` FUNCTION `fn1`() RETURNS int(11)
- NO SQL
-begin
-return unix_timestamp();
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values(fn1())
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`zedjzlcsjhd`@`127.0.0.1` FUNCTION `fn2`() RETURNS int(11)
- NO SQL
-begin
-return unix_timestamp();
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` FUNCTION `fn3`() RETURNS int(11)
- READS SQL DATA
-begin
-return 0;
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; delete from t2
-master-bin.000001 # Query 1 # use `mysqltest1`; alter table t2 add unique (a)
-master-bin.000001 # Query 1 # use `mysqltest1`; drop function fn1
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` FUNCTION `fn1`(x int) RETURNS int(11)
-begin
-insert into t2 values(x),(x);
-return 10;
-end
-master-bin.000001 # Query 1 # use `mysqltest1`; SELECT `mysqltest1`.`fn1`(100)
-master-bin.000001 # Query 1 # use `mysqltest1`; SELECT `mysqltest1`.`fn1`(20)
-master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` trigger trg before insert on t1 for each row set new.a= 10
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values (1)
-master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
-master-bin.000001 # Query 1 # use `mysqltest1`; drop trigger trg
-master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values (1)
-master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `foo`()
- READS SQL DATA
-select * from t1
-master-bin.000001 # Query 1 # use `mysqltest1`; drop procedure foo
-master-bin.000001 # Query 1 # use `mysqltest1`; drop function fn1
-master-bin.000001 # Query 1 # drop database mysqltest1
-master-bin.000001 # Query 1 # drop user "zedjzlcsjhd"@127.0.0.1
-master-bin.000001 # Query 1 # use `test`; drop function if exists f1
-master-bin.000001 # Query 1 # use `test`; CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
- READS SQL DATA
-begin
-declare var integer;
-declare c cursor for select a from v1;
-open c;
-fetch c into var;
-close c;
-return var;
-end
-master-bin.000001 # Query 1 # use `test`; CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `a`
-master-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-master-bin.000001 # Query 1 # use `test`; insert into t1 (a) values (f1())
-master-bin.000001 # Query 1 # use `test`; drop view v1
-master-bin.000001 # Query 1 # use `test`; drop function f1
-master-bin.000001 # Query 1 # use `test`; DROP PROCEDURE IF EXISTS p1
-master-bin.000001 # Query 1 # use `test`; DROP TABLE IF EXISTS t1
-master-bin.000001 # Query 1 # use `test`; CREATE TABLE t1(col VARCHAR(10))
-master-bin.000001 # Query 1 # use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(arg VARCHAR(10))
-INSERT INTO t1 VALUES(arg)
-master-bin.000001 # Query 1 # use `test`; INSERT INTO t1 VALUES( NAME_CONST('arg',_latin1'test' COLLATE 'latin1_swedish_ci'))
-master-bin.000001 # Query 1 # use `test`; DROP PROCEDURE p1
-master-bin.000001 # Query 1 # use `test`; DROP PROCEDURE IF EXISTS p1
-master-bin.000001 # Query 1 # use `test`; DROP FUNCTION IF EXISTS f1
-master-bin.000001 # Query 1 # use `test`; CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
-SET @a = 1
-master-bin.000001 # Query 1 # use `test`; CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-RETURN 0
-master-bin.000001 # Query 1 # use `test`; DROP PROCEDURE p1
-master-bin.000001 # Query 1 # use `test`; DROP FUNCTION f1
-master-bin.000001 # Query 1 # use `test`; drop table t1
-master-bin.000001 # Query 1 # drop database if exists mysqltest
-master-bin.000001 # Query 1 # drop database if exists mysqltest2
-master-bin.000001 # Query 1 # create database mysqltest
-master-bin.000001 # Query 1 # create database mysqltest2
-master-bin.000001 # Query 1 # use `mysqltest2`; create table t ( t integer )
-master-bin.000001 # Query 1 # use `mysqltest2`; CREATE DEFINER=`root`@`localhost` PROCEDURE `mysqltest`.`test`()
-begin end
-master-bin.000001 # Query 1 # use `mysqltest2`; insert into t values ( 1 )
-master-bin.000001 # Query 1 # use `mysqltest2`; CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-begin
-insert into t values (1);
-return 0;
-end
-master-bin.000001 # Query 1 # use `mysqltest`; SELECT `mysqltest2`.`f1`()
-set global log_bin_trust_function_creators=0;
-set global log_bin_trust_function_creators=0;
-drop database mysqltest;
-drop database mysqltest2;
-use test;
-/*!50001 create procedure `mysqltestbug36570_p1`() */
-begin
-select 1;
-end|
-use mysql|
-create procedure test.` mysqltestbug36570_p2`(/*!50001 a int*/)`label`:
-begin
-select a;
-end|
-/*!50001 create function test.mysqltestbug36570_f1() */
-returns int
-/*!50001 deterministic */
-begin
-return 3;
-end|
-use test|
-show procedure status like '%mysqltestbug36570%';
-Db Name Type Definer Modified Created Security_type Comment
-test mysqltestbug36570_p2 PROCEDURE root@localhost t t DEFINER
-test mysqltestbug36570_p1 PROCEDURE root@localhost t t DEFINER
-show create procedure ` mysqltestbug36570_p2`;
-Procedure sql_mode Create Procedure
- mysqltestbug36570_p2 CREATE DEFINER=`root`@`localhost` PROCEDURE ` mysqltestbug36570_p2`(/*!50001 a int*/)
-`label`:
-begin
-select a;
-end
-show procedure status like '%mysqltestbug36570%';
-Db Name Type Definer Modified Created Security_type Comment
-test mysqltestbug36570_p2 PROCEDURE root@localhost t t DEFINER
-test mysqltestbug36570_p1 PROCEDURE root@localhost t t DEFINER
-show create procedure ` mysqltestbug36570_p2`;
-Procedure sql_mode Create Procedure
- mysqltestbug36570_p2 CREATE DEFINER=`root`@`localhost` PROCEDURE ` mysqltestbug36570_p2`(/*!50001 a int*/)
-`label`:
-begin
-select a;
-end
-call ` mysqltestbug36570_p2`(42);
-a
-42
-show function status like '%mysqltestbug36570%';
-Db Name Type Definer Modified Created Security_type Comment
-test mysqltestbug36570_f1 FUNCTION root@localhost t t DEFINER
-flush logs;
-/*!40019 SET @@session.max_insert_delayed_threads=0*/;
-/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
-DELIMITER /*!*/;
-ROLLBACK/*!*/;
-SET TIMESTAMP=t/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
-SET @@session.sql_mode=0/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
-drop database if exists mysqltest1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-create database mysqltest1
-/*!*/;
-use mysqltest1/*!*/;
-SET TIMESTAMP=t/*!*/;
-create table t1 (a varchar(100))
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `foo`()
-begin
-declare b int;
-set b = 8;
-insert into t1 values (b);
-insert into t1 values (unix_timestamp());
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values ( NAME_CONST('b',8))
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values (unix_timestamp())
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete from t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `foo2`()
-select * from mysqltest1.t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-alter procedure foo2 contains sql
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop table t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-create table t1 (a int)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-create table t2 like t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `foo3`()
- DETERMINISTIC
-insert into t1 values (15)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-grant CREATE ROUTINE, EXECUTE on mysqltest1.* to "zedjzlcsjhd"@127.0.0.1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-grant SELECT on mysqltest1.t1 to "zedjzlcsjhd"@127.0.0.1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-grant SELECT, INSERT on mysqltest1.t2 to "zedjzlcsjhd"@127.0.0.1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`zedjzlcsjhd`@`127.0.0.1` PROCEDURE `foo4`()
- DETERMINISTIC
-begin
-insert into t2 values(3);
-insert into t1 values (5);
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t2 values(3)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values (15)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t2 values(3)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-alter procedure foo4 sql security invoker
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t2 values(3)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values (5)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete from t2
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-alter table t2 add unique (a)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop procedure foo4
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `foo4`()
- DETERMINISTIC
-begin
-insert into t2 values(20),(20);
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t2 values(20),(20)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop procedure foo4
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop procedure foo
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop procedure foo2
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop procedure foo3
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `fn1`(x int) RETURNS int(11)
- DETERMINISTIC
-begin
-insert into t1 values (x);
-return x+2;
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete t1,t2 from t1,t2
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-SELECT `mysqltest1`.`fn1`(20)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t2 values(fn1(21))
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop function fn1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `fn1`() RETURNS int(11)
- NO SQL
-begin
-return unix_timestamp();
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete from t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values(fn1())
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`zedjzlcsjhd`@`127.0.0.1` FUNCTION `fn2`() RETURNS int(11)
- NO SQL
-begin
-return unix_timestamp();
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `fn3`() RETURNS int(11)
- READS SQL DATA
-begin
-return 0;
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete from t2
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-alter table t2 add unique (a)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop function fn1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `fn1`(x int) RETURNS int(11)
-begin
-insert into t2 values(x),(x);
-return 10;
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-SELECT `mysqltest1`.`fn1`(100)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-SELECT `mysqltest1`.`fn1`(20)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete from t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` trigger trg before insert on t1 for each row set new.a= 10
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values (1)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-delete from t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop trigger trg
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 values (1)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `foo`()
- READS SQL DATA
-select * from t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop procedure foo
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop function fn1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop database mysqltest1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop user "zedjzlcsjhd"@127.0.0.1
-/*!*/;
-use test/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop function if exists f1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
- READS SQL DATA
-begin
-declare var integer;
-declare c cursor for select a from v1;
-open c;
-fetch c into var;
-close c;
-return var;
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `a`
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-create table t1 (a int)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t1 (a) values (f1())
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop view v1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop function f1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP PROCEDURE IF EXISTS p1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP TABLE IF EXISTS t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE TABLE t1(col VARCHAR(10))
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(arg VARCHAR(10))
-INSERT INTO t1 VALUES(arg)
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-INSERT INTO t1 VALUES( NAME_CONST('arg',_latin1'test' COLLATE 'latin1_swedish_ci'))
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP PROCEDURE p1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP PROCEDURE IF EXISTS p1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP FUNCTION IF EXISTS f1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
-SET @a = 1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-RETURN 0
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP PROCEDURE p1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-DROP FUNCTION f1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop table t1
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop database if exists mysqltest
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop database if exists mysqltest2
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-create database mysqltest
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-create database mysqltest2
-/*!*/;
-use mysqltest2/*!*/;
-SET TIMESTAMP=t/*!*/;
-create table t ( t integer )
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `mysqltest`.`test`()
-begin end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-insert into t values ( 1 )
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-begin
-insert into t values (1);
-return 0;
-end
-/*!*/;
-use mysqltest/*!*/;
-SET TIMESTAMP=t/*!*/;
-SELECT `mysqltest2`.`f1`()
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop database mysqltest
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-drop database mysqltest2
-/*!*/;
-use test/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `mysqltestbug36570_p1`()
-begin
-select 1;
-end
-/*!*/;
-use mysql/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` PROCEDURE `test`.` mysqltestbug36570_p2`(/*!50001 a int*/)
-`label`:
-begin
-select a;
-end
-/*!*/;
-SET TIMESTAMP=t/*!*/;
-CREATE DEFINER=`root`@`localhost` FUNCTION `test`.`mysqltestbug36570_f1`() RETURNS int(11)
- DETERMINISTIC
-begin
-return 3;
-end
-/*!*/;
-DELIMITER ;
-# End of log file
-ROLLBACK /* added by mysqlbinlog */;
-/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
-use test;
-drop procedure mysqltestbug36570_p1;
-drop procedure ` mysqltestbug36570_p2`;
-drop function mysqltestbug36570_f1;
-set global log_bin_trust_function_creators = 0;
diff --git a/mysql-test/r/rpl_sp_effects.result b/mysql-test/r/rpl_sp_effects.result
deleted file mode 100644
index 70b2338d187..00000000000
--- a/mysql-test/r/rpl_sp_effects.result
+++ /dev/null
@@ -1,256 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop procedure if exists p1;
-drop procedure if exists p2;
-drop function if exists f1;
-drop table if exists t1,t2;
-drop view if exists v1;
-create table t1 (a int);
-create procedure p1()
-begin
-declare spv int default 0;
-while spv < 5 do
-insert into t1 values(spv+1);
-set spv=spv+1;
-end while;
-end//
-call p1();
-select * from t1;
-a
-1
-2
-3
-4
-5
-delete from t1;
-create procedure p2()
-begin
-declare a int default 4;
-create table t2 as select a;
-end//
-call p2();
-select * from t2;
-a
-4
-select * from t2;
-a
-4
-drop procedure p1;
-drop procedure p2;
-drop table t2;
-create function f1(x int) returns int
-begin
-insert into t1 values(x);
-return x+1;
-end//
-create procedure p1(a int, b int)
-begin
-declare v int default f1(5);
-if (f1(6)) then
-select 'yes';
-end if;
-set v = f1(7);
-while f1(8) < 1 do
-select 'this cant be';
-end while;
-end//
-call p1(f1(1), f1(2));
-yes
-yes
-select * from t1;
-a
-1
-2
-5
-6
-7
-8
-create table t2(a int);
-insert into t2 values (10),(11);
-select a,f1(a) from t2;
-a f1(a)
-10 11
-11 12
-insert into t2 select f1(3);
-select 'master:',a from t1;
-master: a
-master: 1
-master: 2
-master: 5
-master: 6
-master: 7
-master: 8
-master: 10
-master: 11
-master: 3
-select 'slave:',a from t1;
-slave: a
-slave: 1
-slave: 2
-slave: 5
-slave: 6
-slave: 7
-slave: 8
-slave: 10
-slave: 11
-slave: 3
-drop procedure p1;
-delete from t1;
-delete from t2;
-delete from t1;
-insert into t2 values(1),(2);
-create view v1 as select f1(a) from t2;
-select * from v1;
-f1(a)
-2
-3
-select 'master:',a from t1;
-master: a
-master: 1
-master: 2
-select 'slave:',a from t1;
-slave: a
-slave: 1
-slave: 2
-drop view v1;
-delete from t1;
-prepare s1 from 'select f1(?)';
-set @xx=123;
-execute s1 using @xx;
-f1(?)
-124
-select 'master:',a from t1;
-master: a
-master: 123
-select 'slave:',a from t1;
-slave: a
-slave: 123
-delete from t1;
-create procedure p1(spv int)
-begin
-declare c cursor for select f1(spv) from t2;
-while (spv > 2) do
-open c;
-fetch c into spv;
-close c;
-set spv= spv - 10;
-end while;
-end//
-call p1(15);
-select 'master:',a from t1;
-master: a
-master: 15
-master: 15
-master: 6
-master: 6
-select 'slave:',a from t1;
-slave: a
-slave: 15
-slave: 15
-slave: 6
-slave: 6
-drop procedure p1;
-drop function f1;
-drop table t1,t2;
-create table t1 (a int);
-create procedure p1()
-begin
-insert into t1 values(@x);
-set @x=@x+1;
-insert into t1 values(@x);
-if (f2()) then
-insert into t1 values(1243);
-end if;
-end//
-create function f2() returns int
-begin
-insert into t1 values(@z);
-set @z=@z+1;
-insert into t1 values(@z);
-return 0;
-end//
-create function f1() returns int
-begin
-insert into t1 values(@y);
-call p1();
-return 0;
-end//
-set @x=10;
-set @y=20;
-set @z=100;
-select f1();
-f1()
-0
-set @x=30;
-call p1();
-select 'master', a from t1;
-master a
-master 20
-master 10
-master 11
-master 100
-master 101
-master 30
-master 31
-master 101
-master 102
-select 'slave', a from t1;
-slave a
-slave 20
-slave 10
-slave 11
-slave 100
-slave 101
-slave 30
-slave 31
-slave 101
-slave 102
-drop table t1;
-drop function f1;
-drop function f2;
-drop procedure p1;
-create table t2 (b BIT(7));
-create procedure sp_bug26199(bitvalue BIT(7))
-begin
-insert into t2 set b = bitvalue;
-end //
-create function sf_bug26199(b BIT(7)) returns int
-begin
-insert into t2 values(b);
-return 0;
-end//
-call sp_bug26199(b'1110');
-call sp_bug26199('\0');
-select sf_bug26199(b'1111111');
-sf_bug26199(b'1111111')
-0
-select sf_bug26199(b'101111111');
-sf_bug26199(b'101111111')
-0
-Warnings:
-Warning 1264 Out of range value adjusted for column 'b' at row 1
-select sf_bug26199('\'');
-sf_bug26199('\'')
-0
-select hex(b) from t2;
-hex(b)
-E
-0
-7F
-7F
-27
-select hex(b) from t2;
-hex(b)
-E
-0
-7F
-7F
-27
-drop table t2;
-drop procedure sp_bug26199;
-drop function sf_bug26199;
-end of the tests
diff --git a/mysql-test/r/rpl_sporadic_master.result b/mysql-test/r/rpl_sporadic_master.result
deleted file mode 100644
index 789c3bf2b2b..00000000000
--- a/mysql-test/r/rpl_sporadic_master.result
+++ /dev/null
@@ -1,26 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t2(n int);
-create table t1(n int not null auto_increment primary key);
-insert into t1 values (NULL),(NULL);
-truncate table t1;
-insert into t1 values (4),(NULL);
-stop slave;
-start slave;
-insert into t1 values (NULL),(NULL);
-flush logs;
-truncate table t1;
-insert into t1 values (10),(NULL),(NULL),(NULL),(NULL),(NULL);
-select * from t1;
-n
-10
-11
-12
-13
-14
-15
-drop table t1,t2;
diff --git a/mysql-test/r/rpl_ssl.result b/mysql-test/r/rpl_ssl.result
deleted file mode 100644
index 1d3f4762693..00000000000
--- a/mysql-test/r/rpl_ssl.result
+++ /dev/null
@@ -1,95 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-grant replication slave on *.* to replssl@localhost require ssl;
-create table t1 (t int auto_increment, KEY(t));
-stop slave;
-change master to
-master_user='replssl',
-master_password='',
-master_ssl=1,
-master_ssl_ca ='MYSQL_TEST_DIR/std_data/cacert.pem',
-master_ssl_cert='MYSQL_TEST_DIR/std_data/client-cert.pem',
-master_ssl_key='MYSQL_TEST_DIR/std_data/client-key.pem';
-start slave;
-insert into t1 values(1);
-select * from t1;
-t
-1
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User replssl
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 420
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 420
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed Yes
-Master_SSL_CA_File MYSQL_TEST_DIR/std_data/cacert.pem
-Master_SSL_CA_Path
-Master_SSL_Cert MYSQL_TEST_DIR/std_data/client-cert.pem
-Master_SSL_Cipher
-Master_SSL_Key MYSQL_TEST_DIR/std_data/client-key.pem
-Seconds_Behind_Master #
-STOP SLAVE;
-select * from t1;
-t
-1
-insert into t1 values (NULL);
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User replssl
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running Yes
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos #
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed Yes
-Master_SSL_CA_File MYSQL_TEST_DIR/std_data/cacert.pem
-Master_SSL_CA_Path
-Master_SSL_Cert MYSQL_TEST_DIR/std_data/client-cert.pem
-Master_SSL_Cipher
-Master_SSL_Key MYSQL_TEST_DIR/std_data/client-key.pem
-Seconds_Behind_Master #
-End of 5.0 tests
diff --git a/mysql-test/r/rpl_start_stop_slave.result b/mysql-test/r/rpl_start_stop_slave.result
deleted file mode 100644
index 1fcb586d1fb..00000000000
--- a/mysql-test/r/rpl_start_stop_slave.result
+++ /dev/null
@@ -1,12 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-create table t1(n int);
-start slave;
-stop slave io_thread;
-start slave io_thread;
-drop table t1;
diff --git a/mysql-test/r/rpl_temporary.result b/mysql-test/r/rpl_temporary.result
deleted file mode 100644
index 1326c7491f5..00000000000
--- a/mysql-test/r/rpl_temporary.result
+++ /dev/null
@@ -1,154 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-reset master;
-SET @save_select_limit=@@session.sql_select_limit;
-SET @@session.sql_select_limit=10, @@session.pseudo_thread_id=100;
-ERROR 42000: Access denied; you need the SUPER privilege for this operation
-SELECT @@session.sql_select_limit = @save_select_limit;
-@@session.sql_select_limit = @save_select_limit
-1
-SET @@session.sql_select_limit=10, @@session.sql_log_bin=0;
-ERROR 42000: Access denied; you need the SUPER privilege for this operation
-SELECT @@session.sql_select_limit = @save_select_limit;
-@@session.sql_select_limit = @save_select_limit
-1
-SET @@session.pseudo_thread_id=100;
-SET @@session.pseudo_thread_id=connection_id();
-SET @@session.sql_log_bin=0;
-SET @@session.sql_log_bin=1;
-drop table if exists t1,t2;
-create table t1(f int);
-create table t2(f int);
-insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
-create temporary table t3(f int);
-insert into t3 select * from t1 where f<6;
-create temporary table t3(f int);
-insert into t2 select count(*) from t3;
-insert into t3 select * from t1 where f>=4;
-drop temporary table t3;
-insert into t2 select count(*) from t3;
-drop temporary table t3;
-select * from t2;
-f
-5
-7
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Format_desc 1 # Server ver: VERSION, Binlog ver: 4
-master-bin.000001 # Query 1 # use `test`; drop table if exists t1,t2
-master-bin.000001 # Query 1 # use `test`; create table t1(f int)
-master-bin.000001 # Query 1 # use `test`; create table t2(f int)
-master-bin.000001 # Query 1 # use `test`; insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10)
-master-bin.000001 # Query 1 # use `test`; create temporary table t3(f int)
-master-bin.000001 # Query 1 # use `test`; insert into t3 select * from t1 where f<6
-master-bin.000001 # Query 1 # use `test`; create temporary table t3(f int)
-master-bin.000001 # Query 1 # use `test`; insert into t2 select count(*) from t3
-master-bin.000001 # Query 1 # use `test`; insert into t3 select * from t1 where f>=4
-master-bin.000001 # Query 1 # use `test`; drop temporary table t3
-master-bin.000001 # Query 1 # use `test`; insert into t2 select count(*) from t3
-master-bin.000001 # Query 1 # use `test`; drop temporary table t3
-drop table t1, t2;
-use test;
-SET TIMESTAMP=1040323920;
-create table t1(f int);
-SET TIMESTAMP=1040323931;
-create table t2(f int);
-SET TIMESTAMP=1040323938;
-insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
-SET TIMESTAMP=1040323945;
-SET @@session.pseudo_thread_id=1;
-create temporary table t3(f int);
-SET TIMESTAMP=1040323952;
-SET @@session.pseudo_thread_id=1;
-insert into t3 select * from t1 where f<6;
-SET TIMESTAMP=1040324145;
-SET @@session.pseudo_thread_id=2;
-create temporary table t3(f int);
-SET TIMESTAMP=1040324186;
-SET @@session.pseudo_thread_id=1;
-insert into t2 select count(*) from t3;
-SET TIMESTAMP=1040324200;
-SET @@session.pseudo_thread_id=2;
-insert into t3 select * from t1 where f>=4;
-SET TIMESTAMP=1040324211;
-SET @@session.pseudo_thread_id=1;
-drop temporary table t3;
-SET TIMESTAMP=1040324219;
-SET @@session.pseudo_thread_id=2;
-insert into t2 select count(*) from t3;
-SET TIMESTAMP=1040324224;
-SET @@session.pseudo_thread_id=2;
-drop temporary table t3;
-select * from t2;
-f
-5
-7
-drop table t1,t2;
-create temporary table t3 (f int);
-create temporary table t4 (f int);
-create table t5 (f int);
-drop table if exists t999;
-create temporary table t999(
-id int,
-user char(255),
-host char(255),
-db char(255),
-Command char(255),
-time int,
-State char(255),
-info char(255)
-);
-LOAD DATA INFILE "./tmp/bl_dump_thread_id" into table t999;
-drop table t999;
-insert into t4 values (1);
-kill `select id from information_schema.processlist where command='Binlog Dump'`;
-insert into t5 select * from t4;
-select * from t5 /* must be 1 after reconnection */;
-f
-1
-drop temporary table t4;
-drop table t5;
-set @@session.pseudo_thread_id=100;
-create temporary table t101 (id int);
-create temporary table t102 (id int);
-set @@session.pseudo_thread_id=200;
-create temporary table t201 (id int);
-create temporary table `t``201` (id int);
-create temporary table `#sql_not_user_table202` (id int);
-set @@session.pseudo_thread_id=300;
-create temporary table t301 (id int);
-create temporary table t302 (id int);
-create temporary table `#sql_not_user_table303` (id int);
-create table t1(f int);
-insert into t1 values (1);
-select * from t1 /* must be 1 */;
-f
-1
-drop table t1;
-select * from t1;
-a
-1
-drop table t1;
-DROP TABLE IF EXISTS t1;
-CREATE TEMPORARY TABLE t1 (a char(1));
-INSERT INTO t1 VALUES ('a');
-include/stop_slave.inc
-include/start_slave.inc
-INSERT INTO t1 VALUES ('b');
-DROP TABLE IF EXISTS t1;
-CREATE TEMPORARY TABLE `t1`(`a` tinyint,`b` char(1))engine=myisam;
-INSERT INTO `t1` set `a`=128,`b`='128';
-Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1265 Data truncated for column 'b' at row 1
-include/stop_slave.inc
-include/start_slave.inc
-INSERT INTO `t1` set `a`=128,`b`='128';
-Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1265 Data truncated for column 'b' at row 1
-DROP TABLE t1;
diff --git a/mysql-test/r/rpl_timezone.result b/mysql-test/r/rpl_timezone.result
deleted file mode 100644
index ac23fb2ccd2..00000000000
--- a/mysql-test/r/rpl_timezone.result
+++ /dev/null
@@ -1,175 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set @my_time_zone= @@global.time_zone;
-set timestamp=100000000;
-create table t1 (t timestamp);
-create table t2 (t char(32));
-select @@time_zone;
-@@time_zone
-Japan
-select @@time_zone;
-@@time_zone
-Europe/Moscow
-insert into t1 values ('20050101000000'), ('20050611093902');
-set time_zone='UTC';
-insert into t1 values ('20040101000000'), ('20040611093902');
-select * from t1;
-t
-2004-12-31 21:00:00
-2005-06-11 05:39:02
-2004-01-01 00:00:00
-2004-06-11 09:39:02
-set time_zone='UTC';
-select * from t1;
-t
-2004-12-31 21:00:00
-2005-06-11 05:39:02
-2004-01-01 00:00:00
-2004-06-11 09:39:02
-delete from t1;
-set time_zone='Europe/Moscow';
-insert into t1 values ('20040101000000'), ('20040611093902');
-select * from t1;
-t
-2004-01-01 00:00:00
-2004-06-11 09:39:02
-set time_zone='Europe/Moscow';
-select * from t1;
-t
-2004-01-01 00:00:00
-2004-06-11 09:39:02
-/*!40019 SET @@session.max_insert_delayed_threads=0*/;
-/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
-DELIMITER /*!*/;
-ROLLBACK/*!*/;
-use test/*!*/;
-SET TIMESTAMP=100000000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
-SET @@session.sql_mode=0/*!*/;
-/*!\C latin1 *//*!*/;
-SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
-create table t1 (t timestamp)
-/*!*/;
-SET TIMESTAMP=100000000/*!*/;
-create table t2 (t char(32))
-/*!*/;
-SET TIMESTAMP=100000000/*!*/;
-SET @@session.time_zone='Europe/Moscow'/*!*/;
-insert into t1 values ('20050101000000'), ('20050611093902')
-/*!*/;
-SET TIMESTAMP=100000000/*!*/;
-SET @@session.time_zone='UTC'/*!*/;
-insert into t1 values ('20040101000000'), ('20040611093902')
-/*!*/;
-SET TIMESTAMP=100000000/*!*/;
-delete from t1
-/*!*/;
-SET TIMESTAMP=100000000/*!*/;
-SET @@session.time_zone='Europe/Moscow'/*!*/;
-insert into t1 values ('20040101000000'), ('20040611093902')
-/*!*/;
-DELIMITER ;
-# End of log file
-ROLLBACK /* added by mysqlbinlog */;
-/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
-delete from t1;
-set time_zone='UTC';
-load data infile '../std_data_ln/rpl_timezone.dat' into table t1;
-select * from t1;
-t
-2004-01-01 00:00:00
-2004-06-11 09:39:02
-set time_zone='UTC';
-select * from t1;
-t
-2004-01-01 00:00:00
-2004-06-11 09:39:02
-set time_zone='Europe/Moscow';
-set time_zone='Europe/Moscow';
-delete from t1;
-insert into t1 values ('20040101000000'), ('20040611093902');
-set time_zone='MET';
-insert into t2 (select t from t1);
-select * from t1;
-t
-2003-12-31 22:00:00
-2004-06-11 07:39:02
-select * from t2;
-t
-2003-12-31 22:00:00
-2004-06-11 07:39:02
-delete from t2;
-set timestamp=1000072000;
-insert into t2 values (current_timestamp), (current_date), (current_time);
-select * from t2;
-t
-2001-09-09 23:46:40
-2001-09-09
-23:46:40
-delete from t2;
-insert into t2 values (from_unixtime(1000000000)),
-(unix_timestamp('2001-09-09 03:46:40'));
-select * from t2;
-t
-2001-09-09 03:46:40
-1000000000
-select * from t2;
-t
-2001-09-09 03:46:40
-1000000000
-set global time_zone='MET';
-delete from t2;
-set time_zone='UTC';
-insert into t2 values(convert_tz('2004-01-01 00:00:00','MET',@@time_zone));
-insert into t2 values(convert_tz('2005-01-01 00:00:00','MET','Japan'));
-select * from t2;
-t
-2003-12-31 23:00:00
-2005-01-01 08:00:00
-select * from t2;
-t
-2003-12-31 23:00:00
-2005-01-01 08:00:00
-drop table t1, t2;
-set global time_zone= @my_time_zone;
-End of 4.1 tests
-CREATE TABLE t1 (a INT, b TIMESTAMP);
-INSERT INTO t1 VALUES (1, NOW());
-SET @@session.time_zone='Japan';
-UPDATE t1 SET b= '1970-01-01 08:59:59' WHERE a= 1;
-Warnings:
-Warning 1264 Out of range value adjusted for column 'b' at row 1
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0000-00-00 00:00:00
-SET @@session.time_zone='Japan';
-SELECT * FROM t1 ORDER BY a;
-a b
-1 0000-00-00 00:00:00
-SET @@session.time_zone = default;
-DROP TABLE t1;
-SET @@session.time_zone = default;
-reset master;
-CREATE TABLE t1 (date timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, a int(11) default NULL);
-SET @@session.time_zone='+01:00';
-insert into t1 values('2008-12-23 19:39:39',1);
-SET @@session.time_zone='+02:00';
-insert delayed into t1 values ('2008-12-23 19:39:39',2);
-flush table t1;
-flush logs;
-select * from t1;
-date a
-2008-12-23 20:39:39 1
-2008-12-23 19:39:39 2
-DROP TABLE t1;
-select * from t1 order by a;
-date a
-2008-12-23 20:39:39 1
-2008-12-23 19:39:39 2
-DROP TABLE t1;
-SET @@session.time_zone = default;
-End of 5.0 tests
diff --git a/mysql-test/r/rpl_transaction.result b/mysql-test/r/rpl_transaction.result
deleted file mode 100644
index 9ea0c8f7afd..00000000000
--- a/mysql-test/r/rpl_transaction.result
+++ /dev/null
@@ -1,95 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-CREATE TABLE tmyisam (a int) ENGINE = MYISAM;
-CREATE TABLE tinnodb (a int) ENGINE = INNODB;
-SHOW CREATE TABLE tmyisam;
-Table Create Table
-tmyisam CREATE TABLE `tmyisam` (
- `a` int(11) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-SHOW CREATE TABLE tinnodb;
-Table Create Table
-tinnodb CREATE TABLE `tinnodb` (
- `a` int(11) default NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-==== Test 1: Non-XA Engines ====
---- on master ---
-SET AUTOCOMMIT = 1;
-INSERT INTO tmyisam VALUES (1);
-BEGIN;
-INSERT INTO tmyisam VALUES (2);
-INSERT INTO tmyisam VALUES (3);
-COMMIT;
-BEGIN;
-INSERT INTO tmyisam VALUES (5);
-INSERT INTO tmyisam VALUES (6);
-ROLLBACK;
-Warnings:
-Warning 1196 Some non-transactional changed tables couldn't be rolled back
-SELECT * FROM tmyisam ORDER BY a;
-a
-1
-2
-3
-5
-6
---- on slave ---
-SELECT * FROM tmyisam ORDER BY a;
-a
-1
-2
-3
-5
-6
-==== Test 2: Master crash before writing XID event on XA engine ====
---- on master ---
-INSERT INTO tinnodb VALUES (1);
-SELECT * FROM tinnodb ORDER BY a;
-a
-1
---- on slave ---
-STOP SLAVE;
-SHOW SLAVE STATUS;
-Slave_IO_State
-Master_Host 127.0.0.1
-Master_User root
-Master_Port #
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running No
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table #
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos #
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-SELECT * FROM tinnodb ORDER BY a;
-a
-DROP TABLE tmyisam;
-DROP TABLE tinnodb;
-DROP TABLE tmyisam;
-DROP TABLE tinnodb;
diff --git a/mysql-test/r/rpl_trigger_not_windows.result b/mysql-test/r/rpl_trigger_not_windows.result
deleted file mode 100644
index 51e7c15bc12..00000000000
--- a/mysql-test/r/rpl_trigger_not_windows.result
+++ /dev/null
@@ -1,974 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int auto_increment, primary key (a), b int, rand_value double not null);
-create table t2 (a int auto_increment, primary key (a), b int);
-create table t3 (a int auto_increment, primary key (a), name varchar(64) not null, old_a int, old_b int, rand_value double not null);
-create trigger t1 before insert on t1 for each row
-begin
-insert into t3 values (NULL, "t1", new.a, new.b, rand());
-end|
-create trigger t2 after insert on t2 for each row
-begin
-insert into t3 values (NULL, "t2", new.a, new.b, rand());
-end|
-insert into t3 values(100,"log",0,0,0);
-SET @@RAND_SEED1=658490765, @@RAND_SEED2=635893186;
-insert into t1 values(1,1,rand()),(NULL,2,rand());
-insert into t2 (b) values(last_insert_id());
-insert into t2 values(3,0),(NULL,0);
-insert into t2 values(NULL,0),(500,0);
-select a,b, truncate(rand_value,4) from t1;
-a b truncate(rand_value,4)
-1 1 0.4320
-2 2 0.3055
-select * from t2;
-a b
-1 2
-3 0
-4 0
-5 0
-500 0
-select a,name, old_a, old_b, truncate(rand_value,4) from t3;
-a name old_a old_b truncate(rand_value,4)
-100 log 0 0 0.0000
-101 t1 1 1 0.3203
-102 t1 0 2 0.5666
-103 t2 1 2 0.9164
-104 t2 3 0 0.8826
-105 t2 4 0 0.6635
-106 t2 5 0 0.6699
-107 t2 500 0 0.3593
-
---- On slave --
-select a,b, truncate(rand_value,4) from t1;
-a b truncate(rand_value,4)
-1 1 0.4320
-2 2 0.3055
-select * from t2;
-a b
-1 2
-3 0
-4 0
-5 0
-500 0
-select a,name, old_a, old_b, truncate(rand_value,4) from t3;
-a name old_a old_b truncate(rand_value,4)
-100 log 0 0 0.0000
-101 t1 1 1 0.3203
-102 t1 0 2 0.5666
-103 t2 1 2 0.9164
-104 t2 3 0 0.8826
-105 t2 4 0 0.6635
-106 t2 5 0 0.6699
-107 t2 500 0 0.3593
-drop table t1,t2,t3;
-select get_lock("bug12480",2);
-get_lock("bug12480",2)
-1
-create table t1 (a datetime,b datetime, c datetime);
-drop function if exists bug12480;
-create function bug12480() returns datetime
-begin
-set @a=get_lock("bug12480",2);
-return now();
-end|
-create trigger t1_first before insert on t1
-for each row begin
-set @a=get_lock("bug12480",2);
-set new.b= now();
-set new.c= bug12480();
-end
-|
-insert into t1 set a = now();
-select a=b && a=c from t1;
-a=b && a=c
-1
-SELECT routine_name, definer
-FROM information_schema.routines
-WHERE routine_name = 'bug12480';
-routine_name definer
-bug12480 root@localhost
-SELECT trigger_name, definer
-FROM information_schema.triggers
-WHERE trigger_name = 't1_first';
-trigger_name definer
-t1_first root@localhost
-
---- On slave --
-SELECT routine_name, definer
-FROM information_schema.routines
-WHERE routine_name = 'bug12480';
-routine_name definer
-bug12480 root@localhost
-SELECT trigger_name, definer
-FROM information_schema.triggers
-WHERE trigger_name = 't1_first';
-trigger_name definer
-t1_first root@localhost
-select a=b && a=c from t1;
-a=b && a=c
-1
-test
-1
-truncate table t1;
-drop trigger t1_first;
-insert into t1 values ("2003-03-03","2003-03-03","2003-03-03"),(bug12480(),bug12480(),bug12480()),(now(),now(),now());
-select a=b && a=c from t1;
-a=b && a=c
-1
-1
-1
-drop function bug12480;
-drop table t1;
-create table t1 (i int);
-create table t2 (i int);
-create trigger tr1 before insert on t1 for each row
-begin
-insert into t2 values (1);
-end|
-create database other;
-use other;
-insert into test.t1 values (1);
-use test;
-drop table t1,t2;
-drop database other;
-test case for BUG#13227
--------------------
-10
--------------------
-drop table if exists t110;
-drop table if exists t210,t310;
-create table t110 (f1 int) /* 2 replicate */;
-insert into t110 values (-5);
-insert into t110 values (-4);
-insert into t110 values (-3);
-insert into t110 values (-2);
-insert into t110 values (-1);
-select * from t110;
-f1
--5
--4
--3
--2
--1
-create trigger trg110 before update on t110 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t210 where f1=NEW.f1;
-INSERT INTO t310 values (r);
-end|
-create table t210 (f1 int, f2 int) /* slave local */;
-create table t310 (f3 int) /* slave local */;
-insert into t210 values (5, 5*100);
-insert into t210 values (4, 4*100);
-insert into t210 values (3, 3*100);
-insert into t210 values (2, 2*100);
-insert into t210 values (1, 1*100);
-select * from t210;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t110 SET f1=5 where f1=-5;
-SELECT * from t110 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t310 /* must be f3 5*100 */;
-f3
-500
-UPDATE t110 SET f1=5 where f1=-5;
-UPDATE t110 SET f1=4 where f1=-4;
-UPDATE t110 SET f1=3 where f1=-3;
-UPDATE t110 SET f1=2 where f1=-2;
-UPDATE t110 SET f1=1 where f1=-1;
-SELECT * from t110 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t310 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg110;
-drop table t210,t310;
-drop table t110;
--------------------
-9
--------------------
-drop table if exists t19;
-drop table if exists t29,t39;
-create table t19 (f1 int) /* 2 replicate */;
-insert into t19 values (-5);
-insert into t19 values (-4);
-insert into t19 values (-3);
-insert into t19 values (-2);
-insert into t19 values (-1);
-select * from t19;
-f1
--5
--4
--3
--2
--1
-create trigger trg19 before update on t19 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t29 where f1=NEW.f1;
-INSERT INTO t39 values (r);
-end|
-create table t29 (f1 int, f2 int) /* slave local */;
-create table t39 (f3 int) /* slave local */;
-insert into t29 values (5, 5*100);
-insert into t29 values (4, 4*100);
-insert into t29 values (3, 3*100);
-insert into t29 values (2, 2*100);
-insert into t29 values (1, 1*100);
-select * from t29;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t19 SET f1=5 where f1=-5;
-SELECT * from t19 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t39 /* must be f3 5*100 */;
-f3
-500
-UPDATE t19 SET f1=5 where f1=-5;
-UPDATE t19 SET f1=4 where f1=-4;
-UPDATE t19 SET f1=3 where f1=-3;
-UPDATE t19 SET f1=2 where f1=-2;
-UPDATE t19 SET f1=1 where f1=-1;
-SELECT * from t19 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t39 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg19;
-drop table t29,t39;
-drop table t19;
--------------------
-8
--------------------
-drop table if exists t18;
-drop table if exists t28,t38;
-create table t18 (f1 int) /* 2 replicate */;
-insert into t18 values (-5);
-insert into t18 values (-4);
-insert into t18 values (-3);
-insert into t18 values (-2);
-insert into t18 values (-1);
-select * from t18;
-f1
--5
--4
--3
--2
--1
-create trigger trg18 before update on t18 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t28 where f1=NEW.f1;
-INSERT INTO t38 values (r);
-end|
-create table t28 (f1 int, f2 int) /* slave local */;
-create table t38 (f3 int) /* slave local */;
-insert into t28 values (5, 5*100);
-insert into t28 values (4, 4*100);
-insert into t28 values (3, 3*100);
-insert into t28 values (2, 2*100);
-insert into t28 values (1, 1*100);
-select * from t28;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t18 SET f1=5 where f1=-5;
-SELECT * from t18 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t38 /* must be f3 5*100 */;
-f3
-500
-UPDATE t18 SET f1=5 where f1=-5;
-UPDATE t18 SET f1=4 where f1=-4;
-UPDATE t18 SET f1=3 where f1=-3;
-UPDATE t18 SET f1=2 where f1=-2;
-UPDATE t18 SET f1=1 where f1=-1;
-SELECT * from t18 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t38 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg18;
-drop table t28,t38;
-drop table t18;
--------------------
-7
--------------------
-drop table if exists t17;
-drop table if exists t27,t37;
-create table t17 (f1 int) /* 2 replicate */;
-insert into t17 values (-5);
-insert into t17 values (-4);
-insert into t17 values (-3);
-insert into t17 values (-2);
-insert into t17 values (-1);
-select * from t17;
-f1
--5
--4
--3
--2
--1
-create trigger trg17 before update on t17 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t27 where f1=NEW.f1;
-INSERT INTO t37 values (r);
-end|
-create table t27 (f1 int, f2 int) /* slave local */;
-create table t37 (f3 int) /* slave local */;
-insert into t27 values (5, 5*100);
-insert into t27 values (4, 4*100);
-insert into t27 values (3, 3*100);
-insert into t27 values (2, 2*100);
-insert into t27 values (1, 1*100);
-select * from t27;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t17 SET f1=5 where f1=-5;
-SELECT * from t17 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t37 /* must be f3 5*100 */;
-f3
-500
-UPDATE t17 SET f1=5 where f1=-5;
-UPDATE t17 SET f1=4 where f1=-4;
-UPDATE t17 SET f1=3 where f1=-3;
-UPDATE t17 SET f1=2 where f1=-2;
-UPDATE t17 SET f1=1 where f1=-1;
-SELECT * from t17 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t37 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg17;
-drop table t27,t37;
-drop table t17;
--------------------
-6
--------------------
-drop table if exists t16;
-drop table if exists t26,t36;
-create table t16 (f1 int) /* 2 replicate */;
-insert into t16 values (-5);
-insert into t16 values (-4);
-insert into t16 values (-3);
-insert into t16 values (-2);
-insert into t16 values (-1);
-select * from t16;
-f1
--5
--4
--3
--2
--1
-create trigger trg16 before update on t16 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t26 where f1=NEW.f1;
-INSERT INTO t36 values (r);
-end|
-create table t26 (f1 int, f2 int) /* slave local */;
-create table t36 (f3 int) /* slave local */;
-insert into t26 values (5, 5*100);
-insert into t26 values (4, 4*100);
-insert into t26 values (3, 3*100);
-insert into t26 values (2, 2*100);
-insert into t26 values (1, 1*100);
-select * from t26;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t16 SET f1=5 where f1=-5;
-SELECT * from t16 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t36 /* must be f3 5*100 */;
-f3
-500
-UPDATE t16 SET f1=5 where f1=-5;
-UPDATE t16 SET f1=4 where f1=-4;
-UPDATE t16 SET f1=3 where f1=-3;
-UPDATE t16 SET f1=2 where f1=-2;
-UPDATE t16 SET f1=1 where f1=-1;
-SELECT * from t16 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t36 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg16;
-drop table t26,t36;
-drop table t16;
--------------------
-5
--------------------
-drop table if exists t15;
-drop table if exists t25,t35;
-create table t15 (f1 int) /* 2 replicate */;
-insert into t15 values (-5);
-insert into t15 values (-4);
-insert into t15 values (-3);
-insert into t15 values (-2);
-insert into t15 values (-1);
-select * from t15;
-f1
--5
--4
--3
--2
--1
-create trigger trg15 before update on t15 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t25 where f1=NEW.f1;
-INSERT INTO t35 values (r);
-end|
-create table t25 (f1 int, f2 int) /* slave local */;
-create table t35 (f3 int) /* slave local */;
-insert into t25 values (5, 5*100);
-insert into t25 values (4, 4*100);
-insert into t25 values (3, 3*100);
-insert into t25 values (2, 2*100);
-insert into t25 values (1, 1*100);
-select * from t25;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t15 SET f1=5 where f1=-5;
-SELECT * from t15 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t35 /* must be f3 5*100 */;
-f3
-500
-UPDATE t15 SET f1=5 where f1=-5;
-UPDATE t15 SET f1=4 where f1=-4;
-UPDATE t15 SET f1=3 where f1=-3;
-UPDATE t15 SET f1=2 where f1=-2;
-UPDATE t15 SET f1=1 where f1=-1;
-SELECT * from t15 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t35 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg15;
-drop table t25,t35;
-drop table t15;
--------------------
-4
--------------------
-drop table if exists t14;
-drop table if exists t24,t34;
-create table t14 (f1 int) /* 2 replicate */;
-insert into t14 values (-5);
-insert into t14 values (-4);
-insert into t14 values (-3);
-insert into t14 values (-2);
-insert into t14 values (-1);
-select * from t14;
-f1
--5
--4
--3
--2
--1
-create trigger trg14 before update on t14 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t24 where f1=NEW.f1;
-INSERT INTO t34 values (r);
-end|
-create table t24 (f1 int, f2 int) /* slave local */;
-create table t34 (f3 int) /* slave local */;
-insert into t24 values (5, 5*100);
-insert into t24 values (4, 4*100);
-insert into t24 values (3, 3*100);
-insert into t24 values (2, 2*100);
-insert into t24 values (1, 1*100);
-select * from t24;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t14 SET f1=5 where f1=-5;
-SELECT * from t14 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t34 /* must be f3 5*100 */;
-f3
-500
-UPDATE t14 SET f1=5 where f1=-5;
-UPDATE t14 SET f1=4 where f1=-4;
-UPDATE t14 SET f1=3 where f1=-3;
-UPDATE t14 SET f1=2 where f1=-2;
-UPDATE t14 SET f1=1 where f1=-1;
-SELECT * from t14 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t34 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg14;
-drop table t24,t34;
-drop table t14;
--------------------
-3
--------------------
-drop table if exists t13;
-drop table if exists t23,t33;
-create table t13 (f1 int) /* 2 replicate */;
-insert into t13 values (-5);
-insert into t13 values (-4);
-insert into t13 values (-3);
-insert into t13 values (-2);
-insert into t13 values (-1);
-select * from t13;
-f1
--5
--4
--3
--2
--1
-create trigger trg13 before update on t13 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t23 where f1=NEW.f1;
-INSERT INTO t33 values (r);
-end|
-create table t23 (f1 int, f2 int) /* slave local */;
-create table t33 (f3 int) /* slave local */;
-insert into t23 values (5, 5*100);
-insert into t23 values (4, 4*100);
-insert into t23 values (3, 3*100);
-insert into t23 values (2, 2*100);
-insert into t23 values (1, 1*100);
-select * from t23;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t13 SET f1=5 where f1=-5;
-SELECT * from t13 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t33 /* must be f3 5*100 */;
-f3
-500
-UPDATE t13 SET f1=5 where f1=-5;
-UPDATE t13 SET f1=4 where f1=-4;
-UPDATE t13 SET f1=3 where f1=-3;
-UPDATE t13 SET f1=2 where f1=-2;
-UPDATE t13 SET f1=1 where f1=-1;
-SELECT * from t13 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t33 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg13;
-drop table t23,t33;
-drop table t13;
--------------------
-2
--------------------
-drop table if exists t12;
-drop table if exists t22,t32;
-create table t12 (f1 int) /* 2 replicate */;
-insert into t12 values (-5);
-insert into t12 values (-4);
-insert into t12 values (-3);
-insert into t12 values (-2);
-insert into t12 values (-1);
-select * from t12;
-f1
--5
--4
--3
--2
--1
-create trigger trg12 before update on t12 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t22 where f1=NEW.f1;
-INSERT INTO t32 values (r);
-end|
-create table t22 (f1 int, f2 int) /* slave local */;
-create table t32 (f3 int) /* slave local */;
-insert into t22 values (5, 5*100);
-insert into t22 values (4, 4*100);
-insert into t22 values (3, 3*100);
-insert into t22 values (2, 2*100);
-insert into t22 values (1, 1*100);
-select * from t22;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t12 SET f1=5 where f1=-5;
-SELECT * from t12 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t32 /* must be f3 5*100 */;
-f3
-500
-UPDATE t12 SET f1=5 where f1=-5;
-UPDATE t12 SET f1=4 where f1=-4;
-UPDATE t12 SET f1=3 where f1=-3;
-UPDATE t12 SET f1=2 where f1=-2;
-UPDATE t12 SET f1=1 where f1=-1;
-SELECT * from t12 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t32 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg12;
-drop table t22,t32;
-drop table t12;
--------------------
-1
--------------------
-drop table if exists t11;
-drop table if exists t21,t31;
-create table t11 (f1 int) /* 2 replicate */;
-insert into t11 values (-5);
-insert into t11 values (-4);
-insert into t11 values (-3);
-insert into t11 values (-2);
-insert into t11 values (-1);
-select * from t11;
-f1
--5
--4
--3
--2
--1
-create trigger trg11 before update on t11 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t21 where f1=NEW.f1;
-INSERT INTO t31 values (r);
-end|
-create table t21 (f1 int, f2 int) /* slave local */;
-create table t31 (f3 int) /* slave local */;
-insert into t21 values (5, 5*100);
-insert into t21 values (4, 4*100);
-insert into t21 values (3, 3*100);
-insert into t21 values (2, 2*100);
-insert into t21 values (1, 1*100);
-select * from t21;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t11 SET f1=5 where f1=-5;
-SELECT * from t11 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t31 /* must be f3 5*100 */;
-f3
-500
-UPDATE t11 SET f1=5 where f1=-5;
-UPDATE t11 SET f1=4 where f1=-4;
-UPDATE t11 SET f1=3 where f1=-3;
-UPDATE t11 SET f1=2 where f1=-2;
-UPDATE t11 SET f1=1 where f1=-1;
-SELECT * from t11 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t31 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg11;
-drop table t21,t31;
-drop table t11;
-STOP SLAVE;
-FLUSH LOGS;
-RESET SLAVE;
-START SLAVE;
-SELECT MASTER_POS_WAIT('master-bin.000001', 513) >= 0;
-MASTER_POS_WAIT('master-bin.000001', 513) >= 0
-1
-SHOW TABLES LIKE 't_';
-Tables_in_test (t_)
-t1
-t2
-SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-trg1 INSERT t1 INSERT INTO t2 VALUES(CURRENT_USER()) AFTER NULL
-SELECT * FROM t1;
-c
-1
-SELECT * FROM t2;
-s
-@
-INSERT INTO t1 VALUES(2);
-SELECT * FROM t1;
-c
-1
-2
-SELECT * FROM t2;
-s
-@
-root@localhost
-DROP TRIGGER trg1;
-Warnings:
-Warning 1454 No definer attribute for trigger 'test'.'trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
-DROP TABLE t1;
-DROP TABLE t2;
-STOP SLAVE;
-RESET SLAVE;
-SHOW TABLES LIKE 't_';
-Tables_in_test (t_)
-SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-RESET MASTER;
-START SLAVE;
-
----> Test for BUG#20438
-
----> Preparing environment...
----> connection: master
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-
----> Synchronizing slave with master...
-
----> connection: master
-
----> Creating objects...
-CREATE TABLE t1(c INT);
-CREATE TABLE t2(c INT);
-/*!50003 CREATE TRIGGER t1_bi BEFORE INSERT ON t1
-FOR EACH ROW
-INSERT INTO t2 VALUES(NEW.c * 10) */;
-
----> Inserting value...
-INSERT INTO t1 VALUES(1);
-
----> Checking on master...
-SELECT * FROM t1;
-c
-1
-SELECT * FROM t2;
-c
-10
-
----> Synchronizing slave with master...
----> connection: master
-
----> Checking on slave...
-SELECT * FROM t1;
-c
-1
-SELECT * FROM t2;
-c
-10
-
----> connection: master
-
----> Cleaning up...
-DROP TABLE t1;
-DROP TABLE t2;
-drop table if exists t1;
-create table t1(a int, b varchar(50));
-drop trigger not_a_trigger;
-ERROR HY000: Trigger does not exist
-drop trigger if exists not_a_trigger;
-Warnings:
-Note 1360 Trigger does not exist
-create trigger t1_bi before insert on t1
-for each row set NEW.b := "In trigger t1_bi";
-insert into t1 values (1, "a");
-drop trigger if exists t1_bi;
-insert into t1 values (2, "b");
-drop trigger if exists t1_bi;
-Warnings:
-Note 1360 Trigger does not exist
-insert into t1 values (3, "c");
-select * from t1;
-a b
-1 In trigger t1_bi
-2 b
-3 c
-select * from t1;
-a b
-1 In trigger t1_bi
-2 b
-3 c
-drop table t1;
diff --git a/mysql-test/r/rpl_trigger_windows.result b/mysql-test/r/rpl_trigger_windows.result
deleted file mode 100644
index a3781a6873f..00000000000
--- a/mysql-test/r/rpl_trigger_windows.result
+++ /dev/null
@@ -1,932 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create table t1 (a int auto_increment, primary key (a), b int, rand_value double not null);
-create table t2 (a int auto_increment, primary key (a), b int);
-create table t3 (a int auto_increment, primary key (a), name varchar(64) not null, old_a int, old_b int, rand_value double not null);
-create trigger t1 before insert on t1 for each row
-begin
-insert into t3 values (NULL, "t1", new.a, new.b, rand());
-end|
-create trigger t2 after insert on t2 for each row
-begin
-insert into t3 values (NULL, "t2", new.a, new.b, rand());
-end|
-insert into t3 values(100,"log",0,0,0);
-SET @@RAND_SEED1=658490765, @@RAND_SEED2=635893186;
-insert into t1 values(1,1,rand()),(NULL,2,rand());
-insert into t2 (b) values(last_insert_id());
-insert into t2 values(3,0),(NULL,0);
-insert into t2 values(NULL,0),(500,0);
-select a,b, truncate(rand_value,4) from t1;
-a b truncate(rand_value,4)
-1 1 0.4320
-2 2 0.3055
-select * from t2;
-a b
-1 2
-3 0
-4 0
-5 0
-500 0
-select a,name, old_a, old_b, truncate(rand_value,4) from t3;
-a name old_a old_b truncate(rand_value,4)
-100 log 0 0 0.0000
-101 t1 1 1 0.3203
-102 t1 0 2 0.5666
-103 t2 1 2 0.9164
-104 t2 3 0 0.8826
-105 t2 4 0 0.6635
-106 t2 5 0 0.6699
-107 t2 500 0 0.3593
-
---- On slave --
-select a,b, truncate(rand_value,4) from t1;
-a b truncate(rand_value,4)
-1 1 0.4320
-2 2 0.3055
-select * from t2;
-a b
-1 2
-3 0
-4 0
-5 0
-500 0
-select a,name, old_a, old_b, truncate(rand_value,4) from t3;
-a name old_a old_b truncate(rand_value,4)
-100 log 0 0 0.0000
-101 t1 1 1 0.3203
-102 t1 0 2 0.5666
-103 t2 1 2 0.9164
-104 t2 3 0 0.8826
-105 t2 4 0 0.6635
-106 t2 5 0 0.6699
-107 t2 500 0 0.3593
-drop table t1,t2,t3;
-select get_lock("bug12480",2);
-get_lock("bug12480",2)
-1
-create table t1 (a datetime,b datetime, c datetime);
-drop function if exists bug12480;
-create function bug12480() returns datetime
-begin
-set @a=get_lock("bug12480",2);
-return now();
-end|
-create trigger t1_first before insert on t1
-for each row begin
-set @a=get_lock("bug12480",2);
-set new.b= now();
-set new.c= bug12480();
-end
-|
-insert into t1 set a = now();
-select a=b && a=c from t1;
-a=b && a=c
-1
-SELECT routine_name, definer
-FROM information_schema.routines
-WHERE routine_name = 'bug12480';
-routine_name definer
-bug12480 root@localhost
-SELECT trigger_name, definer
-FROM information_schema.triggers
-WHERE trigger_name = 't1_first';
-trigger_name definer
-t1_first root@localhost
-
---- On slave --
-SELECT routine_name, definer
-FROM information_schema.routines
-WHERE routine_name = 'bug12480';
-routine_name definer
-bug12480 root@localhost
-SELECT trigger_name, definer
-FROM information_schema.triggers
-WHERE trigger_name = 't1_first';
-trigger_name definer
-t1_first root@localhost
-select a=b && a=c from t1;
-a=b && a=c
-1
-test
-1
-truncate table t1;
-drop trigger t1_first;
-insert into t1 values ("2003-03-03","2003-03-03","2003-03-03"),(bug12480(),bug12480(),bug12480()),(now(),now(),now());
-select a=b && a=c from t1;
-a=b && a=c
-1
-1
-1
-drop function bug12480;
-drop table t1;
-create table t1 (i int);
-create table t2 (i int);
-create trigger tr1 before insert on t1 for each row
-begin
-insert into t2 values (1);
-end|
-create database other;
-use other;
-insert into test.t1 values (1);
-use test;
-drop table t1,t2;
-drop database other;
-test case for BUG#13227
--------------------
-10
--------------------
-drop table if exists t110;
-drop table if exists t210,t310;
-create table t110 (f1 int) /* 2 replicate */;
-insert into t110 values (-5);
-insert into t110 values (-4);
-insert into t110 values (-3);
-insert into t110 values (-2);
-insert into t110 values (-1);
-select * from t110;
-f1
--5
--4
--3
--2
--1
-create trigger trg110 before update on t110 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t210 where f1=NEW.f1;
-INSERT INTO t310 values (r);
-end|
-create table t210 (f1 int, f2 int) /* slave local */;
-create table t310 (f3 int) /* slave local */;
-insert into t210 values (5, 5*100);
-insert into t210 values (4, 4*100);
-insert into t210 values (3, 3*100);
-insert into t210 values (2, 2*100);
-insert into t210 values (1, 1*100);
-select * from t210;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t110 SET f1=5 where f1=-5;
-SELECT * from t110 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t310 /* must be f3 5*100 */;
-f3
-500
-UPDATE t110 SET f1=5 where f1=-5;
-UPDATE t110 SET f1=4 where f1=-4;
-UPDATE t110 SET f1=3 where f1=-3;
-UPDATE t110 SET f1=2 where f1=-2;
-UPDATE t110 SET f1=1 where f1=-1;
-SELECT * from t110 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t310 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg110;
-drop table t210,t310;
-drop table t110;
--------------------
-9
--------------------
-drop table if exists t19;
-drop table if exists t29,t39;
-create table t19 (f1 int) /* 2 replicate */;
-insert into t19 values (-5);
-insert into t19 values (-4);
-insert into t19 values (-3);
-insert into t19 values (-2);
-insert into t19 values (-1);
-select * from t19;
-f1
--5
--4
--3
--2
--1
-create trigger trg19 before update on t19 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t29 where f1=NEW.f1;
-INSERT INTO t39 values (r);
-end|
-create table t29 (f1 int, f2 int) /* slave local */;
-create table t39 (f3 int) /* slave local */;
-insert into t29 values (5, 5*100);
-insert into t29 values (4, 4*100);
-insert into t29 values (3, 3*100);
-insert into t29 values (2, 2*100);
-insert into t29 values (1, 1*100);
-select * from t29;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t19 SET f1=5 where f1=-5;
-SELECT * from t19 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t39 /* must be f3 5*100 */;
-f3
-500
-UPDATE t19 SET f1=5 where f1=-5;
-UPDATE t19 SET f1=4 where f1=-4;
-UPDATE t19 SET f1=3 where f1=-3;
-UPDATE t19 SET f1=2 where f1=-2;
-UPDATE t19 SET f1=1 where f1=-1;
-SELECT * from t19 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t39 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg19;
-drop table t29,t39;
-drop table t19;
--------------------
-8
--------------------
-drop table if exists t18;
-drop table if exists t28,t38;
-create table t18 (f1 int) /* 2 replicate */;
-insert into t18 values (-5);
-insert into t18 values (-4);
-insert into t18 values (-3);
-insert into t18 values (-2);
-insert into t18 values (-1);
-select * from t18;
-f1
--5
--4
--3
--2
--1
-create trigger trg18 before update on t18 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t28 where f1=NEW.f1;
-INSERT INTO t38 values (r);
-end|
-create table t28 (f1 int, f2 int) /* slave local */;
-create table t38 (f3 int) /* slave local */;
-insert into t28 values (5, 5*100);
-insert into t28 values (4, 4*100);
-insert into t28 values (3, 3*100);
-insert into t28 values (2, 2*100);
-insert into t28 values (1, 1*100);
-select * from t28;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t18 SET f1=5 where f1=-5;
-SELECT * from t18 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t38 /* must be f3 5*100 */;
-f3
-500
-UPDATE t18 SET f1=5 where f1=-5;
-UPDATE t18 SET f1=4 where f1=-4;
-UPDATE t18 SET f1=3 where f1=-3;
-UPDATE t18 SET f1=2 where f1=-2;
-UPDATE t18 SET f1=1 where f1=-1;
-SELECT * from t18 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t38 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg18;
-drop table t28,t38;
-drop table t18;
--------------------
-7
--------------------
-drop table if exists t17;
-drop table if exists t27,t37;
-create table t17 (f1 int) /* 2 replicate */;
-insert into t17 values (-5);
-insert into t17 values (-4);
-insert into t17 values (-3);
-insert into t17 values (-2);
-insert into t17 values (-1);
-select * from t17;
-f1
--5
--4
--3
--2
--1
-create trigger trg17 before update on t17 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t27 where f1=NEW.f1;
-INSERT INTO t37 values (r);
-end|
-create table t27 (f1 int, f2 int) /* slave local */;
-create table t37 (f3 int) /* slave local */;
-insert into t27 values (5, 5*100);
-insert into t27 values (4, 4*100);
-insert into t27 values (3, 3*100);
-insert into t27 values (2, 2*100);
-insert into t27 values (1, 1*100);
-select * from t27;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t17 SET f1=5 where f1=-5;
-SELECT * from t17 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t37 /* must be f3 5*100 */;
-f3
-500
-UPDATE t17 SET f1=5 where f1=-5;
-UPDATE t17 SET f1=4 where f1=-4;
-UPDATE t17 SET f1=3 where f1=-3;
-UPDATE t17 SET f1=2 where f1=-2;
-UPDATE t17 SET f1=1 where f1=-1;
-SELECT * from t17 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t37 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg17;
-drop table t27,t37;
-drop table t17;
--------------------
-6
--------------------
-drop table if exists t16;
-drop table if exists t26,t36;
-create table t16 (f1 int) /* 2 replicate */;
-insert into t16 values (-5);
-insert into t16 values (-4);
-insert into t16 values (-3);
-insert into t16 values (-2);
-insert into t16 values (-1);
-select * from t16;
-f1
--5
--4
--3
--2
--1
-create trigger trg16 before update on t16 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t26 where f1=NEW.f1;
-INSERT INTO t36 values (r);
-end|
-create table t26 (f1 int, f2 int) /* slave local */;
-create table t36 (f3 int) /* slave local */;
-insert into t26 values (5, 5*100);
-insert into t26 values (4, 4*100);
-insert into t26 values (3, 3*100);
-insert into t26 values (2, 2*100);
-insert into t26 values (1, 1*100);
-select * from t26;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t16 SET f1=5 where f1=-5;
-SELECT * from t16 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t36 /* must be f3 5*100 */;
-f3
-500
-UPDATE t16 SET f1=5 where f1=-5;
-UPDATE t16 SET f1=4 where f1=-4;
-UPDATE t16 SET f1=3 where f1=-3;
-UPDATE t16 SET f1=2 where f1=-2;
-UPDATE t16 SET f1=1 where f1=-1;
-SELECT * from t16 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t36 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg16;
-drop table t26,t36;
-drop table t16;
--------------------
-5
--------------------
-drop table if exists t15;
-drop table if exists t25,t35;
-create table t15 (f1 int) /* 2 replicate */;
-insert into t15 values (-5);
-insert into t15 values (-4);
-insert into t15 values (-3);
-insert into t15 values (-2);
-insert into t15 values (-1);
-select * from t15;
-f1
--5
--4
--3
--2
--1
-create trigger trg15 before update on t15 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t25 where f1=NEW.f1;
-INSERT INTO t35 values (r);
-end|
-create table t25 (f1 int, f2 int) /* slave local */;
-create table t35 (f3 int) /* slave local */;
-insert into t25 values (5, 5*100);
-insert into t25 values (4, 4*100);
-insert into t25 values (3, 3*100);
-insert into t25 values (2, 2*100);
-insert into t25 values (1, 1*100);
-select * from t25;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t15 SET f1=5 where f1=-5;
-SELECT * from t15 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t35 /* must be f3 5*100 */;
-f3
-500
-UPDATE t15 SET f1=5 where f1=-5;
-UPDATE t15 SET f1=4 where f1=-4;
-UPDATE t15 SET f1=3 where f1=-3;
-UPDATE t15 SET f1=2 where f1=-2;
-UPDATE t15 SET f1=1 where f1=-1;
-SELECT * from t15 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t35 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg15;
-drop table t25,t35;
-drop table t15;
--------------------
-4
--------------------
-drop table if exists t14;
-drop table if exists t24,t34;
-create table t14 (f1 int) /* 2 replicate */;
-insert into t14 values (-5);
-insert into t14 values (-4);
-insert into t14 values (-3);
-insert into t14 values (-2);
-insert into t14 values (-1);
-select * from t14;
-f1
--5
--4
--3
--2
--1
-create trigger trg14 before update on t14 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t24 where f1=NEW.f1;
-INSERT INTO t34 values (r);
-end|
-create table t24 (f1 int, f2 int) /* slave local */;
-create table t34 (f3 int) /* slave local */;
-insert into t24 values (5, 5*100);
-insert into t24 values (4, 4*100);
-insert into t24 values (3, 3*100);
-insert into t24 values (2, 2*100);
-insert into t24 values (1, 1*100);
-select * from t24;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t14 SET f1=5 where f1=-5;
-SELECT * from t14 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t34 /* must be f3 5*100 */;
-f3
-500
-UPDATE t14 SET f1=5 where f1=-5;
-UPDATE t14 SET f1=4 where f1=-4;
-UPDATE t14 SET f1=3 where f1=-3;
-UPDATE t14 SET f1=2 where f1=-2;
-UPDATE t14 SET f1=1 where f1=-1;
-SELECT * from t14 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t34 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg14;
-drop table t24,t34;
-drop table t14;
--------------------
-3
--------------------
-drop table if exists t13;
-drop table if exists t23,t33;
-create table t13 (f1 int) /* 2 replicate */;
-insert into t13 values (-5);
-insert into t13 values (-4);
-insert into t13 values (-3);
-insert into t13 values (-2);
-insert into t13 values (-1);
-select * from t13;
-f1
--5
--4
--3
--2
--1
-create trigger trg13 before update on t13 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t23 where f1=NEW.f1;
-INSERT INTO t33 values (r);
-end|
-create table t23 (f1 int, f2 int) /* slave local */;
-create table t33 (f3 int) /* slave local */;
-insert into t23 values (5, 5*100);
-insert into t23 values (4, 4*100);
-insert into t23 values (3, 3*100);
-insert into t23 values (2, 2*100);
-insert into t23 values (1, 1*100);
-select * from t23;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t13 SET f1=5 where f1=-5;
-SELECT * from t13 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t33 /* must be f3 5*100 */;
-f3
-500
-UPDATE t13 SET f1=5 where f1=-5;
-UPDATE t13 SET f1=4 where f1=-4;
-UPDATE t13 SET f1=3 where f1=-3;
-UPDATE t13 SET f1=2 where f1=-2;
-UPDATE t13 SET f1=1 where f1=-1;
-SELECT * from t13 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t33 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg13;
-drop table t23,t33;
-drop table t13;
--------------------
-2
--------------------
-drop table if exists t12;
-drop table if exists t22,t32;
-create table t12 (f1 int) /* 2 replicate */;
-insert into t12 values (-5);
-insert into t12 values (-4);
-insert into t12 values (-3);
-insert into t12 values (-2);
-insert into t12 values (-1);
-select * from t12;
-f1
--5
--4
--3
--2
--1
-create trigger trg12 before update on t12 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t22 where f1=NEW.f1;
-INSERT INTO t32 values (r);
-end|
-create table t22 (f1 int, f2 int) /* slave local */;
-create table t32 (f3 int) /* slave local */;
-insert into t22 values (5, 5*100);
-insert into t22 values (4, 4*100);
-insert into t22 values (3, 3*100);
-insert into t22 values (2, 2*100);
-insert into t22 values (1, 1*100);
-select * from t22;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t12 SET f1=5 where f1=-5;
-SELECT * from t12 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t32 /* must be f3 5*100 */;
-f3
-500
-UPDATE t12 SET f1=5 where f1=-5;
-UPDATE t12 SET f1=4 where f1=-4;
-UPDATE t12 SET f1=3 where f1=-3;
-UPDATE t12 SET f1=2 where f1=-2;
-UPDATE t12 SET f1=1 where f1=-1;
-SELECT * from t12 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t32 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg12;
-drop table t22,t32;
-drop table t12;
--------------------
-1
--------------------
-drop table if exists t11;
-drop table if exists t21,t31;
-create table t11 (f1 int) /* 2 replicate */;
-insert into t11 values (-5);
-insert into t11 values (-4);
-insert into t11 values (-3);
-insert into t11 values (-2);
-insert into t11 values (-1);
-select * from t11;
-f1
--5
--4
--3
--2
--1
-create trigger trg11 before update on t11 /* slave local */
-for each row
-begin
-DECLARE r integer;
-SELECT f2 INTO r FROM t21 where f1=NEW.f1;
-INSERT INTO t31 values (r);
-end|
-create table t21 (f1 int, f2 int) /* slave local */;
-create table t31 (f3 int) /* slave local */;
-insert into t21 values (5, 5*100);
-insert into t21 values (4, 4*100);
-insert into t21 values (3, 3*100);
-insert into t21 values (2, 2*100);
-insert into t21 values (1, 1*100);
-select * from t21;
-f1 f2
-5 500
-4 400
-3 300
-2 200
-1 100
-UPDATE t11 SET f1=5 where f1=-5;
-SELECT * from t11 /* must be f1 5, 1 - 5 2 - 5 ... -1 */;
-f1
-5
--4
--3
--2
--1
-SELECT * from t31 /* must be f3 5*100 */;
-f3
-500
-UPDATE t11 SET f1=5 where f1=-5;
-UPDATE t11 SET f1=4 where f1=-4;
-UPDATE t11 SET f1=3 where f1=-3;
-UPDATE t11 SET f1=2 where f1=-2;
-UPDATE t11 SET f1=1 where f1=-1;
-SELECT * from t11 /* must be f1 5 ... 1 */;
-f1
-5
-4
-3
-2
-1
-SELECT * from t31 /* must be f3 5 * 100 ... 100 */;
-f3
-500
-400
-300
-200
-100
-drop trigger trg11;
-drop table t21,t31;
-drop table t11;
-
----> Test for BUG#20438
-
----> Preparing environment...
----> connection: master
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-
----> Synchronizing slave with master...
-
----> connection: master
-
----> Creating objects...
-CREATE TABLE t1(c INT);
-CREATE TABLE t2(c INT);
-/*!50003 CREATE TRIGGER t1_bi BEFORE INSERT ON t1
-FOR EACH ROW
-INSERT INTO t2 VALUES(NEW.c * 10) */;
-
----> Inserting value...
-INSERT INTO t1 VALUES(1);
-
----> Checking on master...
-SELECT * FROM t1;
-c
-1
-SELECT * FROM t2;
-c
-10
-
----> Synchronizing slave with master...
----> connection: master
-
----> Checking on slave...
-SELECT * FROM t1;
-c
-1
-SELECT * FROM t2;
-c
-10
-
----> connection: master
-
----> Cleaning up...
-DROP TABLE t1;
-DROP TABLE t2;
-drop table if exists t1;
-create table t1(a int, b varchar(50));
-drop trigger not_a_trigger;
-ERROR HY000: Trigger does not exist
-drop trigger if exists not_a_trigger;
-Warnings:
-Note 1360 Trigger does not exist
-create trigger t1_bi before insert on t1
-for each row set NEW.b := "In trigger t1_bi";
-insert into t1 values (1, "a");
-drop trigger if exists t1_bi;
-insert into t1 values (2, "b");
-drop trigger if exists t1_bi;
-Warnings:
-Note 1360 Trigger does not exist
-insert into t1 values (3, "c");
-select * from t1;
-a b
-1 In trigger t1_bi
-2 b
-3 c
-select * from t1;
-a b
-1 In trigger t1_bi
-2 b
-3 c
-drop table t1;
diff --git a/mysql-test/r/rpl_trunc_temp.result b/mysql-test/r/rpl_trunc_temp.result
deleted file mode 100644
index 44624a38875..00000000000
--- a/mysql-test/r/rpl_trunc_temp.result
+++ /dev/null
@@ -1,22 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-create temporary table t1 (n int);
-insert into t1 values(1);
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 1
-delete from t1;
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 1
-truncate t1;
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 1
-show status like 'Slave_open_temp_tables';
-Variable_name Value
-Slave_open_temp_tables 0
diff --git a/mysql-test/r/rpl_until.result b/mysql-test/r/rpl_until.result
deleted file mode 100644
index 60b956785ba..00000000000
--- a/mysql-test/r/rpl_until.result
+++ /dev/null
@@ -1,196 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-stop slave;
-create table t1(n int not null auto_increment primary key);
-insert into t1 values (1),(2),(3),(4);
-drop table t1;
-create table t2(n int not null auto_increment primary key);
-insert into t2 values (1),(2);
-insert into t2 values (3),(4);
-drop table t2;
-show binlog events;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
-master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
-master-bin.000001 219 Query 1 319 use `test`; insert into t1 values (1),(2),(3),(4)
-master-bin.000001 319 Query 1 395 use `test`; drop table t1
-master-bin.000001 395 Query 1 516 use `test`; create table t2(n int not null auto_increment primary key)
-master-bin.000001 516 Query 1 608 use `test`; insert into t2 values (1),(2)
-master-bin.000001 608 Query 1 700 use `test`; insert into t2 values (3),(4)
-master-bin.000001 700 Query 1 776 use `test`; drop table t2
-start slave until master_log_file='master-bin.000001', master_log_pos=319;
-select * from t1;
-n
-1
-2
-3
-4
-SHOW SLAVE STATUS;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 776
-Relay_Log_File slave-relay-bin.000004
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running #
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 319
-Relay_Log_Space #
-Until_Condition Master
-Until_Log_File master-bin.000001
-Until_Log_Pos 319
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
-select * from t1;
-n
-1
-2
-3
-4
-SHOW SLAVE STATUS;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 776
-Relay_Log_File slave-relay-bin.000004
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running #
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 319
-Relay_Log_Space #
-Until_Condition Master
-Until_Log_File master-no-such-bin.000001
-Until_Log_Pos 291
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=746;
-select * from t2;
-n
-1
-2
-SHOW SLAVE STATUS;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 776
-Relay_Log_File slave-relay-bin.000004
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running #
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 608
-Relay_Log_Space #
-Until_Condition Relay
-Until_Log_File slave-relay-bin.000004
-Until_Log_Pos 746
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-start slave;
-stop slave;
-start slave until master_log_file='master-bin.000001', master_log_pos=776;
-SHOW SLAVE STATUS;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos 776
-Relay_Log_File slave-relay-bin.000004
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 0
-Last_Error
-Skip_Counter 0
-Exec_Master_Log_Pos 776
-Relay_Log_Space #
-Until_Condition Master
-Until_Log_File master-bin.000001
-Until_Log_Pos 776
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-start slave until master_log_file='master-bin', master_log_pos=561;
-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
-start slave until master_log_file='master-bin.000001', master_log_pos=561, relay_log_pos=12;
-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
-start slave until master_log_file='master-bin.000001';
-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
-start slave until relay_log_file='slave-relay-bin.000002';
-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
-start slave until relay_log_file='slave-relay-bin.000002', master_log_pos=561;
-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
-start slave sql_thread;
-start slave until master_log_file='master-bin.000001', master_log_pos=776;
-Warnings:
-Note 1254 Slave is already running
diff --git a/mysql-test/r/rpl_user.result b/mysql-test/r/rpl_user.result
deleted file mode 100644
index be24ce0bc46..00000000000
--- a/mysql-test/r/rpl_user.result
+++ /dev/null
@@ -1,45 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set sql_log_bin=0;
-delete from mysql.user where Host='fakehost';
-set sql_log_bin=1;
-set sql_log_bin=0;
-delete from mysql.user where Host='fakehost';
-set sql_log_bin=1;
-create user 'foo'@'fakehost';
-create user 'foo'@'fakehost', 'bar'@'fakehost';
-ERROR HY000: Operation CREATE USER failed for 'foo'@'fakehost'
-create user 'foo'@'fakehost', 'bar'@'fakehost';
-ERROR HY000: Operation CREATE USER failed for 'foo'@'fakehost','bar'@'fakehost'
-select Host,User from mysql.user where Host='fakehost';
-Host User
-fakehost bar
-fakehost foo
-rename user 'foo'@'fakehost' to 'foofoo'@'fakehost';
-rename user 'not_exist_user1'@'fakehost' to 'foobar'@'fakehost', 'bar'@'fakehost' to 'barbar'@'fakehost';
-ERROR HY000: Operation RENAME USER failed for 'not_exist_user1'@'fakehost'
-rename user 'not_exist_user1'@'fakehost' to 'foobar'@'fakehost', 'not_exist_user2'@'fakehost' to 'barfoo'@'fakehost';
-ERROR HY000: Operation RENAME USER failed for 'not_exist_user1'@'fakehost','not_exist_user2'@'fakehost'
-select Host,User from mysql.user where Host='fakehost';
-Host User
-fakehost barbar
-fakehost foofoo
-drop user 'foofoo'@'fakehost';
-drop user 'not_exist_user1'@'fakehost', 'barbar'@'fakehost';
-ERROR HY000: Operation DROP USER failed for 'not_exist_user1'@'fakehost'
-drop user 'not_exist_user1'@'fakehost', 'not_exist_user2'@'fakehost';
-ERROR HY000: Operation DROP USER failed for 'not_exist_user1'@'fakehost','not_exist_user2'@'fakehost'
-select Host,User from mysql.user where Host='fakehost';
-Host User
-show binlog events from <binlog_start>;
-Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 # Query # # use `test`; create user 'foo'@'fakehost'
-master-bin.000001 # Query # # use `test`; create user 'foo'@'fakehost', 'bar'@'fakehost'
-master-bin.000001 # Query # # use `test`; rename user 'foo'@'fakehost' to 'foofoo'@'fakehost'
-master-bin.000001 # Query # # use `test`; rename user 'not_exist_user1'@'fakehost' to 'foobar'@'fakehost', 'bar'@'fakehost' to 'barbar'@'fakehost'
-master-bin.000001 # Query # # use `test`; drop user 'foofoo'@'fakehost'
-master-bin.000001 # Query # # use `test`; drop user 'not_exist_user1'@'fakehost', 'barbar'@'fakehost'
diff --git a/mysql-test/r/rpl_user_variables.result b/mysql-test/r/rpl_user_variables.result
deleted file mode 100644
index b8032a9c362..00000000000
--- a/mysql-test/r/rpl_user_variables.result
+++ /dev/null
@@ -1,337 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-reset master;
-create table t1(n char(30));
-set @i1:=12345678901234, @i2:=-12345678901234, @i3:=0, @i4:=-1;
-set @s1:='This is a test', @r1:=12.5, @r2:=-12.5;
-set @n1:=null;
-set @s2:='', @s3:='abc\'def', @s4:= 'abc\\def', @s5:= 'abc''def';
-insert into t1 values (@i1), (@i2), (@i3), (@i4);
-insert into t1 values (@r1), (@r2);
-insert into t1 values (@s1), (@s2), (@s3), (@s4), (@s5);
-insert into t1 values (@n1);
-insert into t1 values (@n2);
-insert into t1 values (@a:=0), (@a:=@a+1), (@a:=@a+1);
-insert into t1 values (@a+(@b:=@a+1));
-set @q:='abc';
-insert t1 values (@q), (@q:=concat(@q, 'n1')), (@q:=concat(@q, 'n2'));
-set @a:=5;
-insert into t1 values (@a),(@a);
-insert into t1 values (@a),(@a),(@a*5);
-select * from t1;
-n
-12345678901234
--12345678901234
-0
--1
-12.5
--12.5
-This is a test
-
-abc'def
-abc\def
-abc'def
-NULL
-NULL
-0
-1
-2
-5
-abc
-abcn1
-abcn1n2
-5
-5
-NULL
-NULL
-NULL
-select * from t1;
-n
-12345678901234
--12345678901234
-0
--1
-12.5
--12.5
-This is a test
-
-abc'def
-abc\def
-abc'def
-NULL
-NULL
-0
-1
-2
-5
-abc
-abcn1
-abcn1n2
-5
-5
-NULL
-NULL
-NULL
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000001 # Query 1 # use `test`; create table t1(n char(30))
-slave-bin.000001 # User var 2 # @`i1`=12345678901234
-slave-bin.000001 # User var 2 # @`i2`=-12345678901234
-slave-bin.000001 # User var 2 # @`i3`=0
-slave-bin.000001 # User var 2 # @`i4`=-1
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@i1), (@i2), (@i3), (@i4)
-slave-bin.000001 # User var 2 # @`r1`=12.5
-slave-bin.000001 # User var 2 # @`r2`=-12.5
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@r1), (@r2)
-slave-bin.000001 # User var 2 # @`s1`=_latin1 0x5468697320697320612074657374 COLLATE latin1_swedish_ci
-slave-bin.000001 # User var 2 # @`s2`=_latin1 "" COLLATE latin1_swedish_ci
-slave-bin.000001 # User var 2 # @`s3`=_latin1 0x61626327646566 COLLATE latin1_swedish_ci
-slave-bin.000001 # User var 2 # @`s4`=_latin1 0x6162635C646566 COLLATE latin1_swedish_ci
-slave-bin.000001 # User var 2 # @`s5`=_latin1 0x61626327646566 COLLATE latin1_swedish_ci
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@s1), (@s2), (@s3), (@s4), (@s5)
-slave-bin.000001 # User var 2 # @`n1`=NULL
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@n1)
-slave-bin.000001 # User var 2 # @`n2`=NULL
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@n2)
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a:=0), (@a:=@a+1), (@a:=@a+1)
-slave-bin.000001 # User var 2 # @`a`=2
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a+(@b:=@a+1))
-slave-bin.000001 # User var 2 # @`q`=_latin1 0x616263 COLLATE latin1_swedish_ci
-slave-bin.000001 # Query 1 # use `test`; insert t1 values (@q), (@q:=concat(@q, 'n1')), (@q:=concat(@q, 'n2'))
-slave-bin.000001 # User var 2 # @`a`=5
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a),(@a)
-slave-bin.000001 # User var 2 # @`a`=NULL
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a),(@a),(@a*5)
-insert into t1 select * FROM (select @var1 union select @var2) AS t2;
-drop table t1;
-End of 4.1 tests.
-DROP TABLE IF EXISTS t20;
-DROP TABLE IF EXISTS t21;
-DROP PROCEDURE IF EXISTS test.insert;
-CREATE TABLE t20 (a VARCHAR(20));
-CREATE TABLE t21 (a VARCHAR(20));
-CREATE PROCEDURE test.insert()
-BEGIN
-IF (@VAR)
-THEN
-INSERT INTO test.t20 VALUES ('SP_TRUE');
-ELSE
-INSERT INTO test.t20 VALUES ('SP_FALSE');
-END IF;
-END|
-CREATE TRIGGER test.insert_bi BEFORE INSERT
-ON test.t20 FOR EACH ROW
-BEGIN
-IF (@VAR)
-THEN
-INSERT INTO test.t21 VALUES ('TRIG_TRUE');
-ELSE
-INSERT INTO test.t21 VALUES ('TRIG_FALSE');
-END IF;
-END|
-SET @VAR=0;
-CALL test.insert();
-SET @VAR=1;
-CALL test.insert();
-On master: Check the tables for correct data
-SELECT * FROM t20;
-a
-SP_FALSE
-SP_TRUE
-SELECT * FROM t21;
-a
-TRIG_FALSE
-TRIG_TRUE
-On slave: Check the tables for correct data and it matches master
-SELECT * FROM t20;
-a
-SP_FALSE
-SP_TRUE
-SELECT * FROM t21;
-a
-TRIG_FALSE
-TRIG_TRUE
-DROP TABLE t20;
-DROP TABLE t21;
-DROP PROCEDURE test.insert;
-DROP TABLE IF EXISTS t1;
-DROP FUNCTION IF EXISTS test.square;
-CREATE TABLE t1 (i INT);
-CREATE FUNCTION test.square() RETURNS INTEGER DETERMINISTIC RETURN (@var * @var);
-SET @var = 1;
-INSERT INTO t1 VALUES (square());
-SET @var = 2;
-INSERT INTO t1 VALUES (square());
-SET @var = 3;
-INSERT INTO t1 VALUES (square());
-SET @var = 4;
-INSERT INTO t1 VALUES (square());
-SET @var = 5;
-INSERT INTO t1 VALUES (square());
-On master: Retrieve the values from the table
-SELECT * FROM t1;
-i
-1
-4
-9
-16
-25
-On slave: Retrieve the values from the table and verify they are the same as on master
-SELECT * FROM t1;
-i
-1
-4
-9
-16
-25
-DROP TABLE t1;
-DROP FUNCTION test.square;
-DROP TABLE IF EXISTS t1;
-DROP FUNCTION IF EXISTS f1;
-DROP FUNCTION IF EXISTS f2;
-CREATE TABLE t1(a int);
-CREATE FUNCTION f1() returns int deterministic
-BEGIN
-return @a;
-END |
-CREATE FUNCTION f2() returns int deterministic
-BEGIN
-IF (@b > 0) then
-SET @c = (@a + @b);
-else
-SET @c = (@a - 1);
-END if;
-return @c;
-END |
-SET @a=500;
-INSERT INTO t1 values(f1());
-SET @b = 125;
-SET @c = 1;
-INSERT INTO t1 values(f2());
-On master: Retrieve the values from the table
-SELECT * from t1;
-a
-500
-625
-On slave: Check the tables for correct data and it matches master
-SELECT * from t1;
-a
-500
-625
-DROP TABLE t1;
-DROP FUNCTION f1;
-DROP FUNCTION f2;
-DROP TABLE IF EXISTS t1;
-DROP TABLE IF EXISTS t2;
-CREATE TABLE t1 (i int);
-CREATE TABLE t2 (k int);
-CREATE trigger t1_bi before INSERT on t1 for each row
-BEGIN
-INSERT INTO t2 values (@a);
-SET @a:=42;
-INSERT INTO t2 values (@a);
-END |
-SET @a:=100;
-INSERT INTO t1 values (5);
-On master: Check to see that data was inserted correctly in both tables
-SELECT * from t1;
-i
-5
-SELECT * from t2;
-k
-100
-42
-On slave: Check the tables for correct data and it matches master
-SELECT * from t1;
-i
-5
-SELECT * from t2;
-k
-100
-42
-drop table t1, t2;
-reset master;
-create table t1 (a int);
-prepare s from "insert into t1 values (@a),(?)";
-set @a=98;
-execute s using @a;
-prepare s from "insert into t1 values (?)";
-set @a=99;
-execute s using @a;
-prepare s from "insert into t1 select 100 limit ?";
-set @a=100;
-execute s using @a;
-show binlog events from 98;
-Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000001 98 Query 1 184 use `test`; create table t1 (a int)
-slave-bin.000001 184 User var 2 226 @`a`=98
-slave-bin.000001 226 Query 1 320 use `test`; insert into t1 values (@a),(98)
-slave-bin.000001 320 Query 1 409 use `test`; insert into t1 values (99)
-slave-bin.000001 409 Query 1 507 use `test`; insert into t1 select 100 limit 100
-select * from t1;
-a
-98
-98
-99
-100
-drop table t1;
-create table t1(a int, b int);
-prepare s1 from 'insert into t1 values (@x:=@x+1, ?)';
-set @x=1;
-execute s1 using @x;
-select * from t1;
-a b
-2 1
-select * from t1;
-a b
-2 1
-drop table t1;
-create table t1(a int);
-insert into t1 values (1),(2);
-prepare s1 from 'insert into t1 select a from t1 limit ?';
-set @x='1.1';
-execute s1 using @x;
-select * from t1;
-a
-1
-2
-1
-select * from t1;
-a
-1
-2
-1
-drop table t1;
-End of 5.0 tests.
-DROP FUNCTION IF EXISTS f1;
-DROP FUNCTION IF EXISTS f2;
-CREATE TABLE t1 (i INT);
-CREATE FUNCTION f1() RETURNS INT RETURN @a;
-CREATE FUNCTION f2() RETURNS INT
-BEGIN
-INSERT INTO t1 VALUES (10 + @a);
-RETURN 0;
-END|
-SET @a:=123;
-SELECT f1(), f2();
-f1() f2()
-123 0
-On master: Check to see that data was inserted correctly
-INSERT INTO t1 VALUES(f1());
-SELECT * FROM t1;
-i
-133
-123
-On slave: Check the table for correct data and it matches master
-SELECT * FROM t1;
-i
-133
-123
-DROP FUNCTION f1;
-DROP FUNCTION f2;
-DROP TABLE t1;
-stop slave;
diff --git a/mysql-test/r/rpl_variables.result b/mysql-test/r/rpl_variables.result
deleted file mode 100644
index 6c532e33983..00000000000
--- a/mysql-test/r/rpl_variables.result
+++ /dev/null
@@ -1,19 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-set @my_slave_net_timeout =@@global.slave_net_timeout;
-set global slave_net_timeout=100;
-set global sql_slave_skip_counter=100;
-show variables like 'slave_compressed_protocol';
-Variable_name Value
-slave_compressed_protocol OFF
-show variables like 'slave_load_tmpdir';
-Variable_name Value
-slave_load_tmpdir SLAVE_LOAD_TMPDIR
-show variables like 'slave_skip_errors';
-Variable_name Value
-slave_skip_errors 3,100,137,643,1752
-set global slave_net_timeout =@my_slave_net_timeout;
diff --git a/mysql-test/r/rpl_view.result b/mysql-test/r/rpl_view.result
deleted file mode 100644
index addaba8c379..00000000000
--- a/mysql-test/r/rpl_view.result
+++ /dev/null
@@ -1,129 +0,0 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
-drop table if exists t1,v1;
-drop view if exists t1,v1;
-reset master;
-create table t1 (a int);
-insert into t1 values (1);
-create view v1 as select a from t1;
-insert into v1 values (2);
-select * from v1 order by a;
-a
-1
-2
-select * from v1 order by a;
-a
-1
-2
-update v1 set a=3 where a=1;
-select * from v1 order by a;
-a
-2
-3
-select * from v1 order by a;
-a
-2
-3
-delete from v1 where a=2;
-select * from v1 order by a;
-a
-3
-select * from v1 order by a;
-a
-3
-alter view v1 as select a as b from t1;
-select * from v1 order by 1;
-b
-3
-drop view v1;
-select * from v1 order by a;
-ERROR 42S02: Table 'test.v1' doesn't exist
-drop table t1;
-show binlog events limit 1,100;
-Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000001 # Query 1 # use `test`; create table t1 (a int)
-slave-bin.000001 # Query 1 # use `test`; insert into t1 values (1)
-slave-bin.000001 # Query 1 # use `test`; CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1`
-slave-bin.000001 # Query 1 # use `test`; insert into v1 values (2)
-slave-bin.000001 # Query 1 # use `test`; update v1 set a=3 where a=1
-slave-bin.000001 # Query 1 # use `test`; delete from v1 where a=2
-slave-bin.000001 # Query 1 # use `test`; ALTER ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`a` AS `b` from `test`.`t1`
-slave-bin.000001 # Query 1 # use `test`; drop view v1
-slave-bin.000001 # Query 1 # use `test`; drop table t1
-
----> Test for BUG#20438
-
----> Preparing environment...
----> connection: master
-DROP TABLE IF EXISTS t1;
-DROP VIEW IF EXISTS v1;
-
----> Synchronizing slave with master...
-
----> connection: master
-
----> Creating objects...
-CREATE TABLE t1(c INT);
-/*!50003 CREATE VIEW v1 AS SELECT * FROM t1 */;
-
----> Inserting value...
-INSERT INTO t1 VALUES(1);
-
----> Checking on master...
-SELECT * FROM t1;
-c
-1
-
----> Synchronizing slave with master...
----> connection: master
-
----> Checking on slave...
-SELECT * FROM t1;
-c
-1
-
----> connection: master
-
----> Cleaning up...
-DROP VIEW v1;
-DROP TABLE t1;
-create table t1(a int, b int);
-insert into t1 values (1, 1), (1, 2), (1, 3);
-create view v1(a, b) as select a, sum(b) from t1 group by a;
-explain v1;
-Field Type Null Key Default Extra
-a int(11) YES NULL
-b decimal(32,0) YES NULL
-show create table v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,sum(`t1`.`b`) AS `b` from `t1` group by `t1`.`a`
-select * from v1;
-a b
-1 6
-drop table t1;
-drop view v1;
-CREATE TABLE t1(a INT);
-CREATE VIEW v1 AS SELECT * FROM t1;
-CREATE VIEW v1 AS SELECT * FROM t1;
-ERROR 42S01: Table 'v1' already exists
-DROP VIEW v1;
-DROP TABLE t1;
-CREATE TABLE t1 (a INT);
-# create view as output from mysqldump 10.11 (5.0.62)
-/*!50001 CREATE ALGORITHM=UNDEFINED */
-/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
-/*!50001 VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` < 3) */
-/*!50002 WITH CASCADED CHECK OPTION */;
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` < 3) WITH CASCADED CHECK OPTION
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` < 3) WITH CASCADED CHECK OPTION
-DROP VIEW v1;
-DROP TABLE t1;
-End of 5.0 tests
diff --git a/mysql-test/r/schema.result b/mysql-test/r/schema.result
index 538abd8d039..564fb3626df 100644
--- a/mysql-test/r/schema.result
+++ b/mysql-test/r/schema.result
@@ -7,6 +7,7 @@ show schemas;
Database
information_schema
foo
+mtr
mysql
test
drop schema foo;
diff --git a/mysql-test/r/select.result b/mysql-test/r/select.result
index 4bb62fbfa70..a41f95de077 100644
--- a/mysql-test/r/select.result
+++ b/mysql-test/r/select.result
@@ -144,9 +144,9 @@ explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
explain select fld3 from t2 use index (not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
@@ -607,11 +607,11 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index period period 4 NULL 41810
+1 SIMPLE t3 index period period 4 NULL 1
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index period period 4 NULL 41810
+1 SIMPLE t1 index period period 4 NULL 1
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
@@ -1431,7 +1431,7 @@ companynr companynr
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Using join buffer
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
@@ -1504,10 +1504,10 @@ select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1)
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 100.00 Using where
Warnings:
-Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
+Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> ''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
@@ -2363,7 +2363,7 @@ insert into t2 values (1,3), (2,3), (3,4), (4,4);
explain select * from t1 left join t2 on a=c where d in (4);
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref c,d d 5 const 2 Using where
-1 SIMPLE t1 ALL a NULL NULL NULL 3 Using where
+1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where; Using join buffer
select * from t1 left join t2 on a=c where d in (4);
a b c d
3 2 3 4
@@ -2371,7 +2371,7 @@ a b c d
explain select * from t1 left join t2 on a=c where d = 4;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref c,d d 5 const 2 Using where
-1 SIMPLE t1 ALL a NULL NULL NULL 3 Using where
+1 SIMPLE t1 ALL a NULL NULL NULL 4 Using where; Using join buffer
select * from t1 left join t2 on a=c where d = 4;
a b c d
3 2 3 4
@@ -2717,7 +2717,7 @@ where (t1.c=t2.a or (t1.c=t3.a and t2.a=t3.b)) and t1.b=556476786 and
t2.b like '%%' order by t2.b limit 0,1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref b,c b 5 const 1 Using where; Using temporary; Using filesort
-1 SIMPLE t3 index PRIMARY,a,b PRIMARY 8 NULL 2 Using index
+1 SIMPLE t3 index PRIMARY,a,b PRIMARY 8 NULL 2 Using index; Using join buffer
1 SIMPLE t2 ALL PRIMARY NULL NULL NULL 2 Range checked for each record (index map: 0x1)
DROP TABLE t1,t2,t3;
CREATE TABLE t1 (a int, INDEX idx(a));
@@ -2726,15 +2726,9 @@ EXPLAIN SELECT * FROM t1 IGNORE INDEX (idx);
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
EXPLAIN SELECT * FROM t1 IGNORE INDEX (a);
-ERROR HY000: Key 'a' doesn't exist in table 't1'
+ERROR 42000: Key 'a' doesn't exist in table 't1'
EXPLAIN SELECT * FROM t1 FORCE INDEX (a);
-ERROR HY000: Key 'a' doesn't exist in table 't1'
-DROP TABLE t1;
-CREATE TABLE t1 (i BIGINT UNSIGNED NOT NULL);
-INSERT INTO t1 VALUES (10);
-SELECT i='1e+01',i=1e+01, i in (1e+01,1e+01), i in ('1e+01','1e+01') FROM t1;
-i='1e+01' i=1e+01 i in (1e+01,1e+01) i in ('1e+01','1e+01')
-1 1 1 1
+ERROR 42000: Key 'a' doesn't exist in table 't1'
DROP TABLE t1;
CREATE TABLE t1 (a int, b int);
INSERT INTO t1 VALUES (1,1), (2,1), (4,10);
@@ -2744,7 +2738,7 @@ ALTER TABLE t1 ENABLE KEYS;
EXPLAIN SELECT STRAIGHT_JOIN SQL_NO_CACHE COUNT(*) FROM t2, t1 WHERE t1.b = t2.b OR t2.b IS NULL;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 index b b 5 NULL 2 Using index
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where; Using join buffer
SELECT STRAIGHT_JOIN SQL_NO_CACHE * FROM t2, t1 WHERE t1.b = t2.b OR t2.b IS NULL;
a b a b
1 NULL 1 1
@@ -2754,7 +2748,7 @@ a b a b
EXPLAIN SELECT STRAIGHT_JOIN SQL_NO_CACHE COUNT(*) FROM t2, t1 WHERE t1.b = t2.b OR t2.b IS NULL;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 index b b 5 NULL 2 Using index
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where; Using join buffer
SELECT STRAIGHT_JOIN SQL_NO_CACHE * FROM t2, t1 WHERE t1.b = t2.b OR t2.b IS NULL;
a b a b
1 NULL 1 1
@@ -2811,16 +2805,22 @@ select min(key1) from t1 where key1 >= 0.3762 and rand() + 0.5 >= 0.5;
min(key1)
0.376199990510941
DROP TABLE t1,t2;
+CREATE TABLE t1 (i BIGINT UNSIGNED NOT NULL);
+INSERT INTO t1 VALUES (10);
+SELECT i='1e+01',i=1e+01, i in (1e+01,1e+01), i in ('1e+01','1e+01') FROM t1;
+i='1e+01' i=1e+01 i in (1e+01,1e+01) i in ('1e+01','1e+01')
+1 1 1 1
+DROP TABLE t1;
create table t1(a bigint unsigned, b bigint);
insert into t1 values (0xfffffffffffffffff, 0xfffffffffffffffff),
(0x10000000000000000, 0x10000000000000000),
(0x8fffffffffffffff, 0x8fffffffffffffff);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'b' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'b' at row 2
-Warning 1264 Out of range value adjusted for column 'b' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'b' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'b' at row 2
+Warning 1264 Out of range value for column 'b' at row 3
select hex(a), hex(b) from t1;
hex(a) hex(b)
FFFFFFFFFFFFFFFF 7FFFFFFFFFFFFFFF
@@ -2910,11 +2910,11 @@ a
EXPLAIN SELECT t1.a FROM t1 STRAIGHT_JOIN t2 ON t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 5
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where; Using join buffer
EXPLAIN SELECT t1.a FROM t1 INNER JOIN t2 ON t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 3
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where; Using join buffer
DROP TABLE t1,t2;
select x'10' + 0, X'10' + 0, b'10' + 0, B'10' + 0;
x'10' + 0 X'10' + 0 b'10' + 0 B'10' + 0
@@ -3423,19 +3423,19 @@ CREATE TABLE t1 (i TINYINT UNSIGNED NOT NULL);
INSERT t1 SET i = 0;
UPDATE t1 SET i = -1;
Warnings:
-Warning 1264 Out of range value adjusted for column 'i' at row 1
+Warning 1264 Out of range value for column 'i' at row 1
SELECT * FROM t1;
i
0
UPDATE t1 SET i = CAST(i - 1 AS SIGNED);
Warnings:
-Warning 1264 Out of range value adjusted for column 'i' at row 1
+Warning 1264 Out of range value for column 'i' at row 1
SELECT * FROM t1;
i
0
UPDATE t1 SET i = i - 1;
Warnings:
-Warning 1264 Out of range value adjusted for column 'i' at row 1
+Warning 1264 Out of range value for column 'i' at row 1
SELECT * FROM t1;
i
255
@@ -3453,7 +3453,7 @@ In next EXPLAIN, B.rows must be exactly 10:
explain select * from t2 A, t2 B where A.a=5 and A.b=5 and A.C<5
and B.a=5 and B.b=A.e and (B.b =1 or B.b = 3 or B.b=5);
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE A range PRIMARY PRIMARY 12 NULL 3 Using where
+1 SIMPLE A range PRIMARY PRIMARY 12 NULL 4 Using where
1 SIMPLE B ref PRIMARY PRIMARY 8 const,test.A.e 10
drop table t1, t2;
CREATE TABLE t1 (a int PRIMARY KEY, b int, INDEX(b));
@@ -3636,21 +3636,6 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range si,ai si 5 NULL 2 Using where
1 SIMPLE t3 eq_ref PRIMARY,ci PRIMARY 4 test.t2.a 1 Using where
DROP TABLE t1,t2,t3;
-CREATE TABLE t1 (a INT, b INT, KEY (a));
-INSERT INTO t1 VALUES (1,1),(2,2);
-EXPLAIN SELECT 1 FROM t1 WHERE a = 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a a 5 const 1 Using where; Using index
-EXPLAIN SELECT 1 FROM t1 IGNORE INDEX FOR JOIN (a) WHERE a = 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
-EXPLAIN SELECT 1 FROM t1 USE INDEX FOR JOIN (a) WHERE a = 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a a 5 const 1 Using where; Using index
-EXPLAIN SELECT 1 FROM t1 FORCE INDEX FOR JOIN (a) WHERE a = 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a a 5 const 1 Using where; Using index
-DROP TABLE t1;
CREATE TABLE t1 ( f1 int primary key, f2 int, f3 int, f4 int, f5 int, f6 int, checked_out int);
CREATE TABLE t2 ( f11 int PRIMARY KEY );
INSERT INTO t1 VALUES (1,1,1,0,0,0,0),(2,1,1,3,8,1,0),(3,1,1,4,12,1,0);
@@ -3797,9 +3782,9 @@ coalesce(9223372036854775808, 1) co;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` decimal(19,0) NOT NULL default '0',
- `c` decimal(19,0) NOT NULL default '0',
- `co` decimal(19,0) NOT NULL default '0'
+ `i` decimal(19,0) NOT NULL DEFAULT '0',
+ `c` decimal(19,0) NOT NULL DEFAULT '0',
+ `co` decimal(19,0) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select
@@ -4062,8 +4047,8 @@ join_2.c1,
join_7.c1,
join_1.c1,
join_0.c1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
Warnings:
Note 1003 select '0' AS `c1` from `test`.`t1` `join_0` join `test`.`t1` `join_1` join `test`.`t1` `join_2` join `test`.`t1` `join_3` join `test`.`t1` `join_4` join `test`.`t1` `join_5` join `test`.`t1` `join_6` join `test`.`t1` `join_7` where 0 group by '0','0','0','0','0'
SHOW WARNINGS;
@@ -4391,13 +4376,13 @@ drop table t1, t2, t3;
CREATE TABLE t1 (a INT KEY, b INT);
INSERT INTO t1 VALUES (1,1), (2,2), (3,3), (4,4);
EXPLAIN EXTENDED SELECT a, b FROM t1 WHERE a > 1 AND a = b LIMIT 2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 3 100.00 Using where
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where ((`test`.`t1`.`b` = `test`.`t1`.`a`) and (`test`.`t1`.`a` > 1)) limit 2
EXPLAIN EXTENDED SELECT a, b FROM t1 WHERE a > 1 AND b = a LIMIT 2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 3 100.00 Using where
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where ((`test`.`t1`.`a` = `test`.`t1`.`b`) and (`test`.`t1`.`a` > 1)) limit 2
DROP TABLE t1;
@@ -4431,3 +4416,153 @@ SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2 FORCE INDEX(a);
1
DROP TABLE t1;
End of 5.0 tests
+create table t1(a INT, KEY (a));
+INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
+SELECT a FROM t1 ORDER BY a LIMIT 2;
+a
+1
+2
+SELECT a FROM t1 ORDER BY a LIMIT 2,4294967296;
+a
+3
+4
+5
+SELECT a FROM t1 ORDER BY a LIMIT 2,4294967297;
+a
+3
+4
+5
+DROP TABLE t1;
+CREATE TABLE A (date_key date);
+CREATE TABLE C (
+pk int,
+int_nokey int,
+int_key int,
+date_key date NOT NULL,
+date_nokey date,
+varchar_key varchar(1)
+);
+INSERT INTO C VALUES
+(1,1,1,'0000-00-00',NULL,NULL),
+(1,1,1,'0000-00-00',NULL,NULL);
+SELECT 1 FROM C WHERE pk > ANY (SELECT 1 FROM C);
+1
+SELECT COUNT(DISTINCT 1) FROM C
+WHERE date_key = (SELECT 1 FROM A WHERE C.date_key IS NULL) GROUP BY pk;
+COUNT(DISTINCT 1)
+SELECT date_nokey FROM C
+WHERE int_key IN (SELECT 1 FROM A)
+HAVING date_nokey = '10:41:7'
+ORDER BY date_key;
+date_nokey
+Warnings:
+Warning 1292 Incorrect date value: '10:41:7' for column 'date_nokey' at row 1
+DROP TABLE A,C;
+CREATE TABLE t1 (a INT NOT NULL, b INT);
+INSERT INTO t1 VALUES (1, 1);
+EXPLAIN EXTENDED SELECT * FROM t1 WHERE (a=a AND a=a) OR b > 2;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
+Warnings:
+Note 1003 select '1' AS `a`,'1' AS `b` from `test`.`t1` where 1
+SELECT * FROM t1 WHERE (a=a AND a=a) OR b > 2;
+a b
+1 1
+DROP TABLE t1;
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL, c INT NOT NULL);
+EXPLAIN EXTENDED SELECT * FROM t1 WHERE (a=a AND b=b AND c=c) OR b > 20;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 0 0.00 const row not found
+Warnings:
+Note 1003 select '0' AS `a`,'0' AS `b`,'0' AS `c` from `test`.`t1` where 1
+EXPLAIN EXTENDED SELECT * FROM t1 WHERE (a=a AND a=a AND b=b) OR b > 20;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 0 0.00 const row not found
+Warnings:
+Note 1003 select '0' AS `a`,'0' AS `b`,'0' AS `c` from `test`.`t1` where 1
+EXPLAIN EXTENDED SELECT * FROM t1 WHERE (a=a AND b=b AND a=a) OR b > 20;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 0 0.00 const row not found
+Warnings:
+Note 1003 select '0' AS `a`,'0' AS `b`,'0' AS `c` from `test`.`t1` where 1
+DROP TABLE t1;
+#
+# Bug#45266: Uninitialized variable lead to an empty result.
+#
+drop table if exists A,AA,B,BB;
+CREATE TABLE `A` (
+`pk` int(11) NOT NULL AUTO_INCREMENT,
+`date_key` date NOT NULL,
+`date_nokey` date NOT NULL,
+`datetime_key` datetime NOT NULL,
+`int_nokey` int(11) NOT NULL,
+`time_key` time NOT NULL,
+`time_nokey` time NOT NULL,
+PRIMARY KEY (`pk`),
+KEY `date_key` (`date_key`),
+KEY `time_key` (`time_key`),
+KEY `datetime_key` (`datetime_key`)
+);
+CREATE TABLE `AA` (
+`pk` int(11) NOT NULL AUTO_INCREMENT,
+`int_nokey` int(11) NOT NULL,
+`time_key` time NOT NULL,
+KEY `time_key` (`time_key`),
+PRIMARY KEY (`pk`)
+);
+CREATE TABLE `B` (
+`date_nokey` date NOT NULL,
+`date_key` date NOT NULL,
+`time_key` time NOT NULL,
+`datetime_nokey` datetime NOT NULL,
+`varchar_key` varchar(1) NOT NULL,
+KEY `date_key` (`date_key`),
+KEY `time_key` (`time_key`),
+KEY `varchar_key` (`varchar_key`)
+);
+INSERT INTO `B` VALUES ('2003-07-28','2003-07-28','15:13:38','0000-00-00 00:00:00','f'),('0000-00-00','0000-00-00','00:05:48','2004-07-02 14:34:13','x');
+CREATE TABLE `BB` (
+`pk` int(11) NOT NULL AUTO_INCREMENT,
+`int_nokey` int(11) NOT NULL,
+`date_key` date NOT NULL,
+`varchar_nokey` varchar(1) NOT NULL,
+`date_nokey` date NOT NULL,
+PRIMARY KEY (`pk`),
+KEY `date_key` (`date_key`)
+);
+INSERT INTO `BB` VALUES (10,8,'0000-00-00','i','0000-00-00'),(11,0,'2005-08-18','','2005-08-18');
+SELECT table1 . `pk` AS field1
+FROM
+(BB AS table1 INNER JOIN
+(AA AS table2 STRAIGHT_JOIN A AS table3
+ON ( table3 . `date_key` = table2 . `pk` ))
+ON ( table3 . `datetime_key` = table2 . `int_nokey` ))
+WHERE ( table3 . `date_key` <= 4 AND table2 . `pk` = table1 . `varchar_nokey`)
+GROUP BY field1 ;
+field1
+SELECT table3 .`date_key` field1
+FROM
+B table1 LEFT JOIN B table3 JOIN
+(BB table6 JOIN A table7 ON table6 .`varchar_nokey`)
+ON table6 .`int_nokey` ON table6 .`date_key`
+ WHERE NOT ( table1 .`varchar_key` AND table7 .`pk`) GROUP BY field1;
+field1
+NULL
+SELECT table4 . `time_nokey` AS field1 FROM
+(AA AS table1 CROSS JOIN
+(AA AS table2 STRAIGHT_JOIN
+(B AS table3 STRAIGHT_JOIN A AS table4
+ON ( table4 . `date_key` = table3 . `time_key` ))
+ON ( table4 . `pk` = table3 . `date_nokey` ))
+ON ( table4 . `time_key` = table3 . `datetime_nokey` ))
+WHERE ( table4 . `time_key` < table1 . `time_key` AND
+table1 . `int_nokey` != 'f')
+GROUP BY field1 ORDER BY field1 , field1;
+field1
+SELECT table1 .`time_key` field2 FROM B table1 LEFT JOIN BB JOIN A table5 ON table5 .`date_nokey` ON table5 .`int_nokey` GROUP BY field2;
+field2
+00:05:48
+15:13:38
+drop table A,AA,B,BB;
+#end of test for bug#45266
+End of 5.1 tests
diff --git a/mysql-test/r/select_found.result b/mysql-test/r/select_found.result
index 7abd65beb46..7896f8a9f4e 100644
--- a/mysql-test/r/select_found.result
+++ b/mysql-test/r/select_found.result
@@ -84,7 +84,7 @@ UNIQUE KEY e_n (email,name)
EXPLAIN SELECT SQL_CALC_FOUND_ROWS DISTINCT email FROM t2 LEFT JOIN t1 ON kid = t2.id WHERE t1.id IS NULL LIMIT 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 system PRIMARY,kid NULL NULL NULL 0 const row not found
-1 SIMPLE t2 index NULL e_n 104 NULL 200
+1 SIMPLE t2 index NULL e_n 104 NULL 10
SELECT SQL_CALC_FOUND_ROWS DISTINCT email FROM t2 LEFT JOIN t1 ON kid = t2.id WHERE t1.id IS NULL LIMIT 10;
email
email1
diff --git a/mysql-test/r/shm.result b/mysql-test/r/shm.result
index 9d555e9878c..c504fe222ef 100644
--- a/mysql-test/r/shm.result
+++ b/mysql-test/r/shm.result
@@ -142,9 +142,9 @@ explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
explain select fld3 from t2 use index (not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
@@ -605,11 +605,11 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index period period 4 NULL 41810
+1 SIMPLE t3 index period period 4 NULL 1
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index period period 4 NULL 41810
+1 SIMPLE t1 index period period 4 NULL 1
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
@@ -1429,7 +1429,7 @@ companynr companynr
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Using join buffer
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
@@ -1502,10 +1502,10 @@ select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1)
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 100.00 Using where
Warnings:
-Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
+Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> ''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
diff --git a/mysql-test/r/show_check.result b/mysql-test/r/show_check.result
index ad73fc650a5..e6550bee954 100644
--- a/mysql-test/r/show_check.result
+++ b/mysql-test/r/show_check.result
@@ -78,7 +78,7 @@ t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
t1 1 b 1 b A 1 NULL NULL BTREE
t1 1 b 2 c A 5 NULL NULL BTREE
insert into t1 values (5,5,5);
-ERROR 23000: Duplicate entry '5' for key 1
+ERROR 23000: Duplicate entry '5' for key 'PRIMARY'
-- Here we enable metadata just to check that the collation of the
-- resultset is non-binary for string type. This should be changed
-- after Bug#29394 is implemented.
@@ -99,39 +99,39 @@ drop table t1;
-- after Bug#29394 is implemented.
show variables like "wait_timeout%";
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def VARIABLES Variable_name Variable_name 253 80 12 N 1 0 8
-def VARIABLES Value Value 253 512 5 N 1 0 8
+def VARIABLES VARIABLE_NAME Variable_name 253 64 12 N 1 0 8
+def VARIABLES VARIABLE_VALUE Value 253 1024 5 Y 0 0 8
Variable_name Value
wait_timeout 28800
show variables like "WAIT_timeout%";
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def VARIABLES Variable_name Variable_name 253 80 12 N 1 0 8
-def VARIABLES Value Value 253 512 5 N 1 0 8
+def VARIABLES VARIABLE_NAME Variable_name 253 64 12 N 1 0 8
+def VARIABLES VARIABLE_VALUE Value 253 1024 5 Y 0 0 8
Variable_name Value
wait_timeout 28800
show variables like "this_doesn't_exists%";
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def VARIABLES Variable_name Variable_name 253 80 0 N 1 0 8
-def VARIABLES Value Value 253 512 0 N 1 0 8
+def VARIABLES VARIABLE_NAME Variable_name 253 64 0 N 1 0 8
+def VARIABLES VARIABLE_VALUE Value 253 1024 0 Y 0 0 8
Variable_name Value
show table status from test like "this_doesn't_exists%";
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def TABLES TABLE_NAME Name 253 64 0 N 1 0 8
def TABLES ENGINE Engine 253 64 0 Y 0 0 8
-def TABLES VERSION Version 8 21 0 Y 32768 0 63
+def TABLES VERSION Version 8 21 0 Y 32800 0 63
def TABLES ROW_FORMAT Row_format 253 10 0 Y 0 0 8
-def TABLES TABLE_ROWS Rows 8 21 0 Y 32768 0 63
-def TABLES AVG_ROW_LENGTH Avg_row_length 8 21 0 Y 32768 0 63
-def TABLES DATA_LENGTH Data_length 8 21 0 Y 32768 0 63
-def TABLES MAX_DATA_LENGTH Max_data_length 8 21 0 Y 32768 0 63
-def TABLES INDEX_LENGTH Index_length 8 21 0 Y 32768 0 63
-def TABLES DATA_FREE Data_free 8 21 0 Y 32768 0 63
-def TABLES AUTO_INCREMENT Auto_increment 8 21 0 Y 32768 0 63
+def TABLES TABLE_ROWS Rows 8 21 0 Y 32800 0 63
+def TABLES AVG_ROW_LENGTH Avg_row_length 8 21 0 Y 32800 0 63
+def TABLES DATA_LENGTH Data_length 8 21 0 Y 32800 0 63
+def TABLES MAX_DATA_LENGTH Max_data_length 8 21 0 Y 32800 0 63
+def TABLES INDEX_LENGTH Index_length 8 21 0 Y 32800 0 63
+def TABLES DATA_FREE Data_free 8 21 0 Y 32800 0 63
+def TABLES AUTO_INCREMENT Auto_increment 8 21 0 Y 32800 0 63
def TABLES CREATE_TIME Create_time 12 19 0 Y 128 0 63
def TABLES UPDATE_TIME Update_time 12 19 0 Y 128 0 63
def TABLES CHECK_TIME Check_time 12 19 0 Y 128 0 63
-def TABLES TABLE_COLLATION Collation 253 64 0 Y 0 0 8
-def TABLES CHECKSUM Checksum 8 21 0 Y 32768 0 63
+def TABLES TABLE_COLLATION Collation 253 32 0 Y 0 0 8
+def TABLES CHECKSUM Checksum 8 21 0 Y 32800 0 63
def TABLES CREATE_OPTIONS Create_options 253 255 0 Y 0 0 8
def TABLES TABLE_COMMENT Comment 253 80 0 N 1 0 8
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
@@ -140,6 +140,7 @@ Catalog Database Table Table_alias Column Column_alias Type Length Max length Is
def SCHEMATA SCHEMA_NAME Database 253 64 18 N 1 0 8
Database
information_schema
+mtr
mysql
test
show databases like "test%";
@@ -207,21 +208,21 @@ c int not null comment 'int column',
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `test_set` set('val1','val2','val3') NOT NULL default '',
- `name` char(20) default 'O''Brien' COMMENT 'O''Brien as default',
+ `test_set` set('val1','val2','val3') NOT NULL DEFAULT '',
+ `name` char(20) DEFAULT 'O''Brien' COMMENT 'O''Brien as default',
`c` int(11) NOT NULL COMMENT 'int column',
- `c-b` int(11) default NULL COMMENT 'name with a minus',
- `space 2` int(11) default NULL COMMENT 'name with a space'
+ `c-b` int(11) DEFAULT NULL COMMENT 'name with a minus',
+ `space 2` int(11) DEFAULT NULL COMMENT 'name with a space'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='it''s a table'
set sql_quote_show_create=0;
show create table t1;
Table Create Table
t1 CREATE TABLE t1 (
- test_set set('val1','val2','val3') NOT NULL default '',
- `name` char(20) default 'O''Brien' COMMENT 'O''Brien as default',
+ test_set set('val1','val2','val3') NOT NULL DEFAULT '',
+ `name` char(20) DEFAULT 'O''Brien' COMMENT 'O''Brien as default',
c int(11) NOT NULL COMMENT 'int column',
- `c-b` int(11) default NULL COMMENT 'name with a minus',
- `space 2` int(11) default NULL COMMENT 'name with a space'
+ `c-b` int(11) DEFAULT NULL COMMENT 'name with a minus',
+ `space 2` int(11) DEFAULT NULL COMMENT 'name with a space'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='it''s a table'
set sql_quote_show_create=1;
show full columns from t1;
@@ -245,24 +246,26 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
flush tables;
show open tables;
Database Table In_use Name_locked
+mysql general_log 0 0
create table t1(n int);
insert into t1 values (1);
show open tables;
Database Table In_use Name_locked
test t1 0 0
+mysql general_log 0 0
drop table t1;
create table t1 (a int not null, b VARCHAR(10), INDEX (b) ) AVG_ROW_LENGTH=10 CHECKSUM=1 COMMENT="test" ENGINE=MYISAM MIN_ROWS=10 MAX_ROWS=100 PACK_KEYS=1 DELAY_KEY_WRITE=1 ROW_FORMAT=fixed;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` varchar(10) default NULL,
+ `b` varchar(10) DEFAULT NULL,
KEY `b` (`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MIN_ROWS=10 MAX_ROWS=100 AVG_ROW_LENGTH=10 PACK_KEYS=1 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=FIXED COMMENT='test'
alter table t1 MAX_ROWS=200 ROW_FORMAT=dynamic PACK_KEYS=0;
@@ -270,7 +273,7 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` varchar(10) default NULL,
+ `b` varchar(10) DEFAULT NULL,
KEY `b` (`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MIN_ROWS=10 MAX_ROWS=200 AVG_ROW_LENGTH=10 PACK_KEYS=0 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC COMMENT='test'
ALTER TABLE t1 AVG_ROW_LENGTH=0 CHECKSUM=0 COMMENT="" MIN_ROWS=0 MAX_ROWS=0 PACK_KEYS=DEFAULT DELAY_KEY_WRITE=0 ROW_FORMAT=default;
@@ -278,7 +281,7 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` varchar(10) default NULL,
+ `b` varchar(10) DEFAULT NULL,
KEY `b` (`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
@@ -327,28 +330,28 @@ index(type_short)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `type_bool` tinyint(1) NOT NULL default '0',
- `type_tiny` tinyint(4) NOT NULL auto_increment,
- `type_short` smallint(3) default NULL,
- `type_mediumint` mediumint(9) default NULL,
- `type_bigint` bigint(20) default NULL,
- `type_decimal` decimal(5,2) default NULL,
- `type_numeric` decimal(5,2) default NULL,
- `empty_char` char(0) default NULL,
- `type_char` char(2) default NULL,
- `type_varchar` varchar(10) default NULL,
- `type_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `type_date` date NOT NULL default '0000-00-00',
- `type_time` time NOT NULL default '00:00:00',
- `type_datetime` datetime NOT NULL default '0000-00-00 00:00:00',
- `type_year` year(4) default NULL,
- `type_enum` enum('red','green','blue') default NULL,
- `type_set` enum('red','green','blue') default NULL,
+ `type_bool` tinyint(1) NOT NULL DEFAULT '0',
+ `type_tiny` tinyint(4) NOT NULL AUTO_INCREMENT,
+ `type_short` smallint(3) DEFAULT NULL,
+ `type_mediumint` mediumint(9) DEFAULT NULL,
+ `type_bigint` bigint(20) DEFAULT NULL,
+ `type_decimal` decimal(5,2) DEFAULT NULL,
+ `type_numeric` decimal(5,2) DEFAULT NULL,
+ `empty_char` char(0) DEFAULT NULL,
+ `type_char` char(2) DEFAULT NULL,
+ `type_varchar` varchar(10) DEFAULT NULL,
+ `type_timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `type_date` date NOT NULL DEFAULT '0000-00-00',
+ `type_time` time NOT NULL DEFAULT '00:00:00',
+ `type_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `type_year` year(4) DEFAULT NULL,
+ `type_enum` enum('red','green','blue') DEFAULT NULL,
+ `type_set` enum('red','green','blue') DEFAULT NULL,
`type_tinyblob` tinyblob,
`type_blob` blob,
`type_medium_blob` mediumblob,
`type_long_blob` longblob,
- PRIMARY KEY (`type_tiny`),
+ PRIMARY KEY (`type_tiny`),
KEY `type_short` (`type_short`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MIN_ROWS=10 MAX_ROWS=100 AVG_ROW_LENGTH=10 PACK_KEYS=1 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=FIXED COMMENT='test'
insert into t1 (type_timestamp) values ("2003-02-07 10:00:01");
@@ -379,22 +382,56 @@ f float(3,3) YES NULL
drop table t1;
SET @old_sql_mode= @@sql_mode, sql_mode= '';
SET @old_sql_quote_show_create= @@sql_quote_show_create, sql_quote_show_create= OFF;
-CREATE TABLE `a/b` (i INT);
-ERROR 42000: Incorrect table name 'a/b'
+CREATE TABLE ```ab``cd``` (i INT);
+SHOW CREATE TABLE ```ab``cd```;
+Table Create Table
+`ab`cd` CREATE TABLE ```ab``cd``` (
+ i int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE ```ab``cd```;
+CREATE TABLE ```ab````cd``` (i INT);
+SHOW CREATE TABLE ```ab````cd```;
+Table Create Table
+`ab``cd` CREATE TABLE ```ab````cd``` (
+ i int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE ```ab````cd```;
+CREATE TABLE ```a` (i INT);
+SHOW CREATE TABLE ```a`;
+Table Create Table
+`a CREATE TABLE ```a` (
+ i int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE ```a`;
+CREATE TABLE `a.1` (i INT);
+SHOW CREATE TABLE `a.1`;
+Table Create Table
+a.1 CREATE TABLE `a.1` (
+ i int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE `a.1`;
+SET sql_mode= 'ANSI_QUOTES';
+CREATE TABLE """a" (i INT);
+SHOW CREATE TABLE """a";
+Table Create Table
+"a CREATE TABLE """a" (
+ i int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE """a";
SET sql_mode= '';
SET sql_quote_show_create= OFF;
CREATE TABLE t1 (i INT);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE t1 (
- i int(11) default NULL
+ i int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE `table` (i INT);
SHOW CREATE TABLE `table`;
Table Create Table
table CREATE TABLE `table` (
- i int(11) default NULL
+ i int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE `table`;
SET sql_quote_show_create= @old_sql_quote_show_create;
@@ -448,9 +485,9 @@ Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length I
t1 MEMORY 10 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
t2 MEMORY 10 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
t3 MEMORY 10 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
-delete from t1;
-delete from t2;
-delete from t3;
+truncate table t1;
+truncate table t2;
+truncate table t3;
show table status;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
t1 MEMORY 10 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
@@ -503,7 +540,8 @@ ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'mysql
select * from mysqltest.t1;
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 't1'
show create database mysqltest;
-ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysqltest'
+Database Create Database
+mysqltest CREATE DATABASE `mysqltest` /*!40100 DEFAULT CHARACTER SET latin1 */
drop table mysqltest.t1;
drop database mysqltest;
set names binary;
@@ -516,7 +554,7 @@ CREATE TABLE t1 (i int, KEY (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
+ `i` int(11) DEFAULT NULL,
KEY `i` (`i`)
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -524,23 +562,23 @@ CREATE TABLE t1 (i int, KEY USING HASH (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
- KEY `i` USING HASH (`i`)
+ `i` int(11) DEFAULT NULL,
+ KEY `i` (`i`) USING HASH
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
- KEY `i` USING BTREE (`i`)
+ `i` int(11) DEFAULT NULL,
+ KEY `i` (`i`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
+ `i` int(11) DEFAULT NULL,
KEY `i` (`i`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -548,22 +586,22 @@ CREATE TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
- KEY `i` USING BTREE (`i`)
+ `i` int(11) DEFAULT NULL,
+ KEY `i` (`i`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
+ `i` int(11) DEFAULT NULL,
KEY `i` (`i`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
+ `i` int(11) DEFAULT NULL,
KEY `i` (`i`)
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -571,15 +609,15 @@ CREATE TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
- KEY `i` USING BTREE (`i`)
+ `i` int(11) DEFAULT NULL,
+ KEY `i` (`i`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL,
- KEY `i` USING BTREE (`i`)
+ `i` int(11) DEFAULT NULL,
+ KEY `i` (`i`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1(
@@ -614,8 +652,8 @@ Table Create Table
t1 CREATE TABLE `t1` (
`c1` int(11) NOT NULL,
`c2` int(11) NOT NULL,
- PRIMARY KEY USING HASH (`c1`),
- KEY `c2` USING BTREE (`c2`)
+ PRIMARY KEY (`c1`) USING HASH,
+ KEY `c2` (`c2`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
flush tables;
@@ -624,99 +662,94 @@ Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length I
t1 NULL NULL NULL NULL # # # # NULL NULL NULL NULL NULL NULL NULL NULL Incorrect information in file: './test/t1.frm'
show create table t1;
ERROR HY000: Incorrect information in file: './test/t1.frm'
-drop table t1;
-End of 4.1 tests
-CREATE TABLE txt1(a int);
-CREATE TABLE tyt2(a int);
-CREATE TABLE urkunde(a int);
+drop table if exists t1;
+
+# Bug#12183 SHOW OPEN TABLES behavior doesn't match grammar.
+
+DROP DATABASE IF EXISTS mysqltest1;
+CREATE DATABASE mysqltest1;
+use mysqltest1;
+
+CREATE TABLE t1(a INT);
+CREATE TABLE t2(a INT);
+
FLUSH TABLES;
-SELECT 1 FROM mysql.db, mysql.proc, mysql.user, mysql.time_zone, mysql.time_zone_name, txt1, tyt2, urkunde LIMIT 0;
+
+SELECT 1 FROM t1;
1
-SHOW OPEN TABLES;
-Database Table In_use Name_locked
-mysql db 0 0
-test urkunde 0 0
-mysql time_zone 0 0
-mysql user 0 0
-test txt1 0 0
-mysql proc 0 0
-test tyt2 0 0
-mysql time_zone_name 0 0
-SHOW OPEN TABLES FROM mysql;
+SELECT 1 FROM t2;
+1
+
+SHOW OPEN TABLES FROM mysqltest1;
Database Table In_use Name_locked
-mysql db 0 0
-mysql time_zone 0 0
-mysql user 0 0
-mysql proc 0 0
-mysql time_zone_name 0 0
-SHOW OPEN TABLES FROM mysql LIKE 'u%';
+mysqltest1 t1 0 0
+mysqltest1 t2 0 0
+
+SHOW OPEN TABLES FROM mysqltest1 LIKE 'z%';
Database Table In_use Name_locked
-mysql user 0 0
-SHOW OPEN TABLES LIKE 't%';
+
+SHOW OPEN TABLES FROM mysqltest1 LIKE 't1%';
Database Table In_use Name_locked
-mysql time_zone 0 0
-test txt1 0 0
-test tyt2 0 0
-mysql time_zone_name 0 0
-SHOW OPEN TABLES LIKE '%o%';
+mysqltest1 t1 0 0
+
+SHOW OPEN TABLES FROM mysqltest1 LIKE '%1%';
Database Table In_use Name_locked
-mysql time_zone 0 0
-mysql proc 0 0
-mysql time_zone_name 0 0
+mysqltest1 t1 0 0
+
FLUSH TABLES;
-SHOW OPEN TABLES;
-Database Table In_use Name_locked
-DROP TABLE txt1;
-DROP TABLE tyt2;
-DROP TABLE urkunde;
+
+DROP DATABASE mysqltest1;
+use test;
+
SHOW TABLES FROM non_existing_database;
ERROR 42000: Unknown database 'non_existing_database'
+End of 4.1 tests
DROP VIEW IF EXISTS v1;
DROP PROCEDURE IF EXISTS p1;
CREATE VIEW v1 AS SELECT 1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_CACHE 1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_cache 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_cache 1 AS `1` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_NO_CACHE 1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache 1 AS `1` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT NOW();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select now() AS `NOW()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select now() AS `NOW()` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_CACHE NOW();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_cache now() AS `NOW()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_cache now() AS `NOW()` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_NO_CACHE NOW();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_CACHE SQL_NO_CACHE NOW();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_NO_CACHE SQL_CACHE NOW();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()` binary binary
DROP VIEW v1;
CREATE VIEW v1 AS SELECT SQL_CACHE SQL_NO_CACHE SQL_CACHE NOW();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache now() AS `NOW()` binary binary
DROP VIEW v1;
CREATE PROCEDURE p1()
BEGIN
@@ -727,8 +760,8 @@ DROP PREPARE stmt;
END |
CALL p1();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_cache 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_cache 1 AS `1` binary binary
DROP PROCEDURE p1;
DROP VIEW v1;
SHOW TABLES FROM no_such_database;
@@ -750,6 +783,64 @@ select 1 from information_schema.tables limit 1;
show status like 'slow_queries';
Variable_name Value
Slow_queries 1
+create table t1 (a int);
+create trigger tr1 before insert on t1 for each row
+begin
+end;
+create view v1 as select a from t1;
+create procedure p1()
+begin
+end;
+create function f1()
+returns int
+return 0;
+create event e1 on schedule every 1 year starts now()
+ends date_add(now(), interval 5 hour) do
+begin
+end;
+flush status;
+show databases;
+show tables;
+show events;
+show table status;
+show open tables;
+show plugins;
+show columns in t1;
+show slave hosts;
+show keys in t1;
+show column types;
+show table types;
+show storage engines;
+show authors;
+show contributors;
+show privileges;
+show count(*) warnings;
+show count(*) errors;
+show warnings;
+show status;
+show processlist;
+show variables;
+show charset;
+show collation;
+show grants;
+show create database test;
+show create table t1;
+show create view v1;
+show master status;
+show slave status;
+show create procedure p1;
+show create function f1;
+show create trigger tr1;
+show procedure status;
+show create event e1;
+show status like 'slow_queries';
+Variable_name Value
+Slow_queries 0
+drop view v1;
+drop table t1;
+drop procedure p1;
+drop function f1;
+drop event e1;
DROP DATABASE IF EXISTS mysqltest1;
DROP TABLE IF EXISTS t1;
DROP VIEW IF EXISTS v1;
@@ -768,17 +859,17 @@ set names utf8;
----------------------------------------------------------------
SHOW CHARACTER SET LIKE 'utf8';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def CHARACTER_SETS CHARACTER_SET_NAME Charset 253 192 4 N 1 0 33
+def CHARACTER_SETS CHARACTER_SET_NAME Charset 253 96 4 N 1 0 33
def CHARACTER_SETS DESCRIPTION Description 253 180 13 N 1 0 33
-def CHARACTER_SETS DEFAULT_COLLATE_NAME Default collation 253 192 15 N 1 0 33
+def CHARACTER_SETS DEFAULT_COLLATE_NAME Default collation 253 96 15 N 1 0 33
def CHARACTER_SETS MAXLEN Maxlen 8 3 1 N 32769 0 63
Charset Description Default collation Maxlen
utf8 UTF-8 Unicode utf8_general_ci 3
----------------------------------------------------------------
SHOW COLLATION LIKE 'latin1_bin';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def COLLATIONS COLLATION_NAME Collation 253 192 10 N 1 0 33
-def COLLATIONS CHARACTER_SET_NAME Charset 253 192 6 N 1 0 33
+def COLLATIONS COLLATION_NAME Collation 253 96 10 N 1 0 33
+def COLLATIONS CHARACTER_SET_NAME Charset 253 96 6 N 1 0 33
def COLLATIONS ID Id 8 11 2 N 32769 0 63
def COLLATIONS IS_DEFAULT Default 253 9 0 N 1 0 33
def COLLATIONS IS_COMPILED Compiled 253 9 3 N 1 0 33
@@ -802,11 +893,11 @@ mysqltest1
SHOW CREATE TABLE t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def Table 253 192 2 N 1 31 33
-def Create Table 253 3072 103 N 1 31 33
+def Create Table 253 3072 102 N 1 31 33
Table Create Table
t1 CREATE TABLE `t1` (
`c` int(11) NOT NULL,
- PRIMARY KEY (`c`)
+ PRIMARY KEY (`c`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
----------------------------------------------------------------
SHOW INDEX FROM t1;
@@ -845,7 +936,7 @@ def TABLES TABLE_NAME TABLE_NAME 253 192 2 N 1 0 33
def TABLES TABLE_TYPE TABLE_TYPE 253 192 10 N 1 0 33
def TABLES ENGINE ENGINE 253 192 6 Y 0 0 33
def TABLES ROW_FORMAT ROW_FORMAT 253 30 5 Y 0 0 33
-def TABLES TABLE_COLLATION TABLE_COLLATION 253 192 17 Y 0 0 33
+def TABLES TABLE_COLLATION TABLE_COLLATION 253 96 17 Y 0 0 33
def TABLES CREATE_OPTIONS CREATE_OPTIONS 253 765 0 Y 0 0 33
def TABLES TABLE_COMMENT TABLE_COMMENT 253 240 0 N 1 0 33
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE ROW_FORMAT TABLE_COLLATION CREATE_OPTIONS TABLE_COMMENT
@@ -876,11 +967,11 @@ def COLUMNS COLUMN_NAME COLUMN_NAME 253 192 1 N 1 0 33
def COLUMNS COLUMN_DEFAULT COLUMN_DEFAULT 252 589815 0 Y 16 0 33
def COLUMNS IS_NULLABLE IS_NULLABLE 253 9 2 N 1 0 33
def COLUMNS DATA_TYPE DATA_TYPE 253 192 3 N 1 0 33
-def COLUMNS CHARACTER_SET_NAME CHARACTER_SET_NAME 253 192 0 Y 0 0 33
-def COLUMNS COLLATION_NAME COLLATION_NAME 253 192 0 Y 0 0 33
+def COLUMNS CHARACTER_SET_NAME CHARACTER_SET_NAME 253 96 0 Y 0 0 33
+def COLUMNS COLLATION_NAME COLLATION_NAME 253 96 0 Y 0 0 33
def COLUMNS COLUMN_TYPE COLUMN_TYPE 252 589815 7 N 17 0 33
def COLUMNS COLUMN_KEY COLUMN_KEY 253 9 3 N 1 0 33
-def COLUMNS EXTRA EXTRA 253 60 0 N 1 0 33
+def COLUMNS EXTRA EXTRA 253 81 0 N 1 0 33
def COLUMNS PRIVILEGES PRIVILEGES 253 240 31 N 1 0 33
def COLUMNS COLUMN_COMMENT COLUMN_COMMENT 253 765 0 N 1 0 33
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT
@@ -899,7 +990,7 @@ def COLUMNS COLUMN_TYPE Type 252 589815 7 N 17 0 33
def COLUMNS IS_NULLABLE Null 253 9 2 N 1 0 33
def COLUMNS COLUMN_KEY Key 253 9 3 N 1 0 33
def COLUMNS COLUMN_DEFAULT Default 252 589815 0 Y 16 0 33
-def COLUMNS EXTRA Extra 253 60 0 N 1 0 33
+def COLUMNS EXTRA Extra 253 81 0 N 1 0 33
Field Type Null Key Default Extra
c int(11) NO PRI NULL
----------------------------------------------------------------
@@ -911,10 +1002,13 @@ def TRIGGERS EVENT_OBJECT_TABLE Table 253 192 2 N 1 0 33
def TRIGGERS ACTION_STATEMENT Statement 252 589815 10 N 17 0 33
def TRIGGERS ACTION_TIMING Timing 253 18 6 N 1 0 33
def TRIGGERS CREATED Created 12 19 0 Y 128 0 63
-def TRIGGERS SQL_MODE sql_mode 252 589815 0 N 17 0 33
-def TRIGGERS DEFINER Definer 252 589815 14 N 17 0 33
-Trigger Event Table Statement Timing Created sql_mode Definer
-t1_bi INSERT t1 SET @a = 1 BEFORE NULL root@localhost
+def TRIGGERS SQL_MODE sql_mode 253 24576 0 N 1 0 33
+def TRIGGERS DEFINER Definer 253 231 14 N 1 0 33
+def TRIGGERS CHARACTER_SET_CLIENT character_set_client 253 96 6 N 1 0 33
+def TRIGGERS COLLATION_CONNECTION collation_connection 253 96 6 N 1 0 33
+def TRIGGERS DATABASE_COLLATION Database Collation 253 96 17 N 1 0 33
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+t1_bi INSERT t1 SET @a = 1 BEFORE NULL root@localhost binary binary latin1_swedish_ci
----------------------------------------------------------------
SELECT
TRIGGER_CATALOG,
@@ -952,8 +1046,8 @@ def TRIGGERS ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_OLD_TABLE 253 192 0 Y
def TRIGGERS ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_NEW_TABLE 253 192 0 Y 0 0 33
def TRIGGERS ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_OLD_ROW 253 9 3 N 1 0 33
def TRIGGERS ACTION_REFERENCE_NEW_ROW ACTION_REFERENCE_NEW_ROW 253 9 3 N 1 0 33
-def TRIGGERS SQL_MODE SQL_MODE 252 589815 0 N 17 0 33
-def TRIGGERS DEFINER DEFINER 252 589815 14 N 17 0 33
+def TRIGGERS SQL_MODE SQL_MODE 253 24576 0 N 1 0 33
+def TRIGGERS DEFINER DEFINER 253 231 14 N 1 0 33
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW SQL_MODE DEFINER
NULL test t1_bi INSERT NULL test t1 NULL SET @a = 1 ROW BEFORE NULL NULL OLD NEW root@localhost
----------------------------------------------------------------
@@ -961,8 +1055,10 @@ SHOW CREATE VIEW v1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def View 253 192 2 N 1 31 33
def Create View 253 3072 103 N 1 31 33
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`
+def character_set_client 253 96 6 N 1 31 33
+def collation_connection 253 96 6 N 1 31 33
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` binary binary
----------------------------------------------------------------
SELECT *
FROM INFORMATION_SCHEMA.VIEWS
@@ -971,22 +1067,27 @@ Catalog Database Table Table_alias Column Column_alias Type Length Max length Is
def VIEWS TABLE_CATALOG TABLE_CATALOG 253 1536 0 Y 0 0 33
def VIEWS TABLE_SCHEMA TABLE_SCHEMA 253 192 4 N 1 0 33
def VIEWS TABLE_NAME TABLE_NAME 253 192 2 N 1 0 33
-def VIEWS VIEW_DEFINITION VIEW_DEFINITION 252 589815 41 N 17 0 33
+def VIEWS VIEW_DEFINITION VIEW_DEFINITION 252 589815 15 N 17 0 33
def VIEWS CHECK_OPTION CHECK_OPTION 253 24 4 N 1 0 33
def VIEWS IS_UPDATABLE IS_UPDATABLE 253 9 2 N 1 0 33
def VIEWS DEFINER DEFINER 253 231 14 N 1 0 33
def VIEWS SECURITY_TYPE SECURITY_TYPE 253 21 7 N 1 0 33
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE
-NULL test v1 /* ALGORITHM=UNDEFINED */ select 1 AS `1` NONE NO root@localhost DEFINER
+def VIEWS CHARACTER_SET_CLIENT CHARACTER_SET_CLIENT 253 96 6 N 1 0 33
+def VIEWS COLLATION_CONNECTION COLLATION_CONNECTION 253 96 6 N 1 0 33
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
+NULL test v1 select 1 AS `1` NONE NO root@localhost DEFINER binary binary
----------------------------------------------------------------
SHOW CREATE PROCEDURE p1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def Procedure 253 192 2 N 1 31 33
def sql_mode 253 0 0 N 1 31 33
-def Create Procedure 253 6144 59 Y 0 31 33
-Procedure sql_mode Create Procedure
+def Create Procedure 253 3072 59 Y 0 31 33
+def character_set_client 253 96 6 N 1 31 33
+def collation_connection 253 96 6 N 1 31 33
+def Database Collation 253 96 17 N 1 31 33
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
-SELECT 1
+SELECT 1 binary binary latin1_swedish_ci
----------------------------------------------------------------
SELECT
SPECIFIC_NAME,
@@ -1025,7 +1126,7 @@ def ROUTINES IS_DETERMINISTIC IS_DETERMINISTIC 253 9 2 N 1 0 33
def ROUTINES SQL_DATA_ACCESS SQL_DATA_ACCESS 253 192 12 N 1 0 33
def ROUTINES SQL_PATH SQL_PATH 253 192 0 Y 0 0 33
def ROUTINES SECURITY_TYPE SECURITY_TYPE 253 21 7 N 1 0 33
-def ROUTINES SQL_MODE SQL_MODE 252 589815 0 N 17 0 33
+def ROUTINES SQL_MODE SQL_MODE 253 24576 0 N 1 0 33
def ROUTINES ROUTINE_COMMENT ROUTINE_COMMENT 253 192 0 N 1 0 33
def ROUTINES DEFINER DEFINER 253 231 14 N 1 0 33
SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE SQL_MODE ROUTINE_COMMENT DEFINER
@@ -1035,10 +1136,13 @@ SHOW CREATE FUNCTION f1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def Function 253 192 2 N 1 31 33
def sql_mode 253 0 0 N 1 31 33
-def Create Function 253 6144 74 Y 0 31 33
-Function sql_mode Create Function
+def Create Function 253 3072 74 Y 0 31 33
+def character_set_client 253 96 6 N 1 31 33
+def collation_connection 253 96 6 N 1 31 33
+def Database Collation 253 96 17 N 1 31 33
+Function sql_mode Create Function character_set_client collation_connection Database Collation
f1 CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
-RETURN 1
+RETURN 1 binary binary latin1_swedish_ci
----------------------------------------------------------------
SELECT
SPECIFIC_NAME,
@@ -1077,7 +1181,7 @@ def ROUTINES IS_DETERMINISTIC IS_DETERMINISTIC 253 9 2 N 1 0 33
def ROUTINES SQL_DATA_ACCESS SQL_DATA_ACCESS 253 192 12 N 1 0 33
def ROUTINES SQL_PATH SQL_PATH 253 192 0 Y 0 0 33
def ROUTINES SECURITY_TYPE SECURITY_TYPE 253 21 7 N 1 0 33
-def ROUTINES SQL_MODE SQL_MODE 252 589815 0 N 17 0 33
+def ROUTINES SQL_MODE SQL_MODE 253 24576 0 N 1 0 33
def ROUTINES ROUTINE_COMMENT ROUTINE_COMMENT 253 192 0 N 1 0 33
def ROUTINES DEFINER DEFINER 253 231 14 N 1 0 33
SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE SQL_MODE ROUTINE_COMMENT DEFINER
@@ -1104,7 +1208,7 @@ DROP DATABASE mysqltest1;
SHOW CREATE TABLE mysqltest1.t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `1` int(11) default NULL
+ `1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP DATABASE mysqltest1;
use test;
@@ -1156,19 +1260,198 @@ PRIMARY KEY (Codigo)
show create table t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def Table 253 64 2 N 1 31 7
-def Create Table 253 1024 446 N 1 31 7
+def Create Table 253 1024 445 N 1 31 7
Table Create Table
t1 CREATE TABLE `t1` (
- `Codigo` int(10) unsigned NOT NULL auto_increment,
- `Nombre` varchar(255) default NULL,
- `Telefono` varchar(255) default NULL,
+ `Codigo` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `Nombre` varchar(255) DEFAULT NULL,
+ `Telefono` varchar(255) DEFAULT NULL,
`Observaciones` longtext,
- `Direccion` varchar(255) default NULL,
- `Dni` varchar(255) default NULL,
- `CP` int(11) default NULL,
- `Provincia` varchar(255) default NULL,
- `Poblacion` varchar(255) default NULL,
- PRIMARY KEY (`Codigo`)
+ `Direccion` varchar(255) DEFAULT NULL,
+ `Dni` varchar(255) DEFAULT NULL,
+ `CP` int(11) DEFAULT NULL,
+ `Provincia` varchar(255) DEFAULT NULL,
+ `Poblacion` varchar(255) DEFAULT NULL,
+ PRIMARY KEY (`Codigo`)
) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8
drop table t1;
End of 5.0 tests
+SHOW AUTHORS;
+create database mysqltest;
+show create database mysqltest;
+Database Create Database
+mysqltest CREATE DATABASE `mysqltest` /*!40100 DEFAULT CHARACTER SET latin1 */
+create table mysqltest.t1(a int);
+insert into mysqltest.t1 values(1);
+grant select on `mysqltest`.`t1` to mysqltest_4@localhost;
+show create database mysqltest;
+Database Create Database
+mysqltest CREATE DATABASE `mysqltest` /*!40100 DEFAULT CHARACTER SET latin1 */
+delete from mysql.user where user='mysqltest_4';
+delete from mysql.db where user='mysqltest_4';
+delete from mysql.tables_priv where user='mysqltest_4';
+flush privileges;
+drop database mysqltest;
+show full plugin;
+show warnings;
+Level Code Message
+Warning 1287 The syntax 'SHOW PLUGIN' is deprecated and will be removed in MySQL 6.0. Please use 'SHOW PLUGINS' instead
+show plugin;
+show plugins;
+create database `mysqlttest\1`;
+create table `mysqlttest\1`.`a\b` (a int);
+show tables from `mysqlttest\1`;
+Tables_in_mysqlttest\1
+a\b
+show fields from `mysqlttest\1`.`a\b`;
+Field Type Null Key Default Extra
+a int(11) YES NULL
+show columns from `a\b` from `mysqlttest\1`;
+Field Type Null Key Default Extra
+a int(11) YES NULL
+show keys from `mysqlttest\1`.`a\b`;
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+drop table `mysqlttest\1`.`a\b`;
+drop database `mysqlttest\1`;
+show engine foobar status;
+ERROR 42000: Unknown table engine 'foobar'
+show engine foobar logs;
+ERROR 42000: Unknown table engine 'foobar'
+show engine foobar mutex;
+ERROR 42000: Unknown table engine 'foobar'
+show engine mutex status;
+ERROR 42000: Unknown table engine 'mutex'
+show engine csv status;
+Type Name Status
+show engine csv logs;
+Type Name Status
+show engine csv mutex;
+Type Name Status
+set names utf8;
+drop table if exists `été`;
+create table `été` (field1 int);
+show full tables;
+Tables_in_test Table_type
+été BASE TABLE
+drop table `été`;
+set names latin1;
+show columns from `#mysql50#????????`;
+Got one of the listed errors
+DROP TABLE IF EXISTS t1;
+DROP PROCEDURE IF EXISTS p1;
+CREATE TABLE t1(c1 INT);
+CREATE TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1;
+SHOW CREATE TRIGGER t1_bi;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CREATE PROCEDURE p1() SHOW CREATE TRIGGER t1_bi;
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+CALL p1();
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+PREPARE stmt1 FROM 'SHOW CREATE TRIGGER t1_bi';
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+EXECUTE stmt1;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1 latin1 latin1_swedish_ci latin1_swedish_ci
+DROP TABLE t1;
+DROP PROCEDURE p1;
+DEALLOCATE PREPARE stmt1;
+set names koi8r;
+DROP VIEW IF EXISTS v1;
+DROP PROCEDURE IF EXISTS p1;
+DROP FUNCTION IF EXISTS f1;
+DROP TABLE IF EXISTS t1;
+DROP EVENT IF EXISTS ev1;
+CREATE VIEW v1 AS SELECT '' AS test;
+CREATE PROCEDURE p1() SELECT '' AS test;
+CREATE FUNCTION f1() RETURNS CHAR(10) RETURN '';
+CREATE TABLE t1(c1 CHAR(10));
+CREATE TRIGGER t1_bi BEFORE INSERT ON t1
+FOR EACH ROW
+SET NEW.c1 = '';
+CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO SELECT '' AS test;
+set names utf8;
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 'тест' AS `test` koi8r koi8r_general_ci
+SHOW CREATE PROCEDURE p1;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
+SELECT 'тест' AS test koi8r koi8r_general_ci latin1_swedish_ci
+SHOW CREATE FUNCTION f1;
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+f1 CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS char(10) CHARSET latin1
+RETURN 'тест' koi8r koi8r_general_ci latin1_swedish_ci
+SHOW CREATE TRIGGER t1_bi;
+Trigger sql_mode SQL Original Statement character_set_client collation_connection Database Collation
+t1_bi CREATE DEFINER=`root`@`localhost` TRIGGER t1_bi BEFORE INSERT ON t1
+FOR EACH ROW
+SET NEW.c1 = 'тест' koi8r koi8r_general_ci latin1_swedish_ci
+SHOW CREATE EVENT ev1;
+Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
+ev1 SYSTEM CREATE EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO SELECT 'тест' AS test koi8r koi8r_general_ci latin1_swedish_ci
+DROP VIEW v1;
+DROP PROCEDURE p1;
+DROP FUNCTION f1;
+DROP TABLE t1;
+DROP EVENT ev1;
+SHOW TABLE TYPES;
+CREATE USER test_u@localhost;
+GRANT PROCESS ON *.* TO test_u@localhost;
+SHOW ENGINE MYISAM MUTEX;
+SHOW ENGINE MYISAM STATUS;
+DROP USER test_u@localhost;
+End of 5.1 tests
diff --git a/mysql-test/r/skip_grants.result b/mysql-test/r/skip_grants.result
index cba46b13f19..b523f2edc9f 100644
--- a/mysql-test/r/skip_grants.result
+++ b/mysql-test/r/skip_grants.result
@@ -35,16 +35,16 @@ SELECT 3;
CREATE DEFINER=a@'' FUNCTION f3() RETURNS INT
RETURN 3;
SHOW CREATE VIEW v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`a`@`` SQL SECURITY DEFINER VIEW `v3` AS select `t1`.`c` AS `c` from `t1`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`a`@`` SQL SECURITY DEFINER VIEW `v3` AS select `t1`.`c` AS `c` from `t1` latin1 latin1_swedish_ci
SHOW CREATE PROCEDURE p3;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
p3 CREATE DEFINER=`a`@`` PROCEDURE `p3`()
-SELECT 3
+SELECT 3 latin1 latin1_swedish_ci latin1_swedish_ci
SHOW CREATE FUNCTION f3;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
f3 CREATE DEFINER=`a`@`` FUNCTION `f3`() RETURNS int(11)
-RETURN 3
+RETURN 3 latin1 latin1_swedish_ci latin1_swedish_ci
DROP TRIGGER t1_bi;
DROP TRIGGER ti_ai;
DROP TRIGGER ti_bu;
@@ -58,6 +58,8 @@ DROP PROCEDURE p3;
DROP FUNCTION f1;
DROP FUNCTION f2;
DROP FUNCTION f3;
+set global event_scheduler=1;
+ERROR HY000: The MySQL server is running with the --event-scheduler=DISABLED or --skip-grant-tables option so it cannot execute this statement
select count(*) from information_schema.COLUMN_PRIVILEGES;
count(*)
0
@@ -71,3 +73,10 @@ select count(*) from information_schema.USER_PRIVILEGES;
count(*)
0
End of 5.0 tests
+#
+# Bug#29817 Queries with UDF fail with non-descriptive error
+# if mysql.proc is missing
+#
+select no_such_function(1);
+ERROR 42000: FUNCTION test.no_such_function does not exist
+End of 5.1 tests
diff --git a/mysql-test/r/skip_log_bin.result b/mysql-test/r/skip_log_bin.result
new file mode 100644
index 00000000000..2fdd88ff526
--- /dev/null
+++ b/mysql-test/r/skip_log_bin.result
@@ -0,0 +1,6 @@
+DROP TABLE IF EXISTS t1, t2;
+set @@session.binlog_format=row;
+create table t1 (a int);
+insert into t1 values (1);
+create table t2 select * from t1;
+drop table t1, t2;
diff --git a/mysql-test/r/skip_name_resolve.result b/mysql-test/r/skip_name_resolve.result
index 47741fed250..8aa9877a8e9 100644
--- a/mysql-test/r/skip_name_resolve.result
+++ b/mysql-test/r/skip_name_resolve.result
@@ -9,6 +9,3 @@ SELECT USER();
USER()
#
SHOW PROCESSLIST;
-Id User Host db Command Time State Info
-<id> root <host> test <command> <time> <state> <info>
-<id> root <host> test <command> <time> <state> <info>
diff --git a/mysql-test/r/sp-code.result b/mysql-test/r/sp-code.result
index 2848306b442..39770dc4f2a 100644
--- a/mysql-test/r/sp-code.result
+++ b/mysql-test/r/sp-code.result
@@ -155,11 +155,11 @@ Pos Instruction
0 stmt 9 "drop temporary table if exists sudoku..."
1 stmt 1 "create temporary table sudoku_work ( ..."
2 stmt 1 "create temporary table sudoku_schedul..."
-3 stmt 95 "call sudoku_init()"
+3 stmt 94 "call sudoku_init()"
4 jump_if_not 7(8) p_naive@0
5 stmt 4 "update sudoku_work set cnt = 0 where ..."
6 jump 8
-7 stmt 95 "call sudoku_count()"
+7 stmt 94 "call sudoku_count()"
8 stmt 6 "insert into sudoku_schedule (row,col)..."
9 set v_scounter@2 0
10 set v_i@3 1
@@ -324,29 +324,29 @@ Pos Instruction
0 set str@1 NULL
1 set_case_expr (12) 0 i@0
2 jump_if_not 5(12) (case_expr@0 = 1)
-3 set str@1 _latin1'1'
+3 set str@1 '1'
4 jump 12
5 jump_if_not 8(12) (case_expr@0 = 2)
-6 set str@1 _latin1'2'
+6 set str@1 '2'
7 jump 12
8 jump_if_not 11(12) (case_expr@0 = 3)
-9 set str@1 _latin1'3'
+9 set str@1 '3'
10 jump 12
-11 set str@1 _latin1'unknown'
+11 set str@1 'unknown'
12 stmt 0 "SELECT str"
SHOW PROCEDURE CODE proc_19194_searched;
Pos Instruction
0 set str@1 NULL
1 jump_if_not 4(11) (i@0 = 1)
-2 set str@1 _latin1'1'
+2 set str@1 '1'
3 jump 11
4 jump_if_not 7(11) (i@0 = 2)
-5 set str@1 _latin1'2'
+5 set str@1 '2'
6 jump 11
7 jump_if_not 10(11) (i@0 = 3)
-8 set str@1 _latin1'3'
+8 set str@1 '3'
9 jump 11
-10 set str@1 _latin1'unknown'
+10 set str@1 'unknown'
11 stmt 0 "SELECT str"
SHOW PROCEDURE CODE proc_19194_nested_1;
Pos Instruction
@@ -354,59 +354,59 @@ Pos Instruction
1 set str_j@3 NULL
2 set_case_expr (27) 0 i@0
3 jump_if_not 6(27) (case_expr@0 = 10)
-4 set str_i@2 _latin1'10'
+4 set str_i@2 '10'
5 jump 27
6 jump_if_not 20(27) (case_expr@0 = 20)
-7 set str_i@2 _latin1'20'
+7 set str_i@2 '20'
8 jump_if_not 11(18) (j@1 = 1)
-9 set str_j@3 _latin1'1'
+9 set str_j@3 '1'
10 jump 18
11 jump_if_not 14(18) (j@1 = 2)
-12 set str_j@3 _latin1'2'
+12 set str_j@3 '2'
13 jump 18
14 jump_if_not 17(18) (j@1 = 3)
-15 set str_j@3 _latin1'3'
+15 set str_j@3 '3'
16 jump 18
-17 set str_j@3 _latin1'unknown'
+17 set str_j@3 'unknown'
18 stmt 0 "select "i was 20""
19 jump 27
20 jump_if_not 23(27) (case_expr@0 = 30)
-21 set str_i@2 _latin1'30'
+21 set str_i@2 '30'
22 jump 27
23 jump_if_not 26(27) (case_expr@0 = 40)
-24 set str_i@2 _latin1'40'
+24 set str_i@2 '40'
25 jump 27
-26 set str_i@2 _latin1'unknown'
+26 set str_i@2 'unknown'
27 stmt 0 "SELECT str_i, str_j"
SHOW PROCEDURE CODE proc_19194_nested_2;
Pos Instruction
0 set str_i@2 NULL
1 set str_j@3 NULL
2 jump_if_not 5(27) (i@0 = 10)
-3 set str_i@2 _latin1'10'
+3 set str_i@2 '10'
4 jump 27
5 jump_if_not 20(27) (i@0 = 20)
-6 set str_i@2 _latin1'20'
+6 set str_i@2 '20'
7 set_case_expr (18) 0 j@1
8 jump_if_not 11(18) (case_expr@0 = 1)
-9 set str_j@3 _latin1'1'
+9 set str_j@3 '1'
10 jump 18
11 jump_if_not 14(18) (case_expr@0 = 2)
-12 set str_j@3 _latin1'2'
+12 set str_j@3 '2'
13 jump 18
14 jump_if_not 17(18) (case_expr@0 = 3)
-15 set str_j@3 _latin1'3'
+15 set str_j@3 '3'
16 jump 18
-17 set str_j@3 _latin1'unknown'
+17 set str_j@3 'unknown'
18 stmt 0 "select "i was 20""
19 jump 27
20 jump_if_not 23(27) (i@0 = 30)
-21 set str_i@2 _latin1'30'
+21 set str_i@2 '30'
22 jump 27
23 jump_if_not 26(27) (i@0 = 40)
-24 set str_i@2 _latin1'40'
+24 set str_i@2 '40'
25 jump 27
-26 set str_i@2 _latin1'unknown'
+26 set str_i@2 'unknown'
27 stmt 0 "SELECT str_i, str_j"
SHOW PROCEDURE CODE proc_19194_nested_3;
Pos Instruction
@@ -414,59 +414,59 @@ Pos Instruction
1 set str_j@3 NULL
2 set_case_expr (28) 0 i@0
3 jump_if_not 6(28) (case_expr@0 = 10)
-4 set str_i@2 _latin1'10'
+4 set str_i@2 '10'
5 jump 28
6 jump_if_not 21(28) (case_expr@0 = 20)
-7 set str_i@2 _latin1'20'
+7 set str_i@2 '20'
8 set_case_expr (19) 1 j@1
9 jump_if_not 12(19) (case_expr@1 = 1)
-10 set str_j@3 _latin1'1'
+10 set str_j@3 '1'
11 jump 19
12 jump_if_not 15(19) (case_expr@1 = 2)
-13 set str_j@3 _latin1'2'
+13 set str_j@3 '2'
14 jump 19
15 jump_if_not 18(19) (case_expr@1 = 3)
-16 set str_j@3 _latin1'3'
+16 set str_j@3 '3'
17 jump 19
-18 set str_j@3 _latin1'unknown'
+18 set str_j@3 'unknown'
19 stmt 0 "select "i was 20""
20 jump 28
21 jump_if_not 24(28) (case_expr@0 = 30)
-22 set str_i@2 _latin1'30'
+22 set str_i@2 '30'
23 jump 28
24 jump_if_not 27(28) (case_expr@0 = 40)
-25 set str_i@2 _latin1'40'
+25 set str_i@2 '40'
26 jump 28
-27 set str_i@2 _latin1'unknown'
+27 set str_i@2 'unknown'
28 stmt 0 "SELECT str_i, str_j"
SHOW PROCEDURE CODE proc_19194_nested_4;
Pos Instruction
0 set str_i@2 NULL
1 set str_j@3 NULL
2 jump_if_not 5(26) (i@0 = 10)
-3 set str_i@2 _latin1'10'
+3 set str_i@2 '10'
4 jump 26
5 jump_if_not 19(26) (i@0 = 20)
-6 set str_i@2 _latin1'20'
+6 set str_i@2 '20'
7 jump_if_not 10(17) (j@1 = 1)
-8 set str_j@3 _latin1'1'
+8 set str_j@3 '1'
9 jump 17
10 jump_if_not 13(17) (j@1 = 2)
-11 set str_j@3 _latin1'2'
+11 set str_j@3 '2'
12 jump 17
13 jump_if_not 16(17) (j@1 = 3)
-14 set str_j@3 _latin1'3'
+14 set str_j@3 '3'
15 jump 17
-16 set str_j@3 _latin1'unknown'
+16 set str_j@3 'unknown'
17 stmt 0 "select "i was 20""
18 jump 26
19 jump_if_not 22(26) (i@0 = 30)
-20 set str_i@2 _latin1'30'
+20 set str_i@2 '30'
21 jump 26
22 jump_if_not 25(26) (i@0 = 40)
-23 set str_i@2 _latin1'40'
+23 set str_i@2 '40'
24 jump 26
-25 set str_i@2 _latin1'unknown'
+25 set str_i@2 'unknown'
26 stmt 0 "SELECT str_i, str_j"
CALL proc_19194_nested_1(10, 1);
str_i str_j
@@ -793,7 +793,7 @@ end while;
end//
show procedure code proc_33618_h;
Pos Instruction
-0 set count1@1 _latin1'0'
+0 set count1@1 '0'
1 set vb@2 NULL
2 set last_row@3 NULL
3 jump_if_not 24(24) (num@0 >= 1)
@@ -818,7 +818,7 @@ Pos Instruction
22 jump 3
show procedure code proc_33618_c;
Pos Instruction
-0 set count1@1 _latin1'0'
+0 set count1@1 '0'
1 set vb@2 NULL
2 set last_row@3 NULL
3 jump_if_not 23(23) (num@0 >= 1)
@@ -847,8 +847,8 @@ drop procedure if exists p_20906_b;
create procedure p_20906_a() SET @a=@a+1, @b=@b+1;
show procedure code p_20906_a;
Pos Instruction
-0 stmt 32 "SET @a=@a+1"
-1 stmt 32 "SET @b=@b+1"
+0 stmt 31 "SET @a=@a+1"
+1 stmt 31 "SET @b=@b+1"
set @a=1;
set @b=1;
call p_20906_a();
@@ -858,9 +858,9 @@ select @a, @b;
create procedure p_20906_b() SET @a=@a+1, @b=@b+1, @c=@c+1;
show procedure code p_20906_b;
Pos Instruction
-0 stmt 32 "SET @a=@a+1"
-1 stmt 32 "SET @b=@b+1"
-2 stmt 32 "SET @c=@c+1"
+0 stmt 31 "SET @a=@a+1"
+1 stmt 31 "SET @b=@b+1"
+2 stmt 31 "SET @c=@c+1"
set @a=1;
set @b=1;
set @c=1;
@@ -871,3 +871,20 @@ select @a, @b, @c;
drop procedure p_20906_a;
drop procedure p_20906_b;
End of 5.0 tests.
+CREATE PROCEDURE p1()
+BEGIN
+DECLARE dummy int default 0;
+CASE 12
+WHEN 12
+THEN SET dummy = 0;
+END CASE;
+END//
+SHOW PROCEDURE CODE p1;
+Pos Instruction
+0 set dummy@0 0
+1 set_case_expr (6) 0 12
+2 jump_if_not 5(6) (case_expr@0 = 12)
+3 set dummy@0 0
+4 jump 6
+5 error 1339
+DROP PROCEDURE p1;
diff --git a/mysql-test/r/sp-destruct.result b/mysql-test/r/sp-destruct.result
index 4df8086c84e..d7d44061b76 100644
--- a/mysql-test/r/sp-destruct.result
+++ b/mysql-test/r/sp-destruct.result
@@ -37,26 +37,33 @@ insert into mysql.proc
(
db, name, type, specific_name, language, sql_data_access, is_deterministic,
security_type, param_list, returns, body, definer, created, modified,
-sql_mode, comment
+sql_mode, comment, character_set_client, collation_connection, db_collation,
+body_utf8
)
values
(
'test', 'bug14233_1', 'FUNCTION', 'bug14233_1', 'SQL', 'READS_SQL_DATA', 'NO',
'DEFINER', '', 'int(10)',
'select count(*) from mysql.user',
-'root@localhost', NOW() , '0000-00-00 00:00:00', '', ''
+'root@localhost', NOW() , '0000-00-00 00:00:00', '', '',
+'', '', '',
+'select count(*) from mysql.user'
),
(
'test', 'bug14233_2', 'FUNCTION', 'bug14233_2', 'SQL', 'READS_SQL_DATA', 'NO',
'DEFINER', '', 'int(10)',
'begin declare x int; select count(*) into x from mysql.user; end',
-'root@localhost', NOW() , '0000-00-00 00:00:00', '', ''
+'root@localhost', NOW() , '0000-00-00 00:00:00', '', '',
+'', '', '',
+'begin declare x int; select count(*) into x from mysql.user; end'
),
(
'test', 'bug14233_3', 'PROCEDURE', 'bug14233_3', 'SQL', 'READS_SQL_DATA','NO',
'DEFINER', '', '',
'alksj wpsj sa ^#!@ ',
-'root@localhost', NOW() , '0000-00-00 00:00:00', '', ''
+'root@localhost', NOW() , '0000-00-00 00:00:00', '', '',
+'', '', '',
+'alksj wpsj sa ^#!@ '
);
select bug14233_1();
ERROR HY000: Failed to load routine test.bug14233_1. The table mysql.proc is missing, corrupt, or contains bad data (internal code -6)
@@ -77,7 +84,7 @@ drop table t1;
drop function bug14233_1;
drop function bug14233_2;
drop procedure bug14233_3;
-show procedure status;
-Db Name Type Definer Modified Created Security_type Comment
-show function status;
-Db Name Type Definer Modified Created Security_type Comment
+show procedure status where db=DATABASE();
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+show function status where db=DATABASE();
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
diff --git a/mysql-test/r/sp-dynamic.result b/mysql-test/r/sp-dynamic.result
index 0f50bcc97cd..34b76a9424f 100644
--- a/mysql-test/r/sp-dynamic.result
+++ b/mysql-test/r/sp-dynamic.result
@@ -294,11 +294,11 @@ call p1()|
select * from t1|
id stmt_text status
1 select 1 supported
-2 flush tables not supported
+2 flush tables supported
3 handler t1 open as ha not supported
4 analyze table t1 supported
5 check table t1 not supported
-6 checksum table t1 not supported
+6 checksum table t1 supported
7 check table t1 not supported
8 optimize table t1 supported
9 repair table t1 supported
diff --git a/mysql-test/r/sp-error.result b/mysql-test/r/sp-error.result
index e83e8c2c71d..17ab2b79043 100644
--- a/mysql-test/r/sp-error.result
+++ b/mysql-test/r/sp-error.result
@@ -1,4 +1,5 @@
drop table if exists t1, t2;
+SELECT * FROM mysql.proc INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/proc.txt';
delete from mysql.proc;
create procedure syntaxerror(t int)|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
@@ -142,7 +143,10 @@ declare c cursor for insert into test.t1 values ("foo", 42);
open c;
close c;
end|
-ERROR 42000: Cursor statement must be a SELECT
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'insert into test.t1 values ("foo", 42);
+open c;
+close c;
+end' at line 3
create procedure p()
begin
declare x int;
@@ -292,9 +296,9 @@ call p()|
unlock tables|
drop procedure p|
lock tables t1 read, mysql.proc write|
-ERROR HY000: You can't combine write-locking of system 'mysql.proc' table with other tables
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
lock tables mysql.proc write, mysql.user write|
-ERROR HY000: You can't combine write-locking of system 'mysql.proc' table with other tables
+ERROR HY000: You can't combine write-locking of system tables with other tables or lock types
lock tables t1 read, mysql.proc read|
unlock tables|
lock tables mysql.proc write|
@@ -368,7 +372,7 @@ end|
insert into t1 values (666, 51.3)|
call bug2272()|
ERROR 42S22: Unknown column 'v' in 'field list'
-delete from t1|
+truncate table t1|
drop procedure bug2272|
create procedure bug2329_1()
begin
@@ -425,7 +429,7 @@ set y = x;
end|
set @x = 0|
call bug3279(@x)|
-ERROR 23000: Duplicate entry '6' for key 1
+ERROR 23000: Duplicate entry '6' for key 'PRIMARY'
select @x|
@x
0
@@ -520,7 +524,7 @@ declare exit handler for sqlexception select 'Error!';
open c;
fetch c into v;
end|
-delete from t1|
+truncate table t1|
call bug7299()|
ERROR 02000: No data - zero rows fetched, selected, or processed
drop procedure bug7299|
@@ -621,7 +625,7 @@ val x bug8408()
3 3.14 3
7 7 3
drop function bug8408|
-delete from t1|
+truncate table t1|
drop procedure if exists bug10537|
create procedure bug10537()
load data local infile '/tmp/somefile' into table t1|
@@ -682,8 +686,8 @@ create procedure bug17015_012345678901234567890123456789012345678901234567890123
begin
end|
show procedure status like 'bug17015%'|
-Db Name Type Definer Modified Created Security_type Comment
-test bug17015_0123456789012345678901234567890123456789012345678901234 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test bug17015_0123456789012345678901234567890123456789012345678901234 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure bug17015_0123456789012345678901234567890123456789012345678901234|
drop procedure if exists bug10969|
create procedure bug10969()
@@ -969,6 +973,18 @@ CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW BEGIN create user 'mysqltest
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
CREATE FUNCTION bug_13627_f() returns int BEGIN create user 'mysqltest_1'; return 1; END |
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+CREATE TRIGGER bug21975 BEFORE INSERT ON t1 FOR EACH ROW BEGIN grant select on t1 to 'mysqltest_1'; END |
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+CREATE FUNCTION bug21975() returns int BEGIN grant select on t1 to 'mysqltest_1'; return 1; END |
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+CREATE TRIGGER bug21975 BEFORE INSERT ON t1 FOR EACH ROW BEGIN revoke select on t1 from 'mysqltest_1'; END |
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+CREATE FUNCTION bug21975() returns int BEGIN revoke select on t1 from 'mysqltest_1'; return 1; END |
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+CREATE TRIGGER bug21975 BEFORE INSERT ON t1 FOR EACH ROW BEGIN revoke all privileges on *.* from 'mysqltest_1'; END |
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+CREATE FUNCTION bug21975() returns int BEGIN revoke all privileges on *.* from 'mysqltest_1'; return 1; END |
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW BEGIN drop user 'mysqltest_1'; END |
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
CREATE FUNCTION bug_13627_f() returns int BEGIN drop user 'mysqltest_1'; return 1; END |
@@ -1030,7 +1046,8 @@ select bug12329();
bug12329()
101
execute stmt1;
-ERROR 42S02: Table 'test.t2' doesn't exist
+bug12329()
+101
deallocate prepare stmt1;
drop function bug12329;
drop table t1, t2;
@@ -1087,8 +1104,8 @@ create procedure p2() select version();
ERROR 3D000: No database selected
use mysqltest2;
show procedure status;
-Db Name Type Definer Modified Created Security_type Comment
-mysqltest2 p1 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+mysqltest2 p1 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
drop database mysqltest2;
use test;
DROP FUNCTION IF EXISTS bug13012|
@@ -1177,8 +1194,8 @@ call ` bug15658`();
1
1
show procedure status;
-Db Name Type Definer Modified Created Security_type Comment
-test bug15658 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test bug15658 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure ` bug15658`;
drop function if exists bug14270;
drop table if exists t1;
@@ -1400,6 +1417,19 @@ drop table table_25345_b;
drop procedure proc_25345;
drop function func_25345;
drop function func_25345_b;
+End of 5.0 tests
+drop function if exists bug16164;
+create function bug16164() returns int
+begin
+show authors;
+return 42;
+end|
+ERROR 0A000: Not allowed to return a result set from a function
+drop function if exists bug20701;
+create function bug20701() returns varchar(25) binary return "test";
+ERROR 42000: This version of MySQL doesn't yet support 'return value collation'
+create function bug20701() returns varchar(25) return "test";
+drop function bug20701;
create procedure proc_26503_error_1()
begin
retry:
@@ -1452,6 +1482,35 @@ end
until true end repeat retry;
end//
ERROR 42000: LEAVE with no matching label: retry
+drop procedure if exists proc_28360;
+drop function if exists func_28360;
+CREATE PROCEDURE proc_28360()
+BEGIN
+ALTER DATABASE `#mysql50#upgrade-me` UPGRADE DATA DIRECTORY NAME;
+END//
+ERROR HY000: Can't drop or alter a DATABASE from within another stored routine
+CREATE FUNCTION func_28360() RETURNS int
+BEGIN
+ALTER DATABASE `#mysql50#upgrade-me` UPGRADE DATA DIRECTORY NAME;
+RETURN 0;
+END//
+ERROR HY000: Can't drop or alter a DATABASE from within another stored routine
+DROP PROCEDURE IF EXISTS p1;
+CREATE PROCEDURE p1()
+BEGIN
+DECLARE c char(100);
+DECLARE cur1 CURSOR FOR SHOW TABLES;
+OPEN cur1;
+FETCH cur1 INTO c;
+select c;
+CLOSE cur1;
+END|
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SHOW TABLES;
+OPEN cur1;
+FETCH cur1 INTO c;
+select c;
+CLOSE cur1;
+END' at line 4
DROP DATABASE IF EXISTS mysqltest;
CREATE DATABASE mysqltest;
USE mysqltest;
@@ -1465,6 +1524,63 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
SELECT ..inexistent();
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.inexistent()' at line 1
USE test;
+create function f1() returns int
+begin
+set @test = 1, password = password('foo');
+return 1;
+end|
+ERROR HY000: Not allowed to set autocommit from a stored function or trigger
+create trigger t1
+before insert on t2 for each row set password = password('foo');|
+ERROR HY000: Not allowed to set autocommit from a stored function or trigger
+drop function if exists f1;
+drop function if exists f2;
+drop table if exists t1, t2;
+create function f1() returns int
+begin
+drop temporary table t1;
+return 1;
+end|
+create temporary table t1 as select f1();
+ERROR HY000: Can't reopen table: 't1'
+create function f2() returns int
+begin
+create temporary table t2 as select f1();
+return 1;
+end|
+create temporary table t1 as select f2();
+ERROR HY000: Can't reopen table: 't1'
+drop function f1;
+drop function f2;
+create function f1() returns int
+begin
+drop temporary table t2,t1;
+return 1;
+end|
+create function f2() returns int
+begin
+create temporary table t2 as select f1();
+return 1;
+end|
+create temporary table t1 as select f2();
+ERROR HY000: Can't reopen table: 't2'
+drop function f1;
+drop function f2;
+create temporary table t2(a int);
+select * from t2;
+a
+create function f2() returns int
+begin
+drop temporary table t2;
+return 1;
+end|
+select f2();
+f2()
+1
+drop function f2;
+drop table t2;
+ERROR 42S02: Unknown table 't2'
+End of 5.1 tests
drop procedure if exists proc_33983_a;
drop procedure if exists proc_33983_b;
drop procedure if exists proc_33983_c;
@@ -1520,3 +1636,37 @@ CALL p1((SELECT * FROM t1))|
ERROR 21000: Subquery returns more than 1 row
DROP PROCEDURE IF EXISTS p1|
DROP TABLE t1|
+drop procedure if exists p1;
+create procedure p1()
+begin
+create table t1 (a int) type=MyISAM;
+drop table t1;
+end|
+Warnings:
+Warning 1287 The syntax 'TYPE=storage_engine' is deprecated and will be removed in MySQL 6.0. Please use 'ENGINE=storage_engine' instead
+call p1();
+call p1();
+drop procedure p1;
+drop procedure if exists proc_8759;
+create procedure proc_8759()
+begin
+declare should_be_illegal condition for sqlstate '00000';
+declare continue handler for should_be_illegal set @x=0;
+end$$
+ERROR 42000: Bad SQLSTATE: '00000'
+create procedure proc_8759()
+begin
+declare continue handler for sqlstate '00000' set @x=0;
+end$$
+ERROR 42000: Bad SQLSTATE: '00000'
+LOAD DATA INFILE '../../tmp/proc.txt' INTO TABLE mysql.proc;
+CREATE TABLE t1 (a INT, b INT);
+INSERT INTO t1 VALUES (1,1), (2,2);
+SELECT MAX (a) FROM t1 WHERE b = 999999;
+ERROR 42000: FUNCTION test.MAX does not exist. Check the 'Function Name Parsing and Resolution' section in the Reference Manual
+SELECT AVG (a) FROM t1 WHERE b = 999999;
+AVG (a)
+NULL
+SELECT non_existent (a) FROM t1 WHERE b = 999999;
+ERROR 42000: FUNCTION test.non_existent does not exist
+DROP TABLE t1;
diff --git a/mysql-test/r/sp-security.result b/mysql-test/r/sp-security.result
index 106d08c8c12..65c94577a57 100644
--- a/mysql-test/r/sp-security.result
+++ b/mysql-test/r/sp-security.result
@@ -12,8 +12,8 @@ insert into t1 values('test', 0);
create procedure stamp(i int)
insert into db1_secret.t1 values (user(), i);
show procedure status like 'stamp';
-Db Name Type Definer Modified Created Security_type Comment
-db1_secret stamp PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+db1_secret stamp PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
create function db() returns varchar(64)
begin
declare v varchar(64);
@@ -21,8 +21,8 @@ select u into v from t1 limit 1;
return v;
end|
show function status like 'db';
-Db Name Type Definer Modified Created Security_type Comment
-db1_secret db FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+db1_secret db FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
call stamp(1);
select * from t1;
u i
@@ -71,12 +71,12 @@ user1@localhost 2
anon@localhost 3
alter procedure stamp sql security invoker;
show procedure status like 'stamp';
-Db Name Type Definer Modified Created Security_type Comment
-db1_secret stamp PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 INVOKER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+db1_secret stamp PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 INVOKER latin1 latin1_swedish_ci latin1_swedish_ci
alter function db sql security invoker;
show function status like 'db';
-Db Name Type Definer Modified Created Security_type Comment
-db1_secret db FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 INVOKER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+db1_secret db FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 INVOKER latin1 latin1_swedish_ci latin1_swedish_ci
call stamp(4);
select * from t1;
u i
@@ -142,13 +142,13 @@ use db2;
alter procedure q modifies sql data;
drop procedure q;
use test;
-select type,db,name from mysql.proc;
+select type,db,name from mysql.proc where db like 'db%';
type db name
FUNCTION db1_secret db
PROCEDURE db1_secret stamp
drop database db1_secret;
drop database db2;
-select type,db,name from mysql.proc;
+select type,db,name from mysql.proc where db like 'db%';
type db name
delete from mysql.user where user='user1' or user='user2';
delete from mysql.user where user='' and host='%';
@@ -331,16 +331,6 @@ select * from db_bug14533.t1;
ERROR 42000: SELECT command denied to user 'user_bug14533'@'localhost' for table 't1'
drop user user_bug14533@localhost;
drop database db_bug14533;
-CREATE DATABASE db_bug7787;
-USE db_bug7787;
-CREATE PROCEDURE p1()
-SHOW INNODB STATUS;
-Warnings:
-Warning 1287 'SHOW INNODB STATUS' is deprecated; use 'SHOW ENGINE INNODB STATUS' instead
-GRANT EXECUTE ON PROCEDURE p1 TO user_bug7787@localhost;
-DROP DATABASE db_bug7787;
-drop user user_bug7787@localhost;
-use test;
---> connection: root
DROP DATABASE IF EXISTS mysqltest;
@@ -367,29 +357,29 @@ ERROR 42000: Access denied; you need the SUPER privilege for this operation
use mysqltest;
CREATE DEFINER='a @ b @ c'@localhost PROCEDURE wl2897_p3() SELECT 3;
Warnings:
-Note 1449 There is no 'a @ b @ c'@'localhost' registered
+Note 1449 The user specified as a definer ('a @ b @ c'@'localhost') does not exist
CREATE DEFINER='a @ b @ c'@localhost FUNCTION wl2897_f3() RETURNS INT RETURN 3;
Warnings:
-Note 1449 There is no 'a @ b @ c'@'localhost' registered
+Note 1449 The user specified as a definer ('a @ b @ c'@'localhost') does not exist
---> connection: con1root
USE mysqltest;
SHOW CREATE PROCEDURE wl2897_p1;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
wl2897_p1 CREATE DEFINER=`mysqltest_2`@`localhost` PROCEDURE `wl2897_p1`()
-SELECT 1
+SELECT 1 latin1 latin1_swedish_ci latin1_swedish_ci
SHOW CREATE PROCEDURE wl2897_p3;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
wl2897_p3 CREATE DEFINER=`a @ b @ c`@`localhost` PROCEDURE `wl2897_p3`()
-SELECT 3
+SELECT 3 latin1 latin1_swedish_ci latin1_swedish_ci
SHOW CREATE FUNCTION wl2897_f1;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
wl2897_f1 CREATE DEFINER=`mysqltest_2`@`localhost` FUNCTION `wl2897_f1`() RETURNS int(11)
-RETURN 1
+RETURN 1 latin1 latin1_swedish_ci latin1_swedish_ci
SHOW CREATE FUNCTION wl2897_f3;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
wl2897_f3 CREATE DEFINER=`a @ b @ c`@`localhost` FUNCTION `wl2897_f3`() RETURNS int(11)
-RETURN 3
+RETURN 3 latin1 latin1_swedish_ci latin1_swedish_ci
DROP USER mysqltest_1@localhost;
DROP USER mysqltest_2@localhost;
DROP DATABASE mysqltest;
@@ -430,9 +420,9 @@ DROP USER mysqltest_1@localhost;
---> connection: mysqltest_2_con
USE mysqltest;
CALL bug13198_p1();
-ERROR HY000: There is no 'mysqltest_1'@'localhost' registered
+ERROR HY000: The user specified as a definer ('mysqltest_1'@'localhost') does not exist
SELECT bug13198_f1();
-ERROR HY000: There is no 'mysqltest_1'@'localhost' registered
+ERROR HY000: The user specified as a definer ('mysqltest_1'@'localhost') does not exist
---> connection: root
DROP USER mysqltest_2@localhost;
@@ -453,14 +443,14 @@ SET a=1;
SELECT a;
END //
SHOW CREATE PROCEDURE test.sp19857;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
sp19857 CREATE DEFINER=`user19857`@`localhost` PROCEDURE `sp19857`()
DETERMINISTIC
BEGIN
DECLARE a INT;
SET a=1;
SELECT a;
-END
+END latin1 latin1_swedish_ci latin1_swedish_ci
DROP PROCEDURE IF EXISTS test.sp19857;
---> connection: root
@@ -468,6 +458,7 @@ SELECT Host,User,Password FROM mysql.user WHERE User='user19857';
Host User Password
localhost user19857 *82DC221D557298F6CE9961037DB1C90604792F5C
DROP USER user19857@localhost;
+use test;
DROP TABLE IF EXISTS t1;
DROP VIEW IF EXISTS v1;
DROP FUNCTION IF EXISTS f_suid;
diff --git a/mysql-test/r/sp-vars.result b/mysql-test/r/sp-vars.result
index f3eb40b3d70..f5420a62f63 100644
--- a/mysql-test/r/sp-vars.result
+++ b/mysql-test/r/sp-vars.result
@@ -110,18 +110,18 @@ v7 v8 v9 v10 v11 v12 v13 v14 v15 v16
v17 v18 v19 v20
12.00 12.12 12.00 12.12
Warnings:
-Warning 1264 Out of range value adjusted for column 'v1' at row 1
-Warning 1264 Out of range value adjusted for column 'v1u' at row 1
-Warning 1264 Out of range value adjusted for column 'v2' at row 1
-Warning 1264 Out of range value adjusted for column 'v2u' at row 1
-Warning 1264 Out of range value adjusted for column 'v3' at row 1
-Warning 1264 Out of range value adjusted for column 'v3u' at row 1
-Warning 1264 Out of range value adjusted for column 'v4' at row 1
-Warning 1264 Out of range value adjusted for column 'v4u' at row 1
-Warning 1264 Out of range value adjusted for column 'v5' at row 1
-Warning 1264 Out of range value adjusted for column 'v5u' at row 1
-Warning 1264 Out of range value adjusted for column 'v6' at row 1
-Warning 1264 Out of range value adjusted for column 'v6u' at row 1
+Warning 1264 Out of range value for column 'v1' at row 1
+Warning 1264 Out of range value for column 'v1u' at row 1
+Warning 1264 Out of range value for column 'v2' at row 1
+Warning 1264 Out of range value for column 'v2u' at row 1
+Warning 1264 Out of range value for column 'v3' at row 1
+Warning 1264 Out of range value for column 'v3u' at row 1
+Warning 1264 Out of range value for column 'v4' at row 1
+Warning 1264 Out of range value for column 'v4u' at row 1
+Warning 1264 Out of range value for column 'v5' at row 1
+Warning 1264 Out of range value for column 'v5u' at row 1
+Warning 1264 Out of range value for column 'v6' at row 1
+Warning 1264 Out of range value for column 'v6u' at row 1
Warning 1366 Incorrect integer value: 'String 10 ' for column 'v10' at row 1
Warning 1366 Incorrect integer value: 'String10' for column 'v11' at row 1
Warning 1265 Data truncated for column 'v12' at row 1
@@ -143,32 +143,32 @@ d1 d2 d3
d1 d2 d3
1234.00 1234.12 1234.12
Warnings:
-Warning 1264 Out of range value adjusted for column 'i1' at row 1
-Warning 1264 Out of range value adjusted for column 'i2' at row 1
-Warning 1264 Out of range value adjusted for column 'i3' at row 1
-Warning 1264 Out of range value adjusted for column 'i4' at row 1
-Warning 1264 Out of range value adjusted for column 'i1' at row 1
-Warning 1264 Out of range value adjusted for column 'i2' at row 1
-Warning 1264 Out of range value adjusted for column 'i3' at row 1
-Warning 1264 Out of range value adjusted for column 'i4' at row 1
-Warning 1264 Out of range value adjusted for column 'u1' at row 1
-Warning 1264 Out of range value adjusted for column 'u2' at row 1
-Warning 1264 Out of range value adjusted for column 'u3' at row 1
-Warning 1264 Out of range value adjusted for column 'u4' at row 1
-Warning 1264 Out of range value adjusted for column 'u1' at row 1
-Warning 1264 Out of range value adjusted for column 'u2' at row 1
+Warning 1264 Out of range value for column 'i1' at row 1
+Warning 1264 Out of range value for column 'i2' at row 1
+Warning 1264 Out of range value for column 'i3' at row 1
+Warning 1264 Out of range value for column 'i4' at row 1
+Warning 1264 Out of range value for column 'i1' at row 1
+Warning 1264 Out of range value for column 'i2' at row 1
+Warning 1264 Out of range value for column 'i3' at row 1
+Warning 1264 Out of range value for column 'i4' at row 1
+Warning 1264 Out of range value for column 'u1' at row 1
+Warning 1264 Out of range value for column 'u2' at row 1
+Warning 1264 Out of range value for column 'u3' at row 1
+Warning 1264 Out of range value for column 'u4' at row 1
+Warning 1264 Out of range value for column 'u1' at row 1
+Warning 1264 Out of range value for column 'u2' at row 1
Note 1265 Data truncated for column 'd3' at row 1
Note 1265 Data truncated for column 'd3' at row 1
SELECT sp_vars_check_ret1();
sp_vars_check_ret1()
127
Warnings:
-Warning 1264 Out of range value adjusted for column 'sp_vars_check_ret1()' at row 1
+Warning 1264 Out of range value for column 'sp_vars_check_ret1()' at row 1
SELECT sp_vars_check_ret2();
sp_vars_check_ret2()
127
Warnings:
-Warning 1264 Out of range value adjusted for column 'sp_vars_check_ret2()' at row 1
+Warning 1264 Out of range value for column 'sp_vars_check_ret2()' at row 1
SELECT sp_vars_check_ret3();
sp_vars_check_ret3()
0
@@ -198,18 +198,18 @@ v7 v8 v9 v10 v11 v12 v13 v14 v15 v16
v17 v18 v19 v20
12.00 12.12 12.00 12.12
Warnings:
-Warning 1264 Out of range value adjusted for column 'v1' at row 1
-Warning 1264 Out of range value adjusted for column 'v1u' at row 1
-Warning 1264 Out of range value adjusted for column 'v2' at row 1
-Warning 1264 Out of range value adjusted for column 'v2u' at row 1
-Warning 1264 Out of range value adjusted for column 'v3' at row 1
-Warning 1264 Out of range value adjusted for column 'v3u' at row 1
-Warning 1264 Out of range value adjusted for column 'v4' at row 1
-Warning 1264 Out of range value adjusted for column 'v4u' at row 1
-Warning 1264 Out of range value adjusted for column 'v5' at row 1
-Warning 1264 Out of range value adjusted for column 'v5u' at row 1
-Warning 1264 Out of range value adjusted for column 'v6' at row 1
-Warning 1264 Out of range value adjusted for column 'v6u' at row 1
+Warning 1264 Out of range value for column 'v1' at row 1
+Warning 1264 Out of range value for column 'v1u' at row 1
+Warning 1264 Out of range value for column 'v2' at row 1
+Warning 1264 Out of range value for column 'v2u' at row 1
+Warning 1264 Out of range value for column 'v3' at row 1
+Warning 1264 Out of range value for column 'v3u' at row 1
+Warning 1264 Out of range value for column 'v4' at row 1
+Warning 1264 Out of range value for column 'v4u' at row 1
+Warning 1264 Out of range value for column 'v5' at row 1
+Warning 1264 Out of range value for column 'v5u' at row 1
+Warning 1264 Out of range value for column 'v6' at row 1
+Warning 1264 Out of range value for column 'v6u' at row 1
Warning 1366 Incorrect integer value: 'String 10 ' for column 'v10' at row 1
Warning 1366 Incorrect integer value: 'String10' for column 'v11' at row 1
Warning 1265 Data truncated for column 'v12' at row 1
@@ -231,32 +231,32 @@ d1 d2 d3
d1 d2 d3
1234.00 1234.12 1234.12
Warnings:
-Warning 1264 Out of range value adjusted for column 'i1' at row 1
-Warning 1264 Out of range value adjusted for column 'i2' at row 1
-Warning 1264 Out of range value adjusted for column 'i3' at row 1
-Warning 1264 Out of range value adjusted for column 'i4' at row 1
-Warning 1264 Out of range value adjusted for column 'i1' at row 1
-Warning 1264 Out of range value adjusted for column 'i2' at row 1
-Warning 1264 Out of range value adjusted for column 'i3' at row 1
-Warning 1264 Out of range value adjusted for column 'i4' at row 1
-Warning 1264 Out of range value adjusted for column 'u1' at row 1
-Warning 1264 Out of range value adjusted for column 'u2' at row 1
-Warning 1264 Out of range value adjusted for column 'u3' at row 1
-Warning 1264 Out of range value adjusted for column 'u4' at row 1
-Warning 1264 Out of range value adjusted for column 'u1' at row 1
-Warning 1264 Out of range value adjusted for column 'u2' at row 1
+Warning 1264 Out of range value for column 'i1' at row 1
+Warning 1264 Out of range value for column 'i2' at row 1
+Warning 1264 Out of range value for column 'i3' at row 1
+Warning 1264 Out of range value for column 'i4' at row 1
+Warning 1264 Out of range value for column 'i1' at row 1
+Warning 1264 Out of range value for column 'i2' at row 1
+Warning 1264 Out of range value for column 'i3' at row 1
+Warning 1264 Out of range value for column 'i4' at row 1
+Warning 1264 Out of range value for column 'u1' at row 1
+Warning 1264 Out of range value for column 'u2' at row 1
+Warning 1264 Out of range value for column 'u3' at row 1
+Warning 1264 Out of range value for column 'u4' at row 1
+Warning 1264 Out of range value for column 'u1' at row 1
+Warning 1264 Out of range value for column 'u2' at row 1
Note 1265 Data truncated for column 'd3' at row 1
Note 1265 Data truncated for column 'd3' at row 1
SELECT sp_vars_check_ret1();
sp_vars_check_ret1()
127
Warnings:
-Warning 1264 Out of range value adjusted for column 'sp_vars_check_ret1()' at row 1
+Warning 1264 Out of range value for column 'sp_vars_check_ret1()' at row 1
SELECT sp_vars_check_ret2();
sp_vars_check_ret2()
127
Warnings:
-Warning 1264 Out of range value adjusted for column 'sp_vars_check_ret2()' at row 1
+Warning 1264 Out of range value for column 'sp_vars_check_ret2()' at row 1
SELECT sp_vars_check_ret3();
sp_vars_check_ret3()
0
@@ -372,13 +372,13 @@ Calling the routines, created in TRADITIONAL mode.
---------------------------------------------------------------
CALL sp_vars_check_dflt();
-ERROR 22003: Out of range value adjusted for column 'v1' at row 1
+ERROR 22003: Out of range value for column 'v1' at row 1
CALL sp_vars_check_assignment();
-ERROR 22003: Out of range value adjusted for column 'i1' at row 1
+ERROR 22003: Out of range value for column 'i1' at row 1
SELECT sp_vars_check_ret1();
-ERROR 22003: Out of range value adjusted for column 'sp_vars_check_ret1()' at row 1
+ERROR 22003: Out of range value for column 'sp_vars_check_ret1()' at row 1
SELECT sp_vars_check_ret2();
-ERROR 22003: Out of range value adjusted for column 'sp_vars_check_ret2()' at row 1
+ERROR 22003: Out of range value for column 'sp_vars_check_ret2()' at row 1
SELECT sp_vars_check_ret3();
ERROR HY000: Incorrect integer value: 'Hello, world' for column 'sp_vars_check_ret3()' at row 1
SELECT sp_vars_check_ret4();
@@ -451,11 +451,11 @@ FF
HEX(v10)
FF
Warnings:
-Warning 1264 Out of range value adjusted for column 'v8' at row 1
-Warning 1264 Out of range value adjusted for column 'v9' at row 1
-Warning 1264 Out of range value adjusted for column 'v10' at row 1
-Warning 1264 Out of range value adjusted for column 'v1' at row 1
-Warning 1264 Out of range value adjusted for column 'v5' at row 1
+Warning 1264 Out of range value for column 'v8' at row 1
+Warning 1264 Out of range value for column 'v9' at row 1
+Warning 1264 Out of range value for column 'v10' at row 1
+Warning 1264 Out of range value for column 'v1' at row 1
+Warning 1264 Out of range value for column 'v5' at row 1
DROP PROCEDURE p1;
---------------------------------------------------------------
@@ -690,15 +690,15 @@ END|
CALL p1(NOW());
Table Create Table
t1 CREATE TABLE "t1" (
- "x" datetime default NULL
+ "x" datetime DEFAULT NULL
)
CALL p1('test');
Table Create Table
t1 CREATE TABLE "t1" (
- "x" datetime default NULL
+ "x" datetime DEFAULT NULL
)
Warnings:
-Warning 1264 Out of range value adjusted for column 'x' at row 1
+Warning 1264 Out of range value for column 'x' at row 1
DROP PROCEDURE p1;
---------------------------------------------------------------
@@ -848,9 +848,9 @@ SET var := arg;
SELECT arg, var;
END|
CALL p1();
-ERROR 22003: Out of range value adjusted for column 'v' at row 1
+ERROR 22003: Out of range value for column 'v' at row 1
CALL p2();
-ERROR 22003: Out of range value adjusted for column 'v' at row 1
+ERROR 22003: Out of range value for column 'v' at row 1
CALL p3();
ERROR 22001: Data too long for column 'v' at row 1
CALL p4('aaa');
@@ -858,7 +858,7 @@ ERROR 22001: Data too long for column 'arg' at row 1
CALL p5('aa');
ERROR 22001: Data too long for column 'var' at row 1
CALL p6(10);
-ERROR 22003: Out of range value adjusted for column 'var' at row 1
+ERROR 22003: Out of range value for column 'var' at row 1
SET @@sql_mode = 'ansi';
DROP PROCEDURE p1;
DROP PROCEDURE p2;
@@ -904,17 +904,17 @@ SELECT f1(-2500);
f1(-2500)
0
Warnings:
-Warning 1264 Out of range value adjusted for column 'arg' at row 1
+Warning 1264 Out of range value for column 'arg' at row 1
SET @@sql_mode = 'traditional';
SELECT f1(-2500);
-ERROR 22003: Out of range value adjusted for column 'arg' at row 1
+ERROR 22003: Out of range value for column 'arg' at row 1
DROP FUNCTION f1;
CREATE FUNCTION f1(arg TINYINT UNSIGNED) RETURNS TINYINT
BEGIN
RETURN arg;
END|
SELECT f1(-2500);
-ERROR 22003: Out of range value adjusted for column 'arg' at row 1
+ERROR 22003: Out of range value for column 'arg' at row 1
SET @@sql_mode = 'ansi';
DROP FUNCTION f1;
@@ -931,17 +931,17 @@ SELECT f1(8388699);
f1(8388699)
8388607
Warnings:
-Warning 1264 Out of range value adjusted for column 'arg' at row 1
+Warning 1264 Out of range value for column 'arg' at row 1
SET @@sql_mode = 'traditional';
SELECT f1(8388699);
-ERROR 22003: Out of range value adjusted for column 'arg' at row 1
+ERROR 22003: Out of range value for column 'arg' at row 1
DROP FUNCTION f1;
CREATE FUNCTION f1(arg MEDIUMINT) RETURNS MEDIUMINT
BEGIN
RETURN arg;
END|
SELECT f1(8388699);
-ERROR 22003: Out of range value adjusted for column 'arg' at row 1
+ERROR 22003: Out of range value for column 'arg' at row 1
SET @@sql_mode = 'ansi';
DROP FUNCTION f1;
@@ -1202,3 +1202,29 @@ after substr str_remainder
after substr b,c
DROP PROCEDURE bug27415_text_test|
DROP PROCEDURE bug27415_text_test2|
+drop function if exists f1;
+drop table if exists t1;
+create function f1() returns int
+begin
+if @a=1 then set @b='abc';
+else set @b=1;
+end if;
+set @a=1;
+return 0;
+end|
+create table t1 (a int)|
+insert into t1 (a) values (1), (2)|
+set @b=1|
+set @a=0|
+select f1(), @b from t1|
+f1() @b
+0 1
+0 0
+set @b:='test'|
+set @a=0|
+select f1(), @b from t1|
+f1() @b
+0 1
+0 abc
+drop function f1;
+drop table t1;
diff --git a/mysql-test/r/sp.result b/mysql-test/r/sp.result
index f66d31a3295..67514c314f4 100644
--- a/mysql-test/r/sp.result
+++ b/mysql-test/r/sp.result
@@ -83,7 +83,7 @@ replace t1 set data = data, id = "bar";
update t1 set id = "kaka", data = 3 where t1.data = data;
end|
call setcontext()|
-select * from t1|
+select * from t1 order by data|
id data
foo 1
kaka 3
@@ -196,7 +196,7 @@ drop procedure if exists inc|
create procedure inc(inout io int)
set io = io + 1|
call iotest("io1", "io2", 1)|
-select * from t1|
+select * from t1 order by data desc|
id data
io2 2
io1 1
@@ -229,7 +229,7 @@ set y2 = 4711;
insert into test.t1 values ("cbv2", y1);
end|
call cbv1()|
-select * from t1|
+select * from t1 order by data|
id data
cbv2 4
cbv1 4711
@@ -248,7 +248,7 @@ set x = (select sum(t.i) from test.t2 t);
insert into test.t1 values (id, x);
end|
drop procedure if exists sub3|
-create function sub3(i int) returns int
+create function sub3(i int) returns int deterministic
return i+1|
call sub1("sub1a", (select 7))|
call sub1("sub1b", (select max(i) from t2))|
@@ -256,7 +256,7 @@ call sub1("sub1c", (select i,d from t2 limit 1))|
ERROR 21000: Operand should contain 1 column(s)
call sub1("sub1d", (select 1 from (select 1) a))|
call sub2("sub2")|
-select * from t1|
+select * from t1 order by id|
id data
sub1a 7
sub1b 3
@@ -277,7 +277,7 @@ set x = x-1;
insert into test.t1 values ("a0", x);
end while|
call a0(3)|
-select * from t1|
+select * from t1 order by data desc|
id data
a0 2
a0 1
@@ -291,7 +291,7 @@ set x = x-1;
insert into test.t1 values ("a", x);
end while|
call a(3)|
-select * from t1|
+select * from t1 order by data desc|
id data
a 2
a 1
@@ -305,7 +305,7 @@ insert into test.t1 values (repeat("b",3), x);
set x = x-1;
until x = 0 end repeat|
call b(3)|
-select * from t1|
+select * from t1 order by data desc|
id data
bbb 3
bbb 2
@@ -328,7 +328,7 @@ iterate hmm;
insert into test.t1 values ("x", x);
end while hmm|
call c(3)|
-select * from t1|
+select * from t1 order by data desc|
id data
c 3
c 2
@@ -359,7 +359,7 @@ insert into test.t1 values ("e", x);
set x = x-1;
end loop foo|
call e(3)|
-select * from t1|
+select * from t1 order by data desc|
id data
e 3
e 2
@@ -378,7 +378,7 @@ end if|
call f(-2)|
call f(0)|
call f(4)|
-select * from t1|
+select * from t1 order by data|
id data
f 0
f 1
@@ -398,7 +398,7 @@ end case|
call g(-42)|
call g(0)|
call g(1)|
-select * from t1|
+select * from t1 order by data|
id data
g 0
g 1
@@ -418,7 +418,7 @@ end case|
call h(0)|
call h(1)|
call h(17)|
-select * from t1|
+select * from t1 order by data|
id data
h0 0
h1 1
@@ -446,7 +446,7 @@ insert into t2 values ("x", 9, 4.1), ("y", -1, 19.2), ("z", 3, 2.2)|
drop procedure if exists sel1|
create procedure sel1()
begin
-select * from t1;
+select * from t1 order by data;
end|
call sel1()|
id data
@@ -456,8 +456,8 @@ drop procedure sel1|
drop procedure if exists sel2|
create procedure sel2()
begin
-select * from t1;
-select * from t2;
+select * from t1 order by data;
+select * from t2 order by s;
end|
call sel2()|
id data
@@ -478,7 +478,7 @@ select id,data into x,y from test.t1 limit 1;
insert into test.t1 values (concat(x, "2"), y+2);
end|
call into_test("into", 100)|
-select * from t1|
+select * from t1 order by data|
id data
into 100
into2 102
@@ -492,7 +492,7 @@ select id,data into x,@z from test.t1 limit 1;
insert into test.t1 values (concat(x, "2"), y+2);
end|
call into_test2("into", 100)|
-select id,data,@z from t1|
+select id,data,@z from t1 order by data|
id data @z
into 100 100
into2 102 100
@@ -544,7 +544,7 @@ drop procedure if exists into_outfile|
create procedure into_outfile(x char(16), y int)
begin
insert into test.t1 values (x, y);
-select * into outfile "../tmp/spout" from test.t1;
+select * into outfile "MYSQLTEST_VARDIR/tmp/spout" from test.t1;
insert into test.t1 values (concat(x, "2"), y+2);
end|
call into_outfile("ofile", 1)|
@@ -554,7 +554,7 @@ drop procedure if exists into_dumpfile|
create procedure into_dumpfile(x char(16), y int)
begin
insert into test.t1 values (x, y);
-select * into dumpfile "../tmp/spdump" from test.t1 limit 1;
+select * into dumpfile "MYSQLTEST_VARDIR/tmp/spdump" from test.t1 limit 1;
insert into test.t1 values (concat(x, "2"), y+2);
end|
call into_dumpfile("dfile", 1)|
@@ -624,14 +624,14 @@ insert into t2 values (append("a", "b"), mul(2,mul(3,4)), fun(1.7, 4, 6))|
select * from t2 where s = append("a", "b")|
s i d
ab 24 1324.36598821719
-select * from t2 where i = mul(4,3) or i = mul(mul(3,4),2)|
+select * from t2 where i = mul(4,3) or i = mul(mul(3,4),2) order by i|
s i d
xxxyyy 12 2.71828182845905
ab 24 1324.36598821719
select * from t2 where d = e()|
s i d
xxxyyy 12 2.71828182845905
-select * from t2|
+select * from t2 order by i|
s i d
xxxyyy 12 2.71828182845905
ab 24 1324.36598821719
@@ -750,8 +750,8 @@ drop procedure if exists cur2|
create procedure cur2()
begin
declare done int default 0;
-declare c1 cursor for select id,data from test.t1;
-declare c2 cursor for select i from test.t2;
+declare c1 cursor for select id,data from test.t1 order by id,data;
+declare c2 cursor for select i from test.t2 order by i;
declare continue handler for sqlstate '02000' set done = 1;
open c1;
open c2;
@@ -774,10 +774,10 @@ close c1;
close c2;
end|
call cur2()|
-select * from t3|
+select * from t3 order by i,s|
s i
-foo 40
bar 3
+foo 40
zap 663
delete from t1|
delete from t2|
@@ -792,11 +792,11 @@ sql security definer
comment 'Characteristics procedure test'
insert into t1 values ("chistics", 1)|
show create procedure chistics|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
chistics CREATE DEFINER=`root`@`localhost` PROCEDURE `chistics`()
MODIFIES SQL DATA
COMMENT 'Characteristics procedure test'
-insert into t1 values ("chistics", 1)
+insert into t1 values ("chistics", 1) latin1 latin1_swedish_ci latin1_swedish_ci
call chistics()|
select * from t1|
id data
@@ -804,12 +804,12 @@ chistics 1
delete from t1|
alter procedure chistics sql security invoker|
show create procedure chistics|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
chistics CREATE DEFINER=`root`@`localhost` PROCEDURE `chistics`()
MODIFIES SQL DATA
SQL SECURITY INVOKER
COMMENT 'Characteristics procedure test'
-insert into t1 values ("chistics", 1)
+insert into t1 values ("chistics", 1) latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure chistics|
drop function if exists chistics|
create function chistics() returns int
@@ -819,12 +819,12 @@ sql security invoker
comment 'Characteristics procedure test'
return 42|
show create function chistics|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
chistics CREATE DEFINER=`root`@`localhost` FUNCTION `chistics`() RETURNS int(11)
DETERMINISTIC
SQL SECURITY INVOKER
COMMENT 'Characteristics procedure test'
-return 42
+return 42 latin1 latin1_swedish_ci latin1_swedish_ci
select chistics()|
chistics()
42
@@ -832,13 +832,13 @@ alter function chistics
no sql
comment 'Characteristics function test'|
show create function chistics|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
chistics CREATE DEFINER=`root`@`localhost` FUNCTION `chistics`() RETURNS int(11)
NO SQL
DETERMINISTIC
SQL SECURITY INVOKER
COMMENT 'Characteristics function test'
-return 42
+return 42 latin1 latin1_swedish_ci latin1_swedish_ci
drop function chistics|
insert into t1 values ("foo", 1), ("bar", 2), ("zip", 3)|
set @@sql_mode = 'ANSI'|
@@ -940,16 +940,16 @@ return (select sum(data) from t1)|
select f1()|
f1()
3
-select id, f1() from t1|
+select id, f1() from t1 order by id|
id f1()
a 3
b 3
create function f2() returns int
-return (select data from t1 where data <= (select sum(data) from t1) limit 1)|
+return (select data from t1 where data <= (select sum(data) from t1) order by data limit 1)|
select f2()|
f2()
1
-select id, f2() from t1|
+select id, f2() from t1 order by id|
id f2()
a 1
b 1
@@ -964,14 +964,14 @@ end|
select f3()|
f3()
1
-select id, f3() from t1|
+select id, f3() from t1 order by id|
id f3()
a 1
b 1
select f1(), f3()|
f1() f3()
3 1
-select id, f1(), f3() from t1|
+select id, f1(), f3() from t1 order by id|
id f1() f3()
a 3 1
b 3 1
@@ -980,7 +980,7 @@ return (select d from t1, t2 where t1.data = t2.i and t1.id= "b")|
select f4()|
f4()
2
-select s, f4() from t2|
+select s, f4() from t2 order by s|
s f4()
a 2
b 2
@@ -1013,7 +1013,7 @@ return (select sum(data) from t1 where data <= f1())|
select f6()|
f6()
2
-select id, f6() from t1|
+select id, f6() from t1 order by id|
id f6()
a 2
b 2
@@ -1021,7 +1021,7 @@ create view v1 (a) as select f1()|
select * from v1|
a
3
-select id, a from t1, v1|
+select id, a from t1, v1 order by id|
id a
a 3
b 3
@@ -1032,7 +1032,7 @@ create view v2 (a) as select a*10 from v1|
select * from v2|
a
30
-select id, a from t1, v2|
+select id, a from t1, v2 order by id|
id a
a 30
b 30
@@ -1077,7 +1077,7 @@ lock tables t1 read, t1 as t11 read|
select f3()|
f3()
1
-select id, f3() from t1 as t11|
+select id, f3() from t1 as t11 order by id|
id f3()
a 1
b 1
@@ -1184,8 +1184,8 @@ drop function f12_2|
drop view v0|
drop view v1|
drop view v2|
-delete from t1 |
-delete from t2 |
+truncate table t1 |
+truncate table t2 |
drop table t4|
drop table if exists t3|
create table t3 (n int unsigned not null primary key, f bigint unsigned)|
@@ -1228,12 +1228,12 @@ n f
20 2432902008176640000
drop table t3|
show function status like '%f%'|
-Db Name Type Definer Modified Created Security_type Comment
-test fac FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test fac FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure ifac|
drop function fac|
show function status like '%f%'|
-Db Name Type Definer Modified Created Security_type Comment
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
drop table if exists t3|
create table t3 (
i int unsigned not null primary key,
@@ -1295,7 +1295,7 @@ end;
end while;
end|
show create procedure opp|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
opp CREATE DEFINER=`root`@`localhost` PROCEDURE `opp`(n bigint unsigned, out pp bool)
begin
declare r double;
@@ -1321,11 +1321,11 @@ set s = s+1;
end;
end if;
end loop;
-end
-show procedure status like '%p%'|
-Db Name Type Definer Modified Created Security_type Comment
-test ip PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
-test opp PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+end latin1 latin1_swedish_ci latin1_swedish_ci
+show procedure status where name like '%p%' and db='test'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test ip PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
+test opp PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
call ip(200)|
select * from t3 where i=45 or i=100 or i=199|
i p
@@ -1335,26 +1335,26 @@ i p
drop table t3|
drop procedure opp|
drop procedure ip|
-show procedure status like '%p%'|
-Db Name Type Definer Modified Created Security_type Comment
+show procedure status where name like '%p%' and db='test'|
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
drop procedure if exists bar|
create procedure bar(x char(16), y int)
comment "111111111111" sql security invoker
insert into test.t1 values (x, y)|
show procedure status like 'bar'|
-Db Name Type Definer Modified Created Security_type Comment
-test bar PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 INVOKER 111111111111
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test bar PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 INVOKER 111111111111 latin1 latin1_swedish_ci latin1_swedish_ci
alter procedure bar comment "2222222222" sql security definer|
alter procedure bar comment "3333333333"|
alter procedure bar|
show create procedure bar|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
bar CREATE DEFINER=`root`@`localhost` PROCEDURE `bar`(x char(16), y int)
COMMENT '3333333333'
-insert into test.t1 values (x, y)
+insert into test.t1 values (x, y) latin1 latin1_swedish_ci latin1_swedish_ci
show procedure status like 'bar'|
-Db Name Type Definer Modified Created Security_type Comment
-test bar PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER 3333333333
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test bar PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER 3333333333 latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure bar|
drop procedure if exists p1|
create procedure p1 ()
@@ -1777,7 +1777,7 @@ delete from t1|
call bug822('foo', 42)|
call bug822('foo', 42)|
call bug822('bar', 666)|
-select * from t1|
+select * from t1 order by data|
id data
foo 42
bar 666
@@ -1800,7 +1800,7 @@ delete from t1 where id='foo'|
insert into t1 values ('bar', 7)|
call bug1495()|
delete from t1 where id='bar'|
-select * from t1|
+select * from t1 order by data|
id data
less 2
more 17
@@ -1820,10 +1820,10 @@ end|
insert into t1 values ("foo", 12), ("bar", 7)|
call bug1547("foo")|
call bug1547("bar")|
-select * from t1|
+select * from t1 order by id|
id data
-foo 12
bar 7
+foo 12
less 2
more 17
delete from t1|
@@ -1871,12 +1871,12 @@ insert into t2 values ("avg", 0, y);
end|
insert into t1 (data) values (3), (1), (5), (9), (4)|
call bug1874()|
-select * from t2|
+select * from t2 order by i|
s i d
-max 9 0
+avg 0 4.4
min 1 0
+max 9 0
sum 22 0
-avg 0 4.4
delete from t1|
delete from t2|
drop procedure bug1874|
@@ -1899,12 +1899,12 @@ drop procedure bug2260|
drop procedure if exists bug2267_1|
create procedure bug2267_1()
begin
-show procedure status;
+show procedure status where db='test';
end|
drop procedure if exists bug2267_2|
create procedure bug2267_2()
begin
-show function status;
+show function status where db='test';
end|
drop procedure if exists bug2267_3|
create procedure bug2267_3()
@@ -1919,24 +1919,24 @@ show create function bug2267_4;
end|
create function bug2267_4() returns int return 100|
call bug2267_1()|
-Db Name Type Definer Modified Created Security_type Comment
-test bug2267_1 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
-test bug2267_2 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
-test bug2267_3 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
-test bug2267_4 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test bug2267_1 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
+test bug2267_2 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
+test bug2267_3 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
+test bug2267_4 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
call bug2267_2()|
-Db Name Type Definer Modified Created Security_type Comment
-test bug2267_4 FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
+Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
+test bug2267_4 FUNCTION root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
call bug2267_3()|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
bug2267_1 CREATE DEFINER=`root`@`localhost` PROCEDURE `bug2267_1`()
begin
-show procedure status;
-end
+show procedure status where db='test';
+end latin1 latin1_swedish_ci latin1_swedish_ci
call bug2267_4()|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug2267_4 CREATE DEFINER=`root`@`localhost` FUNCTION `bug2267_4`() RETURNS int(11)
-return 100
+return 100 latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure bug2267_1|
drop procedure bug2267_2|
drop procedure bug2267_3|
@@ -2025,7 +2025,7 @@ drop procedure bug2776_2|
create table t3 (s1 smallint)|
insert into t3 values (123456789012)|
Warnings:
-Warning 1264 Out of range value adjusted for column 's1' at row 1
+Warning 1264 Out of range value for column 's1' at row 1
drop procedure if exists bug2780|
create procedure bug2780()
begin
@@ -2141,6 +2141,7 @@ set @stamped_time=in_time;
set x=2;
end if;
end|
+set time_zone='+03:00';
call bug3426(1000, @i)|
select @i, from_unixtime(@stamped_time, '%d-%m-%Y %h:%i:%s') as time|
@i time
@@ -2266,22 +2267,22 @@ create function bug2564_4(x int, y int) returns int
return x || y$
set @@sql_mode = ''|
show create procedure bug2564_1|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
bug2564_1 CREATE DEFINER=`root`@`localhost` PROCEDURE `bug2564_1`()
COMMENT 'Joe''s procedure'
-insert into `t1` values ("foo", 1)
+insert into `t1` values ("foo", 1) latin1 latin1_swedish_ci latin1_swedish_ci
show create procedure bug2564_2|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
bug2564_2 ANSI_QUOTES CREATE DEFINER="root"@"localhost" PROCEDURE "bug2564_2"()
-insert into "t1" values ('foo', 1)
+insert into "t1" values ('foo', 1) latin1 latin1_swedish_ci latin1_swedish_ci
show create function bug2564_3|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug2564_3 CREATE DEFINER=`root`@`localhost` FUNCTION `bug2564_3`(x int, y int) RETURNS int(11)
-return x || y
+return x || y latin1 latin1_swedish_ci latin1_swedish_ci
show create function bug2564_4|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug2564_4 REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI CREATE DEFINER="root"@"localhost" FUNCTION "bug2564_4"(x int, y int) RETURNS int(11)
-return x || y
+return x || y latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure bug2564_1|
drop procedure bug2564_2|
drop function bug2564_3|
@@ -2352,7 +2353,7 @@ create table t3 as select bug2773()|
show create table t3|
Table Create Table
t3 CREATE TABLE `t3` (
- `bug2773()` int(11) default NULL
+ `bug2773()` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t3|
drop function bug2773|
@@ -2399,7 +2400,8 @@ show errors;
show columns from t1;
show keys from t1;
show open tables like 'foo';
-show privileges;
+# Removed because result will differ in embedded mode.
+#show privileges;
show status like 'foo';
show tables like 'foo';
show variables like 'foo';
@@ -2413,7 +2415,7 @@ tinyint 1 -128 127 0 0 YES YES NO YES YES NO NULL,0 A very small integer
tinyint unsigned 1 0 255 0 0 YES YES YES YES YES NO NULL,0 A very small integer
Table Create Table
t1 CREATE TABLE `t1` (
- `id` char(16) NOT NULL default '',
+ `id` char(16) NOT NULL DEFAULT '',
`data` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
Database Create Database
@@ -2425,34 +2427,6 @@ id char(16) NO
data int(11) NO NULL
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
Database Table In_use Name_locked
-Privilege Context Comment
-Alter Tables To alter the table
-Alter routine Functions,Procedures To alter or drop stored functions/procedures
-Create Databases,Tables,Indexes To create new databases and tables
-Create routine Databases To use CREATE FUNCTION/PROCEDURE
-Create temporary tables Databases To use CREATE TEMPORARY TABLE
-Create view Tables To create new views
-Create user Server Admin To create new users
-Delete Tables To delete existing rows
-Drop Databases,Tables To drop databases, tables, and views
-Execute Functions,Procedures To execute stored routines
-File File access on server To read and write files on the server
-Grant option Databases,Tables,Functions,Procedures To give to other users those privileges you possess
-Index Tables To create or drop indexes
-Insert Tables To insert data into tables
-Lock tables Databases To use LOCK TABLES (together with SELECT privilege)
-Process Server Admin To view the plain text of currently executing queries
-References Databases,Tables To have references on tables
-Reload Server Admin To reload or refresh tables, logs and privileges
-Replication client Server Admin To ask where the slave or master servers are
-Replication slave Server Admin To read binary log events from the master
-Select Tables To retrieve rows from table
-Show databases Server Admin To see all databases with SHOW DATABASES
-Show view Tables To see views with SHOW CREATE VIEW
-Shutdown Server Admin To shut down the server
-Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
-Update Tables To update existing rows
-Usage Server Admin No privileges - allow connect only
Variable_name Value
Tables_in_test (foo)
Variable_name Value
@@ -2465,7 +2439,7 @@ tinyint 1 -128 127 0 0 YES YES NO YES YES NO NULL,0 A very small integer
tinyint unsigned 1 0 255 0 0 YES YES YES YES YES NO NULL,0 A very small integer
Table Create Table
t1 CREATE TABLE `t1` (
- `id` char(16) NOT NULL default '',
+ `id` char(16) NOT NULL DEFAULT '',
`data` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
Database Create Database
@@ -2477,34 +2451,6 @@ id char(16) NO
data int(11) NO NULL
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
Database Table In_use Name_locked
-Privilege Context Comment
-Alter Tables To alter the table
-Alter routine Functions,Procedures To alter or drop stored functions/procedures
-Create Databases,Tables,Indexes To create new databases and tables
-Create routine Databases To use CREATE FUNCTION/PROCEDURE
-Create temporary tables Databases To use CREATE TEMPORARY TABLE
-Create view Tables To create new views
-Create user Server Admin To create new users
-Delete Tables To delete existing rows
-Drop Databases,Tables To drop databases, tables, and views
-Execute Functions,Procedures To execute stored routines
-File File access on server To read and write files on the server
-Grant option Databases,Tables,Functions,Procedures To give to other users those privileges you possess
-Index Tables To create or drop indexes
-Insert Tables To insert data into tables
-Lock tables Databases To use LOCK TABLES (together with SELECT privilege)
-Process Server Admin To view the plain text of currently executing queries
-References Databases,Tables To have references on tables
-Reload Server Admin To reload or refresh tables, logs and privileges
-Replication client Server Admin To ask where the slave or master servers are
-Replication slave Server Admin To read binary log events from the master
-Select Tables To retrieve rows from table
-Show databases Server Admin To see all databases with SHOW DATABASES
-Show view Tables To see views with SHOW CREATE VIEW
-Shutdown Server Admin To shut down the server
-Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
-Update Tables To update existing rows
-Usage Server Admin No privileges - allow connect only
Variable_name Value
Tables_in_test (foo)
Variable_name Value
@@ -3579,12 +3525,18 @@ call bug11333(10)|
drop procedure bug11333|
drop table t3|
drop function if exists bug9048|
-create function bug9048(f1 char binary) returns char binary
+create function bug9048(f1 char binary) returns char
begin
set f1= concat( 'hello', f1 );
return f1;
end|
drop function bug9048|
+create function bug9048(f1 char binary) returns char binary
+begin
+set f1= concat( 'hello', f1 );
+return f1;
+end|
+ERROR 42000: This version of MySQL doesn't yet support 'return value collation'
drop procedure if exists bug12849_1|
create procedure bug12849_1(inout x char) select x into x|
set @var='a'|
@@ -3671,7 +3623,7 @@ begin
select bug12379();
end|
select bug12379()|
-ERROR 23000: Duplicate entry 'X' for key 1
+ERROR 23000: Duplicate entry 'X' for key 'PRIMARY'
select 1|
1
1
@@ -3688,7 +3640,7 @@ select 3|
3
3
call bug12379_3()|
-ERROR 23000: Duplicate entry 'X' for key 1
+ERROR 23000: Duplicate entry 'X' for key 'PRIMARY'
select 4|
4
4
@@ -3743,7 +3695,7 @@ s1
0
1
call bug6127()|
-ERROR 23000: Duplicate entry '0' for key 1
+ERROR 23000: Duplicate entry '0' for key 's1'
select * from t3|
s1
0
@@ -3782,20 +3734,20 @@ end|
call bug12589_1()|
Table Create Table
tm1 CREATE TEMPORARY TABLE `tm1` (
- `spv1` decimal(3,3) default NULL
+ `spv1` decimal(3,3) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
Warnings:
-Warning 1264 Out of range value adjusted for column 'spv1' at row 1
+Warning 1264 Out of range value for column 'spv1' at row 1
Warning 1366 Incorrect decimal value: 'test' for column 'spv1' at row 1
call bug12589_2()|
Table Create Table
tm1 CREATE TEMPORARY TABLE `tm1` (
- `spv1` decimal(6,3) default NULL
+ `spv1` decimal(6,3) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
call bug12589_3()|
Table Create Table
tm1 CREATE TEMPORARY TABLE `tm1` (
- `spv1` decimal(6,3) default NULL
+ `spv1` decimal(6,3) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop procedure bug12589_1|
drop procedure bug12589_2|
@@ -3947,11 +3899,11 @@ main_loop: begin
return 42;
end */;;
show create function bug14723;;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug14723 CREATE DEFINER=`root`@`localhost` FUNCTION `bug14723`() RETURNS bigint(20)
main_loop: begin
return 42;
-end
+end latin1 latin1_swedish_ci latin1_swedish_ci
select bug14723();;
bug14723()
42
@@ -3960,11 +3912,11 @@ main_loop: begin
select 42;
end */;;
show create procedure bug14723;;
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
bug14723 CREATE DEFINER=`root`@`localhost` PROCEDURE `bug14723`()
main_loop: begin
select 42;
-end
+end latin1 latin1_swedish_ci latin1_swedish_ci
call bug14723();;
42
42
@@ -4033,7 +3985,7 @@ select res;
end|
create table t3 (a int)|
insert into t3 values (0)|
-create view v1 as select a from t3;
+create view v1 as select a from t3|
create procedure bug10100pt(level int, lim int)
begin
if level < lim then
@@ -4054,7 +4006,7 @@ else
select * from v1;
end if;
end|
-prepare stmt2 from "select * from t3;";
+prepare stmt2 from "select * from t3;"|
create procedure bug10100pd(level int, lim int)
begin
if level < lim then
@@ -4352,8 +4304,10 @@ call bug13012()|
Table Op Msg_type Msg_text
test.t1 repair status OK
Table Op Msg_type Msg_text
+test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 backup status OK
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
drop procedure bug13012|
create view v1 as select * from t1|
@@ -4421,8 +4375,8 @@ test.t3 analyze status Table is already up to date
test.v1 analyze Error 'test.v1' is not BASE TABLE
test.v1 analyze error Corrupt
drop procedure bug13012|
-drop view v1;
-select * from t1|
+drop view v1|
+select * from t1 order by data|
id data
aa 0
aa 1
@@ -4738,22 +4692,6 @@ i
0
drop table t3|
drop procedure bug16887|
-create table t3 (f1 int, f2 varchar(3), primary key(f1)) engine=innodb|
-insert into t3 values (1,'aaa'),(2,'bbb'),(3,'ccc')|
-CREATE FUNCTION bug13575 ( p1 integer )
-returns varchar(3)
-BEGIN
-DECLARE v1 VARCHAR(10) DEFAULT null;
-SELECT f2 INTO v1 FROM t3 WHERE f1 = p1;
-RETURN v1;
-END|
-select distinct f1, bug13575(f1) from t3 order by f1|
-f1 bug13575(f1)
-1 aaa
-2 bbb
-3 ccc
-drop function bug13575;
-drop table t3|
drop procedure if exists bug16474_1|
drop procedure if exists bug16474_2|
delete from t1|
@@ -4761,7 +4699,7 @@ insert into t1 values ('c', 2), ('b', 3), ('a', 1)|
create procedure bug16474_1()
begin
declare x int;
-select id from t1 order by x;
+select id from t1 order by x, id;
end|
drop procedure if exists bug14945|
create table t3 (id int not null auto_increment primary key)|
@@ -4775,30 +4713,30 @@ id
drop table t3|
drop procedure bug14945|
create procedure bug16474_2(x int)
-select id from t1 order by x|
+select id from t1 order by x, id|
call bug16474_1()|
id
-c
-b
a
+b
+c
call bug16474_2(1)|
id
-c
-b
a
+b
+c
call bug16474_2(2)|
id
-c
-b
a
+b
+c
drop procedure bug16474_1|
drop procedure bug16474_2|
set @x = 2|
-select * from t1 order by @x|
+select * from t1 order by @x, data|
id data
+a 1
c 2
b 3
-a 1
delete from t1|
drop function if exists bug15728|
drop table if exists t3|
@@ -4860,7 +4798,7 @@ create table t3 as select bug12472() as i|
show create table t3|
Table Create Table
t3 CREATE TABLE `t3` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t3|
i
@@ -4871,7 +4809,7 @@ create table t3 as select * from v1|
show create table t3|
Table Create Table
t3 CREATE TABLE `t3` (
- `j` bigint(11) default NULL
+ `j` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t3|
j
@@ -5033,21 +4971,21 @@ RETURN ""|
CREATE FUNCTION mysqltest2.bug16211_f4() RETURNS CHAR(10) CHARSET koi8r
RETURN ""|
SHOW CREATE FUNCTION bug16211_f1|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f1 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f1`() RETURNS char(10) CHARSET utf8
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SHOW CREATE FUNCTION bug16211_f2|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f2 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f2`() RETURNS char(10) CHARSET koi8r
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SHOW CREATE FUNCTION mysqltest2.bug16211_f3|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f3 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f3`() RETURNS char(10) CHARSET utf8
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SHOW CREATE FUNCTION mysqltest2.bug16211_f4|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f4 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f4`() RETURNS char(10) CHARSET koi8r
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SELECT dtd_identifier
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_SCHEMA = "mysqltest1" AND ROUTINE_NAME = "bug16211_f1"|
@@ -5083,21 +5021,21 @@ koi8r
ALTER DATABASE mysqltest1 CHARACTER SET cp1251|
ALTER DATABASE mysqltest2 CHARACTER SET cp1251|
SHOW CREATE FUNCTION bug16211_f1|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f1 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f1`() RETURNS char(10) CHARSET utf8
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SHOW CREATE FUNCTION bug16211_f2|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f2 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f2`() RETURNS char(10) CHARSET koi8r
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SHOW CREATE FUNCTION mysqltest2.bug16211_f3|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f3 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f3`() RETURNS char(10) CHARSET utf8
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SHOW CREATE FUNCTION mysqltest2.bug16211_f4|
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
bug16211_f4 CREATE DEFINER=`root`@`localhost` FUNCTION `bug16211_f4`() RETURNS char(10) CHARSET koi8r
-RETURN ""
+RETURN "" latin1 latin1_swedish_ci utf8_general_ci
SELECT dtd_identifier
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_SCHEMA = "mysqltest1" AND ROUTINE_NAME = "bug16211_f1"|
@@ -5342,9 +5280,9 @@ ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghi
drop procedure if exists bug21416|
create procedure bug21416() show create procedure bug21416|
call bug21416()|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
bug21416 CREATE DEFINER=`root`@`localhost` PROCEDURE `bug21416`()
-show create procedure bug21416
+show create procedure bug21416 latin1 latin1_swedish_ci latin1_swedish_ci
drop procedure bug21416|
DROP PROCEDURE IF EXISTS bug21414|
CREATE PROCEDURE bug21414() SELECT 1|
@@ -5357,7 +5295,7 @@ DROP PROCEDURE bug21414|
set names utf8|
drop database if exists това_е_дълго_име_за_база_данни_нали|
create database това_е_дълго_име_за_база_данни_нали|
-INSERT INTO mysql.proc VALUES ('това_е_дълго_име_за_база_данни_нали','това_е_процедура_с_доста_дълго_име_нали_и_още_по_дълго','PROCEDURE','това_е_процедура_с_доста_дълго_име_нали_и_още_по_дълго','SQL','CONTAINS_SQL','NO','DEFINER','','','bad_body','root@localhost',now(), now(),'','')|
+INSERT INTO mysql.proc VALUES ('това_е_дълго_име_за_база_данни_нали','това_е_процедура_с_доста_дълго_име_нали_и_още_по_дълго','PROCEDURE','това_е_процедура_с_доста_дълго_име_нали_и_още_по_дълго','SQL','CONTAINS_SQL','NO','DEFINER','','','bad_body','root@localhost',now(), now(),'','', 'utf8', 'utf8_general_ci', 'utf8_general_ci', 'n/a')|
call това_е_дълго_име_за_база_данни_нали.това_е_процедура_с_доста_дълго_име_нали_и_още_по_дълго()|
ERROR HY000: Failed to load routine това_е_дълго_име_за_база_данни_нали.това_е_процедура_с_доста_дълго_име_нали_и_още_по_дълго. The table mysql.proc is missing, corrupt, or contains bad data (internal code -6)
drop database това_е_дълго_име_за_база_данни_нали|
@@ -5621,6 +5559,114 @@ t3_id_1 t3_id_2 t4_id
DROP PROCEDURE p1|
DROP VIEW v1, v2|
DROP TABLE t3, t4|
+End of 5.0 tests
+Begin of 5.1 tests
+drop function if exists pi;
+create function pi() returns varchar(50)
+return "pie, my favorite desert.";
+Warnings:
+Note 1585 This function 'pi' has the same name as a native function
+SET @save_sql_mode=@@sql_mode;
+SET SQL_MODE='IGNORE_SPACE';
+select pi(), pi ();
+pi() pi ()
+3.141593 3.141593
+select test.pi(), test.pi ();
+test.pi() test.pi ()
+pie, my favorite desert. pie, my favorite desert.
+SET SQL_MODE='';
+select pi(), pi ();
+pi() pi ()
+3.141593 3.141593
+select test.pi(), test.pi ();
+test.pi() test.pi ()
+pie, my favorite desert. pie, my favorite desert.
+SET @@sql_mode=@save_sql_mode;
+drop function pi;
+drop function if exists test.database;
+drop function if exists test.current_user;
+drop function if exists test.md5;
+create database nowhere;
+use nowhere;
+drop database nowhere;
+SET @save_sql_mode=@@sql_mode;
+SET SQL_MODE='IGNORE_SPACE';
+select database(), database ();
+database() database ()
+NULL NULL
+select current_user(), current_user ();
+current_user() current_user ()
+root@localhost root@localhost
+select md5("aaa"), md5 ("aaa");
+md5("aaa") md5 ("aaa")
+47bce5c74f589f4867dbd57e9ca9f808 47bce5c74f589f4867dbd57e9ca9f808
+SET SQL_MODE='';
+select database(), database ();
+database() database ()
+NULL NULL
+select current_user(), current_user ();
+current_user() current_user ()
+root@localhost root@localhost
+select md5("aaa"), md5 ("aaa");
+md5("aaa") md5 ("aaa")
+47bce5c74f589f4867dbd57e9ca9f808 47bce5c74f589f4867dbd57e9ca9f808
+use test;
+create function `database`() returns varchar(50)
+return "Stored function database";
+Warnings:
+Note 1585 This function 'database' has the same name as a native function
+create function `current_user`() returns varchar(50)
+return "Stored function current_user";
+Warnings:
+Note 1585 This function 'current_user' has the same name as a native function
+create function md5(x varchar(50)) returns varchar(50)
+return "Stored function md5";
+Warnings:
+Note 1585 This function 'md5' has the same name as a native function
+SET SQL_MODE='IGNORE_SPACE';
+select database(), database ();
+database() database ()
+test test
+select current_user(), current_user ();
+current_user() current_user ()
+root@localhost root@localhost
+select md5("aaa"), md5 ("aaa");
+md5("aaa") md5 ("aaa")
+47bce5c74f589f4867dbd57e9ca9f808 47bce5c74f589f4867dbd57e9ca9f808
+select test.database(), test.database ();
+test.database() test.database ()
+Stored function database Stored function database
+select test.current_user(), test.current_user ();
+test.current_user() test.current_user ()
+Stored function current_user Stored function current_user
+select test.md5("aaa"), test.md5 ("aaa");
+test.md5("aaa") test.md5 ("aaa")
+Stored function md5 Stored function md5
+SET SQL_MODE='';
+select database(), database ();
+database() database ()
+test test
+select current_user(), current_user ();
+current_user() current_user ()
+root@localhost root@localhost
+select md5("aaa"), md5 ("aaa");
+md5("aaa") md5 ("aaa")
+47bce5c74f589f4867dbd57e9ca9f808 47bce5c74f589f4867dbd57e9ca9f808
+select test.database(), test.database ();
+test.database() test.database ()
+Stored function database Stored function database
+select test.current_user(), test.current_user ();
+test.current_user() test.current_user ()
+Stored function current_user Stored function current_user
+select test.md5("aaa"), test.md5 ("aaa");
+test.md5("aaa") test.md5 ("aaa")
+Stored function md5 Stored function md5
+SET @@sql_mode=@save_sql_mode;
+drop function test.database;
+drop function test.current_user;
+drop function md5;
+use test;
+End of 5.1 tests
DROP TABLE IF EXISTS bug23760|
DROP TABLE IF EXISTS bug23760_log|
DROP PROCEDURE IF EXISTS bug23760_update_log|
@@ -5981,7 +6027,7 @@ select bug20777(-9223372036854775808) as 'lower bounds signed bigint';
lower bounds signed bigint
0
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 1
select bug20777(9223372036854775807) as 'upper bounds signed bigint';
upper bounds signed bigint
9223372036854775807
@@ -5995,12 +6041,12 @@ select bug20777(18446744073709551616) as 'upper bounds unsigned bigint + 1';
upper bounds unsigned bigint + 1
18446744073709551615
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 1
select bug20777(-1) as 'lower bounds unsigned bigint - 1';
lower bounds unsigned bigint - 1
0
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 1
create table examplebug20777 as select
0 as 'i',
bug20777(9223372036854775806) as '2**63-2',
@@ -6013,24 +6059,24 @@ bug20777(18446744073709551616) as '2**64',
bug20777(0) as '0',
bug20777(-1) as '-1';
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 1
insert into examplebug20777 values (1, 9223372036854775806, 9223372036854775807, 223372036854775808, 9223372036854775809, 18446744073709551614, 18446744073709551615, 8446744073709551616, 0, -1);
Warnings:
-Warning 1264 Out of range value adjusted for column '-1' at row 1
+Warning 1264 Out of range value for column '-1' at row 1
show create table examplebug20777;
Table Create Table
examplebug20777 CREATE TABLE `examplebug20777` (
- `i` int(1) NOT NULL default '0',
- `2**63-2` bigint(20) unsigned default NULL,
- `2**63-1` bigint(20) unsigned default NULL,
- `2**63` bigint(20) unsigned default NULL,
- `2**63+1` bigint(20) unsigned default NULL,
- `2**64-2` bigint(20) unsigned default NULL,
- `2**64-1` bigint(20) unsigned default NULL,
- `2**64` bigint(20) unsigned default NULL,
- `0` bigint(20) unsigned default NULL,
- `-1` bigint(20) unsigned default NULL
+ `i` int(1) NOT NULL DEFAULT '0',
+ `2**63-2` bigint(20) unsigned DEFAULT NULL,
+ `2**63-1` bigint(20) unsigned DEFAULT NULL,
+ `2**63` bigint(20) unsigned DEFAULT NULL,
+ `2**63+1` bigint(20) unsigned DEFAULT NULL,
+ `2**64-2` bigint(20) unsigned DEFAULT NULL,
+ `2**64-1` bigint(20) unsigned DEFAULT NULL,
+ `2**64` bigint(20) unsigned DEFAULT NULL,
+ `0` bigint(20) unsigned DEFAULT NULL,
+ `-1` bigint(20) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from examplebug20777 order by i;
i 2**63-2 2**63-1 2**63 2**63+1 2**64-2 2**64-1 2**64 0 -1
@@ -6094,10 +6140,11 @@ DROP FUNCTION bug5274_f2|
drop procedure if exists proc_21513|
create procedure proc_21513()`my_label`:BEGIN END|
show create procedure proc_21513|
-Procedure sql_mode Create Procedure
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
proc_21513 CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_21513`()
-`my_label`:BEGIN END
+`my_label`:BEGIN END utf8 utf8_general_ci latin1_swedish_ci
drop procedure proc_21513|
+End of 5.0 tests.
drop table t1,t2;
CREATE TABLE t1 (a int auto_increment primary key) engine=MyISAM;
CREATE TABLE t2 (a int auto_increment primary key, b int) engine=innodb;
@@ -6129,8 +6176,8 @@ INSERT INTO t1 VALUES (1),(2);
CREATE FUNCTION metered(a INT) RETURNS INT RETURN 12;
CREATE VIEW v1 AS SELECT test.metered(a) as metered FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`metered`(`t1`.`a`) AS `metered` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`metered`(`t1`.`a`) AS `metered` from `t1` utf8 utf8_general_ci
DROP VIEW v1;
DROP FUNCTION metered;
DROP TABLE t1;
@@ -6226,6 +6273,144 @@ Level Code Message
use test;
drop procedure sp_bug29050;
drop table t1;
+SET NAMES latin1;
+CREATE PROCEDURE p1()
+BEGIN
+DECLARE INT;
+SELECT ;
+END|
+CALL p1();
+
+NULL
+SET NAMES default;
+DROP PROCEDURE p1;
+drop procedure if exists proc_25411_a;
+drop procedure if exists proc_25411_b;
+drop procedure if exists proc_25411_c;
+create procedure proc_25411_a()
+begin
+/* real comment */
+select 1;
+/*! select 2; */
+select 3;
+/*!00000 select 4; */
+/*!99999 select 5; */
+end
+$$
+create procedure proc_25411_b(
+/* real comment */
+/*! p1 int, */
+/*!00000 p2 int */
+/*!99999 ,p3 int */
+)
+begin
+select p1, p2;
+end
+$$
+create procedure proc_25411_c()
+begin
+select 1/*!,2*//*!00000,3*//*!99999,4*/;
+select 1/*! ,2*//*!00000 ,3*//*!99999 ,4*/;
+select 1/*!,2 *//*!00000,3 *//*!99999,4 */;
+select 1/*! ,2 *//*!00000 ,3 *//*!99999 ,4 */;
+select 1 /*!,2*/ /*!00000,3*/ /*!99999,4*/ ;
+end
+$$
+show create procedure proc_25411_a;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+proc_25411_a CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_25411_a`()
+begin
+/* real comment */
+select 1;
+ select 2;
+select 3;
+ select 4;
+
+end latin1 latin1_swedish_ci latin1_swedish_ci
+call proc_25411_a();
+1
+1
+2
+2
+3
+3
+4
+4
+show create procedure proc_25411_b;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+proc_25411_b CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_25411_b`(
+/* real comment */
+ p1 int,
+ p2 int
+
+)
+begin
+select p1, p2;
+end latin1 latin1_swedish_ci latin1_swedish_ci
+select name, param_list, body from mysql.proc where name like "%25411%";
+name param_list body
+proc_25411_a begin
+/* real comment */
+select 1;
+ select 2;
+select 3;
+ select 4;
+
+end
+proc_25411_b
+/* real comment */
+ p1 int,
+ p2 int
+
+ begin
+select p1, p2;
+end
+proc_25411_c begin
+select 1,2,3;
+select 1 ,2 ,3;
+select 1,2 ,3 ;
+select 1 ,2 ,3 ;
+select 1 ,2 ,3 ;
+end
+call proc_25411_b(10, 20);
+p1 p2
+10 20
+show create procedure proc_25411_c;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+proc_25411_c CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_25411_c`()
+begin
+select 1,2,3;
+select 1 ,2 ,3;
+select 1,2 ,3 ;
+select 1 ,2 ,3 ;
+select 1 ,2 ,3 ;
+end latin1 latin1_swedish_ci latin1_swedish_ci
+call proc_25411_c();
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+1 2 3
+drop procedure proc_25411_a;
+drop procedure proc_25411_b;
+drop procedure proc_25411_c;
+drop procedure if exists proc_26302;
+create procedure proc_26302()
+select 1 /* testing */;
+show create procedure proc_26302;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+proc_26302 CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_26302`()
+select 1 /* testing */ latin1 latin1_swedish_ci latin1_swedish_ci
+select ROUTINE_NAME, ROUTINE_DEFINITION from information_schema.ROUTINES
+where ROUTINE_NAME = "proc_26302";
+ROUTINE_NAME ROUTINE_DEFINITION
+proc_26302 select 1 /* testing */
+drop procedure proc_26302;
CREATE FUNCTION f1() RETURNS INT DETERMINISTIC RETURN 2;
CREATE FUNCTION f2(I INT) RETURNS INT DETERMINISTIC RETURN 3;
CREATE TABLE t1 (c1 INT, INDEX(c1));
@@ -6256,17 +6441,6 @@ DROP VIEW v1;
DROP FUNCTION f1;
DROP FUNCTION f2;
DROP TABLE t1;
-SET NAMES latin1;
-CREATE PROCEDURE p1()
-BEGIN
-DECLARE INT;
-SELECT ;
-END|
-CALL p1();
-
-NULL
-SET NAMES default;
-DROP PROCEDURE p1;
create function f1()
returns int(11)
not deterministic
@@ -6280,8 +6454,8 @@ return x;
end|
create view v1 as select 1 as one, f1() as days;
show create view test.v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `test`.`v1` AS select 1 AS `one`,`f1`() AS `days`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `test`.`v1` AS select 1 AS `one`,`f1`() AS `days` latin1 latin1_swedish_ci
select column_name from information_schema.columns
where table_name='v1' and table_schema='test';
column_name
@@ -6303,18 +6477,18 @@ CALL p1(NOW());
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` datetime default NULL
+ `v` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
CALL p1('text');
Warnings:
-Warning 1264 Out of range value adjusted for column 'v' at row 1
+Warning 1264 Out of range value for column 'v' at row 1
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` datetime default NULL
+ `v` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -6323,7 +6497,7 @@ CALL p2(10);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` bigint(11) default NULL
+ `v` bigint(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -6334,7 +6508,7 @@ Warning 1366 Incorrect integer value: 'text' for column 'v' at row 1
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` bigint(11) default NULL
+ `v` bigint(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
@@ -6532,7 +6706,7 @@ DROP PROCEDURE db28318_a.t1;
DROP PROCEDURE db28318_b.t2;
DROP DATABASE db28318_a;
DROP DATABASE db28318_b;
-USE test;
+use test;
DROP TABLE IF EXISTS t1;
DROP PROCEDURE IF EXISTS bug29770;
CREATE TABLE t1(a int);
@@ -6660,3 +6834,151 @@ drop procedure p1;
# ------------------------------------------------------------------
# -- End of 5.0 tests
# ------------------------------------------------------------------
+
+#
+# Bug#20550.
+#
+
+#
+# - Prepare.
+#
+
+DROP VIEW IF EXISTS v1;
+DROP VIEW IF EXISTS v2;
+DROP FUNCTION IF EXISTS f1;
+DROP FUNCTION IF EXISTS f2;
+
+#
+# - Create required objects.
+#
+
+CREATE FUNCTION f1() RETURNS VARCHAR(65525) RETURN 'Hello';
+
+CREATE FUNCTION f2() RETURNS TINYINT RETURN 1;
+
+CREATE VIEW v1 AS SELECT f1();
+
+CREATE VIEW v2 AS SELECT f2();
+
+#
+# - Check.
+#
+
+SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'v1';
+DATA_TYPE
+varchar
+
+SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'v2';
+DATA_TYPE
+tinyint
+
+#
+# - Cleanup.
+#
+
+DROP FUNCTION f1;
+DROP FUNCTION f2;
+DROP VIEW v1;
+DROP VIEW v2;
+
+#
+# - Bug#24923: prepare.
+#
+
+DROP FUNCTION IF EXISTS f1;
+
+#
+# - Bug#24923: create required objects.
+#
+
+CREATE FUNCTION f1(p INT)
+RETURNS ENUM ('Very_long_enum_element_identifier',
+'Another_very_long_enum_element_identifier')
+BEGIN
+CASE p
+WHEN 1 THEN
+RETURN 'Very_long_enum_element_identifier';
+ELSE
+RETURN 'Another_very_long_enum_element_identifier';
+END CASE;
+END|
+
+#
+# - Bug#24923: check.
+#
+
+SELECT f1(1);
+f1(1)
+Very_long_enum_element_identifier
+
+SELECT f1(2);
+f1(2)
+Another_very_long_enum_element_identifier
+
+SHOW CREATE FUNCTION f1;
+Function sql_mode Create Function character_set_client collation_connection Database Collation
+f1 CREATE DEFINER=`root`@`localhost` FUNCTION `f1`(p INT) RETURNS enum('Very_long_enum_element_identifier','Another_very_long_enum_element_identifier') CHARSET latin1
+BEGIN
+CASE p
+WHEN 1 THEN
+RETURN 'Very_long_enum_element_identifier';
+ELSE
+RETURN 'Another_very_long_enum_element_identifier';
+END CASE;
+END latin1 latin1_swedish_ci latin1_swedish_ci
+#
+# - Bug#24923: cleanup.
+#
+
+DROP FUNCTION f1;
+
+drop procedure if exists p;
+set @old_mode= @@sql_mode;
+set @@sql_mode= pow(2,32)-1;
+select @@sql_mode into @full_mode;
+create procedure p() begin end;
+call p();
+select @@sql_mode;
+@@sql_mode
+REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,?,ONLY_FULL_GROUP_BY,NO_UNSIGNED_SUBTRACTION,NO_DIR_IN_CREATE,POSTGRESQL,ORACLE,MSSQL,DB2,MAXDB,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,MYSQL323,MYSQL40,ANSI,NO_AUTO_VALUE_ON_ZERO,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ALLOW_INVALID_DATES,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,HIGH_NOT_PRECEDENCE,NO_ENGINE_SUBSTITUTION,PAD_CHAR_TO_FULL_LENGTH
+set @@sql_mode= @old_mode;
+select replace(@full_mode, '?', 'NOT_USED') into @full_mode;
+select replace(@full_mode, 'ALLOW_INVALID_DATES', 'INVALID_DATES') into @full_mode;
+select name from mysql.proc where name = 'p' and sql_mode = @full_mode;
+name
+p
+drop procedure p;
+CREATE DEFINER = 'root'@'localhost' PROCEDURE p1()
+NOT DETERMINISTIC
+CONTAINS SQL
+SQL SECURITY DEFINER
+COMMENT ''
+BEGIN
+SHOW TABLE STATUS like 't1';
+END;//
+CREATE TABLE t1 (f1 INT);
+CALL p1();
+CALL p1();
+CALL p1();
+CALL p1();
+DROP PROCEDURE p1;
+DROP TABLE t1;
+#
+# Bug #46629: Item_in_subselect::val_int(): Assertion `0'
+# on subquery inside a SP
+#
+CREATE TABLE t1(a INT);
+CREATE TABLE t2(a INT, b INT PRIMARY KEY);
+CREATE PROCEDURE p1 ()
+BEGIN
+SELECT a FROM t1 A WHERE A.b IN (SELECT b FROM t2 AS B);
+END|
+CALL p1;
+ERROR 42S22: Unknown column 'A.b' in 'IN/ALL/ANY subquery'
+CALL p1;
+ERROR 42S22: Unknown column 'A.b' in 'IN/ALL/ANY subquery'
+DROP PROCEDURE p1;
+DROP TABLE t1, t2;
+# ------------------------------------------------------------------
+# -- End of 5.1 tests
+# ------------------------------------------------------------------
diff --git a/mysql-test/r/sp_gis.result b/mysql-test/r/sp_gis.result
new file mode 100644
index 00000000000..7a76507754f
--- /dev/null
+++ b/mysql-test/r/sp_gis.result
@@ -0,0 +1,30 @@
+use test;
+drop function if exists a;
+drop function if exists x;
+drop function if exists y;
+create function a() returns int
+return 1;
+create function x() returns int
+return 2;
+Warnings:
+Note 1585 This function 'x' has the same name as a native function
+create function y() returns int
+return 3;
+Warnings:
+Note 1585 This function 'y' has the same name as a native function
+select a();
+a()
+1
+select x();
+ERROR 42000: Incorrect parameter count in the call to native function 'x'
+select y();
+ERROR 42000: Incorrect parameter count in the call to native function 'y'
+select x(PointFromText("POINT(10 20)")), y(PointFromText("POINT(10 20)"));
+x(PointFromText("POINT(10 20)")) y(PointFromText("POINT(10 20)"))
+10 20
+select test.a(), test.x(), test.y();
+test.a() test.x() test.y()
+1 2 3
+drop function a;
+drop function x;
+drop function y;
diff --git a/mysql-test/r/sp_notembedded.result b/mysql-test/r/sp_notembedded.result
index 0311162e76d..831616f491b 100644
--- a/mysql-test/r/sp_notembedded.result
+++ b/mysql-test/r/sp_notembedded.result
@@ -1,3 +1,5 @@
+set @old_concurrent_insert= @@global.concurrent_insert;
+set @@global.concurrent_insert= 0;
drop table if exists t1,t3;
drop procedure if exists bug4902|
create procedure bug4902()
@@ -17,23 +19,12 @@ begin
show processlist;
end|
call bug4902_2()|
-Id User Host db Command Time State Info
-# root localhost test Query # NULL show processlist
+show warnings|
+Level Code Message
call bug4902_2()|
-Id User Host db Command Time State Info
-# root localhost test Query # NULL show processlist
+show warnings|
+Level Code Message
drop procedure bug4902_2|
-drop function if exists bug5278|
-create function bug5278 () returns char
-begin
-SET PASSWORD FOR 'bob'@'%.loc.gov' = PASSWORD('newpass');
-return 'okay';
-end|
-select bug5278()|
-ERROR 42000: Can't find any matching row in the user table
-select bug5278()|
-ERROR 42000: Can't find any matching row in the user table
-drop function bug5278|
drop table if exists t1|
create table t1 (
id char(16) not null default '',
@@ -219,10 +210,64 @@ GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
drop user mysqltest_1@localhost;
drop procedure 15298_1;
drop procedure 15298_2;
-INSERT INTO mysql.user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv, Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Create_user_priv, ssl_type, ssl_cipher, x509_issuer, x509_subject, max_questions, max_updates, max_connections, max_user_connections)
-VALUES('%', 'mysqltest_1', password(''), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'N', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'N', '', '', '', '', '0', '0', '0', '0');
+drop table if exists t1;
+drop procedure if exists p1;
+create table t1 (value varchar(15));
+create procedure p1() update t1 set value='updated' where value='old';
+call p1();
+insert into t1 (value) values ("old");
+select get_lock('b26162',120);
+get_lock('b26162',120)
+1
+select 'rl_acquirer', value from t1 where get_lock('b26162',120);;
+set session low_priority_updates=on;
+call p1();;
+select 'rl_contender', value from t1;
+rl_contender value
+rl_contender old
+select release_lock('b26162');
+release_lock('b26162')
+1
+rl_acquirer value
+rl_acquirer old
+drop procedure p1;
+drop table t1;
+set session low_priority_updates=default;
+INSERT INTO mysql.user (Host, User, Password, Select_priv, Insert_priv, Update_priv,
+Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv,
+Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv,
+Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv,
+Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv,
+Create_user_priv, ssl_type, ssl_cipher, x509_issuer, x509_subject, max_questions,
+max_updates, max_connections, max_user_connections)
+VALUES('%', 'mysqltest_1', password(''), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N',
+'N', 'N', 'N', 'Y', 'Y', 'N', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'N', '',
+'', '', '', '0', '0', '0', '0');
FLUSH PRIVILEGES;
CREATE PROCEDURE p1(i INT) BEGIN END;
DROP PROCEDURE p1;
DELETE FROM mysql.user WHERE User='mysqltest_1';
FLUSH PRIVILEGES;
+set @@global.concurrent_insert= @old_concurrent_insert;
+#
+# Bug#44521 Prepared Statement: CALL p() - crashes: `! thd->main_da.is_sent' failed et.al.
+#
+SELECT GET_LOCK('Bug44521', 0);
+GET_LOCK('Bug44521', 0)
+1
+** Connection con1
+CREATE PROCEDURE p()
+BEGIN
+SELECT 1;
+SELECT GET_LOCK('Bug44521', 100);
+SELECT 2;
+END$
+CALL p();;
+** Default connection
+SELECT RELEASE_LOCK('Bug44521');
+RELEASE_LOCK('Bug44521')
+1
+DROP PROCEDURE p;
+# ------------------------------------------------------------------
+# -- End of 5.1 tests
+# ------------------------------------------------------------------
diff --git a/mysql-test/r/sp_trans.result b/mysql-test/r/sp_trans.result
index 564e31c9e32..3cc251bc0a6 100644
--- a/mysql-test/r/sp_trans.result
+++ b/mysql-test/r/sp_trans.result
@@ -82,7 +82,7 @@ end if;
return i;
end|
insert into t1 values (bug10015_5(4)), (bug10015_5(5))|
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
select * from t1|
id
1
@@ -530,3 +530,29 @@ count(*)
drop table t3, t4|
drop procedure bug14210|
set @@session.max_heap_table_size=default|
+CREATE DATABASE db_bug7787|
+use db_bug7787|
+CREATE PROCEDURE p1()
+SHOW INNODB STATUS; |
+Warnings:
+Warning 1287 The syntax 'SHOW INNODB STATUS' is deprecated and will be removed in MySQL 6.0. Please use 'SHOW ENGINE INNODB STATUS' instead
+GRANT EXECUTE ON PROCEDURE p1 TO user_bug7787@localhost|
+DROP DATABASE db_bug7787|
+drop user user_bug7787@localhost|
+use test|
+create table t3 (f1 int, f2 varchar(3), primary key(f1)) engine=innodb|
+insert into t3 values (1,'aaa'),(2,'bbb'),(3,'ccc')|
+CREATE FUNCTION bug13575 ( p1 integer )
+returns varchar(3)
+BEGIN
+DECLARE v1 VARCHAR(10) DEFAULT null;
+SELECT f2 INTO v1 FROM t3 WHERE f1 = p1;
+RETURN v1;
+END|
+select distinct f1, bug13575(f1) from t3 order by f1|
+f1 bug13575(f1)
+1 aaa
+2 bbb
+3 ccc
+drop function bug13575|
+drop table t3|
diff --git a/mysql-test/r/sp_trans_log.result b/mysql-test/r/sp_trans_log.result
index cce5a28fa2e..7a6173b89e2 100644
--- a/mysql-test/r/sp_trans_log.result
+++ b/mysql-test/r/sp_trans_log.result
@@ -13,11 +13,13 @@ return @a;
end|
reset master|
insert into t2 values (bug23333(),1)|
-ERROR 23000: Duplicate entry '1' for key 1
-show binlog events from 98 /* with fixes for #23333 will show there are 2 queries */|
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+show binlog events from 106 /* with fixes for #23333 will show there is the query */|
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query 1 # #
-master-bin.000001 # Query 1 # #
+master-bin.000001 # Table_map 1 # #
+master-bin.000001 # Table_map 1 # #
+master-bin.000001 # Write_rows 1 # #
master-bin.000001 # Query 1 # #
select count(*),@a from t1 /* must be 1,1 */|
count(*) @a
diff --git a/mysql-test/r/sql_mode.result b/mysql-test/r/sql_mode.result
index 474659f7dfc..0b0d5a38d0b 100644
--- a/mysql-test/r/sql_mode.result
+++ b/mysql-test/r/sql_mode.result
@@ -14,11 +14,11 @@ sql_mode
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL auto_increment,
- `pseudo` varchar(35) character set latin2 NOT NULL default '',
- `email` varchar(60) character set latin2 NOT NULL default '',
- PRIMARY KEY (`a`),
- UNIQUE KEY `email` USING BTREE (`email`)
+ `a` int(11) NOT NULL AUTO_INCREMENT,
+ `pseudo` varchar(35) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `email` varchar(60) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`),
+ UNIQUE KEY `email` (`email`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
set @@sql_mode="ansi_quotes";
show variables like 'sql_mode';
@@ -27,11 +27,11 @@ sql_mode ANSI_QUOTES
show create table t1;
Table Create Table
t1 CREATE TABLE "t1" (
- "a" int(11) NOT NULL auto_increment,
- "pseudo" varchar(35) character set latin2 NOT NULL default '',
- "email" varchar(60) character set latin2 NOT NULL default '',
- PRIMARY KEY ("a"),
- UNIQUE KEY "email" USING BTREE ("email")
+ "a" int(11) NOT NULL AUTO_INCREMENT,
+ "pseudo" varchar(35) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ "email" varchar(60) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ PRIMARY KEY ("a"),
+ UNIQUE KEY "email" ("email") USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
set @@sql_mode="no_table_options";
show variables like 'sql_mode';
@@ -40,11 +40,11 @@ sql_mode NO_TABLE_OPTIONS
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL auto_increment,
- `pseudo` varchar(35) character set latin2 NOT NULL default '',
- `email` varchar(60) character set latin2 NOT NULL default '',
- PRIMARY KEY (`a`),
- UNIQUE KEY `email` USING BTREE (`email`)
+ `a` int(11) NOT NULL AUTO_INCREMENT,
+ `pseudo` varchar(35) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `email` varchar(60) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`),
+ UNIQUE KEY `email` (`email`) USING BTREE
)
set @@sql_mode="no_key_options";
show variables like 'sql_mode';
@@ -53,10 +53,10 @@ sql_mode NO_KEY_OPTIONS
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL auto_increment,
- `pseudo` varchar(35) character set latin2 NOT NULL default '',
- `email` varchar(60) character set latin2 NOT NULL default '',
- PRIMARY KEY (`a`),
+ `a` int(11) NOT NULL AUTO_INCREMENT,
+ `pseudo` varchar(35) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ `email` varchar(60) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`),
UNIQUE KEY `email` (`email`)
) ENGINE=MEMORY DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
set @@sql_mode="no_field_options,mysql323,mysql40";
@@ -67,9 +67,9 @@ show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `pseudo` varchar(35) NOT NULL default '',
- `email` varchar(60) NOT NULL default '',
- PRIMARY KEY (`a`),
+ `pseudo` varchar(35) NOT NULL DEFAULT '',
+ `email` varchar(60) NOT NULL DEFAULT '',
+ PRIMARY KEY (`a`),
UNIQUE KEY `email` (`email`)
) TYPE=HEAP ROW_FORMAT=DYNAMIC
set sql_mode="postgresql,oracle,mssql,db2,maxdb";
@@ -80,9 +80,9 @@ show create table t1;
Table Create Table
t1 CREATE TABLE "t1" (
"a" int(11) NOT NULL,
- "pseudo" varchar(35) character set latin2 NOT NULL default '',
- "email" varchar(60) character set latin2 NOT NULL default '',
- PRIMARY KEY ("a"),
+ "pseudo" varchar(35) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ "email" varchar(60) CHARACTER SET latin2 NOT NULL DEFAULT '',
+ PRIMARY KEY ("a"),
UNIQUE KEY "email" ("email")
)
drop table t1;
@@ -95,25 +95,25 @@ set @@sql_mode="";
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL,
- `b` char(10) character set latin1 collate latin1_bin default NULL,
- `c` binary(10) default NULL
+ `a` char(10) DEFAULT NULL,
+ `b` char(10) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
+ `c` binary(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
set @@sql_mode="mysql323";
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL,
- `b` char(10) binary default NULL,
- `c` binary(10) default NULL
+ `a` char(10) DEFAULT NULL,
+ `b` char(10) binary DEFAULT NULL,
+ `c` binary(10) DEFAULT NULL
) TYPE=MyISAM
set @@sql_mode="mysql40";
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` char(10) default NULL,
- `b` char(10) binary default NULL,
- `c` binary(10) default NULL
+ `a` char(10) DEFAULT NULL,
+ `b` char(10) binary DEFAULT NULL,
+ `c` binary(10) DEFAULT NULL
) TYPE=MyISAM
drop table t1;
set session sql_mode = '';
@@ -121,7 +121,7 @@ create table t1 ( min_num dec(6,6) default .000001);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `min_num` decimal(6,6) default '0.000001'
+ `min_num` decimal(6,6) DEFAULT '0.000001'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1 ;
set session sql_mode = 'IGNORE_SPACE';
@@ -129,14 +129,14 @@ create table t1 ( min_num dec(6,6) default 0.000001);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `min_num` decimal(6,6) default '0.000001'
+ `min_num` decimal(6,6) DEFAULT '0.000001'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1 ;
create table t1 ( min_num dec(6,6) default .000001);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `min_num` decimal(6,6) default '0.000001'
+ `min_num` decimal(6,6) DEFAULT '0.000001'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1 ;
set @@SQL_MODE=NULL;
@@ -148,17 +148,17 @@ f2 timestamp default current_timestamp on update current_timestamp);
show create table t1;
Table Create Table
t1 CREATE TABLE "t1" (
- "f1" int(11) NOT NULL auto_increment,
- "f2" timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- PRIMARY KEY ("f1")
+ "f1" int(11) NOT NULL AUTO_INCREMENT,
+ "f2" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ PRIMARY KEY ("f1")
)
set session sql_mode=no_field_options;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`f1` int(11) NOT NULL,
- `f2` timestamp NOT NULL default CURRENT_TIMESTAMP,
- PRIMARY KEY (`f1`)
+ `f2` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ PRIMARY KEY (`f1`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
SET @OLD_SQL_MODE=@@SQL_MODE, @@SQL_MODE='';
@@ -423,58 +423,40 @@ a\b a\"b a'\b a'\"b
SELECT "a\\b", "a\\\'b", "a""\\b", "a""\\\'b";
a\b a\'b a"\b a"\'b
a\b a\'b a"\b a"\'b
-set session sql_mode = 'NO_ENGINE_SUBSTITUTION';
-create table t1 (a int) engine=isam;
-ERROR HY000: The 'ISAM' feature is disabled; you need MySQL built with 'ISAM' to have it working
-show create table t1;
-ERROR 42S02: Table 'test.t1' doesn't exist
-drop table if exists t1;
-Warnings:
-Note 1051 Unknown table 't1'
-set session sql_mode = '';
-create table t1 (a int) engine=isam;
-Warnings:
-Warning 1266 Using storage engine MyISAM for table 't1'
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` int(11) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-drop table t1;
SET @@SQL_MODE='';
create function `foo` () returns int return 5;
show create function `foo`;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
foo CREATE DEFINER=`root`@`localhost` FUNCTION `foo`() RETURNS int(11)
-return 5
+return 5 latin1 latin1_swedish_ci latin1_swedish_ci
SET @@SQL_MODE='ANSI_QUOTES';
show create function `foo`;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
foo CREATE DEFINER=`root`@`localhost` FUNCTION `foo`() RETURNS int(11)
-return 5
+return 5 latin1 latin1_swedish_ci latin1_swedish_ci
drop function `foo`;
create function `foo` () returns int return 5;
show create function `foo`;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
foo ANSI_QUOTES CREATE DEFINER="root"@"localhost" FUNCTION "foo"() RETURNS int(11)
-return 5
+return 5 latin1 latin1_swedish_ci latin1_swedish_ci
SET @@SQL_MODE='';
show create function `foo`;
-Function sql_mode Create Function
+Function sql_mode Create Function character_set_client collation_connection Database Collation
foo ANSI_QUOTES CREATE DEFINER="root"@"localhost" FUNCTION "foo"() RETURNS int(11)
-return 5
+return 5 latin1 latin1_swedish_ci latin1_swedish_ci
drop function `foo`;
SET @@SQL_MODE='';
create table t1 (a int);
create table t2 (a int);
create view v1 as select a from t1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` latin1 latin1_swedish_ci
SET @@SQL_MODE='ANSI_QUOTES';
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER="root"@"localhost" SQL SECURITY DEFINER VIEW "v1" AS select "t1"."a" AS "a" from "t1"
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER="root"@"localhost" SQL SECURITY DEFINER VIEW "v1" AS select "t1"."a" AS "a" from "t1" latin1 latin1_swedish_ci
create view v2 as select a from t2 where a in (select a from v1);
drop view v2, v1;
drop table t1, t2;
@@ -493,9 +475,55 @@ set sql_mode=16384+(65536*4);
select @@sql_mode;
@@sql_mode
REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_TABLE_OPTIONS,ANSI
-set sql_mode=2147483648;
-ERROR 42000: Variable 'sql_mode' can't be set to the value of '2147483648'
+set sql_mode=2147483648*2;
+ERROR 42000: Variable 'sql_mode' can't be set to the value of '4294967296'
select @@sql_mode;
@@sql_mode
REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_TABLE_OPTIONS,ANSI
+set sql_mode=PAD_CHAR_TO_FULL_LENGTH;
+create table t1 (a int auto_increment primary key, b char(5));
+insert into t1 (b) values('a'),('b\t'),('c ');
+select concat('x',b,'x') from t1;
+concat('x',b,'x')
+xa x
+xb x
+xc x
+set sql_mode=0;
+select concat('x',b,'x') from t1;
+concat('x',b,'x')
+xax
+xb x
+xcx
+drop table t1;
SET @@SQL_MODE=@OLD_SQL_MODE;
+create user mysqltest_32753@localhost;
+set @OLD_SQL_MODE=@@SESSION.SQL_MODE;
+set session sql_mode='PAD_CHAR_TO_FULL_LENGTH';
+flush privileges;
+select current_user();
+current_user()
+mysqltest_32753@localhost
+set session sql_mode=@OLD_SQL_MODE;
+flush privileges;
+drop user mysqltest_32753@localhost;
+DROP TABLE IF EXISTS t1,t2;
+CREATE USER 'user_PCTFL'@'localhost' identified by 'PWD';
+CREATE USER 'user_no_PCTFL'@'localhost' identified by 'PWD';
+CREATE TABLE t1 (f1 BIGINT);
+CREATE TABLE t2 (f1 CHAR(3) NOT NULL, f2 CHAR(20));
+GRANT ALL ON t1 TO 'user_PCTFL'@'localhost','user_no_PCTFL'@'localhost';
+GRANT SELECT(f1) ON t2 TO 'user_PCTFL'@'localhost','user_no_PCTFL'@'localhost';
+SET @OLD_SQL_MODE = @@SESSION.SQL_MODE;
+SET SESSION SQL_MODE = 'PAD_CHAR_TO_FULL_LENGTH';
+DROP USER 'user_PCTFL'@'localhost';
+SET SESSION SQL_MODE = @OLD_SQL_MODE;
+DROP USER 'user_no_PCTFL'@'localhost';
+FLUSH PRIVILEGES;
+SELECT * FROM mysql.db WHERE Host = 'localhost' AND User LIKE 'user_%PCTFL';
+Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv Event_priv Trigger_priv
+SELECT * FROM mysql.tables_priv WHERE Host = 'localhost' AND User LIKE 'user_%PCTFL';
+Host Db User Table_name Grantor Timestamp Table_priv Column_priv
+SELECT * FROM mysql.columns_priv WHERE Host = 'localhost' AND User LIKE 'user_%PCTFL';
+Host Db User Table_name Column_name Timestamp Column_priv
+DROP TABLE t1;
+DROP TABLE t2;
diff --git a/mysql-test/r/ssl.result b/mysql-test/r/ssl.result
index cd8bf52139e..9ad515a53a3 100644
--- a/mysql-test/r/ssl.result
+++ b/mysql-test/r/ssl.result
@@ -145,9 +145,9 @@ explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
explain select fld3 from t2 use index (not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
@@ -608,11 +608,11 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index period period 4 NULL 41810
+1 SIMPLE t3 index period period 4 NULL 1
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index period period 4 NULL 41810
+1 SIMPLE t1 index period period 4 NULL 1
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
@@ -1432,7 +1432,7 @@ companynr companynr
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Using join buffer
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
@@ -1505,10 +1505,10 @@ select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1)
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 100.00 Using where
Warnings:
-Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
+Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> ''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
diff --git a/mysql-test/r/ssl_compress.result b/mysql-test/r/ssl_compress.result
index 78e83dabdd5..1bd427a65e2 100644
--- a/mysql-test/r/ssl_compress.result
+++ b/mysql-test/r/ssl_compress.result
@@ -148,9 +148,9 @@ explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
explain select fld3 from t2 use index (not_used);
-ERROR HY000: Key 'not_used' doesn't exist in table 't2'
+ERROR 42000: Key 'not_used' doesn't exist in table 't2'
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
@@ -611,11 +611,11 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 index period period 4 NULL 41810
+1 SIMPLE t3 index period period 4 NULL 1
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index period period 4 NULL 41810
+1 SIMPLE t1 index period period 4 NULL 1
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
@@ -1435,7 +1435,7 @@ companynr companynr
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where; Using join buffer
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
@@ -1508,10 +1508,10 @@ select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1)
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 100.00 Using where
Warnings:
-Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
+Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> ''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
diff --git a/mysql-test/r/status.result b/mysql-test/r/status.result
index 971e399a3b6..ce3acba9b8a 100644
--- a/mysql-test/r/status.result
+++ b/mysql-test/r/status.result
@@ -1,47 +1,107 @@
+set @old_concurrent_insert= @@global.concurrent_insert;
+set @@global.concurrent_insert= 0;
+SET @old_log_output = @@global.log_output;
+SET GLOBAL LOG_OUTPUT = 'FILE';
flush status;
show status like 'Table_lock%';
Variable_name Value
Table_locks_immediate 0
Table_locks_waited 0
-SET SQL_LOG_BIN=0;
+select * from information_schema.session_status where variable_name like 'Table_lock%';
+VARIABLE_NAME VARIABLE_VALUE
+TABLE_LOCKS_IMMEDIATE 0
+TABLE_LOCKS_WAITED 0
+# Switched to connection: con1
+set sql_log_bin=0;
+set @old_general_log = @@global.general_log;
+set global general_log = 'OFF';
drop table if exists t1;
create table t1(n int) engine=myisam;
insert into t1 values(1);
+select 1;
+1
+1
+# Switched to connection: con2
lock tables t1 read;
unlock tables;
lock tables t1 read;
+# Switched to connection: con1
update t1 set n = 3;
+# Switched to connection: con2
unlock tables;
-show status like 'Table_lock%';
+# Switched to connection: con1
+show status like 'Table_locks_waited';
Variable_name Value
-Table_locks_immediate 3
Table_locks_waited 1
drop table t1;
+set global general_log = @old_general_log;
+# Switched to connection: default
select 1;
1
1
show status like 'last_query_cost';
Variable_name Value
Last_query_cost 0.000000
+create table t1 (a int);
+insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
+insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
+insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
+insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
+insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
+select * from t1 where a=6;
+a
+6
+6
+6
+6
+6
+show status like 'last_query_cost';
+Variable_name Value
+Last_query_cost 12.084449
+show status like 'last_query_cost';
+Variable_name Value
+Last_query_cost 12.084449
+select 1;
+1
+1
+show status like 'last_query_cost';
+Variable_name Value
+Last_query_cost 0.000000
+drop table t1;
FLUSH STATUS;
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 1
+SELECT * FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME LIKE 'max_used_connections';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_USED_CONNECTIONS 1
SET @save_thread_cache_size=@@thread_cache_size;
SET GLOBAL thread_cache_size=3;
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 3
+SELECT * FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME LIKE 'max_used_connections';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_USED_CONNECTIONS 3
FLUSH STATUS;
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 2
+SELECT * FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME LIKE 'max_used_connections';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_USED_CONNECTIONS 2
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 3
+SELECT * FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME LIKE 'max_used_connections';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_USED_CONNECTIONS 3
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 4
+SELECT * FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME LIKE 'max_used_connections';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_USED_CONNECTIONS 4
SET GLOBAL thread_cache_size=@save_thread_cache_size;
CREATE TABLE t1 ( a INT );
INSERT INTO t1 VALUES (1), (2);
@@ -91,6 +151,68 @@ SHOW SESSION STATUS LIKE 'Last_query_cost';
Variable_name Value
Last_query_cost 4.805836
DROP TABLE t1;
+show status like 'com_show_status';
+Variable_name Value
+Com_show_status 3
+show status like 'hand%write%';
+Variable_name Value
+Handler_write 0
+show status like '%tmp%';
+Variable_name Value
+Created_tmp_disk_tables 0
+Created_tmp_files 0
+Created_tmp_tables 0
+show status like 'hand%write%';
+Variable_name Value
+Handler_write 0
+show status like '%tmp%';
+Variable_name Value
+Created_tmp_disk_tables 0
+Created_tmp_files 0
+Created_tmp_tables 0
+show status like 'com_show_status';
+Variable_name Value
+Com_show_status 8
+rnd_diff tmp_table_diff
+20 8
+flush status;
+show status like 'Com%function';
+Variable_name Value
+Com_alter_function 0
+Com_create_function 0
+Com_drop_function 0
+create function f1 (x INTEGER) returns integer
+begin
+declare ret integer;
+set ret = x * 10;
+return ret;
+end //
+drop function f1;
+show status like 'Com%function';
+Variable_name Value
+Com_alter_function 0
+Com_create_function 1
+Com_drop_function 1
+create database db37908;
+create table db37908.t1(f1 int);
+insert into db37908.t1 values(1);
+grant usage,execute on test.* to mysqltest_1@localhost;
+create procedure proc37908() begin select 1; end |
+create function func37908() returns int sql security invoker
+return (select * from db37908.t1 limit 1)|
+select * from db37908.t1;
+ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't1'
+show status where variable_name ='uptime' and 2 in (select * from db37908.t1);
+ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't1'
+show procedure status where name ='proc37908' and 1 in (select f1 from db37908.t1);
+ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't1'
+show function status where name ='func37908' and 1 in (select func37908());
+ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't1'
+drop database db37908;
+drop procedure proc37908;
+drop function func37908;
+REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_1@localhost;
+DROP USER mysqltest_1@localhost;
DROP PROCEDURE IF EXISTS p1;
DROP FUNCTION IF EXISTS f1;
CREATE FUNCTION f1() RETURNS INTEGER
@@ -116,3 +238,5 @@ SELECT 9;
9
DROP PROCEDURE p1;
DROP FUNCTION f1;
+set @@global.concurrent_insert= @old_concurrent_insert;
+SET GLOBAL log_output = @old_log_output;
diff --git a/mysql-test/r/status2.result b/mysql-test/r/status2.result
index 7e895381a44..146fb2adbaf 100644
--- a/mysql-test/r/status2.result
+++ b/mysql-test/r/status2.result
@@ -2,10 +2,7 @@
# Bug#24289 Status Variable "Questions" gets wrong values with Stored Routines
#
FLUSH STATUS;
-DROP TABLE IF EXISTS t1,t2;
-DROP PROCEDURE IF EXISTS p1;
-DROP FUNCTION IF EXISTS f1;
-CREATE FUNCTION f1() RETURNS INTEGER
+CREATE FUNCTION testQuestion() RETURNS INTEGER
BEGIN
DECLARE foo INTEGER;
DECLARE bar INTEGER;
@@ -13,25 +10,34 @@ SET foo=1;
SET bar=2;
RETURN foo;
END $$
-CREATE PROCEDURE p1()
+CREATE PROCEDURE testQuestion2()
BEGIN
SELECT 1;
END $$
+DROP TABLE IF EXISTS t1,t2;
CREATE TABLE t1 (c1 INT);
CREATE TABLE t2 (c1 INT);
-INSERT INTO t1 VALUES (1);
+CREATE EVENT ev1 ON SCHEDULE EVERY 1 SECOND
+DO INSERT INTO t1 VALUES(1);
+Assert Questions == 7
+SHOW STATUS LIKE 'Questions';
+Variable_name Value
+Questions 7
+SELECT testQuestion();
+testQuestion()
+1
Assert Questions == 9
SHOW STATUS LIKE 'Questions';
Variable_name Value
Questions 9
-SELECT f1();
-f1()
+CALL testQuestion2();
+1
1
Assert Questions == 11
SHOW STATUS LIKE 'Questions';
Variable_name Value
Questions 11
-CALL p1();
+SELECT 1;
1
1
Assert Questions == 13
@@ -41,24 +47,27 @@ Questions 13
SELECT 1;
1
1
-Assert Questions == 15
+Assert Questions == 14
SHOW STATUS LIKE 'Questions';
Variable_name Value
-Questions 15
-FLUSH STATUS;
-SELECT 1;
-1
-1
+Questions 14
+CREATE TRIGGER trigg1 AFTER INSERT ON t1
+FOR EACH ROW BEGIN
+INSERT INTO t2 VALUES (1);
+END;
+$$
Assert Questions == 16
SHOW STATUS LIKE 'Questions';
Variable_name Value
Questions 16
-Global status updated; Assert diff == 4
-FLUSH STATUS;
-SELECT 4;
-4
-4
+INSERT INTO t1 VALUES (1);
+Assert Questions == 18
+SHOW STATUS LIKE 'Questions';
+Variable_name Value
+Questions 18
+DROP PROCEDURE testQuestion2;
+DROP TRIGGER trigg1;
+DROP FUNCTION testQuestion;
+DROP EVENT ev1;
DROP TABLE t1,t2;
-DROP PROCEDURE p1;
-DROP FUNCTION f1;
End of 6.0 tests
diff --git a/mysql-test/r/strict.result b/mysql-test/r/strict.result
index c31b5ea2189..241f4198bf7 100644
--- a/mysql-test/r/strict.result
+++ b/mysql-test/r/strict.result
@@ -215,11 +215,11 @@ ERROR 22007: Incorrect date value: '2004-10-00 15:30:00' for column 'col1' at ro
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('31.9.2004 15.30','%d.%m.%Y %H.%i'));
ERROR 22007: Incorrect date value: '2004-09-31 15:30:00' for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_date
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('29.02.2003 15.30','%d.%m.%Y %H.%i'));
ERROR 22007: Incorrect date value: '2003-02-29 15:30:00' for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('15.13.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_date
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('00.00.0000','%d.%m.%Y'));
ERROR 22007: Incorrect date value: '0000-00-00' for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('31.10.0000 15.30','%d.%m.%Y %H.%i'));
@@ -230,11 +230,11 @@ ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col2' a
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('31.9.2004 15.30','%d.%m.%Y %H.%i'));
ERROR 22007: Incorrect datetime value: '2004-09-31 15:30:00' for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_date
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('29.02.2003 15.30','%d.%m.%Y %H.%i'));
ERROR 22007: Incorrect datetime value: '2003-02-29 15:30:00' for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('15.13.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_date
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('00.00.0000','%d.%m.%Y'));
ERROR 22007: Incorrect datetime value: '0000-00-00' for column 'col2' at row 1
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('31.10.0000 15.30','%d.%m.%Y %H.%i'));
@@ -246,11 +246,11 @@ ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col3' a
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('31.9.2004 15.30','%d.%m.%Y %H.%i'));
ERROR 22007: Incorrect datetime value: '2004-09-31 15:30:00' for column 'col3' at row 1
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_date
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('29.02.2003 15.30','%d.%m.%Y %H.%i'));
ERROR 22007: Incorrect datetime value: '2003-02-29 15:30:00' for column 'col3' at row 1
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('15.13.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_date
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('00.00.0000','%d.%m.%Y'));
ERROR 22007: Incorrect datetime value: '0000-00-00' for column 'col3' at row 1
drop table t1;
@@ -264,14 +264,14 @@ ERROR 22007: Incorrect date value: '2004-10-00' for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(CAST('2004-0-10' AS DATE));
ERROR 22007: Incorrect date value: '2004-00-10' for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(CAST('0000-00-00' AS DATE));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
INSERT INTO t1 (col2) VALUES(CAST('0000-10-31 15:30' AS DATETIME));
INSERT INTO t1 (col2) VALUES(CAST('2004-10-0 15:30' AS DATETIME));
ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(CAST('2004-0-10 15:30' AS DATETIME));
ERROR 22007: Incorrect datetime value: '2004-00-10 15:30:00' for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(CAST('0000-00-00' AS DATETIME));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
INSERT INTO t1 (col3) VALUES(CAST('0000-10-31 15:30' AS DATETIME));
ERROR 22007: Incorrect datetime value: '0000-10-31 15:30:00' for column 'col3' at row 1
INSERT INTO t1 (col3) VALUES(CAST('2004-10-0 15:30' AS DATETIME));
@@ -279,7 +279,7 @@ ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col3' a
INSERT INTO t1 (col3) VALUES(CAST('2004-0-10 15:30' AS DATETIME));
ERROR 22007: Incorrect datetime value: '2004-00-10 15:30:00' for column 'col3' at row 1
INSERT INTO t1 (col3) VALUES(CAST('0000-00-00' AS DATETIME));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
drop table t1;
CREATE TABLE t1 (col1 date, col2 datetime, col3 timestamp);
INSERT INTO t1 (col1) VALUES (CONVERT('2004-10-15',DATE));
@@ -291,14 +291,14 @@ ERROR 22007: Incorrect date value: '2004-10-00' for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(CONVERT('2004-0-10' , DATE));
ERROR 22007: Incorrect date value: '2004-00-10' for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(CONVERT('0000-00-00',DATE));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
INSERT INTO t1 (col2) VALUES(CONVERT('0000-10-31 15:30',DATETIME));
INSERT INTO t1 (col2) VALUES(CONVERT('2004-10-0 15:30',DATETIME));
ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(CONVERT('2004-0-10 15:30',DATETIME));
ERROR 22007: Incorrect datetime value: '2004-00-10 15:30:00' for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(CONVERT('0000-00-00',DATETIME));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
INSERT INTO t1 (col3) VALUES(CONVERT('0000-10-31 15:30',DATETIME));
ERROR 22007: Incorrect datetime value: '0000-10-31 15:30:00' for column 'col3' at row 1
INSERT INTO t1 (col3) VALUES(CONVERT('2004-10-0 15:30',DATETIME));
@@ -306,7 +306,7 @@ ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col3' a
INSERT INTO t1 (col3) VALUES(CONVERT('2004-0-10 15:30',DATETIME));
ERROR 22007: Incorrect datetime value: '2004-00-10 15:30:00' for column 'col3' at row 1
INSERT INTO t1 (col3) VALUES(CONVERT('0000-00-00',DATETIME));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
drop table t1;
CREATE TABLE t1(col1 TINYINT, col2 TINYINT UNSIGNED);
INSERT INTO t1 VALUES(-128,0),(0,0),(127,255),('-128','0'),('0','0'),('127','255'),(-128.0,0.0),(0.0,0.0),(127.0,255.0);
@@ -318,36 +318,36 @@ Warnings:
Error 1365 Division by 0
Error 1365 Division by 0
INSERT INTO t1 (col1) VALUES(-129);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(128);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(256);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES('-129');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES('128');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES('-1');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES('256');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES(128.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(256.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
SELECT MOD(col1,0) FROM t1 WHERE col1 > 0 LIMIT 1;
MOD(col1,0)
NULL
Warnings:
Error 1365 Division by 0
UPDATE t1 SET col1 = col1 - 50 WHERE col1 < 0;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
UPDATE t1 SET col2=col2 + 50 WHERE col2 > 0;
-ERROR 22003: Out of range value adjusted for column 'col2' at row 3
+ERROR 22003: Out of range value for column 'col2' at row 3
UPDATE t1 SET col1=col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
set @@sql_mode='ERROR_FOR_DIVISION_BY_ZERO';
@@ -381,16 +381,16 @@ INSERT INTO t1 values (1/0,1/0);
set @@sql_mode='ansi,traditional';
INSERT IGNORE INTO t1 VALUES('-129','-1'),('128','256');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES(-129.0,-1.0),(128.0,256.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
UPDATE IGNORE t1 SET col2=1/NULL where col1=0;
SELECT * FROM t1;
col1 col2
@@ -415,33 +415,33 @@ DROP TABLE t1;
CREATE TABLE t1(col1 SMALLINT, col2 SMALLINT UNSIGNED);
INSERT INTO t1 VALUES(-32768,0),(0,0),(32767,65535),('-32768','0'),('32767','65535'),(-32768.0,0.0),(32767.0,65535.0);
INSERT INTO t1 (col1) VALUES(-32769);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(32768);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(65536);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES('-32769');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES('32768');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES('-1');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES('65536');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES(-32769.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(32768.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(65536.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
UPDATE t1 SET col1 = col1 - 50 WHERE col1 < 0;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
UPDATE t1 SET col2 = col2 + 50 WHERE col2 > 0;
-ERROR 22003: Out of range value adjusted for column 'col2' at row 3
+ERROR 22003: Out of range value for column 'col2' at row 3
UPDATE t1 SET col1 = col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
@@ -461,22 +461,22 @@ Error 1365 Division by 0
Error 1365 Division by 0
INSERT IGNORE INTO t1 VALUES(-32769,-1),(32768,65536);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES('-32769','-1'),('32768','65536');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES(-32769,-1.0),(32768.0,65536.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
UPDATE IGNORE t1 SET col2=1/NULL where col1=0;
SELECT * FROM t1;
col1 col2
@@ -499,33 +499,33 @@ DROP TABLE t1;
CREATE TABLE t1 (col1 MEDIUMINT, col2 MEDIUMINT UNSIGNED);
INSERT INTO t1 VALUES(-8388608,0),(0,0),(8388607,16777215),('-8388608','0'),('8388607','16777215'),(-8388608.0,0.0),(8388607.0,16777215.0);
INSERT INTO t1 (col1) VALUES(-8388609);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(8388608);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(16777216);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES('-8388609');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES('8388608');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES('-1');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES('16777216');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES(-8388609.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(8388608.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(16777216.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
UPDATE t1 SET col1 = col1 - 50 WHERE col1 < 0;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
UPDATE t1 SET col2 = col2 + 50 WHERE col2 > 0;
-ERROR 22003: Out of range value adjusted for column 'col2' at row 3
+ERROR 22003: Out of range value for column 'col2' at row 3
UPDATE t1 SET col1 =col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
@@ -545,22 +545,22 @@ Error 1365 Division by 0
Error 1365 Division by 0
INSERT IGNORE INTO t1 VALUES(-8388609,-1),(8388608,16777216);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES('-8388609','-1'),('8388608','16777216');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES(-8388609.0,-1.0),(8388608.0,16777216.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
UPDATE IGNORE t1 SET col2=1/NULL where col1=0;
SELECT * FROM t1;
col1 col2
@@ -583,33 +583,33 @@ DROP TABLE t1;
CREATE TABLE t1 (col1 INT, col2 INT UNSIGNED);
INSERT INTO t1 VALUES(-2147483648,0),(0,0),(2147483647,4294967295),('-2147483648','0'),('2147483647','4294967295'),(-2147483648.0,0.0),(2147483647.0,4294967295.0);
INSERT INTO t1 (col1) VALUES(-2147483649);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(2147643648);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(4294967296);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES('-2147483649');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES('2147643648');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES('-1');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES('4294967296');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES(-2147483649.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(2147643648.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(4294967296.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
UPDATE t1 SET col1 = col1 - 50 WHERE col1 < 0;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
UPDATE t1 SET col2 =col2 + 50 WHERE col2 > 0;
-ERROR 22003: Out of range value adjusted for column 'col2' at row 3
+ERROR 22003: Out of range value for column 'col2' at row 3
UPDATE t1 SET col1 =col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
@@ -629,22 +629,22 @@ Error 1365 Division by 0
Error 1365 Division by 0
INSERT IGNORE INTO t1 values (-2147483649, -1),(2147643648,4294967296);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 values ('-2147483649', '-1'),('2147643648','4294967296');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 values (-2147483649.0, -1.0),(2147643648.0,4294967296.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
UPDATE IGNORE t1 SET col2=1/NULL where col1=0;
SELECT * FROM t1;
col1 col2
@@ -669,29 +669,29 @@ INSERT INTO t1 VALUES(-9223372036854775808,0),(0,0),(9223372036854775807,1844674
INSERT INTO t1 VALUES('-9223372036854775808','0'),('9223372036854775807','18446744073709551615');
INSERT INTO t1 VALUES(-9223372036854774000.0,0.0),(9223372036854775700.0,1844674407370954000.0);
INSERT INTO t1 (col1) VALUES(-9223372036854775809);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(9223372036854775808);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(18446744073709551616);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES('-9223372036854775809');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES('9223372036854775808');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES('-1');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES('18446744073709551616');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES(-9223372036854785809.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col1) VALUES(9223372036854785808.0);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES(-1.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col2) VALUES(18446744073709551616.0);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
UPDATE t1 SET col1 =col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
@@ -711,22 +711,22 @@ Error 1365 Division by 0
Error 1365 Division by 0
INSERT IGNORE INTO t1 VALUES(-9223372036854775809,-1),(9223372036854775808,18446744073709551616);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES('-9223372036854775809','-1'),('9223372036854775808','18446744073709551616');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
INSERT IGNORE INTO t1 VALUES(-9223372036854785809.0,-1.0),(9223372036854785808.0,18446744073709551616.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
-Warning 1264 Out of range value adjusted for column 'col2' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col2' at row 2
UPDATE IGNORE t1 SET col2=1/NULL where col1=0;
SELECT * FROM t1;
col1 col2
@@ -756,29 +756,29 @@ Warnings:
Note 1265 Data truncated for column 'col1' at row 2
Note 1265 Data truncated for column 'col1' at row 4
INSERT INTO t1 VALUES (101.55);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES (101);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES (-101.55);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES (1010.55);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES (1010);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES ('101.55');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES ('101');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES ('-101.55');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES ('-1010.55');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES ('-100E+1');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 VALUES ('-100E');
ERROR HY000: Incorrect decimal value: '-100E' for column 'col1' at row 1
UPDATE t1 SET col1 =col1 * 50000 WHERE col1 =11;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 6
+ERROR 22003: Out of range value for column 'col1' at row 6
UPDATE t1 SET col1 =col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
@@ -797,16 +797,16 @@ Warnings:
Error 1365 Division by 0
INSERT IGNORE INTO t1 VALUES(1000),(-1000);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
INSERT IGNORE INTO t1 VALUES('1000'),('-1000');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
INSERT IGNORE INTO t1 VALUES(1000.0),(-1000.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
UPDATE IGNORE t1 SET col1=1/NULL where col1=0;
SELECT * FROM t1;
col1
@@ -837,15 +837,15 @@ INSERT INTO t1 VALUES (-1.1E-37,0),(+3.4E+38,+3.4E+38);
INSERT INTO t1 VALUES ('-1.1E-37',0),('+3.4E+38','+3.4E+38');
INSERT INTO t1 (col1) VALUES (3E-46);
INSERT INTO t1 (col1) VALUES (+3.4E+39);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES (-1.1E-3);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES ('+3.4E+39');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES ('-1.1E-3');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
UPDATE t1 SET col1 =col1 * 5000 WHERE col1 > 0;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 2
+ERROR 22003: Out of range value for column 'col1' at row 2
UPDATE t1 SET col2 =col2 / 0 WHERE col2 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col2= MOD(col2,0) WHERE col2 > 0;
@@ -864,12 +864,12 @@ Warnings:
Error 1365 Division by 0
INSERT IGNORE INTO t1 VALUES (+3.4E+39,-3.4E+39);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
INSERT IGNORE INTO t1 VALUES ('+3.4E+39','-3.4E+39');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
SELECT * FROM t1;
col1 col2
-1.1e-37 0
@@ -889,13 +889,12 @@ INSERT INTO t1 (col1) VALUES (-2.2E-330);
INSERT INTO t1 (col1) VALUES (+1.7E+309);
Got one of the listed errors
INSERT INTO t1 (col2) VALUES (-1.1E-3);
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
INSERT INTO t1 (col1) VALUES ('+1.8E+309');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
INSERT INTO t1 (col2) VALUES ('-1.2E-3');
-ERROR 22003: Out of range value adjusted for column 'col2' at row 1
+ERROR 22003: Out of range value for column 'col2' at row 1
UPDATE t1 SET col1 =col1 * 5000 WHERE col1 > 0;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 3
UPDATE t1 SET col2 =col2 / 0 WHERE col2 > 0;
ERROR 22012: Division by 0
UPDATE t1 SET col2= MOD(col2,0) WHERE col2 > 0;
@@ -916,17 +915,17 @@ INSERT IGNORE INTO t1 VALUES (+1.9E+309,-1.9E+309);
ERROR 22007: Illegal double '1.9E+309' value found during parsing
INSERT IGNORE INTO t1 VALUES ('+2.0E+309','-2.0E+309');
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
SELECT * FROM t1;
col1 col2
-2.2e-307 0
1e-303 0
-1.7e+308 1.7e+308
+NULL 1.7e+308
-2.2e-307 0
-2e-307 0
-1.7e+308 1.7e+308
+NULL 1.7e+308
0 NULL
2 NULL
NULL NULL
@@ -1013,7 +1012,7 @@ CREATE TABLE t1 (col1 INT NOT NULL default 99, col2 CHAR(6) NOT NULL);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE "t1" (
- "col1" int(11) NOT NULL default '99',
+ "col1" int(11) NOT NULL DEFAULT '99',
"col2" char(6) NOT NULL
)
INSERT INTO t1 VALUES (1, 'hello');
@@ -1070,24 +1069,24 @@ create table t1 (col1 datetime);
insert into t1 values(STR_TO_DATE('31.10.2004 15.30 abc','%d.%m.%Y %H.%i'));
ERROR 22007: Truncated incorrect datetime value: '31.10.2004 15.30 abc'
insert into t1 values(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
-ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
+ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_date
insert into t1 values(STR_TO_DATE('2004.12.12 22:22:33 AM','%Y.%m.%d %r'));
-ERROR HY000: Incorrect time value: '22:22:33 AM' for function str_to_time
+ERROR HY000: Incorrect time value: '22:22:33 AM' for function str_to_date
insert into t1 values(STR_TO_DATE('2004.12.12 abc','%Y.%m.%d %T'));
-ERROR HY000: Incorrect time value: 'abc' for function str_to_time
+ERROR HY000: Incorrect time value: 'abc' for function str_to_date
set sql_mode='';
insert into t1 values(STR_TO_DATE('31.10.2004 15.30 abc','%d.%m.%Y %H.%i'));
Warnings:
Warning 1292 Truncated incorrect datetime value: '31.10.2004 15.30 abc'
insert into t1 values(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
Warnings:
-Error 1411 Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
+Error 1411 Incorrect datetime value: '32.10.2004 15.30' for function str_to_date
insert into t1 values(STR_TO_DATE('2004.12.12 22:22:33 AM','%Y.%m.%d %r'));
Warnings:
-Error 1411 Incorrect time value: '22:22:33 AM' for function str_to_time
+Error 1411 Incorrect time value: '22:22:33 AM' for function str_to_date
insert into t1 values(STR_TO_DATE('2004.12.12 abc','%Y.%m.%d %T'));
Warnings:
-Error 1411 Incorrect time value: 'abc' for function str_to_time
+Error 1411 Incorrect time value: 'abc' for function str_to_date
insert into t1 values(STR_TO_DATE('31.10.2004 15.30','%d.%m.%Y %H.%i'));
insert into t1 values(STR_TO_DATE('2004.12.12 11:22:33 AM','%Y.%m.%d %r'));
insert into t1 values(STR_TO_DATE('2004.12.12 10:22:59','%Y.%m.%d %T'));
@@ -1105,9 +1104,9 @@ select count(*) from t1 where STR_TO_DATE('2004.12.12 10:22:61','%Y.%m.%d %T') I
count(*)
7
Warnings:
-Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_time
-Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_time
-Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_time
+Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_date
+Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_date
+Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_date
drop table t1;
create table t1 (col1 char(3), col2 integer);
insert into t1 (col1) values (cast(1000 as char(3)));
@@ -1137,19 +1136,19 @@ ERROR 22007: Incorrect date value: '0' for column 'col1' at row 1
insert into t1 values (0.0,0.0,0.0);
ERROR 22007: Incorrect date value: '0' for column 'col1' at row 1
insert into t1 (col1) values (convert('0000-00-00',date));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
insert into t1 (col1) values (cast('0000-00-00' as date));
-ERROR 22007: Truncated incorrect datetime value: '0000-00-00'
+ERROR 22007: Incorrect datetime value: '0000-00-00'
set sql_mode='no_zero_date';
insert into t1 values (0,0,0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
Warning 1265 Data truncated for column 'col3' at row 1
insert into t1 values (0.0,0.0,0.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col2' at row 1
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col2' at row 1
Warning 1265 Data truncated for column 'col3' at row 1
drop table t1;
set sql_mode='traditional';
@@ -1164,15 +1163,15 @@ Warnings:
Warning 1265 Data truncated for column 'col1' at row 1
insert ignore into t1 (col1) values (cast('0000-00-00' as date));
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00'
+Warning 1292 Incorrect datetime value: '0000-00-00'
insert into t1 select * from t1;
ERROR 22007: Incorrect date value: '0000-00-00' for column 'col1' at row 1
alter table t1 modify col1 datetime;
ERROR 22007: Incorrect datetime value: '0000-00-00' for column 'col1' at row 1
alter ignore table t1 modify col1 datetime;
Warnings:
-Warning 1264 Out of range value adjusted for column 'col1' at row 1
-Warning 1264 Out of range value adjusted for column 'col1' at row 2
+Warning 1264 Out of range value for column 'col1' at row 1
+Warning 1264 Out of range value for column 'col1' at row 2
insert into t1 select * from t1;
ERROR 22007: Incorrect datetime value: '0000-00-00 00:00:00' for column 'col1' at row 1
select * from t1;
@@ -1270,9 +1269,9 @@ alter table t1 add primary key(a);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL default '0',
- `b` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- PRIMARY KEY (`a`)
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1(a int, b timestamp default 20050102030405);
@@ -1280,9 +1279,9 @@ alter table t1 add primary key(a);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL default '0',
- `b` timestamp NOT NULL default '2005-01-02 03:04:05',
- PRIMARY KEY (`a`)
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` timestamp NOT NULL DEFAULT '2005-01-02 03:04:05',
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
set @@sql_mode='traditional';
@@ -1306,7 +1305,7 @@ set @@sql_mode='traditional';
create table t1 (i int)
comment '123456789*123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*123456789*';
-ERROR HY000: Too long comment for table 't1'
+ERROR HY000: Comment for table 't1' is too long (max = 60)
create table t1 (
i int comment
'123456789*123456789*123456789*123456789*
@@ -1316,7 +1315,7 @@ i int comment
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*');
-ERROR HY000: Too long comment for field 'i'
+ERROR HY000: Comment for field 'i' is too long (max = 255)
set @@sql_mode= @org_mode;
create table t1
(i int comment
@@ -1328,7 +1327,7 @@ create table t1
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*');
Warnings:
-Warning 1105 Unknown error
+Warning 1629 Comment for field 'i' is too long (max = 255)
select column_name, column_comment from information_schema.columns where
table_schema = 'test' and table_name = 't1';
column_name column_comment
@@ -1345,14 +1344,14 @@ comment '123456789*123456789*123456789*123456789*123456789*123456789*';
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='123456789*123456789*123456789*123456789*123456789*123456789*'
drop table t1;
CREATE TABLE t3 (f1 INT) COMMENT 'כקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחן';
SHOW CREATE TABLE t3;
Table Create Table
t3 CREATE TABLE `t3` (
- `f1` int(11) default NULL
+ `f1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='כקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחןכקבהחן'
DROP TABLE t3;
set sql_mode= 'traditional';
diff --git a/mysql-test/r/strict_autoinc_1myisam.result b/mysql-test/r/strict_autoinc_1myisam.result
index 90a69bedc74..afcccb1c40f 100644
--- a/mysql-test/r/strict_autoinc_1myisam.result
+++ b/mysql-test/r/strict_autoinc_1myisam.result
@@ -7,21 +7,21 @@ primary key (`a`)
) engine = 'MYISAM' ;
set @@sql_mode='strict_all_tables';
insert into t1 values(1000);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
+ERROR 22003: Out of range value for column 'a' at row 1
select count(*) from t1;
count(*)
0
set auto_increment_increment=1000;
set auto_increment_offset=700;
insert into t1 values(null);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
+ERROR 22003: Out of range value for column 'a' at row 1
select count(*) from t1;
count(*)
0
set @@sql_mode=@org_mode;
insert into t1 values(null);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
127
diff --git a/mysql-test/r/strict_autoinc_2innodb.result b/mysql-test/r/strict_autoinc_2innodb.result
index 8a5243173e4..e534286e2a2 100644
--- a/mysql-test/r/strict_autoinc_2innodb.result
+++ b/mysql-test/r/strict_autoinc_2innodb.result
@@ -7,21 +7,21 @@ primary key (`a`)
) engine = 'InnoDB' ;
set @@sql_mode='strict_all_tables';
insert into t1 values(1000);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
+ERROR 22003: Out of range value for column 'a' at row 1
select count(*) from t1;
count(*)
0
set auto_increment_increment=1000;
set auto_increment_offset=700;
insert into t1 values(null);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
+ERROR 22003: Out of range value for column 'a' at row 1
select count(*) from t1;
count(*)
0
set @@sql_mode=@org_mode;
insert into t1 values(null);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
127
diff --git a/mysql-test/r/strict_autoinc_3heap.result b/mysql-test/r/strict_autoinc_3heap.result
index 7dc48357c46..0a31da04460 100644
--- a/mysql-test/r/strict_autoinc_3heap.result
+++ b/mysql-test/r/strict_autoinc_3heap.result
@@ -7,21 +7,21 @@ primary key (`a`)
) engine = 'MEMORY' ;
set @@sql_mode='strict_all_tables';
insert into t1 values(1000);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
+ERROR 22003: Out of range value for column 'a' at row 1
select count(*) from t1;
count(*)
0
set auto_increment_increment=1000;
set auto_increment_offset=700;
insert into t1 values(null);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
+ERROR 22003: Out of range value for column 'a' at row 1
select count(*) from t1;
count(*)
0
set @@sql_mode=@org_mode;
insert into t1 values(null);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
127
diff --git a/mysql-test/r/strict_autoinc_4bdb.result b/mysql-test/r/strict_autoinc_4bdb.result
deleted file mode 100644
index 89c4d2537f5..00000000000
--- a/mysql-test/r/strict_autoinc_4bdb.result
+++ /dev/null
@@ -1,28 +0,0 @@
-drop table if exists t1;
-set @org_mode=@@sql_mode;
-create table t1
-(
-`a` tinyint(4) NOT NULL auto_increment,
-primary key (`a`)
-) engine = 'BDB' ;
-set @@sql_mode='strict_all_tables';
-insert into t1 values(1000);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
-select count(*) from t1;
-count(*)
-0
-set auto_increment_increment=1000;
-set auto_increment_offset=700;
-insert into t1 values(null);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
-select count(*) from t1;
-count(*)
-0
-set @@sql_mode=@org_mode;
-insert into t1 values(null);
-Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-select * from t1;
-a
-127
-drop table t1;
diff --git a/mysql-test/r/strict_autoinc_5ndb.result b/mysql-test/r/strict_autoinc_5ndb.result
deleted file mode 100644
index 715f9a4b98b..00000000000
--- a/mysql-test/r/strict_autoinc_5ndb.result
+++ /dev/null
@@ -1,28 +0,0 @@
-drop table if exists t1;
-set @org_mode=@@sql_mode;
-create table t1
-(
-`a` tinyint(4) NOT NULL auto_increment,
-primary key (`a`)
-) engine = 'NDB' ;
-set @@sql_mode='strict_all_tables';
-insert into t1 values(1000);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
-select count(*) from t1;
-count(*)
-0
-set auto_increment_increment=1000;
-set auto_increment_offset=700;
-insert into t1 values(null);
-ERROR 22003: Out of range value adjusted for column 'a' at row 1
-select count(*) from t1;
-count(*)
-0
-set @@sql_mode=@org_mode;
-insert into t1 values(null);
-Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-select * from t1;
-a
-127
-drop table t1;
diff --git a/mysql-test/r/subselect.result b/mysql-test/r/subselect.result
index eacde19ab1c..788abbd2577 100644
--- a/mysql-test/r/subselect.result
+++ b/mysql-test/r/subselect.result
@@ -3,8 +3,8 @@ select (select 2);
(select 2)
2
explain extended select (select 2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1249 Select 2 was reduced during optimization
Note 1003 select 2 AS `(select 2)`
@@ -13,10 +13,10 @@ SELECT (SELECT 1) UNION SELECT (SELECT 2);
1
2
explain extended SELECT (SELECT 1) UNION SELECT (SELECT 2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
-3 UNION NULL NULL NULL NULL NULL NULL NULL No tables used
-NULL UNION RESULT <union1,3> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+3 UNION NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+NULL UNION RESULT <union1,3> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1249 Select 2 was reduced during optimization
Note 1249 Select 4 was reduced during optimization
@@ -25,11 +25,11 @@ SELECT (SELECT (SELECT 0 UNION SELECT 0));
(SELECT (SELECT 0 UNION SELECT 0))
0
explain extended SELECT (SELECT (SELECT 0 UNION SELECT 0));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
-3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
-4 UNION NULL NULL NULL NULL NULL NULL NULL No tables used
-NULL UNION RESULT <union3,4> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+3 SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+4 UNION NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+NULL UNION RESULT <union3,4> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1249 Select 2 was reduced during optimization
Note 1003 select (select 0 AS `0` union select 0 AS `0`) AS `(SELECT (SELECT 0 UNION SELECT 0))`
@@ -43,10 +43,10 @@ SELECT (SELECT 1),MAX(1) FROM (SELECT 1) as a;
SELECT (SELECT a) as a;
ERROR 42S22: Reference 'a' not supported (forward reference in item list)
EXPLAIN EXTENDED SELECT 1 FROM (SELECT 1 as a) as b HAVING (SELECT a)=1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> system NULL NULL NULL NULL 1
-3 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
-2 DERIVED NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> system NULL NULL NULL NULL 1 100.00
+3 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+2 DERIVED NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1276 Field or reference 'b.a' of SELECT #3 was resolved in SELECT #1
Note 1276 Field or reference 'b.a' of SELECT #3 was resolved in SELECT #1
@@ -180,12 +180,12 @@ a b
4 8
3 8
explain extended (select * from t2 where t2.b=(select a from t3 order by 1 desc limit 1)) union (select * from t4 where t4.b=(select max(t2.a)*4 from t2) order by a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using where
-2 SUBQUERY t3 ALL NULL NULL NULL NULL 3 Using filesort
-3 UNION t4 ALL NULL NULL NULL NULL 3 Using where
-4 SUBQUERY t2 ALL NULL NULL NULL NULL 2
-NULL UNION RESULT <union1,3> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00 Using where
+2 SUBQUERY t3 ALL NULL NULL NULL NULL 3 100.00 Using filesort
+3 UNION t4 ALL NULL NULL NULL NULL 3 100.00 Using where
+4 SUBQUERY t2 ALL NULL NULL NULL NULL 2 100.00
+NULL UNION RESULT <union1,3> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1003 (select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`b` = (select `test`.`t3`.`a` AS `a` from `test`.`t3` order by 1 desc limit 1))) union (select `test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t4` where (`test`.`t4`.`b` = (select (max(`test`.`t2`.`a`) * 4) AS `max(t2.a)*4` from `test`.`t2`)) order by `a`)
select (select a from t3 where a<t2.a*4 order by 1 desc limit 1), a from t2;
@@ -198,10 +198,10 @@ select (select t3.a from t3 where a<8 order by 1 desc limit 1), a from
7 2
explain extended select (select t3.a from t3 where a<8 order by 1 desc limit 1), a from
(select * from t2 where a>1) as tt;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived3> system NULL NULL NULL NULL 1
-3 DERIVED t2 ALL NULL NULL NULL NULL 2 Using where
-2 SUBQUERY t3 ALL NULL NULL NULL NULL 3 Using where; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived3> system NULL NULL NULL NULL 1 100.00
+3 DERIVED t2 ALL NULL NULL NULL NULL 2 100.00 Using where
+2 SUBQUERY t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using filesort
Warnings:
Note 1003 select (select `test`.`t3`.`a` AS `a` from `test`.`t3` where (`test`.`t3`.`a` < 8) order by 1 desc limit 1) AS `(select t3.a from t3 where a<8 order by 1 desc limit 1)`,'2' AS `a` from (select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` where (`test`.`t2`.`a` > 1)) `tt`
select * from t1 where t1.a=(select t2.a from t2 where t2.b=(select max(a) from t3) order by 1 desc limit 1);
@@ -218,10 +218,10 @@ b (select avg(t2.a+(select min(t3.a) from t3 where t3.a >= t4.a)) from t2)
8 4.5000
9 7.5000
explain extended select b,(select avg(t2.a+(select min(t3.a) from t3 where t3.a >= t4.a)) from t2) from t4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t4 ALL NULL NULL NULL NULL 3
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2
-3 DEPENDENT SUBQUERY t3 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t4 ALL NULL NULL NULL NULL 3 100.00
+2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 100.00
+3 DEPENDENT SUBQUERY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t4.a' of SELECT #3 was resolved in SELECT #1
Note 1003 select `test`.`t4`.`b` AS `b`,(select avg((`test`.`t2`.`a` + (select min(`test`.`t3`.`a`) AS `min(t3.a)` from `test`.`t3` where (`test`.`t3`.`a` >= `test`.`t4`.`a`)))) AS `avg(t2.a+(select min(t3.a) from t3 where t3.a >= t4.a))` from `test`.`t2`) AS `(select avg(t2.a+(select min(t3.a) from t3 where t3.a >= t4.a)) from t2)` from `test`.`t4`
@@ -266,9 +266,9 @@ a
6
7
explain extended select * from t3 where a >= any (select b from t2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3 Using where
-2 SUBQUERY t2 ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
+2 SUBQUERY t2 ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((`test`.`t3`.`a` >= (select min(`test`.`t2`.`b`) from `test`.`t2`)))
select * from t3 where a >= all (select b from t2);
@@ -306,11 +306,11 @@ select (select a from t1 where t1.a=t2.a union select a from t5 where t5.a=t2.a)
NULL 1
2 2
explain extended select (select a from t1 where t1.a=t2.a union select a from t5 where t5.a=t2.a), a from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2
-2 DEPENDENT SUBQUERY t1 system NULL NULL NULL NULL 1
-3 DEPENDENT UNION t5 ALL NULL NULL NULL NULL 2 Using where
-NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00
+2 DEPENDENT SUBQUERY t1 system NULL NULL NULL NULL 1 100.00
+3 DEPENDENT UNION t5 ALL NULL NULL NULL NULL 2 100.00 Using where
+NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1276 Field or reference 'test.t2.a' of SELECT #2 was resolved in SELECT #1
Note 1276 Field or reference 'test.t2.a' of SELECT #3 was resolved in SELECT #1
@@ -327,9 +327,9 @@ patient_uq clinic_uq
1 2
2 2
explain extended select * from t6 where exists (select * from t7 where uq = clinic_uq);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t6 ALL NULL NULL NULL NULL 4 Using where
-2 DEPENDENT SUBQUERY t7 eq_ref PRIMARY PRIMARY 4 test.t6.clinic_uq 1 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t6 ALL NULL NULL NULL NULL 4 100.00 Using where
+2 DEPENDENT SUBQUERY t7 eq_ref PRIMARY PRIMARY 4 test.t6.clinic_uq 1 100.00 Using index
Warnings:
Note 1276 Field or reference 'test.t6.clinic_uq' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t6`.`patient_uq` AS `patient_uq`,`test`.`t6`.`clinic_uq` AS `clinic_uq` from `test`.`t6` where exists(select 1 AS `Not_used` from `test`.`t7` where (`test`.`t7`.`uq` = `test`.`t6`.`clinic_uq`))
@@ -361,11 +361,11 @@ INSERT INTO t8 (pseudo,email) VALUES ('joce','test');
INSERT INTO t8 (pseudo,email) VALUES ('joce1','test1');
INSERT INTO t8 (pseudo,email) VALUES ('2joce1','2test1');
EXPLAIN EXTENDED SELECT pseudo,(SELECT email FROM t8 WHERE pseudo=(SELECT pseudo FROM t8 WHERE pseudo='joce')) FROM t8 WHERE pseudo=(SELECT pseudo FROM t8 WHERE pseudo='joce');
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t8 const PRIMARY PRIMARY 37 const 1 Using index
-4 SUBQUERY t8 const PRIMARY PRIMARY 37 1 Using index
-2 SUBQUERY t8 const PRIMARY PRIMARY 37 const 1
-3 SUBQUERY t8 const PRIMARY PRIMARY 37 1 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t8 const PRIMARY PRIMARY 37 const 1 100.00 Using index
+4 SUBQUERY t8 const PRIMARY PRIMARY 37 1 100.00 Using index
+2 SUBQUERY t8 const PRIMARY PRIMARY 37 const 1 100.00
+3 SUBQUERY t8 const PRIMARY PRIMARY 37 1 100.00 Using index
Warnings:
Note 1003 select 'joce' AS `pseudo`,(select 'test' AS `email` from `test`.`t8` where 1) AS `(SELECT email FROM t8 WHERE pseudo=(SELECT pseudo FROM t8 WHERE pseudo='joce'))` from `test`.`t8` where 1
SELECT pseudo FROM t8 WHERE pseudo=(SELECT pseudo,email FROM
@@ -390,16 +390,16 @@ KEY `topic` (`topic`)
INSERT INTO t1 (topic,date,pseudo) VALUES
('43506','2002-10-02','joce'),('40143','2002-08-03','joce');
EXPLAIN EXTENDED SELECT DISTINCT date FROM t1 WHERE date='2002-08-03';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 43 NULL 2 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 index NULL PRIMARY 43 NULL 2 100.00 Using where; Using index
Warnings:
-Note 1003 select distinct `test`.`t1`.`date` AS `date` from `test`.`t1` where (`test`.`t1`.`date` = _latin1'2002-08-03')
+Note 1003 select distinct `test`.`t1`.`date` AS `date` from `test`.`t1` where (`test`.`t1`.`date` = '2002-08-03')
EXPLAIN EXTENDED SELECT (SELECT DISTINCT date FROM t1 WHERE date='2002-08-03');
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
-2 SUBQUERY t1 index NULL PRIMARY 43 NULL 2 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+2 SUBQUERY t1 index NULL PRIMARY 43 NULL 2 100.00 Using where; Using index
Warnings:
-Note 1003 select (select distinct `test`.`t1`.`date` AS `date` from `test`.`t1` where (`test`.`t1`.`date` = _latin1'2002-08-03')) AS `(SELECT DISTINCT date FROM t1 WHERE date='2002-08-03')`
+Note 1003 select (select distinct `test`.`t1`.`date` AS `date` from `test`.`t1` where (`test`.`t1`.`date` = '2002-08-03')) AS `(SELECT DISTINCT date FROM t1 WHERE date='2002-08-03')`
SELECT DISTINCT date FROM t1 WHERE date='2002-08-03';
date
2002-08-03
@@ -414,11 +414,11 @@ SELECT 1 FROM t1 WHERE 1=(SELECT 1 UNION SELECT 1) UNION ALL SELECT 1;
SELECT 1 FROM t1 WHERE 1=(SELECT 1 UNION ALL SELECT 1) UNION SELECT 1;
ERROR 21000: Subquery returns more than 1 row
EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE 1=(SELECT 1 UNION SELECT 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL topic 3 NULL 2 Using index
-2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
-3 UNION NULL NULL NULL NULL NULL NULL NULL No tables used
-NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL topic 3 NULL 2 100.00 Using index
+2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+3 UNION NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1003 select 1 AS `1` from `test`.`t1` where 1
drop table t1;
@@ -537,16 +537,16 @@ INSERT INTO t1 (numeropost,numreponse,pseudo) VALUES (1,1,'joce'),(1,2,'joce'),(
EXPLAIN EXTENDED SELECT numreponse FROM t1 WHERE numeropost='1' AND numreponse=(SELECT 1 FROM t1 WHERE numeropost='1');
ERROR 21000: Subquery returns more than 1 row
EXPLAIN EXTENDED SELECT MAX(numreponse) FROM t1 WHERE numeropost='1';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
Warnings:
-Note 1003 select max(`test`.`t1`.`numreponse`) AS `MAX(numreponse)` from `test`.`t1` where (`test`.`t1`.`numeropost` = _latin1'1')
+Note 1003 select max(`test`.`t1`.`numreponse`) AS `MAX(numreponse)` from `test`.`t1` where (`test`.`t1`.`numeropost` = '1')
EXPLAIN EXTENDED SELECT numreponse FROM t1 WHERE numeropost='1' AND numreponse=(SELECT MAX(numreponse) FROM t1 WHERE numeropost='1');
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 const PRIMARY,numreponse PRIMARY 7 const,const 1 Using index
-2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 const PRIMARY,numreponse PRIMARY 7 const,const 1 100.00 Using index
+2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
Warnings:
-Note 1003 select '3' AS `numreponse` from `test`.`t1` where (('1' = _latin1'1'))
+Note 1003 select '3' AS `numreponse` from `test`.`t1` where (('1' = '1'))
drop table t1;
CREATE TABLE t1 (a int(1));
INSERT INTO t1 VALUES (1);
@@ -718,8 +718,8 @@ SELECT * FROM t2 WHERE id IN (SELECT 1);
id
1
EXPLAIN EXTENDED SELECT * FROM t2 WHERE id IN (SELECT 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ref id id 5 const 1 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ref id id 5 const 1 100.00 Using where; Using index
Warnings:
Note 1249 Select 2 was reduced during optimization
Note 1003 select `test`.`t2`.`id` AS `id` from `test`.`t2` where (`test`.`t2`.`id` = 1)
@@ -730,18 +730,18 @@ SELECT * FROM t2 WHERE id IN (SELECT 1+(select 1));
id
2
EXPLAIN EXTENDED SELECT * FROM t2 WHERE id IN (SELECT 1+(select 1));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ref id id 5 const 1 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ref id id 5 const 1 100.00 Using where; Using index
Warnings:
Note 1249 Select 3 was reduced during optimization
Note 1249 Select 2 was reduced during optimization
Note 1003 select `test`.`t2`.`id` AS `id` from `test`.`t2` where (`test`.`t2`.`id` = (1 + 1))
EXPLAIN EXTENDED SELECT * FROM t2 WHERE id IN (SELECT 1 UNION SELECT 3);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL id 5 NULL 2 Using where; Using index
-2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
-3 DEPENDENT UNION NULL NULL NULL NULL NULL NULL NULL No tables used
-NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL id 5 NULL 2 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+3 DEPENDENT UNION NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1003 select `test`.`t2`.`id` AS `id` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`id`,<exists>(select 1 AS `1` having (<cache>(`test`.`t2`.`id`) = <ref_null_helper>(1)) union select 3 AS `3` having (<cache>(`test`.`t2`.`id`) = <ref_null_helper>(3))))
SELECT * FROM t2 WHERE id IN (SELECT 5 UNION SELECT 3);
@@ -864,8 +864,8 @@ select 10.5 > ANY (SELECT * from t1);
10.5 > ANY (SELECT * from t1)
1
explain extended select (select a+1) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1
Note 1249 Select 2 was reduced during optimization
@@ -887,9 +887,9 @@ a t1.a in (select t2.a from t2)
3 1
4 0
explain extended SELECT t1.a, t1.a in (select t2.a from t2) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL PRIMARY 4 NULL 4 Using index
-2 DEPENDENT SUBQUERY t2 index_subquery a a 5 func 2 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL PRIMARY 4 NULL 4 100.00 Using index
+2 DEPENDENT SUBQUERY t2 index_subquery a a 5 func 2 100.00 Using index
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,<in_optimizer>(`test`.`t1`.`a`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`a`) in t2 on a checking NULL having <is_not_null_test>(`test`.`t2`.`a`)))) AS `t1.a in (select t2.a from t2)` from `test`.`t1`
CREATE TABLE t3 (a int(11) default '0');
@@ -901,10 +901,10 @@ a t1.a in (select t2.a from t2,t3 where t3.a=t2.a)
3 1
4 0
explain extended SELECT t1.a, t1.a in (select t2.a from t2,t3 where t3.a=t2.a) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL PRIMARY 4 NULL 4 Using index
-2 DEPENDENT SUBQUERY t2 ref_or_null a a 5 func 2 Using where; Using index
-2 DEPENDENT SUBQUERY t3 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL PRIMARY 4 NULL 4 100.00 Using index
+2 DEPENDENT SUBQUERY t2 ref_or_null a a 5 func 2 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t3 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,<in_optimizer>(`test`.`t1`.`a`,<exists>(select 1 AS `Not_used` from `test`.`t2` join `test`.`t3` where ((`test`.`t3`.`a` = `test`.`t2`.`a`) and ((<cache>(`test`.`t1`.`a`) = `test`.`t2`.`a`) or isnull(`test`.`t2`.`a`))) having <is_not_null_test>(`test`.`t2`.`a`))) AS `t1.a in (select t2.a from t2,t3 where t3.a=t2.a)` from `test`.`t1`
drop table t1,t2,t3;
@@ -1014,21 +1014,21 @@ i
drop table t1;
CREATE TABLE t1 (a int(1));
EXPLAIN EXTENDED SELECT (SELECT RAND() FROM t1) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 system NULL NULL NULL NULL 0 const row not found
-2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 system NULL NULL NULL NULL 0 0.00 const row not found
+2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select (select rand() AS `RAND()` from `test`.`t1`) AS `(SELECT RAND() FROM t1)` from `test`.`t1`
EXPLAIN EXTENDED SELECT (SELECT ENCRYPT('test') FROM t1) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 system NULL NULL NULL NULL 0 const row not found
-2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 system NULL NULL NULL NULL 0 0.00 const row not found
+2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
-Note 1003 select (select encrypt(_latin1'test') AS `ENCRYPT('test')` from `test`.`t1`) AS `(SELECT ENCRYPT('test') FROM t1)` from `test`.`t1`
+Note 1003 select (select encrypt('test') AS `ENCRYPT('test')` from `test`.`t1`) AS `(SELECT ENCRYPT('test') FROM t1)` from `test`.`t1`
EXPLAIN EXTENDED SELECT (SELECT BENCHMARK(1,1) FROM t1) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 system NULL NULL NULL NULL 0 const row not found
-2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 system NULL NULL NULL NULL 0 0.00 const row not found
+2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select (select benchmark(1,1) AS `BENCHMARK(1,1)` from `test`.`t1`) AS `(SELECT BENCHMARK(1,1) FROM t1)` from `test`.`t1`
drop table t1;
@@ -1086,24 +1086,24 @@ CREATE TABLE t1 SELECT * FROM (SELECT 1 as a,(SELECT 1)) a;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(1) NOT NULL default '0',
- `(SELECT 1)` int(1) NOT NULL default '0'
+ `a` int(1) NOT NULL DEFAULT '0',
+ `(SELECT 1)` int(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t1 SELECT * FROM (SELECT 1 as a,(SELECT a)) a;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(1) NOT NULL default '0',
- `(SELECT a)` int(1) NOT NULL default '0'
+ `a` int(1) NOT NULL DEFAULT '0',
+ `(SELECT a)` int(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t1 SELECT * FROM (SELECT 1 as a,(SELECT a+0)) a;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(1) NOT NULL default '0',
- `(SELECT a+0)` int(3) NOT NULL default '0'
+ `a` int(1) NOT NULL DEFAULT '0',
+ `(SELECT a+0)` int(3) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t1 SELECT (SELECT 1 as a UNION SELECT 1+1 limit 1,1) as a;
@@ -1113,17 +1113,17 @@ a
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bigint(20) NOT NULL default '0'
+ `a` bigint(20) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a int);
insert into t1 values (1), (2), (3);
explain extended select a,(select (select rand() from t1 limit 1) from t1 limit 1)
from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 3
-2 UNCACHEABLE SUBQUERY t1 ALL NULL NULL NULL NULL 3
-3 UNCACHEABLE SUBQUERY t1 ALL NULL NULL NULL NULL 3
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 3 100.00
+2 UNCACHEABLE SUBQUERY t1 ALL NULL NULL NULL NULL 3 100.00
+3 UNCACHEABLE SUBQUERY t1 ALL NULL NULL NULL NULL 3 100.00
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a`,(select (select rand() AS `rand()` from `test`.`t1` limit 1) AS `(select rand() from t1 limit 1)` from `test`.`t1` limit 1) AS `(select (select rand() from t1 limit 1) from t1 limit 1)` from `test`.`t1`
drop table t1;
@@ -1175,9 +1175,9 @@ SELECT 0 IN (SELECT 1 FROM t1 a);
0 IN (SELECT 1 FROM t1 a)
0
EXPLAIN EXTENDED SELECT 0 IN (SELECT 1 FROM t1 a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
-2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
Warnings:
Note 1003 select <in_optimizer>(0,<exists>(select 1 AS `Not_used` from `test`.`t1` `a` where 0)) AS `0 IN (SELECT 1 FROM t1 a)`
INSERT INTO t1 (pseudo) VALUES ('test1');
@@ -1185,9 +1185,9 @@ SELECT 0 IN (SELECT 1 FROM t1 a);
0 IN (SELECT 1 FROM t1 a)
0
EXPLAIN EXTENDED SELECT 0 IN (SELECT 1 FROM t1 a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
-2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
Warnings:
Note 1003 select <in_optimizer>(0,<exists>(select 1 AS `Not_used` from `test`.`t1` `a` where 0)) AS `0 IN (SELECT 1 FROM t1 a)`
drop table t1;
@@ -1230,9 +1230,9 @@ drop table t1;
create table t1 (id int not null auto_increment primary key, salary int, key(salary));
insert into t1 (salary) values (100),(1000),(10000),(10),(500),(5000),(50000);
explain extended SELECT id FROM t1 where salary = (SELECT MAX(salary) FROM t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ref salary salary 5 const 1 Using where
-2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ref salary salary 5 const 1 100.00 Using where
+2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
Warnings:
Note 1003 select `test`.`t1`.`id` AS `id` from `test`.`t1` where (`test`.`t1`.`salary` = (select max(`test`.`t1`.`salary`) AS `MAX(salary)` from `test`.`t1`))
drop table t1;
@@ -1292,9 +1292,9 @@ a
3
4
explain extended select * from t2 where t2.a in (select a from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL PRIMARY 4 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL PRIMARY 4 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1 100.00 Using index
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(<primary_index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on PRIMARY)))
select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
@@ -1302,9 +1302,9 @@ a
2
4
explain extended select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL PRIMARY 4 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL PRIMARY 4 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1 100.00 Using where
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(<primary_index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on PRIMARY where ((`test`.`t1`.`b` <> 30) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`)))))
select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
@@ -1312,10 +1312,10 @@ a
2
3
explain extended select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL PRIMARY 4 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 func 1
-2 DEPENDENT SUBQUERY t3 eq_ref PRIMARY PRIMARY 4 test.t1.b 1 Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL PRIMARY 4 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 func 1 100.00
+2 DEPENDENT SUBQUERY t3 eq_ref PRIMARY PRIMARY 4 test.t1.b 1 100.00 Using index
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(select 1 AS `Not_used` from `test`.`t1` join `test`.`t3` where ((`test`.`t3`.`a` = `test`.`t1`.`b`) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`))))
drop table t1, t2, t3;
@@ -1331,9 +1331,9 @@ a
3
4
explain extended select * from t2 where t2.a in (select a from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 1001 Using index; Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL a 5 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 1001 100.00 Using index; Using where
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on a where (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`))))
select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
@@ -1341,9 +1341,9 @@ a
2
4
explain extended select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 1001 Using index; Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL a 5 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 1001 100.00 Using index; Using where
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on a where ((`test`.`t1`.`b` <> 30) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`)))))
select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
@@ -1351,10 +1351,10 @@ a
2
3
explain extended select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 ref a a 5 func 1001 Using where; Using index
-2 DEPENDENT SUBQUERY t3 index a a 5 NULL 3 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL a 5 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 ref a a 5 func 1001 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t3 index a a 5 NULL 3 100.00 Using where; Using index; Using join buffer
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(select 1 AS `Not_used` from `test`.`t1` join `test`.`t3` where ((`test`.`t3`.`a` = `test`.`t1`.`b`) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`))))
insert into t1 values (3,31);
@@ -1368,9 +1368,9 @@ a
2
4
explain extended select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 index NULL a 5 NULL 4 Using where; Using index
-2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 1001 Using index; Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 index NULL a 5 NULL 4 100.00 Using where; Using index
+2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 1001 100.00 Using index; Using where
Warnings:
Note 1003 select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on a where ((`test`.`t1`.`b` <> 30) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`)))))
drop table t1, t2, t3;
@@ -1426,8 +1426,8 @@ select * from t1 where ('a','b')=(select 'a','b' from t1 union select 'a','b' fr
s1
tttt
explain extended (select * from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 system NULL NULL NULL NULL 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 system NULL NULL NULL NULL 1 100.00
Warnings:
Note 1003 (select 'tttt' AS `s1` from `test`.`t1`)
(select * from t1);
@@ -1459,29 +1459,29 @@ a1 0
a2 1
a3 1
explain extended select s1, s1 NOT IN (SELECT s1 FROM t2) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL s1 6 NULL 3 Using index
-2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 Using index; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL s1 6 NULL 3 100.00 Using index
+2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 100.00 Using index; Full scan on NULL key
Warnings:
Note 1003 select `test`.`t1`.`s1` AS `s1`,(not(<in_optimizer>(`test`.`t1`.`s1`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`s1`) in t2 on s1 checking NULL having trigcond(<is_not_null_test>(`test`.`t2`.`s1`))))))) AS `s1 NOT IN (SELECT s1 FROM t2)` from `test`.`t1`
explain extended select s1, s1 = ANY (SELECT s1 FROM t2) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL s1 6 NULL 3 Using index
-2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 Using index; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL s1 6 NULL 3 100.00 Using index
+2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 100.00 Using index; Full scan on NULL key
Warnings:
Note 1003 select `test`.`t1`.`s1` AS `s1`,<in_optimizer>(`test`.`t1`.`s1`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`s1`) in t2 on s1 checking NULL having trigcond(<is_not_null_test>(`test`.`t2`.`s1`))))) AS `s1 = ANY (SELECT s1 FROM t2)` from `test`.`t1`
explain extended select s1, s1 <> ALL (SELECT s1 FROM t2) from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL s1 6 NULL 3 Using index
-2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 Using index; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL s1 6 NULL 3 100.00 Using index
+2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 100.00 Using index; Full scan on NULL key
Warnings:
Note 1003 select `test`.`t1`.`s1` AS `s1`,(not(<in_optimizer>(`test`.`t1`.`s1`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`s1`) in t2 on s1 checking NULL having trigcond(<is_not_null_test>(`test`.`t2`.`s1`))))))) AS `s1 <> ALL (SELECT s1 FROM t2)` from `test`.`t1`
explain extended select s1, s1 NOT IN (SELECT s1 FROM t2 WHERE s1 < 'a2') from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 index NULL s1 6 NULL 3 Using index
-2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 Using index; Using where; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 index NULL s1 6 NULL 3 100.00 Using index
+2 DEPENDENT SUBQUERY t2 index_subquery s1 s1 6 func 2 100.00 Using index; Using where; Full scan on NULL key
Warnings:
-Note 1003 select `test`.`t1`.`s1` AS `s1`,(not(<in_optimizer>(`test`.`t1`.`s1`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`s1`) in t2 on s1 checking NULL where (`test`.`t2`.`s1` < _latin1'a2') having trigcond(<is_not_null_test>(`test`.`t2`.`s1`))))))) AS `s1 NOT IN (SELECT s1 FROM t2 WHERE s1 < 'a2')` from `test`.`t1`
+Note 1003 select `test`.`t1`.`s1` AS `s1`,(not(<in_optimizer>(`test`.`t1`.`s1`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`s1`) in t2 on s1 checking NULL where (`test`.`t2`.`s1` < 'a2') having trigcond(<is_not_null_test>(`test`.`t2`.`s1`))))))) AS `s1 NOT IN (SELECT s1 FROM t2 WHERE s1 < 'a2')` from `test`.`t1`
drop table t1,t2;
create table t2 (a int, b int);
create table t3 (a int);
@@ -1492,17 +1492,17 @@ a
7
3
explain extended select * from t3 where a >= all (select b from t2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3 Using where
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((`test`.`t3`.`a` < (select max('0') from `test`.`t2`)))
select * from t3 where a >= some (select b from t2);
a
explain extended select * from t3 where a >= some (select b from t2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3 Using where
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((`test`.`t3`.`a` >= (select min('0') from `test`.`t2`)))
select * from t3 where a >= all (select b from t2 group by 1);
@@ -1511,49 +1511,49 @@ a
7
3
explain extended select * from t3 where a >= all (select b from t2 group by 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3 Using where
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((`test`.`t3`.`a` < <max>(select '0' AS `b` from `test`.`t2` group by 1)))
select * from t3 where a >= some (select b from t2 group by 1);
a
explain extended select * from t3 where a >= some (select b from t2 group by 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3 Using where
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((`test`.`t3`.`a` >= <min>(select '0' AS `b` from `test`.`t2` group by 1)))
select * from t3 where NULL >= any (select b from t2);
a
explain extended select * from t3 where NULL >= any (select b from t2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where 0
select * from t3 where NULL >= any (select b from t2 group by 1);
a
explain extended select * from t3 where NULL >= any (select b from t2 group by 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where 0
select * from t3 where NULL >= some (select b from t2);
a
explain extended select * from t3 where NULL >= some (select b from t2);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where 0
select * from t3 where NULL >= some (select b from t2 group by 1);
a
explain extended select * from t3 where NULL >= some (select b from t2 group by 1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
-2 SUBQUERY t2 system NULL NULL NULL NULL 0 const row not found
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+2 SUBQUERY t2 system NULL NULL NULL NULL 0 0.00 const row not found
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where 0
insert into t2 values (2,2), (2,1), (3,3), (3,1);
@@ -1562,9 +1562,9 @@ a
6
7
explain extended select * from t3 where a > all (select max(b) from t2 group by a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3 Using where
-2 SUBQUERY t2 ALL NULL NULL NULL NULL 4 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where
+2 SUBQUERY t2 ALL NULL NULL NULL NULL 4 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((`test`.`t3`.`a` <= <max>(select max(`test`.`t2`.`b`) AS `max(b)` from `test`.`t2` group by `test`.`t2`.`a`)))
drop table t2, t3;
@@ -1611,11 +1611,11 @@ select * from t1 where 'f' > any (select s1 from t1 union select s1 from t1);
s1
e
explain extended select * from t1 where 'f' > any (select s1 from t1 union select s1 from t1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 system NULL NULL NULL NULL 1
-2 SUBQUERY t1 system NULL NULL NULL NULL 1
-3 UNION t1 system NULL NULL NULL NULL 1
-NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 system NULL NULL NULL NULL 1 100.00
+2 SUBQUERY t1 system NULL NULL NULL NULL 1 100.00
+3 UNION t1 system NULL NULL NULL NULL 1 100.00
+NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1003 select 'e' AS `s1` from `test`.`t1` where 1
drop table t1;
@@ -1658,9 +1658,9 @@ SELECT DISTINCT (SELECT a) FROM t1 LIMIT 100;
DROP TABLE t1;
create table t1 (a int, b decimal(13, 3));
insert into t1 values (1, 0.123);
-select a, (select max(b) from t1) into outfile "subselect.out.file.1" from t1;
+select a, (select max(b) from t1) into outfile "../../tmp/subselect.out.file.1" from t1;
delete from t1;
-load data infile "subselect.out.file.1" into table t1;
+load data infile "../../tmp/subselect.out.file.1" into table t1;
select * from t1;
a b
1 0.123
@@ -1732,15 +1732,15 @@ id text
11 text11
12 text12
explain extended select * from t1 where id not in (select id from t1 where id < 8);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 12 Using where
-2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1 Using index; Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 12 100.00 Using where
+2 DEPENDENT SUBQUERY t1 unique_subquery PRIMARY PRIMARY 4 func 1 100.00 Using index; Using where
Warnings:
Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`text` AS `text` from `test`.`t1` where (not(<in_optimizer>(`test`.`t1`.`id`,<exists>(<primary_index_lookup>(<cache>(`test`.`t1`.`id`) in t1 on PRIMARY where ((`test`.`t1`.`id` < 8) and (<cache>(`test`.`t1`.`id`) = `test`.`t1`.`id`)))))))
explain extended select * from t1 as tt where not exists (select id from t1 where id < 8 and (id = tt.id or id is null) having id is not null);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY tt ALL NULL NULL NULL NULL 12 Using where
-2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 Using where; Using index
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY tt ALL NULL NULL NULL NULL 12 100.00 Using where
+2 DEPENDENT SUBQUERY t1 eq_ref PRIMARY PRIMARY 4 test.tt.id 1 100.00 Using where; Using index
Warnings:
Note 1276 Field or reference 'test.tt.id' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`tt`.`id` AS `id`,`test`.`tt`.`text` AS `text` from `test`.`t1` `tt` where (not(exists(select `test`.`t1`.`id` AS `id` from `test`.`t1` where ((`test`.`t1`.`id` < 8) and (`test`.`t1`.`id` = `test`.`tt`.`id`)) having (`test`.`t1`.`id` is not null))))
@@ -1764,10 +1764,10 @@ id text id text id text
1000 text1000 NULL NULL 1000 text1000
1001 text1001 NULL NULL 1000 text1000
explain extended select * from t1 a left join t2 b on (a.id=b.id or b.id is null) join t1 c on (if(isnull(b.id), 1000, b.id)=c.id);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE a ALL NULL NULL NULL NULL 14
-1 SIMPLE b eq_ref PRIMARY PRIMARY 4 test.a.id 2
-1 SIMPLE c eq_ref PRIMARY PRIMARY 4 func 1 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE a ALL NULL NULL NULL NULL 14 100.00
+1 SIMPLE b eq_ref PRIMARY PRIMARY 4 test.a.id 2 100.00
+1 SIMPLE c eq_ref PRIMARY PRIMARY 4 func 1 100.00 Using where
Warnings:
Note 1003 select `test`.`a`.`id` AS `id`,`test`.`a`.`text` AS `text`,`test`.`b`.`id` AS `id`,`test`.`b`.`text` AS `text`,`test`.`c`.`id` AS `id`,`test`.`c`.`text` AS `text` from `test`.`t1` `a` left join `test`.`t2` `b` on(((`test`.`b`.`id` = `test`.`a`.`id`) or isnull(`test`.`b`.`id`))) join `test`.`t1` `c` where (if(isnull(`test`.`b`.`id`),1000,`test`.`b`.`id`) = `test`.`c`.`id`)
drop table t1,t2;
@@ -2274,9 +2274,9 @@ a b
1 2
3 4
explain extended select * from t1 up where exists (select * from t1 where t1.a=up.a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY up ALL NULL NULL NULL NULL 2 Using where
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY up ALL NULL NULL NULL NULL 2 100.00 Using where
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.up.a' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`up`.`a` AS `a`,`test`.`up`.`b` AS `b` from `test`.`t1` `up` where exists(select 1 AS `Not_used` from `test`.`t1` where (`test`.`t1`.`a` = `test`.`up`.`a`))
@@ -2816,23 +2816,23 @@ one two test
10 5 NULL
10 10 NULL
explain extended SELECT one,two,ROW(one,two) IN (SELECT one,two FROM t2 WHERE flag = '0') as 'test' from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 8
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 9 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 8 100.00
+2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 9 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`one` AS `one`,`test`.`t1`.`two` AS `two`,<in_optimizer>((`test`.`t1`.`one`,`test`.`t1`.`two`),<exists>(select `test`.`t2`.`one` AS `one`,`test`.`t2`.`two` AS `two` from `test`.`t2` where ((`test`.`t2`.`flag` = _latin1'0') and trigcond(((<cache>(`test`.`t1`.`one`) = `test`.`t2`.`one`) or isnull(`test`.`t2`.`one`))) and trigcond(((<cache>(`test`.`t1`.`two`) = `test`.`t2`.`two`) or isnull(`test`.`t2`.`two`)))) having (trigcond(<is_not_null_test>(`test`.`t2`.`one`)) and trigcond(<is_not_null_test>(`test`.`t2`.`two`))))) AS `test` from `test`.`t1`
+Note 1003 select `test`.`t1`.`one` AS `one`,`test`.`t1`.`two` AS `two`,<in_optimizer>((`test`.`t1`.`one`,`test`.`t1`.`two`),<exists>(select `test`.`t2`.`one` AS `one`,`test`.`t2`.`two` AS `two` from `test`.`t2` where ((`test`.`t2`.`flag` = '0') and trigcond(((<cache>(`test`.`t1`.`one`) = `test`.`t2`.`one`) or isnull(`test`.`t2`.`one`))) and trigcond(((<cache>(`test`.`t1`.`two`) = `test`.`t2`.`two`) or isnull(`test`.`t2`.`two`)))) having (trigcond(<is_not_null_test>(`test`.`t2`.`one`)) and trigcond(<is_not_null_test>(`test`.`t2`.`two`))))) AS `test` from `test`.`t1`
explain extended SELECT one,two from t1 where ROW(one,two) IN (SELECT one,two FROM t2 WHERE flag = 'N');
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 8 Using where
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 9 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 8 100.00 Using where
+2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 9 100.00 Using where
Warnings:
-Note 1003 select `test`.`t1`.`one` AS `one`,`test`.`t1`.`two` AS `two` from `test`.`t1` where <in_optimizer>((`test`.`t1`.`one`,`test`.`t1`.`two`),<exists>(select `test`.`t2`.`one` AS `one`,`test`.`t2`.`two` AS `two` from `test`.`t2` where ((`test`.`t2`.`flag` = _latin1'N') and (<cache>(`test`.`t1`.`one`) = `test`.`t2`.`one`) and (<cache>(`test`.`t1`.`two`) = `test`.`t2`.`two`))))
+Note 1003 select `test`.`t1`.`one` AS `one`,`test`.`t1`.`two` AS `two` from `test`.`t1` where <in_optimizer>((`test`.`t1`.`one`,`test`.`t1`.`two`),<exists>(select `test`.`t2`.`one` AS `one`,`test`.`t2`.`two` AS `two` from `test`.`t2` where ((`test`.`t2`.`flag` = 'N') and (<cache>(`test`.`t1`.`one`) = `test`.`t2`.`one`) and (<cache>(`test`.`t1`.`two`) = `test`.`t2`.`two`))))
explain extended SELECT one,two,ROW(one,two) IN (SELECT one,two FROM t2 WHERE flag = '0' group by one,two) as 'test' from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 8
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 9 Using where; Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 8 100.00
+2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 9 100.00 Using where; Using temporary; Using filesort
Warnings:
-Note 1003 select `test`.`t1`.`one` AS `one`,`test`.`t1`.`two` AS `two`,<in_optimizer>((`test`.`t1`.`one`,`test`.`t1`.`two`),<exists>(select `test`.`t2`.`one` AS `one`,`test`.`t2`.`two` AS `two` from `test`.`t2` where (`test`.`t2`.`flag` = _latin1'0') group by `test`.`t2`.`one`,`test`.`t2`.`two` having (trigcond(((<cache>(`test`.`t1`.`one`) = `test`.`t2`.`one`) or isnull(`test`.`t2`.`one`))) and trigcond(((<cache>(`test`.`t1`.`two`) = `test`.`t2`.`two`) or isnull(`test`.`t2`.`two`))) and trigcond(<is_not_null_test>(`test`.`t2`.`one`)) and trigcond(<is_not_null_test>(`test`.`t2`.`two`))))) AS `test` from `test`.`t1`
+Note 1003 select `test`.`t1`.`one` AS `one`,`test`.`t1`.`two` AS `two`,<in_optimizer>((`test`.`t1`.`one`,`test`.`t1`.`two`),<exists>(select `test`.`t2`.`one` AS `one`,`test`.`t2`.`two` AS `two` from `test`.`t2` where (`test`.`t2`.`flag` = '0') group by `test`.`t2`.`one`,`test`.`t2`.`two` having (trigcond(((<cache>(`test`.`t1`.`one`) = `test`.`t2`.`one`) or isnull(`test`.`t2`.`one`))) and trigcond(((<cache>(`test`.`t1`.`two`) = `test`.`t2`.`two`) or isnull(`test`.`t2`.`two`))) and trigcond(<is_not_null_test>(`test`.`t2`.`one`)) and trigcond(<is_not_null_test>(`test`.`t2`.`two`))))) AS `test` from `test`.`t1`
DROP TABLE t1,t2;
CREATE TABLE t1 (a char(5), b char(5));
INSERT INTO t1 VALUES (NULL,'aaa'), ('aaa','aaa');
@@ -3027,13 +3027,13 @@ FROM t1 WHERE a > '2000-01-01';
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `sub_a` datetime default NULL
+ `sub_a` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
CREATE TABLE t3 AS (SELECT a FROM t1 WHERE a < '2000-01-01') UNION (SELECT a FROM t1 WHERE a > '2000-01-01');
SHOW CREATE TABLE t3;
Table Create Table
t3 CREATE TABLE `t3` (
- `a` datetime default NULL
+ `a` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1,t2,t3;
CREATE TABLE t1 (a int);
@@ -3423,7 +3423,7 @@ EXPLAIN
SELECT * FROM t1 WHERE (a,b) = ANY (SELECT a, max(b) FROM t1 GROUP BY a);
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 ALL NULL NULL NULL NULL 9 Using where
-2 DEPENDENT SUBQUERY t1 index NULL a 8 NULL 9 Using filesort
+2 DEPENDENT SUBQUERY t1 index NULL a 8 NULL 1 Using filesort
DROP TABLE t1;
create table t1( f1 int,f2 int);
insert into t1 values (1,1),(2,2);
@@ -4077,9 +4077,9 @@ CREATE TABLE t1 (a int);
INSERT INTO t1 VALUES (1), (2);
EXPLAIN EXTENDED
SELECT * FROM (SELECT count(*) FROM t1 GROUP BY a) as res;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2
-2 DERIVED t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select `res`.`count(*)` AS `count(*)` from (select count(0) AS `count(*)` from `test`.`t1` group by `test`.`t1`.`a`) `res`
DROP TABLE t1;
@@ -4144,41 +4144,6 @@ SELECT (SELECT SUM(t1.a) FROM t2 WHERE a=1) FROM t1;
(SELECT SUM(t1.a) FROM t2 WHERE a=1)
3
DROP TABLE t1,t2;
-create table t1(a int,b int,key(a),key(b));
-insert into t1(a,b) values (1,2),(2,1),(2,3),(3,4),(5,4),(5,5),
-(6,7),(7,4),(5,3);
-5
-4
-3
-2
-1
-26
-25
-24
-23
-22
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
-drop table t1;
CREATE TABLE t1 (a1 INT, a2 INT);
CREATE TABLE t2 (b1 INT, b2 INT);
INSERT INTO t1 VALUES (100, 200);
@@ -4305,9 +4270,9 @@ SELECT 2 FROM t1 WHERE EXISTS ((SELECT 1 FROM t2 WHERE t1.a=t2.a));
2
EXPLAIN EXTENDED
SELECT 2 FROM t1 WHERE EXISTS ((SELECT 1 FROM t2 WHERE t1.a=t2.a));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 2 Using where
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2 100.00 Using where
+2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1
Note 1003 select 2 AS `2` from `test`.`t1` where exists(select 1 AS `1` from `test`.`t2` where (`test`.`t1`.`a` = `test`.`t2`.`a`))
@@ -4384,74 +4349,18 @@ drop table t1, t2;
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1),(2);
EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE 1 IN (SELECT 1 FROM t1 GROUP BY a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 2
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2 100.00
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select 1 AS `1` from `test`.`t1` where <in_optimizer>(1,<exists>(select 1 AS `1` from `test`.`t1` group by `test`.`t1`.`a` having (<cache>(1) = <ref_null_helper>(1))))
EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE 1 IN (SELECT 1 FROM t1 WHERE a > 3 GROUP BY a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 Using where; Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 100.00 Using where; Using temporary; Using filesort
Warnings:
Note 1003 select 1 AS `1` from `test`.`t1` where <in_optimizer>(1,<exists>(select 1 AS `1` from `test`.`t1` where (`test`.`t1`.`a` > 3) group by `test`.`t1`.`a` having (<cache>(1) = <ref_null_helper>(1))))
DROP TABLE t1;
-CREATE TABLE t1(pk int PRIMARY KEY, a int, INDEX idx(a));
-INSERT INTO t1 VALUES (1, 10), (3, 30), (2, 20);
-CREATE TABLE t2(pk int PRIMARY KEY, a int, b int, INDEX idxa(a));
-INSERT INTO t2 VALUES (2, 20, 700), (1, 10, 200), (4, 10, 100);
-SELECT * FROM t1
-WHERE EXISTS (SELECT DISTINCT a FROM t2 WHERE t1.a < t2.a ORDER BY b);
-pk a
-1 10
-3 30
-2 20
-DROP TABLE t1,t2;
-CREATE TABLE t1 (s1 char(1));
-INSERT INTO t1 VALUES ('a');
-SELECT * FROM t1 WHERE _utf8'a' = ANY (SELECT s1 FROM t1);
-s1
-a
-DROP TABLE t1;
-CREATE TABLE t1(id BIGINT);
-CREATE TABLE t2(id1 BIGINT, id2 BIGINT);
-INSERT INTO t1 VALUES (1),(2),(3);
-INSERT INTO t2 VALUES (2,1),(3,1);
-SELECT * FROM t1 i WHERE 1 IN (SELECT l.id2 FROM t2 l WHERE i.id=l.id1);
-id
-2
-3
-DROP TABLE t1, t2;
-CREATE TABLE t1 (id int);
-CREATE TABLE t2 (id int, c int);
-INSERT INTO t1 (id) VALUES (1);
-INSERT INTO t2 (id) VALUES (1);
-INSERT INTO t1 (id) VALUES (1);
-INSERT INTO t2 (id) VALUES (1);
-CREATE VIEW v1 AS
-SELECT t2.c AS c FROM t1, t2
-WHERE t1.id=t2.id AND 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
-UPDATE v1 SET c=1;
-CREATE VIEW v2 (a,b) AS
-SELECT t2.id, t2.c AS c FROM t1, t2
-WHERE t1.id=t2.id AND 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
-INSERT INTO v2(a,b) VALUES (2,2);
-ERROR HY000: CHECK OPTION failed 'test.v2'
-INSERT INTO v2(a,b) VALUES (1,2);
-SELECT * FROM v1;
-c
-1
-1
-1
-1
-2
-2
-CREATE VIEW v3 AS
-SELECT t2.c AS c FROM t2
-WHERE 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
-DELETE FROM v3;
-DROP VIEW v1,v2,v3;
-DROP TABLE t1,t2;
#
# Bug#45061: Incorrectly market field caused wrong result.
#
@@ -4470,8 +4379,8 @@ int_nokey int_key
5 5
0 0
EXPLAIN EXTENDED SELECT * FROM C WHERE `int_key` IN (SELECT `int_nokey`);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY C ALL NULL NULL NULL NULL 20 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY C ALL NULL NULL NULL NULL 20 100.00 Using where
DROP TABLE C;
# End of test for bug#45061.
#
@@ -4494,8 +4403,7 @@ FROM t1
WHERE a = 230;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-2 DEPENDENT SUBQUERY st1 index NULL a 5 NULL 2 Using index
-2 DEPENDENT SUBQUERY st2 index b b 5 NULL 2 Using where; Using index
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
SELECT MAX(b), (SELECT COUNT(*) FROM st1,st2 WHERE st2.b <= t1.b)
FROM t1
WHERE a = 230;
@@ -4503,3 +4411,156 @@ MAX(b) (SELECT COUNT(*) FROM st1,st2 WHERE st2.b <= t1.b)
NULL 0
DROP TABLE t1, st1, st2;
End of 5.0 tests.
+CREATE TABLE t1 (a INT, b INT);
+INSERT INTO t1 VALUES (2,22),(1,11),(2,22);
+SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 0 GROUP BY a;
+a
+1
+2
+SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 1 GROUP BY a;
+a
+SELECT a FROM t1 t0
+WHERE (SELECT COUNT(t0.b) FROM t1 t WHERE t.b>20) GROUP BY a;
+a
+1
+2
+SET @@sql_mode='ansi';
+SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 0 GROUP BY a;
+ERROR HY000: Invalid use of group function
+SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 1 GROUP BY a;
+ERROR HY000: Invalid use of group function
+SELECT a FROM t1 t0
+WHERE (SELECT COUNT(t0.b) FROM t1 t WHERE t.b>20) GROUP BY a;
+ERROR HY000: Invalid use of group function
+SET @@sql_mode=default;
+DROP TABLE t1;
+CREATE TABLE t1 (s1 CHAR(1));
+INSERT INTO t1 VALUES ('a');
+SELECT * FROM t1 WHERE _utf8'a' = ANY (SELECT s1 FROM t1);
+s1
+a
+DROP TABLE t1;
+CREATE TABLE t1(c INT, KEY(c));
+CREATE TABLE t2(a INT, b INT);
+INSERT INTO t2 VALUES (1, 10), (2, NULL);
+INSERT INTO t1 VALUES (1), (3);
+SELECT * FROM t2 WHERE b NOT IN (SELECT max(t.c) FROM t1, t1 t WHERE t.c>10);
+a b
+DROP TABLE t1,t2;
+CREATE TABLE t1(pk INT PRIMARY KEY, a INT, INDEX idx(a));
+INSERT INTO t1 VALUES (1, 10), (3, 30), (2, 20);
+CREATE TABLE t2(pk INT PRIMARY KEY, a INT, b INT, INDEX idxa(a));
+INSERT INTO t2 VALUES (2, 20, 700), (1, 10, 200), (4, 10, 100);
+SELECT * FROM t1
+WHERE EXISTS (SELECT DISTINCT a FROM t2 WHERE t1.a < t2.a ORDER BY b);
+pk a
+1 10
+3 30
+2 20
+DROP TABLE t1,t2;
+CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a), KEY b (b));
+INSERT INTO t1 VALUES (1,NULL), (9,NULL);
+CREATE TABLE t2 (
+a INT,
+b INT,
+c INT,
+d INT,
+PRIMARY KEY (a),
+UNIQUE KEY b (b,c,d),
+KEY b_2 (b),
+KEY c (c),
+KEY d (d)
+);
+INSERT INTO t2 VALUES
+(43, 2, 11 ,30),
+(44, 2, 12 ,30),
+(45, 1, 1 ,10000),
+(46, 1, 2 ,10000),
+(556,1, 32 ,10000);
+CREATE TABLE t3 (
+a INT,
+b INT,
+c INT,
+PRIMARY KEY (a),
+UNIQUE KEY b (b,c),
+KEY c (c),
+KEY b_2 (b)
+);
+INSERT INTO t3 VALUES (1,1,1), (2,32,1);
+explain
+SELECT t1.a, (SELECT 1 FROM t2 WHERE t2.b=t3.c AND t2.c=t1.a ORDER BY t2.d LIMIT 1) AS incorrect FROM t1, t3 WHERE t3.b=t1.a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 PRIMARY t3 index b,b_2 b 10 NULL 2 Using index
+1 PRIMARY t1 eq_ref PRIMARY PRIMARY 4 test.t3.b 1 Using index
+2 DEPENDENT SUBQUERY t2 index b,b_2,c d 5 NULL 1 Using where
+SELECT t1.a, (SELECT 1 FROM t2 WHERE t2.b=t3.c AND t2.c=t1.a ORDER BY t2.d LIMIT 1) AS incorrect FROM t1, t3 WHERE t3.b=t1.a;
+a incorrect
+1 1
+DROP TABLE t1,t2,t3;
+CREATE TABLE t1 (id int);
+CREATE TABLE t2 (id int, c int);
+INSERT INTO t1 (id) VALUES (1);
+INSERT INTO t2 (id) VALUES (1);
+INSERT INTO t1 (id) VALUES (1);
+INSERT INTO t2 (id) VALUES (1);
+CREATE VIEW v1 AS
+SELECT t2.c AS c FROM t1, t2
+WHERE t1.id=t2.id AND 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
+UPDATE v1 SET c=1;
+CREATE VIEW v2 (a,b) AS
+SELECT t2.id, t2.c AS c FROM t1, t2
+WHERE t1.id=t2.id AND 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
+INSERT INTO v2(a,b) VALUES (2,2);
+ERROR HY000: CHECK OPTION failed 'test.v2'
+INSERT INTO v2(a,b) VALUES (1,2);
+SELECT * FROM v1;
+c
+1
+1
+1
+1
+2
+2
+CREATE VIEW v3 AS
+SELECT t2.c AS c FROM t2
+WHERE 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
+DELETE FROM v3;
+DROP VIEW v1,v2,v3;
+DROP TABLE t1,t2;
+#
+# Bug#37822 Correlated subquery with IN and IS UNKNOWN provides wrong result
+#
+create table t1(id integer primary key, g integer, v integer, s char(1));
+create table t2(id integer primary key, g integer, v integer, s char(1));
+insert into t1 values
+(10, 10, 10, 'l'),
+(20, 20, 20, 'l'),
+(40, 40, 40, 'l'),
+(41, 40, null, 'l'),
+(50, 50, 50, 'l'),
+(51, 50, null, 'l'),
+(60, 60, 60, 'l'),
+(61, 60, null, 'l'),
+(70, 70, 70, 'l'),
+(90, 90, null, 'l');
+insert into t2 values
+(10, 10, 10, 'r'),
+(30, 30, 30, 'r'),
+(50, 50, 50, 'r'),
+(60, 60, 60, 'r'),
+(61, 60, null, 'r'),
+(70, 70, 70, 'r'),
+(71, 70, null, 'r'),
+(80, 80, 80, 'r'),
+(81, 80, null, 'r'),
+(100,100,null, 'r');
+select *
+from t1
+where v in(select v
+from t2
+where t1.g=t2.g) is unknown;
+id g v s
+51 50 NULL l
+61 60 NULL l
+drop table t1, t2;
+End of 5.1 tests.
diff --git a/mysql-test/r/subselect3.result b/mysql-test/r/subselect3.result
index 759c6689be8..f055b40116a 100644
--- a/mysql-test/r/subselect3.result
+++ b/mysql-test/r/subselect3.result
@@ -1,4 +1,4 @@
-drop table if exists t0, t1, t2, t3, t4;
+drop table if exists t0, t1, t2, t3, t4, t5;
create table t1 (oref int, grp int, ie int) ;
insert into t1 (oref, grp, ie) values
(1, 1, 1),
@@ -25,18 +25,18 @@ NULL 2 NULL
explain extended
select a, oref, a in (select max(ie)
from t1 where oref=t2.oref group by grp) Z from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 5
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 6 Using where; Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 5 100.00
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 6 100.00 Using where; Using temporary; Using filesort
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`oref` AS `oref`,<in_optimizer>(`test`.`t2`.`a`,<exists>(select max(`test`.`t1`.`ie`) AS `max(ie)` from `test`.`t1` where (`test`.`t1`.`oref` = `test`.`t2`.`oref`) group by `test`.`t1`.`grp` having trigcond((<cache>(`test`.`t2`.`a`) = <ref_null_helper>(max(`test`.`t1`.`ie`)))))) AS `Z` from `test`.`t2`
explain extended
select a, oref from t2
where a in (select max(ie) from t1 where oref=t2.oref group by grp);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 5 Using where
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 6 Using where; Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 5 100.00 Using where
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 6 100.00 Using where; Using temporary; Using filesort
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`oref` AS `oref` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(select max(`test`.`t1`.`ie`) AS `max(ie)` from `test`.`t1` where (`test`.`t1`.`oref` = `test`.`t2`.`oref`) group by `test`.`t1`.`grp` having (<cache>(`test`.`t2`.`a`) = <ref_null_helper>(max(`test`.`t1`.`ie`)))))
@@ -64,9 +64,9 @@ select ' ^ This must show 11' Z;
Z
^ This must show 11
explain extended select a in (select max(ie) from t1 where oref=4 group by grp) from t3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 2
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 6 Using where; Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 2 100.00
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 6 100.00 Using where; Using temporary; Using filesort
Warnings:
Note 1003 select <in_optimizer>(`test`.`t3`.`a`,<exists>(select max(`test`.`t1`.`ie`) AS `max(ie)` from `test`.`t1` where (`test`.`t1`.`oref` = 4) group by `test`.`t1`.`grp` having trigcond((<cache>(`test`.`t3`.`a`) = <ref_null_helper>(max(`test`.`t1`.`ie`)))))) AS `a in (select max(ie) from t1 where oref=4 group by grp)` from `test`.`t3`
drop table t1, t2, t3;
@@ -87,9 +87,9 @@ oref a Z
4 NULL 0
explain extended
select oref, a, a in (select a from t1 where oref=t2.oref) Z from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 4
-2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 2 Using where; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 4 100.00
+2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 2 100.00 Using where; Full scan on NULL key
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`oref` AS `oref`,`test`.`t2`.`a` AS `a`,<in_optimizer>(`test`.`t2`.`a`,<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on a checking NULL where (`test`.`t1`.`oref` = `test`.`t2`.`oref`) having trigcond(<is_not_null_test>(`test`.`t1`.`a`))))) AS `Z` from `test`.`t2`
@@ -151,10 +151,10 @@ explain extended
select a, oref,
t3.a in (select t1.a from t1, t2 where t1.b=t2.a and t2.b=t3.oref) Z
from t3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3
-2 DEPENDENT SUBQUERY t1 ref_or_null a a 5 func 4 Using where; Full scan on NULL key
-2 DEPENDENT SUBQUERY t2 ref a a 5 test.t1.b 1 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00
+2 DEPENDENT SUBQUERY t1 ref_or_null a a 5 func 4 100.00 Using where; Full scan on NULL key
+2 DEPENDENT SUBQUERY t2 ref a a 5 test.t1.b 1 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t3.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t3`.`a` AS `a`,`test`.`t3`.`oref` AS `oref`,<in_optimizer>(`test`.`t3`.`a`,<exists>(select 1 AS `Not_used` from `test`.`t1` join `test`.`t2` where ((`test`.`t2`.`a` = `test`.`t1`.`b`) and (`test`.`t2`.`b` = `test`.`t3`.`oref`) and trigcond(((<cache>(`test`.`t3`.`a`) = `test`.`t1`.`a`) or isnull(`test`.`t1`.`a`)))) having trigcond(<is_not_null_test>(`test`.`t1`.`a`)))) AS `Z` from `test`.`t3`
@@ -179,10 +179,10 @@ explain extended
select a, oref,
t3.a in (select t1.a from t1, t2 where t1.b=t2.a and t2.b=t3.oref) Z
from t3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t3 ALL NULL NULL NULL NULL 3
-2 DEPENDENT SUBQUERY t1 ref a a 4 func 2 Using where; Full scan on NULL key
-2 DEPENDENT SUBQUERY t2 ref a a 4 test.t1.b 1 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00
+2 DEPENDENT SUBQUERY t1 ref a a 4 func 2 100.00 Using where; Full scan on NULL key
+2 DEPENDENT SUBQUERY t2 ref a a 4 test.t1.b 1 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t3.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t3`.`a` AS `a`,`test`.`t3`.`oref` AS `oref`,<in_optimizer>(`test`.`t3`.`a`,<exists>(select 1 AS `Not_used` from `test`.`t1` join `test`.`t2` where ((`test`.`t2`.`a` = `test`.`t1`.`b`) and (`test`.`t2`.`b` = `test`.`t3`.`oref`) and trigcond((<cache>(`test`.`t3`.`a`) = `test`.`t1`.`a`))))) AS `Z` from `test`.`t3`
@@ -204,9 +204,9 @@ This must show a trig_cond:
explain extended
select a, oref,
a in (select count(*) from t1 group by grp having grp=t2.oref) Z from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1276 Field or reference 't2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`oref` AS `oref`,<in_optimizer>(`test`.`t2`.`a`,<exists>(select count(0) AS `count(*)` from `test`.`t1` group by `test`.`t1`.`grp` having ((`test`.`t1`.`grp` = `test`.`t2`.`oref`) and trigcond((<cache>(`test`.`t2`.`a`) = <ref_null_helper>(count(0))))))) AS `Z` from `test`.`t2`
@@ -236,9 +236,9 @@ insert into t2 values (NULL,1, 100), (NULL,2, 100);
create table t1 (a int, b int, c int, key(a,b));
insert into t1 select 2*A, 2*A, 100 from t3;
explain extended select a,b, oref, (a,b) in (select a,b from t1 where c=t2.oref) Z from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2
-2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 2 Using where; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00
+2 DEPENDENT SUBQUERY t1 index_subquery a a 5 func 2 100.00 Using where; Full scan on NULL key
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`oref` AS `oref`,<in_optimizer>((`test`.`t2`.`a`,`test`.`t2`.`b`),<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on a checking NULL where ((`test`.`t1`.`c` = `test`.`t2`.`oref`) and trigcond(((<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`) or isnull(`test`.`t1`.`a`))) and trigcond(((<cache>(`test`.`t2`.`b`) = `test`.`t1`.`b`) or isnull(`test`.`t1`.`b`)))) having (trigcond(<is_not_null_test>(`test`.`t1`.`a`)) and trigcond(<is_not_null_test>(`test`.`t1`.`b`)))))) AS `Z` from `test`.`t2`
@@ -252,10 +252,10 @@ explain extended
select a,b, oref,
(a,b) in (select a,b from t1,t4 where c=t2.oref) Z
from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2
-2 DEPENDENT SUBQUERY t1 ref_or_null a a 5 func 2 Using where; Full scan on NULL key
-2 DEPENDENT SUBQUERY t4 ALL NULL NULL NULL NULL 100 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00
+2 DEPENDENT SUBQUERY t1 ref_or_null a a 5 func 2 100.00 Using where; Full scan on NULL key
+2 DEPENDENT SUBQUERY t4 ALL NULL NULL NULL NULL 100 100.00 Using where; Using join buffer
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t2`.`oref` AS `oref`,<in_optimizer>((`test`.`t2`.`a`,`test`.`t2`.`b`),<exists>(select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` join `test`.`t4` where ((`test`.`t1`.`c` = `test`.`t2`.`oref`) and trigcond(((<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`) or isnull(`test`.`t1`.`a`))) and trigcond(((<cache>(`test`.`t2`.`b`) = `test`.`t1`.`b`) or isnull(`test`.`t1`.`b`)))) having (trigcond(<is_not_null_test>(`test`.`t1`.`a`)) and trigcond(<is_not_null_test>(`test`.`t1`.`b`))))) AS `Z` from `test`.`t2`
@@ -298,9 +298,9 @@ oref a b Z
new1 10 10 NULL
explain extended
select oref, a, b, (a,b) in (select ie1,ie2 from t1 where oref=t2.oref) Z from t2 where a=10 and b=10;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 8 Using where
-2 DEPENDENT SUBQUERY t1 index_subquery idx idx 5 func 4 Using where; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 8 100.00 Using where
+2 DEPENDENT SUBQUERY t1 index_subquery idx idx 5 func 4 100.00 Using where; Full scan on NULL key
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`oref` AS `oref`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,<in_optimizer>((`test`.`t2`.`a`,`test`.`t2`.`b`),<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on idx checking NULL where ((`test`.`t1`.`oref` = `test`.`t2`.`oref`) and trigcond(((<cache>(`test`.`t2`.`a`) = `test`.`t1`.`ie1`) or isnull(`test`.`t1`.`ie1`))) and trigcond(((<cache>(`test`.`t2`.`b`) = `test`.`t1`.`ie2`) or isnull(`test`.`t1`.`ie2`)))) having (trigcond(<is_not_null_test>(`test`.`t1`.`ie1`)) and trigcond(<is_not_null_test>(`test`.`t1`.`ie2`)))))) AS `Z` from `test`.`t2` where ((`test`.`t2`.`b` = 10) and (`test`.`t2`.`a` = 10))
@@ -568,9 +568,9 @@ bb 2 1
dd 1 NULL
explain extended
select oref, a, b, (a,b) in (select ie1,ie2 from t1 where oref=t2.oref) Z from t2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 7
-2 DEPENDENT SUBQUERY t1 index_subquery idx idx 5 func 4 Using where; Full scan on NULL key
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 7 100.00
+2 DEPENDENT SUBQUERY t1 index_subquery idx idx 5 func 4 100.00 Using where; Full scan on NULL key
Warnings:
Note 1276 Field or reference 'test.t2.oref' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`oref` AS `oref`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,<in_optimizer>((`test`.`t2`.`a`,`test`.`t2`.`b`),<exists>(<index_lookup>(<cache>(`test`.`t2`.`a`) in t1 on idx checking NULL where ((`test`.`t1`.`oref` = `test`.`t2`.`oref`) and trigcond(((<cache>(`test`.`t2`.`a`) = `test`.`t1`.`ie1`) or isnull(`test`.`t1`.`ie1`))) and trigcond(((<cache>(`test`.`t2`.`b`) = `test`.`t1`.`ie2`) or isnull(`test`.`t1`.`ie2`)))) having (trigcond(<is_not_null_test>(`test`.`t1`.`ie1`)) and trigcond(<is_not_null_test>(`test`.`t1`.`ie2`)))))) AS `Z` from `test`.`t2`
@@ -698,10 +698,10 @@ INSERT INTO t1 VALUES (1), (NULL), (4);
INSERT INTO t2 VALUES (3), (1),(2), (5), (4), (7), (6);
EXPLAIN EXTENDED
SELECT a FROM t1, t2 WHERE a=b AND (b NOT IN (SELECT a FROM t1));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 3 Using where
-1 PRIMARY t2 eq_ref PRIMARY PRIMARY 4 test.t1.a 1 Using index
-2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 3 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 3 100.00 Using where
+1 PRIMARY t2 eq_ref PRIMARY PRIMARY 4 test.t1.a 1 100.00 Using index
+2 DEPENDENT SUBQUERY t1 ALL NULL NULL NULL NULL 3 100.00 Using where
Warnings:
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` join `test`.`t2` where ((`test`.`t2`.`b` = `test`.`t1`.`a`) and (not(<in_optimizer>(`test`.`t1`.`a`,<exists>(select 1 AS `Not_used` from `test`.`t1` where ((<cache>(`test`.`t2`.`b`) = `test`.`t1`.`a`) or isnull(`test`.`t1`.`a`)) having <is_not_null_test>(`test`.`t1`.`a`))))))
SELECT a FROM t1, t2 WHERE a=b AND (b NOT IN (SELECT a FROM t1));
@@ -869,3 +869,29 @@ Note 1003 select `c` AS `c` from (select (select count(`test`.`t1`.`a`) AS `COUN
)` from `test`.`t1` group by `test`.`t1`.`b`) `y`
DROP TABLE t1;
End of 5.0 tests
+create table t0 (a int);
+insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t1 (
+a int(11) default null,
+b int(11) default null,
+key (a)
+);
+insert into t1 select A.a+10*(B.a+10*C.a),A.a+10*(B.a+10*C.a) from t0 A, t0 B, t0 C;
+create table t2 (a int(11) default null);
+insert into t2 values (0),(1);
+create table t3 (a int(11) default null);
+insert into t3 values (0),(1);
+create table t4 (a int(11) default null);
+insert into t4 values (0),(1);
+create table t5 (a int(11) default null);
+insert into t5 values (0),(1),(0),(1);
+select * from t2, t3
+where
+t2.a < 10 and
+t3.a+1 = 2 and
+t3.a in (select t1.b from t1
+where t1.a+1=t1.a+1 and
+t1.a < (select t4.a+10
+from t4, t5 limit 2));
+ERROR 21000: Subquery returns more than 1 row
+drop table t0, t1, t2, t3, t4, t5;
diff --git a/mysql-test/r/subselect4.result b/mysql-test/r/subselect4.result
index e863cbfb7a8..482e0045840 100644
--- a/mysql-test/r/subselect4.result
+++ b/mysql-test/r/subselect4.result
@@ -51,7 +51,7 @@ FROM t3 WHERE 1 = 0 GROUP BY 1;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
2 DEPENDENT SUBQUERY t1 index NULL PRIMARY 4 NULL 2 Using index
-2 DEPENDENT SUBQUERY t2 index b b 5 NULL 2 Using where; Using index
+2 DEPENDENT SUBQUERY t2 index b b 5 NULL 2 Using where; Using index; Using join buffer
# should return 0 rows
SELECT
(SELECT 1 FROM t1,t2 WHERE t2.b > t3.b)
diff --git a/mysql-test/r/subselect_debug.result b/mysql-test/r/subselect_debug.result
new file mode 100644
index 00000000000..9ba552bbdf7
--- /dev/null
+++ b/mysql-test/r/subselect_debug.result
@@ -0,0 +1,12 @@
+CREATE TABLE t1(id INT);
+INSERT INTO t1 VALUES (1),(2),(3),(4);
+INSERT INTO t1 SELECT a.id FROM t1 a,t1 b,t1 c,t1 d;
+SET SESSION debug="d,subselect_exec_fail";
+SELECT SUM(EXISTS(SELECT RAND() FROM t1)) FROM t1;
+SUM(EXISTS(SELECT RAND() FROM t1))
+0
+SELECT REVERSE(EXISTS(SELECT RAND() FROM t1));
+REVERSE(EXISTS(SELECT RAND() FROM t1))
+0
+SET SESSION debug=DEFAULT;
+DROP TABLE t1;
diff --git a/mysql-test/r/subselect_notembedded.result b/mysql-test/r/subselect_notembedded.result
index 44ae055425e..9ef8c492ee3 100644
--- a/mysql-test/r/subselect_notembedded.result
+++ b/mysql-test/r/subselect_notembedded.result
@@ -1,3 +1,39 @@
purge master logs before (select adddate(current_timestamp(), interval -4 day));
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select adddate(current_timestamp(), interval -4 day))' at line 1
purge master logs before adddate(current_timestamp(), interval -4 day);
+create table t1(a int,b int,key(a),key(b));
+insert into t1(a,b) values (1,2),(2,1),(2,3),(3,4),(5,4),(5,5),
+(6,7),(7,4),(5,3);
+5
+4
+3
+2
+1
+26
+25
+24
+23
+22
+21
+20
+19
+18
+17
+16
+15
+14
+13
+12
+11
+10
+9
+8
+7
+6
+5
+4
+3
+2
+1
+drop table t1;
+End of 5.1 tests
diff --git a/mysql-test/r/symlink.result b/mysql-test/r/symlink.result
index 47901a5d896..245dcec04da 100644
--- a/mysql-test/r/symlink.result
+++ b/mysql-test/r/symlink.result
@@ -22,6 +22,7 @@ insert into t1 (b) select b from t2;
insert into t2 (b) select b from t1;
insert into t1 (b) select b from t2;
drop table t2;
+create table t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="MYSQLTEST_VARDIR/tmp" index directory="MYSQLTEST_VARDIR/run";
insert into t9 select * from t1;
check table t9;
Table Op Msg_type Msg_text
@@ -36,10 +37,10 @@ alter table t9 add column c int not null;
show create table t9;
Table Create Table
t9 CREATE TABLE `t9` (
- `a` int(11) NOT NULL auto_increment,
+ `a` int(11) NOT NULL AUTO_INCREMENT,
`b` char(16) NOT NULL,
`c` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
alter table t9 rename t8, add column d int not null;
alter table t8 rename t7;
@@ -48,14 +49,18 @@ drop table t1;
SHOW CREATE TABLE t9;
Table Create Table
t9 CREATE TABLE `t9` (
- `a` int(11) NOT NULL auto_increment,
+ `a` int(11) NOT NULL AUTO_INCREMENT,
`b` char(16) NOT NULL,
`c` int(11) NOT NULL,
`d` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
+create database mysqltest;
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="/this-dir-does-not-exist";
Got one of the listed errors
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="MYSQLTEST_VARDIR/run";
Got one of the listed errors
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="MYSQLTEST_VARDIR/tmp";
Got one of the listed errors
alter table t9 rename mysqltest.t9;
select count(*) from mysqltest.t9;
@@ -64,58 +69,63 @@ count(*)
show create table mysqltest.t9;
Table Create Table
t9 CREATE TABLE `t9` (
- `a` int(11) NOT NULL auto_increment,
+ `a` int(11) NOT NULL AUTO_INCREMENT,
`b` char(16) NOT NULL,
`c` int(11) NOT NULL,
`d` int(11) NOT NULL,
- PRIMARY KEY (`a`)
+ PRIMARY KEY (`a`)
) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
drop database mysqltest;
create table t1 (a int not null) engine=myisam;
+alter table t1 data directory="MYSQLTEST_VARDIR/tmp";
Warnings:
-Warning 0 DATA DIRECTORY option ignored
+Warning 1618 <DATA DIRECTORY> option ignored
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 add b int;
+alter table t1 data directory="MYSQLTEST_VARDIR/log";
Warnings:
-Warning 0 DATA DIRECTORY option ignored
+Warning 1618 <DATA DIRECTORY> option ignored
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` int(11) default NULL
+ `b` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1 index directory="MYSQLTEST_VARDIR/log";
Warnings:
-Warning 0 INDEX DIRECTORY option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) NOT NULL,
- `b` int(11) default NULL
+ `b` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t1(a INT)
DATA DIRECTORY='TEST_DIR/tmp'
INDEX DIRECTORY='TEST_DIR/tmp';
-ERROR HY000: Can't create/write to file 'TEST_DIR/tmp/t1.MYI' (Errcode: 17)
+Got one of the listed errors
CREATE TABLE t2(a INT)
DATA DIRECTORY='TEST_DIR/tmp'
INDEX DIRECTORY='TEST_DIR/tmp';
RENAME TABLE t2 TO t1;
ERROR HY000: Can't create/write to file 'TEST_DIR/tmp/t1.MYI' (Errcode: 17)
DROP TABLE t2;
+create temporary table t1 (a int) engine=myisam data directory="MYSQLTEST_VARDIR/log" select 9 a;
show create table t1;
Table Create Table
t1 CREATE TEMPORARY TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/log/'
+create temporary table t1 (a int) engine=myisam data directory="MYSQLTEST_VARDIR/log" select 99 a;
show create table t1;
Table Create Table
t1 CREATE TEMPORARY TABLE `t1` (
- `a` int(11) default NULL
+ `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/log/'
create table t1 (a int) engine=myisam select 42 a;
select * from t1;
@@ -128,38 +138,34 @@ select * from t1;
a
42
drop table t1;
-execute stmt;
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `c` char(10) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/'
-drop table t1;
-execute stmt;
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `c` char(10) default NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/'
-drop table t1;
-deallocate prepare stmt;
-CREATE TABLE t1(a INT)
-DATA DIRECTORY='TEST_DIR/var/master-data/test';
-Got one of the listed errors
-CREATE TABLE t1(a INT)
-DATA DIRECTORY='TEST_DIR/var/master-data/';
-Got one of the listed errors
-CREATE TABLE t1(a INT)
-INDEX DIRECTORY='TEST_DIR/var/master-data';
-Got one of the listed errors
-CREATE TABLE t1(a INT)
-INDEX DIRECTORY='TEST_DIR/var/master-data_var';
-Got one of the listed errors
End of 4.1 tests
SET SESSION keep_files_on_create = TRUE;
CREATE TABLE t1 (a INT) ENGINE MYISAM;
-ERROR HY000: Can't create/write to file './test/t1.MYD' (Errcode: 17)
+Got one of the listed errors
SET SESSION keep_files_on_create = FALSE;
CREATE TABLE t1 (a INT) ENGINE MYISAM;
DROP TABLE t1;
End of 5.0 tests
+CREATE TABLE t1(a INT)
+INDEX DIRECTORY='MYSQLD_DATADIR/mysql';
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a INT)
+DATA DIRECTORY='MYSQLD_DATADIR/test';
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a INT)
+DATA DIRECTORY='MYSQLD_DATADIR/';
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a INT)
+INDEX DIRECTORY='MYSQLD_DATADIR';
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a INT)
+INDEX DIRECTORY='TEST_DIR/master-data_var';
+ERROR HY000: Can't create/write to file 'TEST_DIR/master-data_var/t1.MYI' (Errcode: 2)
+SET @OLD_SQL_MODE=@@SQL_MODE, @@SQL_MODE='NO_DIR_IN_CREATE';
+CREATE TABLE t1(a INT) DATA DIRECTORY='MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY='MYSQLTEST_VARDIR/tmp';
+Warnings:
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
+DROP TABLE t1;
+SET @@SQL_MODE=@OLD_SQL_MODE;
+End of 5.1 tests
diff --git a/mysql-test/r/synchronization.result b/mysql-test/r/synchronization.result
index 44edfb1e535..3f6d16178dd 100644
--- a/mysql-test/r/synchronization.result
+++ b/mysql-test/r/synchronization.result
@@ -5,7 +5,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -13,7 +13,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -21,7 +21,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -29,7 +29,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -37,7 +37,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -45,7 +45,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -53,7 +53,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -61,7 +61,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -69,7 +69,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -77,7 +77,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -85,7 +85,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -93,7 +93,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -101,7 +101,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -109,7 +109,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -117,7 +117,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -125,7 +125,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -133,7 +133,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -141,7 +141,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x1 x2 INT;
@@ -149,7 +149,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
ALTER TABLE t1 CHANGE x2 x1 INT;
@@ -157,7 +157,7 @@ CREATE TABLE t2 LIKE t1;
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `xx` int(11) default NULL
+ `xx` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t2;
DROP TABLE t1;
diff --git a/mysql-test/r/system_mysql_db.result b/mysql-test/r/system_mysql_db.result
index 999f12a0573..e252331cd1a 100644
--- a/mysql-test/r/system_mysql_db.result
+++ b/mysql-test/r/system_mysql_db.result
@@ -1,16 +1,21 @@
-drop table if exists t1,t1aa,t2aa;
show tables;
Tables_in_db
columns_priv
db
+event
func
+general_log
help_category
help_keyword
help_relation
help_topic
host
+ndb_binlog_index
+plugin
proc
procs_priv
+servers
+slow_log
tables_priv
time_zone
time_zone_leap_second
@@ -21,164 +26,239 @@ user
show create table db;
Table Create Table
db CREATE TABLE `db` (
- `Host` char(60) collate utf8_bin NOT NULL default '',
- `Db` char(64) collate utf8_bin NOT NULL default '',
- `User` char(16) collate utf8_bin NOT NULL default '',
- `Select_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Insert_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Update_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Delete_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Drop_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Grant_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `References_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Index_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Alter_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_tmp_table_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Lock_tables_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Show_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Alter_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Execute_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- PRIMARY KEY (`Host`,`Db`,`User`),
+ `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Event_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ PRIMARY KEY (`Host`,`Db`,`User`),
KEY `User` (`User`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Database privileges'
show create table host;
Table Create Table
host CREATE TABLE `host` (
- `Host` char(60) collate utf8_bin NOT NULL default '',
- `Db` char(64) collate utf8_bin NOT NULL default '',
- `Select_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Insert_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Update_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Delete_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Drop_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Grant_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `References_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Index_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Alter_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_tmp_table_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Lock_tables_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Show_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Alter_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Execute_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- PRIMARY KEY (`Host`,`Db`)
+ `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ PRIMARY KEY (`Host`,`Db`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Host privileges; Merged with database privileges'
show create table user;
Table Create Table
user CREATE TABLE `user` (
- `Host` char(60) collate utf8_bin NOT NULL default '',
- `User` char(16) collate utf8_bin NOT NULL default '',
- `Password` char(41) character set latin1 collate latin1_bin NOT NULL default '',
- `Select_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Insert_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Update_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Delete_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Drop_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Reload_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Shutdown_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Process_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `File_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Grant_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `References_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Index_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Alter_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Show_db_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Super_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_tmp_table_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Lock_tables_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Execute_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Repl_slave_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Repl_client_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Show_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Alter_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `Create_user_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
- `ssl_type` enum('','ANY','X509','SPECIFIED') character set utf8 NOT NULL default '',
+ `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Password` char(41) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
+ `Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Reload_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Shutdown_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Process_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `File_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Show_db_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Super_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Repl_slave_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Repl_client_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Create_user_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Event_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
+ `ssl_type` enum('','ANY','X509','SPECIFIED') CHARACTER SET utf8 NOT NULL DEFAULT '',
`ssl_cipher` blob NOT NULL,
`x509_issuer` blob NOT NULL,
`x509_subject` blob NOT NULL,
- `max_questions` int(11) unsigned NOT NULL default '0',
- `max_updates` int(11) unsigned NOT NULL default '0',
- `max_connections` int(11) unsigned NOT NULL default '0',
- `max_user_connections` int(11) unsigned NOT NULL default '0',
- PRIMARY KEY (`Host`,`User`)
+ `max_questions` int(11) unsigned NOT NULL DEFAULT '0',
+ `max_updates` int(11) unsigned NOT NULL DEFAULT '0',
+ `max_connections` int(11) unsigned NOT NULL DEFAULT '0',
+ `max_user_connections` int(11) unsigned NOT NULL DEFAULT '0',
+ PRIMARY KEY (`Host`,`User`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges'
show create table func;
Table Create Table
func CREATE TABLE `func` (
- `name` char(64) collate utf8_bin NOT NULL default '',
- `ret` tinyint(1) NOT NULL default '0',
- `dl` char(128) collate utf8_bin NOT NULL default '',
- `type` enum('function','aggregate') character set utf8 NOT NULL,
- PRIMARY KEY (`name`)
+ `name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `ret` tinyint(1) NOT NULL DEFAULT '0',
+ `dl` char(128) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `type` enum('function','aggregate') CHARACTER SET utf8 NOT NULL,
+ PRIMARY KEY (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='User defined functions'
show create table tables_priv;
Table Create Table
tables_priv CREATE TABLE `tables_priv` (
- `Host` char(60) collate utf8_bin NOT NULL default '',
- `Db` char(64) collate utf8_bin NOT NULL default '',
- `User` char(16) collate utf8_bin NOT NULL default '',
- `Table_name` char(64) collate utf8_bin NOT NULL default '',
- `Grantor` char(77) collate utf8_bin NOT NULL default '',
- `Timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `Table_priv` set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view') character set utf8 NOT NULL default '',
- `Column_priv` set('Select','Insert','Update','References') character set utf8 NOT NULL default '',
- PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`),
+ `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Table_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Grantor` char(77) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `Table_priv` set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger') CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `Column_priv` set('Select','Insert','Update','References') CHARACTER SET utf8 NOT NULL DEFAULT '',
+ PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`),
KEY `Grantor` (`Grantor`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Table privileges'
show create table columns_priv;
Table Create Table
columns_priv CREATE TABLE `columns_priv` (
- `Host` char(60) collate utf8_bin NOT NULL default '',
- `Db` char(64) collate utf8_bin NOT NULL default '',
- `User` char(16) collate utf8_bin NOT NULL default '',
- `Table_name` char(64) collate utf8_bin NOT NULL default '',
- `Column_name` char(64) collate utf8_bin NOT NULL default '',
- `Timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `Column_priv` set('Select','Insert','Update','References') character set utf8 NOT NULL default '',
- PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`,`Column_name`)
+ `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Table_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Column_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `Column_priv` set('Select','Insert','Update','References') CHARACTER SET utf8 NOT NULL DEFAULT '',
+ PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`,`Column_name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Column privileges'
show create table procs_priv;
Table Create Table
procs_priv CREATE TABLE `procs_priv` (
- `Host` char(60) collate utf8_bin NOT NULL default '',
- `Db` char(64) collate utf8_bin NOT NULL default '',
- `User` char(16) collate utf8_bin NOT NULL default '',
- `Routine_name` char(64) collate utf8_bin NOT NULL default '',
- `Routine_type` enum('FUNCTION','PROCEDURE') collate utf8_bin NOT NULL,
- `Grantor` char(77) collate utf8_bin NOT NULL default '',
- `Proc_priv` set('Execute','Alter Routine','Grant') character set utf8 NOT NULL default '',
- `Timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`,`Routine_type`),
+ `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Routine_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Routine_type` enum('FUNCTION','PROCEDURE') COLLATE utf8_bin NOT NULL,
+ `Grantor` char(77) COLLATE utf8_bin NOT NULL DEFAULT '',
+ `Proc_priv` set('Execute','Alter Routine','Grant') CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`,`Routine_type`),
KEY `Grantor` (`Grantor`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Procedure privileges'
+show create table servers;
+Table Create Table
+servers CREATE TABLE `servers` (
+ `Server_name` char(64) NOT NULL DEFAULT '',
+ `Host` char(64) NOT NULL DEFAULT '',
+ `Db` char(64) NOT NULL DEFAULT '',
+ `Username` char(64) NOT NULL DEFAULT '',
+ `Password` char(64) NOT NULL DEFAULT '',
+ `Port` int(4) NOT NULL DEFAULT '0',
+ `Socket` char(64) NOT NULL DEFAULT '',
+ `Wrapper` char(64) NOT NULL DEFAULT '',
+ `Owner` char(64) NOT NULL DEFAULT '',
+ PRIMARY KEY (`Server_name`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='MySQL Foreign Servers table'
show create table proc;
Table Create Table
proc CREATE TABLE `proc` (
- `db` char(64) character set utf8 collate utf8_bin NOT NULL default '',
- `name` char(64) NOT NULL default '',
+ `db` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
+ `name` char(64) NOT NULL DEFAULT '',
`type` enum('FUNCTION','PROCEDURE') NOT NULL,
- `specific_name` char(64) NOT NULL default '',
- `language` enum('SQL') NOT NULL default 'SQL',
- `sql_data_access` enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') NOT NULL default 'CONTAINS_SQL',
- `is_deterministic` enum('YES','NO') NOT NULL default 'NO',
- `security_type` enum('INVOKER','DEFINER') NOT NULL default 'DEFINER',
+ `specific_name` char(64) NOT NULL DEFAULT '',
+ `language` enum('SQL') NOT NULL DEFAULT 'SQL',
+ `sql_data_access` enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') NOT NULL DEFAULT 'CONTAINS_SQL',
+ `is_deterministic` enum('YES','NO') NOT NULL DEFAULT 'NO',
+ `security_type` enum('INVOKER','DEFINER') NOT NULL DEFAULT 'DEFINER',
`param_list` blob NOT NULL,
- `returns` char(64) NOT NULL default '',
+ `returns` longblob NOT NULL,
`body` longblob NOT NULL,
- `definer` char(77) character set utf8 collate utf8_bin NOT NULL default '',
- `created` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `modified` timestamp NOT NULL default '0000-00-00 00:00:00',
- `sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE') NOT NULL default '',
- `comment` char(64) character set utf8 collate utf8_bin NOT NULL default '',
- PRIMARY KEY (`db`,`name`,`type`)
+ `definer` char(77) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
+ `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `modified` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NOT NULL DEFAULT '',
+ `comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
+ `character_set_client` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ `collation_connection` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ `db_collation` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ `body_utf8` longblob,
+ PRIMARY KEY (`db`,`name`,`type`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Stored Procedures'
+show create table event;
+Table Create Table
+event CREATE TABLE `event` (
+ `db` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
+ `name` char(64) NOT NULL DEFAULT '',
+ `body` longblob NOT NULL,
+ `definer` char(77) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
+ `execute_at` datetime DEFAULT NULL,
+ `interval_value` int(11) DEFAULT NULL,
+ `interval_field` enum('YEAR','QUARTER','MONTH','DAY','HOUR','MINUTE','WEEK','SECOND','MICROSECOND','YEAR_MONTH','DAY_HOUR','DAY_MINUTE','DAY_SECOND','HOUR_MINUTE','HOUR_SECOND','MINUTE_SECOND','DAY_MICROSECOND','HOUR_MICROSECOND','MINUTE_MICROSECOND','SECOND_MICROSECOND') DEFAULT NULL,
+ `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `modified` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `last_executed` datetime DEFAULT NULL,
+ `starts` datetime DEFAULT NULL,
+ `ends` datetime DEFAULT NULL,
+ `status` enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') NOT NULL DEFAULT 'ENABLED',
+ `on_completion` enum('DROP','PRESERVE') NOT NULL DEFAULT 'DROP',
+ `sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NOT NULL DEFAULT '',
+ `comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
+ `originator` int(10) unsigned NOT NULL,
+ `time_zone` char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM',
+ `character_set_client` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ `collation_connection` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ `db_collation` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
+ `body_utf8` longblob,
+ PRIMARY KEY (`db`,`name`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Events'
+show create table general_log;
+Table Create Table
+general_log CREATE TABLE `general_log` (
+ `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `thread_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `command_type` varchar(64) NOT NULL,
+ `argument` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log'
+show create table slow_log;
+Table Create Table
+slow_log CREATE TABLE `slow_log` (
+ `start_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `user_host` mediumtext NOT NULL,
+ `query_time` time NOT NULL,
+ `lock_time` time NOT NULL,
+ `rows_sent` int(11) NOT NULL,
+ `rows_examined` int(11) NOT NULL,
+ `db` varchar(512) NOT NULL,
+ `last_insert_id` int(11) NOT NULL,
+ `insert_id` int(11) NOT NULL,
+ `server_id` int(10) unsigned NOT NULL,
+ `sql_text` mediumtext NOT NULL
+) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log'
show tables;
Tables_in_test
diff --git a/mysql-test/r/temp_table.result b/mysql-test/r/temp_table.result
index d6adf51602b..ba6b9f81a2d 100644
--- a/mysql-test/r/temp_table.result
+++ b/mysql-test/r/temp_table.result
@@ -77,7 +77,7 @@ drop table t1,t2;
create temporary table t1 (a int not null);
insert into t1 values (1),(1);
alter table t1 add primary key (a);
-ERROR 23000: Duplicate entry '1' for key 1
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
drop table t1;
CREATE TABLE t1 (
d datetime default NULL
@@ -98,7 +98,7 @@ d
show status like "created_tmp%tables";
Variable_name Value
Created_tmp_disk_tables 0
-Created_tmp_tables 2
+Created_tmp_tables 1
drop table t1;
create temporary table v1 as select 'This is temp. table' A;
create view v1 as select 'This is view' A;
@@ -108,11 +108,11 @@ This is temp. table
show create table v1;
Table Create Table
v1 CREATE TEMPORARY TABLE `v1` (
- `A` varchar(19) NOT NULL default ''
+ `A` varchar(19) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select _latin1'This is view' AS `A`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 'This is view' AS `A` latin1 latin1_swedish_ci
drop view v1;
select * from v1;
A
@@ -173,3 +173,41 @@ c/1
12139
1
DROP TABLE t1, t2;
+create temporary table t1 (a int);
+insert into t1 values (4711);
+select * from t1;
+a
+4711
+truncate t1;
+insert into t1 values (42);
+select * from t1;
+a
+42
+drop table t1;
+CREATE TEMPORARY TABLE t1(a INT, b VARCHAR(20));
+INSERT INTO t1 VALUES(1, 'val1'), (2, 'val2'), (3, 'val3');
+DELETE FROM t1 WHERE a=1;
+SELECT count(*) FROM t1;
+count(*)
+2
+DELETE FROM t1;
+SELECT * FROM t1;
+a b
+DROP TABLE t1;
+DROP TABLE IF EXISTS t1,t2;
+DROP FUNCTION IF EXISTS f1;
+CREATE TEMPORARY TABLE t1 (a INT);
+CREATE TEMPORARY TABLE t2 LIKE t1;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+return 1;
+END|
+INSERT INTO t2 SELECT * FROM t1;
+INSERT INTO t1 SELECT f1();
+CREATE TABLE t3 SELECT * FROM t1;
+INSERT INTO t1 SELECT f1();
+UPDATE t1,t2 SET t1.a = t2.a;
+INSERT INTO t2 SELECT f1();
+DROP TABLE t1,t2,t3;
+DROP FUNCTION f1;
+End of 5.1 tests
diff --git a/mysql-test/r/timezone2.result b/mysql-test/r/timezone2.result
index e115ce16fa4..2948bb8ecec 100644
--- a/mysql-test/r/timezone2.result
+++ b/mysql-test/r/timezone2.result
@@ -70,7 +70,7 @@ i ts
1067129999 2003-10-26 00:59:59
1067137200 2003-10-26 03:00:00
1067129999 2003-10-26 00:59:59
-delete from t1;
+truncate table t1;
set time_zone='Europe/Moscow';
insert into t1 (i, ts) values
(unix_timestamp('2004-01-01 00:00:00'),'2004-01-01 00:00:00'),
@@ -85,7 +85,7 @@ i ts
1080428400 2004-03-28 03:00:00
1091304000 2003-08-01 00:00:00
1099175400 2004-10-31 02:30:00
-delete from t1;
+truncate table t1;
set time_zone='leap/Europe/Moscow';
insert into t1 (i, ts) values
(unix_timestamp('2004-01-01 00:00:00'),'2004-01-01 00:00:00'),
@@ -100,7 +100,7 @@ i ts
1080428422 2004-03-28 03:00:00
1091304022 2003-08-01 00:00:00
1099175422 2004-10-31 02:30:00
-delete from t1;
+truncate table t1;
insert into t1 (i, ts) values
(unix_timestamp('1981-07-01 03:59:59'),'1981-07-01 03:59:59'),
(unix_timestamp('1981-07-01 04:00:00'),'1981-07-01 04:00:00');
@@ -118,9 +118,9 @@ insert into t1 values ('0000-00-00 00:00:00'),('1969-12-31 23:59:59'),
('1970-01-01 00:00:00'),('1970-01-01 00:00:01'),
('2038-01-19 03:14:07'),('2038-01-19 03:14:08');
Warnings:
-Warning 1264 Out of range value adjusted for column 'ts' at row 2
-Warning 1264 Out of range value adjusted for column 'ts' at row 3
-Warning 1264 Out of range value adjusted for column 'ts' at row 6
+Warning 1264 Out of range value for column 'ts' at row 2
+Warning 1264 Out of range value for column 'ts' at row 3
+Warning 1264 Out of range value for column 'ts' at row 6
select * from t1;
ts
0000-00-00 00:00:00
@@ -129,15 +129,15 @@ ts
1970-01-01 00:00:01
2038-01-19 03:14:07
0000-00-00 00:00:00
-delete from t1;
+truncate table t1;
set time_zone='MET';
insert into t1 values ('0000-00-00 00:00:00'),('1970-01-01 00:30:00'),
('1970-01-01 01:00:00'),('1970-01-01 01:00:01'),
('2038-01-19 04:14:07'),('2038-01-19 04:14:08');
Warnings:
-Warning 1264 Out of range value adjusted for column 'ts' at row 2
-Warning 1264 Out of range value adjusted for column 'ts' at row 3
-Warning 1264 Out of range value adjusted for column 'ts' at row 6
+Warning 1264 Out of range value for column 'ts' at row 2
+Warning 1264 Out of range value for column 'ts' at row 3
+Warning 1264 Out of range value for column 'ts' at row 6
select * from t1;
ts
0000-00-00 00:00:00
@@ -146,15 +146,15 @@ ts
1970-01-01 01:00:01
2038-01-19 04:14:07
0000-00-00 00:00:00
-delete from t1;
+truncate table t1;
set time_zone='+01:30';
insert into t1 values ('0000-00-00 00:00:00'),('1970-01-01 01:00:00'),
('1970-01-01 01:30:00'),('1970-01-01 01:30:01'),
('2038-01-19 04:44:07'),('2038-01-19 04:44:08');
Warnings:
-Warning 1264 Out of range value adjusted for column 'ts' at row 2
-Warning 1264 Out of range value adjusted for column 'ts' at row 3
-Warning 1264 Out of range value adjusted for column 'ts' at row 6
+Warning 1264 Out of range value for column 'ts' at row 2
+Warning 1264 Out of range value for column 'ts' at row 3
+Warning 1264 Out of range value for column 'ts' at row 6
select * from t1;
ts
0000-00-00 00:00:00
@@ -269,6 +269,8 @@ select * from t1;
convert_tz(NULL, NULL, NULL)
NULL
drop table t1;
+SET @old_log_bin_trust_function_creators = @@global.log_bin_trust_function_creators;
+SET GLOBAL log_bin_trust_function_creators = 1;
create table t1 (ldt datetime, udt datetime);
create function f1(i datetime) returns datetime
return convert_tz(i, 'UTC', 'Europe/Moscow');
@@ -283,3 +285,15 @@ ldt ldt2
2006-04-19 16:30:00 2006-04-19 16:30:00
drop table t1;
drop function f1;
+SET @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (t TIMESTAMP);
+INSERT INTO t1 VALUES (NULL), (NULL);
+LOCK TABLES t1 WRITE;
+SELECT CONVERT_TZ(NOW(), 'UTC', 'Europe/Moscow') IS NULL;
+CONVERT_TZ(NOW(), 'UTC', 'Europe/Moscow') IS NULL
+0
+UPDATE t1 SET t = CONVERT_TZ(t, 'UTC', 'Europe/Moscow');
+UNLOCK TABLES;
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/timezone_grant.result b/mysql-test/r/timezone_grant.result
index 2f4d46dfdc0..49918038da5 100644
--- a/mysql-test/r/timezone_grant.result
+++ b/mysql-test/r/timezone_grant.result
@@ -40,7 +40,7 @@ select convert_tz('2004-11-31 12:00:00', 'Europe/Moscow', 'UTC');
convert_tz('2004-11-31 12:00:00', 'Europe/Moscow', 'UTC')
NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '2004-11-31 12:00:00'
+Warning 1292 Incorrect datetime value: '2004-11-31 12:00:00'
select convert_tz(b, 'Europe/Moscow', 'UTC') from t1;
convert_tz(b, 'Europe/Moscow', 'UTC')
update t1, t2 set t1.b = convert_tz('2004-11-30 12:00:00', 'Europe/Moscow', 'UTC')
diff --git a/mysql-test/r/trigger-compat.result b/mysql-test/r/trigger-compat.result
index 81c7a14c173..2bcd919e0db 100644
--- a/mysql-test/r/trigger-compat.result
+++ b/mysql-test/r/trigger-compat.result
@@ -7,8 +7,7 @@ DROP DATABASE IF EXISTS mysqltest_db1;
CREATE DATABASE mysqltest_db1;
CREATE USER mysqltest_dfn@localhost;
CREATE USER mysqltest_inv@localhost;
-GRANT SUPER ON *.* TO mysqltest_dfn@localhost;
-GRANT CREATE ON mysqltest_db1.* TO mysqltest_dfn@localhost;
+GRANT CREATE, TRIGGER ON mysqltest_db1.* TO mysqltest_dfn@localhost;
---> connection: wl2818_definer_con
CREATE TABLE t1(num_value INT);
@@ -31,9 +30,9 @@ Warnings:
Warning 1454 No definer attribute for trigger 'mysqltest_db1'.'wl2818_trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
SELECT * FROM INFORMATION_SCHEMA.TRIGGERS ORDER BY trigger_name;
-TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
-NULL mysqltest_db1 wl2818_trg1 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW BEFORE NULL NULL OLD NEW NULL
-NULL mysqltest_db1 wl2818_trg2 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW AFTER NULL NULL OLD NEW NULL mysqltest_dfn@localhost
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest_db1 wl2818_trg1 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW BEFORE NULL NULL OLD NEW NULL latin1 latin1_swedish_ci latin1_swedish_ci
+NULL mysqltest_db1 wl2818_trg2 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW AFTER NULL NULL OLD NEW NULL mysqltest_dfn@localhost latin1 latin1_swedish_ci latin1_swedish_ci
DROP TRIGGER wl2818_trg1;
Warnings:
Warning 1454 No definer attribute for trigger 'mysqltest_db1'.'wl2818_trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
diff --git a/mysql-test/r/trigger-trans.result b/mysql-test/r/trigger-trans.result
index dccaa27c5fd..2c4e355af9d 100644
--- a/mysql-test/r/trigger-trans.result
+++ b/mysql-test/r/trigger-trans.result
@@ -19,6 +19,7 @@ a b
THE LION 13
optimize table t1;
Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
test.t1 optimize status OK
select trigger_schema, trigger_name, event_object_schema,
event_object_table, action_statement from information_schema.triggers
@@ -160,3 +161,32 @@ SELECT @a, @b;
1 1
DROP TABLE t2, t1;
End of 5.0 tests
+BUG#31612
+Trigger fired multiple times leads to gaps in auto_increment sequence
+create table t1 (a int, val char(1)) engine=InnoDB;
+create table t2 (b int auto_increment primary key,
+val char(1)) engine=InnoDB;
+create trigger t1_after_insert after
+insert on t1 for each row insert into t2 set val=NEW.val;
+insert into t1 values ( 123, 'a'), ( 123, 'b'), ( 123, 'c'),
+(123, 'd'), (123, 'e'), (123, 'f'), (123, 'g');
+insert into t1 values ( 654, 'a'), ( 654, 'b'), ( 654, 'c'),
+(654, 'd'), (654, 'e'), (654, 'f'), (654, 'g');
+select * from t2 order by b;
+b val
+1 a
+2 b
+3 c
+4 d
+5 e
+6 f
+7 g
+8 a
+9 b
+10 c
+11 d
+12 e
+13 f
+14 g
+drop trigger t1_after_insert;
+drop table t1,t2;
diff --git a/mysql-test/r/trigger.result b/mysql-test/r/trigger.result
index a88a6973d61..4476735735c 100644
--- a/mysql-test/r/trigger.result
+++ b/mysql-test/r/trigger.result
@@ -406,13 +406,13 @@ create table t1 (i int, j int, k int);
create trigger trg1 before insert on t1 for each row set new.k = new.i;
create trigger trg2 after insert on t1 for each row set @b:= "Fired";
set @b:="";
-load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, i);
+load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, i);
select *, @b from t1;
i j k @b
10 NULL 10 Fired
15 NULL 15 Fired
set @b:="";
-load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, j);
+load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, j);
select *, @b from t1;
i j k @b
10 NULL 10 Fired
@@ -449,7 +449,7 @@ ERROR 42S22: Unknown column 'at' in 'OLD'
select * from t1;
i k
1 1
-load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k);
+load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k);
ERROR 42S22: Unknown column 'at' in 'NEW'
select * from t1;
i k
@@ -524,7 +524,7 @@ select * from t1;
i k
1 1
2 2
-load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k);
+load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k);
ERROR 42S22: Unknown column 'bt' in 'NEW'
select * from t1;
i k
@@ -600,9 +600,9 @@ select @a;
@a
10
show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
-t1_bi INSERT t1 set new."t1 column" = 5 BEFORE # REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI root@localhost
-t1_af INSERT t1 set @a=10 AFTER # root@localhost
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+t1_bi INSERT t1 set new."t1 column" = 5 BEFORE # REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+t1_af INSERT t1 set @a=10 AFTER # root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
drop table t1;
set sql_mode="traditional";
create table t1 (a date);
@@ -619,11 +619,11 @@ set sql_mode=default;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` date default NULL
+ `a` date DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show triggers;
-Trigger Event Table Statement Timing Created sql_mode Definer
-t1_bi INSERT t1 set new.a = '2004-01-00' BEFORE # root@localhost
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+t1_bi INSERT t1 set new.a = '2004-01-00' BEFORE # root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
drop table t1;
create table t1 (id int);
create trigger t1_ai after insert on t1 for each row reset query cache;
@@ -820,7 +820,6 @@ call p1();
drop trigger t1_bi;
create trigger t1_bi after insert on t1 for each row insert into t3 values (new.id);
execute stmt1;
-ERROR 42S02: Table 'test.t3' doesn't exist
call p1();
ERROR 42S02: Table 'test.t3' doesn't exist
deallocate prepare stmt1;
@@ -947,7 +946,7 @@ mysqltest t1_bi mysqltest t1 set @a:=new.id
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `id` int(11) default NULL
+ `id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop trigger test.t1_bi;
ERROR HY000: Trigger does not exist
@@ -998,7 +997,7 @@ insert into t1 (a) values
create trigger t2_ai after insert on t2 for each row
set @a:= (select max(a) from t2);
insert into t2 select * from t1;
-load data infile '../std_data_ln/words.dat' into table t1 (a);
+load data infile '../../std_data/words.dat' into table t1 (a);
drop trigger t1_ai;
drop trigger t2_ai;
create function f1() returns int return (select max(b) from t1);
@@ -1007,10 +1006,10 @@ insert into t1 values
("And",f1()),("the",f1()),("mome", f1()),("raths",f1()),("outgrabe",f1());
create function f2() returns int return (select max(b) from t2);
insert into t2 select a, f2() from t1;
-load data infile '../std_data_ln/words.dat' into table t1 (a) set b:= f1();
-drop table t1, t2;
+load data infile '../../std_data/words.dat' into table t1 (a) set b:= f1();
drop function f1;
drop function f2;
+drop table t1, t2;
create table t1(i int not null, j int not null, n numeric(15,2), primary key(i,j));
create table t2(i int not null, n numeric(15,2), primary key(i));
create trigger t1_ai after insert on t1 for each row
@@ -1982,3 +1981,110 @@ DROP TABLE t1;
DROP TRIGGER t_insert;
DROP TABLE t2;
End of 5.0 tests
+drop table if exists table_25411_a;
+drop table if exists table_25411_b;
+create table table_25411_a(a int);
+create table table_25411_b(b int);
+create trigger trg_25411a_ai after insert on table_25411_a
+for each row
+insert into table_25411_b select new.*;
+select * from table_25411_a;
+a
+insert into table_25411_a values (1);
+ERROR 42S02: Unknown table 'new'
+select * from table_25411_a;
+a
+1
+drop table table_25411_a;
+drop table table_25411_b;
+DROP TRIGGER IF EXISTS trg;
+SHOW CREATE TRIGGER trg;
+ERROR HY000: Trigger does not exist
+drop table if exists t1;
+create table t1 (i int, j int);
+create trigger t1_bi before insert on t1 for each row begin end;
+create trigger t1_bi before insert on t1 for each row begin end;
+ERROR 42000: This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
+drop trigger t1_bi;
+drop trigger t1_bi;
+ERROR HY000: Trigger does not exist
+lock tables t1 read;
+create trigger t1_bi before insert on t1 for each row begin end;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+create trigger t1_bi before insert on t1 for each row begin end;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+drop trigger t1_bi;
+ERROR HY000: Trigger does not exist
+unlock tables;
+create trigger t1_bi before insert on t1 for each row begin end;
+lock tables t1 read;
+create trigger t1_bi before insert on t1 for each row begin end;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+drop trigger t1_bi;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+unlock tables;
+drop trigger t1_bi;
+lock tables t1 write;
+create trigger b1_bi before insert on t1 for each row set new.i = new.i + 10;
+insert into t1 values (10, 10);
+drop trigger b1_bi;
+insert into t1 values (10, 10);
+select * from t1;
+i j
+20 10
+10 10
+unlock tables;
+drop table t1;
+drop table if exists t1, t2;
+drop trigger if exists trg1;
+drop trigger if exists trg2;
+create table t1 (a int);
+create table t2 (b int);
+create trigger trg1 after update on t1 for each row set @a= @a+1;
+create trigger trg2 after update on t2 for each row set @b= @b+1;
+insert into t1 values (1), (2), (3);
+insert into t2 values (1), (2), (3);
+set @a= 0;
+set @b= 0;
+update t1, t2 set t1.a= t1.a, t2.b= t2.b;
+select @a, @b;
+@a @b
+3 3
+update t1, t2 set t1.a= t2.b, t2.b= t1.a;
+select @a, @b;
+@a @b
+6 6
+update t1 set a= a;
+select @a, @b;
+@a @b
+9 6
+update t2 set b= b;
+select @a, @b;
+@a @b
+9 9
+update t1 set a= 1;
+select @a, @b;
+@a @b
+12 9
+update t2 set b= 1;
+select @a, @b;
+@a @b
+12 12
+drop trigger trg1;
+drop trigger trg2;
+drop table t1, t2;
+CREATE TABLE t1 ( a INT, b INT );
+CREATE TABLE t2 ( a INT AUTO_INCREMENT KEY, b INT );
+INSERT INTO t1 (a) VALUES (1);
+CREATE TRIGGER tr1
+BEFORE INSERT ON t2
+FOR EACH ROW
+BEGIN
+UPDATE a_nonextisting_table SET a = 1;
+END//
+CREATE TABLE IF NOT EXISTS t2 ( a INT, b INT ) SELECT a, b FROM t1;
+ERROR 42S02: Table 'test.a_nonextisting_table' doesn't exist
+SELECT * FROM t2;
+a b
+DROP TABLE t1, t2;
+End of 5.1 tests.
diff --git a/mysql-test/r/trigger-grant.result b/mysql-test/r/trigger_notembedded.result
index f6384d479b7..d66308a9bd7 100644
--- a/mysql-test/r/trigger-grant.result
+++ b/mysql-test/r/trigger_notembedded.result
@@ -7,12 +7,57 @@ DROP DATABASE IF EXISTS mysqltest_db1;
CREATE DATABASE mysqltest_db1;
CREATE USER mysqltest_dfn@localhost;
CREATE USER mysqltest_inv@localhost;
-GRANT SUPER ON *.* TO mysqltest_dfn@localhost;
GRANT CREATE ON mysqltest_db1.* TO mysqltest_dfn@localhost;
---> connection: wl2818_definer_con
CREATE TABLE t1(num_value INT);
CREATE TABLE t2(user_str TEXT);
+
+---> connection: default
+GRANT INSERT, DROP ON mysqltest_db1.t1 TO mysqltest_dfn@localhost;
+GRANT INSERT, DROP ON mysqltest_db1.t2 TO mysqltest_dfn@localhost;
+
+---> connection: default
+GRANT SUPER ON *.* TO mysqltest_dfn@localhost;
+
+---> connection: wl2818_definer_con
+CREATE TRIGGER trg1 AFTER INSERT ON t1
+FOR EACH ROW
+INSERT INTO t2 VALUES(CURRENT_USER());
+ERROR 42000: TRIGGER command denied to user 'mysqltest_dfn'@'localhost' for table 't1'
+
+---> connection: default
+GRANT TRIGGER ON mysqltest_db1.t1 TO mysqltest_dfn@localhost;
+
+---> connection: wl2818_definer_con
+CREATE TRIGGER trg1 AFTER INSERT ON t1
+FOR EACH ROW
+INSERT INTO t2 VALUES(CURRENT_USER());
+
+---> connection: default
+REVOKE TRIGGER ON mysqltest_db1.t1 FROM mysqltest_dfn@localhost;
+
+---> connection: wl2818_definer_con
+DROP TRIGGER trg1;
+ERROR 42000: TRIGGER command denied to user 'mysqltest_dfn'@'localhost' for table 't1'
+
+---> connection: wl2818_definer_con
+INSERT INTO t1 VALUES(0);
+ERROR 42000: TRIGGER command denied to user 'mysqltest_dfn'@'localhost' for table 't1'
+
+---> connection: default
+GRANT TRIGGER ON mysqltest_db1.t1 TO mysqltest_dfn@localhost;
+
+---> connection: wl2818_definer_con
+INSERT INTO t1 VALUES(0);
+DROP TRIGGER trg1;
+TRUNCATE TABLE t1;
+TRUNCATE TABLE t2;
+
+---> connection: default
+REVOKE SUPER ON *.* FROM mysqltest_dfn@localhost;
+
+---> connection: wl2818_definer_con
CREATE TRIGGER trg1 AFTER INSERT ON t1
FOR EACH ROW
INSERT INTO t2 VALUES(CURRENT_USER());
@@ -72,18 +117,29 @@ CREATE DEFINER='mysqltest_inv'@'localhost'
TRIGGER trg1 BEFORE INSERT ON t1
FOR EACH ROW
SET @new_sum = 0;
+ERROR 42000: Access denied; you need the SUPER privilege for this operation
+
+---> connection: default
+use mysqltest_db1;
+GRANT SUPER ON *.* TO mysqltest_dfn@localhost;
+
+---> connection: wl2818_definer_con
+CREATE DEFINER='mysqltest_inv'@'localhost'
+ TRIGGER trg1 BEFORE INSERT ON t1
+FOR EACH ROW
+SET @new_sum = 0;
CREATE DEFINER='mysqltest_nonexs'@'localhost'
TRIGGER trg2 AFTER INSERT ON t1
FOR EACH ROW
SET @new_sum = 0;
Warnings:
-Note 1449 There is no 'mysqltest_nonexs'@'localhost' registered
+Note 1449 The user specified as a definer ('mysqltest_nonexs'@'localhost') does not exist
INSERT INTO t1 VALUES(6);
-ERROR 42000: Access denied; you need the SUPER privilege for this operation
+ERROR HY000: The user specified as a definer ('mysqltest_nonexs'@'localhost') does not exist
SHOW TRIGGERS;
-Trigger Event Table Statement Timing Created sql_mode Definer
-trg1 INSERT t1 SET @new_sum = 0 BEFORE NULL mysqltest_inv@localhost
-trg2 INSERT t1 SET @new_sum = 0 AFTER NULL mysqltest_nonexs@localhost
+Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
+trg1 INSERT t1 SET @new_sum = 0 BEFORE NULL mysqltest_inv@localhost latin1 latin1_swedish_ci latin1_swedish_ci
+trg2 INSERT t1 SET @new_sum = 0 AFTER NULL mysqltest_nonexs@localhost latin1 latin1_swedish_ci latin1_swedish_ci
DROP TRIGGER trg1;
DROP TRIGGER trg2;
CREATE TRIGGER trg1 BEFORE INSERT ON t1
@@ -113,19 +169,17 @@ Warnings:
Warning 1454 No definer attribute for trigger 'mysqltest_db1'.'trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
SELECT * FROM INFORMATION_SCHEMA.TRIGGERS ORDER BY trigger_name;
-TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
-NULL mysqltest_db1 trg1 INSERT NULL mysqltest_db1 t1 0 NULL SET @a = 1 ROW BEFORE NULL NULL OLD NEW NULL
-NULL mysqltest_db1 trg2 INSERT NULL mysqltest_db1 t1 0 NULL SET @a = 2 ROW AFTER NULL NULL OLD NEW NULL @
-NULL mysqltest_db1 trg3 UPDATE NULL mysqltest_db1 t1 0 NULL SET @a = 3 ROW BEFORE NULL NULL OLD NEW NULL @abc@def@@
-NULL mysqltest_db1 trg4 UPDATE NULL mysqltest_db1 t1 0 NULL SET @a = 4 ROW AFTER NULL NULL OLD NEW NULL @hostname
-NULL mysqltest_db1 trg5 DELETE NULL mysqltest_db1 t1 0 NULL SET @a = 5 ROW BEFORE NULL NULL OLD NEW NULL @abcdef@@@hostname
+TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
+NULL mysqltest_db1 trg1 INSERT NULL mysqltest_db1 t1 0 NULL SET @a = 1 ROW BEFORE NULL NULL OLD NEW NULL latin1 latin1_swedish_ci latin1_swedish_ci
+NULL mysqltest_db1 trg2 INSERT NULL mysqltest_db1 t1 0 NULL SET @a = 2 ROW AFTER NULL NULL OLD NEW NULL @ latin1 latin1_swedish_ci latin1_swedish_ci
+NULL mysqltest_db1 trg3 UPDATE NULL mysqltest_db1 t1 0 NULL SET @a = 3 ROW BEFORE NULL NULL OLD NEW NULL @abc@def@@ latin1 latin1_swedish_ci latin1_swedish_ci
+NULL mysqltest_db1 trg4 UPDATE NULL mysqltest_db1 t1 0 NULL SET @a = 4 ROW AFTER NULL NULL OLD NEW NULL @hostname latin1 latin1_swedish_ci latin1_swedish_ci
+NULL mysqltest_db1 trg5 DELETE NULL mysqltest_db1 t1 0 NULL SET @a = 5 ROW BEFORE NULL NULL OLD NEW NULL @abcdef@@@hostname latin1 latin1_swedish_ci latin1_swedish_ci
---> connection: default
DROP USER mysqltest_dfn@localhost;
DROP USER mysqltest_inv@localhost;
DROP DATABASE mysqltest_db1;
-Warnings:
-Warning 1454 No definer attribute for trigger 'mysqltest_db1'.'trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
DELETE FROM mysql.user WHERE User LIKE 'mysqltest_%';
DELETE FROM mysql.db WHERE User LIKE 'mysqltest_%';
DELETE FROM mysql.tables_priv WHERE User LIKE 'mysqltest_%';
@@ -140,18 +194,16 @@ CREATE TABLE t3(col CHAR(20));
CREATE TABLE t4(col CHAR(20));
CREATE USER mysqltest_u1@localhost;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
-GRANT SUPER ON *.* TO mysqltest_u1@localhost;
-GRANT SELECT ON mysqltest_db1.t1 TO mysqltest_u1@localhost;
+GRANT TRIGGER ON mysqltest_db1.* TO mysqltest_u1@localhost;
SET @mysqltest_var = NULL;
---> connection: default
use mysqltest_db1;
-REVOKE SELECT ON mysqltest_db1.t1 FROM mysqltest_u1@localhost;
GRANT DELETE ON mysqltest_db1.* TO mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
-GRANT SUPER ON *.* TO 'mysqltest_u1'@'localhost'
-GRANT DELETE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'
+GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
+GRANT DELETE, TRIGGER ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'
---> connection: bug15166_u1_con
use mysqltest_db1;
@@ -322,7 +374,7 @@ CREATE TABLE t1 (i1 INT);
CREATE TABLE t2 (i1 INT);
CREATE USER mysqltest_dfn@localhost;
CREATE USER mysqltest_inv@localhost;
-GRANT EXECUTE, CREATE ROUTINE, SUPER ON *.* TO mysqltest_dfn@localhost;
+GRANT EXECUTE, CREATE ROUTINE, TRIGGER ON *.* TO mysqltest_dfn@localhost;
GRANT INSERT ON mysqltest_db1.* TO mysqltest_inv@localhost;
CREATE PROCEDURE p1(OUT i INT) DETERMINISTIC NO SQL SET i = 3;
CREATE PROCEDURE p2(INOUT i INT) DETERMINISTIC NO SQL SET i = i * 5;
@@ -394,3 +446,32 @@ DROP TABLE t1;
DROP DATABASE mysqltest_db1;
USE test;
End of 5.0 tests.
+drop table if exists t1;
+create table t1 (i int);
+connection: default
+lock tables t1 write;
+connection: flush
+flush tables with read lock;;
+connection: default
+create trigger t1_bi before insert on t1 for each row begin end;
+unlock tables;
+connection: flush
+unlock tables;
+select * from t1;
+i
+drop table t1;
+CREATE DATABASE db1;
+CREATE TABLE db1.t1 (a char(30)) ENGINE=MEMORY;
+CREATE TRIGGER db1.trg AFTER INSERT ON db1.t1 FOR EACH ROW
+INSERT INTO db1.t1 VALUES('Some very sensitive data goes here');
+CREATE USER 'no_rights'@'localhost';
+REVOKE ALL ON *.* FROM 'no_rights'@'localhost';
+FLUSH PRIVILEGES;
+SELECT trigger_name FROM INFORMATION_SCHEMA.TRIGGERS
+WHERE trigger_schema = 'db1';
+trigger_name
+SHOW CREATE TRIGGER db1.trg;
+ERROR 42000: Access denied; you need the TRIGGER privilege for this operation
+DROP USER 'no_rights'@'localhost';
+DROP DATABASE db1;
+End of 5.1 tests.
diff --git a/mysql-test/r/type_binary.result b/mysql-test/r/type_binary.result
index debf4ff8fb8..432c58272a2 100644
--- a/mysql-test/r/type_binary.result
+++ b/mysql-test/r/type_binary.result
@@ -21,8 +21,8 @@ create table t1 (s1 varbinary(20), s2 varbinary(20));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s1` varbinary(20) default NULL,
- `s2` varbinary(20) default NULL
+ `s1` varbinary(20) DEFAULT NULL,
+ `s2` varbinary(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values (0x41,0x4100),(0x41,0x4120),(0x4100,0x4120);
select hex(s1), hex(s2) from t1;
@@ -47,7 +47,7 @@ create table t1 (s1 binary(2) primary key);
insert into t1 values (0x01);
insert into t1 values (0x0120);
insert into t1 values (0x0100);
-ERROR 23000: Duplicate entry '' for key 1
+ERROR 23000: Duplicate entry '' for key 'PRIMARY'
select hex(s1) from t1 order by s1;
hex(s1)
0100
diff --git a/mysql-test/r/type_bit.result b/mysql-test/r/type_bit.result
index 252f8165aec..51feab0a421 100644
--- a/mysql-test/r/type_bit.result
+++ b/mysql-test/r/type_bit.result
@@ -41,7 +41,7 @@ create table t1 (a bit(0));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bit(1) default NULL
+ `a` bit(1) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a bit(64));
@@ -62,7 +62,7 @@ drop table t1;
create table t1 (a bit);
insert into t1 values (b'0'), (b'1'), (b'000'), (b'100'), (b'001');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 4
select hex(a) from t1;
hex(a)
0
@@ -71,12 +71,12 @@ hex(a)
1
1
alter table t1 add unique (a);
-ERROR 23000: Duplicate entry '' for key 1
+ERROR 23000: Duplicate entry '' for key 'a'
drop table t1;
create table t1 (a bit(2));
insert into t1 values (b'00'), (b'01'), (b'10'), (b'100');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 4
select a+0 from t1;
a+0
0
@@ -463,7 +463,7 @@ drop table t1;
create table t1 (a bit(8)) engine=heap;
insert into t1 values ('1111100000');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select a+0 from t1;
a+0
255
@@ -496,7 +496,7 @@ a+0
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` bit(7) default NULL
+ `a` bit(7) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2;
create table t1 (id1 int(11), b1 bit(1));
@@ -607,7 +607,7 @@ drop table bug15583;
create table t1(a bit(1), b smallint unsigned);
insert into t1 (b, a) values ('2', '1');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select hex(a), b from t1;
hex(a) b
1 2
@@ -715,8 +715,8 @@ f2 bit(14) NOT NULL default b'11110000111100'
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f1` bit(2) NOT NULL default b'10',
- `f2` bit(14) NOT NULL default b'11110000111100'
+ `f1` bit(2) NOT NULL DEFAULT b'10',
+ `f2` bit(14) NOT NULL DEFAULT b'11110000111100'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
DROP TABLE t1;
CREATE TABLE IF NOT EXISTS t1 (
@@ -760,3 +760,29 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a a 2 NULL 4 Using where; Using index; Using filesort
DROP TABLE t1;
End of 5.0 tests
+create table t1(a bit(7));
+insert into t1 values(0x40);
+alter table t1 modify column a bit(8);
+select hex(a) from t1;
+hex(a)
+40
+insert into t1 values(0x80);
+select hex(a) from t1;
+hex(a)
+40
+80
+create index a on t1(a);
+insert into t1 values(0x81);
+select hex(a) from t1;
+hex(a)
+40
+80
+81
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` bit(8) DEFAULT NULL,
+ KEY `a` (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+End of 5.1 tests
diff --git a/mysql-test/r/type_bit_innodb.result b/mysql-test/r/type_bit_innodb.result
index d0cf15e59a5..a9c3cae1770 100644
--- a/mysql-test/r/type_bit_innodb.result
+++ b/mysql-test/r/type_bit_innodb.result
@@ -41,7 +41,7 @@ create table t1 (a bit(0)) engine=innodb;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bit(1) default NULL
+ `a` bit(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a bit(64)) engine=innodb;
@@ -62,7 +62,7 @@ drop table t1;
create table t1 (a bit) engine=innodb;
insert into t1 values (b'0'), (b'1'), (b'000'), (b'100'), (b'001');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 4
select hex(a) from t1;
hex(a)
0
@@ -71,12 +71,12 @@ hex(a)
1
1
alter table t1 add unique (a);
-ERROR 23000: Duplicate entry '' for key 1
+ERROR 23000: Duplicate entry '' for key 'a'
drop table t1;
create table t1 (a bit(2)) engine=innodb;
insert into t1 values (b'00'), (b'01'), (b'10'), (b'100');
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 4
select a+0 from t1;
a+0
0
@@ -386,22 +386,22 @@ create table t1 (a bit, b bit(10)) engine=innodb;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bit(1) default NULL,
- `b` bit(10) default NULL
+ `a` bit(1) DEFAULT NULL,
+ `b` bit(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
alter table t1 engine=heap;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bit(1) default NULL,
- `b` bit(10) default NULL
+ `a` bit(1) DEFAULT NULL,
+ `b` bit(10) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1
alter table t1 engine=innodb;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` bit(1) default NULL,
- `b` bit(10) default NULL
+ `a` bit(1) DEFAULT NULL,
+ `b` bit(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a bit(7)) engine=innodb;
diff --git a/mysql-test/r/type_blob.result b/mysql-test/r/type_blob.result
index 8eba0de9e89..d11ab236c34 100644
--- a/mysql-test/r/type_blob.result
+++ b/mysql-test/r/type_blob.result
@@ -29,7 +29,7 @@ t3 CREATE TABLE `t3` (
show create TABLE t4;
Table Create Table
t4 CREATE TABLE `t4` (
- `c` mediumtext character set utf8 NOT NULL
+ `c` mediumtext CHARACTER SET utf8 NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1,t2,t3,t4;
CREATE TABLE t1 (a char(257) default "hello");
@@ -507,34 +507,34 @@ Warnings:
Warning 1101 BLOB/TEXT column 'imagem' can't have a default value
insert into t1 (id) values (1);
select
-charset(load_file('../std_data_ln/words.dat')),
-collation(load_file('../std_data_ln/words.dat')),
-coercibility(load_file('../std_data_ln/words.dat'));
-charset(load_file('../std_data_ln/words.dat')) collation(load_file('../std_data_ln/words.dat')) coercibility(load_file('../std_data_ln/words.dat'))
+charset(load_file('../../std_data/words.dat')),
+collation(load_file('../../std_data/words.dat')),
+coercibility(load_file('../../std_data/words.dat'));
+charset(load_file('../../std_data/words.dat')) collation(load_file('../../std_data/words.dat')) coercibility(load_file('../../std_data/words.dat'))
binary binary 4
explain extended select
-charset(load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat')),
-collation(load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat')),
-coercibility(load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat'));
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+charset(load_file('MYSQLTEST_VARDIR/std_data/words.dat')),
+collation(load_file('MYSQLTEST_VARDIR/std_data/words.dat')),
+coercibility(load_file('MYSQLTEST_VARDIR/std_data/words.dat'));
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select charset(load_file(_latin1'MYSQLTEST_VARDIR/std_data_ln/words.dat')) AS `charset(load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat'))`,collation(load_file(_latin1'MYSQLTEST_VARDIR/std_data_ln/words.dat')) AS `collation(load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat'))`,coercibility(load_file(_latin1'MYSQLTEST_VARDIR/std_data_ln/words.dat')) AS `coercibility(load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat'))`
-update t1 set imagem=load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat') where id=1;
+Note 1003 select charset(load_file('MYSQLTEST_VARDIR/std_data/words.dat')) AS `charset(load_file('MYSQLTEST_VARDIR/std_data/words.dat'))`,collation(load_file('MYSQLTEST_VARDIR/std_data/words.dat')) AS `collation(load_file('MYSQLTEST_VARDIR/std_data/words.dat'))`,coercibility(load_file('MYSQLTEST_VARDIR/std_data/words.dat')) AS `coercibility(load_file('MYSQLTEST_VARDIR/std_data/words.dat'))`
+update t1 set imagem=load_file('MYSQLTEST_VARDIR/std_data/words.dat') where id=1;
select if(imagem is null, "ERROR", "OK"),length(imagem) from t1 where id = 1;
if(imagem is null, "ERROR", "OK") length(imagem)
OK 581
drop table t1;
-create table t1 select load_file('MYSQLTEST_VARDIR/std_data_ln/words.dat') l;
+create table t1 select load_file('MYSQLTEST_VARDIR/std_data/words.dat') l;
show full fields from t1;
Field Type Collation Null Key Default Extra Privileges Comment
l longblob NULL YES NULL #
drop table t1;
create table t1 (id integer primary key auto_increment, txt text not null, unique index txt_index (txt (20)));
insert into t1 (txt) values ('Chevy'), ('Chevy ');
-ERROR 23000: Duplicate entry 'Chevy ' for key 2
+ERROR 23000: Duplicate entry 'Chevy ' for key 'txt_index'
insert into t1 (txt) values ('Chevy'), ('CHEVY');
-ERROR 23000: Duplicate entry 'Chevy' for key 2
+ERROR 23000: Duplicate entry 'Chevy' for key 'txt_index'
alter table t1 drop index txt_index, add index txt_index (txt(20));
insert into t1 (txt) values ('Chevy ');
select * from t1 where txt='Chevy';
@@ -711,12 +711,12 @@ alter table t1 add key (a,b,d,e);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) NOT NULL default '0',
- `b` int(11) NOT NULL default '0',
+ `a` int(11) NOT NULL DEFAULT '0',
+ `b` int(11) NOT NULL DEFAULT '0',
`c` tinyblob NOT NULL,
- `d` int(11) NOT NULL default '0',
- `e` int(11) default NULL,
- PRIMARY KEY (`a`,`b`,`c`(255),`d`),
+ `d` int(11) NOT NULL DEFAULT '0',
+ `e` int(11) DEFAULT NULL,
+ PRIMARY KEY (`a`,`b`,`c`(255),`d`),
KEY `a` (`a`,`b`,`d`,`e`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
@@ -891,11 +891,11 @@ CREATE TABLE b15776 (a year(-2));
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-2))' at line 1
CREATE TABLE b15776 (a timestamp(4294967294));
Warnings:
-Warning 1287 'TIMESTAMP(4294967294)' is deprecated; use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(4294967294)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
DROP TABLE b15776;
CREATE TABLE b15776 (a timestamp(4294967295));
Warnings:
-Warning 1287 'TIMESTAMP(4294967295)' is deprecated; use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(4294967295)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
DROP TABLE b15776;
CREATE TABLE b15776 (a timestamp(4294967296));
ERROR 42000: Display width out of range for column 'a' (max = 4294967295)
diff --git a/mysql-test/r/type_date.result b/mysql-test/r/type_date.result
index 03684e8ea88..f96e07b0c5e 100644
--- a/mysql-test/r/type_date.result
+++ b/mysql-test/r/type_date.result
@@ -65,12 +65,15 @@ CREATE TABLE t1(AFIELD INT);
INSERT INTO t1 VALUES(1);
CREATE TABLE t2(GMT VARCHAR(32));
INSERT INTO t2 VALUES('GMT-0800');
-SELECT DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ' , t2.GMT)) FROM t1, t2 GROUP BY t1.AFIELD;
-DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ' , t2.GMT))
+SELECT DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ', t2.GMT))
+FROM t1, t2 GROUP BY t1.AFIELD;
+DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ', t2.GMT))
Wed, 06 March 2002 10:11:12 GMT-0800
INSERT INTO t1 VALUES(1);
-SELECT DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ' , t2.GMT)), DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ' , t2.GMT)) FROM t1,t2 GROUP BY t1.AFIELD;
-DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ' , t2.GMT)) DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ' , t2.GMT))
+SELECT DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ', t2.GMT)),
+DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ', t2.GMT))
+FROM t1,t2 GROUP BY t1.AFIELD;
+DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ', t2.GMT)) DATE_FORMAT("2002-03-06 10:11:12", CONCAT('%a, %d %M %Y %H:%i:%s ', t2.GMT))
Wed, 06 March 2002 10:11:12 GMT-0800 Wed, 06 March 2002 10:11:12 GMT-0800
drop table t1,t2;
CREATE TABLE t1 (f1 time default NULL, f2 time default NULL);
@@ -110,25 +113,34 @@ select 1 from t1 where cast('2000-01-01 12:01:01' as datetime) between start_dat
1
1
drop table t1;
-select @d:=1111, year(@d), month(@d), day(@d), cast(@d as date);
-@d:=1111 year(@d) month(@d) day(@d) cast(@d as date)
-1111 2000 11 11 2000-11-11
-select @d:=011111, year(@d), month(@d), day(@d), cast(@d as date);
-@d:=011111 year(@d) month(@d) day(@d) cast(@d as date)
-11111 2001 11 11 2001-11-11
-select @d:=1311, year(@d), month(@d), day(@d), cast(@d as date);
-@d:=1311 year(@d) month(@d) day(@d) cast(@d as date)
-1311 NULL NULL NULL NULL
+select @d:=1111;
+@d:=1111
+1111
+select year(@d), month(@d), day(@d), cast(@d as date);
+year(@d) month(@d) day(@d) cast(@d as date)
+2000 11 11 2000-11-11
+select @d:=011111;
+@d:=011111
+11111
+select year(@d), month(@d), day(@d), cast(@d as date);
+year(@d) month(@d) day(@d) cast(@d as date)
+2001 11 11 2001-11-11
+select @d:=1311;
+@d:=1311
+1311
+select year(@d), month(@d), day(@d), cast(@d as date);
+year(@d) month(@d) day(@d) cast(@d as date)
+NULL NULL NULL NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: '1311'
-Warning 1292 Truncated incorrect datetime value: '1311'
-Warning 1292 Truncated incorrect datetime value: '1311'
-Warning 1292 Truncated incorrect datetime value: '1311'
+Warning 1292 Incorrect datetime value: '1311'
+Warning 1292 Incorrect datetime value: '1311'
+Warning 1292 Incorrect datetime value: '1311'
+Warning 1292 Incorrect datetime value: '1311'
create table t1 (d date , dt datetime , ts timestamp);
insert into t1 values (9912101,9912101,9912101);
Warnings:
-Warning 1264 Out of range value adjusted for column 'd' at row 1
-Warning 1264 Out of range value adjusted for column 'dt' at row 1
+Warning 1264 Out of range value for column 'd' at row 1
+Warning 1264 Out of range value for column 'dt' at row 1
Warning 1265 Data truncated for column 'ts' at row 1
insert into t1 values (11111,11111,11111);
select * from t1;
@@ -146,7 +158,7 @@ str_to_date( '', a )
0000-00-00 00:00:00
NULL
DROP TABLE t1;
-CREATE TABLE t1 (a DATE, b int, PRIMARY KEY (a,b));
+CREATE TABLE t1 (a DATE, b INT, PRIMARY KEY (a,b));
INSERT INTO t1 VALUES (DATE(NOW()), 1);
SELECT COUNT(*) FROM t1 WHERE a = NOW();
COUNT(*)
@@ -257,3 +269,10 @@ hour(f1) minute(f1) second(f1)
0 0 0
DROP TABLE t1;
End of 5.0 tests
+create table t1 (a date, primary key (a))engine=memory;
+insert into t1 values ('0000-01-01'), ('0000-00-01'), ('0001-01-01');
+select * from t1 where a between '0000-00-01' and '0000-00-02';
+a
+0000-00-01
+drop table t1;
+End of 5.1 tests
diff --git a/mysql-test/r/type_datetime.result b/mysql-test/r/type_datetime.result
index 9c358c41215..b6281443751 100644
--- a/mysql-test/r/type_datetime.result
+++ b/mysql-test/r/type_datetime.result
@@ -52,7 +52,7 @@ t
truncate table t1;
insert into t1 values("2003-0303 12:13:14");
Warnings:
-Warning 1264 Out of range value adjusted for column 't' at row 1
+Warning 1264 Out of range value for column 't' at row 1
select * from t1;
t
0000-00-00 00:00:00
@@ -115,12 +115,12 @@ create table t1 (t datetime);
insert into t1 values (20030102030460),(20030102036301),(20030102240401),
(20030132030401),(20031302030401),(100001202030401);
Warnings:
-Warning 1264 Out of range value adjusted for column 't' at row 1
-Warning 1264 Out of range value adjusted for column 't' at row 2
-Warning 1264 Out of range value adjusted for column 't' at row 3
-Warning 1264 Out of range value adjusted for column 't' at row 4
-Warning 1264 Out of range value adjusted for column 't' at row 5
-Warning 1264 Out of range value adjusted for column 't' at row 6
+Warning 1264 Out of range value for column 't' at row 1
+Warning 1264 Out of range value for column 't' at row 2
+Warning 1264 Out of range value for column 't' at row 3
+Warning 1264 Out of range value for column 't' at row 4
+Warning 1264 Out of range value for column 't' at row 5
+Warning 1264 Out of range value for column 't' at row 6
select * from t1;
t
0000-00-00 00:00:00
@@ -134,12 +134,12 @@ insert into t1 values
("2003-01-02 03:04:60"),("2003-01-02 03:63:01"),("2003-01-02 24:04:01"),
("2003-01-32 03:04:01"),("2003-13-02 03:04:01"), ("10000-12-02 03:04:00");
Warnings:
-Warning 1264 Out of range value adjusted for column 't' at row 1
-Warning 1264 Out of range value adjusted for column 't' at row 2
-Warning 1264 Out of range value adjusted for column 't' at row 3
-Warning 1264 Out of range value adjusted for column 't' at row 4
-Warning 1264 Out of range value adjusted for column 't' at row 5
-Warning 1264 Out of range value adjusted for column 't' at row 6
+Warning 1264 Out of range value for column 't' at row 1
+Warning 1264 Out of range value for column 't' at row 2
+Warning 1264 Out of range value for column 't' at row 3
+Warning 1264 Out of range value for column 't' at row 4
+Warning 1264 Out of range value for column 't' at row 5
+Warning 1264 Out of range value for column 't' at row 6
select * from t1;
t
0000-00-00 00:00:00
@@ -151,9 +151,9 @@ t
delete from t1;
insert into t1 values ("0000-00-00 00:00:00 some trailer"),("2003-01-01 00:00:00 some trailer");
Warnings:
-Warning 1264 Out of range value adjusted for column 't' at row 1
-Warning 1264 Out of range value adjusted for column 't' at row 2
-select * from t1;
+Warning 1264 Out of range value for column 't' at row 1
+Warning 1264 Out of range value for column 't' at row 2
+select * from t1 order by t;
t
0000-00-00 00:00:00
2003-01-01 00:00:00
@@ -201,8 +201,8 @@ Note 1265 Data truncated for column 'da' at row 1
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `da` date default '1962-03-03',
- `dt` datetime default '1962-03-03 00:00:00'
+ `da` date DEFAULT '1962-03-03',
+ `dt` datetime DEFAULT '1962-03-03 00:00:00'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ();
insert into t1 values ('2007-03-23 13:49:38','2007-03-23 13:49:38');
@@ -365,8 +365,8 @@ least(cast('01-01-01' as datetime), '01-01-02') + 0
select cast(least(cast('01-01-01' as datetime), '01-01-02') as signed);
cast(least(cast('01-01-01' as datetime), '01-01-02') as signed)
20010101000000
-select cast(least(cast('01-01-01' as datetime), '01-01-02') as decimal(20,2));
-cast(least(cast('01-01-01' as datetime), '01-01-02') as decimal(20,2))
+select cast(least(cast('01-01-01' as datetime), '01-01-02') as decimal(16,2));
+cast(least(cast('01-01-01' as datetime), '01-01-02') as decimal(16,2))
20010101000000.00
DROP PROCEDURE IF EXISTS test27759 ;
CREATE PROCEDURE test27759()
@@ -497,7 +497,7 @@ select * from t1 where (convert(f1,datetime)) != 1;
f1
15:44:44
Warnings:
-Warning 1292 Truncated incorrect datetime value: '0000-00-00 45:44:44'
+Warning 1292 Incorrect datetime value: '0000-00-00 45:44:44'
drop table t1;
create table t1 (a tinyint);
insert into t1 values (), (), ();
@@ -512,9 +512,9 @@ insert into t2 (id, cur_date) values (1, '2007-04-25');
explain extended
select * from t1
where id in (select id from t1 as x1 where (t1.cur_date is null));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
Warnings:
Note 1276 Field or reference 'test.t1.cur_date' of SELECT #2 was resolved in SELECT #1
Note 1003 select '1' AS `id`,'2007-04-25 18:30:22' AS `cur_date` from `test`.`t1` where <in_optimizer>('1',<exists>(select 1 AS `Not_used` from `test`.`t1` `x1` where 0))
@@ -524,9 +524,9 @@ id cur_date
explain extended
select * from t2
where id in (select id from t2 as x1 where (t2.cur_date is null));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
Warnings:
Note 1276 Field or reference 'test.t2.cur_date' of SELECT #2 was resolved in SELECT #1
Note 1003 select '1' AS `id`,'2007-04-25' AS `cur_date` from `test`.`t2` where <in_optimizer>('1',<exists>(select 1 AS `Not_used` from `test`.`t2` `x1` where 0))
@@ -538,9 +538,9 @@ insert into t2 (id, cur_date) values (2, '2007-04-26');
explain extended
select * from t1
where id in (select id from t1 as x1 where (t1.cur_date is null));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 2 Using where
-2 DEPENDENT SUBQUERY x1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2 100.00 Using where
+2 DEPENDENT SUBQUERY x1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t1.cur_date' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t1`.`id` AS `id`,`test`.`t1`.`cur_date` AS `cur_date` from `test`.`t1` where <in_optimizer>(`test`.`t1`.`id`,<exists>(select 1 AS `Not_used` from `test`.`t1` `x1` where ((`test`.`t1`.`cur_date` = 0) and (<cache>(`test`.`t1`.`id`) = `test`.`x1`.`id`))))
@@ -550,9 +550,9 @@ id cur_date
explain extended
select * from t2
where id in (select id from t2 as x1 where (t2.cur_date is null));
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using where
-2 DEPENDENT SUBQUERY x1 ALL NULL NULL NULL NULL 2 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t2 ALL NULL NULL NULL NULL 2 100.00 Using where
+2 DEPENDENT SUBQUERY x1 ALL NULL NULL NULL NULL 2 100.00 Using where
Warnings:
Note 1276 Field or reference 'test.t2.cur_date' of SELECT #2 was resolved in SELECT #1
Note 1003 select `test`.`t2`.`id` AS `id`,`test`.`t2`.`cur_date` AS `cur_date` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`id`,<exists>(select 1 AS `Not_used` from `test`.`t2` `x1` where ((`test`.`t2`.`cur_date` = 0) and (<cache>(`test`.`t2`.`id`) = `test`.`x1`.`id`))))
@@ -573,14 +573,68 @@ CAST('NULL' AS DATE) < CAST('NULL' AS DATE) n9;
n1 n2 n3 n4 n5 n6 n7 n8 n9
0 0 1 NULL NULL NULL NULL NULL NULL
Warnings:
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
-Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
+Warning 1292 Incorrect datetime value: 'NULL'
End of 5.0 tests
+set @org_mode=@@sql_mode;
+create table t1 (da date default '1962-03-03 23:33:34', dt datetime default '1962-03-03');
+Warnings:
+Note 1265 Data truncated for column 'da' at row 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `da` date DEFAULT '1962-03-03',
+ `dt` datetime DEFAULT '1962-03-03 00:00:00'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ();
+insert into t1 values ('2007-03-23 13:49:38','2007-03-23 13:49:38');
+Warnings:
+Note 1265 Data truncated for column 'da' at row 1
+set @@sql_mode='ansi,traditional';
+insert into t1 values ('2007-03-23 13:49:38','2007-03-23 13:49:38');
+Warnings:
+Note 1265 Data truncated for column 'da' at row 1
+insert into t1 set dt='2007-03-23 13:49:38',da=dt;
+Warnings:
+Note 1265 Data truncated for column 'da' at row 1
+insert into t1 values ('2007-03-32','2007-03-23 13:49:38');
+ERROR 22007: Incorrect date value: '2007-03-32' for column 'da' at row 1
+select * from t1;
+da dt
+1962-03-03 1962-03-03 00:00:00
+2007-03-23 2007-03-23 13:49:38
+2007-03-23 2007-03-23 13:49:38
+2007-03-23 2007-03-23 13:49:38
+drop table t1;
+create table t1 (da date default '1962-03-32 23:33:34', dt datetime default '1962-03-03');
+ERROR 42000: Invalid default value for 'da'
+create table t1 (t time default '916:00:00 a');
+ERROR 42000: Invalid default value for 't'
+set @@sql_mode= @org_mode;
+SELECT CAST(CAST('2006-08-10 10:11:12.0123450' AS DATETIME) AS DECIMAL(30,7));
+CAST(CAST('2006-08-10 10:11:12.0123450' AS DATETIME) AS DECIMAL(30,7))
+20060810101112.0123450
+Warnings:
+Warning 1292 Truncated incorrect datetime value: '2006-08-10 10:11:12.0123450'
+SELECT CAST(CAST('00000002006-000008-0000010 000010:0000011:00000012.0123450' AS DATETIME) AS DECIMAL(30,7));
+CAST(CAST('00000002006-000008-0000010 000010:0000011:00000012.0123450' AS DATETIME) AS DECIMAL(30,7))
+20060810101112.0123450
+Warnings:
+Warning 1292 Truncated incorrect datetime value: '00000002006-000008-0000010 000010:0000011:00000012.0123450'
+SELECT CAST(CAST('00000002006-000008-0000010 000010:0000011:00000012.012345' AS DATETIME) AS DECIMAL(30,7));
+CAST(CAST('00000002006-000008-0000010 000010:0000011:00000012.012345' AS DATETIME) AS DECIMAL(30,7))
+20060810101112.0123450
+SELECT CAST(CAST('2008-07-29T10:42:51.1234567' AS DateTime) AS DECIMAL(30,7));
+CAST(CAST('2008-07-29T10:42:51.1234567' AS DateTime) AS DECIMAL(30,7))
+20080729104251.1234560
+Warnings:
+Warning 1292 Truncated incorrect datetime value: '2008-07-29T10:42:51.1234567'
+End of 5.1 tests
diff --git a/mysql-test/r/type_decimal.result b/mysql-test/r/type_decimal.result
index 03fbc898cc5..76c5ea8f756 100644
--- a/mysql-test/r/type_decimal.result
+++ b/mysql-test/r/type_decimal.result
@@ -157,25 +157,25 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
Note 1265 Data truncated for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("1e+4294967296"),("1e-4294967296");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
Note 1265 Data truncated for column 'a' at row 2
insert into t1 values ("1e+18446744073709551615"),("1e+18446744073709551616"),("1e-9223372036854775807"),("1e-9223372036854775809");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
Warning 1366 Incorrect decimal value: '1e+18446744073709551616' for column 'a' at row 2
Note 1265 Data truncated for column 'a' at row 3
Warning 1366 Incorrect decimal value: '1e-9223372036854775809' for column 'a' at row 4
@@ -221,29 +221,29 @@ drop table t1;
create table t1 (a decimal(10,2) unsigned);
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 6
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 6
insert into t1 values ("-.1"),("+.1"),(".1");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
Note 1265 Data truncated for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
Warnings:
Note 1265 Data truncated for column 'a' at row 1
@@ -280,29 +280,29 @@ drop table t1;
create table t1 (a decimal(10,2) zerofill);
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 6
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 6
insert into t1 values ("-.1"),("+.1"),(".1");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
Note 1265 Data truncated for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
Warnings:
Note 1265 Data truncated for column 'a' at row 1
@@ -342,18 +342,18 @@ insert into t1 values (-.1),(+.1),(.1);
insert into t1 values (00000000000001),(+0000000000001),(-0000000000001);
insert into t1 values (+111111111.11),(111111111.11),(-11111111.11);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
insert into t1 values (-111111111.11),(+1111111111.11),(1111111111.11);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values (1e+100),(1e-100),(-1e+100);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
Note 1265 Data truncated for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
insert into t1 values (123.4e0),(123.4e+2),(123.4e-2),(123e1),(123e+0);
Warnings:
Note 1265 Data truncated for column 'a' at row 3
@@ -393,9 +393,9 @@ drop table t1;
create table t1 (a decimal);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+12345678901'),(99999999999999);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 6
-Warning 1264 Out of range value adjusted for column 'a' at row 7
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 6
+Warning 1264 Out of range value for column 'a' at row 7
select * from t1;
a
-9999999999
@@ -409,9 +409,9 @@ drop table t1;
create table t1 (a decimal unsigned);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+1234567890'),(99999999999999);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 7
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 7
select * from t1;
a
0
@@ -425,9 +425,9 @@ drop table t1;
create table t1 (a decimal zerofill);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+1234567890'),(99999999999999);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 7
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 7
select * from t1;
a
0000000000
@@ -441,9 +441,9 @@ drop table t1;
create table t1 (a decimal unsigned zerofill);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+1234567890'),(99999999999999);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 7
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 7
select * from t1;
a
0000000000
@@ -457,14 +457,14 @@ drop table t1;
create table t1(a decimal(10,0));
insert into t1 values ("1e4294967295");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
9999999999
delete from t1;
insert into t1 values("1e4294967297");
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
9999999999
@@ -710,14 +710,14 @@ create table t1 (d decimal(5));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `d` decimal(5,0) default NULL
+ `d` decimal(5,0) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (d decimal);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `d` decimal(10,0) default NULL
+ `d` decimal(10,0) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (d decimal(66,0));
@@ -877,8 +877,8 @@ Note 1265 Data truncated for column 'a' at row 2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` decimal(10,0) default NULL,
- `b` int(11) default NULL
+ `a` decimal(10,0) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select round(a,b) as c from t1 order by c;
c
diff --git a/mysql-test/r/type_enum.result b/mysql-test/r/type_enum.result
index 9de296844a0..813f912c5af 100644
--- a/mysql-test/r/type_enum.result
+++ b/mysql-test/r/type_enum.result
@@ -1633,7 +1633,7 @@ create table t1 (a enum (' ','a','b ') not null default 'b ');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('','a','b') NOT NULL default 'b'
+ `a` enum('','a','b') NOT NULL DEFAULT 'b'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a enum ('0','1'));
@@ -1658,7 +1658,7 @@ a enum('','1','2') NO
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('','1','2') NOT NULL default ''
+ `a` enum('','1','2') NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
set names latin1;
@@ -1669,7 +1669,7 @@ b ENUM('value','_value','') character set latin1 NOT NULL
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` int(11) default '1',
+ `a` int(11) DEFAULT '1',
`b` enum('value','_value','') NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
@@ -1699,7 +1699,7 @@ a ENUM('','','') character set utf8 default ''
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('','','') character set utf8 default ''
+ `a` enum('','','') CHARACTER SET utf8 DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values (''), (''), ('');
select a from t1 order by a;
@@ -1717,7 +1717,7 @@ set names latin1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('','','') default ''
+ `a` enum('','','') DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select a from t1 order by a;
a
@@ -1750,29 +1750,29 @@ alter table t1 add f2 enum(0xFFFF);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f1` int(11) default NULL,
- `f2` enum('') default NULL
+ `f1` int(11) DEFAULT NULL,
+ `f2` enum('') DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1(russian enum('E','F','EF','FE') NOT NULL DEFAULT'E');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `russian` enum('E','F','EF','FE') NOT NULL default 'E'
+ `russian` enum('E','F','EF','FE') NOT NULL DEFAULT 'E'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1(denormal enum('E','F','E,F','F,E') NOT NULL DEFAULT'E');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `denormal` enum('E','F','E,F','F,E') NOT NULL default 'E'
+ `denormal` enum('E','F','E,F','F,E') NOT NULL DEFAULT 'E'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1(russian_deviant enum('E','F','EF','F,E') NOT NULL DEFAULT'E');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `russian_deviant` enum('E','F','EF','F,E') NOT NULL default 'E'
+ `russian_deviant` enum('E','F','EF','F,E') NOT NULL DEFAULT 'E'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1(exhausting_charset enum('ABCDEFGHIJKLMNOPQRSTUVWXYZ','
@@ -1853,3 +1853,4 @@ SELECT a FROM t1 WHERE a=0;
a
DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/type_float.result b/mysql-test/r/type_float.result
index d3a136d53d2..a3a13bb0435 100644
--- a/mysql-test/r/type_float.result
+++ b/mysql-test/r/type_float.result
@@ -24,8 +24,8 @@ f1 float NULL YES NULL #
f2 double NULL YES NULL #
insert into t1 values(10,10),(1e+5,1e+5),(1234567890,1234567890),(1e+10,1e+10),(1e+15,1e+15),(1e+20,1e+20),(1e+50,1e+50),(1e+150,1e+150);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 7
-Warning 1264 Out of range value adjusted for column 'f1' at row 8
+Warning 1264 Out of range value for column 'f1' at row 7
+Warning 1264 Out of range value for column 'f1' at row 8
insert into t1 values(-10,-10),(1e-5,1e-5),(1e-10,1e-10),(1e-15,1e-15),(1e-20,1e-20),(1e-50,1e-50),(1e-150,1e-150);
select * from t1;
f1 f2
@@ -91,10 +91,10 @@ col1 col2 col3 col4
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `col1` double default NULL,
- `col2` double(22,5) default NULL,
- `col3` double default NULL,
- `col4` double default NULL
+ `col1` double DEFAULT NULL,
+ `col2` double(22,5) DEFAULT NULL,
+ `col3` double DEFAULT NULL,
+ `col4` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1,t2;
create table t1 (a float);
@@ -149,7 +149,7 @@ create table t1 (d1 double, d2 double unsigned);
insert into t1 set d1 = -1.0;
update t1 set d2 = d1;
Warnings:
-Warning 1264 Out of range value adjusted for column 'd2' at row 1
+Warning 1264 Out of range value for column 'd2' at row 1
select * from t1;
d1 d2
-1 0
@@ -157,12 +157,12 @@ drop table t1;
create table t1 (f float(4,3));
insert into t1 values (-11.0),(-11),("-11"),(11.0),(11),("11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'f' at row 1
-Warning 1264 Out of range value adjusted for column 'f' at row 2
-Warning 1264 Out of range value adjusted for column 'f' at row 3
-Warning 1264 Out of range value adjusted for column 'f' at row 4
-Warning 1264 Out of range value adjusted for column 'f' at row 5
-Warning 1264 Out of range value adjusted for column 'f' at row 6
+Warning 1264 Out of range value for column 'f' at row 1
+Warning 1264 Out of range value for column 'f' at row 2
+Warning 1264 Out of range value for column 'f' at row 3
+Warning 1264 Out of range value for column 'f' at row 4
+Warning 1264 Out of range value for column 'f' at row 5
+Warning 1264 Out of range value for column 'f' at row 6
select * from t1;
f
-9.999
@@ -175,12 +175,12 @@ drop table if exists t1;
create table t1 (f double(4,3));
insert into t1 values (-11.0),(-11),("-11"),(11.0),(11),("11");
Warnings:
-Warning 1264 Out of range value adjusted for column 'f' at row 1
-Warning 1264 Out of range value adjusted for column 'f' at row 2
-Warning 1264 Out of range value adjusted for column 'f' at row 3
-Warning 1264 Out of range value adjusted for column 'f' at row 4
-Warning 1264 Out of range value adjusted for column 'f' at row 5
-Warning 1264 Out of range value adjusted for column 'f' at row 6
+Warning 1264 Out of range value for column 'f' at row 1
+Warning 1264 Out of range value for column 'f' at row 2
+Warning 1264 Out of range value for column 'f' at row 3
+Warning 1264 Out of range value for column 'f' at row 4
+Warning 1264 Out of range value for column 'f' at row 5
+Warning 1264 Out of range value for column 'f' at row 6
select * from t1;
f
-9.999
@@ -237,7 +237,7 @@ d
show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
- `d` double default NULL
+ `d` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2, t3;
create table t1 select 105213674794682365.00 + 0.0 x;
@@ -365,8 +365,8 @@ insert into t1 values (1e199), (-1e199);
insert into t1 values (1e200), (-1e200);
insert into t1 values (2e200), (-2e200);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
-Warning 1264 Out of range value adjusted for column 'f1' at row 2
+Warning 1264 Out of range value for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 2
select f1 + 0e0 from t1;
f1 + 0e0
1e+199
@@ -381,8 +381,8 @@ insert into t1 values (1e29), (-1e29);
insert into t1 values (1e30), (-1e30);
insert into t1 values (2e30), (-2e30);
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
-Warning 1264 Out of range value adjusted for column 'f1' at row 2
+Warning 1264 Out of range value for column 'f1' at row 1
+Warning 1264 Out of range value for column 'f1' at row 2
select f1 + 0e0 from t1;
f1 + 0e0
1.00000001504747e+29
diff --git a/mysql-test/r/type_nchar.result b/mysql-test/r/type_nchar.result
index f844b3b0241..95741d37e2a 100644
--- a/mysql-test/r/type_nchar.result
+++ b/mysql-test/r/type_nchar.result
@@ -3,48 +3,48 @@ create table t1 (c nchar(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 default NULL
+ `c` char(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (c national char(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` char(10) character set utf8 default NULL
+ `c` char(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (c national varchar(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` varchar(10) character set utf8 default NULL
+ `c` varchar(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (c nvarchar(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` varchar(10) character set utf8 default NULL
+ `c` varchar(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (c nchar varchar(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` varchar(10) character set utf8 default NULL
+ `c` varchar(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (c national character varying(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` varchar(10) character set utf8 default NULL
+ `c` varchar(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (c nchar varying(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c` varchar(10) character set utf8 default NULL
+ `c` varchar(10) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
diff --git a/mysql-test/r/type_newdecimal.result b/mysql-test/r/type_newdecimal.result
index 90b6f524692..c3d1e400b23 100644
--- a/mysql-test/r/type_newdecimal.result
+++ b/mysql-test/r/type_newdecimal.result
@@ -52,13 +52,13 @@ if(1, 1.1, 1.2) if(0, 1.1, 1.2) if(0.1, 1.1, 1.2) if(0, 1, 1.1) if(0, NULL, 1.2)
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `if(1, 1.1, 1.2)` decimal(2,1) NOT NULL default '0.0',
- `if(0, 1.1, 1.2)` decimal(2,1) NOT NULL default '0.0',
- `if(0.1, 1.1, 1.2)` decimal(2,1) NOT NULL default '0.0',
- `if(0, 1, 1.1)` decimal(2,1) NOT NULL default '0.0',
- `if(0, NULL, 1.2)` decimal(2,1) default NULL,
- `if(1, 0.22e1, 1.1)` double NOT NULL default '0',
- `if(1E0, 1.1, 1.2)` decimal(2,1) NOT NULL default '0.0'
+ `if(1, 1.1, 1.2)` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `if(0, 1.1, 1.2)` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `if(0.1, 1.1, 1.2)` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `if(0, 1, 1.1)` decimal(2,1) NOT NULL DEFAULT '0.0',
+ `if(0, NULL, 1.2)` decimal(2,1) DEFAULT NULL,
+ `if(1, 0.22e1, 1.1)` double NOT NULL DEFAULT '0',
+ `if(1E0, 1.1, 1.2)` decimal(2,1) NOT NULL DEFAULT '0.0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 select nullif(1.1, 1.1), nullif(1.1, 1.2), nullif(1.1, 0.11e1), nullif(1.0, 1), nullif(1, 1.0), nullif(1, 1.1);
@@ -68,27 +68,27 @@ NULL 1.1 NULL NULL NULL 1
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `nullif(1.1, 1.1)` decimal(2,1) default NULL,
- `nullif(1.1, 1.2)` decimal(2,1) default NULL,
- `nullif(1.1, 0.11e1)` decimal(2,1) default NULL,
- `nullif(1.0, 1)` decimal(2,1) default NULL,
- `nullif(1, 1.0)` int(1) default NULL,
- `nullif(1, 1.1)` int(1) default NULL
+ `nullif(1.1, 1.1)` decimal(2,1) DEFAULT NULL,
+ `nullif(1.1, 1.2)` decimal(2,1) DEFAULT NULL,
+ `nullif(1.1, 0.11e1)` decimal(2,1) DEFAULT NULL,
+ `nullif(1.0, 1)` decimal(2,1) DEFAULT NULL,
+ `nullif(1, 1.0)` int(1) DEFAULT NULL,
+ `nullif(1, 1.1)` int(1) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (a decimal(4,2));
insert into t1 value (10000), (1.1e10), ("11111"), (100000.1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 4
insert into t1 value (-10000), (-1.1e10), ("-11111"), (-100000.1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 4
select a from t1;
a
99.99
@@ -103,16 +103,16 @@ drop table t1;
create table t1 (a decimal(4,2) unsigned);
insert into t1 value (10000), (1.1e10), ("11111"), (100000.1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 4
insert into t1 value (-10000), (-1.1e10), ("-11111"), (-100000.1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
-Warning 1264 Out of range value adjusted for column 'a' at row 4
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 2
+Warning 1264 Out of range value for column 'a' at row 3
+Warning 1264 Out of range value for column 'a' at row 4
select a from t1;
a
99.99
@@ -127,13 +127,13 @@ drop table t1;
create table t1 (a bigint);
insert into t1 values (18446744073709551615.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
insert into t1 values (9223372036854775808.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
insert into t1 values (-18446744073709551615.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
9223372036854775807
@@ -145,10 +145,10 @@ insert into t1 values (18446744073709551615.0);
insert into t1 values (9223372036854775808.0);
insert into t1 values (9999999999999999999999999.000);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
insert into t1 values (-1.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
18446744073709551615
@@ -159,12 +159,12 @@ drop table t1;
create table t1 (a tinyint);
insert into t1 values (18446744073709551615.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
insert into t1 values (9223372036854775808.0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'a' at row 1
-Warning 1264 Out of range value adjusted for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
+Warning 1264 Out of range value for column 'a' at row 1
select * from t1;
a
127
@@ -174,10 +174,10 @@ create table t1 select round(15.4,-1), truncate(-5678.123451,-3), abs(-1.1), -(-
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `round(15.4,-1)` decimal(3,0) NOT NULL default '0',
- `truncate(-5678.123451,-3)` decimal(4,0) NOT NULL default '0',
- `abs(-1.1)` decimal(3,1) NOT NULL default '0.0',
- `-(-1.1)` decimal(2,1) NOT NULL default '0.0'
+ `round(15.4,-1)` decimal(3,0) NOT NULL DEFAULT '0',
+ `truncate(-5678.123451,-3)` decimal(4,0) NOT NULL DEFAULT '0',
+ `abs(-1.1)` decimal(3,1) NOT NULL DEFAULT '0.0',
+ `-(-1.1)` decimal(2,1) NOT NULL DEFAULT '0.0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
set session sql_mode='traditional';
@@ -771,7 +771,7 @@ create table t1 as select 0.5;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `0.5` decimal(2,1) NOT NULL default '0.0'
+ `0.5` decimal(2,1) NOT NULL DEFAULT '0.0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
select round(1.5),round(2.5);
@@ -806,9 +806,9 @@ Warnings:
Note 1265 Data truncated for column 'col1' at row 1
INSERT INTO Sow6_2f VALUES (11);
INSERT INTO Sow6_2f VALUES (101.55);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
UPDATE Sow6_2f SET col1 = col1 * 50 WHERE col1 = 11;
-ERROR 22003: Out of range value adjusted for column 'col1' at row 5
+ERROR 22003: Out of range value for column 'col1' at row 5
UPDATE Sow6_2f SET col1 = col1 / 0 WHERE col1 > 0;
ERROR 22012: Division by 0
SELECT MOD(col1,0) FROM Sow6_2f;
@@ -872,13 +872,13 @@ NULL
set @@sql_mode='traditional';
create table t1( d1 decimal(18) unsigned, d2 decimal(20) unsigned, d3 decimal (22) unsigned);
insert into t1 values(1,-1,-1);
-ERROR 22003: Out of range value adjusted for column 'd2' at row 1
+ERROR 22003: Out of range value for column 'd2' at row 1
drop table t1;
create table t1 (col1 decimal(5,2), col2 numeric(5,2));
insert into t1 values (999.999,999.999);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
insert into t1 values (-999.999,-999.999);
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR 22003: Out of range value for column 'col1' at row 1
select * from t1;
col1 col2
drop table t1;
@@ -934,14 +934,14 @@ create table t1 (sl decimal(5, 5));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `sl` decimal(5,5) default NULL
+ `sl` decimal(5,5) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (sl decimal(65, 30));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `sl` decimal(65,30) default NULL
+ `sl` decimal(65,30) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (
@@ -973,8 +973,8 @@ f1 decimal (0,0) zerofill not null default 0);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f0` decimal(30,30) unsigned zerofill NOT NULL default '0.000000000000000000000000000000',
- `f1` decimal(10,0) unsigned zerofill NOT NULL default '0000000000'
+ `f0` decimal(30,30) unsigned zerofill NOT NULL DEFAULT '0.000000000000000000000000000000',
+ `f1` decimal(10,0) unsigned zerofill NOT NULL DEFAULT '0000000000'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
drop procedure if exists wg2;
@@ -1021,10 +1021,10 @@ my_decimal DECIMAL(65,30)
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `my_float` float default NULL,
- `my_double` double default NULL,
- `my_varchar` varchar(50) default NULL,
- `my_decimal` decimal(65,30) default NULL
+ `my_float` float DEFAULT NULL,
+ `my_double` double DEFAULT NULL,
+ `my_varchar` varchar(50) DEFAULT NULL,
+ `my_decimal` decimal(65,30) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
INSERT INTO t1 SET my_float = 1.175494345e-32,
my_double = 1.175494345e-32,
@@ -1381,7 +1381,7 @@ insert into t1 values(
89000000000000000000000000000000000000000000000000000000000000000000000000000000000000000);
Warnings:
Error 1292 Truncated incorrect DECIMAL value: ''
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
insert into t1 values(
99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 *
99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999);
@@ -1389,16 +1389,26 @@ Warnings:
Error 1292 Truncated incorrect DECIMAL value: ''
Error 1292 Truncated incorrect DECIMAL value: ''
Error 1292 Truncated incorrect DECIMAL value: ''
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
insert into t1 values(1e100);
Warnings:
-Warning 1264 Out of range value adjusted for column 'c1' at row 1
+Warning 1264 Out of range value for column 'c1' at row 1
select * from t1;
c1
9999999999999999999999999999999999999999999999999999999999999999
9999999999999999999999999999999999999999999999999999999999999999
9999999999999999999999999999999999999999999999999999999999999999
drop table t1;
+create table t1(a decimal(7,2));
+insert into t1 values(123.12);
+select * from t1;
+a
+123.12
+alter table t1 modify a decimal(10,2);
+select * from t1;
+a
+123.12
+drop table t1;
create table t1 (i int, j int);
insert into t1 values (1,1), (1,2), (2,3), (2,4);
select i, count(distinct j) from t1 group by i;
@@ -1434,12 +1444,12 @@ select cast(11.1234 as DECIMAL(3,2));
cast(11.1234 as DECIMAL(3,2))
9.99
Warnings:
-Error 1264 Out of range value adjusted for column 'cast(11.1234 as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(11.1234 as DECIMAL(3,2))' at row 1
select * from (select cast(11.1234 as DECIMAL(3,2))) t;
cast(11.1234 as DECIMAL(3,2))
9.99
Warnings:
-Error 1264 Out of range value adjusted for column 'cast(11.1234 as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(11.1234 as DECIMAL(3,2))' at row 1
select cast(a as DECIMAL(3,2))
from (select 11.1233 as a
UNION select 11.1234
@@ -1450,9 +1460,9 @@ cast(a as DECIMAL(3,2))
9.99
9.99
Warnings:
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
select cast(a as DECIMAL(3,2)), count(*)
from (select 11.1233 as a
UNION select 11.1234
@@ -1461,10 +1471,10 @@ UNION select 12.1234
cast(a as DECIMAL(3,2)) count(*)
9.99 3
Warnings:
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
-Error 1264 Out of range value adjusted for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
+Error 1264 Out of range value for column 'cast(a as DECIMAL(3,2))' at row 1
create table t1 (s varchar(100));
insert into t1 values (0.00000000010000000000000000364321973154977415791655470655996396089904010295867919921875);
drop table t1;
@@ -1485,9 +1495,9 @@ CREATE TABLE t1 (a int DEFAULT NULL, b int DEFAULT NULL);
INSERT INTO t1 VALUES (3,30), (1,10), (2,10);
SELECT a+CAST(1 AS decimal(65,30)) AS aa, SUM(b) FROM t1 GROUP BY aa;
aa SUM(b)
-2.000000000000000000000000000000 10
-3.000000000000000000000000000000 10
-4.000000000000000000000000000000 30
+2.00000000000000000000000000000 10
+3.00000000000000000000000000000 10
+4.00000000000000000000000000000 30
SELECT a+CAST(1 AS decimal(65,31)) AS aa, SUM(b) FROM t1 GROUP BY aa;
ERROR 42000: Too big scale 31 specified for column '1'. Maximum is 30.
DROP TABLE t1;
@@ -1511,13 +1521,13 @@ f1
DROP TABLE t1;
CREATE TABLE t1 SELECT 123451234512345123451234512345123451234512345.678906789067890678906789067890678906789067890 AS f1;
Warnings:
-Warning 1264 Out of range value adjusted for column 'f1' at row 1
+Note 1265 Data truncated for column 'f1' at row 1
DESC t1;
Field Type Null Key Default Extra
-f1 decimal(59,30) NO 0.000000000000000000000000000000
+f1 decimal(65,20) NO 0.00000000000000000000
SELECT f1 FROM t1;
f1
-99999999999999999999999999999.999999999999999999999999999999
+123451234512345123451234512345123451234512345.67890678906789067891
DROP TABLE t1;
select (1.20396873 * 0.89550000 * 0.68000000 * 1.08721696 * 0.99500000 *
1.01500000 * 1.01500000 * 0.99500000);
@@ -1533,10 +1543,294 @@ Note 1265 Data truncated for column '5.05 / 0.014' at row 1
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `5.05 / 0.014` decimal(10,6) default NULL
+ `5.05 / 0.014` decimal(10,6) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select * from t1;
5.05 / 0.014
360.714286
DROP TABLE t1;
End of 5.0 tests
+select cast(143.481 as decimal(4,1));
+cast(143.481 as decimal(4,1))
+143.5
+select cast(143.481 as decimal(4,0));
+cast(143.481 as decimal(4,0))
+143
+select cast(143.481 as decimal(2,1));
+cast(143.481 as decimal(2,1))
+9.9
+Warnings:
+Error 1264 Out of range value for column 'cast(143.481 as decimal(2,1))' at row 1
+select cast(-3.4 as decimal(2,1));
+cast(-3.4 as decimal(2,1))
+-3.4
+select cast(99.6 as decimal(2,0));
+cast(99.6 as decimal(2,0))
+99
+Warnings:
+Error 1264 Out of range value for column 'cast(99.6 as decimal(2,0))' at row 1
+select cast(-13.4 as decimal(2,1));
+cast(-13.4 as decimal(2,1))
+-9.9
+Warnings:
+Error 1264 Out of range value for column 'cast(-13.4 as decimal(2,1))' at row 1
+select cast(98.6 as decimal(2,0));
+cast(98.6 as decimal(2,0))
+99
+#
+# Bug #45262: Bad effects with CREATE TABLE and DECIMAL
+#
+CREATE TABLE t1 SELECT .123456789123456789123456789123456789123456789123456789123456789123456789123456789 AS my_col;
+Warnings:
+Note 1265 Data truncated for column 'my_col' at row 1
+DESCRIBE t1;
+Field Type Null Key Default Extra
+my_col decimal(30,30) NO 0.000000000000000000000000000000
+SELECT my_col FROM t1;
+my_col
+0.123456789123456789123456789123
+DROP TABLE t1;
+CREATE TABLE t1 SELECT 1 + .123456789123456789123456789123456789123456789123456789123456789123456789123456789 AS my_col;
+Warnings:
+Note 1265 Data truncated for column 'my_col' at row 1
+DESCRIBE t1;
+Field Type Null Key Default Extra
+my_col decimal(32,30) NO 0.000000000000000000000000000000
+SELECT my_col FROM t1;
+my_col
+1.123456789123456789123456789123
+DROP TABLE t1;
+CREATE TABLE t1 SELECT 1 * .123456789123456789123456789123456789123456789123456789123456789123456789123456789 AS my_col;
+Warnings:
+Note 1265 Data truncated for column 'my_col' at row 1
+DESCRIBE t1;
+Field Type Null Key Default Extra
+my_col decimal(65,30) NO 0.000000000000000000000000000000
+SELECT my_col FROM t1;
+my_col
+0.123456789123456789123456789123
+DROP TABLE t1;
+CREATE TABLE t1 SELECT 1 / .123456789123456789123456789123456789123456789123456789123456789123456789123456789 AS my_col;
+Warnings:
+Note 1265 Data truncated for column 'my_col' at row 1
+DESCRIBE t1;
+Field Type Null Key Default Extra
+my_col decimal(65,4) YES NULL
+SELECT my_col FROM t1;
+my_col
+8.1000
+DROP TABLE t1;
+CREATE TABLE t1 SELECT 1 % .123456789123456789123456789123456789123456789123456789123456789123456789123456789 AS my_col;
+Warnings:
+Note 1265 Data truncated for column 'my_col' at row 1
+DESCRIBE t1;
+Field Type Null Key Default Extra
+my_col decimal(30,30) YES NULL
+SELECT my_col FROM t1;
+my_col
+0.012345687012345687012345687012
+DROP TABLE t1;
+#
+# Bug#45261: Crash, stored procedure + decimal
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 SELECT
+/* 81 */ 100000000000000000000000000000000000000000000000000000000000000000000000000000001
+AS c1;
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,0) NO 0
+SELECT * FROM t1;
+c1
+99999999999999999999999999999999999999999999999999999999999999999
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 81 */ 100000000000000000000000000000000000000000000000000000000000000000000000000000001.
+AS c1;
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,0) NO 0
+SELECT * FROM t1;
+c1
+99999999999999999999999999999999999999999999999999999999999999999
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 81 */ 100000000000000000000000000000000000000000000000000000000000000000000000000000001.1 /* 1 */
+AS c1;
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,0) NO 0
+SELECT * FROM t1;
+c1
+99999999999999999999999999999999999999999999999999999999999999999
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 82 */ 1000000000000000000000000000000000000000000000000000000000000000000000000000000001
+AS c1;
+Warnings:
+Error 1292 Truncated incorrect DECIMAL value: ''
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,0) NO 0
+SELECT * FROM t1;
+c1
+99999999999999999999999999999999999999999999999999999999999999999
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 40 */ 1000000000000000000000000000000000000001.1000000000000000000000000000000000000001 /* 40 */
+AS c1;
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,25) NO 0.0000000000000000000000000
+SELECT * FROM t1;
+c1
+1000000000000000000000000000000000000001.1000000000000000000000000
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 1 */ 1.10000000000000000000000000000000000000000000000000000000000000000000000000000001 /* 80 */
+AS c1;
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(31,30) NO 0.000000000000000000000000000000
+SELECT * FROM t1;
+c1
+1.100000000000000000000000000000
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 1 */ 1.100000000000000000000000000000000000000000000000000000000000000000000000000000001 /* 81 */
+AS c1;
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(31,30) NO 0.000000000000000000000000000000
+SELECT * FROM t1;
+c1
+1.100000000000000000000000000000
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+.100000000000000000000000000000000000000000000000000000000000000000000000000000001 /* 81 */
+AS c1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(30,30) NO 0.000000000000000000000000000000
+SELECT * FROM t1;
+c1
+0.100000000000000000000000000000
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 45 */ 123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345 /* 45 */
+AS c1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,20) NO 0.00000000000000000000
+SELECT * FROM t1;
+c1
+123456789012345678901234567890123456789012345.12345678901234567890
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 65 */ 12345678901234567890123456789012345678901234567890123456789012345.1 /* 1 */
+AS c1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,0) NO 0
+SELECT * FROM t1;
+c1
+12345678901234567890123456789012345678901234567890123456789012345
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+/* 66 */ 123456789012345678901234567890123456789012345678901234567890123456.1 /* 1 */
+AS c1;
+Warnings:
+Warning 1264 Out of range value for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,0) NO 0
+SELECT * FROM t1;
+c1
+99999999999999999999999999999999999999999999999999999999999999999
+DROP TABLE t1;
+CREATE TABLE t1 SELECT
+.123456789012345678901234567890123456789012345678901234567890123456 /* 66 */
+AS c1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(30,30) NO 0.000000000000000000000000000000
+SELECT * FROM t1;
+c1
+0.123456789012345678901234567890
+DROP TABLE t1;
+CREATE TABLE t1 AS SELECT 123.1234567890123456789012345678901 /* 31 */ AS c1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(33,30) NO 0.000000000000000000000000000000
+SELECT * FROM t1;
+c1
+123.123456789012345678901234567890
+DROP TABLE t1;
+CREATE TABLE t1 SELECT 1.1 + CAST(1 AS DECIMAL(65,30)) AS c1;
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,29) NO 0.00000000000000000000000000000
+SELECT * FROM t1;
+c1
+2.10000000000000000000000000000
+DROP TABLE t1;
+#
+# Test that the integer and decimal parts are properly calculated.
+#
+CREATE TABLE t1 (a DECIMAL(30,30));
+INSERT INTO t1 VALUES (0.1),(0.2),(0.3);
+CREATE TABLE t2 SELECT MIN(a + 0.0000000000000000000000000000001) AS c1 FROM t1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 3
+DESC t2;
+Field Type Null Key Default Extra
+c1 decimal(32,30) YES NULL
+DROP TABLE t1,t2;
+CREATE TABLE t1 (a DECIMAL(30,30));
+INSERT INTO t1 VALUES (0.1),(0.2),(0.3);
+CREATE TABLE t2 SELECT IFNULL(a + 0.0000000000000000000000000000001, NULL) AS c1 FROM t1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+Note 1265 Data truncated for column 'c1' at row 2
+Note 1265 Data truncated for column 'c1' at row 3
+DESC t2;
+Field Type Null Key Default Extra
+c1 decimal(32,30) YES NULL
+DROP TABLE t1,t2;
+CREATE TABLE t1 (a DECIMAL(30,30));
+INSERT INTO t1 VALUES (0.1),(0.2),(0.3);
+CREATE TABLE t2 SELECT CASE a WHEN 0.1 THEN 0.0000000000000000000000000000000000000000000000000000000000000000001 END AS c1 FROM t1;
+Warnings:
+Note 1265 Data truncated for column 'c1' at row 1
+DESC t2;
+Field Type Null Key Default Extra
+c1 decimal(31,30) YES NULL
+DROP TABLE t1,t2;
+#
+# Test that variables get maximum precision.
+#
+SET @decimal= 1.1;
+CREATE TABLE t1 SELECT @decimal AS c1;
+DESC t1;
+Field Type Null Key Default Extra
+c1 decimal(65,30) YES NULL
+SELECT * FROM t1;
+c1
+1.100000000000000000000000000000
+DROP TABLE t1;
diff --git a/mysql-test/r/type_ranges.result b/mysql-test/r/type_ranges.result
index 3b368ff135f..6e08067d8a4 100644
--- a/mysql-test/r/type_ranges.result
+++ b/mysql-test/r/type_ranges.result
@@ -57,7 +57,7 @@ ushort smallint(5) unsigned zerofill NULL NO MUL 00000 #
umedium mediumint(8) unsigned NULL NO MUL 0 #
ulong int(11) unsigned NULL NO MUL 0 #
ulonglong bigint(13) unsigned NULL NO MUL 0 #
-time_stamp timestamp NULL NO CURRENT_TIMESTAMP #
+time_stamp timestamp NULL NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP #
date_field date NULL YES NULL #
time_field time NULL YES NULL #
date_time datetime NULL YES NULL #
@@ -94,35 +94,35 @@ Warnings:
Warning 1265 Data truncated for column 'string' at row 1
insert into t1 values (0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,NULL,19970807,080706,19970403090807,-1,-1,-1,'-1',-1,-1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'utiny' at row 1
-Warning 1264 Out of range value adjusted for column 'ushort' at row 1
-Warning 1264 Out of range value adjusted for column 'umedium' at row 1
-Warning 1264 Out of range value adjusted for column 'ulong' at row 1
-Warning 1264 Out of range value adjusted for column 'ulonglong' at row 1
+Warning 1264 Out of range value for column 'utiny' at row 1
+Warning 1264 Out of range value for column 'ushort' at row 1
+Warning 1264 Out of range value for column 'umedium' at row 1
+Warning 1264 Out of range value for column 'ulong' at row 1
+Warning 1264 Out of range value for column 'ulonglong' at row 1
Warning 1265 Data truncated for column 'options' at row 1
Warning 1265 Data truncated for column 'flags' at row 1
insert into t1 values (0,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,-4294967295,NULL,0,0,0,-4294967295,-4294967295,-4294967295,'-4294967295',0,"one,two,tree");
Warnings:
Warning 1265 Data truncated for column 'string' at row 1
-Warning 1264 Out of range value adjusted for column 'tiny' at row 1
-Warning 1264 Out of range value adjusted for column 'short' at row 1
-Warning 1264 Out of range value adjusted for column 'medium' at row 1
-Warning 1264 Out of range value adjusted for column 'long_int' at row 1
-Warning 1264 Out of range value adjusted for column 'utiny' at row 1
-Warning 1264 Out of range value adjusted for column 'ushort' at row 1
-Warning 1264 Out of range value adjusted for column 'umedium' at row 1
-Warning 1264 Out of range value adjusted for column 'ulong' at row 1
-Warning 1264 Out of range value adjusted for column 'ulonglong' at row 1
+Warning 1264 Out of range value for column 'tiny' at row 1
+Warning 1264 Out of range value for column 'short' at row 1
+Warning 1264 Out of range value for column 'medium' at row 1
+Warning 1264 Out of range value for column 'long_int' at row 1
+Warning 1264 Out of range value for column 'utiny' at row 1
+Warning 1264 Out of range value for column 'ushort' at row 1
+Warning 1264 Out of range value for column 'umedium' at row 1
+Warning 1264 Out of range value for column 'ulong' at row 1
+Warning 1264 Out of range value for column 'ulonglong' at row 1
Warning 1265 Data truncated for column 'options' at row 1
insert into t1 values (0,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,NULL,0,0,0,4294967295,4294967295,4294967295,'4294967295',0,0);
Warnings:
-Warning 1264 Out of range value adjusted for column 'tiny' at row 1
-Warning 1264 Out of range value adjusted for column 'short' at row 1
-Warning 1264 Out of range value adjusted for column 'medium' at row 1
-Warning 1264 Out of range value adjusted for column 'long_int' at row 1
-Warning 1264 Out of range value adjusted for column 'utiny' at row 1
-Warning 1264 Out of range value adjusted for column 'ushort' at row 1
-Warning 1264 Out of range value adjusted for column 'umedium' at row 1
+Warning 1264 Out of range value for column 'tiny' at row 1
+Warning 1264 Out of range value for column 'short' at row 1
+Warning 1264 Out of range value for column 'medium' at row 1
+Warning 1264 Out of range value for column 'long_int' at row 1
+Warning 1264 Out of range value for column 'utiny' at row 1
+Warning 1264 Out of range value for column 'ushort' at row 1
+Warning 1264 Out of range value for column 'umedium' at row 1
Warning 1265 Data truncated for column 'options' at row 1
insert into t1 (tiny) values (1);
select auto,string,tiny,short,medium,long_int,longlong,real_float,real_double,utiny,ushort,umedium,ulong,ulonglong,mod(floor(time_stamp/1000000),1000000)-mod(curdate(),1000000),date_field,time_field,date_time,blob_col,tinyblob_col,mediumblob_col,longblob_col from t1;
@@ -225,7 +225,7 @@ ushort smallint(5) unsigned zerofill NULL NO 00000 #
umedium mediumint(8) unsigned NULL NO MUL 0 #
ulong int(11) unsigned NULL NO MUL 0 #
ulonglong bigint(13) unsigned NULL NO MUL 0 #
-time_stamp timestamp NULL NO CURRENT_TIMESTAMP #
+time_stamp timestamp NULL NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP #
date_field char(10) latin1_swedish_ci YES NULL #
time_field time NULL YES NULL #
date_time datetime NULL YES NULL #
@@ -322,7 +322,7 @@ select * from t3;
id_A id_B
1 1
2 NULL
-delete from t3;
+truncate table t3;
insert into t3 select t1.id as id_A, t2.id as id_B from t1 left join t2 on (t1.id = t2.id);
select * from t3;
id_A id_B
diff --git a/mysql-test/r/type_set.result b/mysql-test/r/type_set.result
index 4722db1432f..09531ec60d5 100644
--- a/mysql-test/r/type_set.result
+++ b/mysql-test/r/type_set.result
@@ -10,7 +10,7 @@ create table t1 (a set (' ','a','b ') not null default 'b ');
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` set('','a','b') NOT NULL default 'b'
+ `a` set('','a','b') NOT NULL DEFAULT 'b'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t1 ( user varchar(64) NOT NULL default '', path varchar(255) NOT NULL default '', privilege set('select','RESERVED30','RESERVED29','RESERVED28','RESERVED27','RESERVED26', 'RESERVED25','RESERVED24','data.delete','RESERVED22','RESERVED21', 'RESERVED20','data.insert.none','data.insert.approve', 'data.insert.delete','data.insert.move','data.insert.propose', 'data.insert.reject','RESERVED13','RESERVED12','RESERVED11','RESERVED10', 'RESERVED09','data.update','RESERVED07','RESERVED06','RESERVED05', 'RESERVED04','metadata.delete','metadata.put','RESERVED01','RESERVED00') NOT NULL default '', KEY user (user) ) ENGINE=MyISAM CHARSET=utf8;
@@ -20,7 +20,7 @@ create table t1 (s set ('a','A') character set latin1 collate latin1_bin);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `s` set('a','A') character set latin1 collate latin1_bin default NULL
+ `s` set('a','A') CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('a'),('a,A'),('A,a'),('A');
select s from t1 order by s;
@@ -82,7 +82,7 @@ Note 1291 Column 'f1' has duplicated value '1' in SET
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f1` set('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','36','37','38','39','40','41','42','43','44','45','46','47','48','49','50','51','52','53','54','55','56','57','58','59','60','61','62','63','64','1') default NULL
+ `f1` set('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','36','37','38','39','40','41','42','43','44','45','46','47','48','49','50','51','52','53','54','55','56','57','58','59','60','61','62','63','64','1') DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE t1(c set('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','36','37','38','39','40','41','42','43','44','45','46','47','48','49','50','51','52','53','54','55','56','57','58','59','60','61','62','63','64'));
@@ -93,4 +93,14 @@ c
1,2,3
64
DROP TABLE t1;
+CREATE TABLE t1 (
+set_unique_utf8 set ('a','b','c','d','e','f','g','h','i','j','k','l',
+'m','n','o','p','q','r','s','t','u','v','w','x',
+'y','z') CHARACTER SET utf8,
+unique (set_unique_utf8)
+);
+INSERT INTO t1 ( set_unique_utf8 ) VALUES ( '' );
+INSERT INTO t1 ( set_unique_utf8 ) VALUES ( '' );
+ERROR 23000: Duplicate entry '' for key 'set_unique_utf8'
+DROP TABLE t1;
End of 5.0 tests
diff --git a/mysql-test/r/type_time.result b/mysql-test/r/type_time.result
index 69dca57398f..e4b90196c2d 100644
--- a/mysql-test/r/type_time.result
+++ b/mysql-test/r/type_time.result
@@ -26,9 +26,9 @@ t
insert into t1 values("10.22.22"),(1234567),(123456789),(123456789.10),("10 22:22"),("12.45a");
Warnings:
Warning 1265 Data truncated for column 't' at row 1
-Warning 1264 Out of range value adjusted for column 't' at row 2
-Warning 1264 Out of range value adjusted for column 't' at row 3
-Warning 1264 Out of range value adjusted for column 't' at row 4
+Warning 1264 Out of range value for column 't' at row 2
+Warning 1264 Out of range value for column 't' at row 3
+Warning 1264 Out of range value for column 't' at row 4
Warning 1265 Data truncated for column 't' at row 6
select * from t1;
t
diff --git a/mysql-test/r/type_timestamp.result b/mysql-test/r/type_timestamp.result
index 59900fe4a77..24cb725de9f 100644
--- a/mysql-test/r/type_timestamp.result
+++ b/mysql-test/r/type_timestamp.result
@@ -60,7 +60,7 @@ ix+0
19990501000000
19991101000000
19990501000000
-delete from t1;
+truncate table t1;
insert into t1 values ("19991101000000"),("19990102030405"),("19990630232922"),("19990601000000");
select ix+0 from t1;
ix+0
@@ -101,13 +101,13 @@ create table t1 (t2 timestamp(2), t4 timestamp(4), t6 timestamp(6),
t8 timestamp(8), t10 timestamp(10), t12 timestamp(12),
t14 timestamp(14));
Warnings:
-Warning 1287 'TIMESTAMP(2)' is deprecated; use 'TIMESTAMP' instead
-Warning 1287 'TIMESTAMP(4)' is deprecated; use 'TIMESTAMP' instead
-Warning 1287 'TIMESTAMP(6)' is deprecated; use 'TIMESTAMP' instead
-Warning 1287 'TIMESTAMP(8)' is deprecated; use 'TIMESTAMP' instead
-Warning 1287 'TIMESTAMP(10)' is deprecated; use 'TIMESTAMP' instead
-Warning 1287 'TIMESTAMP(12)' is deprecated; use 'TIMESTAMP' instead
-Warning 1287 'TIMESTAMP(14)' is deprecated; use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(2)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(4)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(6)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(8)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(10)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(12)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
+Warning 1287 The syntax 'TIMESTAMP(14)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead
insert t1 values (0,0,0,0,0,0,0),
("1997-12-31 23:47:59", "1997-12-31 23:47:59", "1997-12-31 23:47:59",
"1997-12-31 23:47:59", "1997-12-31 23:47:59", "1997-12-31 23:47:59",
@@ -141,7 +141,7 @@ ix+0
0
0
0
-delete from t1;
+truncate table t1;
insert into t1 values ("00000000000000"),("20030101010160"),("20030101016001"),("20030101240101"),("20030132010101"),("20031301010101"),("20031200000000"),("20030000000000");
Warnings:
Warning 1265 Data truncated for column 'ix' at row 2
@@ -161,7 +161,7 @@ ix+0
0
0
0
-delete from t1;
+truncate table t1;
insert into t1 values ("0000-00-00 00:00:00 some trailer"),("2003-01-01 00:00:00 some trailer");
Warnings:
Warning 1265 Data truncated for column 'ix' at row 1
@@ -195,9 +195,9 @@ t1 t2 t3
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1` timestamp NOT NULL default '2003-01-01 00:00:00',
- `t2` datetime default NULL,
- `t3` timestamp NOT NULL default '0000-00-00 00:00:00'
+ `t1` timestamp NOT NULL DEFAULT '2003-01-01 00:00:00',
+ `t2` datetime DEFAULT NULL,
+ `t3` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
Field Type Null Key Default Extra
@@ -219,9 +219,9 @@ t1 t2 t3
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1` timestamp NOT NULL default CURRENT_TIMESTAMP,
- `t2` datetime default NULL,
- `t3` timestamp NOT NULL default '0000-00-00 00:00:00'
+ `t1` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ `t2` datetime DEFAULT NULL,
+ `t3` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
Field Type Null Key Default Extra
@@ -246,12 +246,12 @@ t1 t2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1` timestamp NOT NULL default '2003-01-01 00:00:00' on update CURRENT_TIMESTAMP,
- `t2` datetime default NULL
+ `t1` timestamp NOT NULL DEFAULT '2003-01-01 00:00:00' ON UPDATE CURRENT_TIMESTAMP,
+ `t2` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
Field Type Null Key Default Extra
-t1 timestamp NO 2003-01-01 00:00:00
+t1 timestamp NO 2003-01-01 00:00:00 on update CURRENT_TIMESTAMP
t2 datetime YES NULL
drop table t1;
create table t1 (t1 timestamp default now() on update now(), t2 datetime);
@@ -271,12 +271,12 @@ t1 t2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `t2` datetime default NULL
+ `t1` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `t2` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
Field Type Null Key Default Extra
-t1 timestamp NO CURRENT_TIMESTAMP
+t1 timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
t2 datetime YES NULL
drop table t1;
create table t1 (t1 timestamp, t2 datetime, t3 timestamp);
@@ -296,13 +296,13 @@ t1 t2 t3
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `t2` datetime default NULL,
- `t3` timestamp NOT NULL default '0000-00-00 00:00:00'
+ `t1` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `t2` datetime DEFAULT NULL,
+ `t3` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
Field Type Null Key Default Extra
-t1 timestamp NO CURRENT_TIMESTAMP
+t1 timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
t2 datetime YES NULL
t3 timestamp NO 0000-00-00 00:00:00
drop table t1;
@@ -323,14 +323,14 @@ t1 t2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `t1` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `t2` datetime default NULL
+ `t1` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `t2` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show columns from t1;
Field Type Null Key Default Extra
-t1 timestamp NO CURRENT_TIMESTAMP
+t1 timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
t2 datetime YES NULL
-delete from t1;
+truncate table t1;
insert into t1 values ('2004-04-01 00:00:00', '2004-04-01 00:00:00');
SET TIMESTAMP=1000000012;
update t1 set t1= '2004-04-02 00:00:00';
@@ -378,8 +378,8 @@ create table t1 (a timestamp null, b timestamp null);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` timestamp NULL default NULL,
- `b` timestamp NULL default NULL
+ `a` timestamp NULL DEFAULT NULL,
+ `b` timestamp NULL DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values (NULL, NULL);
SET TIMESTAMP=1000000017;
@@ -393,8 +393,8 @@ create table t1 (a timestamp null default current_timestamp on update current_ti
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` timestamp NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
- `b` timestamp NULL default NULL
+ `a` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ `b` timestamp NULL DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values (NULL, NULL);
SET TIMESTAMP=1000000018;
@@ -408,8 +408,8 @@ create table t1 (a timestamp null default null, b timestamp null default '2003-0
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` timestamp NULL default NULL,
- `b` timestamp NULL default '2003-01-01 00:00:00'
+ `a` timestamp NULL DEFAULT NULL,
+ `b` timestamp NULL DEFAULT '2003-01-01 00:00:00'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values (NULL, NULL);
insert into t1 values (DEFAULT, DEFAULT);
@@ -440,8 +440,8 @@ create table t1 (a timestamp, b timestamp(19));
show create table t1;
Table Create Table
t1 CREATE TABLE "t1" (
- "a" datetime default NULL,
- "b" datetime default NULL
+ "a" datetime DEFAULT NULL,
+ "b" datetime DEFAULT NULL
)
set sql_mode='';
drop table t1;
diff --git a/mysql-test/r/type_uint.result b/mysql-test/r/type_uint.result
index 0474f3a24f4..e08605fb237 100644
--- a/mysql-test/r/type_uint.result
+++ b/mysql-test/r/type_uint.result
@@ -4,10 +4,10 @@ create table t1 (this int unsigned);
insert into t1 values (1);
insert into t1 values (-1);
Warnings:
-Warning 1264 Out of range value adjusted for column 'this' at row 1
+Warning 1264 Out of range value for column 'this' at row 1
insert into t1 values ('5000000000');
Warnings:
-Warning 1264 Out of range value adjusted for column 'this' at row 1
+Warning 1264 Out of range value for column 'this' at row 1
select * from t1;
this
1
diff --git a/mysql-test/r/type_varchar.result b/mysql-test/r/type_varchar.result
index f6c2f4d01a6..96042a91bae 100644
--- a/mysql-test/r/type_varchar.result
+++ b/mysql-test/r/type_varchar.result
@@ -4,17 +4,17 @@ truncate table vchar;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `v` varchar(30) default NULL,
- `c` char(3) default NULL,
- `e` enum('abc','def','ghi') default NULL,
+ `v` varchar(30) DEFAULT NULL,
+ `c` char(3) DEFAULT NULL,
+ `e` enum('abc','def','ghi') DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
show create table vchar;
Table Create Table
vchar CREATE TABLE `vchar` (
- `v` varchar(30) default NULL,
- `c` char(3) default NULL,
- `e` enum('abc','def','ghi') default NULL,
+ `v` varchar(30) DEFAULT NULL,
+ `c` char(3) DEFAULT NULL,
+ `e` enum('abc','def','ghi') DEFAULT NULL,
`t` text
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('abc', 'de', 'ghi', 'jkl');
@@ -37,11 +37,11 @@ alter table vchar add i int;
show create table vchar;
Table Create Table
vchar CREATE TABLE `vchar` (
- `v` varchar(30) default NULL,
- `c` char(3) default NULL,
- `e` enum('abc','def','ghi') default NULL,
+ `v` varchar(30) DEFAULT NULL,
+ `c` char(3) DEFAULT NULL,
+ `e` enum('abc','def','ghi') DEFAULT NULL,
`t` text,
- `i` int(11) default NULL
+ `i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select length(v),length(c),length(e),length(t) from vchar;
length(v) length(c) length(e) length(t)
@@ -62,7 +62,7 @@ binary v='a '
1
insert into t1 values('a');
alter table t1 add primary key (v);
-ERROR 23000: Duplicate entry 'a' for key 1
+ERROR 23000: Duplicate entry 'a' for key 'PRIMARY'
drop table t1;
create table t1 (v varbinary(20));
insert into t1 values('a');
@@ -397,14 +397,14 @@ create index index1 on t1(f1(10));
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f1` varchar(65500) default NULL,
+ `f1` varchar(65500) DEFAULT NULL,
KEY `index1` (`f1`(10))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify f1 varchar(255);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f1` varchar(255) default NULL,
+ `f1` varchar(255) DEFAULT NULL,
KEY `index1` (`f1`(10))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 modify f1 tinytext;
diff --git a/mysql-test/r/udf.result b/mysql-test/r/udf.result
index 92185962d1f..601b364fbbe 100644
--- a/mysql-test/r/udf.result
+++ b/mysql-test/r/udf.result
@@ -1,10 +1,8 @@
drop table if exists t1;
CREATE FUNCTION metaphon RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
-Warnings:
-Warning 1105 plugin_dir was not specified
CREATE FUNCTION myfunc_double RETURNS REAL SONAME "UDF_EXAMPLE_LIB";
CREATE FUNCTION myfunc_nonexist RETURNS INTEGER SONAME "UDF_EXAMPLE_LIB";
-ERROR HY000: Can't find function 'myfunc_nonexist' in library
+ERROR HY000: Can't find symbol 'myfunc_nonexist' in library
CREATE FUNCTION myfunc_int RETURNS INTEGER SONAME "UDF_EXAMPLE_LIB";
CREATE FUNCTION sequence RETURNS INTEGER SONAME "UDF_EXAMPLE_LIB";
CREATE FUNCTION lookup RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
@@ -13,7 +11,7 @@ RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
CREATE AGGREGATE FUNCTION avgcost
RETURNS REAL SONAME "UDF_EXAMPLE_LIB";
select myfunc_double();
-ERROR HY000: myfunc_double must have at least one argument
+ERROR HY000: Can't initialize function 'myfunc_double'; myfunc_double must have at least one argument
select myfunc_double(1);
myfunc_double(1)
49.00
@@ -26,26 +24,26 @@ select myfunc_int();
myfunc_int()
0
select lookup();
-ERROR HY000: Wrong arguments to lookup; Use the source
+ERROR HY000: Can't initialize function 'lookup'; Wrong arguments to lookup; Use the source
select lookup("127.0.0.1");
lookup("127.0.0.1")
127.0.0.1
select lookup(127,0,0,1);
-ERROR HY000: Wrong arguments to lookup; Use the source
+ERROR HY000: Can't initialize function 'lookup'; Wrong arguments to lookup; Use the source
select lookup("localhost");
lookup("localhost")
127.0.0.1
select reverse_lookup();
-ERROR HY000: Wrong number of arguments to reverse_lookup; Use the source
+ERROR HY000: Can't initialize function 'reverse_lookup'; Wrong number of arguments to reverse_lookup; Use the source
select reverse_lookup("127.0.0.1");
select reverse_lookup(127,0,0,1);
select reverse_lookup("localhost");
reverse_lookup("localhost")
NULL
select avgcost();
-ERROR HY000: wrong number of arguments: AVGCOST() requires two arguments
+ERROR HY000: Can't initialize function 'avgcost'; wrong number of arguments: AVGCOST() requires two arguments
select avgcost(100,23.76);
-ERROR HY000: wrong argument type: AVGCOST() requires an INT and a REAL
+ERROR HY000: Can't initialize function 'avgcost'; wrong argument type: AVGCOST() requires an INT and a REAL
create table t1(sum int, price float(24));
insert into t1 values(100, 50.00), (100, 100.00);
select avgcost(sum, price) from t1;
@@ -120,13 +118,13 @@ myfunc_int(a AS attr_name)
1
2
EXPLAIN EXTENDED SELECT myfunc_int(a AS attr_name) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select myfunc_int(`test`.`t1`.`a` AS `attr_name`) AS `myfunc_int(a AS attr_name)` from `test`.`t1`
EXPLAIN EXTENDED SELECT myfunc_int(a) FROM t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select myfunc_int(`test`.`t1`.`a` AS `a`) AS `myfunc_int(a)` from `test`.`t1`
SELECT a,c FROM v1;
@@ -134,9 +132,9 @@ a c
1 1
2 2
SELECT a, fn(MIN(b) xx) as c FROM t1 GROUP BY a;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'xx) as c FROM t1 GROUP BY a' at line 1
+ERROR 42000: Incorrect parameters in the call to stored function 'fn'
SELECT myfunc_int(fn(MIN(b) xx)) as c FROM t1 GROUP BY a;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'xx)) as c FROM t1 GROUP BY a' at line 1
+ERROR 42000: Incorrect parameters in the call to stored function 'fn'
SELECT myfunc_int(test.fn(MIN(b) xx)) as c FROM t1 GROUP BY a;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'xx)) as c FROM t1 GROUP BY a' at line 1
SELECT myfunc_int(fn(MIN(b)) xx) as c FROM t1 GROUP BY a;
@@ -148,23 +146,23 @@ c
1
2
EXPLAIN EXTENDED SELECT myfunc_int(MIN(b) xx) as c FROM t1 GROUP BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select myfunc_int(min(`test`.`t1`.`b`) AS `xx`) AS `c` from `test`.`t1` group by `test`.`t1`.`a`
EXPLAIN EXTENDED SELECT test.fn(MIN(b)) as c FROM t1 GROUP BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select `test`.`fn`(min(`test`.`t1`.`b`)) AS `c` from `test`.`t1` group by `test`.`t1`.`a`
EXPLAIN EXTENDED SELECT myfunc_int(fn(MIN(b))) as c FROM t1 GROUP BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select myfunc_int(`fn`(min(`test`.`t1`.`b`)) AS `fn(MIN(b))`) AS `c` from `test`.`t1` group by `test`.`t1`.`a`
EXPLAIN EXTENDED SELECT myfunc_int(test.fn(MIN(b))) as c FROM t1 GROUP BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort
Warnings:
Note 1003 select myfunc_int(`test`.`fn`(min(`test`.`t1`.`b`)) AS `test.fn(MIN(b))`) AS `c` from `test`.`t1` group by `test`.`t1`.`a`
SELECT myfunc_int(MIN(b) xx) as c FROM t1 GROUP BY a;
@@ -187,6 +185,44 @@ DROP VIEW v1;
DROP TABLE t1;
DROP FUNCTION fn;
End of 5.0 tests.
+select myfunc_double(3);
+myfunc_double(3)
+51.00
+select myfunc_double(3 AS three);
+myfunc_double(3 AS three)
+51.00
+select myfunc_double(abs(3));
+myfunc_double(abs(3))
+51.00
+select myfunc_double(abs(3) AS named_param);
+myfunc_double(abs(3) AS named_param)
+51.00
+select abs(myfunc_double(3));
+abs(myfunc_double(3))
+51.00
+select abs(myfunc_double(3 AS three));
+abs(myfunc_double(3 AS three))
+51.00
+select myfunc_double(abs(3 AS wrong));
+ERROR 42000: Incorrect parameters in the call to native function 'abs'
+select abs(myfunc_double(3) AS wrong);
+ERROR 42000: Incorrect parameters in the call to native function 'abs'
+drop function if exists pi;
+CREATE FUNCTION pi RETURNS STRING SONAME "should_not_parse.so";
+ERROR HY000: This function 'pi' has the same name as a native function
+DROP FUNCTION IF EXISTS metaphon;
+CREATE FUNCTION metaphon(a int) RETURNS int
+return 0;
+CREATE FUNCTION metaphon RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
+DROP FUNCTION metaphon;
+DROP FUNCTION metaphon;
+CREATE FUNCTION metaphon RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
+CREATE FUNCTION metaphon(a int) RETURNS int
+return 0;
+ERROR HY000: Function 'metaphon' already exists
+CREATE FUNCTION test.metaphon(a int) RETURNS int
+return 0;
+ERROR HY000: Function 'metaphon' already exists
DROP FUNCTION metaphon;
DROP FUNCTION myfunc_double;
DROP FUNCTION myfunc_nonexist;
@@ -199,8 +235,6 @@ DROP FUNCTION avgcost;
select * from mysql.func;
name ret dl type
CREATE FUNCTION is_const RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
-Warnings:
-Warning 1105 plugin_dir was not specified
select IS_const(3);
IS_const(3)
const
@@ -210,8 +244,6 @@ name ret dl type
select is_const(3);
ERROR 42000: FUNCTION test.is_const does not exist
CREATE FUNCTION is_const RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
-Warnings:
-Warning 1105 plugin_dir was not specified
select
is_const(3) as const,
is_const(3.14) as const,
@@ -360,4 +392,20 @@ a
4
DROP FUNCTION sequence;
DROP TABLE t1,t2;
+#
+# Bug#46259: 5.0.83 -> 5.1.36, query doesn't work
+#
+CREATE TABLE t1 ( a INT );
+INSERT INTO t1 VALUES (1), (2), (3);
+SELECT IF( a = 1, a, a ) AS `b` FROM t1 ORDER BY field( `b` + 1, 1 );
+b
+1
+2
+3
+SELECT IF( a = 1, a, a ) AS `b` FROM t1 ORDER BY field( `b`, 1 );
+b
+2
+3
+1
+DROP TABLE t1;
End of 5.0 tests.
diff --git a/mysql-test/r/union.result b/mysql-test/r/union.result
index e806ed49c34..44a3812725a 100644
--- a/mysql-test/r/union.result
+++ b/mysql-test/r/union.result
@@ -83,10 +83,10 @@ a b
(select a,b from t1 limit 2) union all (select a,b from t2 order by a limit 1) order by t1.b;
ERROR 42000: Table 't1' from one of the SELECTs cannot be used in global ORDER clause
explain extended (select a,b from t1 limit 2) union all (select a,b from t2 order by a limit 1) order by b desc;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 4
-2 UNION t2 ALL NULL NULL NULL NULL 4 Using filesort
-NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 4 100.00
+2 UNION t2 ALL NULL NULL NULL NULL 4 100.00 Using filesort
+NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL NULL Using filesort
Warnings:
Note 1003 (select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` limit 2) union all (select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t2` order by `test`.`t2`.`a` limit 1) order by `b` desc
(select sql_calc_found_rows a,b from t1 limit 2) union all (select a,b from t2 order by a) limit 2;
@@ -153,6 +153,48 @@ ERROR 42S22: Unknown column 'a' in 'field list'
1 3
1 3
2 1
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (1);
+SELECT a INTO @v FROM (
+SELECT a FROM t1
+UNION
+SELECT a FROM t1
+) alias;
+SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM (
+SELECT a FROM t1
+UNION
+SELECT a FROM t1 WHERE 0
+) alias;
+SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM (
+SELECT a FROM t1
+UNION
+SELECT a FROM t1 WHERE 0
+) alias;
+SELECT a FROM (
+SELECT a FROM t1
+UNION
+SELECT a INTO @v FROM t1
+) alias;
+SELECT a FROM (
+SELECT a FROM t1
+UNION
+SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1
+) alias;
+SELECT a FROM (
+SELECT a FROM t1
+UNION
+SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1
+) alias;
+SELECT a FROM t1 UNION SELECT a INTO @v FROM t1;
+SELECT a FROM t1 UNION SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1;
+SELECT a FROM t1 UNION SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1;
+SELECT a INTO @v FROM t1 UNION SELECT a FROM t1;
+ERROR HY000: Incorrect usage of UNION and INTO
+SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1 UNION SELECT a FROM t1;
+ERROR HY000: Incorrect usage of UNION and INTO
+SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1 UNION SELECT a FROM t1;
+ERROR HY000: Incorrect usage of UNION and INTO
+DROP TABLE t1;
CREATE TABLE t1 (
`pseudo` char(35) NOT NULL default '',
`pseudo1` char(35) NOT NULL default '',
@@ -475,10 +517,10 @@ create table t2 (a int not null primary key auto_increment, b int);
insert into t1 (b) values (1),(2),(2),(3);
insert into t2 (b) values (10),(11),(12),(13);
explain extended (select * from t1 where a=1) union (select * from t2 where a=1);
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 const PRIMARY PRIMARY 4 const 1
-2 UNION t2 const PRIMARY PRIMARY 4 const 1
-NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 const PRIMARY PRIMARY 4 const 1 100.00
+2 UNION t2 const PRIMARY PRIMARY 4 const 1 100.00
+NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL NULL
Warnings:
Note 1003 (select '1' AS `a`,'1' AS `b` from `test`.`t1` where ('1' = 1)) union (select '1' AS `a`,'10' AS `b` from `test`.`t2` where ('1' = 1))
(select * from t1 where a=5) union (select * from t2 where a=1);
@@ -500,7 +542,7 @@ explain (select * from t1 where a=1 and b=10) union (select straight_join t1.a,t
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
2 UNION t1 index PRIMARY PRIMARY 4 NULL 4 Using index
-2 UNION t2 index PRIMARY PRIMARY 4 NULL 3 Using where; Using index
+2 UNION t2 index PRIMARY PRIMARY 4 NULL 4 Using where; Using index; Using join buffer
NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
explain (select * from t1 where a=1) union (select * from t1 where b=1);
id select_type table type possible_keys key key_len ref rows Extra
@@ -543,7 +585,7 @@ aa
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(2) NOT NULL default ''
+ `a` varchar(2) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT 12 as a UNION select "aa" as a;
@@ -554,7 +596,7 @@ aa
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varbinary(2) NOT NULL default ''
+ `a` varbinary(2) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT 12 as a UNION select 12.2 as a;
@@ -565,7 +607,7 @@ a
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` decimal(3,1) NOT NULL default '0.0'
+ `a` decimal(3,1) NOT NULL DEFAULT '0.0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t2 (it1 tinyint, it2 tinyint not null, i int not null, ib bigint, f float, d double, y year, da date, dt datetime, sc char(10), sv varchar(10), b blob, tx text);
@@ -578,7 +620,7 @@ NULL
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `it2` tinyint(4) default NULL
+ `it2` tinyint(4) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT it2 from t2 UNION select i from t2;
@@ -589,7 +631,7 @@ it2
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `it2` int(11) NOT NULL default '0'
+ `it2` int(11) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT i from t2 UNION select f from t2;
@@ -600,7 +642,7 @@ i
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `i` double default NULL
+ `i` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT f from t2 UNION select d from t2;
@@ -611,7 +653,7 @@ f
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f` double default NULL
+ `f` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT ib from t2 UNION select f from t2;
@@ -622,7 +664,7 @@ ib
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `ib` double default NULL
+ `ib` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT ib from t2 UNION select d from t2;
@@ -633,7 +675,7 @@ ib
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `ib` double default NULL
+ `ib` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT f from t2 UNION select y from t2;
@@ -644,7 +686,7 @@ f
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f` float default NULL
+ `f` float DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT f from t2 UNION select da from t2;
@@ -655,7 +697,7 @@ f
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f` varbinary(12) default NULL
+ `f` varbinary(12) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT y from t2 UNION select da from t2;
@@ -666,7 +708,7 @@ y
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `y` varbinary(10) default NULL
+ `y` varbinary(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT y from t2 UNION select dt from t2;
@@ -677,7 +719,7 @@ y
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `y` varbinary(19) default NULL
+ `y` varbinary(19) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT da from t2 UNION select dt from t2;
@@ -688,7 +730,7 @@ da
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `da` datetime default NULL
+ `da` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT dt from t2 UNION select trim(sc) from t2;
@@ -699,7 +741,7 @@ testc
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `dt` varbinary(19) default NULL
+ `dt` varbinary(19) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT dt from t2 UNION select sv from t2;
@@ -710,7 +752,7 @@ testv
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `dt` varbinary(19) default NULL
+ `dt` varbinary(19) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT sc from t2 UNION select sv from t2;
@@ -721,7 +763,7 @@ testv
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `sc` varchar(10) default NULL
+ `sc` varchar(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT dt from t2 UNION select b from t2;
@@ -788,7 +830,7 @@ select * from t1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `1` bigint(20) NOT NULL default '0'
+ `1` bigint(20) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 select _latin1"test" union select _latin2"testt" ;
@@ -797,7 +839,7 @@ create table t1 select _latin2"test" union select _latin2"testt" ;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `test` varchar(5) character set latin2 NOT NULL default ''
+ `test` varchar(5) CHARACTER SET latin2 NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 (s char(200));
@@ -1041,7 +1083,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `test` varchar(4) NOT NULL default ''
+ `test` varchar(4) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select count(*) from t1;
count(*)
@@ -1054,7 +1096,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `_latin1'test' collate latin1_bin` varchar(4) character set latin1 collate latin1_bin NOT NULL default ''
+ `_latin1'test' collate latin1_bin` varchar(4) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select count(*) from t1;
count(*)
@@ -1067,7 +1109,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `test` varchar(4) character set latin1 collate latin1_bin NOT NULL default ''
+ `test` varchar(4) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select count(*) from t1;
count(*)
@@ -1080,7 +1122,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `test` varchar(4) character set latin1 collate latin1_bin NOT NULL default ''
+ `test` varchar(4) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select count(*) from t1;
count(*)
@@ -1099,7 +1141,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a collate latin1_german1_ci` varchar(1) character set latin1 collate latin1_german1_ci default NULL
+ `a collate latin1_german1_ci` varchar(1) CHARACTER SET latin1 COLLATE latin1_german1_ci DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 as
@@ -1108,7 +1150,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(1) character set latin1 collate latin1_german1_ci default NULL
+ `a` varchar(1) CHARACTER SET latin1 COLLATE latin1_german1_ci DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 as
@@ -1118,7 +1160,7 @@ create table t1 as
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varchar(1) character set latin1 collate latin1_german1_ci default NULL
+ `a` varchar(1) CHARACTER SET latin1 COLLATE latin1_german1_ci DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
drop table t2;
@@ -1203,9 +1245,9 @@ c ENUM("one", "two")
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` enum('','','') character set utf8 NOT NULL default '',
- `b` enum('one','two') character set utf8 default NULL,
- `c` enum('one','two') default NULL
+ `a` enum('','','') CHARACTER SET utf8 NOT NULL DEFAULT '',
+ `b` enum('one','two') CHARACTER SET utf8 DEFAULT NULL,
+ `c` enum('one','two') DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
insert into t1 values ('', 'one', 'one'), ('', 'two', 'one'), ('', NULL, NULL);
create table t2 select NULL union select a from t1;
@@ -1261,7 +1303,7 @@ create table t2 select * from t1 union select 'abcdefghijkl';
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` varchar(12) default NULL
+ `a` varchar(12) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select row_format from information_schema.TABLES where table_schema="test" and table_name="t2";
row_format
@@ -1270,7 +1312,7 @@ alter table t2 ROW_FORMAT=fixed;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `a` varchar(12) default NULL
+ `a` varchar(12) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
drop table t1,t2;
CREATE TABLE t1 (a mediumtext);
@@ -1284,9 +1326,65 @@ create table t3 SELECT left(a,100000000) FROM t1 UNION SELECT b FROM t2;
show create table t3;
Table Create Table
t3 CREATE TABLE `t3` (
+ `left(a,100000000)` mediumtext
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop tables t1,t2,t3;
+CREATE TABLE t1 (a longtext);
+CREATE TABLE t2 (b varchar(20));
+INSERT INTO t1 VALUES ('a'),('b');
+SELECT left(a,100000000) FROM t1 UNION SELECT b FROM t2;
+left(a,100000000)
+a
+b
+create table t3 SELECT left(a,100000000) FROM t1 UNION SELECT b FROM t2;
+show create table t3;
+Table Create Table
+t3 CREATE TABLE `t3` (
`left(a,100000000)` longtext
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop tables t1,t2,t3;
+SELECT @tmp_max:= @@global.max_allowed_packet;
+@tmp_max:= @@global.max_allowed_packet
+1048576
+SET @@global.max_allowed_packet=25000000;
+CREATE TABLE t1 (a mediumtext);
+CREATE TABLE t2 (b varchar(20));
+INSERT INTO t1 VALUES ('a');
+CREATE TABLE t3 SELECT REPEAT(a,20000000) AS a FROM t1 UNION SELECT b FROM t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TABLE `t3` (
+ `a` longtext
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLES t1,t3;
+CREATE TABLE t1 (a tinytext);
+INSERT INTO t1 VALUES ('a');
+CREATE TABLE t3 SELECT REPEAT(a,2) AS a FROM t1 UNION SELECT b FROM t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TABLE `t3` (
+ `a` varchar(510) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLES t1,t3;
+CREATE TABLE t1 (a mediumtext);
+INSERT INTO t1 VALUES ('a');
+CREATE TABLE t3 SELECT REPEAT(a,2) AS a FROM t1 UNION SELECT b FROM t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TABLE `t3` (
+ `a` longtext
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLES t1,t3;
+CREATE TABLE t1 (a tinyblob);
+INSERT INTO t1 VALUES ('a');
+CREATE TABLE t3 SELECT REPEAT(a,2) AS a FROM t1 UNION SELECT b FROM t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TABLE `t3` (
+ `a` varbinary(510) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLES t1,t2,t3;
+SET @@global.max_allowed_packet:= @tmp_max;
create table t1 ( id int not null auto_increment, primary key (id), col1 int);
insert into t1 (col1) values (2),(3),(4),(5),(6);
select 99 union all select id from t1 order by 1;
@@ -1311,14 +1409,14 @@ create table t2 as select *, f6 as f8 from t1 union select *, f7 from t1;
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
- `f1` char(1) default NULL,
- `f2` char(5) default NULL,
- `f3` binary(1) default NULL,
- `f4` binary(5) default NULL,
- `f5` timestamp NOT NULL default '0000-00-00 00:00:00',
- `f6` varchar(1) character set utf8 default NULL,
+ `f1` char(1) DEFAULT NULL,
+ `f2` char(5) DEFAULT NULL,
+ `f3` binary(1) DEFAULT NULL,
+ `f4` binary(5) DEFAULT NULL,
+ `f5` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `f6` varchar(1) CHARACTER SET utf8 DEFAULT NULL,
`f7` text,
- `f8` mediumtext character set utf8
+ `f8` mediumtext CHARACTER SET utf8
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1, t2;
(select avg(1)) union (select avg(1)) union (select avg(1)) union
@@ -1441,48 +1539,6 @@ SELECT 1,1;
ERROR HY000: Incorrect usage of UNION and ORDER BY
DROP TABLE t1,t2;
CREATE TABLE t1 (a INT);
-INSERT INTO t1 VALUES (1);
-SELECT a INTO @v FROM (
-SELECT a FROM t1
-UNION
-SELECT a FROM t1
-) alias;
-SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM (
-SELECT a FROM t1
-UNION
-SELECT a FROM t1 WHERE 0
-) alias;
-SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM (
-SELECT a FROM t1
-UNION
-SELECT a FROM t1 WHERE 0
-) alias;
-SELECT a FROM (
-SELECT a FROM t1
-UNION
-SELECT a INTO @v FROM t1
-) alias;
-SELECT a FROM (
-SELECT a FROM t1
-UNION
-SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1
-) alias;
-SELECT a FROM (
-SELECT a FROM t1
-UNION
-SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1
-) alias;
-SELECT a FROM t1 UNION SELECT a INTO @v FROM t1;
-SELECT a FROM t1 UNION SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1;
-SELECT a FROM t1 UNION SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1;
-SELECT a INTO @v FROM t1 UNION SELECT a FROM t1;
-ERROR HY000: Incorrect usage of UNION and INTO
-SELECT a INTO OUTFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1 UNION SELECT a FROM t1;
-ERROR HY000: Incorrect usage of UNION and INTO
-SELECT a INTO DUMPFILE '<MYSQLTEST_VARDIR>/tmp/union.out.file' FROM t1 UNION SELECT a FROM t1;
-ERROR HY000: Incorrect usage of UNION and INTO
-DROP TABLE t1;
-CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1), (2), (3);
CREATE TABLE t2 SELECT * FROM (SELECT NULL) a UNION SELECT a FROM t1;
DESC t2;
@@ -1524,10 +1580,10 @@ SELECT a FROM t1
UNION
SELECT a FROM t1
ORDER BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY t1 system NULL NULL NULL NULL 0 const row not found
-2 UNION t1 system NULL NULL NULL NULL 0 const row not found
-NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 system NULL NULL NULL NULL 0 0.00 const row not found
+2 UNION t1 system NULL NULL NULL NULL 0 0.00 const row not found
+NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL NULL Using filesort
Warnings:
Note 1003 select '0' AS `a` from `test`.`t1` union select '0' AS `a` from `test`.`t1` order by `a`
DROP TABLE t1;
diff --git a/mysql-test/r/unsafe_binlog_innodb.result b/mysql-test/r/unsafe_binlog_innodb.result
new file mode 100644
index 00000000000..b2cf16ad58f
--- /dev/null
+++ b/mysql-test/r/unsafe_binlog_innodb.result
@@ -0,0 +1,123 @@
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
+create table t1 (id int not null, f_id int not null, f int not null,
+primary key(f_id, id)) engine = InnoDB;
+create table t2 (id int not null,s_id int not null,s varchar(200),
+primary key(id)) engine = InnoDB;
+INSERT INTO t1 VALUES (8, 1, 3);
+INSERT INTO t1 VALUES (1, 2, 1);
+INSERT INTO t2 VALUES (1, 0, '');
+INSERT INTO t2 VALUES (8, 1, '');
+commit;
+DELETE ml.* FROM t1 AS ml LEFT JOIN t2 AS mm ON (mm.id=ml.id)
+WHERE mm.id IS NULL;
+select ml.* from t1 as ml left join t2 as mm on (mm.id=ml.id)
+where mm.id is null lock in share mode;
+id f_id f
+drop table t1,t2;
+create table t1(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t1 values(1,1),(2,2),(3,1),(4,2),(5,1),(6,2),(7,3);
+commit;
+set autocommit = 0;
+select * from t1 lock in share mode;
+a b
+1 1
+2 2
+3 1
+4 2
+5 1
+6 2
+7 3
+update t1 set b = 5 where b = 1;
+set autocommit = 0;
+select * from t1 where a = 2 and b = 2 for update;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+commit;
+drop table t1;
+create table t1(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t1 values(1,1),(2,2),(3,1),(4,2),(5,1),(6,2),(7,3);
+commit;
+set autocommit = 0;
+update t1 set b = 5 where b = 1;
+set autocommit = 0;
+select * from t1 where a = 7 and b = 3 for update;
+a b
+7 3
+commit;
+commit;
+drop table t1;
+create table t1(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t1 values (1,2),(5,3),(4,2);
+create table t2(d int not null, e int, primary key(d)) engine = InnoDB;
+insert into t2 values (8,6),(12,1),(3,1);
+commit;
+set autocommit = 0;
+select * from t2 for update;
+d e
+3 1
+8 6
+12 1
+set autocommit = 0;
+insert into t1 select * from t2;
+update t1 set b = (select e from t2 where a = d);
+create table t3(d int not null, e int, primary key(d)) engine = InnoDB
+select * from t2;
+commit;
+commit;
+drop table t1, t2, t3;
+SET SESSION STORAGE_ENGINE = InnoDB;
+SET SESSION STORAGE_ENGINE = InnoDB;
+SET SESSION STORAGE_ENGINE = InnoDB;
+create table t1(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t1 values (1,2),(5,3),(4,2);
+create table t2(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t2 values (8,6),(12,1),(3,1);
+create table t3(d int not null, b int, primary key(d)) engine = InnoDB;
+insert into t3 values (8,6),(12,1),(3,1);
+create table t5(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t5 values (1,2),(5,3),(4,2);
+create table t6(d int not null, e int, primary key(d)) engine = InnoDB;
+insert into t6 values (8,6),(12,1),(3,1);
+create table t8(a int not null, b int, primary key(a)) engine = InnoDB;
+insert into t8 values (1,2),(5,3),(4,2);
+create table t9(d int not null, e int, primary key(d)) engine = InnoDB;
+insert into t9 values (8,6),(12,1),(3,1);
+commit;
+set autocommit = 0;
+select * from t2 for update;
+a b
+3 1
+8 6
+12 1
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+insert into t1 select * from t2;
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+update t3 set b = (select b from t2 where a = d);
+set autocommit = 0;
+SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+create table t4(a int not null, b int, primary key(a)) select * from t2;
+set autocommit = 0;
+insert into t5 (select * from t2 lock in share mode);
+set autocommit = 0;
+update t6 set e = (select b from t2 where a = d lock in share mode);
+set autocommit = 0;
+create table t7(a int not null, b int, primary key(a)) select * from t2 lock in share mode;
+set autocommit = 0;
+insert into t8 (select * from t2 for update);
+set autocommit = 0;
+update t9 set e = (select b from t2 where a = d for update);
+set autocommit = 0;
+create table t10(a int not null, b int, primary key(a)) select * from t2 for update;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+commit;
+drop table t1, t2, t3, t5, t6, t8, t9;
diff --git a/mysql-test/r/update.result b/mysql-test/r/update.result
index dc7c7642a9b..d859579e835 100644
--- a/mysql-test/r/update.result
+++ b/mysql-test/r/update.result
@@ -418,7 +418,7 @@ Handler_read_key 2
Handler_read_next 0
Handler_read_prev 0
Handler_read_rnd 0
-Handler_read_rnd_next 7
+Handler_read_rnd_next 0
UPDATE t1 SET user_id=null WHERE request_id=9999999999999;
show status like '%Handler_read%';
Variable_name Value
@@ -427,7 +427,7 @@ Handler_read_key 3
Handler_read_next 0
Handler_read_prev 0
Handler_read_rnd 0
-Handler_read_rnd_next 14
+Handler_read_rnd_next 0
UPDATE t1 SET user_id=null WHERE request_id=999999999999999999999999999999;
show status like '%Handler_read%';
Variable_name Value
@@ -436,7 +436,7 @@ Handler_read_key 3
Handler_read_next 0
Handler_read_prev 0
Handler_read_rnd 0
-Handler_read_rnd_next 21
+Handler_read_rnd_next 0
DROP TABLE t1;
CREATE TABLE t1 (
a INT(11),
@@ -491,4 +491,26 @@ update t1 join t2 on (t1.a=t2.a) set t1.id=t2.id;
affected rows: 127
info: Rows matched: 128 Changed: 127 Warnings: 0
drop table t1,t2;
+DROP TABLE IF EXISTS t1;
+DROP FUNCTION IF EXISTS f1;
+CREATE FUNCTION f1() RETURNS INT RETURN f1();
+CREATE TABLE t1 (i INT);
+INSERT INTO t1 VALUES (1);
+UPDATE t1 SET i = 3 WHERE f1();
+ERROR HY000: Recursive stored functions and triggers are not allowed.
+UPDATE t1 SET i = f1();
+ERROR HY000: Recursive stored functions and triggers are not allowed.
+DROP TABLE t1;
+DROP FUNCTION f1;
End of 5.0 tests
+#
+# Bug #47919 assert in open_table during ALTER temporary table
+#
+CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT, PRIMARY KEY (f1));
+CREATE TEMPORARY TABLE t2 LIKE t1;
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (1);
+ALTER TABLE t2 COMMENT = 'ABC';
+UPDATE t2, t1 SET t2.f1 = 2, t1.f1 = 9;
+ALTER TABLE t2 COMMENT = 'DEF';
+DROP TABLE t1, t2;
diff --git a/mysql-test/r/upgrade.result b/mysql-test/r/upgrade.result
new file mode 100644
index 00000000000..034242079b1
--- /dev/null
+++ b/mysql-test/r/upgrade.result
@@ -0,0 +1,114 @@
+drop database if exists `mysqltest1`;
+drop database if exists `mysqltest-1`;
+drop database if exists `#mysql50#mysqltest-1`;
+create database `mysqltest1`;
+create database `#mysql50#mysqltest-1`;
+create table `mysqltest1`.`t1` (a int);
+create table `mysqltest1`.`#mysql50#t-1` (a int);
+create table `#mysql50#mysqltest-1`.`t1` (a int);
+create table `#mysql50#mysqltest-1`.`#mysql50#t-1` (a int);
+show create database `mysqltest1`;
+Database Create Database
+mysqltest1 CREATE DATABASE `mysqltest1` /*!40100 DEFAULT CHARACTER SET latin1 */
+show create database `mysqltest-1`;
+ERROR 42000: Unknown database 'mysqltest-1'
+show create database `#mysql50#mysqltest-1`;
+Database Create Database
+#mysql50#mysqltest-1 CREATE DATABASE `#mysql50#mysqltest-1` /*!40100 DEFAULT CHARACTER SET latin1 */
+show tables in `mysqltest1`;
+Tables_in_mysqltest1
+#mysql50#t-1
+t1
+show tables in `#mysql50#mysqltest-1`;
+Tables_in_#mysql50#mysqltest-1
+#mysql50#t-1
+t1
+show create database `mysqltest1`;
+Database Create Database
+mysqltest1 CREATE DATABASE `mysqltest1` /*!40100 DEFAULT CHARACTER SET latin1 */
+show create database `mysqltest-1`;
+Database Create Database
+mysqltest-1 CREATE DATABASE `mysqltest-1` /*!40100 DEFAULT CHARACTER SET latin1 */
+show create database `#mysql50#mysqltest-1`;
+ERROR 42000: Unknown database '#mysql50#mysqltest-1'
+show tables in `mysqltest1`;
+Tables_in_mysqltest1
+t1
+t-1
+show tables in `mysqltest-1`;
+Tables_in_mysqltest-1
+t1
+t-1
+drop database `mysqltest1`;
+drop database `mysqltest-1`;
+drop table if exists `txu@0023p@0023p1`;
+drop table if exists `txu#p#p1`;
+create table `txu#p#p1` (s1 int);
+insert into `txu#p#p1` values (1);
+select * from `txu@0023p@0023p1`;
+ERROR 42S02: Table 'test.txu@0023p@0023p1' doesn't exist
+create table `txu@0023p@0023p1` (s1 int);
+insert into `txu@0023p@0023p1` values (2);
+select * from `txu@0023p@0023p1`;
+s1
+2
+select * from `txu#p#p1`;
+s1
+1
+drop table `txu@0023p@0023p1`;
+drop table `txu#p#p1`;
+#
+# Bug#37631 Incorrect key file for table after upgrading from 5.0 to 5.1
+#
+# copy table created using mysql4.0 into the data dir
+# check the table created using mysql 4.0
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check error Table upgrade required. Please do "REPAIR TABLE `t1`" or dump/reload to fix it!
+# query the table created using mysql 4.0
+SELECT * FROM t1;
+c1 c2 c3
+DROP TABLE t1;
+truncate t1;
+drop table t1;
+drop database if exists `tabc`;
+drop database if exists `a-b-c`;
+create database `tabc` default character set latin2;
+create table tabc.t1 (a int);
+FLUSH TABLES;
+show databases like '%a-b-c%';
+Database (%a-b-c%)
+#mysql50#a-b-c
+ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME;
+show databases like '%a-b-c%';
+Database (%a-b-c%)
+a-b-c
+show create database `a-b-c`;
+Database Create Database
+a-b-c CREATE DATABASE `a-b-c` /*!40100 DEFAULT CHARACTER SET latin2 */
+show tables in `a-b-c`;
+Tables_in_a-b-c
+t1
+show create table `a-b-c`.`t1`;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin2
+drop database `a-b-c`;
+drop database `tabc`;
+use `#mysql50#a-b-c`;
+create table t1(f1 char(10));
+show databases like '%a-b-c%';
+Database (%a-b-c%)
+#mysql50#a-b-c
+ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME;
+show databases like '%a-b-c%';
+Database (%a-b-c%)
+a-b-c
+show create view `a-b-c`.v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `a`.`f1` AS `f1` from (`a-b-c`.`t1` `a` join `information_schema`.`tables` `b`) where (convert(`a`.`f1` using utf8) = `b`.`TABLE_NAME`) utf8 utf8_general_ci
+select * from `a-b-c`.v1;
+f1
+drop database `a-b-c`;
+use test;
diff --git a/mysql-test/r/user_var-binlog.result b/mysql-test/r/user_var-binlog.result
index b8df68b8f28..05efea79fe7 100644
--- a/mysql-test/r/user_var-binlog.result
+++ b/mysql-test/r/user_var-binlog.result
@@ -6,13 +6,14 @@ INSERT INTO t1 VALUES(@`a b`);
set @var1= "';aaa";
SET @var2=char(ascii('a'));
insert into t1 values (@var1),(@var2);
-show binlog events from 98;
+show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 98 User var 1 139 @`a b`=_latin1 0x68656C6C6F COLLATE latin1_swedish_ci
-master-bin.000001 139 Query 1 231 use `test`; INSERT INTO t1 VALUES(@`a b`)
-master-bin.000001 231 User var 1 273 @`var1`=_latin1 0x273B616161 COLLATE latin1_swedish_ci
-master-bin.000001 273 User var 1 311 @`var2`=_binary 0x61 COLLATE binary
-master-bin.000001 311 Query 1 411 use `test`; insert into t1 values (@var1),(@var2)
+master-bin.000001 # User var # # @`a b`=_latin1 0x68656C6C6F COLLATE latin1_swedish_ci
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES(@`a b`)
+master-bin.000001 # User var # # @`var1`=_latin1 0x273B616161 COLLATE latin1_swedish_ci
+master-bin.000001 # User var # # @`var2`=_binary 0x61 COLLATE binary
+master-bin.000001 # Query # # use `test`; insert into t1 values (@var1),(@var2)
+flush logs;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
@@ -20,10 +21,14 @@ ROLLBACK/*!*/;
SET @`a b`:=_latin1 0x68656C6C6F COLLATE `latin1_swedish_ci`/*!*/;
use test/*!*/;
SET TIMESTAMP=10000/*!*/;
-SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
+SET @@session.pseudo_thread_id=999999999/*!*/;
+SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=0/*!*/;
+SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
+SET @@session.lc_time_names=0/*!*/;
+SET @@session.collation_database=DEFAULT/*!*/;
INSERT INTO t1 VALUES(@`a b`)
/*!*/;
SET @`var1`:=_latin1 0x273B616161 COLLATE `latin1_swedish_ci`/*!*/;
diff --git a/mysql-test/r/user_var.result b/mysql-test/r/user_var.result
index bfa95d8f92b..28da1dae931 100644
--- a/mysql-test/r/user_var.result
+++ b/mysql-test/r/user_var.result
@@ -91,7 +91,7 @@ NULL test test
set @g=1;
select @g,(@g:=c),@g from t1;
@g (@g:=c) @g
-1 test test
+1 test 0
select @c, @d, @e, @f;
@c @d @e @f
1 1 2 test
@@ -121,8 +121,8 @@ select @a:=0;
select @a+0, @a:=@a+0+count(*), count(*), @a+0 from t1 group by i;
@a+0 @a:=@a+0+count(*) count(*) @a+0
0 1 1 0
-1 3 2 0
-3 6 3 0
+0 2 2 0
+0 3 3 0
set @a=0;
select @a,@a:="hello",@a,@a:=3,@a,@a:="hello again" from t1 group by i;
@a @a:="hello" @a @a:=3 @a @a:="hello again"
@@ -229,7 +229,7 @@ create table t1 select @first_var;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `@first_var` bigint(20) default NULL
+ `@first_var` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
set @first_var= NULL;
@@ -237,7 +237,7 @@ create table t1 select @first_var;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `@first_var` bigint(20) default NULL
+ `@first_var` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
set @first_var= concat(NULL);
@@ -353,6 +353,52 @@ select @a:=f4, count(f4) from t1 group by 1 desc;
2.6 1
1.6 4
drop table t1;
+create table t1 (f1 int);
+insert into t1 values (2), (1);
+select @i := f1 as j from t1 order by 1;
+j
+1
+2
+drop table t1;
+create table t1(a int);
+insert into t1 values(5),(4),(4),(3),(2),(2),(2),(1);
+set @rownum := 0;
+set @rank := 0;
+set @prev_score := NULL;
+select @rownum := @rownum + 1 as row,
+@rank := IF(@prev_score!=a, @rownum, @rank) as rank,
+@prev_score := a as score
+from t1 order by score desc;
+drop table t1;
+create table t1(b bigint);
+insert into t1 (b) values (10), (30), (10);
+set @var := 0;
+select if(b=@var, 999, b) , @var := b from t1 order by b;
+if(b=@var, 999, b) @var := b
+10 10
+999 10
+30 30
+drop table t1;
+create temporary table t1 (id int);
+insert into t1 values (2), (3), (3), (4);
+set @lastid=-1;
+select @lastid != id, @lastid, @lastid := id from t1;
+@lastid != id @lastid @lastid := id
+1 -1 2
+1 2 3
+0 3 3
+1 3 4
+drop table t1;
+create temporary table t1 (id bigint);
+insert into t1 values (2), (3), (3), (4);
+set @lastid=-1;
+select @lastid != id, @lastid, @lastid := id from t1;
+@lastid != id @lastid @lastid := id
+1 -1 2
+1 2 3
+0 3 3
+1 3 4
+drop table t1;
CREATE TABLE t1(a INT, b INT);
INSERT INTO t1 VALUES (0, 0), (2, 1), (2, 3), (1, 1), (30, 20);
SELECT a, b INTO @a, @b FROM t1 WHERE a=2 AND b=3 GROUP BY a, b;
@@ -364,3 +410,9 @@ a b
2 3
DROP TABLE t1;
End of 5.0 tests
+CREATE TABLE t1 (i INT);
+CREATE TRIGGER t_after_insert AFTER INSERT ON t1 FOR EACH ROW SET @bug42188 = 10;
+INSERT INTO t1 VALUES (1);
+INSERT INTO t1 VALUES (1);
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/varbinary.result b/mysql-test/r/varbinary.result
index 01af6979ca3..b623ea1d86e 100644
--- a/mysql-test/r/varbinary.result
+++ b/mysql-test/r/varbinary.result
@@ -12,8 +12,8 @@ create table t1 (ID int(8) unsigned zerofill not null auto_increment,UNIQ bigint
insert into t1 set UNIQ=0x38afba1d73e6a18a;
insert into t1 set UNIQ=123;
explain extended select * from t1 where UNIQ=0x38afba1d73e6a18a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 const UNIQ UNIQ 8 const 1
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 const UNIQ UNIQ 8 const 1 100.00
Warnings:
Note 1003 select '00000001' AS `ID`,'004084688022709641610' AS `UNIQ` from `test`.`t1` where 1
drop table t1;
@@ -29,8 +29,8 @@ drop table t1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varbinary(255) default NULL,
- `b` varchar(255) default NULL
+ `a` varbinary(255) DEFAULT NULL,
+ `b` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select length(a), length(b) from t1;
length(a) length(b)
@@ -38,15 +38,15 @@ length(a) length(b)
255 3
CHECK TABLE t1 FOR UPGRADE;
Table Op Msg_type Msg_text
-test.t1 check error Table upgrade required. Please do "REPAIR TABLE `t1`" to fix it!
+test.t1 check error Table upgrade required. Please do "REPAIR TABLE `t1`" or dump/reload to fix it!
REPAIR TABLE t1;
Table Op Msg_type Msg_text
test.t1 repair status OK
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varbinary(255) default NULL,
- `b` varchar(255) default NULL
+ `a` varbinary(255) DEFAULT NULL,
+ `b` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select length(a), length(b) from t1;
length(a) length(b)
@@ -79,6 +79,22 @@ select length(a) from t1;
length(a)
6
drop table t1;
+drop table if exists table_28127_a;
+drop table if exists table_28127_b;
+create table table_28127_a(0b02 int);
+show create table table_28127_a;
+Table Create Table
+table_28127_a CREATE TABLE `table_28127_a` (
+ `0b02` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create table table_28127_b(0b2 int);
+show create table table_28127_b;
+Table Create Table
+table_28127_b CREATE TABLE `table_28127_b` (
+ `0b2` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table table_28127_a;
+drop table table_28127_b;
select 0b01000001;
0b01000001
A
diff --git a/mysql-test/r/information_schema_community.result b/mysql-test/r/variables+c.result
index e21039d1bb9..7a2976d1267 100644
--- a/mysql-test/r/information_schema_community.result
+++ b/mysql-test/r/variables+c.result
@@ -5,4 +5,3 @@ flush status;
show global status like "Uptime_%";
Variable_name Value
Uptime_since_flush_status #
-End of 5.0 tests.
diff --git a/mysql-test/r/variables-notembedded.result b/mysql-test/r/variables-notembedded.result
new file mode 100644
index 00000000000..8c6d54757ed
--- /dev/null
+++ b/mysql-test/r/variables-notembedded.result
@@ -0,0 +1,110 @@
+---- Init ----
+set @my_slave_net_timeout =@@global.slave_net_timeout;
+---- Test ----
+set global slave_net_timeout=100;
+set global sql_slave_skip_counter=100;
+show variables like 'slave_compressed_protocol';
+Variable_name Value
+slave_compressed_protocol OFF
+show variables like 'slave_load_tmpdir';
+Variable_name Value
+slave_load_tmpdir SLAVE_LOAD_TMPDIR
+show variables like 'slave_skip_errors';
+Variable_name Value
+slave_skip_errors 0,3,100,137,643,1752
+---- Clean Up ----
+set global slave_net_timeout=default;
+set global sql_slave_skip_counter= 0;
+set @@global.slave_net_timeout= @my_slave_net_timeout;
+
+#
+SHOW VARIABLES like 'log_slave_updates';
+Variable_name Value
+log_slave_updates OFF
+SELECT @@session.log_slave_updates;
+ERROR HY000: Variable 'log_slave_updates' is a GLOBAL variable
+SELECT @@global.log_slave_updates;
+@@global.log_slave_updates
+0
+SET @@session.log_slave_updates= true;
+ERROR HY000: Variable 'log_slave_updates' is a read only variable
+SET @@global.log_slave_updates= true;
+ERROR HY000: Variable 'log_slave_updates' is a read only variable
+#
+SHOW VARIABLES like 'relay_log';
+Variable_name Value
+relay_log
+SELECT @@session.relay_log;
+ERROR HY000: Variable 'relay_log' is a GLOBAL variable
+SELECT @@global.relay_log;
+@@global.relay_log
+NULL
+SET @@session.relay_log= 'x';
+ERROR HY000: Variable 'relay_log' is a read only variable
+SET @@global.relay_log= 'x';
+ERROR HY000: Variable 'relay_log' is a read only variable
+#
+SHOW VARIABLES like 'relay_log_index';
+Variable_name Value
+relay_log_index
+SELECT @@session.relay_log_index;
+ERROR HY000: Variable 'relay_log_index' is a GLOBAL variable
+SELECT @@global.relay_log_index;
+@@global.relay_log_index
+NULL
+SET @@session.relay_log_index= 'x';
+ERROR HY000: Variable 'relay_log_index' is a read only variable
+SET @@global.relay_log_index= 'x';
+ERROR HY000: Variable 'relay_log_index' is a read only variable
+#
+SHOW VARIABLES like 'relay_log_info_file';
+Variable_name Value
+relay_log_info_file relay-log.info
+SELECT @@session.relay_log_info_file;
+ERROR HY000: Variable 'relay_log_info_file' is a GLOBAL variable
+SELECT @@global.relay_log_info_file;
+@@global.relay_log_info_file
+relay-log.info
+SET @@session.relay_log_info_file= 'x';
+ERROR HY000: Variable 'relay_log_info_file' is a read only variable
+SET @@global.relay_log_info_file= 'x';
+ERROR HY000: Variable 'relay_log_info_file' is a read only variable
+#
+SHOW VARIABLES like 'relay_log_space_limit';
+Variable_name Value
+relay_log_space_limit 0
+SELECT @@session.relay_log_space_limit;
+ERROR HY000: Variable 'relay_log_space_limit' is a GLOBAL variable
+SELECT @@global.relay_log_space_limit;
+@@global.relay_log_space_limit
+0
+SET @@session.relay_log_space_limit= 7;
+ERROR HY000: Variable 'relay_log_space_limit' is a read only variable
+SET @@global.relay_log_space_limit= 7;
+ERROR HY000: Variable 'relay_log_space_limit' is a read only variable
+#
+SHOW VARIABLES like 'slave_load_tmpdir';
+Variable_name Value
+slave_load_tmpdir #
+SELECT @@session.slave_load_tmpdir;
+ERROR HY000: Variable 'slave_load_tmpdir' is a GLOBAL variable
+SELECT @@global.slave_load_tmpdir;
+@@global.slave_load_tmpdir
+#
+SET @@session.slave_load_tmpdir= 'x';
+ERROR HY000: Variable 'slave_load_tmpdir' is a read only variable
+SET @@global.slave_load_tmpdir= 'x';
+ERROR HY000: Variable 'slave_load_tmpdir' is a read only variable
+#
+SHOW VARIABLES like 'slave_skip_errors';
+Variable_name Value
+slave_skip_errors 0,3,100,137,643,1752
+SELECT @@session.slave_skip_errors;
+ERROR HY000: Variable 'slave_skip_errors' is a GLOBAL variable
+SELECT @@global.slave_skip_errors;
+@@global.slave_skip_errors
+0,3,100,137,643,1752
+SET @@session.slave_skip_errors= 7;
+ERROR HY000: Variable 'slave_skip_errors' is a read only variable
+SET @@global.slave_skip_errors= 7;
+ERROR HY000: Variable 'slave_skip_errors' is a read only variable
diff --git a/mysql-test/r/variables.result b/mysql-test/r/variables.result
index 496f0b69fb8..c1cd1840df8 100644
--- a/mysql-test/r/variables.result
+++ b/mysql-test/r/variables.result
@@ -9,13 +9,13 @@ set @my_key_buffer_size =@@global.key_buffer_size;
set @my_max_binlog_cache_size =@@global.max_binlog_cache_size;
set @my_max_binlog_size =@@global.max_binlog_size;
set @my_max_connect_errors =@@global.max_connect_errors;
+set @my_max_connections =@@global.max_connections;
set @my_max_delayed_threads =@@global.max_delayed_threads;
set @my_max_heap_table_size =@@global.max_heap_table_size;
set @my_max_insert_delayed_threads=@@global.max_insert_delayed_threads;
set @my_max_join_size =@@global.max_join_size;
-set @my_max_user_connections =@@global.max_user_connections;
-set @my_max_write_lock_count =@@global.max_write_lock_count;
set @my_myisam_data_pointer_size =@@global.myisam_data_pointer_size;
+set @my_myisam_max_sort_file_size =@@global.myisam_max_sort_file_size;
set @my_net_buffer_length =@@global.net_buffer_length;
set @my_net_write_timeout =@@global.net_write_timeout;
set @my_net_read_timeout =@@global.net_read_timeout;
@@ -26,6 +26,8 @@ set @my_server_id =@@global.server_id;
set @my_slow_launch_time =@@global.slow_launch_time;
set @my_storage_engine =@@global.storage_engine;
set @my_thread_cache_size =@@global.thread_cache_size;
+set @my_max_allowed_packet =@@global.max_allowed_packet;
+set @my_join_buffer_size =@@global.join_buffer_size;
set @`test`=1;
select @test, @`test`, @TEST, @`TEST`, @"teSt";
@test @`test` @TEST @`TEST` @"teSt"
@@ -72,8 +74,8 @@ select @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
@t1:=(@t2:=1)+@t3:=4 @t1 @t2 @t3
5 5 1 4
explain extended select @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select (@t1:=((@t2:=1) + (@t3:=4))) AS `@t1:=(@t2:=1)+@t3:=4`,(@t1) AS `@t1`,(@t2) AS `@t2`,(@t3) AS `@t3`
select @t5;
@@ -103,21 +105,36 @@ set max_join_size=100;
show variables like 'max_join_size';
Variable_name Value
max_join_size 100
+select * from information_schema.session_variables where variable_name like 'max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE 100
show global variables like 'max_join_size';
Variable_name Value
max_join_size 10
+select * from information_schema.global_variables where variable_name like 'max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE 10
set GLOBAL max_join_size=2000;
show global variables like 'max_join_size';
Variable_name Value
max_join_size 2000
+select * from information_schema.global_variables where variable_name like 'max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE 2000
set max_join_size=DEFAULT;
show variables like 'max_join_size';
Variable_name Value
max_join_size 2000
+select * from information_schema.session_variables where variable_name like 'max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE 2000
set GLOBAL max_join_size=DEFAULT;
show global variables like 'max_join_size';
Variable_name Value
max_join_size HA_POS_ERROR
+select * from information_schema.global_variables where variable_name like 'max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE HA_POS_ERROR
set @@max_join_size=1000, @@global.max_join_size=2000;
select @@local.max_join_size, @@global.max_join_size;
@@local.max_join_size @@global.max_join_size
@@ -132,31 +149,40 @@ select last_insert_id(345);
last_insert_id(345)
345
explain extended select last_insert_id(345);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
Note 1003 select last_insert_id(345) AS `last_insert_id(345)`
select @@IDENTITY,last_insert_id(), @@identity;
@@IDENTITY last_insert_id() @@identity
345 345 345
explain extended select @@IDENTITY,last_insert_id(), @@identity;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings:
-Note 1003 select 345 AS `@@IDENTITY`,last_insert_id() AS `last_insert_id()`,345 AS `@@identity`
+Note 1003 select @@IDENTITY AS `@@IDENTITY`,last_insert_id() AS `last_insert_id()`,@@identity AS `@@identity`
set big_tables=OFF, big_tables=ON, big_tables=0, big_tables=1, big_tables="OFF", big_tables="ON";
set global concurrent_insert=2;
show variables like 'concurrent_insert';
Variable_name Value
concurrent_insert 2
+select * from information_schema.session_variables where variable_name like 'concurrent_insert';
+VARIABLE_NAME VARIABLE_VALUE
+CONCURRENT_INSERT 2
set global concurrent_insert=1;
show variables like 'concurrent_insert';
Variable_name Value
concurrent_insert 1
+select * from information_schema.session_variables where variable_name like 'concurrent_insert';
+VARIABLE_NAME VARIABLE_VALUE
+CONCURRENT_INSERT 1
set global concurrent_insert=0;
show variables like 'concurrent_insert';
Variable_name Value
concurrent_insert 0
+select * from information_schema.session_variables where variable_name like 'concurrent_insert';
+VARIABLE_NAME VARIABLE_VALUE
+CONCURRENT_INSERT 0
set global concurrent_insert=DEFAULT;
select @@concurrent_insert;
@@concurrent_insert
@@ -165,74 +191,108 @@ set global timed_mutexes=ON;
show variables like 'timed_mutexes';
Variable_name Value
timed_mutexes ON
+select * from information_schema.session_variables where variable_name like 'timed_mutexes';
+VARIABLE_NAME VARIABLE_VALUE
+TIMED_MUTEXES ON
set global timed_mutexes=0;
show variables like 'timed_mutexes';
Variable_name Value
timed_mutexes OFF
+select * from information_schema.session_variables where variable_name like 'timed_mutexes';
+VARIABLE_NAME VARIABLE_VALUE
+TIMED_MUTEXES OFF
set storage_engine=MYISAM, storage_engine="HEAP", global storage_engine="MERGE";
show local variables like 'storage_engine';
Variable_name Value
storage_engine MEMORY
+select * from information_schema.session_variables where variable_name like 'storage_engine';
+VARIABLE_NAME VARIABLE_VALUE
+STORAGE_ENGINE MEMORY
show global variables like 'storage_engine';
Variable_name Value
storage_engine MRG_MYISAM
+select * from information_schema.global_variables where variable_name like 'storage_engine';
+VARIABLE_NAME VARIABLE_VALUE
+STORAGE_ENGINE MRG_MYISAM
set GLOBAL query_cache_size=100000;
set GLOBAL myisam_max_sort_file_size=2000000;
show global variables like 'myisam_max_sort_file_size';
Variable_name Value
myisam_max_sort_file_size 1048576
+select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
+VARIABLE_NAME VARIABLE_VALUE
+MYISAM_MAX_SORT_FILE_SIZE 1048576
set GLOBAL myisam_max_sort_file_size=default;
show global variables like 'myisam_max_sort_file_size';
Variable_name Value
myisam_max_sort_file_size FILE_SIZE
+select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
+VARIABLE_NAME VARIABLE_VALUE
+MYISAM_MAX_SORT_FILE_SIZE FILE_SIZE
set global net_retry_count=10, session net_retry_count=10;
set global net_buffer_length=1024, net_write_timeout=200, net_read_timeout=300;
-set session net_write_timeout=500, net_read_timeout=600;
show global variables like 'net_%';
Variable_name Value
net_buffer_length 1024
net_read_timeout 300
net_retry_count 10
net_write_timeout 200
+select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
+VARIABLE_NAME VARIABLE_VALUE
+NET_BUFFER_LENGTH 1024
+NET_READ_TIMEOUT 300
+NET_RETRY_COUNT 10
+NET_WRITE_TIMEOUT 200
show session variables like 'net_%';
Variable_name Value
net_buffer_length 16384
-net_read_timeout 600
+net_read_timeout 30
net_retry_count 10
-net_write_timeout 500
-set global net_buffer_length=8000, net_read_timeout=900, net_write_timeout=1000;
+net_write_timeout 60
+select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
+VARIABLE_NAME VARIABLE_VALUE
+NET_BUFFER_LENGTH 16384
+NET_READ_TIMEOUT 30
+NET_RETRY_COUNT 10
+NET_WRITE_TIMEOUT 60
+set global net_buffer_length=8000, global net_read_timeout=900, net_write_timeout=1000;
show global variables like 'net_%';
Variable_name Value
net_buffer_length 7168
net_read_timeout 900
net_retry_count 10
net_write_timeout 1000
-show session variables like 'net_%';
-Variable_name Value
-net_buffer_length 16384
-net_read_timeout 600
-net_retry_count 10
-net_write_timeout 500
+select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
+VARIABLE_NAME VARIABLE_VALUE
+NET_BUFFER_LENGTH 7168
+NET_READ_TIMEOUT 900
+NET_RETRY_COUNT 10
+NET_WRITE_TIMEOUT 1000
set global net_buffer_length=1;
Warnings:
Warning 1292 Truncated incorrect net_buffer_length value: '1'
show global variables like 'net_buffer_length';
Variable_name Value
net_buffer_length 1024
+select * from information_schema.global_variables where variable_name like 'net_buffer_length';
+VARIABLE_NAME VARIABLE_VALUE
+NET_BUFFER_LENGTH 1024
set global net_buffer_length=2000000000;
Warnings:
Warning 1292 Truncated incorrect net_buffer_length value: '2000000000'
show global variables like 'net_buffer_length';
Variable_name Value
net_buffer_length 1048576
-set session net_buffer_length=1024;
-ERROR HY000: SESSION variable net_buffer_length is read-only. Use SET GLOBAL net_buffer_length to assign the value
-set session max_allowed_packet=1024;
-ERROR HY000: SESSION variable max_allowed_packet is read-only. Use SET GLOBAL max_allowed_packet to assign the value
+select * from information_schema.global_variables where variable_name like 'net_buffer_length';
+VARIABLE_NAME VARIABLE_VALUE
+NET_BUFFER_LENGTH 1048576
set character set cp1251_koi8;
show variables like "character_set_client";
Variable_name Value
character_set_client cp1251
+select * from information_schema.session_variables where variable_name like 'character_set_client';
+VARIABLE_NAME VARIABLE_VALUE
+CHARACTER_SET_CLIENT cp1251
select @@timestamp>0;
@@timestamp>0
1
@@ -255,7 +315,17 @@ query_prealloc_size 8192
range_alloc_block_size 4096
transaction_alloc_block_size 8192
transaction_prealloc_size 4096
-==+ Manipulate variable values +=
+==+ information_schema data +==
+SELECT * FROM information_schema.session_variables
+WHERE variable_name IN ('range_alloc_block_size',
+'query_alloc_block_size', 'query_prealloc_size',
+'transaction_alloc_block_size', 'transaction_prealloc_size') ORDER BY 1;
+VARIABLE_NAME VARIABLE_VALUE
+QUERY_ALLOC_BLOCK_SIZE 8192
+QUERY_PREALLOC_SIZE 8192
+RANGE_ALLOC_BLOCK_SIZE 4096
+TRANSACTION_ALLOC_BLOCK_SIZE 8192
+TRANSACTION_PREALLOC_SIZE 4096
Testing values that are multiples of 1024
set @@range_alloc_block_size=1024*15+1024;
set @@query_alloc_block_size=1024*15+1024*2;
@@ -263,6 +333,9 @@ set @@query_prealloc_size=1024*18-1024;
set @@transaction_alloc_block_size=1024*21-1024*1;
set @@transaction_prealloc_size=1024*21-2048;
==+ Check manipulated values ==+
+select @@query_alloc_block_size;
+@@query_alloc_block_size
+17408
SHOW VARIABLES WHERE variable_name IN ('range_alloc_block_size',
'query_alloc_block_size', 'query_prealloc_size',
'transaction_alloc_block_size', 'transaction_prealloc_size');
@@ -272,6 +345,17 @@ query_prealloc_size 17408
range_alloc_block_size 16384
transaction_alloc_block_size 20480
transaction_prealloc_size 19456
+==+ information_schema data +==
+SELECT * FROM information_schema.session_variables
+WHERE variable_name IN ('range_alloc_block_size',
+'query_alloc_block_size', 'query_prealloc_size',
+'transaction_alloc_block_size', 'transaction_prealloc_size') ORDER BY 1;
+VARIABLE_NAME VARIABLE_VALUE
+QUERY_ALLOC_BLOCK_SIZE 17408
+QUERY_PREALLOC_SIZE 17408
+RANGE_ALLOC_BLOCK_SIZE 16384
+TRANSACTION_ALLOC_BLOCK_SIZE 20480
+TRANSACTION_PREALLOC_SIZE 19456
==+ Manipulate variable values +==
Testing values that are not 1024 multiples
set @@range_alloc_block_size=1024*16+1023;
@@ -292,6 +376,17 @@ query_prealloc_size 17408
range_alloc_block_size 16384
transaction_alloc_block_size 19456
transaction_prealloc_size 20480
+==+ information_schema data +==
+SELECT * FROM information_schema.session_variables
+WHERE variable_name IN ('range_alloc_block_size',
+'query_alloc_block_size', 'query_prealloc_size',
+'transaction_alloc_block_size', 'transaction_prealloc_size') ORDER BY 1;
+VARIABLE_NAME VARIABLE_VALUE
+QUERY_ALLOC_BLOCK_SIZE 17408
+QUERY_PREALLOC_SIZE 17408
+RANGE_ALLOC_BLOCK_SIZE 16384
+TRANSACTION_ALLOC_BLOCK_SIZE 19456
+TRANSACTION_PREALLOC_SIZE 20480
==+ Set values back to the default values +==
set @@range_alloc_block_size=default;
set @@query_alloc_block_size=default, @@query_prealloc_size=default;
@@ -395,7 +490,14 @@ Warnings:
Warning 1292 Truncated incorrect join_buffer_size value: '100'
set last_insert_id=1;
set global local_infile=1;
-set long_query_time=100;
+set long_query_time=0.000001;
+select @@long_query_time;
+@@long_query_time
+0.000001
+set long_query_time=100.000001;
+select @@long_query_time;
+@@long_query_time
+100.000001
set low_priority_updates=1;
set global max_allowed_packet=100;
Warnings:
@@ -475,7 +577,7 @@ set sql_safe_updates=1;
set sql_select_limit=1;
set sql_select_limit=default;
set sql_warnings=1;
-set global table_cache=100;
+set global table_open_cache=100;
set storage_engine=myisam;
set global thread_cache_size=100;
set timestamp=1, timestamp=default;
@@ -485,6 +587,7 @@ Warning 1292 Truncated incorrect tmp_table_size value: '100'
set tx_isolation="READ-COMMITTED";
set wait_timeout=100;
set log_warnings=1;
+set global log_warnings=1;
select @@session.insert_id;
@@session.insert_id
1
@@ -549,6 +652,9 @@ set global myisam_max_sort_file_size=4294967296;
show global variables like 'myisam_max_sort_file_size';
Variable_name Value
myisam_max_sort_file_size MAX_FILE_SIZE
+select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
+VARIABLE_NAME VARIABLE_VALUE
+MYISAM_MAX_SORT_FILE_SIZE MAX_FILE_SIZE
set global myisam_max_sort_file_size=default;
select @@global.max_user_connections,@@local.max_join_size;
@@global.max_user_connections @@local.max_join_size
@@ -588,18 +694,30 @@ set @tstlw = @@log_warnings;
show global variables like 'log_warnings';
Variable_name Value
log_warnings 1
+select * from information_schema.global_variables where variable_name like 'log_warnings';
+VARIABLE_NAME VARIABLE_VALUE
+LOG_WARNINGS 1
set global log_warnings = 0;
show global variables like 'log_warnings';
Variable_name Value
log_warnings 0
+select * from information_schema.global_variables where variable_name like 'log_warnings';
+VARIABLE_NAME VARIABLE_VALUE
+LOG_WARNINGS 0
set global log_warnings = 42;
show global variables like 'log_warnings';
Variable_name Value
log_warnings 42
+select * from information_schema.global_variables where variable_name like 'log_warnings';
+VARIABLE_NAME VARIABLE_VALUE
+LOG_WARNINGS 42
set global log_warnings = @tstlw;
show global variables like 'log_warnings';
Variable_name Value
log_warnings 1
+select * from information_schema.global_variables where variable_name like 'log_warnings';
+VARIABLE_NAME VARIABLE_VALUE
+LOG_WARNINGS 1
create table t1 (
c1 tinyint,
c2 smallint,
@@ -609,11 +727,11 @@ c5 bigint);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` tinyint(4) default NULL,
- `c2` smallint(6) default NULL,
- `c3` mediumint(9) default NULL,
- `c4` int(11) default NULL,
- `c5` bigint(20) default NULL
+ `c1` tinyint(4) DEFAULT NULL,
+ `c2` smallint(6) DEFAULT NULL,
+ `c3` mediumint(9) DEFAULT NULL,
+ `c4` int(11) DEFAULT NULL,
+ `c5` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
set @arg00= 8, @arg01= 8.8, @arg02= 'a string', @arg03= 0.2e0;
@@ -621,23 +739,29 @@ create table t1 as select @arg00 as c1, @arg01 as c2, @arg02 as c3, @arg03 as c4
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `c1` bigint(20) default NULL,
- `c2` decimal(65,30) default NULL,
+ `c1` bigint(20) DEFAULT NULL,
+ `c2` decimal(65,30) DEFAULT NULL,
`c3` longtext,
- `c4` double default NULL
+ `c4` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
SET GLOBAL MYISAM_DATA_POINTER_SIZE= 7;
SHOW VARIABLES LIKE 'MYISAM_DATA_POINTER_SIZE';
Variable_name Value
myisam_data_pointer_size 7
-SET GLOBAL table_cache=-1;
+SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE 'MYISAM_DATA_POINTER_SIZE';
+VARIABLE_NAME VARIABLE_VALUE
+MYISAM_DATA_POINTER_SIZE 7
+SET GLOBAL table_open_cache=-1;
Warnings:
-Warning 1292 Truncated incorrect table_cache value: '0'
-SHOW VARIABLES LIKE 'table_cache';
+Warning 1292 Truncated incorrect table_open_cache value: '-1'
+SHOW VARIABLES LIKE 'table_open_cache';
Variable_name Value
-table_cache 1
-SET GLOBAL table_cache=DEFAULT;
+table_open_cache 1
+SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE 'table_open_cache';
+VARIABLE_NAME VARIABLE_VALUE
+TABLE_OPEN_CACHE 1
+SET GLOBAL table_open_cache=DEFAULT;
set character_set_results=NULL;
select ifnull(@@character_set_results,"really null");
ifnull(@@character_set_results,"really null")
@@ -740,7 +864,7 @@ select @@query_prealloc_size = @test;
@@query_prealloc_size = @test
1
set global sql_mode=repeat('a',80);
-ERROR 42000: Variable 'sql_mode' can't be set to the value of 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+ERROR 42000: Variable 'sql_mode' can't be set to the value of 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
End of 4.1 tests
create table t1 (a int);
select a into @x from t1;
@@ -796,21 +920,36 @@ set @@sql_big_selects = 1;
show variables like 'sql_big_selects';
Variable_name Value
sql_big_selects ON
+select * from information_schema.session_variables where variable_name like 'sql_big_selects';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_BIG_SELECTS ON
set @@sql_big_selects = @old_sql_big_selects;
set @@sql_notes = 0, @@sql_warnings = 0;
show variables like 'sql_notes';
Variable_name Value
sql_notes OFF
+select * from information_schema.session_variables where variable_name like 'sql_notes';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_NOTES OFF
show variables like 'sql_warnings';
Variable_name Value
sql_warnings OFF
+select * from information_schema.session_variables where variable_name like 'sql_warnings';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_WARNINGS OFF
set @@sql_notes = 1, @@sql_warnings = 1;
show variables like 'sql_notes';
Variable_name Value
sql_notes ON
+select * from information_schema.session_variables where variable_name like 'sql_notes';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_NOTES ON
show variables like 'sql_warnings';
Variable_name Value
sql_warnings ON
+select * from information_schema.session_variables where variable_name like 'sql_warnings';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_WARNINGS ON
select @@system_time_zone;
@@system_time_zone
#
@@ -824,12 +963,21 @@ select @@basedir, @@datadir, @@tmpdir;
show variables like 'basedir';
Variable_name Value
basedir #
+select * from information_schema.session_variables where variable_name like 'basedir';
+VARIABLE_NAME VARIABLE_VALUE
+BASEDIR #
show variables like 'datadir';
Variable_name Value
datadir #
+select * from information_schema.session_variables where variable_name like 'datadir';
+VARIABLE_NAME VARIABLE_VALUE
+DATADIR #
show variables like 'tmpdir';
Variable_name Value
tmpdir #
+select * from information_schema.session_variables where variable_name like 'tmpdir';
+VARIABLE_NAME VARIABLE_VALUE
+TMPDIR #
select @@ssl_ca, @@ssl_capath, @@ssl_cert, @@ssl_cipher, @@ssl_key;
@@ssl_ca @@ssl_capath @@ssl_cert @@ssl_cipher @@ssl_key
# # # # #
@@ -840,12 +988,22 @@ ssl_capath #
ssl_cert #
ssl_cipher #
ssl_key #
+select * from information_schema.session_variables where variable_name like 'ssl%' order by 1;
+VARIABLE_NAME VARIABLE_VALUE
+SSL_CA #
+SSL_CAPATH #
+SSL_CERT #
+SSL_CIPHER #
+SSL_KEY #
select @@log_queries_not_using_indexes;
@@log_queries_not_using_indexes
0
show variables like 'log_queries_not_using_indexes';
Variable_name Value
log_queries_not_using_indexes OFF
+select * from information_schema.session_variables where variable_name like 'log_queries_not_using_indexes';
+VARIABLE_NAME VARIABLE_VALUE
+LOG_QUERIES_NOT_USING_INDEXES OFF
select @@"";
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '""' at line 1
select @@&;
@@ -860,23 +1018,12 @@ ERROR HY000: Variable 'hostname' is a read only variable
show variables like 'hostname';
Variable_name Value
hostname #
-SHOW VARIABLES LIKE 'log';
-Variable_name Value
-log ON
-SELECT @@log;
-@@log
-1
-SET GLOBAL log=0;
-ERROR HY000: Variable 'log' is a read only variable
-SHOW VARIABLES LIKE 'log_slow_queries';
-Variable_name Value
-log_slow_queries ON
-SELECT @@log_slow_queries;
-@@log_slow_queries
-1
-SET GLOBAL log_slow_queries=0;
-ERROR HY000: Variable 'log_slow_queries' is a read only variable
End of 5.0 tests
+set join_buffer_size=1;
+Warnings:
+Warning 1292 Truncated incorrect join_buffer_size value: '1'
+set @save_join_buffer_size=@@join_buffer_size;
+set join_buffer_size=@save_join_buffer_size;
set global binlog_cache_size =@my_binlog_cache_size;
set global connect_timeout =@my_connect_timeout;
set global delayed_insert_timeout =@my_delayed_insert_timeout;
@@ -884,16 +1031,18 @@ set global delayed_queue_size =@my_delayed_queue_size;
set global flush =@my_flush;
set global flush_time =@my_flush_time;
set global key_buffer_size =@my_key_buffer_size;
-set global max_binlog_cache_size =default;
+set global max_binlog_cache_size =@my_max_binlog_cache_size;
set global max_binlog_size =@my_max_binlog_size;
set global max_connect_errors =@my_max_connect_errors;
+set global max_connections =@my_max_connections;
set global max_delayed_threads =@my_max_delayed_threads;
set global max_heap_table_size =@my_max_heap_table_size;
set global max_insert_delayed_threads=@my_max_insert_delayed_threads;
set global max_join_size =@my_max_join_size;
-set global max_user_connections =@my_max_user_connections;
-set global max_write_lock_count =@my_max_write_lock_count;
+set global max_user_connections =default;
+set global max_write_lock_count =default;
set global myisam_data_pointer_size =@my_myisam_data_pointer_size;
+set global myisam_max_sort_file_size =@my_myisam_max_sort_file_size;
set global net_buffer_length =@my_net_buffer_length;
set global net_write_timeout =@my_net_write_timeout;
set global net_read_timeout =@my_net_read_timeout;
@@ -904,3 +1053,438 @@ set global server_id =@my_server_id;
set global slow_launch_time =@my_slow_launch_time;
set global storage_engine =@my_storage_engine;
set global thread_cache_size =@my_thread_cache_size;
+set global max_allowed_packet =@my_max_allowed_packet;
+set global join_buffer_size =@my_join_buffer_size;
+show global variables where Variable_name='table_definition_cache' or
+Variable_name='table_lock_wait_timeout';
+Variable_name Value
+table_definition_cache #
+table_lock_wait_timeout #
+
+# --
+# -- Bug#34820: log_output can be set to illegal value.
+# --
+SET GLOBAL log_output = '';
+ERROR 42000: Variable 'log_output' can't be set to the value of ''
+SET GLOBAL log_output = 0;
+ERROR 42000: Variable 'log_output' can't be set to the value of '0'
+
+# -- End of Bug#34820.
+
+#
+SHOW VARIABLES like 'ft_max_word_len';
+Variable_name Value
+ft_max_word_len 84
+SELECT @@session.ft_max_word_len;
+ERROR HY000: Variable 'ft_max_word_len' is a GLOBAL variable
+SELECT @@global.ft_max_word_len;
+@@global.ft_max_word_len
+84
+SET @@session.ft_max_word_len= 7;
+ERROR HY000: Variable 'ft_max_word_len' is a read only variable
+SET @@global.ft_max_word_len= 7;
+ERROR HY000: Variable 'ft_max_word_len' is a read only variable
+#
+SHOW VARIABLES like 'ft_min_word_len';
+Variable_name Value
+ft_min_word_len 4
+SELECT @@session.ft_min_word_len;
+ERROR HY000: Variable 'ft_min_word_len' is a GLOBAL variable
+SELECT @@global.ft_min_word_len;
+@@global.ft_min_word_len
+4
+SET @@session.ft_min_word_len= 7;
+ERROR HY000: Variable 'ft_min_word_len' is a read only variable
+SET @@global.ft_min_word_len= 7;
+ERROR HY000: Variable 'ft_min_word_len' is a read only variable
+#
+SHOW VARIABLES like 'ft_query_expansion_limit';
+Variable_name Value
+ft_query_expansion_limit 20
+SELECT @@session.ft_query_expansion_limit;
+ERROR HY000: Variable 'ft_query_expansion_limit' is a GLOBAL variable
+SELECT @@global.ft_query_expansion_limit;
+@@global.ft_query_expansion_limit
+20
+SET @@session.ft_query_expansion_limit= 7;
+ERROR HY000: Variable 'ft_query_expansion_limit' is a read only variable
+SET @@global.ft_query_expansion_limit= 7;
+ERROR HY000: Variable 'ft_query_expansion_limit' is a read only variable
+#
+SHOW VARIABLES like 'ft_stopword_file';
+Variable_name Value
+ft_stopword_file (built-in)
+SELECT @@session.ft_stopword_file;
+ERROR HY000: Variable 'ft_stopword_file' is a GLOBAL variable
+SELECT @@global.ft_stopword_file;
+@@global.ft_stopword_file
+(built-in)
+SET @@session.ft_stopword_file= 'x';
+ERROR HY000: Variable 'ft_stopword_file' is a read only variable
+SET @@global.ft_stopword_file= 'x';
+ERROR HY000: Variable 'ft_stopword_file' is a read only variable
+#
+SHOW VARIABLES like 'back_log';
+Variable_name Value
+back_log 50
+SELECT @@session.back_log;
+ERROR HY000: Variable 'back_log' is a GLOBAL variable
+SELECT @@global.back_log;
+@@global.back_log
+50
+SET @@session.back_log= 7;
+ERROR HY000: Variable 'back_log' is a read only variable
+SET @@global.back_log= 7;
+ERROR HY000: Variable 'back_log' is a read only variable
+#
+SHOW VARIABLES like 'large_files_support';
+Variable_name Value
+large_files_support #
+SELECT @@session.large_files_support;
+ERROR HY000: Variable 'large_files_support' is a GLOBAL variable
+SELECT @@global.large_files_support;
+@@global.large_files_support
+#
+SET @@session.large_files_support= true;
+ERROR HY000: Variable 'large_files_support' is a read only variable
+SET @@global.large_files_support= true;
+ERROR HY000: Variable 'large_files_support' is a read only variable
+#
+SHOW VARIABLES like 'character_sets_dir';
+Variable_name Value
+character_sets_dir #
+SELECT @@session.character_sets_dir;
+ERROR HY000: Variable 'character_sets_dir' is a GLOBAL variable
+SELECT @@global.character_sets_dir;
+@@global.character_sets_dir
+#
+SET @@session.character_sets_dir= 'x';
+ERROR HY000: Variable 'character_sets_dir' is a read only variable
+SET @@global.character_sets_dir= 'x';
+ERROR HY000: Variable 'character_sets_dir' is a read only variable
+#
+SHOW VARIABLES like 'init_file';
+Variable_name Value
+init_file #
+SELECT @@session.init_file;
+ERROR HY000: Variable 'init_file' is a GLOBAL variable
+SELECT @@global.init_file;
+@@global.init_file
+#
+SET @@session.init_file= 'x';
+ERROR HY000: Variable 'init_file' is a read only variable
+SET @@global.init_file= 'x';
+ERROR HY000: Variable 'init_file' is a read only variable
+#
+SHOW VARIABLES like 'language';
+Variable_name Value
+language #
+SELECT @@session.language;
+ERROR HY000: Variable 'language' is a GLOBAL variable
+SELECT @@global.language;
+@@global.language
+#
+SET @@session.language= 'x';
+ERROR HY000: Variable 'language' is a read only variable
+SET @@global.language= 'x';
+ERROR HY000: Variable 'language' is a read only variable
+#
+SHOW VARIABLES like 'large_page_size';
+Variable_name Value
+large_page_size #
+SELECT @@session.large_page_size;
+ERROR HY000: Variable 'large_page_size' is a GLOBAL variable
+SELECT @@global.large_page_size;
+@@global.large_page_size
+#
+SET @@session.large_page_size= 7;
+ERROR HY000: Variable 'large_page_size' is a read only variable
+SET @@global.large_page_size= 7;
+ERROR HY000: Variable 'large_page_size' is a read only variable
+#
+SHOW VARIABLES like 'large_pages';
+Variable_name Value
+large_pages #
+SELECT @@session.large_pages;
+ERROR HY000: Variable 'large_pages' is a GLOBAL variable
+SELECT @@global.large_pages;
+@@global.large_pages
+#
+SET @@session.large_pages= true;
+ERROR HY000: Variable 'large_pages' is a read only variable
+SET @@global.large_pages= true;
+ERROR HY000: Variable 'large_pages' is a read only variable
+#
+SHOW VARIABLES like 'log_bin';
+Variable_name Value
+log_bin OFF
+SELECT @@session.log_bin;
+ERROR HY000: Variable 'log_bin' is a GLOBAL variable
+SELECT @@global.log_bin;
+@@global.log_bin
+0
+SET @@session.log_bin= true;
+ERROR HY000: Variable 'log_bin' is a read only variable
+SET @@global.log_bin= true;
+ERROR HY000: Variable 'log_bin' is a read only variable
+#
+SHOW VARIABLES like 'log_error';
+Variable_name Value
+log_error #
+SELECT @@session.log_error;
+ERROR HY000: Variable 'log_error' is a GLOBAL variable
+SELECT @@global.log_error;
+@@global.log_error
+#
+SET @@session.log_error= 'x';
+ERROR HY000: Variable 'log_error' is a read only variable
+SET @@global.log_error= 'x';
+ERROR HY000: Variable 'log_error' is a read only variable
+#
+SHOW VARIABLES like 'lower_case_file_system';
+Variable_name Value
+lower_case_file_system #
+SELECT @@session.lower_case_file_system;
+ERROR HY000: Variable 'lower_case_file_system' is a GLOBAL variable
+SELECT @@global.lower_case_file_system;
+@@global.lower_case_file_system
+#
+SET @@session.lower_case_file_system= true;
+ERROR HY000: Variable 'lower_case_file_system' is a read only variable
+SET @@global.lower_case_file_system= true;
+ERROR HY000: Variable 'lower_case_file_system' is a read only variable
+#
+SHOW VARIABLES like 'lower_case_table_names';
+Variable_name Value
+lower_case_table_names #
+SELECT @@session.lower_case_table_names;
+ERROR HY000: Variable 'lower_case_table_names' is a GLOBAL variable
+SELECT @@global.lower_case_table_names;
+@@global.lower_case_table_names
+#
+SET @@session.lower_case_table_names= 7;
+ERROR HY000: Variable 'lower_case_table_names' is a read only variable
+SET @@global.lower_case_table_names= 7;
+ERROR HY000: Variable 'lower_case_table_names' is a read only variable
+#
+SHOW VARIABLES like 'myisam_recover_options';
+Variable_name Value
+myisam_recover_options OFF
+SELECT @@session.myisam_recover_options;
+ERROR HY000: Variable 'myisam_recover_options' is a GLOBAL variable
+SELECT @@global.myisam_recover_options;
+@@global.myisam_recover_options
+OFF
+SET @@session.myisam_recover_options= 'x';
+ERROR HY000: Variable 'myisam_recover_options' is a read only variable
+SET @@global.myisam_recover_options= 'x';
+ERROR HY000: Variable 'myisam_recover_options' is a read only variable
+#
+SHOW VARIABLES like 'open_files_limit';
+Variable_name Value
+open_files_limit #
+SELECT @@session.open_files_limit;
+ERROR HY000: Variable 'open_files_limit' is a GLOBAL variable
+SELECT @@global.open_files_limit;
+@@global.open_files_limit
+#
+SET @@session.open_files_limit= 7;
+ERROR HY000: Variable 'open_files_limit' is a read only variable
+SET @@global.open_files_limit= 7;
+ERROR HY000: Variable 'open_files_limit' is a read only variable
+#
+SHOW VARIABLES like 'pid_file';
+Variable_name Value
+pid_file #
+SELECT @@session.pid_file;
+ERROR HY000: Variable 'pid_file' is a GLOBAL variable
+SELECT @@global.pid_file;
+@@global.pid_file
+#
+SET @@session.pid_file= 'x';
+ERROR HY000: Variable 'pid_file' is a read only variable
+SET @@global.pid_file= 'x';
+ERROR HY000: Variable 'pid_file' is a read only variable
+#
+SHOW VARIABLES like 'plugin_dir';
+Variable_name Value
+plugin_dir #
+SELECT @@session.plugin_dir;
+ERROR HY000: Variable 'plugin_dir' is a GLOBAL variable
+SELECT @@global.plugin_dir;
+@@global.plugin_dir
+#
+SET @@session.plugin_dir= 'x';
+ERROR HY000: Variable 'plugin_dir' is a read only variable
+SET @@global.plugin_dir= 'x';
+ERROR HY000: Variable 'plugin_dir' is a read only variable
+#
+SHOW VARIABLES like 'port';
+Variable_name Value
+port #
+SELECT @@session.port;
+ERROR HY000: Variable 'port' is a GLOBAL variable
+SELECT @@global.port;
+@@global.port
+#
+SET @@session.port= 7;
+ERROR HY000: Variable 'port' is a read only variable
+SET @@global.port= 7;
+ERROR HY000: Variable 'port' is a read only variable
+#
+SHOW VARIABLES like 'protocol_version';
+Variable_name Value
+protocol_version 10
+SELECT @@session.protocol_version;
+ERROR HY000: Variable 'protocol_version' is a GLOBAL variable
+SELECT @@global.protocol_version;
+@@global.protocol_version
+10
+SET @@session.protocol_version= 7;
+ERROR HY000: Variable 'protocol_version' is a read only variable
+SET @@global.protocol_version= 7;
+ERROR HY000: Variable 'protocol_version' is a read only variable
+#
+SHOW VARIABLES like 'skip_external_locking';
+Variable_name Value
+skip_external_locking ON
+SELECT @@session.skip_external_locking;
+ERROR HY000: Variable 'skip_external_locking' is a GLOBAL variable
+SELECT @@global.skip_external_locking;
+@@global.skip_external_locking
+1
+SET @@session.skip_external_locking= true;
+ERROR HY000: Variable 'skip_external_locking' is a read only variable
+SET @@global.skip_external_locking= true;
+ERROR HY000: Variable 'skip_external_locking' is a read only variable
+#
+SHOW VARIABLES like 'skip_networking';
+Variable_name Value
+skip_networking OFF
+SELECT @@session.skip_networking;
+ERROR HY000: Variable 'skip_networking' is a GLOBAL variable
+SELECT @@global.skip_networking;
+@@global.skip_networking
+0
+SET @@session.skip_networking= true;
+ERROR HY000: Variable 'skip_networking' is a read only variable
+SET @@global.skip_networking= true;
+ERROR HY000: Variable 'skip_networking' is a read only variable
+#
+SHOW VARIABLES like 'skip_show_database';
+Variable_name Value
+skip_show_database OFF
+SELECT @@session.skip_show_database;
+ERROR HY000: Variable 'skip_show_database' is a GLOBAL variable
+SELECT @@global.skip_show_database;
+@@global.skip_show_database
+0
+SET @@session.skip_show_database= true;
+ERROR HY000: Variable 'skip_show_database' is a read only variable
+SET @@global.skip_show_database= true;
+ERROR HY000: Variable 'skip_show_database' is a read only variable
+#
+SHOW VARIABLES like 'thread_stack';
+Variable_name Value
+thread_stack #
+SELECT @@session.thread_stack;
+ERROR HY000: Variable 'thread_stack' is a GLOBAL variable
+SELECT @@global.thread_stack;
+@@global.thread_stack
+#
+SET @@session.thread_stack= 7;
+ERROR HY000: Variable 'thread_stack' is a read only variable
+SET @@global.thread_stack= 7;
+ERROR HY000: Variable 'thread_stack' is a read only variable
+SELECT @@global.expire_logs_days INTO @old_eld;
+SET GLOBAL expire_logs_days = -1;
+Warnings:
+Warning 1292 Truncated incorrect expire_logs_days value: '-1'
+needs to've been adjusted (0)
+SELECT @@global.expire_logs_days;
+@@global.expire_logs_days
+0
+SET GLOBAL expire_logs_days = 11;
+SET @old_mode=@@sql_mode;
+SET SESSION sql_mode = 'TRADITIONAL';
+SET GLOBAL expire_logs_days = 100;
+ERROR 42000: Variable 'expire_logs_days' can't be set to the value of '100'
+needs to be unchanged (11)
+SELECT @@global.expire_logs_days;
+@@global.expire_logs_days
+11
+SET SESSION sql_mode = @old_mode;
+SET GLOBAL expire_logs_days = 100;
+Warnings:
+Warning 1292 Truncated incorrect expire_logs_days value: '100'
+needs to've been adjusted (99)
+SELECT @@global.expire_logs_days;
+@@global.expire_logs_days
+99
+SET GLOBAL expire_logs_days = 11;
+SET GLOBAL expire_logs_days = 99;
+needs to pass with no warnings (99)
+SELECT @@global.expire_logs_days;
+@@global.expire_logs_days
+99
+SET GLOBAL expire_logs_days = @old_eld;
+SET GLOBAL auto_increment_offset=-1;
+Warnings:
+Warning 1292 Truncated incorrect auto_increment_offset value: '-1'
+SET GLOBAL auto_increment_offset=0;
+Warnings:
+Warning 1292 Truncated incorrect auto_increment_offset value: '0'
+select @@storage_engine;
+Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
+def @@storage_engine 253 6 6 Y 0 31 8
+@@storage_engine
+MyISAM
+SET @old_server_id = @@GLOBAL.server_id;
+SET GLOBAL server_id = (1 << 32) - 1;
+SELECT @@GLOBAL.server_id;
+@@GLOBAL.server_id
+4294967295
+SET GLOBAL server_id = (1 << 32);
+Warnings:
+Warning 1292 Truncated incorrect server_id value: '4294967296'
+SELECT @@GLOBAL.server_id;
+@@GLOBAL.server_id
+4294967295
+SET GLOBAL server_id = (1 << 60);
+Warnings:
+Warning 1292 Truncated incorrect server_id value: '1152921504606846976'
+SELECT @@GLOBAL.server_id;
+@@GLOBAL.server_id
+4294967295
+SET GLOBAL server_id = 0;
+SELECT @@GLOBAL.server_id;
+@@GLOBAL.server_id
+0
+SET GLOBAL server_id = -1;
+Warnings:
+Warning 1292 Truncated incorrect server_id value: '-1'
+SELECT @@GLOBAL.server_id;
+@@GLOBAL.server_id
+0
+SET GLOBAL server_id = @old_server_id;
+SELECT @@GLOBAL.INIT_FILE, @@GLOBAL.INIT_FILE IS NULL;
+@@GLOBAL.INIT_FILE @@GLOBAL.INIT_FILE IS NULL
+NULL 1
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES ();
+SET @bug42778= @@sql_safe_updates;
+SET @@sql_safe_updates= 0;
+DELETE FROM t1 ORDER BY (@@GLOBAL.INIT_FILE) ASC LIMIT 10;
+SET @@sql_safe_updates= @bug42778;
+DROP TABLE t1;
+#
+# BUG#10206 - InnoDB: Transaction requiring Max_BinLog_Cache_size > 4GB always rollsback
+#
+SET @old_max_binlog_cache_size = @@GLOBAL.max_binlog_cache_size;
+# Set the max_binlog_cache_size to size more than 4GB.
+SET GLOBAL max_binlog_cache_size = 5 * 1024 * 1024 * 1024;
+SELECT @@GLOBAL.max_binlog_cache_size;
+@@GLOBAL.max_binlog_cache_size
+5368709120
+SET GLOBAL max_binlog_cache_size = @old_max_binlog_cache_size;
+End of 5.1 tests
diff --git a/mysql-test/r/variables_debug.result b/mysql-test/r/variables_debug.result
new file mode 100644
index 00000000000..9cd133dddb1
--- /dev/null
+++ b/mysql-test/r/variables_debug.result
@@ -0,0 +1,12 @@
+set debug= 'T';
+select @@debug;
+@@debug
+T
+set debug= '+P';
+select @@debug;
+@@debug
+P:T
+set debug= '-P';
+select @@debug;
+@@debug
+T
diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result
index 715fb225550..613939bfdf6 100644
--- a/mysql-test/r/view.result
+++ b/mysql-test/r/view.result
@@ -37,11 +37,11 @@ c
6
11
show create table v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
show create view t1;
ERROR HY000: 'test.t1' is not VIEW
drop table t1;
@@ -54,14 +54,14 @@ ERROR 42S22: Unknown column 'b' in 'field list'
select v1.b from v1;
ERROR 42S22: Unknown column 'v1.b' in 'field list'
explain extended select c from v1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select (`test`.`t1`.`b` + 1) AS `c` from `test`.`t1`
create algorithm=temptable view v2 (c) as select b+1 from t1;
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t1`.`b` + 1) AS `c` from `t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
select c from v2;
c
3
@@ -70,9 +70,9 @@ c
6
11
explain extended select c from v2;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5
-2 DERIVED t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select `v2`.`c` AS `c` from `test`.`v2`
create view v3 (c) as select a+1 from v1;
@@ -88,8 +88,8 @@ c
7
12
explain extended select c from v3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select ((`test`.`t1`.`b` + 1) + 1) AS `c` from `test`.`t1`
create algorithm=temptable view v4 (c) as select c+1 from v2;
@@ -101,10 +101,10 @@ c
7
12
explain extended select c from v4;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5
-2 DERIVED <derived3> ALL NULL NULL NULL NULL 5
-3 DERIVED t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 100.00
+2 DERIVED <derived3> ALL NULL NULL NULL NULL 5 100.00
+3 DERIVED t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select `v4`.`c` AS `c` from `test`.`v4`
create view v5 (c) as select c+1 from v2;
@@ -116,9 +116,9 @@ c
7
12
explain extended select c from v5;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived3> ALL NULL NULL NULL NULL 5
-3 DERIVED t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived3> ALL NULL NULL NULL NULL 5 100.00
+3 DERIVED t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select (`v2`.`c` + 1) AS `c` from `test`.`v2`
create algorithm=temptable view v6 (c) as select c+1 from v1;
@@ -130,9 +130,9 @@ c
7
12
explain extended select c from v6;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5
-2 DERIVED t1 ALL NULL NULL NULL NULL 5
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 5 100.00
Warnings:
Note 1003 select `v6`.`c` AS `c` from `test`.`v6`
show tables;
@@ -387,8 +387,8 @@ c
20
30
explain extended select * from v1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 Using where
Warnings:
Note 1003 select `test`.`t1`.`b` AS `c` from `test`.`t1` where (`test`.`t1`.`a` < 3)
update v1 set c=c+1;
@@ -576,8 +576,8 @@ set sql_mode='ansi';
create table t1 ("a*b" int);
create view v1 as select "a*b" from t1;
show create view v1;
-View Create View
-v1 CREATE VIEW "v1" AS select "t1"."a*b" AS "a*b" from "t1"
+View Create View character_set_client collation_connection
+v1 CREATE VIEW "v1" AS select "t1"."a*b" AS "a*b" from "t1" latin1 latin1_swedish_ci
drop view v1;
drop table t1;
set sql_mode=default;
@@ -625,7 +625,7 @@ drop table t1;
create table t1 (a int, b int);
create view v1 as select a, sum(b) from t1 group by a;
select b from v1 use index (some_index) where b=1;
-ERROR HY000: Key 'some_index' doesn't exist in table 'v1'
+ERROR 42000: Key 'some_index' doesn't exist in table 'v1'
drop view v1;
drop table t1;
create table t1 (col1 char(5),col2 char(5));
@@ -682,8 +682,8 @@ drop view v1;
drop table t1;
CREATE VIEW v1 (f1,f2,f3,f4) AS SELECT connection_id(), pi(), current_user(), version();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select connection_id() AS `f1`,pi() AS `f2`,current_user() AS `f3`,version() AS `f4`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select connection_id() AS `f1`,pi() AS `f2`,current_user() AS `f3`,version() AS `f4` latin1 latin1_swedish_ci
drop view v1;
create table t1 (s1 int);
create table t2 (s2 int);
@@ -716,14 +716,14 @@ create table t2 (a int);
create view v1 as select a from t1;
create view v2 as select a from t2 where a in (select a from v1);
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where `t2`.`a` in (select `v1`.`a` AS `a` from `v1`)
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where `t2`.`a` in (select `v1`.`a` AS `a` from `v1`) latin1 latin1_swedish_ci
drop view v2, v1;
drop table t1, t2;
CREATE VIEW `v 1` AS select 5 AS `5`;
show create view `v 1`;
-View Create View
-v 1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v 1` AS select 5 AS `5`
+View Create View character_set_client collation_connection
+v 1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v 1` AS select 5 AS `5` latin1 latin1_swedish_ci
drop view `v 1`;
create database mysqltest;
create table mysqltest.t1 (a int, b int);
@@ -790,35 +790,35 @@ select * from v3;
a b
1 1
show create view v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `v1`.`col1` AS `a`,`v2`.`col1` AS `b` from (`v1` join `v2`) where (`v1`.`col1` = `v2`.`col1`)
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `v1`.`col1` AS `a`,`v2`.`col1` AS `b` from (`v1` join `v2`) where (`v1`.`col1` = `v2`.`col1`) latin1 latin1_swedish_ci
drop view v3, v2, v1;
drop table t2, t1;
create function `f``1` () returns int return 5;
create view v1 as select test.`f``1` ();
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`f``1`() AS `test.``f````1`` ()`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`f``1`() AS `test.``f````1`` ()` latin1 latin1_swedish_ci
select * from v1;
test.`f``1` ()
5
drop view v1;
drop function `f``1`;
-create function x () returns int return 5;
-create view v1 as select x ();
+create function a() returns int return 5;
+create view v1 as select a();
select * from v1;
-x ()
+a()
5
drop view v1;
-drop function x;
+drop function a;
create table t2 (col1 char collate latin1_german2_ci);
create view v2 as select col1 collate latin1_german1_ci from t2;
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `t2`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `t2` latin1 latin1_swedish_ci
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `t2`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `t2` latin1 latin1_swedish_ci
drop view v2;
drop table t2;
create table t1 (a int);
@@ -844,9 +844,12 @@ drop view v1;
drop table t1;
create view v1 as select 99999999999999999999999999999999999999999999999999999 as col1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 99999999999999999999999999999999999999999999999999999 AS `col1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 99999999999999999999999999999999999999999999999999999 AS `col1` latin1 latin1_swedish_ci
drop view v1;
+SET @old_cs_client = @@character_set_client;
+SET @old_cs_results = @@character_set_results;
+SET @old_cs_connection = @@character_set_connection;
set names utf8;
create table tü (cü char);
create view vü as select cü from tü;
@@ -856,7 +859,9 @@ cü
ü
drop view vü;
drop table tü;
-set names latin1;
+SET character_set_client = @old_cs_client;
+SET character_set_results = @old_cs_results;
+SET character_set_connection = @old_cs_connection;
create table t1 (a int, b int);
insert into t1 values (1,2), (1,3), (2,4), (2,5), (3,10);
create view v1(c) as select a+1 from t1 where b >= 4;
@@ -867,8 +872,8 @@ drop view v1;
drop table t1;
create view v1 as select cast(1 as char(3));
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(1 as char(3) charset latin1) AS `cast(1 as char(3))`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(1 as char(3) charset latin1) AS `cast(1 as char(3))` latin1 latin1_swedish_ci
select * from v1;
cast(1 as char(3))
1
@@ -913,6 +918,7 @@ drop view v1;
drop table t1;
create table t1 (col1 int);
create table t2 (col1 int);
+create table t3 (col1 datetime not null);
create view v1 as select * from t1;
create view v2 as select * from v1;
create view v3 as select v2.col1 from v2,t2 where v2.col1 = t2.col1;
@@ -1017,8 +1023,8 @@ ERROR HY000: The definition of table 'v2' prevents operation INSERT on table 'v3
insert into v3 (col1) values ((select CONVERT_TZ('20050101000000','UTC','MET') from v2));
ERROR HY000: The definition of table 'v2' prevents operation INSERT on table 'v3'.
insert into v3 (col1) values ((select CONVERT_TZ('20050101000000','UTC','MET') from t2));
-insert into mysql.time_zone values ('', (select CONVERT_TZ('20050101000000','UTC','MET') from t2));
-ERROR 23000: Column 'Use_leap_seconds' cannot be null
+insert into t3 values ((select CONVERT_TZ('20050101000000','UTC','MET') from t2));
+ERROR 23000: Column 'col1' cannot be null
create algorithm=temptable view v4 as select * from t1;
insert into t1 values (1),(2),(3);
insert into t1 (col1) values ((select max(col1) from v4));
@@ -1030,7 +1036,7 @@ NULL
3
3
drop view v4,v3,v2,v1;
-drop table t1,t2;
+drop table t1,t2,t3;
create table t1 (s1 int);
create view v1 as select * from t1;
handler v1 open as xx;
@@ -1121,21 +1127,21 @@ insert ignore into v1 SELECT a from t2;
Warnings:
Error 1369 CHECK OPTION failed 'test.v1'
Error 1369 CHECK OPTION failed 'test.v1'
-select * from t1;
+select * from t1 order by a desc;
a
1
0
update v1 set a=-1 where a=0;
update v1 set a=2 where a=1;
ERROR HY000: CHECK OPTION failed 'test.v1'
-select * from t1;
+select * from t1 order by a desc;
a
1
-1
update v1 set a=0 where a=0;
insert into t2 values (1);
update v1,t2 set v1.a=v1.a-1 where v1.a=t2.a;
-select * from t1;
+select * from t1 order by a desc;
a
0
-1
@@ -1198,20 +1204,20 @@ drop table t1;
create table t1 (a int);
create view v1 as select * from t1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` latin1 latin1_swedish_ci
alter algorithm=undefined view v1 as select * from t1 with check option;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` WITH CASCADED CHECK OPTION
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` WITH CASCADED CHECK OPTION latin1 latin1_swedish_ci
alter algorithm=merge view v1 as select * from t1 with cascaded check option;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=MERGE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` WITH CASCADED CHECK OPTION
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=MERGE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` WITH CASCADED CHECK OPTION latin1 latin1_swedish_ci
alter algorithm=temptable view v1 as select * from t1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` latin1 latin1_swedish_ci
drop view v1;
drop table t1;
create table t1 (s1 int);
@@ -1308,7 +1314,7 @@ drop view v2, v1;
drop table t1;
create table t1 (a int, b char(10));
create view v1 as select * from t1 where a != 0 with check option;
-load data infile '../std_data_ln/loaddata3.dat' into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
+load data infile '../../std_data/loaddata3.dat' into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
ERROR HY000: CHECK OPTION failed 'test.v1'
select * from t1;
a b
@@ -1319,18 +1325,18 @@ a b
1 row 1
2 row 2
delete from t1;
-load data infile '../std_data_ln/loaddata3.dat' ignore into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
+load data infile '../../std_data/loaddata3.dat' ignore into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
Warnings:
Warning 1366 Incorrect integer value: 'error ' for column 'a' at row 3
Error 1369 CHECK OPTION failed 'test.v1'
Warning 1366 Incorrect integer value: 'wrong end ' for column 'a' at row 4
Error 1369 CHECK OPTION failed 'test.v1'
-select * from t1;
+select * from t1 order by a,b;
a b
1 row 1
2 row 2
3 row 3
-select * from v1;
+select * from v1 order by a,b;
a b
1 row 1
2 row 2
@@ -1339,14 +1345,14 @@ drop view v1;
drop table t1;
create table t1 (a text, b text);
create view v1 as select * from t1 where a <> 'Field A' with check option;
-load data infile '../std_data_ln/loaddata2.dat' into table v1 fields terminated by ',' enclosed by '''';
+load data infile '../../std_data/loaddata2.dat' into table v1 fields terminated by ',' enclosed by '''';
ERROR HY000: CHECK OPTION failed 'test.v1'
select concat('|',a,'|'), concat('|',b,'|') from t1;
concat('|',a,'|') concat('|',b,'|')
select concat('|',a,'|'), concat('|',b,'|') from v1;
concat('|',a,'|') concat('|',b,'|')
delete from t1;
-load data infile '../std_data_ln/loaddata2.dat' ignore into table v1 fields terminated by ',' enclosed by '''';
+load data infile '../../std_data/loaddata2.dat' ignore into table v1 fields terminated by ',' enclosed by '''';
Warnings:
Error 1369 CHECK OPTION failed 'test.v1'
Warning 1261 Row 2 doesn't contain data for all columns
@@ -1407,10 +1413,10 @@ a a b
2 2 NULL
4 NULL NULL
explain extended select * from t3 left join v3 on (t3.a = v3.a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 ALL NULL NULL NULL NULL 3
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a`,`test`.`t1`.`a` AS `a`,`test`.`t2`.`a` AS `b` from `test`.`t3` left join (`test`.`t1` left join `test`.`t2` on((`test`.`t1`.`a` = `test`.`t2`.`a`))) on((`test`.`t3`.`a` = `test`.`t1`.`a`)) where 1
create view v1 (a) as select a from t1;
@@ -1422,10 +1428,10 @@ a a b
2 2 NULL
4 NULL NULL
explain extended select * from t3 left join v4 on (t3.a = v4.a);
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t3 ALL NULL NULL NULL NULL 3
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-1 SIMPLE t2 ALL NULL NULL NULL NULL 2
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t3 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00
+1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select `test`.`t3`.`a` AS `a`,`test`.`t1`.`a` AS `a`,`test`.`t2`.`a` AS `b` from `test`.`t3` left join (`test`.`t1` left join (`test`.`t2`) on((`test`.`t1`.`a` = `test`.`t2`.`a`))) on((`test`.`t3`.`a` = `test`.`t1`.`a`)) where 1
prepare stmt1 from "select * from t3 left join v4 on (t3.a = v4.a);";
@@ -1884,25 +1890,25 @@ create table t1 (a timestamp default now());
create table t2 (b timestamp default now());
create view v1 as select a,b,t1.a < now() from t1,t2 where t1.a < now();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,`t2`.`b` AS `b`,(`t1`.`a` < now()) AS `t1.a < now()` from (`t1` join `t2`) where (`t1`.`a` < now())
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,`t2`.`b` AS `b`,(`t1`.`a` < now()) AS `t1.a < now()` from (`t1` join `t2`) where (`t1`.`a` < now()) latin1 latin1_swedish_ci
drop view v1;
drop table t1, t2;
CREATE TABLE t1 ( a varchar(50) );
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = CURRENT_USER();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = current_user())
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = current_user()) latin1 latin1_swedish_ci
DROP VIEW v1;
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = VERSION();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = version())
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = version()) latin1 latin1_swedish_ci
DROP VIEW v1;
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = DATABASE();
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = database())
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = database()) latin1 latin1_swedish_ci
DROP VIEW v1;
DROP TABLE t1;
CREATE TABLE t1 (col1 time);
@@ -2004,8 +2010,8 @@ drop table t1;
create table t1 (s1 int);
create view v1 as select var_samp(s1) from t1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select var_samp(`t1`.`s1`) AS `var_samp(s1)` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select var_samp(`t1`.`s1`) AS `var_samp(s1)` from `t1` latin1 latin1_swedish_ci
drop view v1;
drop table t1;
set sql_mode='strict_all_tables';
@@ -2089,17 +2095,6 @@ CALL p1();
DROP PROCEDURE p1;
DROP VIEW v1;
DROP TABLE t1;
-create table t1 (f1 tinyint(1), f2 char(1), f3 varchar(1), f4 geometry, f5 datetime);
-create view v1 as select * from t1;
-desc v1;
-Field Type Null Key Default Extra
-f1 tinyint(1) YES NULL
-f2 char(1) YES NULL
-f3 varchar(1) YES NULL
-f4 geometry YES NULL
-f5 datetime YES NULL
-drop view v1;
-drop table t1;
create table t1(f1 datetime);
insert into t1 values('2005.01.01 12:0:0');
create view v1 as select f1, subtime(f1, '1:1:1') as sb from t1;
@@ -2261,16 +2256,16 @@ CREATE TABLE t1 (date DATE NOT NULL);
INSERT INTO t1 VALUES ('2005-09-06');
CREATE VIEW v1 AS SELECT DAYNAME(date) FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select dayname(`t1`.`date`) AS `DAYNAME(date)` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select dayname(`t1`.`date`) AS `DAYNAME(date)` from `t1` latin1 latin1_swedish_ci
CREATE VIEW v2 AS SELECT DAYOFWEEK(date) FROM t1;
SHOW CREATE VIEW v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select dayofweek(`t1`.`date`) AS `DAYOFWEEK(date)` from `t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select dayofweek(`t1`.`date`) AS `DAYOFWEEK(date)` from `t1` latin1 latin1_swedish_ci
CREATE VIEW v3 AS SELECT WEEKDAY(date) FROM t1;
SHOW CREATE VIEW v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select weekday(`t1`.`date`) AS `WEEKDAY(date)` from `t1`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select weekday(`t1`.`date`) AS `WEEKDAY(date)` from `t1` latin1 latin1_swedish_ci
SELECT DAYNAME('2005-09-06');
DAYNAME('2005-09-06')
Tuesday
@@ -2355,7 +2350,7 @@ id select_type table type possible_keys key key_len ref rows Extra
EXPLAIN SELECT * FROM v2 WHERE a=1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref a a 5 const 1 Using where; Using index
-1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where
+1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where; Using join buffer
DROP VIEW v1,v2;
DROP TABLE t1,t2,t3;
create table t1 (f1 int);
@@ -2429,13 +2424,13 @@ test.v1 repair error Corrupt
DROP VIEW v1;
create definer = current_user() sql security invoker view v1 as select 1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
drop view v1;
create definer = current_user sql security invoker view v1 as select 1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
drop view v1;
create table t1 (id INT, primary key(id));
insert into t1 values (1),(2);
@@ -2464,8 +2459,8 @@ end;
//
call p1();
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
drop view v1;
drop procedure p1;
CREATE VIEW v1 AS SELECT 42 AS Meaning;
@@ -2570,8 +2565,8 @@ drop table t1;
show create view v1;
drop view v1;
//
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`id` AS `id` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`id` AS `id` from `t1` latin1 latin1_swedish_ci
create table t1(f1 int, f2 int);
create view v1 as select ta.f1 as a, tb.f1 as b from t1 ta, t1 tb where ta.f1=tb
.f1 and ta.f2=tb.f2;
@@ -2687,8 +2682,8 @@ CREATE VIEW v1 AS
SELECT id, date(d) + INTERVAL TIME_TO_SEC(d) SECOND AS t, COUNT(*)
FROM t1 GROUP BY id, t;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`id` AS `id`,(cast(`t1`.`d` as date) + interval time_to_sec(`t1`.`d`) second) AS `t`,count(0) AS `COUNT(*)` from `t1` group by `t1`.`id`,(cast(`t1`.`d` as date) + interval time_to_sec(`t1`.`d`) second)
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`id` AS `id`,(cast(`t1`.`d` as date) + interval time_to_sec(`t1`.`d`) second) AS `t`,count(0) AS `COUNT(*)` from `t1` group by `t1`.`id`,(cast(`t1`.`d` as date) + interval time_to_sec(`t1`.`d`) second) latin1 latin1_swedish_ci
SELECT * FROM v1;
id t COUNT(*)
DROP VIEW v1;
@@ -2716,8 +2711,8 @@ CREATE VIEW v1 AS
SELECT (year(test_date)-year(DOB)) AS Age
FROM t1 HAVING Age < 75;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (year(`t1`.`test_date`) - year(`t1`.`DOB`)) AS `Age` from `t1` having (`Age` < 75)
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select (year(`t1`.`test_date`) - year(`t1`.`DOB`)) AS `Age` from `t1` having (`Age` < 75) latin1 latin1_swedish_ci
SELECT (year(test_date)-year(DOB)) AS Age FROM t1 HAVING Age < 75;
Age
43
@@ -2844,12 +2839,12 @@ DROP TABLE t1;
CREATE TABLE t1 (x INT, y INT);
CREATE ALGORITHM=TEMPTABLE SQL SECURITY INVOKER VIEW v1 AS SELECT x FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select `t1`.`x` AS `x` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select `t1`.`x` AS `x` from `t1` latin1 latin1_swedish_ci
ALTER VIEW v1 AS SELECT x, y FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select `t1`.`x` AS `x`,`t1`.`y` AS `y` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select `t1`.`x` AS `x`,`t1`.`y` AS `y` from `t1` latin1 latin1_swedish_ci
DROP VIEW v1;
DROP TABLE t1;
CREATE TABLE t1 (s1 char);
@@ -2909,8 +2904,8 @@ USE test;
create table t1 (f1 datetime);
create view v1 as select * from t1 where f1 between now() and now() + interval 1 minute;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1` where (`t1`.`f1` between now() and (now() + interval 1 minute))
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1` where (`t1`.`f1` between now() and (now() + interval 1 minute)) latin1 latin1_swedish_ci
drop view v1;
drop table t1;
DROP TABLE IF EXISTS t1;
@@ -2986,8 +2981,8 @@ t2.ver = (SELECT MAX(t.ver) FROM t2 t WHERE t.org = t2.org);
SHOW WARNINGS;
Level Code Message
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=MERGE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`pk` AS `pk` from (`t1` join `t2` on(((`t2`.`fk` = `t1`.`pk`) and (`t2`.`ver` = (select max(`t`.`ver`) AS `MAX(t.ver)` from `t2` `t` where (`t`.`org` = `t2`.`org`))))))
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=MERGE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`pk` AS `pk` from (`t1` join `t2` on(((`t2`.`fk` = `t1`.`pk`) and (`t2`.`ver` = (select max(`t`.`ver`) AS `MAX(t.ver)` from `t2` `t` where (`t`.`org` = `t2`.`org`)))))) latin1 latin1_swedish_ci
DROP VIEW v1;
DROP TABLE t1, t2;
DROP FUNCTION IF EXISTS f1;
@@ -3050,8 +3045,8 @@ DROP VIEW v1, v2;
DROP TABLE t1;
CREATE VIEW v AS SELECT !0 * 5 AS x FROM DUAL;
SHOW CREATE VIEW v;
-View Create View
-v CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v` AS select ((not(0)) * 5) AS `x`
+View Create View character_set_client collation_connection
+v CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v` AS select ((not(0)) * 5) AS `x` latin1 latin1_swedish_ci
SELECT !0 * 5 AS x FROM DUAL;
x
5
@@ -3065,8 +3060,8 @@ SELECT * FROM v1;
TheEnd
TheEnd
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select _latin1'The\ZEnd' AS `TheEnd`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 'The\ZEnd' AS `TheEnd` latin1 latin1_swedish_ci
DROP VIEW v1;
CREATE TABLE t1 (mydate DATETIME);
INSERT INTO t1 VALUES
@@ -3132,8 +3127,8 @@ f1 f2
1 3
2 3
explain extended select * from v1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 100.00 Using filesort
Warnings:
Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f2`
select * from v1 order by f1;
@@ -3145,8 +3140,8 @@ f1 f2
2 2
2 3
explain extended select * from v1 order by f1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 100.00 Using filesort
Warnings:
Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f1`,`test`.`t1`.`f2`
drop view v1;
@@ -3287,8 +3282,8 @@ old_isfalse int(1) NO 0
a IS NOT FALSE int(1) NO 0
old_isnotfalse int(1) NO 0
show create view view_24532_b;
-View Create View
-view_24532_b CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_24532_b` AS select (`table_24532`.`a` is true) AS `a IS TRUE`,if(ifnull(`table_24532`.`a`,0),1,0) AS `old_istrue`,(`table_24532`.`a` is not true) AS `a IS NOT TRUE`,if(ifnull(`table_24532`.`a`,0),0,1) AS `old_isnottrue`,(`table_24532`.`a` is false) AS `a IS FALSE`,if(ifnull(`table_24532`.`a`,1),0,1) AS `old_isfalse`,(`table_24532`.`a` is not false) AS `a IS NOT FALSE`,if(ifnull(`table_24532`.`a`,1),1,0) AS `old_isnotfalse` from `table_24532`
+View Create View character_set_client collation_connection
+view_24532_b CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_24532_b` AS select (`table_24532`.`a` is true) AS `a IS TRUE`,if(ifnull(`table_24532`.`a`,0),1,0) AS `old_istrue`,(`table_24532`.`a` is not true) AS `a IS NOT TRUE`,if(ifnull(`table_24532`.`a`,0),0,1) AS `old_isnottrue`,(`table_24532`.`a` is false) AS `a IS FALSE`,if(ifnull(`table_24532`.`a`,1),0,1) AS `old_isfalse`,(`table_24532`.`a` is not false) AS `a IS NOT FALSE`,if(ifnull(`table_24532`.`a`,1),1,0) AS `old_isnotfalse` from `table_24532` latin1 latin1_swedish_ci
insert into table_24532 values (0, 0, 0, 0);
select * from view_24532_b;
a IS TRUE old_istrue a IS NOT TRUE old_isnottrue a IS FALSE old_isfalse a IS NOT FALSE old_isnotfalse
@@ -3386,8 +3381,8 @@ col decimal(7,5) NO 0.00000
DROP VIEW v1;
CREATE VIEW v1 AS SELECT CAST(1.23456789 AS DECIMAL(8,0)) AS col;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(1.23456789 as decimal(8,0)) AS `col`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(1.23456789 as decimal(8,0)) AS `col` latin1 latin1_swedish_ci
DROP VIEW v1;
CREATE TABLE t1 (a INT);
CREATE TABLE t2 (b INT, c INT DEFAULT 0);
@@ -3567,11 +3562,11 @@ CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1),(2);
CREATE VIEW v1 AS SELECT * FROM t1;
SELECT * FROM v1 USE KEY(non_existant);
-ERROR HY000: Key 'non_existant' doesn't exist in table 'v1'
+ERROR 42000: Key 'non_existant' doesn't exist in table 'v1'
SELECT * FROM v1 FORCE KEY(non_existant);
-ERROR HY000: Key 'non_existant' doesn't exist in table 'v1'
+ERROR 42000: Key 'non_existant' doesn't exist in table 'v1'
SELECT * FROM v1 IGNORE KEY(non_existant);
-ERROR HY000: Key 'non_existant' doesn't exist in table 'v1'
+ERROR 42000: Key 'non_existant' doesn't exist in table 'v1'
DROP VIEW v1;
DROP TABLE t1;
CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT, b INT NOT NULL DEFAULT 0,
@@ -3579,22 +3574,22 @@ PRIMARY KEY(a), KEY (b));
INSERT INTO t1 VALUES (),(),(),(),(),(),(),(),(),(),(),(),(),(),();
CREATE VIEW v1 AS SELECT * FROM t1 FORCE KEY (PRIMARY,b) ORDER BY a;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` FORCE INDEX (PRIMARY,`b`) order by `t1`.`a`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` FORCE INDEX (PRIMARY) FORCE INDEX (`b`) order by `t1`.`a` latin1 latin1_swedish_ci
EXPLAIN SELECT * FROM v1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index NULL PRIMARY 4 NULL 15
CREATE VIEW v2 AS SELECT * FROM t1 USE KEY () ORDER BY a;
SHOW CREATE VIEW v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` USE INDEX () order by `t1`.`a`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` USE INDEX () order by `t1`.`a` latin1 latin1_swedish_ci
EXPLAIN SELECT * FROM v2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 15 Using filesort
CREATE VIEW v3 AS SELECT * FROM t1 IGNORE KEY (b) ORDER BY a;
SHOW CREATE VIEW v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` IGNORE INDEX (`b`) order by `t1`.`a`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `t1`.`a` AS `a`,`t1`.`b` AS `b` from `t1` IGNORE INDEX (`b`) order by `t1`.`a` latin1 latin1_swedish_ci
EXPLAIN SELECT * FROM v3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 15 Using filesort
@@ -3670,8 +3665,8 @@ SELECT * FROM v1;
1
1
SHOW CREATE TABLE v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` from DUAL where 1
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 1 AS `1` from DUAL where 1 latin1 latin1_swedish_ci
DROP VIEW v1;
@@ -3691,17 +3686,17 @@ CREATE VIEW v1 AS SELECT c1, c2 FROM t1;
SHOW INDEX FROM v1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
SELECT * FROM v1 USE INDEX (PRIMARY) WHERE c1=2;
-ERROR HY000: Key 'PRIMARY' doesn't exist in table 'v1'
+ERROR 42000: Key 'PRIMARY' doesn't exist in table 'v1'
SELECT * FROM v1 FORCE INDEX (PRIMARY) WHERE c1=2;
-ERROR HY000: Key 'PRIMARY' doesn't exist in table 'v1'
+ERROR 42000: Key 'PRIMARY' doesn't exist in table 'v1'
SELECT * FROM v1 IGNORE INDEX (PRIMARY) WHERE c1=2;
-ERROR HY000: Key 'PRIMARY' doesn't exist in table 'v1'
+ERROR 42000: Key 'PRIMARY' doesn't exist in table 'v1'
SELECT * FROM v1 USE INDEX (c2) WHERE c2=2;
-ERROR HY000: Key 'c2' doesn't exist in table 'v1'
+ERROR 42000: Key 'c2' doesn't exist in table 'v1'
SELECT * FROM v1 FORCE INDEX (c2) WHERE c2=2;
-ERROR HY000: Key 'c2' doesn't exist in table 'v1'
+ERROR 42000: Key 'c2' doesn't exist in table 'v1'
SELECT * FROM v1 IGNORE INDEX (c2) WHERE c2=2;
-ERROR HY000: Key 'c2' doesn't exist in table 'v1'
+ERROR 42000: Key 'c2' doesn't exist in table 'v1'
DROP VIEW v1;
DROP TABLE t1;
# -----------------------------------------------------------------
@@ -3713,8 +3708,8 @@ CREATE TABLE t1 (c INT);
CREATE VIEW v1 (view_column) AS SELECT c AS alias FROM t1 HAVING alias;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`c` AS `view_column` from `t1` having `view_column`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`c` AS `view_column` from `t1` having `view_column` latin1 latin1_swedish_ci
SELECT * FROM v1;
view_column
@@ -3723,117 +3718,132 @@ DROP TABLE t1;
# -- End of test case for Bug#40825
-#
-# Bug #45806 crash when replacing into a view with a join!
-#
-CREATE TABLE t1(a INT UNIQUE);
-CREATE VIEW v1 AS SELECT t1.a FROM t1, t1 AS a;
-INSERT INTO t1 VALUES (1), (2);
-REPLACE INTO v1(a) SELECT 1 FROM t1,t1 AS c;
-SELECT * FROM v1;
-a
-1
-2
-1
-2
-REPLACE INTO v1(a) SELECT 3 FROM t1,t1 AS c;
+# -----------------------------------------------------------------
+# -- End of 5.0 tests.
+# -----------------------------------------------------------------
+DROP DATABASE IF EXISTS `d-1`;
+CREATE DATABASE `d-1`;
+USE `d-1`;
+CREATE TABLE `t-1` (c1 INT);
+CREATE VIEW `v-1` AS SELECT c1 FROM `t-1`;
+SHOW TABLES;
+Tables_in_d-1
+t-1
+v-1
+RENAME TABLE `t-1` TO `t-2`;
+RENAME TABLE `v-1` TO `v-2`;
+SHOW TABLES;
+Tables_in_d-1
+t-2
+v-2
+DROP TABLE `t-2`;
+DROP VIEW `v-2`;
+DROP DATABASE `d-1`;
+USE test;
+
+#
+# Bug#26676 VIEW using old table schema in a session.
+#
+
+DROP VIEW IF EXISTS v1;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(c1 INT, c2 INT);
+INSERT INTO t1 VALUES (1, 2), (3, 4);
+
+SELECT * FROM t1;
+c1 c2
+1 2
+3 4
+
+CREATE VIEW v1 AS SELECT * FROM t1;
+
SELECT * FROM v1;
-a
-1
-2
-3
-1
-2
-3
-1
-2
-3
-DELETE FROM t1 WHERE a=3;
-INSERT INTO v1(a) SELECT 1 FROM t1,t1 AS c
-ON DUPLICATE KEY UPDATE `v1`.`a`= 1;
+c1 c2
+1 2
+3 4
+
+ALTER TABLE t1 ADD COLUMN c3 INT AFTER c2;
+
+SELECT * FROM t1;
+c1 c2 c3
+1 2 NULL
+3 4 NULL
+
SELECT * FROM v1;
-a
-1
-2
-1
-2
-CREATE VIEW v2 AS SELECT t1.a FROM t1, v1 AS a;
-REPLACE INTO v2(a) SELECT 1 FROM t1,t1 AS c;
-SELECT * FROM v2;
-a
-1
-2
-1
-2
-1
-2
-1
-2
-REPLACE INTO v2(a) SELECT 3 FROM t1,t1 AS c;
-SELECT * FROM v2;
-a
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-INSERT INTO v2(a) SELECT 1 FROM t1,t1 AS c
-ON DUPLICATE KEY UPDATE `v2`.`a`= 1;
-SELECT * FROM v2;
-a
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
-1
-2
-3
+c1 c2
+1 2
+3 4
+
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`c1` AS `c1`,`t1`.`c2` AS `c2` from `t1` latin1 latin1_swedish_ci
+
DROP VIEW v1;
-DROP VIEW v2;
DROP TABLE t1;
-# -- End of test case for Bug#45806
+
+# End of test case for Bug#26676.
+
# -----------------------------------------------------------------
-# -- End of 5.0 tests.
+# -- Bug#32538 View definition picks up character set, but not collation
+# -----------------------------------------------------------------
+
+DROP VIEW IF EXISTS v1;
+
+SET collation_connection = latin1_general_ci;
+CREATE VIEW v1 AS SELECT _latin1 'text1' AS c1, 'text2' AS c2;
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1;
+COLLATION(c1) COLLATION(c2)
+latin1_swedish_ci latin1_general_ci
+
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select _latin1'text1' AS `c1`,'text2' AS `c2` latin1 latin1_general_ci
+
+SELECT * FROM v1 WHERE c1 = 'text1';
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (latin1_general_ci,COERCIBLE) for operation '='
+
+SELECT * FROM v1 WHERE c2 = 'text2';
+c1 c2
+text1 text2
+
+use test;
+SET names latin1;
+
+SELECT COLLATION(c1), COLLATION(c2) FROM v1;
+COLLATION(c1) COLLATION(c2)
+latin1_swedish_ci latin1_general_ci
+
+SELECT * FROM v1 WHERE c1 = 'text1';
+c1 c2
+text1 text2
+
+SELECT * FROM v1 WHERE c2 = 'text2';
+ERROR HY000: Illegal mix of collations (latin1_general_ci,COERCIBLE) and (latin1_swedish_ci,COERCIBLE) for operation '='
+
+DROP VIEW v1;
+
+# -- End of test case for Bug#32538.
+
+drop view if exists a;
+drop procedure if exists p;
+create procedure p()
+begin
+declare continue handler for sqlexception begin end;
+create view a as select 1;
+end|
+call p();
+call p();
+drop view a;
+drop procedure p;
+#
+# Bug #44860: ALTER TABLE on view crashes server
+#
+CREATE TABLE t1 (a INT);
+CREATE VIEW v1 AS SELECT a FROM t1;
+ALTER TABLE v1;
+DROP VIEW v1;
+DROP TABLE t1;
+# -----------------------------------------------------------------
+# -- End of 5.1 tests.
# -----------------------------------------------------------------
diff --git a/mysql-test/r/view_grant.result b/mysql-test/r/view_grant.result
index e7a50451cec..2d5c515d0b5 100644
--- a/mysql-test/r/view_grant.result
+++ b/mysql-test/r/view_grant.result
@@ -1,3 +1,5 @@
+drop database if exists mysqltest;
+drop view if exists v1,v2,v3;
grant create view on test.* to test@localhost;
show grants for test@localhost;
Grants for test@localhost
@@ -25,8 +27,8 @@ ERROR 42000: CREATE VIEW command denied to user 'mysqltest_1'@'localhost' for ta
create view v2 as select * from mysqltest.t2;
ERROR 42000: ANY command denied to user 'mysqltest_1'@'localhost' for table 't2'
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `mysqltest`.`t1`.`a` AS `a`,`mysqltest`.`t1`.`b` AS `b` from `mysqltest`.`t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `mysqltest`.`t1`.`a` AS `a`,`mysqltest`.`t1`.`b` AS `b` from `mysqltest`.`t1` latin1 latin1_swedish_ci
grant create view,drop,select on test.* to mysqltest_1@localhost;
use test;
alter view v1 as select * from mysqltest.t1;
@@ -125,28 +127,28 @@ explain select c from mysqltest.v1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found
show create view mysqltest.v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v1` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v1` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1` latin1 latin1_swedish_ci
explain select c from mysqltest.v2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> system NULL NULL NULL NULL 0 const row not found
2 DERIVED NULL NULL NULL NULL NULL NULL NULL no matching row in const table
show create view mysqltest.v2;
-View Create View
-v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v2` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v2` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1` latin1 latin1_swedish_ci
explain select c from mysqltest.v3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 system NULL NULL NULL NULL 0 const row not found
show create view mysqltest.v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v3` AS select (`mysqltest`.`t2`.`a` + 1) AS `c`,(`mysqltest`.`t2`.`b` + 1) AS `d` from `mysqltest`.`t2`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v3` AS select (`mysqltest`.`t2`.`a` + 1) AS `c`,(`mysqltest`.`t2`.`b` + 1) AS `d` from `mysqltest`.`t2` latin1 latin1_swedish_ci
explain select c from mysqltest.v4;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> system NULL NULL NULL NULL 0 const row not found
2 DERIVED NULL NULL NULL NULL NULL NULL NULL no matching row in const table
show create view mysqltest.v4;
-View Create View
-v4 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v4` AS select (`mysqltest`.`t2`.`a` + 1) AS `c`,(`mysqltest`.`t2`.`b` + 1) AS `d` from `mysqltest`.`t2`
+View Create View character_set_client collation_connection
+v4 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v4` AS select (`mysqltest`.`t2`.`a` + 1) AS `c`,(`mysqltest`.`t2`.`b` + 1) AS `d` from `mysqltest`.`t2` latin1 latin1_swedish_ci
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
delete from mysql.user where user='mysqltest_1';
drop database mysqltest;
@@ -306,8 +308,8 @@ grant select on mysqltest.t1 to mysqltest_1@localhost;
grant create view,select on test.* to mysqltest_1@localhost;
create view v1 as select * from mysqltest.t1;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `mysqltest`.`t1`.`a` AS `a`,`mysqltest`.`t1`.`b` AS `b` from `mysqltest`.`t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `mysqltest`.`t1`.`a` AS `a`,`mysqltest`.`t1`.`b` AS `b` from `mysqltest`.`t1` latin1 latin1_swedish_ci
revoke select on mysqltest.t1 from mysqltest_1@localhost;
select * from v1;
ERROR HY000: View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
@@ -475,15 +477,15 @@ grant all on test.* to 'test14256'@'%';
use test;
create view v1 as select 42;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`test14256`@`%` SQL SECURITY DEFINER VIEW `v1` AS select 42 AS `42`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`test14256`@`%` SQL SECURITY DEFINER VIEW `v1` AS select 42 AS `42` latin1 latin1_swedish_ci
select definer into @v1def1 from information_schema.views
where table_schema = 'test' and table_name='v1';
drop view v1;
create definer=`test14256`@`%` view v1 as select 42;
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`test14256`@`%` SQL SECURITY DEFINER VIEW `v1` AS select 42 AS `42`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`test14256`@`%` SQL SECURITY DEFINER VIEW `v1` AS select 42 AS `42` latin1 latin1_swedish_ci
select definer into @v1def2 from information_schema.views
where table_schema = 'test' and table_name='v1';
drop view v1;
@@ -499,8 +501,8 @@ use mysqltest;
CREATE TABLE t1 (i INT);
CREATE VIEW v1 AS SELECT * FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`i` AS `i` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`i` AS `i` from `t1` latin1 latin1_swedish_ci
GRANT SELECT, LOCK TABLES ON mysqltest.* TO mysqltest_1@localhost;
use mysqltest;
LOCK TABLES v1 READ;
@@ -513,16 +515,16 @@ drop user mysqltest_1@localhost;
drop database mysqltest;
create definer=some_user@`` sql security invoker view v1 as select 1;
Warnings:
-Note 1449 There is no 'some_user'@'' registered
+Note 1449 The user specified as a definer ('some_user'@'') does not exist
create definer=some_user@localhost sql security invoker view v2 as select 1;
Warnings:
-Note 1449 There is no 'some_user'@'localhost' registered
+Note 1449 The user specified as a definer ('some_user'@'localhost') does not exist
show create view v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`some_user`@`` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`some_user`@`` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1` latin1 latin1_swedish_ci
show create view v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`some_user`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select 1 AS `1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`some_user`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select 1 AS `1` latin1 latin1_swedish_ci
drop view v1;
drop view v2;
CREATE DATABASE mysqltest1;
@@ -599,14 +601,14 @@ CREATE TABLE t1 (a INT PRIMARY KEY);
INSERT INTO t1 VALUES (1), (2), (3);
CREATE DEFINER = 'no-such-user'@localhost VIEW v AS SELECT a from t1;
Warnings:
-Note 1449 There is no 'no-such-user'@'localhost' registered
+Note 1449 The user specified as a definer ('no-such-user'@'localhost') does not exist
SHOW CREATE VIEW v;
-View Create View
-v CREATE ALGORITHM=UNDEFINED DEFINER=`no-such-user`@`localhost` SQL SECURITY DEFINER VIEW `v` AS select `test`.`t1`.`a` AS `a` from `t1`
+View Create View character_set_client collation_connection
+v CREATE ALGORITHM=UNDEFINED DEFINER=`no-such-user`@`localhost` SQL SECURITY DEFINER VIEW `v` AS select `test`.`t1`.`a` AS `a` from `t1` latin1 latin1_swedish_ci
Warnings:
-Warning 1356 View 'test.v' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+Note 1449 The user specified as a definer ('no-such-user'@'localhost') does not exist
SELECT * FROM v;
-ERROR HY000: There is no 'no-such-user'@'localhost' registered
+ERROR HY000: The user specified as a definer ('no-such-user'@'localhost') does not exist
DROP VIEW v;
DROP TABLE t1;
USE test;
@@ -618,14 +620,14 @@ CREATE TABLE t1 (f1 INTEGER);
CREATE VIEW view1 AS
SELECT * FROM t1;
SHOW CREATE VIEW view1;
-View Create View
-view1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_db1`@`localhost` SQL SECURITY DEFINER VIEW `view1` AS select `t1`.`f1` AS `f1` from `t1`
+View Create View character_set_client collation_connection
+view1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_db1`@`localhost` SQL SECURITY DEFINER VIEW `view1` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
CREATE VIEW view2 AS
SELECT * FROM view1;
# Here comes a suspicious warning
SHOW CREATE VIEW view2;
-View Create View
-view2 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_db1`@`localhost` SQL SECURITY DEFINER VIEW `view2` AS select `view1`.`f1` AS `f1` from `view1`
+View Create View character_set_client collation_connection
+view2 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqltest_db1`@`localhost` SQL SECURITY DEFINER VIEW `view2` AS select `view1`.`f1` AS `f1` from `view1` latin1 latin1_swedish_ci
# But the view view2 is usable
SELECT * FROM view2;
f1
@@ -720,7 +722,7 @@ SELECT * FROM v1;
ERROR 42000: SELECT command denied to user 'inv_17254'@'localhost' for table 'v1'
for a superuser
SELECT * FROM v1;
-ERROR HY000: There is no 'def_17254'@'localhost' registered
+ERROR HY000: The user specified as a definer ('def_17254'@'localhost') does not exist
DROP USER inv_17254@localhost;
DROP DATABASE db17254;
DROP DATABASE IF EXISTS mysqltest_db1;
@@ -783,8 +785,8 @@ ERROR 42000: Access denied; you need the SUPER privilege for this operation
ALTER VIEW v3 AS SELECT f2 FROM t1;
ERROR 42000: Access denied; you need the SUPER privilege for this operation
SHOW CREATE VIEW v3;
-View Create View
-v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `t1`.`f1` AS `f1` from `t1`
+View Create View character_set_client collation_connection
+v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
DROP USER u26813@localhost;
DROP DATABASE db26813;
#
@@ -809,24 +811,24 @@ ERROR 42000: Access denied; you need the SUPER privilege for this operation
ALTER VIEW v2 AS SELECT f2 FROM t1;
ERROR 42000: Access denied; you need the SUPER privilege for this operation
SHOW CREATE VIEW v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select `t1`.`f1` AS `f1` from `t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
ALTER VIEW v1 AS SELECT f2 FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f2` AS `f2` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f2` AS `f2` from `t1` latin1 latin1_swedish_ci
ALTER VIEW v2 AS SELECT f2 FROM t1;
SHOW CREATE VIEW v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select `t1`.`f2` AS `f2` from `t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select `t1`.`f2` AS `f2` from `t1` latin1 latin1_swedish_ci
ALTER VIEW v1 AS SELECT f1 FROM t1;
SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
ALTER VIEW v2 AS SELECT f1 FROM t1;
SHOW CREATE VIEW v2;
-View Create View
-v2 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select `t1`.`f1` AS `f1` from `t1`
+View Create View character_set_client collation_connection
+v2 CREATE ALGORITHM=UNDEFINED DEFINER=`u29908_1`@`localhost` SQL SECURITY INVOKER VIEW `v2` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
DROP USER u29908_1@localhost;
DROP USER u29908_2@localhost;
DROP DATABASE mysqltest_29908;
@@ -946,3 +948,292 @@ DROP VIEW db1.v1;
DROP TABLE db1.t1;
DROP DATABASE db1;
End of 5.0 tests.
+DROP VIEW IF EXISTS v1;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (i INT);
+CREATE VIEW v1 AS SELECT * FROM t1;
+ALTER VIEW v1 AS SELECT * FROM t1;
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`i` AS `i` from `t1` latin1 latin1_swedish_ci
+ALTER DEFINER=no_such@user_1 VIEW v1 AS SELECT * FROM t1;
+Warnings:
+Note 1449 The user specified as a definer ('no_such'@'user_1') does not exist
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`no_such`@`user_1` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`i` AS `i` from `t1` latin1 latin1_swedish_ci
+Warnings:
+Note 1449 The user specified as a definer ('no_such'@'user_1') does not exist
+ALTER ALGORITHM=MERGE VIEW v1 AS SELECT * FROM t1;
+Warnings:
+Note 1449 The user specified as a definer ('no_such'@'user_1') does not exist
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=MERGE DEFINER=`no_such`@`user_1` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`i` AS `i` from `t1` latin1 latin1_swedish_ci
+Warnings:
+Note 1449 The user specified as a definer ('no_such'@'user_1') does not exist
+ALTER ALGORITHM=TEMPTABLE DEFINER=no_such@user_2 VIEW v1 AS SELECT * FROM t1;
+Warnings:
+Note 1449 The user specified as a definer ('no_such'@'user_2') does not exist
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=TEMPTABLE DEFINER=`no_such`@`user_2` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`i` AS `i` from `t1` latin1 latin1_swedish_ci
+Warnings:
+Note 1449 The user specified as a definer ('no_such'@'user_2') does not exist
+DROP VIEW v1;
+DROP TABLE t1;
+CREATE USER mysqluser1@localhost;
+CREATE DATABASE mysqltest1;
+USE mysqltest1;
+CREATE TABLE t1 ( a INT );
+CREATE TABLE t2 ( b INT );
+INSERT INTO t1 VALUES (1), (2);
+INSERT INTO t2 VALUES (1), (2);
+GRANT CREATE VIEW ON mysqltest1.* TO mysqluser1@localhost;
+GRANT SELECT ON t1 TO mysqluser1@localhost;
+GRANT INSERT ON t2 TO mysqluser1@localhost;
+This would lead to failed assertion.
+CREATE VIEW v1 AS SELECT a, b FROM t1, t2;
+SELECT * FROM v1;
+ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 'v1'
+SELECT b FROM v1;
+ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 'v1'
+DROP TABLE t1, t2;
+DROP VIEW v1;
+DROP DATABASE mysqltest1;
+DROP USER mysqluser1@localhost;
+USE test;
+End of 5.1 tests.
+CREATE USER mysqluser1@localhost;
+CREATE DATABASE mysqltest1;
+USE mysqltest1;
+CREATE TABLE t1 ( a INT, b INT );
+CREATE TABLE t2 ( a INT, b INT );
+CREATE VIEW v1 AS SELECT a, b FROM t1;
+GRANT SELECT( a ) ON v1 TO mysqluser1@localhost;
+GRANT UPDATE( b ) ON t2 TO mysqluser1@localhost;
+SELECT * FROM mysqltest1.v1;
+ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 'v1'
+CREATE VIEW v1 AS SELECT * FROM mysqltest1.t2;
+ERROR 42000: ANY command denied to user 'mysqluser1'@'localhost' for table 't2'
+DROP TABLE t1, t2;
+DROP VIEW v1;
+DROP DATABASE mysqltest1;
+DROP USER mysqluser1@localhost;
+CREATE USER mysqluser1@localhost;
+CREATE DATABASE mysqltest1;
+USE mysqltest1;
+CREATE VIEW v1 AS SELECT * FROM information_schema.tables LIMIT 1;
+CREATE ALGORITHM = TEMPTABLE VIEW v2 AS SELECT 1 AS A;
+CREATE VIEW test.v3 AS SELECT 1 AS a;
+GRANT SELECT ON mysqltest1.* to mysqluser1@localhost;
+GRANT ALL ON test.* TO mysqluser1@localhost;
+PREPARE stmt_v1 FROM "SELECT * FROM mysqltest1.v1";
+PREPARE stmt_v2 FROM "SELECT * FROM mysqltest1.v2";
+REVOKE SELECT ON mysqltest1.* FROM mysqluser1@localhost;
+EXECUTE stmt_v1;
+ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 'v1'
+EXECUTE stmt_v2;
+ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 'v2'
+PREPARE stmt FROM "SELECT a FROM v3";
+EXECUTE stmt;
+a
+1
+DROP VIEW v1, v2;
+DROP DATABASE mysqltest1;
+DROP VIEW test.v3;
+DROP USER mysqluser1@localhost;
+USE test;
+#
+# Bug#35996: SELECT + SHOW VIEW should be enough to display view
+# definition
+#
+CREATE USER mysqluser1@localhost;
+CREATE DATABASE mysqltest1;
+CREATE DATABASE mysqltest2;
+GRANT USAGE, SELECT, CREATE VIEW, SHOW VIEW
+ON mysqltest2.* TO mysqluser1@localhost;
+USE mysqltest1;
+CREATE TABLE t1( a INT );
+CREATE TABLE t2( a INT, b INT );
+CREATE FUNCTION f1() RETURNS INT RETURN 1;
+CREATE VIEW v1 AS SELECT 1 AS a;
+CREATE VIEW v2 AS SELECT 1 AS a, 2 AS b;
+GRANT SELECT ON TABLE t1 TO mysqluser1@localhost;
+GRANT SELECT (a, b) ON TABLE t2 TO mysqluser1@localhost;
+GRANT EXECUTE ON FUNCTION f1 TO mysqluser1@localhost;
+GRANT SELECT ON TABLE v1 TO mysqluser1@localhost;
+GRANT SELECT (a, b) ON TABLE v2 TO mysqluser1@localhost;
+CREATE VIEW v_t1 AS SELECT * FROM t1;
+CREATE VIEW v_t2 AS SELECT * FROM t2;
+CREATE VIEW v_f1 AS SELECT f1() AS a;
+CREATE VIEW v_v1 AS SELECT * FROM v1;
+CREATE VIEW v_v2 AS SELECT * FROM v2;
+GRANT SELECT, SHOW VIEW ON v_t1 TO mysqluser1@localhost;
+GRANT SELECT, SHOW VIEW ON v_t2 TO mysqluser1@localhost;
+GRANT SELECT, SHOW VIEW ON v_f1 TO mysqluser1@localhost;
+GRANT SELECT, SHOW VIEW ON v_v1 TO mysqluser1@localhost;
+GRANT SELECT, SHOW VIEW ON v_v2 TO mysqluser1@localhost;
+CREATE VIEW v_mysqluser1_t1 AS SELECT * FROM mysqltest1.t1;
+CREATE VIEW v_mysqluser1_t2 AS SELECT * FROM mysqltest1.t2;
+CREATE VIEW v_mysqluser1_f1 AS SELECT mysqltest1.f1() AS a;
+CREATE VIEW v_mysqluser1_v1 AS SELECT * FROM mysqltest1.v1;
+CREATE VIEW v_mysqluser1_v2 AS SELECT * FROM mysqltest1.v2;
+SHOW CREATE VIEW mysqltest1.v_t1;
+View Create View character_set_client collation_connection
+v_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_t2;
+View Create View character_set_client collation_connection
+v_t2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_t2` AS select `mysqltest1`.`t2`.`a` AS `a`,`mysqltest1`.`t2`.`b` AS `b` from `mysqltest1`.`t2` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_f1;
+View Create View character_set_client collation_connection
+v_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_f1` AS select `f1`() AS `a` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_v1;
+View Create View character_set_client collation_connection
+v_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_v2;
+View Create View character_set_client collation_connection
+v_v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_v2` AS select `v2`.`a` AS `a`,`v2`.`b` AS `b` from `mysqltest1`.`v2` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_t1;
+View Create View character_set_client collation_connection
+v_mysqluser1_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_t2;
+View Create View character_set_client collation_connection
+v_mysqluser1_t2 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_t2` AS select `mysqltest1`.`t2`.`a` AS `a`,`mysqltest1`.`t2`.`b` AS `b` from `mysqltest1`.`t2` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_f1;
+View Create View character_set_client collation_connection
+v_mysqluser1_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_f1` AS select `mysqltest1`.`f1`() AS `a` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_v1;
+View Create View character_set_client collation_connection
+v_mysqluser1_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_v2;
+View Create View character_set_client collation_connection
+v_mysqluser1_v2 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_v2` AS select `v2`.`a` AS `a`,`v2`.`b` AS `b` from `mysqltest1`.`v2` latin1 latin1_swedish_ci
+REVOKE SELECT ON TABLE t1 FROM mysqluser1@localhost;
+REVOKE SELECT (a) ON TABLE t2 FROM mysqluser1@localhost;
+REVOKE EXECUTE ON FUNCTION f1 FROM mysqluser1@localhost;
+REVOKE SELECT ON TABLE v1 FROM mysqluser1@localhost;
+SHOW CREATE VIEW mysqltest1.v_t1;
+View Create View character_set_client collation_connection
+v_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_t2;
+View Create View character_set_client collation_connection
+v_t2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_t2` AS select `mysqltest1`.`t2`.`a` AS `a`,`mysqltest1`.`t2`.`b` AS `b` from `mysqltest1`.`t2` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_f1;
+View Create View character_set_client collation_connection
+v_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_f1` AS select `f1`() AS `a` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_v1;
+View Create View character_set_client collation_connection
+v_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW mysqltest1.v_v2;
+View Create View character_set_client collation_connection
+v_v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_v2` AS select `v2`.`a` AS `a`,`v2`.`b` AS `b` from `mysqltest1`.`v2` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_t1;
+View Create View character_set_client collation_connection
+v_mysqluser1_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_t2;
+View Create View character_set_client collation_connection
+v_mysqluser1_t2 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_t2` AS select `mysqltest1`.`t2`.`a` AS `a`,`mysqltest1`.`t2`.`b` AS `b` from `mysqltest1`.`t2` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_f1;
+View Create View character_set_client collation_connection
+v_mysqluser1_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_f1` AS select `mysqltest1`.`f1`() AS `a` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_v1;
+View Create View character_set_client collation_connection
+v_mysqluser1_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+SHOW CREATE VIEW v_mysqluser1_v2;
+View Create View character_set_client collation_connection
+v_mysqluser1_v2 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_v2` AS select `v2`.`a` AS `a`,`v2`.`b` AS `b` from `mysqltest1`.`v2` latin1 latin1_swedish_ci
+# Testing the case when the views reference missing objects.
+# Obviously, there are no privileges to check for, so we
+# need only each object type once.
+DROP TABLE t1;
+DROP FUNCTION f1;
+DROP VIEW v1;
+SHOW CREATE VIEW mysqltest1.v_t1;
+View Create View character_set_client collation_connection
+v_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest1.v_t1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW mysqltest1.v_f1;
+View Create View character_set_client collation_connection
+v_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_f1` AS select `f1`() AS `a` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest1.v_f1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW mysqltest1.v_v1;
+View Create View character_set_client collation_connection
+v_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest1`.`v_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest1.v_v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW v_mysqluser1_t1;
+View Create View character_set_client collation_connection
+v_mysqluser1_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest2.v_mysqluser1_t1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW v_mysqluser1_f1;
+View Create View character_set_client collation_connection
+v_mysqluser1_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_f1` AS select `mysqltest1`.`f1`() AS `a` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest2.v_mysqluser1_f1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW v_mysqluser1_v1;
+View Create View character_set_client collation_connection
+v_mysqluser1_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest2.v_mysqluser1_v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+REVOKE SHOW VIEW ON v_t1 FROM mysqluser1@localhost;
+REVOKE SHOW VIEW ON v_f1 FROM mysqluser1@localhost;
+REVOKE SHOW VIEW ON v_v1 FROM mysqluser1@localhost;
+SHOW CREATE VIEW mysqltest1.v_t1;
+ERROR 42000: SHOW VIEW command denied to user 'mysqluser1'@'localhost' for table 'v_t1'
+SHOW CREATE VIEW mysqltest1.v_f1;
+ERROR 42000: SHOW VIEW command denied to user 'mysqluser1'@'localhost' for table 'v_f1'
+SHOW CREATE VIEW mysqltest1.v_v1;
+ERROR 42000: SHOW VIEW command denied to user 'mysqluser1'@'localhost' for table 'v_v1'
+SHOW CREATE VIEW v_mysqluser1_t1;
+View Create View character_set_client collation_connection
+v_mysqluser1_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_t1` AS select `mysqltest1`.`t1`.`a` AS `a` from `mysqltest1`.`t1` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest2.v_mysqluser1_t1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW v_mysqluser1_f1;
+View Create View character_set_client collation_connection
+v_mysqluser1_f1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_f1` AS select `mysqltest1`.`f1`() AS `a` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest2.v_mysqluser1_f1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+SHOW CREATE VIEW v_mysqluser1_v1;
+View Create View character_set_client collation_connection
+v_mysqluser1_v1 CREATE ALGORITHM=UNDEFINED DEFINER=`mysqluser1`@`localhost` SQL SECURITY DEFINER VIEW `v_mysqluser1_v1` AS select `v1`.`a` AS `a` from `mysqltest1`.`v1` latin1 latin1_swedish_ci
+Warnings:
+Warning 1356 View 'mysqltest2.v_mysqluser1_v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
+DROP USER mysqluser1@localhost;
+DROP DATABASE mysqltest1;
+DROP DATABASE mysqltest2;
+USE test;
+CREATE TABLE t1( a INT );
+CREATE DEFINER = no_such_user@no_such_host VIEW v1 AS SELECT * FROM t1;
+Warnings:
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`no_such_user`@`no_such_host` SQL SECURITY DEFINER VIEW `v1` AS select `test`.`t1`.`a` AS `a` from `t1` latin1 latin1_swedish_ci
+Warnings:
+Note 1449 The user specified as a definer ('no_such_user'@'no_such_host') does not exist
+DROP TABLE t1;
+DROP VIEW v1;
+#
+# Bug #46019: ERROR 1356 When selecting from within another
+# view that has Group By
+#
+CREATE DATABASE mysqltest1;
+USE mysqltest1;
+CREATE TABLE t1 (a INT);
+CREATE SQL SECURITY INVOKER VIEW v1 AS SELECT a FROM t1 GROUP BY a;
+CREATE SQL SECURITY INVOKER VIEW v2 AS SELECT a FROM v1;
+CREATE USER mysqluser1;
+GRANT SELECT ON TABLE t1 TO mysqluser1;
+GRANT SELECT, SHOW VIEW ON TABLE v1 TO mysqluser1;
+GRANT SELECT, SHOW VIEW ON TABLE v2 TO mysqluser1;
+SELECT a FROM v1;
+a
+SELECT a FROM v2;
+a
+DROP USER mysqluser1;
+DROP DATABASE mysqltest1;
diff --git a/mysql-test/r/wait_timeout.result b/mysql-test/r/wait_timeout.result
index 6fbff82f908..adb7d6bafd9 100644
--- a/mysql-test/r/wait_timeout.result
+++ b/mysql-test/r/wait_timeout.result
@@ -1,20 +1,33 @@
-select 0;
-0
-0
-flush status;
-select 1;
+SET @@global.wait_timeout= 2;
+disconnect default;
+connection wait_con;
+connection default;
+--disable_reconnect;
+SELECT 1;
1
1
-select 2;
+connection wait_con;
+connection default;
+SELECT 2;
Got one of the listed errors
-select 3;
+--enable_reconnect;
+SELECT 3;
3
3
-select 1;
+disconnection default;
+connection wait_con;
+connection con1;
+--disable_reconnect;
+SELECT 1;
1
1
-select 2;
+connection wait_con;
+connection con1;
+SELECT 2;
Got one of the listed errors
-select 3;
+--enable_reconnect;
+SELECT 3;
3
3
+SET @@global.wait_timeout= <start_value>;
+disconnection con1;
diff --git a/mysql-test/r/warnings.result b/mysql-test/r/warnings.result
index 94170a04674..8a87852d582 100644
--- a/mysql-test/r/warnings.result
+++ b/mysql-test/r/warnings.result
@@ -70,15 +70,15 @@ select @@warning_count;
1
drop table t1;
create table t1(a tinyint, b int not null, c date, d char(5));
-load data infile '../std_data_ln/warnings_loaddata.dat' into table t1 fields terminated by ',';
+load data infile '../../std_data/warnings_loaddata.dat' into table t1 fields terminated by ',';
Warnings:
-Warning 1263 Column was set to data type implicit default; NULL supplied for NOT NULL column 'b' at row 2
+Warning 1263 Column set to default value; NULL supplied to NOT NULL column 'b' at row 2
Warning 1265 Data truncated for column 'd' at row 3
Warning 1265 Data truncated for column 'c' at row 4
Warning 1261 Row 5 doesn't contain data for all columns
Warning 1265 Data truncated for column 'b' at row 6
Warning 1262 Row 7 was truncated; it contained more data than there were input columns
-Warning 1264 Out of range value adjusted for column 'a' at row 8
+Warning 1264 Out of range value for column 'a' at row 8
select @@warning_count;
@@warning_count
7
@@ -87,10 +87,10 @@ create table t1(a tinyint NOT NULL, b tinyint unsigned, c char(5));
insert into t1 values(NULL,100,'mysql'),(10,-1,'mysql ab'),(500,256,'open source'),(20,NULL,'test');
Warnings:
Warning 1048 Column 'a' cannot be null
-Warning 1264 Out of range value adjusted for column 'b' at row 2
+Warning 1264 Out of range value for column 'b' at row 2
Warning 1265 Data truncated for column 'c' at row 2
-Warning 1264 Out of range value adjusted for column 'a' at row 3
-Warning 1264 Out of range value adjusted for column 'b' at row 3
+Warning 1264 Out of range value for column 'a' at row 3
+Warning 1264 Out of range value for column 'b' at row 3
Warning 1265 Data truncated for column 'c' at row 3
alter table t1 modify c char(4);
Warnings:
@@ -166,30 +166,9 @@ show variables like 'max_error_count';
Variable_name Value
max_error_count 10
drop table t1;
-create table t1 (id int) engine=isam;
-Warnings:
-Warning 1266 Using storage engine MyISAM for table 't1'
-alter table t1 engine=isam;
-Warnings:
-Warning 1266 Using storage engine MyISAM for table 't1'
-drop table t1;
-create table t1 (id int) engine=merge;
-Warnings:
-Warning 1266 Using storage engine MyISAM for table 't1'
-alter table t1 engine=merge;
-Warnings:
-Warning 1266 Using storage engine MyISAM for table 't1'
-drop table t1;
-create table t1 (id int) type=heap;
-Warnings:
-Warning 1287 'TYPE=storage_engine' is deprecated; use 'ENGINE=storage_engine' instead
-alter table t1 type=myisam;
-Warnings:
-Warning 1287 'TYPE=storage_engine' is deprecated; use 'ENGINE=storage_engine' instead
-drop table t1;
set table_type=MYISAM;
Warnings:
-Warning 1287 'table_type' is deprecated; use 'storage_engine' instead
+Warning 1287 The syntax '@@table_type' is deprecated and will be removed in MySQL 6.0. Please use '@@storage_engine' instead
create table t1 (a int);
insert into t1 (a) values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
update t1 set a='abc';
@@ -334,4 +313,9 @@ ERROR 22001: Data too long for column 'c_tinytext' at row 1
insert into t2 values(@q);
ERROR 22001: Data too long for column 'c_tinyblob' at row 1
drop table t1, t2;
+DROP TABLE t1;
+ERROR 42S02: Unknown table 't1'
+SHOW ERRORS;
+Level Code Message
+Error 1051 Unknown table 't1'
End of 5.0 tests
diff --git a/mysql-test/r/warnings_engine_disabled.result b/mysql-test/r/warnings_engine_disabled.result
new file mode 100644
index 00000000000..e5d35fdaa5f
--- /dev/null
+++ b/mysql-test/r/warnings_engine_disabled.result
@@ -0,0 +1,15 @@
+create table t1 (id int) engine=NDB;
+Warnings:
+Warning 1286 Unknown table engine 'NDB'
+Warning 1266 Using storage engine MyISAM for table 't1'
+alter table t1 engine=NDB;
+Warnings:
+Warning 1286 Unknown table engine 'NDB'
+drop table t1;
+SELECT ENGINE, SUPPORT FROM INFORMATION_SCHEMA.ENGINES WHERE ENGINE='ndbcluster';
+ENGINE SUPPORT
+ndbcluster NO
+SELECT PLUGIN_NAME, PLUGIN_STATUS FROM INFORMATION_SCHEMA.PLUGINS WHERE
+PLUGIN_NAME='ndbcluster';
+PLUGIN_NAME PLUGIN_STATUS
+ndbcluster DISABLED
diff --git a/mysql-test/r/windows.require b/mysql-test/r/windows.require
new file mode 100644
index 00000000000..09aae1ed1d0
--- /dev/null
+++ b/mysql-test/r/windows.require
@@ -0,0 +1,2 @@
+TRUE
+1
diff --git a/mysql-test/r/windows.result b/mysql-test/r/windows.result
index 43ba878b9a5..d0cdd858d4a 100644
--- a/mysql-test/r/windows.result
+++ b/mysql-test/r/windows.result
@@ -9,8 +9,8 @@ drop table nu;
drop table if exists t1;
CREATE TABLE t1 ( `ID` int(6) ) data directory 'c:/tmp/' index directory 'c:/tmp/' engine=MyISAM;
Warnings:
-Warning 0 DATA DIRECTORY option ignored
-Warning 0 INDEX DIRECTORY option ignored
+Warning 1618 <DATA DIRECTORY> option ignored
+Warning 1618 <INDEX DIRECTORY> option ignored
drop table t1;
CREATE TABLE t1 (a int, b int);
INSERT INTO t1 VALUES (1,1);
@@ -38,3 +38,25 @@ DROP FUNCTION `testdb`.`test_fn2`;
USE test;
DROP DATABASE `TESTDB`;
End of 5.0 tests.
+drop procedure if exists proc_1;
+create procedure proc_1() install plugin my_plug soname '\\root\\some_plugin.dll';
+call proc_1();
+ERROR HY000: No paths allowed for shared library
+call proc_1();
+ERROR HY000: No paths allowed for shared library
+call proc_1();
+ERROR HY000: No paths allowed for shared library
+drop procedure proc_1;
+prepare abc from "install plugin my_plug soname '\\\\root\\\\some_plugin.dll'";
+execute abc;
+ERROR HY000: No paths allowed for shared library
+execute abc;
+ERROR HY000: No paths allowed for shared library
+deallocate prepare abc;
+#
+# Bug#45498: Socket variable not available on Windows
+#
+SELECT VARIABLE_NAME FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME = 'socket';
+VARIABLE_NAME
+SOCKET
diff --git a/mysql-test/r/xa.result b/mysql-test/r/xa.result
index 592cf07522b..a597806d897 100644
--- a/mysql-test/r/xa.result
+++ b/mysql-test/r/xa.result
@@ -75,3 +75,17 @@ xa rollback 'a','c';
xa start 'a','c';
drop table t1;
End of 5.0 tests
+xa start 'a';
+xa end 'a';
+xa rollback 'a';
+xa start 'a';
+xa end 'a';
+xa rollback 'a';
+xa start 'a';
+xa end 'a';
+xa prepare 'a';
+xa commit 'a';
+xa start 'a';
+xa end 'a';
+xa prepare 'a';
+xa commit 'a';
diff --git a/mysql-test/r/xml.result b/mysql-test/r/xml.result
new file mode 100644
index 00000000000..fad2cab0e57
--- /dev/null
+++ b/mysql-test/r/xml.result
@@ -0,0 +1,1096 @@
+SET @xml='<a aa1="aa1" aa2="aa2">a1<b ba1="ba1">b1<c>c1</c>b2</b>a2</a>';
+SELECT extractValue(@xml,'/a');
+extractValue(@xml,'/a')
+a1 a2
+SELECT extractValue(@xml,'/a/b');
+extractValue(@xml,'/a/b')
+b1 b2
+SELECT extractValue(@xml,'/a/b/c');
+extractValue(@xml,'/a/b/c')
+c1
+SELECT extractValue(@xml,'/a/@aa1');
+extractValue(@xml,'/a/@aa1')
+aa1
+SELECT extractValue(@xml,'/a/@aa2');
+extractValue(@xml,'/a/@aa2')
+aa2
+SELECT extractValue(@xml,'/a/@*');
+extractValue(@xml,'/a/@*')
+aa1 aa2
+SELECT extractValue(@xml,'//@ba1');
+extractValue(@xml,'//@ba1')
+ba1
+SELECT extractValue(@xml,'//a');
+extractValue(@xml,'//a')
+a1 a2
+SELECT extractValue(@xml,'//b');
+extractValue(@xml,'//b')
+b1 b2
+SELECT extractValue(@xml,'//c');
+extractValue(@xml,'//c')
+c1
+SELECT extractValue(@xml,'/a//b');
+extractValue(@xml,'/a//b')
+b1 b2
+SELECT extractValue(@xml,'/a//c');
+extractValue(@xml,'/a//c')
+c1
+SELECT extractValue(@xml,'//*');
+extractValue(@xml,'//*')
+a1 b1 c1 b2 a2
+SELECT extractValue(@xml,'/a//*');
+extractValue(@xml,'/a//*')
+b1 c1 b2
+SELECT extractValue(@xml,'/./a');
+extractValue(@xml,'/./a')
+a1 a2
+SELECT extractValue(@xml,'/a/b/.');
+extractValue(@xml,'/a/b/.')
+b1 b2
+SELECT extractValue(@xml,'/a/b/..');
+extractValue(@xml,'/a/b/..')
+a1 a2
+SELECT extractValue(@xml,'/a/b/../@aa1');
+extractValue(@xml,'/a/b/../@aa1')
+aa1
+SELECT extractValue(@xml,'/*');
+extractValue(@xml,'/*')
+a1 a2
+SELECT extractValue(@xml,'/*/*');
+extractValue(@xml,'/*/*')
+b1 b2
+SELECT extractValue(@xml,'/*/*/*');
+extractValue(@xml,'/*/*/*')
+c1
+SELECT extractValue(@xml,'/a/child::*');
+extractValue(@xml,'/a/child::*')
+b1 b2
+SELECT extractValue(@xml,'/a/self::*');
+extractValue(@xml,'/a/self::*')
+a1 a2
+SELECT extractValue(@xml,'/a/descendant::*');
+extractValue(@xml,'/a/descendant::*')
+b1 c1 b2
+SELECT extractValue(@xml,'/a/descendant-or-self::*');
+extractValue(@xml,'/a/descendant-or-self::*')
+a1 b1 c1 b2 a2
+SELECT extractValue(@xml,'/a/attribute::*');
+extractValue(@xml,'/a/attribute::*')
+aa1 aa2
+SELECT extractValue(@xml,'/a/b/c/parent::*');
+extractValue(@xml,'/a/b/c/parent::*')
+b1 b2
+SELECT extractValue(@xml,'/a/b/c/ancestor::*');
+extractValue(@xml,'/a/b/c/ancestor::*')
+a1 b1 b2 a2
+SELECT extractValue(@xml,'/a/b/c/ancestor-or-self::*');
+extractValue(@xml,'/a/b/c/ancestor-or-self::*')
+a1 b1 c1 b2 a2
+SELECT extractValue(@xml,'/descendant-or-self::*');
+extractValue(@xml,'/descendant-or-self::*')
+a1 b1 c1 b2 a2
+SET @xml='<a>a11<b ba="ba11" ba="ba12">b11</b><b ba="ba21" ba="ba22">b21<c>c1</c>b22</b>a12</a>';
+SELECT extractValue(@xml,'/a/b/c/ancestor-or-self::*');
+extractValue(@xml,'/a/b/c/ancestor-or-self::*')
+a11 b21 c1 b22 a12
+SELECT extractValue(@xml,'//@ba');
+extractValue(@xml,'//@ba')
+ba11 ba12 ba21 ba22
+SET @xml='<a><b>b</b><c>c</c></a>';
+SELECT extractValue(@xml,'/a/b');
+extractValue(@xml,'/a/b')
+b
+SELECT extractValue(@xml,'/a/c');
+extractValue(@xml,'/a/c')
+c
+SELECT extractValue(@xml,'/a/child::b');
+extractValue(@xml,'/a/child::b')
+b
+SELECT extractValue(@xml,'/a/child::c');
+extractValue(@xml,'/a/child::c')
+c
+SET @xml='<a><b>b1</b><c>c1</c><b>b2</b><c>c2</c></a>';
+SELECT extractValue(@xml,'/a/b[1]');
+extractValue(@xml,'/a/b[1]')
+b1
+SELECT extractValue(@xml,'/a/b[2]');
+extractValue(@xml,'/a/b[2]')
+b2
+SELECT extractValue(@xml,'/a/c[1]');
+extractValue(@xml,'/a/c[1]')
+c1
+SELECT extractValue(@xml,'/a/c[2]');
+extractValue(@xml,'/a/c[2]')
+c2
+SET @xml='<a><b x="xb1" x="xb2"/><c x="xc1" x="xc2"/></a>';
+SELECT extractValue(@xml,'/a//@x');
+extractValue(@xml,'/a//@x')
+xb1 xb2 xc1 xc2
+SELECT extractValue(@xml,'/a//@x[1]');
+extractValue(@xml,'/a//@x[1]')
+xb1 xc1
+SELECT extractValue(@xml,'/a//@x[2]');
+extractValue(@xml,'/a//@x[2]')
+xb2 xc2
+SET @xml='<a><b>b1</b><b>b2</b><c><b>c1b1</b><b>c1b2</b></c><c><b>c2b1</c></b></a>';
+SELECT extractValue(@xml,'//b[1]');
+extractValue(@xml,'//b[1]')
+b1 c1b1 c2b1
+SELECT extractValue(@xml,'/descendant::b[1]');
+extractValue(@xml,'/descendant::b[1]')
+b1
+SET @xml='<a><b>b1</b><b>b2</b></a>';
+SELECT extractValue(@xml,'/a/b[1+0]');
+extractValue(@xml,'/a/b[1+0]')
+b1
+SELECT extractValue(@xml,'/a/b[1*1]');
+extractValue(@xml,'/a/b[1*1]')
+b1
+SELECT extractValue(@xml,'/a/b[--1]');
+extractValue(@xml,'/a/b[--1]')
+b1
+SELECT extractValue(@xml,'/a/b[2*1-1]');
+extractValue(@xml,'/a/b[2*1-1]')
+b1
+SELECT extractValue(@xml,'/a/b[1+1]');
+extractValue(@xml,'/a/b[1+1]')
+b2
+SELECT extractValue(@xml,'/a/b[1*2]');
+extractValue(@xml,'/a/b[1*2]')
+b2
+SELECT extractValue(@xml,'/a/b[--2]');
+extractValue(@xml,'/a/b[--2]')
+b2
+SELECT extractValue(@xml,'/a/b[1*(3-1)]');
+extractValue(@xml,'/a/b[1*(3-1)]')
+b2
+SELECT extractValue(@xml,'//*[1=1]');
+extractValue(@xml,'//*[1=1]')
+b1 b2
+SELECT extractValue(@xml,'//*[1!=1]');
+extractValue(@xml,'//*[1!=1]')
+
+SELECT extractValue(@xml,'//*[1>1]');
+extractValue(@xml,'//*[1>1]')
+
+SELECT extractValue(@xml,'//*[2>1]');
+extractValue(@xml,'//*[2>1]')
+b1 b2
+SELECT extractValue(@xml,'//*[1>2]');
+extractValue(@xml,'//*[1>2]')
+
+SELECT extractValue(@xml,'//*[1>=1]');
+extractValue(@xml,'//*[1>=1]')
+b1 b2
+SELECT extractValue(@xml,'//*[2>=1]');
+extractValue(@xml,'//*[2>=1]')
+b1 b2
+SELECT extractValue(@xml,'//*[1>=2]');
+extractValue(@xml,'//*[1>=2]')
+
+SELECT extractValue(@xml,'//*[1<1]');
+extractValue(@xml,'//*[1<1]')
+
+SELECT extractValue(@xml,'//*[2<1]');
+extractValue(@xml,'//*[2<1]')
+
+SELECT extractValue(@xml,'//*[1<2]');
+extractValue(@xml,'//*[1<2]')
+b1 b2
+SELECT extractValue(@xml,'//*[1<=1]');
+extractValue(@xml,'//*[1<=1]')
+b1 b2
+SELECT extractValue(@xml,'//*[2<=1]');
+extractValue(@xml,'//*[2<=1]')
+
+SELECT extractValue(@xml,'//*[1<=2]');
+extractValue(@xml,'//*[1<=2]')
+b1 b2
+SET @xml='<a><b>b11<c>c11</c></b><b>b21<c>c21</c></b></a>';
+SELECT extractValue(@xml,'/a/b[c="c11"]');
+extractValue(@xml,'/a/b[c="c11"]')
+b11
+SELECT extractValue(@xml,'/a/b[c="c21"]');
+extractValue(@xml,'/a/b[c="c21"]')
+b21
+SET @xml='<a><b c="c11">b11</b><b c="c21">b21</b></a>';
+SELECT extractValue(@xml,'/a/b[@c="c11"]');
+extractValue(@xml,'/a/b[@c="c11"]')
+b11
+SELECT extractValue(@xml,'/a/b[@c="c21"]');
+extractValue(@xml,'/a/b[@c="c21"]')
+b21
+SET @xml='<a>a1<b c="c11">b11<d>d11</d></b><b c="c21">b21<d>d21</d></b></a>';
+SELECT extractValue(@xml, '/a/b[@c="c11"]/d');
+extractValue(@xml, '/a/b[@c="c11"]/d')
+d11
+SELECT extractValue(@xml, '/a/b[@c="c21"]/d');
+extractValue(@xml, '/a/b[@c="c21"]/d')
+d21
+SELECT extractValue(@xml, '/a/b[d="d11"]/@c');
+extractValue(@xml, '/a/b[d="d11"]/@c')
+c11
+SELECT extractValue(@xml, '/a/b[d="d21"]/@c');
+extractValue(@xml, '/a/b[d="d21"]/@c')
+c21
+SELECT extractValue(@xml, '/a[b="b11"]');
+extractValue(@xml, '/a[b="b11"]')
+a1
+SELECT extractValue(@xml, '/a[b/@c="c11"]');
+extractValue(@xml, '/a[b/@c="c11"]')
+a1
+SELECT extractValue(@xml, '/a[b/d="d11"]');
+extractValue(@xml, '/a[b/d="d11"]')
+a1
+SELECT extractValue(@xml, '/a[/a/b="b11"]');
+extractValue(@xml, '/a[/a/b="b11"]')
+a1
+SELECT extractValue(@xml, '/a[/a/b/@c="c11"]');
+extractValue(@xml, '/a[/a/b/@c="c11"]')
+a1
+SELECT extractValue(@xml, '/a[/a/b/d="d11"]');
+extractValue(@xml, '/a[/a/b/d="d11"]')
+a1
+SELECT extractValue('<a>a</a>', '/a[false()]');
+extractValue('<a>a</a>', '/a[false()]')
+
+SELECT extractValue('<a>a</a>', '/a[true()]');
+extractValue('<a>a</a>', '/a[true()]')
+a
+SELECT extractValue('<a>a</a>', '/a[not(false())]');
+extractValue('<a>a</a>', '/a[not(false())]')
+a
+SELECT extractValue('<a>a</a>', '/a[not(true())]');
+extractValue('<a>a</a>', '/a[not(true())]')
+
+SELECT extractValue('<a>a</a>', '/a[true() and true()]');
+extractValue('<a>a</a>', '/a[true() and true()]')
+a
+SELECT extractValue('<a>a</a>', '/a[true() and false()]');
+extractValue('<a>a</a>', '/a[true() and false()]')
+
+SELECT extractValue('<a>a</a>', '/a[false()and false()]');
+extractValue('<a>a</a>', '/a[false()and false()]')
+
+SELECT extractValue('<a>a</a>', '/a[false()and true()]');
+extractValue('<a>a</a>', '/a[false()and true()]')
+
+SELECT extractValue('<a>a</a>', '/a[true() or true()]');
+extractValue('<a>a</a>', '/a[true() or true()]')
+a
+SELECT extractValue('<a>a</a>', '/a[true() or false()]');
+extractValue('<a>a</a>', '/a[true() or false()]')
+a
+SELECT extractValue('<a>a</a>', '/a[false()or false()]');
+extractValue('<a>a</a>', '/a[false()or false()]')
+
+SELECT extractValue('<a>a</a>', '/a[false()or true()]');
+extractValue('<a>a</a>', '/a[false()or true()]')
+a
+SET @xml='<a>ab<b c="c" c="e">b1</b><b c="d">b2</b><b c="f" c="e">b3</b></a>';
+select extractValue(@xml,'/a/b[@c="c"]');
+extractValue(@xml,'/a/b[@c="c"]')
+b1
+select extractValue(@xml,'/a/b[@c="d"]');
+extractValue(@xml,'/a/b[@c="d"]')
+b2
+select extractValue(@xml,'/a/b[@c="e"]');
+extractValue(@xml,'/a/b[@c="e"]')
+b1 b3
+select extractValue(@xml,'/a/b[not(@c="e")]');
+extractValue(@xml,'/a/b[not(@c="e")]')
+b2
+select extractValue(@xml,'/a/b[@c!="e"]');
+extractValue(@xml,'/a/b[@c!="e"]')
+b1 b2 b3
+select extractValue(@xml,'/a/b[@c="c" or @c="d"]');
+extractValue(@xml,'/a/b[@c="c" or @c="d"]')
+b1 b2
+select extractValue(@xml,'/a/b[@c="c" and @c="e"]');
+extractValue(@xml,'/a/b[@c="c" and @c="e"]')
+b1
+SET @xml='<a><b c="c" d="d">b1</b><b d="d" e="e">b2</b></a>';
+select extractValue(@xml,'/a/b[@c]');
+extractValue(@xml,'/a/b[@c]')
+b1
+select extractValue(@xml,'/a/b[@d]');
+extractValue(@xml,'/a/b[@d]')
+b1 b2
+select extractValue(@xml,'/a/b[@e]');
+extractValue(@xml,'/a/b[@e]')
+b2
+select extractValue(@xml,'/a/b[not(@c)]');
+extractValue(@xml,'/a/b[not(@c)]')
+b2
+select extractValue(@xml,'/a/b[not(@d)]');
+extractValue(@xml,'/a/b[not(@d)]')
+
+select extractValue(@xml,'/a/b[not(@e)]');
+extractValue(@xml,'/a/b[not(@e)]')
+b1
+select extractValue(@xml, '/a/b[boolean(@c) or boolean(@d)]');
+extractValue(@xml, '/a/b[boolean(@c) or boolean(@d)]')
+b1 b2
+select extractValue(@xml, '/a/b[boolean(@c) or boolean(@e)]');
+extractValue(@xml, '/a/b[boolean(@c) or boolean(@e)]')
+b1 b2
+select extractValue(@xml, '/a/b[boolean(@d) or boolean(@e)]');
+extractValue(@xml, '/a/b[boolean(@d) or boolean(@e)]')
+b1 b2
+select extractValue(@xml, '/a/b[boolean(@c) and boolean(@d)]');
+extractValue(@xml, '/a/b[boolean(@c) and boolean(@d)]')
+b1
+select extractValue(@xml, '/a/b[boolean(@c) and boolean(@e)]');
+extractValue(@xml, '/a/b[boolean(@c) and boolean(@e)]')
+
+select extractValue(@xml, '/a/b[boolean(@d) and boolean(@e)]');
+extractValue(@xml, '/a/b[boolean(@d) and boolean(@e)]')
+b2
+select extractValue(@xml, '/a/b[@c or @d]');
+extractValue(@xml, '/a/b[@c or @d]')
+b1 b2
+select extractValue(@xml, '/a/b[@c or @e]');
+extractValue(@xml, '/a/b[@c or @e]')
+b1 b2
+select extractValue(@xml, '/a/b[@d or @e]');
+extractValue(@xml, '/a/b[@d or @e]')
+b1 b2
+select extractValue(@xml, '/a/b[@c and @d]');
+extractValue(@xml, '/a/b[@c and @d]')
+b1
+select extractValue(@xml, '/a/b[@c and @e]');
+extractValue(@xml, '/a/b[@c and @e]')
+
+select extractValue(@xml, '/a/b[@d and @e]');
+extractValue(@xml, '/a/b[@d and @e]')
+b2
+SET @xml='<a><b c="c">b1</b><b>b2</b></a>';
+SELECT extractValue(@xml,'/a/b[@*]');
+extractValue(@xml,'/a/b[@*]')
+b1
+SELECT extractValue(@xml,'/a/b[not(@*)]');
+extractValue(@xml,'/a/b[not(@*)]')
+b2
+SELECT extractValue('<a>a</a>', '/a[ceiling(3.1)=4]');
+extractValue('<a>a</a>', '/a[ceiling(3.1)=4]')
+a
+SELECT extractValue('<a>a</a>', '/a[floor(3.1)=3]');
+extractValue('<a>a</a>', '/a[floor(3.1)=3]')
+a
+SELECT extractValue('<a>a</a>', '/a[round(3.1)=3]');
+extractValue('<a>a</a>', '/a[round(3.1)=3]')
+a
+SELECT extractValue('<a>a</a>', '/a[round(3.8)=4]');
+extractValue('<a>a</a>', '/a[round(3.8)=4]')
+a
+SELECT extractValue('<a><b>b</b><c>c</c></a>', '/a/b | /a/c');
+extractValue('<a><b>b</b><c>c</c></a>', '/a/b | /a/c')
+b c
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=1]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=1]')
+b1
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=2]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=2]')
+b2
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=3]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=3]')
+b3
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[1=position()]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[1=position()]')
+b1
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[2=position()]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[2=position()]')
+b2
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[3=position()]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[3=position()]')
+b3
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[2>=position()]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[2>=position()]')
+b1 b2
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[2<=position()]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[2<=position()]')
+b2 b3
+select extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=3 or position()=2]');
+extractValue('<a b="b1" b="b2" b="b3"/>','/a/@b[position()=3 or position()=2]')
+b2 b3
+SELECT extractValue('<a>a<b>a1<c>c1</c></b><b>a2</b></a>','/a/b[count(c)=0]');
+extractValue('<a>a<b>a1<c>c1</c></b><b>a2</b></a>','/a/b[count(c)=0]')
+a2
+SELECT extractValue('<a>a<b>a1<c>c1</c></b><b>a2</b></a>','/a/b[count(c)=1]');
+extractValue('<a>a<b>a1<c>c1</c></b><b>a2</b></a>','/a/b[count(c)=1]')
+a1
+select extractValue('<a>a1<b ba="1" ba="2">b1</b><b>b2</b>4</a>','/a/b[sum(@ba)=3]');
+extractValue('<a>a1<b ba="1" ba="2">b1</b><b>b2</b>4</a>','/a/b[sum(@ba)=3]')
+b1
+select extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[1]');
+extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[1]')
+b1
+select extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[boolean(1)]');
+extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[boolean(1)]')
+b1 b2
+select extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[true()]');
+extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[true()]')
+b1 b2
+select extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[number(true())]');
+extractValue('<a><b>b1</b><b>b2</b></a>','/a/b[number(true())]')
+b1
+select extractValue('<a>ab</a>','/a[contains("abc","b")]');
+extractValue('<a>ab</a>','/a[contains("abc","b")]')
+ab
+select extractValue('<a>ab</a>','/a[contains(.,"a")]');
+extractValue('<a>ab</a>','/a[contains(.,"a")]')
+ab
+select extractValue('<a>ab</a>','/a[contains(.,"b")]');
+extractValue('<a>ab</a>','/a[contains(.,"b")]')
+ab
+select extractValue('<a>ab</a>','/a[contains(.,"c")]');
+extractValue('<a>ab</a>','/a[contains(.,"c")]')
+
+select extractValue('<a b="1">ab</a>','/a[concat(@b,"2")="12"]');
+extractValue('<a b="1">ab</a>','/a[concat(@b,"2")="12"]')
+ab
+SET @xml='<a b="11" b="12" b="21" b="22">ab</a>';
+select extractValue(@xml, '/a/@b[substring(.,2)="1"]');
+extractValue(@xml, '/a/@b[substring(.,2)="1"]')
+11 21
+select extractValue(@xml, '/a/@b[substring(.,2)="2"]');
+extractValue(@xml, '/a/@b[substring(.,2)="2"]')
+12 22
+select extractValue(@xml, '/a/@b[substring(.,1,1)="1"]');
+extractValue(@xml, '/a/@b[substring(.,1,1)="1"]')
+11 12
+select extractValue(@xml, '/a/@b[substring(.,1,1)="2"]');
+extractValue(@xml, '/a/@b[substring(.,1,1)="2"]')
+21 22
+select extractValue(@xml, '/a/@b[substring(.,2,1)="1"]');
+extractValue(@xml, '/a/@b[substring(.,2,1)="1"]')
+11 21
+select extractValue(@xml, '/a/@b[substring(.,2,1)="2"]');
+extractValue(@xml, '/a/@b[substring(.,2,1)="2"]')
+12 22
+SET @xml='<a><b>b1</b><b>b2</b></a>';
+SELECT extractValue(@xml, '/a/b[string-length("x")=1]');
+extractValue(@xml, '/a/b[string-length("x")=1]')
+b1 b2
+SELECT extractValue(@xml, '/a/b[string-length("xx")=2]');
+extractValue(@xml, '/a/b[string-length("xx")=2]')
+b1 b2
+SELECT extractValue(@xml, '/a/b[string-length("xxx")=2]');
+extractValue(@xml, '/a/b[string-length("xxx")=2]')
+
+SELECT extractValue(@xml, '/a/b[string-length("x")]');
+extractValue(@xml, '/a/b[string-length("x")]')
+b1
+SELECT extractValue(@xml, '/a/b[string-length("xx")]');
+extractValue(@xml, '/a/b[string-length("xx")]')
+b2
+SELECT extractValue(@xml, '/a/b[string-length()]');
+extractValue(@xml, '/a/b[string-length()]')
+b2
+SELECT extractValue(@xml, 'string-length()');
+ERROR HY000: XPATH syntax error: ''
+SELECT extractValue(@xml, 'string-length("x")');
+extractValue(@xml, 'string-length("x")')
+1
+SET @xml='<a b="b11" b="b12" b="b21" b="22"/>';
+select extractValue(@xml,'/a/@b');
+extractValue(@xml,'/a/@b')
+b11 b12 b21 22
+select extractValue(@xml,'/a/@b[contains(.,"1")]');
+extractValue(@xml,'/a/@b[contains(.,"1")]')
+b11 b12 b21
+select extractValue(@xml,'/a/@b[contains(.,"1")][contains(.,"2")]');
+extractValue(@xml,'/a/@b[contains(.,"1")][contains(.,"2")]')
+b12 b21
+select extractValue(@xml,'/a/@b[contains(.,"1")][contains(.,"2")][2]');
+extractValue(@xml,'/a/@b[contains(.,"1")][contains(.,"2")][2]')
+b21
+SET @xml='<a>a1<b>b1<c>c1</c>b2</b>a2</a>';
+select UpdateXML('<a>a1<b>b1<c>c1</c>b2</b>a2</a>','/a/b/c','+++++++++');
+UpdateXML('<a>a1<b>b1<c>c1</c>b2</b>a2</a>','/a/b/c','+++++++++')
+<a>a1<b>b1+++++++++b2</b>a2</a>
+select UpdateXML('<a>a1<b>b1<c>c1</c>b2</b>a2</a>','/a/b/c','<c1>+++++++++</c1>');
+UpdateXML('<a>a1<b>b1<c>c1</c>b2</b>a2</a>','/a/b/c','<c1>+++++++++</c1>')
+<a>a1<b>b1<c1>+++++++++</c1>b2</b>a2</a>
+select UpdateXML('<a>a1<b>b1<c>c1</c>b2</b>a2</a>','/a/b/c','<c1/>');
+UpdateXML('<a>a1<b>b1<c>c1</c>b2</b>a2</a>','/a/b/c','<c1/>')
+<a>a1<b>b1<c1/>b2</b>a2</a>
+SET @xml='<a><b>bb</b></a>';
+select UpdateXML(@xml, '/a/b', '<b>ccc</b>');
+UpdateXML(@xml, '/a/b', '<b>ccc</b>')
+<a><b>ccc</b></a>
+SET @xml='<a aa1="aa1" aa2="aa2"><b bb1="bb1" bb2="bb2">bb</b></a>';
+select UpdateXML(@xml, '/a/b', '<b>ccc</b>');
+UpdateXML(@xml, '/a/b', '<b>ccc</b>')
+<a aa1="aa1" aa2="aa2"><b>ccc</b></a>
+select UpdateXML(@xml, '/a/@aa1', '');
+UpdateXML(@xml, '/a/@aa1', '')
+<a aa2="aa2"><b bb1="bb1" bb2="bb2">bb</b></a>
+select UpdateXML(@xml, '/a/@aa1', 'aa3="aa3"');
+UpdateXML(@xml, '/a/@aa1', 'aa3="aa3"')
+<a aa3="aa3" aa2="aa2"><b bb1="bb1" bb2="bb2">bb</b></a>
+select UpdateXML(@xml, '/a/@aa2', '');
+UpdateXML(@xml, '/a/@aa2', '')
+<a aa1="aa1" ><b bb1="bb1" bb2="bb2">bb</b></a>
+select UpdateXML(@xml, '/a/@aa2', 'aa3="aa3"');
+UpdateXML(@xml, '/a/@aa2', 'aa3="aa3"')
+<a aa1="aa1" aa3="aa3"><b bb1="bb1" bb2="bb2">bb</b></a>
+select UpdateXML(@xml, '/a/b/@bb1', '');
+UpdateXML(@xml, '/a/b/@bb1', '')
+<a aa1="aa1" aa2="aa2"><b bb2="bb2">bb</b></a>
+select UpdateXML(@xml, '/a/b/@bb1', 'bb3="bb3"');
+UpdateXML(@xml, '/a/b/@bb1', 'bb3="bb3"')
+<a aa1="aa1" aa2="aa2"><b bb3="bb3" bb2="bb2">bb</b></a>
+select UpdateXML(@xml, '/a/b/@bb2', '');
+UpdateXML(@xml, '/a/b/@bb2', '')
+<a aa1="aa1" aa2="aa2"><b bb1="bb1" >bb</b></a>
+select UpdateXML(@xml, '/a/b/@bb2', 'bb3="bb3"');
+UpdateXML(@xml, '/a/b/@bb2', 'bb3="bb3"')
+<a aa1="aa1" aa2="aa2"><b bb1="bb1" bb3="bb3">bb</b></a>
+select updatexml('<div><div><span>1</span><span>2</span></div></div>',
+'/','<tr><td>1</td><td>2</td></tr>') as upd1;
+upd1
+<tr><td>1</td><td>2</td></tr>
+select updatexml('', '/', '') as upd2;
+upd2
+
+SET @xml= '<order><clerk>lesser wombat</clerk></order>';
+select extractvalue(@xml,'order/clerk');
+extractvalue(@xml,'order/clerk')
+lesser wombat
+select extractvalue(@xml,'/order/clerk');
+extractvalue(@xml,'/order/clerk')
+lesser wombat
+select extractvalue('<a><b>B</b></a>','/a|/b');
+extractvalue('<a><b>B</b></a>','/a|/b')
+
+select extractvalue('<a><b>B</b></a>','/a|b');
+extractvalue('<a><b>B</b></a>','/a|b')
+
+select extractvalue('<a>a<b>B</b></a>','/a|/b');
+extractvalue('<a>a<b>B</b></a>','/a|/b')
+a
+select extractvalue('<a>a<b>B</b></a>','/a|b');
+extractvalue('<a>a<b>B</b></a>','/a|b')
+a
+select extractvalue('<a>a<b>B</b></a>','a|/b');
+extractvalue('<a>a<b>B</b></a>','a|/b')
+a
+select extractvalue('<a>A</a>','/<a>');
+ERROR HY000: XPATH error: comparison of two nodesets is not supported: '<a>'
+select extractvalue('<a><b>b</b><b!>b!</b!></a>','//b!');
+ERROR HY000: XPATH syntax error: '!'
+select extractvalue('<a>A<b>B<c>C</c></b></a>','/a/descendant::*');
+extractvalue('<a>A<b>B<c>C</c></b></a>','/a/descendant::*')
+B C
+select extractvalue('<a>A<b>B<c>C</c></b></a>','/a/self::*');
+extractvalue('<a>A<b>B<c>C</c></b></a>','/a/self::*')
+A
+select extractvalue('<a>A<b>B<c>C</c></b></a>','/a/descendant-or-self::*');
+extractvalue('<a>A<b>B<c>C</c></b></a>','/a/descendant-or-self::*')
+A B C
+select extractvalue('<A_B>A</A_B>','/A_B');
+extractvalue('<A_B>A</A_B>','/A_B')
+A
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[position()]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[position()]')
+B1 B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=last()]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=last()]')
+B1 B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()]')
+B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()-1]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()-1]')
+B1
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()=1]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()=1]')
+
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()=2]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()=2]')
+B1 B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()=position()]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[last()=position()]')
+B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)]')
+B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)-1]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)-1]')
+B1
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=1]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=1]')
+
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=2]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=2]')
+B1 B2
+select extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=position()]');
+extractvalue('<a>A<b>B1</b><b>B2</b></a>','/a/b[count(.)=position()]')
+B2
+select extractvalue('<a>Jack</a>','/a[contains(../a,"J")]');
+extractvalue('<a>Jack</a>','/a[contains(../a,"J")]')
+Jack
+select extractvalue('<a>Jack</a>','/a[contains(../a,"j")]');
+extractvalue('<a>Jack</a>','/a[contains(../a,"j")]')
+Jack
+select extractvalue('<a>Jack</a>','/a[contains(../a,"j")]' collate latin1_bin);
+extractvalue('<a>Jack</a>','/a[contains(../a,"j")]' collate latin1_bin)
+
+select extractvalue('<a>Jack</a>' collate latin1_bin,'/a[contains(../a,"j")]');
+extractvalue('<a>Jack</a>' collate latin1_bin,'/a[contains(../a,"j")]')
+
+select ExtractValue('<tag1><![CDATA[test]]></tag1>','/tag1');
+ExtractValue('<tag1><![CDATA[test]]></tag1>','/tag1')
+test
+select extractValue('<a>a','/a');
+extractValue('<a>a','/a')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 5: unexpected END-OF-INPUT'
+select extractValue('<a>a<','/a');
+extractValue('<a>a<','/a')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 6: END-OF-INPUT unexpected (ident or '/' wanted)'
+select extractValue('<a>a</','/a');
+extractValue('<a>a</','/a')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 7: END-OF-INPUT unexpected (ident wanted)'
+select extractValue('<a>a</a','/a');
+extractValue('<a>a</a','/a')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 8: END-OF-INPUT unexpected ('>' wanted)'
+select extractValue('<a>a</a></b>','/a');
+extractValue('<a>a</a></b>','/a')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 12: '</b>' unexpected (END-OF-INPUT wanted)'
+select extractValue('<a b=>a</a>','/a');
+extractValue('<a b=>a</a>','/a')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 7: '>' unexpected (ident or string wanted)'
+select extractValue('<e>1</e>','position()');
+ERROR HY000: XPATH syntax error: ''
+select extractValue('<e>1</e>','last()');
+ERROR HY000: XPATH syntax error: ''
+select extractValue('<e><a>1</a></e>','/e/');
+ERROR HY000: XPATH syntax error: ''
+set names utf8;
+select extractValue('<Ñ><r>r</r></Ñ>','/Ñ/r');
+extractValue('<Ñ><r>r</r></Ñ>','/Ñ/r')
+r
+select extractValue('<r><Ñ>Ñ</Ñ></r>','/r/Ñ');
+extractValue('<r><Ñ>Ñ</Ñ></r>','/r/Ñ')
+select extractValue('<Ñ r="r"/>','/Ñ/@r');
+extractValue('<Ñ r="r"/>','/Ñ/@r')
+r
+select extractValue('<r Ñ="Ñ"/>','/r/@Ñ');
+extractValue('<r Ñ="Ñ"/>','/r/@Ñ')
+DROP PROCEDURE IF EXISTS p2;
+CREATE PROCEDURE p2 ()
+BEGIN
+DECLARE p LONGTEXT CHARACTER SET UTF8 DEFAULT '<Ñ><r>A</r></Ñ>';
+SELECT EXTRACTVALUE(p,'/Ñ/r');
+END//
+CALL p2();
+EXTRACTVALUE(p,'/Ñ/r')
+A
+DROP PROCEDURE p2;
+select extractValue('<ns:element xmlns:ns="myns"/>','count(ns:element)');
+extractValue('<ns:element xmlns:ns="myns"/>','count(ns:element)')
+1
+select extractValue('<ns:element xmlns:ns="myns">a</ns:element>','/ns:element');
+extractValue('<ns:element xmlns:ns="myns">a</ns:element>','/ns:element')
+a
+select extractValue('<ns:element xmlns:ns="myns">a</ns:element>','/ns:element/@xmlns:ns');
+extractValue('<ns:element xmlns:ns="myns">a</ns:element>','/ns:element/@xmlns:ns')
+myns
+select extractValue('<foo><foo.bar>Data</foo.bar><something>Otherdata</something></foo>','/foo/foo.bar');
+extractValue('<foo><foo.bar>Data</foo.bar><something>Otherdata</something></foo>','/foo/foo.bar')
+Data
+select extractValue('<foo><foo.bar>Data</foo.bar><something>Otherdata</something></foo>','/foo/something');
+extractValue('<foo><foo.bar>Data</foo.bar><something>Otherdata</something></foo>','/foo/something')
+Otherdata
+select extractValue('<zot><tim0><01>10:39:15</01><02>140</02></tim0></zot>','/zot/tim0/02');
+ERROR HY000: XPATH syntax error: '02'
+select extractValue('<zot><tim0><01>10:39:15</01><02>140</02></tim0></zot>','//*');
+extractValue('<zot><tim0><01>10:39:15</01><02>140</02></tim0></zot>','//*')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 13: unknown token unexpected (ident or '/' wanted)'
+select extractValue('<.>test</.>','//*');
+extractValue('<.>test</.>','//*')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 2: unknown token unexpected (ident or '/' wanted)'
+select extractValue('<->test</->','//*');
+extractValue('<->test</->','//*')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 2: unknown token unexpected (ident or '/' wanted)'
+select extractValue('<:>test</:>','//*');
+extractValue('<:>test</:>','//*')
+test
+select extractValue('<_>test</_>','//*');
+extractValue('<_>test</_>','//*')
+test
+select extractValue('<x.-_:>test</x.-_:>','//*');
+extractValue('<x.-_:>test</x.-_:>','//*')
+test
+set @xml= "<entry><id>pt10</id><pt>10</pt></entry><entry><id>pt50</id><pt>50</pt></entry>";
+select ExtractValue(@xml, "/entry[(pt=10)]/id");
+ExtractValue(@xml, "/entry[(pt=10)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(pt!=10)]/id");
+ExtractValue(@xml, "/entry[(pt!=10)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(pt<10)]/id");
+ExtractValue(@xml, "/entry[(pt<10)]/id")
+
+select ExtractValue(@xml, "/entry[(pt<=10)]/id");
+ExtractValue(@xml, "/entry[(pt<=10)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(pt>10)]/id");
+ExtractValue(@xml, "/entry[(pt>10)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(pt>=10)]/id");
+ExtractValue(@xml, "/entry[(pt>=10)]/id")
+pt10 pt50
+select ExtractValue(@xml, "/entry[(pt=50)]/id");
+ExtractValue(@xml, "/entry[(pt=50)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(pt!=50)]/id");
+ExtractValue(@xml, "/entry[(pt!=50)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(pt<50)]/id");
+ExtractValue(@xml, "/entry[(pt<50)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(pt<=50)]/id");
+ExtractValue(@xml, "/entry[(pt<=50)]/id")
+pt10 pt50
+select ExtractValue(@xml, "/entry[(pt>50)]/id");
+ExtractValue(@xml, "/entry[(pt>50)]/id")
+
+select ExtractValue(@xml, "/entry[(pt>=50)]/id");
+ExtractValue(@xml, "/entry[(pt>=50)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(10=pt)]/id");
+ExtractValue(@xml, "/entry[(10=pt)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(10!=pt)]/id");
+ExtractValue(@xml, "/entry[(10!=pt)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(10>pt)]/id");
+ExtractValue(@xml, "/entry[(10>pt)]/id")
+
+select ExtractValue(@xml, "/entry[(10>=pt)]/id");
+ExtractValue(@xml, "/entry[(10>=pt)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(10<pt)]/id");
+ExtractValue(@xml, "/entry[(10<pt)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(10<=pt)]/id");
+ExtractValue(@xml, "/entry[(10<=pt)]/id")
+pt10 pt50
+select ExtractValue(@xml, "/entry[(50=pt)]/id");
+ExtractValue(@xml, "/entry[(50=pt)]/id")
+pt50
+select ExtractValue(@xml, "/entry[(50!=pt)]/id");
+ExtractValue(@xml, "/entry[(50!=pt)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(50>pt)]/id");
+ExtractValue(@xml, "/entry[(50>pt)]/id")
+pt10
+select ExtractValue(@xml, "/entry[(50>=pt)]/id");
+ExtractValue(@xml, "/entry[(50>=pt)]/id")
+pt10 pt50
+select ExtractValue(@xml, "/entry[(50<pt)]/id");
+ExtractValue(@xml, "/entry[(50<pt)]/id")
+
+select ExtractValue(@xml, "/entry[(50<=pt)]/id");
+ExtractValue(@xml, "/entry[(50<=pt)]/id")
+pt50
+select ExtractValue('<a><b><Text>test</Text></b></a>','/a/b/Text');
+ExtractValue('<a><b><Text>test</Text></b></a>','/a/b/Text')
+test
+select ExtractValue('<a><b><comment>test</comment></b></a>','/a/b/comment');
+ExtractValue('<a><b><comment>test</comment></b></a>','/a/b/comment')
+test
+select ExtractValue('<a><b><node>test</node></b></a>','/a/b/node');
+ExtractValue('<a><b><node>test</node></b></a>','/a/b/node')
+test
+select ExtractValue('<a><b><processing-instruction>test</processing-instruction></b></a>','/a/b/processing-instruction');
+ExtractValue('<a><b><processing-instruction>test</processing-instruction></b></a>','/a/b/processing-instruction')
+test
+select ExtractValue('<a><and>test</and></a>', '/a/and');
+ExtractValue('<a><and>test</and></a>', '/a/and')
+test
+select ExtractValue('<a><or>test</or></a>', '/a/or');
+ExtractValue('<a><or>test</or></a>', '/a/or')
+test
+select ExtractValue('<a><mod>test</mod></a>', '/a/mod');
+ExtractValue('<a><mod>test</mod></a>', '/a/mod')
+test
+select ExtractValue('<a><div>test</div></a>', '/a/div');
+ExtractValue('<a><div>test</div></a>', '/a/div')
+test
+select ExtractValue('<a><and:and>test</and:and></a>', '/a/and:and');
+ExtractValue('<a><and:and>test</and:and></a>', '/a/and:and')
+test
+select ExtractValue('<a><or:or>test</or:or></a>', '/a/or:or');
+ExtractValue('<a><or:or>test</or:or></a>', '/a/or:or')
+test
+select ExtractValue('<a><mod:mod>test</mod:mod></a>', '/a/mod:mod');
+ExtractValue('<a><mod:mod>test</mod:mod></a>', '/a/mod:mod')
+test
+select ExtractValue('<a><div:div>test</div:div></a>', '/a/div:div');
+ExtractValue('<a><div:div>test</div:div></a>', '/a/div:div')
+test
+select ExtractValue('<a><ancestor>test</ancestor></a>', '/a/ancestor');
+ExtractValue('<a><ancestor>test</ancestor></a>', '/a/ancestor')
+test
+select ExtractValue('<a><ancestor-or-self>test</ancestor-or-self></a>', '/a/ancestor-or-self');
+ExtractValue('<a><ancestor-or-self>test</ancestor-or-self></a>', '/a/ancestor-or-self')
+test
+select ExtractValue('<a><attribute>test</attribute></a>', '/a/attribute');
+ExtractValue('<a><attribute>test</attribute></a>', '/a/attribute')
+test
+select ExtractValue('<a><child>test</child></a>', '/a/child');
+ExtractValue('<a><child>test</child></a>', '/a/child')
+test
+select ExtractValue('<a><descendant>test</descendant></a>', '/a/descendant');
+ExtractValue('<a><descendant>test</descendant></a>', '/a/descendant')
+test
+select ExtractValue('<a><descendant-or-self>test</descendant-or-self></a>', '/a/descendant-or-self');
+ExtractValue('<a><descendant-or-self>test</descendant-or-self></a>', '/a/descendant-or-self')
+test
+select ExtractValue('<a><following>test</following></a>', '/a/following');
+ExtractValue('<a><following>test</following></a>', '/a/following')
+test
+select ExtractValue('<a><following-sibling>test</following-sibling></a>', '/a/following-sibling');
+ExtractValue('<a><following-sibling>test</following-sibling></a>', '/a/following-sibling')
+test
+select ExtractValue('<a><namespace>test</namespace></a>', '/a/namespace');
+ExtractValue('<a><namespace>test</namespace></a>', '/a/namespace')
+test
+select ExtractValue('<a><parent>test</parent></a>', '/a/parent');
+ExtractValue('<a><parent>test</parent></a>', '/a/parent')
+test
+select ExtractValue('<a><preceding>test</preceding></a>', '/a/preceding');
+ExtractValue('<a><preceding>test</preceding></a>', '/a/preceding')
+test
+select ExtractValue('<a><preceding-sibling>test</preceding-sibling></a>', '/a/preceding-sibling');
+ExtractValue('<a><preceding-sibling>test</preceding-sibling></a>', '/a/preceding-sibling')
+test
+select ExtractValue('<a><self>test</self></a>', '/a/self');
+ExtractValue('<a><self>test</self></a>', '/a/self')
+test
+set @i=1;
+select ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+b1
+set @i=2;
+select ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+b2
+set @i=NULL;
+select ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+
+CREATE PROCEDURE spxml(xml VARCHAR(128))
+BEGIN
+DECLARE c INT;
+DECLARE i INT DEFAULT 1;
+SET c= ExtractValue(xml,'count(/a/b)');
+SET @i= c;
+WHILE i <= c DO
+BEGIN
+SELECT i, @i, ExtractValue(xml,'/a/b[$i]'), ExtractValue(xml,'/a/b[$@i]');
+SET i= i + 1;
+SET @i= @i - 1;
+END;
+END WHILE;
+END|
+call spxml('<a><b>b1</b><b>b2</b><b>b3</b></a>');
+i @i ExtractValue(xml,'/a/b[$i]') ExtractValue(xml,'/a/b[$@i]')
+1 3 b1 b3
+i @i ExtractValue(xml,'/a/b[$i]') ExtractValue(xml,'/a/b[$@i]')
+2 2 b2 b2
+i @i ExtractValue(xml,'/a/b[$i]') ExtractValue(xml,'/a/b[$@i]')
+3 1 b3 b1
+drop procedure spxml;
+Multiple matches, but no index specification
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b')
+b1 b2
+No matches
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/c');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/c')
+
+Index out of range
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[-1]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[-1]')
+
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[10]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[10]')
+
+With string-to-number conversion
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["1"]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["1"]')
+b1
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["1 and string"]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["1 and string"]')
+b1
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: '1 and string"]'
+Warning 1292 Truncated incorrect INTEGER value: '1 and string"]'
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["string and 1"]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["string and 1"]')
+
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: 'string and 1"]'
+Warning 1292 Truncated incorrect INTEGER value: 'string and 1"]'
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["string"]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b["string"]')
+
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: 'string"]'
+Warning 1292 Truncated incorrect INTEGER value: 'string"]'
+String-to-number conversion from a user variable
+SET @i='1';
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+b1
+SET @i='1 and string';
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+b1
+SET @i='string and 1';
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+
+SET @i='string';
+SELECT ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]');
+ExtractValue('<a><b>b1</b><b>b2</b></a>','/a/b[$@i]')
+
+String-to-number conversion with a CHAR SP variable
+CREATE PROCEDURE spxml(xml VARCHAR(128), i CHAR(16))
+BEGIN
+SELECT ExtractValue(xml,'/a/b[$i]');
+END|
+CALL spxml('<a><b>b1</b><b>b2</b></a>', '1');
+ExtractValue(xml,'/a/b[$i]')
+b1
+CALL spxml('<a><b>b1</b><b>b2</b></a>', '1 and string');
+ExtractValue(xml,'/a/b[$i]')
+b1
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: '1 and string '
+Warning 1292 Truncated incorrect INTEGER value: '1 and string '
+CALL spxml('<a><b>b1</b><b>b2</b></a>', 'string and 1');
+ExtractValue(xml,'/a/b[$i]')
+
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: 'string and 1 '
+Warning 1292 Truncated incorrect INTEGER value: 'string and 1 '
+CALL spxml('<a><b>b1</b><b>b2</b></a>', 'string');
+ExtractValue(xml,'/a/b[$i]')
+
+Warnings:
+Warning 1292 Truncated incorrect INTEGER value: 'string '
+Warning 1292 Truncated incorrect INTEGER value: 'string '
+DROP PROCEDURE spxml;
+select UpdateXML('<a>a</a>',repeat('a b ',1000),'');
+ERROR HY000: XPATH syntax error: 'b a b a b a b a b a b a b a b a '
+select ExtractValue('<a>a</a>', '/a[@x=@y0123456789_0123456789_0123456789_0123456789]');
+ERROR HY000: XPATH error: comparison of two nodesets is not supported: '=@y0123456789_0123456789_0123456'
+select ExtractValue('<a>a</a>', '/a[@x=$y0123456789_0123456789_0123456789_0123456789]');
+ERROR HY000: Unknown XPATH variable at: '$y0123456789_0123456789_01234567'
+select updatexml(NULL, 1, 1), updatexml(1, NULL, 1), updatexml(1, 1, NULL);
+updatexml(NULL, 1, 1) updatexml(1, NULL, 1) updatexml(1, 1, NULL)
+NULL NULL NULL
+select updatexml(NULL, NULL, 1), updatexml(1, NULL, NULL),
+updatexml(NULL, 1, NULL);
+updatexml(NULL, NULL, 1) updatexml(1, NULL, NULL) updatexml(NULL, 1, NULL)
+NULL NULL NULL
+select updatexml(NULL, NULL, NULL);
+updatexml(NULL, NULL, NULL)
+NULL
+CREATE TABLE t1(a INT NOT NULL);
+INSERT INTO t1 VALUES (0), (0);
+SELECT 1 FROM t1 ORDER BY(UPDATEXML(a, '1', '1'));
+1
+1
+1
+DROP TABLE t1;
+SET @xml=
+'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+ <head>
+ <title> Title - document with document declaration</title>
+ </head>
+ <body> Hi, Im a webpage with document a declaration </body>
+</html>';
+SELECT ExtractValue(@xml, 'html/head/title');
+ExtractValue(@xml, 'html/head/title')
+ Title - document with document declaration
+SELECT ExtractValue(@xml, 'html/body');
+ExtractValue(@xml, 'html/body')
+ Hi, Im a webpage with document a declaration
+SELECT ExtractValue('<xml "xxx" "yyy">CharData</xml>', '/xml');
+ExtractValue('<xml "xxx" "yyy">CharData</xml>', '/xml')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 11: STRING unexpected ('>' wanted)'
+SELECT ExtractValue('<xml xxx "yyy">CharData</xml>', '/xml');
+ExtractValue('<xml xxx "yyy">CharData</xml>', '/xml')
+NULL
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 17: STRING unexpected ('>' wanted)'
+set @x=10;
+select extractvalue('<a></a>','$@x/a');
+ERROR HY000: XPATH syntax error: '/a'
+select extractvalue('<a></a>','round(123.4)/a');
+ERROR HY000: XPATH syntax error: '/a'
+select extractvalue('<a></a>','1/a');
+ERROR HY000: XPATH syntax error: '/a'
+select extractvalue('<a></a>','"b"/a');
+ERROR HY000: XPATH syntax error: '/a'
+select extractvalue('<a></a>','(1)/a');
+ERROR HY000: XPATH syntax error: '/a'
+CREATE TABLE IF NOT EXISTS t1 (
+id int(10) unsigned NOT NULL AUTO_INCREMENT,
+xml text,
+PRIMARY KEY (id)
+) ENGINE=MyISAM;
+INSERT INTO t1 (id, xml) VALUES
+(15, '<?xml version="1.0"?><bla name="blubb"></bla>'),
+(14, '<xml version="kaputt">');
+SELECT
+extractvalue( xml, '/bla/@name' ),
+extractvalue( xml, '/bla/@name' )
+FROM t1 ORDER BY t1.id;
+extractvalue( xml, '/bla/@name' ) extractvalue( xml, '/bla/@name' )
+NULL NULL
+blubb blubb
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
+SELECT
+UpdateXML(xml, '/bla/@name', 'test'),
+UpdateXML(xml, '/bla/@name', 'test')
+FROM t1 ORDER BY t1.id;
+UpdateXML(xml, '/bla/@name', 'test') UpdateXML(xml, '/bla/@name', 'test')
+NULL NULL
+<?xml version="1.0"?><bla test></bla> <?xml version="1.0"?><bla test></bla>
+Warnings:
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
+Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
+DROP TABLE t1;
+End of 5.1 tests